This commit was manufactured by cvs2svn to create tag 'v20050329_2345'.
diff --git a/bundles/org.eclipse.jst.jsp.core/.classpath b/bundles/org.eclipse.jst.jsp.core/.classpath
deleted file mode 100644
index 275b34c..0000000
--- a/bundles/org.eclipse.jst.jsp.core/.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/bundles/org.eclipse.jst.jsp.core/.cvsignore b/bundles/org.eclipse.jst.jsp.core/.cvsignore
deleted file mode 100644
index 2a87a02..0000000
--- a/bundles/org.eclipse.jst.jsp.core/.cvsignore
+++ /dev/null
@@ -1,8 +0,0 @@
-bin
-temp.folder
-jspmodel.jar
-dev.properties
-org.eclipse.jst.jsp.core_6.0.0.jar
-build.xml
-org.eclipse.jst.jsp.core_6.0.0.zip
-jspmodelsrc.zip
diff --git a/bundles/org.eclipse.jst.jsp.core/.options b/bundles/org.eclipse.jst.jsp.core/.options
deleted file mode 100644
index 1b94491..0000000
--- a/bundles/org.eclipse.jst.jsp.core/.options
+++ /dev/null
@@ -1,32 +0,0 @@
-org.eclipse.jst.jsp.core/debug=true
-org.eclipse.jst.jsp.core/debug/tracefilter=
-org.eclipse.jst.jsp.core/debug/jspindexmanager=false
-org.eclipse.jst.jsp.core/debug/jsptranslation=false
-org.eclipse.jst.jsp.core/debug/jspsearch=false
-
-org.eclipse.jst.jsp.core/taglib/resolve=false
-
-
-# org.eclipse.jst.jsp.core.contentmodel.tld.TLDCMDocumentManager._debug
-org.eclipse.jst.jsp.core/debug/tldcmdocument/manager=false
-
-# org.eclipse.jst.jsp.core.contentmodel.tld.CMDocumentFactoryTLD._debug
-org.eclipse.jst.jsp.core/debug/tldcmdocument/factory=false
-
-#org.eclipse.jst.jsp.core.internal.contentmodel.ProjectDescription._debugIndexCreation
-org.eclipse.jst.jsp.core/taglib/indexcreation=false
-#org.eclipse.jst.jsp.core.internal.contentmodel.ProjectDescription._debugIndexTime
-org.eclipse.jst.jsp.core/taglib/indextime=false
-
-#org.eclipse.jst.jsp.core.internal.contentmodel.TaglibIndex._debugEvents
-org.eclipse.jst.jsp.core/taglib/events=false
-#org.eclipse.jst.jsp.core.internal.contentmodel.TaglibIndex._debugIndexCreation
-org.eclipse.jst.jsp.core/taglib/indexcreation=false
-#org.eclipse.jst.jsp.core.internal.contentmodel.TaglibIndex._debugResolution
-org.eclipse.jst.jsp.core/taglib/resolve=false
-
-#org.eclipse.jst.jsp.core.text.rules.StructuredTextPartitioner.debugPrefixListener
-org.eclipse.jst.jsp.core/partitioner/prefixlistener=false
-
-org.eclipse.jst.jsp.core/debug/jspjavamapping=false
-
diff --git a/bundles/org.eclipse.jst.jsp.core/.project b/bundles/org.eclipse.jst.jsp.core/.project
deleted file mode 100644
index 0f10b7a..0000000
--- a/bundles/org.eclipse.jst.jsp.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.jsp.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/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 287fc5f..0000000
--- a/bundles/org.eclipse.jst.jsp.core/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Wed Jan 12 16:11:11 EST 2005

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=error

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=error

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=warning

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore

-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.4

-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=enabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/bundles/org.eclipse.jst.jsp.core/build.properties b/bundles/org.eclipse.jst.jsp.core/build.properties
deleted file mode 100644
index 634f9a4..0000000
--- a/bundles/org.eclipse.jst.jsp.core/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = plugin.xml,\
-               *.jar,\
-               jsp.jar,\
-               .options,\
-               plugin.properties
-src.includes = plugin.xml,\
-               build.xml,\
-               .options,\
-               plugin.properties
-source.jspmodel.jar = src/
diff --git a/bundles/org.eclipse.jst.jsp.core/component.xml b/bundles/org.eclipse.jst.jsp.core/component.xml
deleted file mode 100644
index 8a5ad4a..0000000
--- a/bundles/org.eclipse.jst.jsp.core/component.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model"
-	name="org.eclipse.jst.jsp">
-	<component-depends unrestricted="true"></component-depends>
-	<plugin id="org.eclipse.jst.jsp.core" />
-	<plugin id="org.eclipse.jst.jsp.ui" />
-	
-	<package name="org.eclipse.jst.jsp.core" />
-	<package name="org.eclipse.jst.jsp.core.model.parser" />
-	<package name="org.eclipse.jst.jsp.core.contenttype" />
-	<package name="org.eclipse.jst.jsp.core.text" />
-	
-	<!-- ui -->
-	<package name="org.eclipse.jst.jsp.ui" />
-	
-</component>
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/plugin.properties b/bundles/org.eclipse.jst.jsp.core/plugin.properties
deleted file mode 100644
index 42ae607..0000000
--- a/bundles/org.eclipse.jst.jsp.core/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-providerName=Eclipse.org
-pluginName=Structured Source JSP Model
-nlFeatureName=Structured Source JSP Model NL Support
-Structured_JSP_Document_Factory_Extension.name=Structured JSP Document Factory Extension
-JSP_Content_Type_Extension_Element.name=JSP Content Type
-JSP_Tag_Content_Type_Extension_Element.name=JSP Tag Content Type
diff --git a/bundles/org.eclipse.jst.jsp.core/plugin.xml b/bundles/org.eclipse.jst.jsp.core/plugin.xml
deleted file mode 100644
index 70ec2fc..0000000
--- a/bundles/org.eclipse.jst.jsp.core/plugin.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.jst.jsp.core"
-   name="%pluginName"
-   version="1.0.0"
-   provider-name="%providerName"
-   class="org.eclipse.jst.jsp.core.internal.JSPCorePlugin">
-
-   <runtime>
-      <library name="jspmodel.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.core.filebuffers"/>
-      <import plugin="org.eclipse.wst.html.core"/>
-      <import plugin="org.eclipse.wst.xml.core"/>
-      <import plugin="org.eclipse.wst.sse.ui"/>
-      <import plugin="org.eclipse.wst.sse.core"/>
-      <import plugin="org.eclipse.wst.xml.uriresolver"/>
-      <import plugin="org.eclipse.jdt.core"/>
-      <import plugin="org.eclipse.text"/>
-      <import plugin="org.eclipse.wst.common.uriresolver"/>
-   </requires>
-
-
-  <extension
-         point="org.eclipse.wst.sse.core.modelHandler">
-      <modelHandler
-            class="org.eclipse.jst.jsp.core.modelhandler.ModelHandlerForJSP"
-            associatedContentTypeId="org.eclipse.jst.jsp.core.jspsource"
-            id="org.eclipse.jst.jsp.core.modelhandler">
-      </modelHandler>
-   </extension>
-   <extension
-         point="org.eclipse.wst.xml.core.documentFactories">
-      <factory
-            type="tld"
-            class="org.eclipse.jst.jsp.core.internal.contentmodel.tld.CMDocumentFactoryTLD">
-      </factory>
-   </extension>
-   <extension
-         id="org.eclipse.jst.jsp.core.builderdelegate.todo"
-         point="org.eclipse.wst.sse.core.builderdelegate">
-      <participant
-            class="org.eclipse.jst.jsp.core.internal.tasks.JSPTaskTagSeeker"
-            contentType="org.eclipse.jst.jsp.core.jspsource">
-      </participant>
-   </extension>
-   <extension point="org.eclipse.core.filebuffers.documentCreation"
-         id="org.eclipse.jst.jsp.core.documentfactories"
-         name="%Structured_JSP_Document_Factory_Extension.name">
-      <factory
-            contentTypeId="org.eclipse.jst.jsp.core.jspsource"
-            class="org.eclipse.wst.sse.core.filebuffers.BasicStructuredDocumentFactory"/>
-   </extension>
-   <extension point="org.eclipse.core.filebuffers.documentSetup"
-         id="org.eclipse.jst.jsp.core.documentsetup"
-         name="Structured JSP Document Setup participant">
-      <participant
-            contentTypeId="org.eclipse.jst.jsp.core.jspsource"
-            class="org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController"/>
-   </extension>
-   <extension
-         point="org.eclipse.team.core.fileTypes">
-      <fileTypes
-            type="text"
-            extension="jsp">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="jspf"/>
-      <fileTypes
-            type="text"
-            extension="jspx"/>
-      <fileTypes
-            type="text"
-            extension="jsf">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="jsv">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="jtpl">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="tld"/>
-      <fileTypes
-            type="text"
-            extension="tag"/>
-      <fileTypes
-            type="text"
-            extension="tagx"/>
-      <fileTypes
-            type="text"
-            extension="tagf"/>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.core.formatProcessors">
-      <processor
-            class="org.eclipse.wst.html.core.format.HTMLFormatProcessorImpl"
-            contentTypeId="org.eclipse.jst.jsp.core.jspsource">
-      </processor>
-   </extension>
-
-   <extension
-         point="org.eclipse.core.runtime.contentTypes">
-         <!-- associate JSP file types -->
-         <content-type
-               file-extensions="jsp,jspf,jsf,jsv,jtpl,jspx"
-               priority="high"
-               name="%JSP_Content_Type_Extension_Element.name"
-               id="jspsource"
-               base-type="org.eclipse.core.runtime.text"
-			   default-charset="ISO-8859-1">
-			<describer class="org.eclipse.jst.jsp.core.internal.contenttype.ContentDescriberForJSP"/>
-		 </content-type>
-         <!-- associate JSP 2.0 Tag file types -->
-         <content-type
-               file-extensions="tag,tagx,tagf"
-               priority="high"
-               name="%JSP_Tag_Content_Type_Extension_Element.name"
-               id="tagsource"
-               base-type="org.eclipse.jst.jsp.core.jspsource"
-			   default-charset="UTF-8">
-		 </content-type>
-		<!-- associate .tld files with the XML content type -->
-		<file-association
-			content-type="org.eclipse.core.runtime.xml"
-			file-extensions="tld"/>
-	</extension>		 
-</plugin>
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP11Namespace.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP11Namespace.java
deleted file mode 100644
index a92bc94..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP11Namespace.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core;
-
-
-/**
- * JSP 1.1 Namespace
- */
-public interface JSP11Namespace {
-
-	public static interface ElementName {
-		// Element names
-		public static final String SCRIPTLET = "jsp:scriptlet"; //$NON-NLS-1$
-		public static final String EXPRESSION = "jsp:expression"; //$NON-NLS-1$
-		public static final String DECLARATION = "jsp:declaration"; //$NON-NLS-1$
-		public static final String DIRECTIVE_PAGE = "jsp:directive.page"; //$NON-NLS-1$
-		public static final String DIRECTIVE_INCLUDE = "jsp:directive.include"; //$NON-NLS-1$
-		public static final String DIRECTIVE_TAGLIB = "jsp:directive.taglib"; //$NON-NLS-1$
-		public static final String USEBEAN = "jsp:useBean"; //$NON-NLS-1$
-		public static final String SETPROPERTY = "jsp:setProperty"; //$NON-NLS-1$
-		public static final String GETPROPERTY = "jsp:getProperty"; //$NON-NLS-1$
-		public static final String INCLUDE = "jsp:include"; //$NON-NLS-1$
-		public static final String FORWARD = "jsp:forward"; //$NON-NLS-1$
-		public static final String PLUGIN = "jsp:plugin"; //$NON-NLS-1$
-		public static final String PARAMS = "jsp:params"; //$NON-NLS-1$
-		public static final String FALLBACK = "jsp:fallback"; //$NON-NLS-1$
-		public static final String PARAM = "jsp:param"; //$NON-NLS-1$
-		public static final String ROOT = "jsp:root"; //$NON-NLS-1$
-		public static final String TEXT = "jsp:text"; //$NON-NLS-1$
-	}
-
-	public static final String JSP11_URI = ""; //$NON-NLS-1$
-	public static final String JSP_TAG_PREFIX = "jsp"; //$NON-NLS-1$
-	// attribute names
-	//   directive.page
-	public static final String ATTR_NAME_LANGUAGE = "language"; //$NON-NLS-1$
-	public static final String ATTR_NAME_EXTENDS = "extends"; //$NON-NLS-1$
-	public static final String ATTR_NAME_CONTENT_TYPE = "contentType"; //$NON-NLS-1$
-	public static final String ATTR_NAME_IMPORT = "import"; //$NON-NLS-1$
-	public static final String ATTR_NAME_SESSION = "session"; //$NON-NLS-1$
-	public static final String ATTR_NAME_BUFFER = "buffer"; //$NON-NLS-1$
-	public static final String ATTR_NAME_AUTOFLUSH = "autoFlush"; //$NON-NLS-1$
-	public static final String ATTR_NAME_IS_THREAD_SAFE = "isThreadSafe"; //$NON-NLS-1$
-	public static final String ATTR_NAME_INFO = "info"; //$NON-NLS-1$
-	public static final String ATTR_NAME_ERROR_PAGE = "errorPage"; //$NON-NLS-1$
-	public static final String ATTR_NAME_IS_ERROR_PAGE = "isErrorPage"; //$NON-NLS-1$
-	public static final String ATTR_NAME_PAGE_ENCODING = "pageEncoding"; //$NON-NLS-1$
-	//   directive.include
-	public static final String ATTR_NAME_FILE = "file"; //$NON-NLS-1$
-	//   directive.taglib
-	public static final String ATTR_NAME_URI = "uri"; //$NON-NLS-1$
-	public static final String ATTR_NAME_PREFIX = "prefix"; //$NON-NLS-1$
-	//   useBean
-	public static final String ATTR_NAME_ID = "id"; //$NON-NLS-1$
-	public static final String ATTR_NAME_SCOPE = "scope"; //$NON-NLS-1$
-	public static final String ATTR_NAME_CLASS = "class"; //$NON-NLS-1$
-	public static final String ATTR_NAME_BEAN_NAME = "beanName"; //$NON-NLS-1$
-	public static final String ATTR_NAME_TYPE = "type"; //$NON-NLS-1$
-	//   setProperty
-	public static final String ATTR_NAME_NAME = "name"; //$NON-NLS-1$
-	public static final String ATTR_NAME_PROPERTY = "property"; //$NON-NLS-1$
-	public static final String ATTR_NAME_VALUE = "value"; //$NON-NLS-1$
-	public static final String ATTR_NAME_PARAM = "param"; //$NON-NLS-1$
-	//   include
-	public static final String ATTR_NAME_PAGE = "page"; //$NON-NLS-1$
-	public static final String ATTR_NAME_FLUSH = "flush"; //$NON-NLS-1$
-	//   plugin
-	public static final String ATTR_NAME_CODE = "code"; //$NON-NLS-1$
-	public static final String ATTR_NAME_CODEBASE = "codebase"; //$NON-NLS-1$
-	public static final String ATTR_NAME_ALIGN = "align"; //$NON-NLS-1$
-	public static final String ATTR_NAME_ARCHIVE = "archive"; //$NON-NLS-1$
-	public static final String ATTR_NAME_HEIGHT = "height"; //$NON-NLS-1$
-	public static final String ATTR_NAME_HSPACE = "hspace"; //$NON-NLS-1$
-	public static final String ATTR_NAME_JREVERSION = "jreversion"; //$NON-NLS-1$
-	public static final String ATTR_NAME_VSPACE = "vspace"; //$NON-NLS-1$
-	public static final String ATTR_NAME_WIDTH = "width"; //$NON-NLS-1$
-	public static final String ATTR_NAME_NSPLUGINURL = "nspluginurl"; //$NON-NLS-1$
-	public static final String ATTR_NAME_IEPLUGINURL = "iepluginurl"; //$NON-NLS-1$
-	//   root
-	public static final String ATTR_NAME_XMLNS_JSP = "xmlns:jsp"; //$NON-NLS-1$
-	public static final String ATTR_NAME_VERSION = "version"; //$NON-NLS-1$
-	// attribute values
-	public static final String ATTR_VALUE_TRUE = "true"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_FALSE = "false"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_JAVA = "java"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_CT_DEFAULT = "text/html; charset=ISO-8859-1";//D195366 //$NON-NLS-1$
-	public static final String ATTR_VALUE_BUFSIZ_DEFAULT = "8kb"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_PAGE = "page"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_SESSION = "session"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_REQUEST = "request"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_APPLICATION = "application"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_BEAN = "bean"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_APPLET = "applet"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_TOP = "top"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_MIDDLE = "middle"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_BOTTOM = "bottom"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_LEFT = "left"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_RIGHT = "right"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_JVER11 = "1.1"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_XMLNS_JSP = "http://java.sun.com/JSP/Page"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP12Namespace.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP12Namespace.java
deleted file mode 100644
index 5c241ef..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP12Namespace.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core;
-
-/**
- * Names for JSP 1.2 spec.
- * Currently, it is just the same as JSP11Namespace in org.eclipse.jst.jsp.core.
- */
-public interface JSP12Namespace extends JSP11Namespace {
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP20Namespace.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP20Namespace.java
deleted file mode 100644
index 236bcf2..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/JSP20Namespace.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core;
-
-/**
- * New names for JSP 2.0 spec.
- */
-
-public interface JSP20Namespace extends JSP12Namespace {
-	public static interface ElementName extends JSP12Namespace.ElementName {
-		String DIRECTIVE_TAG = "jsp:directive.tag"; //$NON-NLS-1$
-		String DIRECTIVE_ATTRIBUTE = "jsp:directive.attribute"; //$NON-NLS-1$
-		String DIRECTIVE_VARIABLE = "jsp:directive.variable"; //$NON-NLS-1$
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/PageDirectiveAdapter.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/PageDirectiveAdapter.java
deleted file mode 100644
index cdb7082..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/PageDirectiveAdapter.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core;
-
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.ui.contentproperties.IContentSettingsListener;
-
-/**
- * Classes which implement this interface have two responsibilities. 
- * One is to provide
- * and embedded factory registry for JSP Aware INodeAdapter Factories
- * to use. The other is to monitor page directives and if 
- * a change in embedded type is is made, it will signal 
- * the structuredModel that it needs to reinitialize itself.
- */
-public interface PageDirectiveAdapter extends INodeAdapter, IContentSettingsListener {
-
-	public String getContentType();
-
-	public String getLanguage();
-
-	/**
-	 * This setter method should be called once, shortly after
-	 * initialization.
-	 */
-	void setEmbeddedType(EmbeddedTypeHandler handler);
-
-	EmbeddedTypeHandler getEmbeddedType();
-
-	/**
-	 * This method is to give this adapter a chance to use
-	 * the AdapterFactores from the EmbeddedTypeHandler
-	 * to adapt the node. Its to be used by JSPAwareAdapterFactories
-	 * to (potentially) adapt nodes from the embedded content type.
-	 */
-	INodeAdapter adapt(INodeNotifier notifier, Object type);
-
-	void addEmbeddedFactory(IAdapterFactory factory);
-
-	/**
-	 * Method setLanguage.
-	 * @param language
-	 */
-	void setLanguage(String language);
-
-	INodeNotifier getTarget();
-
-	public void release(Object key);
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP11TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP11TLDNames.java
deleted file mode 100644
index 8d57dc4..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP11TLDNames.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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
- *******************************************************************************/
-/*nlsXXX*/
-package org.eclipse.jst.jsp.core.contentmodel.tld;
-
-public interface JSP11TLDNames {
-
-	String TAGLIB = "taglib"; //$NON-NLS-1$
-
-	String CONTENT_JSP = "JSP"; //$NON-NLS-1$
-	String CONTENT_EMPTY = "empty"; //$NON-NLS-1$
-	String CONTENT_TAGDEPENDENT = "tagdependent"; //$NON-NLS-1$
-
-	String TAG = "tag"; //$NON-NLS-1$
-	String JSPVERSION = "jspversion"; //$NON-NLS-1$
-	String TLIBVERSION = "tlibversion"; //$NON-NLS-1$
-	String SHORTNAME = "shortname"; //$NON-NLS-1$
-	String URI = "uri"; //$NON-NLS-1$
-	String URN = "urn"; //$NON-NLS-1$
-	String INFO = "info"; //$NON-NLS-1$
-
-	String NAME = "name"; //$NON-NLS-1$
-	String TEICLASS = "teiclass"; //$NON-NLS-1$
-	String TAGCLASS = "tagclass"; //$NON-NLS-1$
-	String BODYCONTENT = "bodycontent"; //$NON-NLS-1$
-	String ATTRIBUTE = "attribute"; //$NON-NLS-1$
-
-	String ID = "id"; //$NON-NLS-1$
-	String REQUIRED = "required"; //$NON-NLS-1$
-	String RTEXPRVALUE = "rtexprvalue"; //$NON-NLS-1$
-
-	String PREFIX = "prefix"; //$NON-NLS-1$
-
-	String INCLUDE = "include"; //$NON-NLS-1$
-	String FILE = "file"; //$NON-NLS-1$
-
-	String TRUE = "true"; //$NON-NLS-1$
-	String FALSE = "false"; //$NON-NLS-1$
-	String YES = "yes"; //$NON-NLS-1$
-	String NO = "no"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP12TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP12TLDNames.java
deleted file mode 100644
index 7bf8b4b..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP12TLDNames.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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
- *******************************************************************************/
-/*nlsXXX*/
-package org.eclipse.jst.jsp.core.contentmodel.tld;
-
-public interface JSP12TLDNames {
-
-	String TAGLIB = JSP11TLDNames.TAGLIB;
-
-	String CONTENT_JSP = JSP11TLDNames.CONTENT_JSP;
-	String CONTENT_EMPTY = JSP11TLDNames.CONTENT_EMPTY;
-	String CONTENT_TAGDEPENDENT = JSP11TLDNames.CONTENT_TAGDEPENDENT;
-
-	String TAG = JSP11TLDNames.TAG;
-	String JSP_VERSION = "jsp-version"; //$NON-NLS-1$
-	String TLIB_VERSION = "tlib-version"; //$NON-NLS-1$
-	String SHORT_NAME = "short-name"; //$NON-NLS-1$
-	String URI = JSP11TLDNames.URI;
-	String URN = JSP11TLDNames.URN;
-
-	String NAME = JSP11TLDNames.NAME;
-	String TEI_CLASS = "tei-class"; //$NON-NLS-1$
-	String TAG_CLASS = "tag-class"; //$NON-NLS-1$
-	String BODY_CONTENT = "body-content"; //$NON-NLS-1$
-	String ATTRIBUTE = JSP11TLDNames.ATTRIBUTE;
-
-	String ID = JSP11TLDNames.ID;
-	String REQUIRED = JSP11TLDNames.REQUIRED;
-	String RTEXPRVALUE = JSP11TLDNames.RTEXPRVALUE;
-
-	String PREFIX = JSP11TLDNames.PREFIX;
-
-	String INCLUDE = JSP11TLDNames.INCLUDE;
-	String FILE = JSP11TLDNames.FILE;
-
-	String TRUE = JSP11TLDNames.TRUE;
-	String FALSE = JSP11TLDNames.FALSE;
-	String YES = JSP11TLDNames.YES;
-	String NO = JSP11TLDNames.NO;
-
-	/*
-	 * @since JSP 1.2
-	 */
-	String DESCRIPTION = "description"; //$NON-NLS-1$
-	String DISPLAY_NAME = "display-name"; //$NON-NLS-1$
-	String SMALL_ICON = "small-icon"; //$NON-NLS-1$
-	String LARGE_ICON = "large-icon"; //$NON-NLS-1$
-
-
-	String VALIDATOR = "validator"; //$NON-NLS-1$
-	String VALIDATOR_CLASS = "validator-class"; //$NON-NLS-1$
-	String VALIDATOR_INIT_PARAM = "init-param"; //$NON-NLS-1$
-	String VALIDATOR_PARAM_NAME = "param-name"; //$NON-NLS-1$
-	String VALIDATOR_PARAM_VALUE = "param-value"; //$NON-NLS-1$
-
-
-	String LISTENER = "listener"; //$NON-NLS-1$
-	String LISTENER_CLASS = "listener-class"; //$NON-NLS-1$
-
-	String VARIABLE = "variable"; //$NON-NLS-1$
-	String VARIABLE_NAME_GIVEN = "name-given"; //$NON-NLS-1$
-	String VARIABLE_NAME_FROM_ATTRIBUTE = "name-from-attribute"; //$NON-NLS-1$
-	String VARIABLE_CLASS = "variable-class"; //$NON-NLS-1$
-	String VARIABLE_DECLARE = "declare"; //$NON-NLS-1$
-	String VARIABLE_SCOPE = "scope"; //$NON-NLS-1$
-	String VARIABLE_SCOPE_NESTED = "NESTED"; //$NON-NLS-1$
-	String VARIABLE_SCOPE_AT_BEGIN = "AT_BEGIN"; //$NON-NLS-1$
-	String VARIABLE_SCOPE_AT_END = "AT_END"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP20TLDNames.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP20TLDNames.java
deleted file mode 100644
index 7de03c7..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/JSP20TLDNames.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-/*nlsXXX*/
-public interface JSP20TLDNames extends JSP12TLDNames {
-	String CONTENT_SCRIPTLESS = "scriptless"; //$NON-NLS-1$
-	String EXAMPLE = "example"; //$NON-NLS-1$
-	String FRAGMENT = "fragment"; //$NON-NLS-1$
-	String FUNCTION = "function"; //$NON-NLS-1$
-	String FUNCTION_CLASS = "function-class"; //$NON-NLS-1$
-	String FUNCTION_EXTENSION = "function-extension"; //$NON-NLS-1$
-	String FUNCTION_SIGNATURE = "function-signature"; //$NON-NLS-1$
-	String ICON = "icon"; //$NON-NLS-1$
-	String PATH = "path"; //$NON-NLS-1$
-	String TAG_EXTENSION = "tag-extension"; //$NON-NLS-1$
-	String TAG_FILE = "tag-file"; //$NON-NLS-1$
-
-	String TAGDIR = "tagdir"; //$NON-NLS-1$
-	
-	String TAGLIB_EXTENSION = "taglib-extension"; //$NON-NLS-1$
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDAttributeDeclaration.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDAttributeDeclaration.java
deleted file mode 100644
index 5ab62ce..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDAttributeDeclaration.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-/**
- * Represents an attribute definition from a TLD
- */
-public interface TLDAttributeDeclaration extends CMAttributeDeclaration {
-
-	/**
-	 * a description of the attribute
-	 * @return String
-	 * @since JSP 2.0
-	 */
-	String getDescription();
-	
-	/**
-	 * the attribute's name
-	 * @since JSP 1.1
-	 */
-	String getId();
-
-	CMDocument getOwnerDocument();
-
-	/**
-	 * whether the attribute's value may be dynamically calculated at runtime by an expression
-	 * @since JSP 1.1
-	 */
-	String getRtexprvalue();
-
-	/**
-	 * the type of the attribute's value
-	 * @since JSP 1.2
-	 */
-	String getType();
-
-	/**
-	 * whether this attribute is a fragment
-	 * 
-	 * @return boolean
-	 */
-	boolean isFragment();
-	
-	/**
-	 * if the attribute is required or optional
-	 * @since JSP 1.1
-	 */
-	boolean isRequired();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDDocument.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDDocument.java
deleted file mode 100644
index 8b1acb0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDDocument.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-public interface TLDDocument extends CMDocument {
-
-	String CM_KIND = "Content Model Kind"; //$NON-NLS-1$
-	String JSP_TLD = "JSP Tag Library Descriptor"; //$NON-NLS-1$
-
-	/**
-	 * @since JSP 2.0
-	 * 
-	 * @return
-	 */
-	String getBaseLocation();
-	
-	/**
-	 * @return String - The contents of the "description" element of a JSP 1.2 tag library descriptor; a simple string describing the "use" of this taglib, should be user discernable.
-	 * @since JSP 1.2
-	 */
-	String getDescription();
-
-	/**
-	 * @return String - The contents of the "display-name" element of a JSP 1.2 tag library descriptor; it is a short name that is intended to be displayed by tools
-	 * @since JSP 1.2
-	 */
-	String getDisplayName();
-
-	/**
-	 * @return List - A list of extension elements describing the tag library
-	 * @since JSP 2.0
-	 */
-	List getExtensions();
-	
-	/**
-	 * @return List - A list of TLDFunctions describing the declared functions
-	 * @since JSP 2.0
-	 */
-	List getFunctions();
-	
-	/**
-	 * @return String - The contents of the "info" element of a JSP 1.1 tag library descriptor; a simple string describing the "use" of this taglib, should be user discernable.
-	 * @since JSP 1.1
-	 */
-	String getInfo();
-
-	/**
-	 * @return String - The version of JSP the tag library depends upon
-	 * @since JSP 1.1
-	 */
-	String getJspversion();
-
-	/**
-	 * @return String - The contents of the "large-icon" element of a JSP 1.2 tag library descriptor; optional large-icon that can be used by tools
-	 * @since JSP 1.2
-	 */
-	String getLargeIcon();
-
-	/**
-	 * @since JSP 1.2
-	 * @return List - a List of TLDListeners
-	 */
-	List getListeners();
-
-	/**
-	 * @return String - A simple default short name that could be used by a JSP authoring tool to create names with a mnemonic value; for example, it may be used as the preferred prefix value in taglib directives
-	 * @since JSP 1.1
-	 */
-	String getShortname();
-
-	/**
-	 * @return String - The contents of the "small-icon" element of a JSP 1.2 tag library descriptor; optional small-icon that can be used by tools
-	 * @since JSP 1.2
-	 */
-	String getSmallIcon();
-
-	/**
-	 * @return String - The version of the tag library (it's implementation)
-	 * @since JSP 1.1
-	 */
-	String getTlibversion();
-
-	/**
-	 * @return String - the URI declared within the descriptor
-	 * @since JSP 1.1
-	 */
-	String getUri();
-
-	/**
-	 * @since JSP 1.2
-	 */
-	TLDValidator getValidator();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDElementDeclaration.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDElementDeclaration.java
deleted file mode 100644
index 6f9360a..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDElementDeclaration.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-public interface TLDElementDeclaration extends CMElementDeclaration {
-
-	/**
-	 * The body content type
-	 * 
-	 * @since JSP 1.1
-	 */
-	String getBodycontent();
-
-	/**
-	 * Optional tag-specific information
-	 * 
-	 * @since JSP 1.2
-	 */
-	String getDescription();
-
-	/**
-	 * A short name that is intended to be displayed by tools
-	 * 
-	 * @since JSP 1.2
-	 */
-	String getDisplayName();
-
-	/**
-	 * Optional informal description of an example of a use of this tag
-	 * 
-	 * @since JSP 2.0
-	 */
-	String getExample();
-
-	/**
-	 * Zero or more extensions that provide extra information about this tag,
-	 * for tool consumption
-	 * 
-	 * @since JSP 2.0
-	 */
-	List getExtensions();
-
-	/**
-	 * Optional tag-specific information
-	 * 
-	 * @since JSP 1.1
-	 */
-	String getInfo();
-
-	/**
-	 * Name of an optional large icon that can be used by tools
-	 * 
-	 * @since JSP 1.2
-	 */
-	String getLargeIcon();
-
-	CMDocument getOwnerDocument();
-
-	/**
-	 * Where to find the .tag file implementing this action, relative to the
-	 * root of the web application or the root of the JAR file for a tag
-	 * library packaged in a JAR. This must begin with /WEB-INF/tags if the
-	 * .tag file resides in the WAR, or /META-INF/tags if the .tag file
-	 * resides in a JAR.
-	 * 
-	 * 
-	 * @return the path to the .tag(x) file as defined in the .tld file, null
-	 *         if internal to the .tld
-	 * @since JSP 2.0
-	 */
-	String getPath();
-
-	/**
-	 * Name of an optional small icon that can be used by tools
-	 * 
-	 * @since JSP 1.2
-	 */
-	String getSmallIcon();
-
-	/**
-	 * The name of the tag handler class implementing
-	 * javax.servlet.jsp.tagext.Tag
-	 * 
-	 * @since JSP 1.1
-	 */
-	String getTagclass();
-
-	/**
-	 * The name of an optional subclass of
-	 * javax.servlet.jsp.tagext.TagExtraInfo
-	 * 
-	 * @since JSP 1.1
-	 */
-	String getTeiclass();
-
-	/**
-	 * @since JSP 1.2
-	 * @return List of TLDVariables
-	 */
-	List getVariables();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDFunction.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDFunction.java
deleted file mode 100644
index 4ecde2b..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDFunction.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-public interface TLDFunction {
-
-	String getClassName();
-	
-	String getDescription();
-
-	String getDisplayName();
-
-	String getExample();
-
-	List getExtensions();
-
-	String getIcon();
-
-	String getName();
-
-	CMDocument getOwnerDocument();
-
-	String getSignature();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDInitParam.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDInitParam.java
deleted file mode 100644
index 19ada72..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDInitParam.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-
-/**
- * A name/value pair as an initialization param along with a description
- * @since JSP 1.2
- */
-public interface TLDInitParam {
-	String getDescription();
-
-	/**
-	 * The param-name element contains the name of a parameter.
-	 */
-	String getName();
-
-	/**
-	 * The param-value element contains the name of a parameter.
-	 */
-	String getValue();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDListener.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDListener.java
deleted file mode 100644
index ecbd0f8..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDListener.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-
-/**
- * Defines an optional event listener object to be instantiated and registered automatically
- * @since JSP 1.2
- */
-public interface TLDListener {
-	String getListenerClass();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDValidator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDValidator.java
deleted file mode 100644
index 0463bc1..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDValidator.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-import java.util.List;
-
-
-/**
- * Defines an optional validator that can be used to validate the conformance of a JSP page to using this tag library
- * @since JSP 1.2
- */
-public interface TLDValidator {
-	/**
-	 * @return List - a List of TLDInitParams
-	 */
-	List getInitParams();
-
-	String getValidatorClass();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDVariable.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDVariable.java
deleted file mode 100644
index ec10a92..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/TLDVariable.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-/**
- * Information on the scripting variables defined by this tag.
- * @since JSP 1.2
- */
-public interface TLDVariable {
-
-	/**
-	 * Whether the variable is declared or not, true is the default.
-	 */
-	boolean getDeclare();
-
-	String getDescription();
-
-	/**
-	 * The name of an attribute whose (translation time) value will give the name of the variable.
-	 */
-	String getNameFromAttribute();
-
-	/**
-	 * The variable name given as a constant
-	 */
-	String getNameGiven();
-	
-	/**
-	 * The scope of the scripting variable defined.
-	 */
-	String getScope();
-
-	/**
-	 * Name of the class of the variable, java.lang.String if null
-	 */
-	String getVariableClass();
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/URIResolverProvider.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/URIResolverProvider.java
deleted file mode 100644
index d11fa98..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contentmodel/tld/URIResolverProvider.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contentmodel.tld;
-
-/**
- * @deprecated - will be removed in M4
- */
-
-import org.eclipse.wst.sse.core.util.URIResolver;
-
-public interface URIResolverProvider {
-
-	URIResolver getResolver();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contenttype/ContentTypeIdForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contenttype/ContentTypeIdForJSP.java
deleted file mode 100644
index 70c3e68..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/contenttype/ContentTypeIdForJSP.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.contenttype;
-
-/**
- * This class, with its one field, is a convience to provide compile-time
- * safety when refering to a contentType ID. The value of the contenttype id
- * field must match what is specified in plugin.xml file.
- */
-
-public class ContentTypeIdForJSP {
-	/**
-	 * The value of the contenttype id field must match what is specified in
-	 * plugin.xml file. Note: this value is intentially set with default
-	 * protected method so it will not be inlined.
-	 */
-	public final static String ContentTypeID_JSP = getConstantString();
-
-	/**
-	 * Don't allow instantiation.
-	 */
-	private ContentTypeIdForJSP() {
-		super();
-	}
-
-	static String getConstantString() {
-		return "org.eclipse.jst.jsp.core.jspsource"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/IJSPHeadContentDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/IJSPHeadContentDetector.java
deleted file mode 100644
index 303c4e0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/IJSPHeadContentDetector.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.encoding;
-
-import java.io.IOException;
-
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-
-public interface IJSPHeadContentDetector extends IDocumentCharsetDetector {
-	String getContentType() throws IOException;
-
-	String getLanguage() throws IOException;
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/JSPDocumentHeadContentDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/JSPDocumentHeadContentDetector.java
deleted file mode 100644
index 491d4ef..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/JSPDocumentHeadContentDetector.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.encoding;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.internal.contenttype.JSPResourceEncodingDetector;
-import org.eclipse.wst.sse.core.document.DocumentReader;
-
-/**
- * This class parses beginning portion of JSP file to get attributes in page
- * directiive
- *  
- */
-public class JSPDocumentHeadContentDetector extends JSPResourceEncodingDetector implements IJSPHeadContentDetector {
-
-	public JSPDocumentHeadContentDetector() {
-		super();
-	}
-
-	public void set(IDocument document) {
-		set(new DocumentReader(document, 0));
-
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/JSPDocumentLoader.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/JSPDocumentLoader.java
deleted file mode 100644
index 4212c1f..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/encoding/JSPDocumentLoader.java
+++ /dev/null
@@ -1,554 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.encoding;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.jst.jsp.core.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.internal.document.PageDirectiveWatcherFactory;
-import org.eclipse.jst.jsp.core.internal.parser.JSPReParser;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.document.AbstractDocumentLoader;
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.document.IEncodedDocument;
-import org.eclipse.wst.sse.core.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.encoding.CodedReaderCreator;
-import org.eclipse.wst.sse.core.internal.encoding.ContentTypeEncodingPreferences;
-import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistry;
-import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistryImpl;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.eclipse.wst.sse.core.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.parser.JSPCapableParser;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.parser.TagMarker;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.ui.util.Assert;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.w3c.dom.Document;
-
-public class JSPDocumentLoader extends AbstractDocumentLoader {
-	private final static String DEFAULT_LANGUAGE = "java"; //$NON-NLS-1$
-	private final static String DEFAULT_MIME_TYPE = "text/html"; //$NON-NLS-1$
-	private final static String SPEC_DEFAULT_ENCODING = "ISO-8859-1"; //$NON-NLS-1$
-
-	protected static IFile getFileFor(IStructuredModel model) {
-		if (model == null)
-			return null;
-		String path = model.getBaseLocation();
-		if (path == null || path.length() == 0) {
-			Object id = model.getId();
-			if (id == null)
-				return null;
-			path = id.toString();
-		}
-		// TODO needs rework for linked resources
-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-		IFile file = root.getFileForLocation(new Path(path));
-		return file;
-	}
-
-	private EmbeddedTypeRegistry fEmbeddedContentTypeRegistry;
-
-	public JSPDocumentLoader() {
-		super();
-	}
-
-	private void addNestablePrefix(JSPSourceParser parser, String tagName) {
-		TagMarker bm = new TagMarker(tagName);
-		parser.addNestablePrefix(bm);
-	}
-
-	synchronized public IEncodedDocument createNewStructuredDocument(IFile iFile) throws IOException, CoreException {
-		IStructuredDocument structuredDocument = null;
-		try {
-			structuredDocument = createCodedDocument(iFile);
-
-			EmbeddedTypeHandler embeddedType = getEmbeddedType(iFile);
-			if (embeddedType != null)
-				embeddedType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-
-			fFullPreparedReader.reset();
-			setDocumentContentsFromReader(structuredDocument, fFullPreparedReader);
-
-		}
-		finally {
-			if (fFullPreparedReader != null) {
-				fFullPreparedReader.close();
-			}
-		}
-		return structuredDocument;
-	}
-
-	private IStructuredDocument createCodedDocument(IFile iFile) throws CoreException, UnsupportedEncodingException, IOException {
-		IStructuredDocument structuredDocument = (IStructuredDocument) createNewStructuredDocument();
-
-		getCodedReaderCreator().set(iFile);
-
-		fFullPreparedReader = getCodedReaderCreator().getCodedReader();
-		fEncodingMemento = getCodedReaderCreator().getEncodingMemento();
-
-		structuredDocument.setEncodingMemento(getCodedReaderCreator().getEncodingMemento());
-
-		return structuredDocument;
-	}
-
-	public IEncodedDocument createNewStructuredDocument(String filename, InputStream inputStream) throws UnsupportedEncodingException, IOException {
-		if (filename == null && inputStream == null) {
-			throw new IllegalArgumentException("can not have both null filename and inputstream"); //$NON-NLS-1$
-		}
-		IEncodedDocument structuredDocument = createNewStructuredDocument();
-		CodedReaderCreator codedReaderCreator = new CodedReaderCreator();
-		try {
-			codedReaderCreator.set(filename, inputStream);
-			fFullPreparedReader = codedReaderCreator.getCodedReader();
-			fEncodingMemento = codedReaderCreator.getEncodingMemento();
-			structuredDocument.setEncodingMemento(fEncodingMemento);
-			// the fact that file is null means this method/code path is no
-			// good for JSP fragments
-			EmbeddedTypeHandler embeddedType = getEmbeddedType((IFile) null);
-			fFullPreparedReader.reset();
-			if (embeddedType != null)
-				embeddedType.initializeParser((JSPCapableParser) ((IStructuredDocument) structuredDocument).getParser());
-			setDocumentContentsFromReader(structuredDocument, fFullPreparedReader);
-		}
-		catch (CoreException e) {
-			// impossible in this context
-			throw new Error(e);
-		}
-		finally {
-			if (fFullPreparedReader != null) {
-				fFullPreparedReader.close();
-			}
-		}
-		return structuredDocument;
-
-	}
-
-	/**
-	 * Method getDefaultDocumentPartitioner.
-	 * 
-	 * @return IDocumentPartitioner
-	 */
-	public IDocumentPartitioner getDefaultDocumentPartitioner() {
-		return new StructuredTextPartitionerForJSP();
-	}
-
-	/**
-	 * Method getDefaultMimeType.
-	 * 
-	 * @return String
-	 */
-	private String getDefaultMimeType() {
-		return DEFAULT_MIME_TYPE;
-	}
-
-	/**
-	 * @see com.ibm.sed.model.AbstractDumper#getDocumentEncodingDetector()
-	 */
-	public IDocumentCharsetDetector getDocumentEncodingDetector() {
-		if (fDocumentEncodingDetector == null) {
-			fDocumentEncodingDetector = new JSPDocumentHeadContentDetector();
-		}
-		return fDocumentEncodingDetector;
-	}
-
-	/**
-	 * Gets the embeddedContentTypeRegistry.
-	 * 
-	 * @return Returns a EmbeddedContentTypeRegistry
-	 */
-	private EmbeddedTypeRegistry getEmbeddedContentTypeRegistry() {
-		if (fEmbeddedContentTypeRegistry == null) {
-			fEmbeddedContentTypeRegistry = EmbeddedTypeRegistryImpl.getInstance();
-		}
-		return fEmbeddedContentTypeRegistry;
-	}
-
-	private EmbeddedTypeHandler getEmbeddedType(IStructuredModel model) {
-		Document doc = ((XMLModel) model).getDocument();
-		PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) ((INodeNotifier) doc).getAdapterFor(PageDirectiveAdapter.class);
-		EmbeddedTypeHandler embeddedHandler = pageDirectiveAdapter.getEmbeddedType();
-		return embeddedHandler;
-	}
-
-	/**
-	 * Determine the MIME content type specified in a page directive. This
-	 * should appear "as early as possible in the JSP page" according to the
-	 * JSP v1.2 specification.
-	 */
-	private EmbeddedTypeHandler getEmbeddedType(IFile file) throws UnsupportedEncodingException, CoreException, IOException {
-		EmbeddedTypeHandler handler = null;
-		if (fFullPreparedReader == null) {
-			handler = getJSPDefaultEmbeddedType();
-		}
-		else {
-			String mimeType = null;
-
-			IDocumentCharsetDetector jspProvider = getDocumentEncodingDetector();
-			jspProvider.set(getFullPreparedReader());
-			if (jspProvider instanceof IJSPHeadContentDetector) {
-				mimeType = ((IJSPHeadContentDetector) jspProvider).getContentType();
-			}
-
-			EmbeddedTypeRegistry reg = getEmbeddedContentTypeRegistry();
-			if (mimeType == null || mimeType.length() == 0) {
-				handler = getJSPDefaultEmbeddedType();
-			}
-			else {
-				handler = reg.getTypeFor(mimeType);
-			}
-		}
-		return handler;
-	}
-
-	/**
-	 * For JSP files, text/html is the default content type. This may want
-	 * this different for types like jsv (jsp for voice xml) For now, hard
-	 * code to new instance. In future, should get instance from registry.
-	 * Specification cites HTML as the default contentType.
-	 */
-	private EmbeddedTypeHandler getJSPDefaultEmbeddedType() {
-		EmbeddedTypeRegistry reg = getEmbeddedContentTypeRegistry();
-		return reg.getTypeFor(getDefaultMimeType());
-	}
-
-	/**
-	 * Method getLanguage.
-	 * 
-	 * @param model
-	 * @return String
-	 */
-	private String getLanguage(IStructuredModel model) throws IOException {
-		String result = null;
-		// first check the model (document itself) to see if contains
-		result = getLanguageFromStructuredDocument(model.getStructuredDocument());
-		// Note: if model contains an unsupported
-		// language, we'll even return it,
-		// since who knows what future holds.
-
-		// always return something
-		if (result == null) {
-			result = DEFAULT_LANGUAGE;
-		}
-		return result;
-	}
-
-	/**
-	 * Method getLanguageFromStructuredDocument.
-	 * 
-	 * @param structuredDocument
-	 * @return String
-	 */
-	private String getLanguageFromStructuredDocument(IDocument document) throws IOException {
-		if (document == null)
-			return null;
-		String result = null;
-		// bascially same algorithm as get encoding or
-		// get content type from structuredDocument.
-		IJSPHeadContentDetector localHeadParser = (IJSPHeadContentDetector) getDocumentEncodingDetector();
-		// we can be assured that its already been
-		// parsed. If not call parseHeaderForPageDirective()
-		// before calling getLanguage;
-		localHeadParser.set(document);
-		result = localHeadParser.getLanguage();
-		return result;
-	}
-
-	public RegionParser getParser() {
-		// remember, the Loader
-		// will need to finish initialization of parser
-		// based on "embedded content"
-		JSPSourceParser parser = new JSPSourceParser();
-		// add default nestable tag list
-		addNestablePrefix(parser, JSP11Namespace.JSP_TAG_PREFIX);
-		return parser;
-	}
-
-	protected String getPreferredNewLineDelimiter() {
-		return ContentTypeEncodingPreferences.getPreferredNewLineDelimiter(ContentTypeIdForJSP.ContentTypeID_JSP);
-	}
-
-	/**
-	 * Specification cites ISO-8859-1/Latin-1 as the default charset.
-	 */
-	protected String getSpecDefaultEncoding() {
-		return SPEC_DEFAULT_ENCODING;
-	}
-
-	/**
-	 * This is "reinitialize" since there should always be at least the
-	 * default one assigned, before we start checking the stream
-	 */
-	private void initCloneOfEmbeddedType(IStructuredModel model, EmbeddedTypeHandler oldEmbeddedContentType, EmbeddedTypeHandler newEmbeddedContentType) throws IOException {
-		// check program logic
-		Assert.isNotNull(oldEmbeddedContentType, "Program error: invalid call during model initialization"); //$NON-NLS-1$
-		// once we know the embedded content type, we need to set it in the
-		// PageDirectiveAdapter ... the order of initialization is
-		// critical here, the doc must have been created, but its contents not
-		// set
-		// yet,
-		// and all factories must have been set up also.
-		XMLModel domModel = (XMLModel) model;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		XMLDocument document = domModel.getDocument();
-		PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getAdapterFor(PageDirectiveAdapter.class);
-		// ==> // PropagatingAdapter propagatingAdapter = (PropagatingAdapter)
-		// ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
-		// ==> // ModelQueryAdapter modelQueryAdapter = (ModelQueryAdapter)
-		// ((INodeNotifier) document).getAdapterFor(ModelQueryAdapter.class);
-		// because, even in the clone case, the model has been paritally
-		// intialized
-		// with
-		// the old embedded type (during createModel), we need to unitialize
-		// parts of it, based on the old (or default) ones
-		oldEmbeddedContentType.uninitializeFactoryRegistry(model.getFactoryRegistry());
-		oldEmbeddedContentType.uninitializeParser((JSPCapableParser) structuredDocument.getParser());
-		// remember, embedded type factories are automatically cleared when
-		// embededType changed
-		pageDirectiveAdapter.setEmbeddedType(newEmbeddedContentType);
-		if (newEmbeddedContentType != null) {
-			newEmbeddedContentType.initializeFactoryRegistry(model.getFactoryRegistry());
-			newEmbeddedContentType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-		}
-		// adding language here, in this convienent central
-		// location, but some obvious renaming or refactoring
-		// wouldn't hurt, in future.
-		// I needed to add this language setting for JSP Fragment support
-		// Note: this is the one that counts, since at this point,
-		// the model has an ID, so we can look up IFile, etc.
-		String language = getLanguage(model);
-		if (language != null && language.length() > 0) {
-			pageDirectiveAdapter.setLanguage(language);
-		}
-	}
-
-	/**
-	 * Method initEmbeddedType.
-	 */
-	private void initEmbeddedType(IStructuredModel model) {
-		initializeEmbeddedTypeFromDefault(model);
-	}
-
-	/**
-	 * Method initEmbeddedType.
-	 */
-	private void initEmbeddedType(IStructuredModel oldModel, IStructuredModel newModel) throws IOException {
-		EmbeddedTypeHandler existingEmbeddedType = getEmbeddedType(oldModel);
-		EmbeddedTypeHandler newEmbeddedContentType = existingEmbeddedType.newInstance();
-		if (existingEmbeddedType == null) {
-			initEmbeddedType(newModel);
-		}
-		else {
-			//initEmbeddedType(newModel);
-			initCloneOfEmbeddedType(newModel, existingEmbeddedType, newEmbeddedContentType);
-		}
-		setLanguageInPageDirective(newModel);
-	}
-
-	/**
-	 * This is "initialize" since is always assumes it hasn't been initalized
-	 * yet.
-	 */
-	private void initializeEmbeddedType(IStructuredModel model, EmbeddedTypeHandler embeddedContentType) {
-		// check program logic
-		Assert.isNotNull(embeddedContentType, "Program error: invalid call during model initialization"); //$NON-NLS-1$
-		// once we know the embedded content type, we need to set it in the
-		// PageDirectiveAdapter ... the order of initialization is
-		// critical here, the doc must have been created, but its contents not
-		// set
-		// yet,
-		// and all factories must have been set up also.
-		XMLModel domModel = (XMLModel) model;
-		XMLDocument document = domModel.getDocument();
-		PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getAdapterFor(PageDirectiveAdapter.class);
-		pageDirectiveAdapter.setEmbeddedType(embeddedContentType);
-		embeddedContentType.initializeFactoryRegistry(model.getFactoryRegistry());
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		embeddedContentType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-		// adding language here, in this convienent central
-		// location, but some obvious renaming or refactoring
-		// wouldn't hurt, in future.
-		// I needed to add this language setting for JSP Fragment support
-		// Note: I don't think this attempted init counts for much.
-		// I think its always executed when model is very first
-		// being initialized, and doesn't even have content
-		// or an ID yet. I thought I'd leave, since it wouldn't
-		// hurt, in case its called in other circumstances.
-		//		String language = getLanguage(model);
-		//		pageDirectiveAdapter.setLanguage(language);
-	}
-
-	/**
-	 * This init method is for the case where we are creating an empty model,
-	 * which we always do.
-	 */
-	private void initializeEmbeddedTypeFromDefault(IStructuredModel model) {
-		EmbeddedTypeHandler embeddedContentType = getJSPDefaultEmbeddedType();
-		initializeEmbeddedType(model, embeddedContentType);
-	}
-
-	/**
-	 * This method must return a new instance of IStructuredDocument, that has
-	 * been initialized with appropriate parser. For many loaders, the
-	 * (default) parser used is known for any input. For others, the correct
-	 * parser (and its initialization) is normall dependent on the content of
-	 * the file. This no-argument method should assume "empty input" and would
-	 * therefore return the default parser for the default contentType. If the
-	 * parser is to handle tag libraries, it must have a TaglibSupport object
-	 * with a valid URIResolver and this IStructuredDocument attached to it
-	 * before the contents are set on the IStructuredDocument.
-	 */
-	protected IEncodedDocument newEncodedDocument() {
-		IStructuredDocument structuredDocument = StructuredDocumentFactory.getNewStructuredDocumentInstance(getParser());
-		((BasicStructuredDocument) structuredDocument).setReParser(new JSPReParser());
-		//		structuredDocument.setDocumentPartitioner(new
-		// JSPJavaDocumentPartioner());
-		// even though this is an "empty model" ... we want it to have at
-		// least
-		// the
-		// default embeddeded content type handler
-		EmbeddedTypeHandler embeddedType = getJSPDefaultEmbeddedType();
-		embeddedType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-		return structuredDocument;
-	}
-
-	public IDocumentLoader newInstance() {
-		return new JSPDocumentLoader();
-	}
-
-	protected void preLoadAdapt(IStructuredModel structuredModel) {
-		XMLModel domModel = (XMLModel) structuredModel;
-		//
-		// document must have already been set for this to
-		// work.
-		Document document = domModel.getDocument();
-		Assert.isNotNull(document);
-		// if there is a model in the adapter, this will adapt it to
-		// first node. After that the PropagatingAdater spreads over the
-		// children being
-		// created. Each time that happends, a side effect is to
-		// also "spread" sprecific registered adapters,
-		// they two can propigate is needed.
-		// This 'get' causes first to be be attached.
-		PropagatingAdapter propagatingAdapter = (PropagatingAdapter) ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
-		// may make this easier to use in futue
-		propagatingAdapter.addAdaptOnCreateFactory(new PageDirectiveWatcherFactory());
-		// For JSPs, the ModelQueryAdapter must be "attached" to the document
-		// before content is set in the model, so taglib initization can
-		// take place.
-		((INodeNotifier) document).getAdapterFor(ModelQueryAdapter.class);
-		//
-		// 
-	}
-
-	/**
-	 * This is "reinitialize" since there should always be at least the
-	 * default one assigned, before we start checking the stream
-	 */
-	private void reInitializeEmbeddedType(IStructuredModel model, EmbeddedTypeHandler oldEmbeddedContentType, EmbeddedTypeHandler newEmbeddedContentType) throws IOException {
-		// check program logic
-		Assert.isNotNull(oldEmbeddedContentType, "Program error: invalid call during model initialization"); //$NON-NLS-1$
-		// once we know the embedded content type, we need to set it in the
-		// PageDirectiveAdapter ... the order of initialization is
-		// critical here, the doc must have been created, but its contents not
-		// set
-		// yet,
-		// and all factories must have been set up also.
-		XMLModel domModel = (XMLModel) model;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		XMLDocument document = domModel.getDocument();
-		PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getExistingAdapter(PageDirectiveAdapter.class);
-		// ==> // PropagatingAdapter propagatingAdapter = (PropagatingAdapter)
-		// ((INodeNotifier)
-		// document).getExistingAdapter(PropagatingAdapter.class);
-		// ==> // ModelQueryAdapter modelQueryAdapter = (ModelQueryAdapter)
-		// ((INodeNotifier)
-		// document).getExistingAdapter(ModelQueryAdapter.class);
-		oldEmbeddedContentType.uninitializeFactoryRegistry(model.getFactoryRegistry());
-		oldEmbeddedContentType.uninitializeParser((JSPCapableParser) structuredDocument.getParser());
-		// since 'document' is not recreated in this
-		// reinit path, we need to remove all adapters,
-		// except for the propagated adapters (including page
-		// directive adapter, and model query adapter).
-		// to accomplish this, we'll just remove all, then
-		// add back with a call to pre-load adapt.
-		// let clients decide to unload adapters from document
-		//		Collection oldAdapters = document.getAdapters();
-		//		Iterator oldAdaptersIterator = oldAdapters.iterator();
-		//		while (oldAdaptersIterator.hasNext()) {
-		//			INodeAdapter oldAdapter = (INodeAdapter)
-		// oldAdaptersIterator.next();
-		//			if (oldAdapter != pageDirectiveAdapter && oldAdapter !=
-		// propagatingAdapter && oldAdapter != modelQueryAdapter) {
-		//				// DO NOT remove directly!
-		//				// can change contents while in notifity loop!
-		//				//oldAdaptersIterator.remove();
-		//				document.removeAdapter(oldAdapter);
-		//			}
-		//		}
-		// DMW: I believe something like the following is needed,
-		// since releases cached adapters
-		//				if (document instanceof DocumentImpl) {
-		//					((DocumentImpl) document).releaseDocumentType();
-		//					((DocumentImpl) document).releaseStyleSheets();
-		//				}
-		// remember, embedded type factories are automatically cleared when
-		// embededType changed
-		pageDirectiveAdapter.setEmbeddedType(newEmbeddedContentType);
-		//		// but still need to clear the page directive watchers, and let
-		// them
-		// be
-		// rediscovered (with new, accurate node as target)
-		//		pageDirectiveAdapter.clearPageWatchers();
-		if (newEmbeddedContentType != null) {
-			newEmbeddedContentType.initializeFactoryRegistry(model.getFactoryRegistry());
-			newEmbeddedContentType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-		}
-		// adding language here, in this convienent central
-		// location, but some obvious renaming or refactoring
-		// wouldn't hurt, in future.
-		// I needed to add this language setting for JSP Fragment support
-		// Note: this is the one that counts, since at this point,
-		// the model has an ID, so we can look up IFile, etc.
-		String language = getLanguage(model);
-		if (language != null && language.length() > 0) {
-			pageDirectiveAdapter.setLanguage(language);
-		}
-	}
-
-	private void setLanguageInPageDirective(IStructuredModel newModel) throws IOException {
-		if (newModel instanceof XMLModel) {
-			XMLDocument document = ((XMLModel) newModel).getDocument();
-			PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getAdapterFor(PageDirectiveAdapter.class);
-			String language = getLanguage(newModel);
-			pageDirectiveAdapter.setLanguage(language);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePlugin.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePlugin.java
deleted file mode 100644
index fed43f0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePlugin.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal;
-
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPIndexManager;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.wst.sse.core.internal.encoding.CommonCharsetNames;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.osgi.framework.BundleContext;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class JSPCorePlugin extends Plugin {
-	//The shared instance.
-	private static JSPCorePlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$	
-
-	/**
-	 * The constructor.
-	 */
-	public JSPCorePlugin() {
-		super();
-		plugin = this;
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static JSPCorePlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the workspace instance.
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.Plugin#initializeDefaultPluginPreferences()
-	 */
-	protected void initializeDefaultPluginPreferences() {
-		Preferences prefs = getDefault().getPluginPreferences();
-		// set model preference defaults
-		prefs.setDefault(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE, CommonModelPreferenceNames.ASIS);
-		prefs.setDefault(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE, CommonModelPreferenceNames.ASIS);
-		prefs.setDefault(CommonModelPreferenceNames.INSERT_MISSING_TAGS, true);
-		prefs.setDefault(CommonModelPreferenceNames.QUOTE_ATTR_VALUES, true);
-		prefs.setDefault(CommonModelPreferenceNames.FORMAT_SOURCE, true);
-		prefs.setDefault(CommonModelPreferenceNames.CONVERT_EOL_CODES, false);
-
-		prefs.setDefault(CommonEncodingPreferenceNames.INPUT_CODESET, ""); //$NON-NLS-1$
-
-		String defaultEnc = CommonModelPreferenceNames.UTF_8;
-		String systemEnc = System.getProperty("file.encoding");		 //$NON-NLS-1$
-		if (systemEnc != null) {
-			defaultEnc = CommonCharsetNames.getPreferredDefaultIanaName(systemEnc, CommonModelPreferenceNames.UTF_8);
-		}
-		prefs.setDefault(CommonEncodingPreferenceNames.OUTPUT_CODESET, defaultEnc);
-		
-		prefs.setDefault(CommonEncodingPreferenceNames.END_OF_LINE_CODE, ""); //$NON-NLS-1$
-		prefs.setDefault(CommonModelPreferenceNames.TAB_WIDTH, CommonModelPreferenceNames.DEFAULT_TAB_WIDTH);
-
-		prefs.setDefault(CommonModelPreferenceNames.FORMATTING_SUPPORTED, true);
-		prefs.setDefault(CommonModelPreferenceNames.LINE_WIDTH, 72);
-		prefs.setDefault(CommonModelPreferenceNames.SPLIT_MULTI_ATTRS, false);
-		prefs.setDefault(CommonModelPreferenceNames.INDENT_USING_TABS, true);
-		prefs.setDefault(CommonModelPreferenceNames.CLEAR_ALL_BLANK_LINES, false);
-
-		prefs.setDefault(CommonModelPreferenceNames.PREFERRED_MARKUP_CASE_SUPPORTED, true);
-		prefs.setDefault(CommonModelPreferenceNames.TAG_NAME_CASE, CommonModelPreferenceNames.UPPER);
-		prefs.setDefault(CommonModelPreferenceNames.ATTR_NAME_CASE, CommonModelPreferenceNames.LOWER);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		
-		// JSPIndexManager depends on TaglibController, so TaglibController
-		// should be started first
-		TaglibController.startup();
-		
-		// add JSPIndexManager to keep JSP Index up to date
-		// listening for IResourceChangeEvent.PRE_DELETE and IResourceChangeEvent.POST_CHANGE
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(JSPIndexManager.getInstance(), IResourceChangeEvent.POST_CHANGE);
-		
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5091
-		// makes sure IndexManager is aware of our indexes
-		JSPIndexManager.getInstance().saveIndexes();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
-	 */
-	public void stop(BundleContext context) throws Exception {
-		// stop listening
-		ResourcesPlugin.getWorkspace().removeResourceChangeListener(JSPIndexManager.getInstance());
-		// stop any searching/indexing
-		JSPSearchSupport.getInstance().setCanceled(true);
-		 
-		TaglibController.shutdown();
-		
-		super.stop(context);
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String value) {
-		String s = value.trim();
-		if (!s.startsWith(KEY_PREFIX, 0))
-			return s;
-		if (s.startsWith(KEY_DOUBLE_PREFIX, 0))
-			return s.substring(1);
-
-		int ix = s.indexOf(' ');
-		String key = ix == -1 ? s : s.substring(0, ix);
-
-		ResourceBundle bundle = getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key.substring(1)) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getResourceString(String key, Object[] args) {
-
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (IllegalArgumentException e) {
-			return getResourceString(key);
-		}
-
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		try {
-			if (resourceBundle == null)
-				resourceBundle = ResourceBundle.getBundle("org.eclipse.jst.jsp.core.internal.JSPCorePluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePluginResources.properties b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePluginResources.properties
deleted file mode 100644
index bfa64fe..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/JSPCorePluginResources.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-JSPSearchSupport.0=JSP Search indexing workspace
-JSPIndexManager.0=Updating JSP Index
-JSPIndexManager.1=Processing resource delta
-JSPIndexManager.2=JSP Indexer indexing {0} files
-JSPIndexManager.3=JSP Indexer indexing file {0}
-JSPIndexManager.4=JSP Indexer
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Logger.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Logger.java
deleted file mode 100644
index a35dcd0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/Logger.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal;
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-/**
- * Small convenience class to log messages to plugin's log file and also, if desired,
- * the console. This class should only be used by classes in this plugin. Other
- * plugins should make their own copy, with appropriate ID.
- */
-public class Logger {
-	private static final String PLUGIN_ID = "org.eclipse.jst.jsp.core"; //$NON-NLS-1$
-	
-	private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
-
-	public static final int OK = IStatus.OK; // 0
-	public static final int INFO = IStatus.INFO; // 1
-	public static final int WARNING = IStatus.WARNING; // 2
-	public static final int ERROR = IStatus.ERROR; // 4
-
-	public static final int OK_DEBUG = 200 + OK;
-	public static final int INFO_DEBUG = 200 + INFO;
-	public static final int WARNING_DEBUG = 200 + WARNING;
-	public static final int ERROR_DEBUG = 200 + ERROR;
-
-	/**
-	 * Adds message to log.
-	 * @param level severity level of the message (OK, INFO, WARNING, ERROR, OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
-	 * @param message text to add to the log
-	 * @param exception exception thrown
-	 */
-	protected static void _log(int level, String message, Throwable exception) {
-		if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
-			if (!isDebugging())
-				return;
-		}
-
-		int severity = IStatus.OK;
-		switch (level) {
-			case INFO_DEBUG :
-			case INFO :
-				severity = IStatus.INFO;
-				break;
-			case WARNING_DEBUG :
-			case WARNING :
-				severity = IStatus.WARNING;
-				break;
-			case ERROR_DEBUG :
-			case ERROR :
-				severity = IStatus.ERROR;
-		}
-		message = (message != null) ? message : "null"; //$NON-NLS-1$
-		Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null) 
-			Platform.getLog(bundle).log(statusObj);
-	}
-
-	/**
-	 * Prints message to log if category matches /debug/tracefilter option.
-	 * @param message text to print
-	 * @param category category of the message, to be compared with /debug/tracefilter
-	 */
-	protected static void _trace(String category, String message, Throwable exception) {
-		if (isTracing(category)) {
-			message = (message != null) ? message : "null"; //$NON-NLS-1$
-			Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
-			Bundle bundle = Platform.getBundle(PLUGIN_ID);
-			if (bundle != null) 
-				Platform.getLog(bundle).log(statusObj);
-		}
-	}
-
-	/**
-	 * @return true if the platform is debugging
-	 */
-	public static boolean isDebugging() {
-		return Platform.inDebugMode();
-	}
-
-	/**
-	 * Determines if currently tracing a category
-	 * @param category
-	 * @return true if tracing category, false otherwise
-	 */
-	public static boolean isTracing(String category) {
-		if (!isDebugging())
-			return false;
-
-		String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
-		if (traceFilter != null) {
-			StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens()) {
-				String cat = tokenizer.nextToken().trim();
-				if (category.equals(cat)) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	public static void log(int level, String message) {
-		_log(level, message, null);
-	}
-
-	public static void log(int level, String message, Throwable exception) {
-		_log(level, message, exception);
-	}
-
-	public static void logException(String message, Throwable exception) {
-		_log(ERROR, message, exception);
-	}
-
-	public static void logException(Throwable exception) {
-		_log(ERROR, exception.getMessage(), exception);
-	}
-
-	public static void traceException(String category, String message, Throwable exception) {
-		_trace(category, message, exception);
-	}
-
-	public static void traceException(String category, Throwable exception) {
-		_trace(category, exception.getMessage(), exception);
-	}
-
-	public static void trace(String category, String message) {
-		_trace(category, message, null);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMContentWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMContentWrapperImpl.java
deleted file mode 100644
index ed39833..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMContentWrapperImpl.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class CMContentWrapperImpl extends CMNodeWrapperImpl implements CMContent {
-
-	private CMContent fCMContent = null;
-
-	/**
-	 * CMContentWrapper constructor comment.
-	 * @param prefix java.lang.String
-	 * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	public CMContentWrapperImpl(String prefix, org.eclipse.wst.xml.core.internal.contentmodel.CMContent node) {
-		super(prefix, node);
-		fCMContent = node;
-	}
-
-	/**
-	 * getMaxOccur method
-	 * @return int
-	 *
-	 * If -1, it's UNBOUNDED.
-	 */
-	public int getMaxOccur() {
-		return fCMContent.getMaxOccur();
-	}
-
-	/**
-	 * getMinOccur method
-	 * @return int
-	 *
-	 * If 0, it's OPTIONAL.
-	 * If 1, it's REQUIRED.
-	 */
-	public int getMinOccur() {
-		return fCMContent.getMinOccur();
-	}
-
-	public CMNode getOriginNode() {
-		return fCMContent;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMDocumentWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMDocumentWrapperImpl.java
deleted file mode 100644
index 543463d..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMDocumentWrapperImpl.java
+++ /dev/null
@@ -1,216 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel;
-
-
-
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.wst.xml.core.contentmodel.CMNodeWrapper;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class CMDocumentWrapperImpl implements CMDocument, CMNodeWrapper {
-
-	class CMNamedNodeMapImpl implements CMNamedNodeMap {
-
-		protected Hashtable table = new Hashtable();
-
-		public CMNamedNodeMapImpl() {
-			super();
-		}
-
-		Hashtable getHashtable() {
-			return table;
-		}
-
-		public int getLength() {
-			return table.size();
-		}
-
-		public CMNode getNamedItem(String name) {
-			return (CMNode) table.get(name);
-		}
-
-		public CMNode item(int index) {
-			Object result = null;
-			int size = table.size();
-			if (index < size) {
-				Iterator values = iterator();
-				for (int i = 0; i <= index; i++) {
-					result = values.next();
-				}
-			}
-			return (CMNode) result;
-		}
-
-		public Iterator iterator() {
-			return table.values().iterator();
-		}
-
-		public void setNamedItem(String name, CMNode aNode) {
-			if (name != null && aNode != null)
-				table.put(name, aNode);
-		}
-	}
-
-	public class CMNamespaceImpl implements CMNamespace {
-		public String getNodeName() {
-			return CMDocumentWrapperImpl.this.getURI();
-		}
-
-		public int getNodeType() {
-			return CMNode.NAME_SPACE;
-		}
-
-		public String getPrefix() {
-			return CMDocumentWrapperImpl.this.getPrefix();
-		}
-
-		public Object getProperty(String property) {
-			return null;
-		}
-
-		public String getURI() {
-			return CMDocumentWrapperImpl.this.getURI();
-		}
-
-		public boolean supports(String feature) {
-			return false;
-		}
-	}
-
-	private CMDocument fDocument;
-	private CMNamedNodeMap fElements = null;
-	private CMNamedNodeMap fEntities = null;
-	private CMNamespace fNamespace = new CMNamespaceImpl();
-	private String fPrefix;
-	private String fURI;
-
-	public CMDocumentWrapperImpl(String newURI, String newPrefix, CMDocument tld) {
-		fURI = newURI;
-		fPrefix = newPrefix;
-		fDocument = tld;
-	}
-
-	/**
-	 * 
-	 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMDocument
-	 */
-	public CMDocument getDocument() {
-		return fDocument;
-	}
-
-	/**
-	 * getElements method
-	 * @return CMNamedNodeMap
-	 *
-	 * Returns CMNamedNodeMap of ElementDeclaration
-	 */
-	public CMNamedNodeMap getElements() {
-		if (fElements == null) {
-			int length = getDocument().getElements().getLength();
-			CMNamedNodeMapImpl elements = new CMNamedNodeMapImpl();
-			for (int i = 0; i < length; i++) {
-				CMElementDeclaration ed = new CMElementDeclarationWrapperImpl(fPrefix, (CMElementDeclaration) getDocument().getElements().item(i));
-				elements.setNamedItem(ed.getNodeName(), ed);
-			}
-			fElements = elements;
-		}
-		return fElements;
-	}
-
-	/**
-	 * getEntities method
-	 * @return CMNamedNodeMap
-	 *
-	 * Returns CMNamedNodeMap of EntityDeclaration
-	 */
-	public CMNamedNodeMap getEntities() {
-		if (fEntities == null) {
-			fEntities = getDocument().getEntities();
-		}
-		return fEntities;
-	}
-
-	/**
-	 * getNamespace method
-	 * @return CMNamespace
-	 */
-	public CMNamespace getNamespace() {
-		return fNamespace;
-	}
-
-	/**
-	 * getNodeName method
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return getDocument().getNodeName();
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 *
-	 */
-	public int getNodeType() {
-		return getDocument().getNodeType();
-	}
-
-	public CMNode getOriginNode() {
-		return fDocument;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getPrefix() {
-		return fPrefix;
-	}
-
-	/**
-	 * getProperty method
-	 * @return java.lang.Object
-	 *
-	 * Returns the object property desciped by the propertyName
-	 *
-	 */
-	public Object getProperty(String propertyName) {
-		return getDocument().getProperty(propertyName);
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getURI() {
-		return fURI;
-	}
-
-	/**
-	 * supports method
-	 * @return boolean
-	 *
-	 * Returns true if the CMNode supports a specified property
-	 *
-	 */
-	public boolean supports(String propertyName) {
-		return getDocument().supports(propertyName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMElementDeclarationWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMElementDeclarationWrapperImpl.java
deleted file mode 100644
index 86368f0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMElementDeclarationWrapperImpl.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class CMElementDeclarationWrapperImpl extends CMNodeWrapperImpl implements CMElementDeclaration {
-	private CMContent fCMContent = null;
-
-	protected CMElementDeclaration fElementDecl = null;
-
-	/**
-	 * CMElementDeclarationWrapper constructor comment.
-	 * @param prefix java.lang.String
-	 * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-	 */
-	public CMElementDeclarationWrapperImpl(String prefix, CMElementDeclaration node) {
-		super(prefix, node);
-		fElementDecl = node;
-	}
-
-	/**
-	 * getAttributes method
-	 * @return CMNamedNodeMap
-	 *
-	 * Returns CMNamedNodeMap of AttributeDeclaration
-	 */
-	public CMNamedNodeMap getAttributes() {
-		return fElementDecl.getAttributes();
-	}
-
-	/**
-	 * getCMContent method
-	 * @return CMContent
-	 *
-	 * Returns the root node of this element's content model.
-	 * This can be an CMElementDeclaration or a CMGroup
-	 */
-	public CMContent getContent() {
-		if (fCMContent == null) {
-			CMContent content = fElementDecl.getContent();
-			if (content == null)
-				return null;
-			if (content instanceof CMGroup)
-				fCMContent = new CMGroupWrapperImpl(fPrefix, (CMGroup) content);
-			else
-				fCMContent = new CMContentWrapperImpl(fPrefix, content);
-		}
-		return fCMContent;
-	}
-
-	/**
-	 * getContentType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA.
-	 */
-	public int getContentType() {
-		return fElementDecl.getContentType();
-	}
-
-	/**
-	 * getDataType method
-	 * @return java.lang.String
-	 */
-	public CMDataType getDataType() {
-		return fElementDecl.getDataType();
-	}
-
-	/**
-	 * getElementName method
-	 * @return java.lang.String
-	 */
-	public String getElementName() {
-		return getNodeName();
-	}
-
-	/**
-	 * getLocalElements method
-	 * @return CMNamedNodeMap
-	 *
-	 * Returns a list of locally defined elements.
-	 */
-	public CMNamedNodeMap getLocalElements() {
-		return fElementDecl.getLocalElements();
-	}
-
-	/**
-	 * getMaxOccur method
-	 * @return int
-	 *
-	 * If -1, it's UNBOUNDED.
-	 */
-	public int getMaxOccur() {
-		return fElementDecl.getMaxOccur();
-	}
-
-	/**
-	 * getMinOccur method
-	 * @return int
-	 *
-	 * If 0, it's OPTIONAL.
-	 * If 1, it's REQUIRED.
-	 */
-	public int getMinOccur() {
-		return fElementDecl.getMinOccur();
-	}
-
-	public CMNode getOriginNode() {
-		return fElementDecl;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMGroupWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMGroupWrapperImpl.java
deleted file mode 100644
index 714c547..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMGroupWrapperImpl.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-
-public class CMGroupWrapperImpl extends CMContentWrapperImpl implements CMGroup {
-	class CMNodeListImpl implements CMNodeList {
-		private List nodes = null;
-
-		/**
-		 * CMNodeListImpl constructor comment.
-		 */
-		public CMNodeListImpl() {
-			super();
-			nodes = new ArrayList();
-		}
-
-		/**
-		 * @return org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-		 * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMNode
-		 */
-		public void appendItem(CMNode node) {
-			nodes.add(node);
-		}
-
-		/**
-		 * getLength method
-		 * @return int
-		 */
-		public int getLength() {
-			return nodes.size();
-		}
-
-		/**
-		 * item method
-		 * @return CMNode
-		 * @param index int
-		 */
-		public CMNode item(int index) {
-			if (index < 0 || index >= nodes.size())
-				return null;
-			return (CMNode) nodes.get(index);
-		}
-	}
-
-	private CMNodeList fChildNodes = null;
-	private CMGroup fGroup = null;
-
-	/**
-	 * CMGroupWrapper constructor comment.
-	 * @param prefix java.lang.String
-	 * @param node org.eclipse.wst.xml.core.internal.contentmodel.CMContent
-	 */
-	public CMGroupWrapperImpl(String prefix, CMGroup node) {
-		super(prefix, node);
-	}
-
-	/**
-	 * getChildNodes method
-	 * @return CMNodeList
-	 *
-	 * Returns child CMNodeList, which includes ElementDefinition or CMElement.
-	 */
-	public CMNodeList getChildNodes() {
-		if (fChildNodes == null) {
-			CMNodeListImpl childNodes = new CMNodeListImpl();
-			CMNodeList children = fGroup.getChildNodes();
-			for (int i = 0; i < children.getLength(); i++) {
-				CMNode child = children.item(i);
-				if (child instanceof CMGroup)
-					childNodes.appendItem(new CMGroupWrapperImpl(fPrefix, (CMGroup) child));
-				else if (child instanceof CMElementDeclaration)
-					childNodes.appendItem(new CMElementDeclarationWrapperImpl(fPrefix, (CMElementDeclaration) child));
-				else
-					// error?
-					childNodes.appendItem(new CMNodeWrapperImpl(fPrefix, child));
-			}
-			fChildNodes = childNodes;
-		}
-		return fChildNodes;
-	}
-
-	/**
-	 * getOperation method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ALONE (a), SEQUENCE (a,b), CHOICE (a|b), ALL (a&b).
-	 */
-	public int getOperator() {
-		return fGroup.getOperator();
-	}
-
-	public CMNode getOriginNode() {
-		return fGroup;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMNodeWrapperImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMNodeWrapperImpl.java
deleted file mode 100644
index 1f9e6ae..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/CMNodeWrapperImpl.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.contentmodel.CMNodeWrapper;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class CMNodeWrapperImpl implements CMNode, CMNodeWrapper {
-	private CMNode fNode = null;
-	private String fNodeName = null;
-
-	protected String fPrefix = null;
-
-	/**
-	 * CMNodeWrapper constructor comment.
-	 */
-	public CMNodeWrapperImpl(String prefix, CMNode node) {
-		super();
-		fPrefix = prefix;
-		fNode = node;
-
-		fNodeName = fPrefix + ":" + fNode.getNodeName(); //$NON-NLS-1$
-	}
-
-	/**
-	 * getNodeName method
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return fNodeName;
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 *
-	 */
-	public int getNodeType() {
-		return fNode.getNodeType();
-	}
-
-	public CMNode getOriginNode() {
-		return fNode;
-	}
-
-	/**
-	 * getProperty method
-	 * @return java.lang.Object
-	 *
-	 * Returns the object property desciped by the propertyName
-	 *
-	 */
-	public Object getProperty(String propertyName) {
-		return fNode.getProperty(propertyName);
-	}
-
-	/**
-	 * supports method
-	 * @return boolean
-	 *
-	 * Returns true if the CMNode supports a specified property
-	 *
-	 */
-	public boolean supports(String propertyName) {
-		return fNode.supports(propertyName);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibIndexListener.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibIndexListener.java
deleted file mode 100644
index 25c3a11..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibIndexListener.java
+++ /dev/null
@@ -1,17 +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.jst.jsp.core.internal.contentmodel;
-
-
-public interface ITaglibIndexListener {
-	void indexChanged(ITaglibRecordEvent event);
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibRecord.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibRecord.java
deleted file mode 100644
index b747676..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibRecord.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.jst.jsp.core.internal.contentmodel;
-
-public interface ITaglibRecord {
-	int JAR = 1 << 2;
-	int TAGDIR = 1 << 4;
-	int TLD = 1 << 1;
-	int URL = 1;
-	int WEB_XML = 1 << 3;
-
-	int getRecordType();
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibRecordEvent.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibRecordEvent.java
deleted file mode 100644
index b8ae951..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ITaglibRecordEvent.java
+++ /dev/null
@@ -1,24 +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.jst.jsp.core.internal.contentmodel;
-
-import org.eclipse.core.resources.IResourceDelta;
-
-public interface ITaglibRecordEvent {
-	ITaglibRecord getTaglibRecord();
-
-	int getType();
-
-	int ADDED = IResourceDelta.ADDED;
-	int CHANGED = IResourceDelta.CHANGED;
-	int REMOVED = IResourceDelta.REMOVED;
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JSPCMDocumentFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JSPCMDocumentFactory.java
deleted file mode 100644
index 3177eb8..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JSPCMDocumentFactory.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel;
-
-import org.eclipse.wst.html.core.contentmodel.HTMLCMDocumentFactory;
-import org.eclipse.wst.xml.core.contentmodel.CMDocType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
-
-/**
- * CMDocument factory for JSP documents.
- */
-public final class JSPCMDocumentFactory {
-
-	static class CMDocImpl implements CMDocument {
-		public CMDocImpl() {
-			super();
-		}
-
-		private static CMDocument jcm = HTMLCMDocumentFactory.getCMDocument(CMDocType.JSP11_DOC_TYPE);
-
-		public String getNodeName() {
-			return jcm.getNodeName();
-		}
-
-		public int getNodeType() {
-			return jcm.getNodeType();
-		}
-
-		public CMNamedNodeMap getElements() {
-			return jcm.getElements();
-		}
-
-		public CMNamedNodeMap getEntities() {
-			return jcm.getEntities();
-		}
-
-		public CMNamespace getNamespace() {
-			return jcm.getNamespace();
-		}
-
-		public Object getProperty(String propertyName) {
-			return null;
-		}
-
-		public boolean supports(String propertyName) {
-			return false;
-		}
-	}
-
-	private static CMDocument mycm;
-
-	private JSPCMDocumentFactory() {
-		super();
-	}
-
-	public static CMDocument getCMDocument() {
-		if (mycm == null) {
-			mycm = new CMDocImpl();
-		}
-		return mycm;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JarRecord.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JarRecord.java
deleted file mode 100644
index 7afd692..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/JarRecord.java
+++ /dev/null
@@ -1,50 +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.jst.jsp.core.internal.contentmodel;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-
-
-public class JarRecord implements ITaglibRecord {
-	IPath location;
-	List urlRecords;
-
-	public boolean equals(Object obj) {
-		if (!(obj instanceof JarRecord))
-			return false;
-		return ((JarRecord) obj).location.equals(location);
-	}
-
-	public int getRecordType() {
-		return ITaglibRecord.JAR;
-	}
-
-	/**
-	 * @return Returns the location.
-	 */
-	public IPath getLocation() {
-		return location;
-	}
-
-	/**
-	 * 
-	 */
-	public List getURLRecords() {
-		return urlRecords;
-	}
-
-	public String toString() {
-		return "JarRecord: " + location + " <-> " + urlRecords;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ProjectDescription.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ProjectDescription.java
deleted file mode 100644
index aa42948..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ProjectDescription.java
+++ /dev/null
@@ -1,751 +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.jst.jsp.core.internal.contentmodel;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Stack;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-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.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IResourceProxy;
-import org.eclipse.core.resources.IResourceProxyVisitor;
-import org.eclipse.core.resources.ResourcesPlugin;
-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.jdt.core.IClasspathContainer;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.util.DocumentProvider;
-import org.eclipse.wst.sse.core.util.JarUtilities;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-class ProjectDescription {
-
-	class DeltaVisitor implements IResourceDeltaVisitor {
-		public boolean visit(IResourceDelta delta) throws CoreException {
-			if (delta.getResource().getType() == IResource.FILE) {
-				if (delta.getResource().getName().endsWith(".tld")) {
-					if (delta.getKind() == IResourceDelta.REMOVED) {
-						removeTLD(delta.getResource());
-					}
-					else {
-						updateTLD(delta.getResource(), delta.getKind());
-					}
-				}
-				else if (delta.getResource().getName().endsWith(".jar")) {
-					if (delta.getKind() == IResourceDelta.REMOVED) {
-						removeJAR(delta.getResource());
-					}
-					else {
-						updateJAR(delta.getResource(), delta.getKind());
-					}
-				}
-				else if (delta.getResource().getName().endsWith(".tag") || delta.getResource().getName().endsWith(".tagx")) {
-					if (delta.getKind() == IResourceDelta.REMOVED) {
-						removeTagDir(delta.getResource());
-					}
-					else {
-						updateTagDir(delta.getResource(), delta.getKind());
-					}
-				}
-				else if (delta.getResource().getName().equals(WEB_XML) && delta.getResource().getParent().getName().equals(WEB_INF)) {
-					if (delta.getKind() == IResourceDelta.REMOVED) {
-						removeServlets(delta.getResource());
-					}
-					else {
-						updateServlets(delta.getResource(), delta.getKind());
-					}
-				}
-			}
-			return true;
-		}
-	}
-
-	class Indexer implements IResourceProxyVisitor {
-		public boolean visit(IResourceProxy proxy) throws CoreException {
-			if (proxy.getType() == IResource.FILE) {
-				if (proxy.getName().endsWith(".tld")) {
-					updateTLD(proxy.requestResource(), ITaglibRecordEvent.ADDED);
-				}
-				else if (proxy.getName().endsWith(".jar")) {
-					updateJAR(proxy.requestResource(), ITaglibRecordEvent.ADDED);
-				}
-				else if (proxy.getName().endsWith(".tag") || proxy.getName().endsWith(".tagx")) {
-					updateTagDir(proxy.requestResource(), ITaglibRecordEvent.ADDED);
-				}
-				else if (proxy.getName().equals(WEB_XML) && proxy.requestResource().getParent().getName().equals(WEB_INF)) {
-					updateServlets(proxy.requestResource(), ITaglibRecordEvent.ADDED);
-				}
-			}
-			return true;
-		}
-	}
-
-	class TaglibRecordEvent implements ITaglibRecordEvent {
-		ITaglibRecord fTaglibRecord = null;
-		int fType = -1;
-
-		TaglibRecordEvent(ITaglibRecord record, int type) {
-			fTaglibRecord = record;
-			fType = type;
-		}
-
-		public ITaglibRecord getTaglibRecord() {
-			return fTaglibRecord;
-		}
-
-		public int getType() {
-			return fType;
-		}
-
-		public String toString() {
-			String string = fTaglibRecord.toString();
-			switch (fType) {
-				case ITaglibRecordEvent.ADDED :
-					string += " ADDED (" + TaglibRecordEvent.class.getName() + ")";
-					break;
-				case ITaglibRecordEvent.CHANGED :
-					string += " CHANGED (" + TaglibRecordEvent.class.getName() + ")";
-					break;
-				case ITaglibRecordEvent.REMOVED :
-					string += " REMOVED (" + TaglibRecordEvent.class.getName() + ")";
-					break;
-				default :
-					string += " other:" + fType + " (" + TaglibRecordEvent.class.getName() + ")";
-					break;
-			}
-			return string;
-		}
-	}
-
-	static boolean _debugIndexCreation = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/indexcreation"));
-	static boolean _debugIndexTime = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/indextime"));
-
-	private static final String WEB_INF = "WEB-INF";
-
-	private static final IPath WEB_INF_PATH = new Path("WEB-INF");
-	private static final String WEB_XML = "web.xml";
-
-	/*
-	 * Records active JARs on the classpath. Taglib descriptors should be
-	 * usable, but the jars by themselves should not.
-	 */
-	Hashtable fClasspathJars;
-
-	Stack fClasspathProjects = null;
-
-	// holds references by URI to TLDs
-	Hashtable fClasspathReferences;
-
-	// this table is special in that it holds tables of references according
-	// to local roots
-	Hashtable fImplicitReferences;
-	Hashtable fJARReferences;
-	IProject fProject;
-	Hashtable fServletReferences;
-	Hashtable fTagDirReferences;
-
-	Hashtable fTLDReferences;
-
-	IResourceDeltaVisitor fVisitor;
-
-	private long time0;
-
-	ProjectDescription(IProject project) {
-		super();
-		fProject = project;
-		fClasspathReferences = new Hashtable(0);
-		fClasspathJars = new Hashtable(0);
-		fJARReferences = new Hashtable(0);
-		fTagDirReferences = new Hashtable(0);
-		fTLDReferences = new Hashtable(0);
-		fServletReferences = new Hashtable(0);
-		fImplicitReferences = new Hashtable(0);
-	}
-
-	void updateClasspathLibrary(String libraryLocation, int deltaKind) {
-		String[] entries = JarUtilities.getEntryNames(libraryLocation);
-		JarRecord libraryRecord = (JarRecord) createJARRecord(libraryLocation);
-		fClasspathJars.put(libraryLocation, libraryRecord);
-		for (int i = 0; i < entries.length; i++) {
-			if (entries[i].endsWith(".tld")) {
-				InputStream contents = JarUtilities.getInputStream(libraryLocation, entries[i]);
-				if (contents != null) {
-					String uri = extractURI(libraryLocation, contents);
-					if (uri != null && uri.length() > 0) {
-						URLRecord record = new URLRecord();
-						record.uri = uri;
-						record.baseLocation = libraryLocation;
-						try {
-							record.url = new URL("jar:file:" + libraryLocation + "!/" + entries[i]);
-							libraryRecord.urlRecords.add(record);
-							fClasspathReferences.put(uri, record);
-							if (_debugIndexCreation)
-								System.out.println("created record for " + uri + "@" + record.getURL());
-						}
-						catch (MalformedURLException e) {
-							// don't record this URI
-							Logger.logException(e);
-						}
-					}
-					try {
-						contents.close();
-					}
-					catch (IOException e) {
-					}
-				}
-			}
-		}
-		TaglibIndex.fireTaglibRecordEvent(new TaglibRecordEvent(libraryRecord, deltaKind));
-	}
-
-	void updateJAR(IResource jar, int deltaKind) {
-		if (_debugIndexCreation)
-			System.out.println("creating records for JAR " + jar.getFullPath());
-		String jarLocationString = jar.getLocation().toString();
-		String[] entries = JarUtilities.getEntryNames(jar);
-		JarRecord jarRecord = (JarRecord) createJARRecord(jar);
-		fJARReferences.put(jar.getFullPath().toString(), jarRecord);
-		for (int i = 0; i < entries.length; i++) {
-			if (entries[i].endsWith(".tld")) {
-				InputStream contents = JarUtilities.getInputStream(jar, entries[i]);
-				if (contents != null) {
-					String uri = extractURI(jarLocationString, contents);
-					if (uri != null && uri.length() > 0) {
-						URLRecord record = new URLRecord();
-						record.uri = uri;
-						record.baseLocation = jarLocationString;
-						try {
-							record.url = new URL("jar:file:" + jarLocationString + "!/" + entries[i]);
-							jarRecord.urlRecords.add(record);
-							getImplicitReferences(jarLocationString).put(uri, record);
-							if (_debugIndexCreation)
-								System.out.println("created record for " + uri + "@" + record.getURL());
-						}
-						catch (MalformedURLException e) {
-							// don't record this URI
-							Logger.logException(e);
-						}
-					}
-					try {
-						contents.close();
-					}
-					catch (IOException e) {
-					}
-				}
-			}
-		}
-		TaglibIndex.fireTaglibRecordEvent(new TaglibRecordEvent(jarRecord, deltaKind));
-	}
-
-	void updateServlets(IResource webxml, int deltaKind) {
-		if (webxml.getType() != IResource.FILE)
-			return;
-		InputStream webxmlContents = null;
-		Document document = null;
-		try {
-			webxmlContents = ((IFile) webxml).getContents(true);
-			DocumentProvider provider = new DocumentProvider();
-			provider.setInputStream(webxmlContents);
-			provider.setValidating(false);
-			provider.setBaseReference(webxml.getParent().getLocation().toString());
-			document = provider.getDocument();
-		}
-		catch (CoreException e) {
-			Logger.logException(e);
-		}
-		finally {
-			if (webxmlContents != null)
-				try {
-					webxmlContents.close();
-				}
-				catch (IOException e1) {
-					// ignore
-				}
-		}
-		if (document == null)
-			return;
-		if (_debugIndexCreation)
-			System.out.println("creating records for " + webxml.getFullPath());
-
-		ServletRecord servletRecord = new ServletRecord();
-		servletRecord.location = webxml.getLocation();
-		fServletReferences.put(servletRecord.getWebXML().toString(), servletRecord);
-		NodeList taglibs = document.getElementsByTagName(JSP12TLDNames.TAGLIB);
-		for (int i = 0; i < taglibs.getLength(); i++) {
-			String uri = readTextofChild(taglibs.item(i), "taglib-uri").trim();
-			// specified location is relative to root of the webapp
-			String location = readTextofChild(taglibs.item(i), "taglib-location").trim();
-			TLDRecord record = new TLDRecord();
-			record.uri = uri;
-			if (location.startsWith("/")) {
-				record.location = ResourcesPlugin.getWorkspace().getRoot().getLocation().append(getLocalRoot(webxml.getLocation().toString()) + location);
-			}
-			else {
-				record.location = new Path(URIHelper.normalize(location, webxml.getLocation().toString(), getLocalRoot(webxml.getLocation().toString())));
-			}
-			servletRecord.tldRecords.add(record);
-			getImplicitReferences(webxml.getLocation().toString()).put(uri, record);
-			if (_debugIndexCreation)
-				System.out.println("created record for " + uri + "@" + record.location);
-		}
-		TaglibIndex.fireTaglibRecordEvent(new TaglibRecordEvent(servletRecord, deltaKind));
-	}
-
-	void updateTagDir(IResource tagFile, int deltaKind) {
-		return;
-		/**
-		 * Make sure the tag file is n a WEB-INF/tags folder because of the
-		 * shortname computation requirements
-		 */
-		// if ((tagFile.getType() & IResource.FOLDER) > 0 ||
-		// tagFile.getFullPath().toString().indexOf("WEB-INF/tags") < 0)
-		// return;
-		// TagDirRecord record = createTagdirRecord(tagFile);
-		// if (record != null) {
-		// record.tags.add(tagFile.getName());
-		// }
-	}
-
-	void updateTLD(IResource tld, int deltaKind) {
-		if (_debugIndexCreation)
-			System.out.println("creating record for " + tld.getFullPath());
-		TLDRecord record = createTLDRecord(tld);
-		fTLDReferences.put(tld.getFullPath().toString(), record);
-		if (record.uri != null) {
-			getImplicitReferences(tld.getLocation().toString()).put(record.uri, record);
-		}
-		TaglibIndex.fireTaglibRecordEvent(new TaglibRecordEvent(record, deltaKind));
-	}
-
-	void clear() {
-	}
-
-	/**
-	 * @param resource
-	 * @return
-	 */
-	private ITaglibRecord createJARRecord(IResource jar) {
-		return createJARRecord(jar.getLocation().toString());
-	}
-
-	private ITaglibRecord createJARRecord(String fileLocation) {
-		JarRecord record = new JarRecord();
-		record.location = new Path(fileLocation);
-		record.urlRecords = new ArrayList(0);
-		return record;
-	}
-
-	/**
-	 * @return
-	 */
-	TagDirRecord createTagdirRecord(IResource tagFile) {
-		IContainer tagdir = tagFile.getParent();
-		String tagdirLocation = tagdir.getFullPath().toString();
-		TagDirRecord record = (TagDirRecord) fTagDirReferences.get(tagdirLocation);
-		if (record == null) {
-			record = new TagDirRecord();
-			record.location = tagdir.getFullPath();
-			// JSP 2.0 section 8.4.3
-			if (tagdir.getName().equals("tags"))
-				record.shortName = "tags";
-			else {
-				IPath tagdirPath = tagdir.getFullPath();
-				String[] segments = tagdirPath.segments();
-				for (int i = 1; record.shortName == null && i < segments.length; i++) {
-					if (segments[i - 1].equals("WEB-INF") && segments[i].equals("tags")) {
-						IPath tagdirLocalPath = tagdirPath.removeFirstSegments(i + 1);
-						record.shortName = tagdirLocalPath.toString().replace('/', '-');
-					}
-				}
-			}
-
-		}
-		return record;
-	}
-
-	/**
-	 * @param resource
-	 * @return
-	 */
-	private TLDRecord createTLDRecord(IResource tld) {
-		TLDRecord record = new TLDRecord();
-		record.location = tld.getLocation();
-		InputStream contents = null;
-		try {
-			contents = ((IFile) tld).getContents(true);
-			String baseLocation = record.location.toString();
-			String defaultURI = extractURI(baseLocation, contents);
-			if (defaultURI != null && defaultURI.length() > 0) {
-				record.uri = defaultURI;
-			}
-		}
-		catch (CoreException e) {
-			Logger.logException(e);
-		}
-		finally {
-			try {
-				if (contents != null) {
-					contents.close();
-				}
-			}
-			catch (IOException e) {
-				// ignore
-			}
-		}
-		return record;
-	}
-
-	/**
-	 * @param tldContents
-	 * @return
-	 */
-	private String extractURI(String baseLocation, InputStream tldContents) {
-		StringBuffer uri = new StringBuffer();
-		Node result = null;
-		DocumentProvider provider = new DocumentProvider();
-		provider.setInputStream(tldContents);
-		provider.setValidating(false);
-		provider.setRootElementName(JSP12TLDNames.TAGLIB);
-		provider.setBaseReference(baseLocation);
-		result = provider.getRootElement();
-		if (result.getNodeType() != Node.ELEMENT_NODE)
-			return null;
-		Element taglibElement = (Element) result;
-		if (taglibElement != null) {
-			Node child = taglibElement.getFirstChild();
-			while (child != null && !(child.getNodeType() == Node.ELEMENT_NODE && child.getNodeName().equals(JSP12TLDNames.URI))) {
-				child = child.getNextSibling();
-			}
-			if (child != null) {
-				Node text = child.getFirstChild();
-				while (text != null) {
-					if (text.getNodeType() == Node.TEXT_NODE || text.getNodeType() == Node.CDATA_SECTION_NODE) {
-						uri.append(text.getNodeValue().trim());
-					}
-					text = text.getNextSibling();
-				}
-			}
-		}
-		return uri.toString();
-	}
-
-	synchronized List getAvailableTaglibRecords(IPath location) {
-		Collection implicitReferences = getImplicitReferences(location.toString()).values();
-		List records = new ArrayList(fTLDReferences.size() + fTagDirReferences.size() + fJARReferences.size() + fServletReferences.size());
-		records.addAll(fTLDReferences.values());
-		records.addAll(fTagDirReferences.values());
-		records.addAll(fJARReferences.values());
-		records.addAll(fServletReferences.values());
-		records.addAll(implicitReferences);
-		return records;
-	}
-
-	/**
-	 * @return Returns the implicitReferences for the given path
-	 */
-	Hashtable getImplicitReferences(String location) {
-		String localRoot = getLocalRoot(location);
-		Hashtable implicitReferences = (Hashtable) fImplicitReferences.get(localRoot);
-		if (implicitReferences == null) {
-			implicitReferences = new Hashtable(1);
-			fImplicitReferences.put(localRoot, implicitReferences);
-		}
-		return implicitReferences;
-	}
-
-	/**
-	 * @param baseLocation
-	 * @return the applicable Web context root path, if one exists
-	 */
-	IPath getLocalRoot(IPath baseLocation) {
-		IResource file = FileBuffers.getWorkspaceFileAtLocation(baseLocation);
-		while (file != null) {
-			/**
-			 * Treat any parent folder with a WEB-INF subfolder as a web-app
-			 * root
-			 */
-			IContainer folder = null;
-			if ((file.getType() & IResource.FOLDER) != 0) {
-				folder = (IContainer) file;
-			}
-			else {
-				folder = file.getParent();
-			}
-			// getFolder on a workspace root must use a full path, skip
-			if (folder != null && (folder.getType() & IResource.ROOT) == 0) {
-				IFolder webinf = folder.getFolder(WEB_INF_PATH);
-				if (webinf != null && webinf.exists()) {
-					return folder.getFullPath();
-				}
-			}
-			file = file.getParent();
-		}
-
-		return fProject.getFullPath();
-	}
-
-	/**
-	 * @param baseLocation
-	 * @return
-	 */
-	private String getLocalRoot(String baseLocation) {
-		return getLocalRoot(new Path(baseLocation)).toString();
-	}
-
-	/**
-	 * @return Returns the visitor.
-	 */
-	IResourceDeltaVisitor getVisitor() {
-		if (fVisitor == null) {
-			fVisitor = new DeltaVisitor();
-		}
-		return fVisitor;
-	}
-
-	void index() {
-		time0 = System.currentTimeMillis();
-		fTLDReferences.clear();
-		fJARReferences.clear();
-		fTagDirReferences.clear();
-		fServletReferences.clear();
-		try {
-			fProject.accept(new Indexer(), 0);
-		}
-		catch (CoreException e) {
-			Logger.logException(e);
-		}
-
-		if (_debugIndexTime)
-			System.out.println("indexed " + fProject.getName() + " in " + (System.currentTimeMillis() - time0) + "ms");
-	}
-
-	void indexClasspath() {
-		time0 = System.currentTimeMillis();
-		fClasspathProjects = new Stack();
-		fClasspathReferences.clear();
-		fClasspathJars.clear();
-		IJavaProject javaProject = JavaCore.create(fProject);
-		indexClasspath(javaProject);
-		if (_debugIndexTime)
-			System.out.println("indexed " + fProject.getName() + " classpath in " + (System.currentTimeMillis() - time0) + "ms");
-	}
-
-	/**
-	 * @param entry
-	 */
-	private void indexClasspath(IClasspathEntry entry) {
-		switch (entry.getEntryKind()) {
-			case IClasspathEntry.CPE_CONTAINER : {
-				IClasspathContainer container = (IClasspathContainer) entry;
-				IClasspathEntry[] containedEntries = container.getClasspathEntries();
-				for (int i = 0; i < containedEntries.length; i++) {
-					indexClasspath(containedEntries[i]);
-				}
-			}
-				break;
-			case IClasspathEntry.CPE_LIBRARY : {
-				/*
-				 * Ignore libs in required projects that are not exported
-				 */
-				if (fClasspathProjects.size() < 2 || entry.isExported()) {
-					IPath libPath = entry.getPath();
-					if (!fClasspathJars.containsKey(libPath.toString())) {
-						if (libPath.toFile().exists()) {
-							updateClasspathLibrary(libPath.toString(), ITaglibRecordEvent.CHANGED);
-						}
-						else {
-							IFile libFile = ResourcesPlugin.getWorkspace().getRoot().getFile(libPath);
-							if (libFile != null && libFile.exists()) {
-								updateClasspathLibrary(libFile.getLocation().toString(), ITaglibRecordEvent.CHANGED);
-							}
-						}
-					}
-				}
-			}
-				break;
-			case IClasspathEntry.CPE_PROJECT : {
-				/*
-				 * Ignore required projects of required projects that are not
-				 * exported
-				 */
-				if (fClasspathProjects.size() < 2 || entry.isExported()) {
-					IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(entry.getPath().lastSegment());
-					if (project != null && !fClasspathProjects.contains(project.getName())) {
-						indexClasspath(JavaCore.create(project));
-					}
-				}
-			}
-				break;
-			case IClasspathEntry.CPE_SOURCE :
-				break;
-			case IClasspathEntry.CPE_VARIABLE :
-				break;
-		}
-	}
-
-	/**
-	 * @param javaProject
-	 */
-	private void indexClasspath(IJavaProject javaProject) {
-		if (javaProject != null && javaProject.exists()) {
-			fClasspathProjects.push(javaProject.getElementName());
-			try {
-				IClasspathEntry[] entries = javaProject.getResolvedClasspath(true);
-				for (int i = 0; i < entries.length; i++) {
-					indexClasspath(entries[i]);
-				}
-			}
-			catch (JavaModelException e) {
-				Logger.logException("Error searching Java Build Path + (" + fProject.getName() + ") for tag libraries", e);
-			}
-			fClasspathProjects.pop();
-		}
-	}
-
-	protected String readTextofChild(Node node, String childName) {
-		StringBuffer buffer = new StringBuffer();
-		NodeList children = node.getChildNodes();
-		for (int i = 0; i < children.getLength(); i++) {
-			Node child = children.item(i);
-			if (child.getNodeType() == Node.ELEMENT_NODE && child.getNodeName().equals(childName)) {
-				Node text = child.getFirstChild();
-				while (text != null) {
-					buffer.append(text.getNodeValue().trim());
-					text = text.getNextSibling();
-				}
-			}
-		}
-		return buffer.toString();
-	}
-
-	void removeClasspathLibrary(String libraryLocation) {
-		JarRecord record = (JarRecord) fClasspathJars.remove(libraryLocation);
-		if (record != null) {
-			URLRecord[] records = (URLRecord[]) record.getURLRecords().toArray(new URLRecord[0]);
-			for (int i = 0; i < records.length; i++) {
-				fClasspathReferences.remove(records[i].getURI());
-			}
-			TaglibIndex.fireTaglibRecordEvent(new TaglibRecordEvent(record, ITaglibRecordEvent.REMOVED));
-		}
-	}
-
-	void removeJAR(IResource jar) {
-		if (_debugIndexCreation)
-			System.out.println("removing records for JAR " + jar.getFullPath());
-		JarRecord record = (JarRecord) fJARReferences.remove(jar.getFullPath());
-		if (record != null) {
-			URLRecord[] records = (URLRecord[]) record.getURLRecords().toArray(new URLRecord[0]);
-			for (int i = 0; i < records.length; i++) {
-				getImplicitReferences(jar.getLocation().toString()).remove(records[i].getURI());
-			}
-			TaglibIndex.fireTaglibRecordEvent(new TaglibRecordEvent(record, ITaglibRecordEvent.REMOVED));
-		}
-	}
-
-	void removeServlets(IResource webxml) {
-		if (_debugIndexCreation)
-			System.out.println("removing records for " + webxml.getFullPath());
-		ServletRecord record = (ServletRecord) fServletReferences.remove(webxml.getLocation().toString());
-		if (record != null) {
-			TLDRecord[] records = (TLDRecord[]) record.getTLDRecords().toArray(new TLDRecord[0]);
-			for (int i = 0; i < records.length; i++) {
-				if (_debugIndexCreation)
-					System.out.println("removed record for " + records[i].uri + "@" + records[i].location);
-				getImplicitReferences(webxml.getLocation().toString()).remove(records[i].getURI());
-			}
-			TaglibIndex.fireTaglibRecordEvent(new TaglibRecordEvent(record, ITaglibRecordEvent.REMOVED));
-		}
-	}
-
-	void removeTagDir(IResource tagFile) {
-		// IContainer tagdir = tagFile.getParent();
-		// String tagdirLocation = tagdir.getFullPath().toString();
-		// fTagDirReferences.remove(tagdirLocation);
-	}
-
-	void removeTLD(IResource tld) {
-		if (_debugIndexCreation)
-			System.out.println("removing record for " + tld.getFullPath());
-		TLDRecord record = (TLDRecord) fTLDReferences.remove(tld.getFullPath());
-		if (record != null) {
-			if (record.uri != null) {
-				getImplicitReferences(tld.getLocation().toString()).remove(record.uri);
-			}
-			TaglibIndex.fireTaglibRecordEvent(new TaglibRecordEvent(record, ITaglibRecordEvent.REMOVED));
-		}
-	}
-
-	/**
-	 * @param basePath
-	 * @param reference
-	 * @return
-	 */
-	ITaglibRecord resolve(String basePath, String reference) {
-		ITaglibRecord record = null;
-		String location = null;
-
-		/**
-		 * Workaround for problem in URIHelper; uris starting with '/' are
-		 * returned as-is.
-		 */
-		if (reference.startsWith("/")) {
-			location = getLocalRoot(basePath) + reference;
-		}
-		else {
-			location = URIHelper.normalize(reference, basePath, getLocalRoot(basePath));
-		}
-		// order dictated by JSP spec 2.0 section 7.2.3
-		if (record == null) {
-			record = (ITaglibRecord) fServletReferences.get(location);
-		}
-		if (record == null) {
-			record = (ITaglibRecord) fJARReferences.get(location);
-		}
-		if (record == null) {
-			record = (ITaglibRecord) fTLDReferences.get(location);
-		}
-		if (record == null) {
-			record = (ITaglibRecord) getImplicitReferences(basePath).get(reference);
-		}
-		if (record == null) {
-			record = (ITaglibRecord) fTagDirReferences.get(location);
-		}
-		if (record == null) {
-			record = (ITaglibRecord) fClasspathReferences.get(reference);
-		}
-		return record;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ServletRecord.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ServletRecord.java
deleted file mode 100644
index 4be92d6..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/ServletRecord.java
+++ /dev/null
@@ -1,51 +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.jst.jsp.core.internal.contentmodel;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-
-
-public class ServletRecord implements ITaglibRecord {
-	IPath location;
-	List tldRecords = new ArrayList(0);
-
-	public boolean equals(Object obj) {
-		if (!(obj instanceof ServletRecord))
-			return false;
-		return ((ServletRecord) obj).location.equals(location);
-	}
-
-	public int getRecordType() {
-		return ITaglibRecord.WEB_XML;
-	}
-
-	/**
-	 * @return Returns the webxml.
-	 */
-	public IPath getWebXML() {
-		return location;
-	}
-
-	/**
-	 * 
-	 */
-	public List getTLDRecords() {
-		return tldRecords;
-	}
-
-	public String toString() {
-		return "ServletRecord: " + location + tldRecords;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TLDRecord.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TLDRecord.java
deleted file mode 100644
index abad5c1..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TLDRecord.java
+++ /dev/null
@@ -1,48 +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.jst.jsp.core.internal.contentmodel;
-
-import org.eclipse.core.runtime.IPath;
-
-
-public class TLDRecord implements ITaglibRecord {
-	IPath location;
-	String uri;
-
-	public boolean equals(Object obj) {
-		if (!(obj instanceof TLDRecord))
-			return false;
-		return ((TLDRecord) obj).location.equals(location);
-	}
-
-	public int getRecordType() {
-		return ITaglibRecord.TLD;
-	}
-
-	/**
-	 * @return Returns the filesystem location.
-	 */
-	public IPath getLocation() {
-		return location;
-	}
-
-	/**
-	 * @return Returns the uri.
-	 */
-	public String getURI() {
-		return uri;
-	}
-
-	public String toString() {
-		return "TLDRecord: " + location + " <-> " + uri;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TagDirRecord.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TagDirRecord.java
deleted file mode 100644
index 7e95c84..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TagDirRecord.java
+++ /dev/null
@@ -1,61 +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.jst.jsp.core.internal.contentmodel;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-
-
-public class TagDirRecord implements ITaglibRecord {
-	IPath location;
-	String shortName;
-	// a List holding Strings of .tag and .tagx filenames relative to the
-	// tagdir's location
-	List tags = new ArrayList(0);
-
-	public boolean equals(Object obj) {
-		if (!(obj instanceof TagDirRecord))
-			return false;
-		return ((TagDirRecord) obj).location.equals(location);
-	}
-
-	/**
-	 * @return Returns the location.
-	 */
-	public IPath getLocation() {
-		return location;
-	}
-
-	public int getRecordType() {
-		return ITaglibRecord.TAGDIR;
-	}
-
-	/**
-	 * @return Returns the shortName.
-	 */
-	public String getShortName() {
-		return shortName;
-	}
-
-	/**
-	 * @return Returns the tags.
-	 */
-	public String[] getTags() {
-		return (String[]) tags.toArray(new String[tags.size()]);
-	}
-
-	public String toString() {
-		return "TagdirRecord: " + location + " <-> " + shortName;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java
deleted file mode 100644
index e06c2be..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java
+++ /dev/null
@@ -1,280 +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.jst.jsp.core.internal.contentmodel;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-import org.eclipse.core.filebuffers.IDocumentSetupParticipant;
-import org.eclipse.core.filebuffers.IFileBuffer;
-import org.eclipse.core.filebuffers.IFileBufferListener;
-import org.eclipse.core.filebuffers.ITextFileBuffer;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.util.Assert;
-
-/**
- * Provides a direct mapping from IStructuredDocument to supporting
- * TLDCMDocumentManager.
- * 
- * Listens to the creation of JSP type TextFileBuffers and forces a text-less
- * reparse after connecting taglib-supporting listeners. Connecting the
- * listeners before the text is set would be ideal, but there is no way to
- * look up taglib references since the location is not yet knowable. Since
- * taglibs can affect the parsing of the document, a reparse is currently
- * required to react to custom tags with tagdependent content.
- * 
- * TODO: Remove the reparse penalty.
- */
-public class TaglibController implements IDocumentSetupParticipant {
-
-	class DocumentInfo implements ITaglibIndexListener {
-		IStructuredDocument document;
-		ITextFileBuffer textFileBuffer;
-		TLDCMDocumentManager tldDocumentManager;
-
-		public void indexChanged(ITaglibRecordEvent event) {
-			tldDocumentManager.indexChanged(event);
-		}
-	}
-
-	class FileBufferListener implements IFileBufferListener {
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#bufferContentAboutToBeReplaced(org.eclipse.core.filebuffers.IFileBuffer)
-		 */
-		public void bufferContentAboutToBeReplaced(IFileBuffer buffer) {
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#bufferContentReplaced(org.eclipse.core.filebuffers.IFileBuffer)
-		 */
-		public void bufferContentReplaced(IFileBuffer buffer) {
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#bufferCreated(org.eclipse.core.filebuffers.IFileBuffer)
-		 */
-		public void bufferCreated(IFileBuffer buffer) {
-			if (buffer instanceof ITextFileBuffer) {
-				IDocument document = ((ITextFileBuffer) buffer).getDocument();
-				// ignore non-JSP documents
-				synchronized (fJSPdocuments) {
-					if (!fJSPdocuments.contains(document))
-						return;
-				}
-				Assert.isTrue(document instanceof IStructuredDocument, getClass().getName() + " SetupParticipant was called for non-IStructuredDocument");
-				DocumentInfo info = new DocumentInfo();
-				info.document = (IStructuredDocument) document;
-				info.textFileBuffer = (ITextFileBuffer) buffer;
-				info.tldDocumentManager = new TLDCMDocumentManager();
-				info.tldDocumentManager.setSourceParser((JSPSourceParser) info.document.getParser());
-				synchronized (fDocumentMap) {
-					fDocumentMap.put(document, info);
-					TaglibIndex.addTaglibIndexListener(info);
-				}
-				if (document instanceof BasicStructuredDocument) {
-					((BasicStructuredDocument) document).reparse(this);
-				}
-				// info.tldDocumentManager.doRebuild();
-			}
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#bufferDisposed(org.eclipse.core.filebuffers.IFileBuffer)
-		 */
-		public void bufferDisposed(IFileBuffer buffer) {
-			if (buffer instanceof ITextFileBuffer) {
-				IDocument document = ((ITextFileBuffer) buffer).getDocument();
-				synchronized (fJSPdocuments) {
-					if (!fJSPdocuments.remove(document))
-						return;
-				}
-			}
-			synchronized (fDocumentMap) {
-				Object[] keys = fDocumentMap.keySet().toArray();
-				boolean removed = false;
-				for (int i = 0; i < keys.length && !removed; i++) {
-					DocumentInfo info = (DocumentInfo) fDocumentMap.get(keys[i]);
-					if (info != null && info.textFileBuffer.equals(buffer)) {
-						TaglibIndex.removeTaglibIndexListener(info);
-						fDocumentMap.remove(keys[i]);
-						removed = true;
-					}
-				}
-			}
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#dirtyStateChanged(org.eclipse.core.filebuffers.IFileBuffer,
-		 *      boolean)
-		 */
-		public void dirtyStateChanged(IFileBuffer buffer, boolean isDirty) {
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#stateChangeFailed(org.eclipse.core.filebuffers.IFileBuffer)
-		 */
-		public void stateChangeFailed(IFileBuffer buffer) {
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#stateChanging(org.eclipse.core.filebuffers.IFileBuffer)
-		 */
-		public void stateChanging(IFileBuffer buffer) {
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#stateValidationChanged(org.eclipse.core.filebuffers.IFileBuffer,
-		 *      boolean)
-		 */
-		public void stateValidationChanged(IFileBuffer buffer, boolean isStateValidated) {
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#underlyingFileDeleted(org.eclipse.core.filebuffers.IFileBuffer)
-		 */
-		public void underlyingFileDeleted(IFileBuffer buffer) {
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.core.filebuffers.IFileBufferListener#underlyingFileMoved(org.eclipse.core.filebuffers.IFileBuffer,
-		 *      org.eclipse.core.runtime.IPath)
-		 */
-		public void underlyingFileMoved(IFileBuffer buffer, IPath path) {
-		}
-
-
-	}
-
-	static TaglibController _instance = null;
-	static private boolean fIsShutdown = false;
-
-	public static ITextFileBuffer getFileBuffer(IDocument document) {
-		synchronized (_instance.fDocumentMap) {
-			DocumentInfo info = (DocumentInfo) _instance.fDocumentMap.get(document);
-			if (info != null)
-				return info.textFileBuffer;
-			return null;
-		}
-	}
-
-	/**
-	 * @param manager
-	 * @return
-	 */
-	public static ITextFileBuffer getFileBuffer(TLDCMDocumentManager manager) {
-		ITextFileBuffer buffer = null;
-		synchronized (_instance.fDocumentMap) {
-			Iterator docInfos = _instance.fDocumentMap.values().iterator();
-			while (docInfos.hasNext() && buffer == null) {
-				DocumentInfo info = (DocumentInfo) docInfos.next();
-				if (info.tldDocumentManager.equals(manager))
-					buffer = info.textFileBuffer;
-			}
-		}
-		return buffer;
-	}
-
-	public static TLDCMDocumentManager getTLDCMDocumentManager(IDocument document) {
-		// if _instance is null, we are already shutting donw
-		if (_instance == null)
-			return null;
-		synchronized (_instance.fDocumentMap) {
-			DocumentInfo info = (DocumentInfo) _instance.fDocumentMap.get(document);
-			if (info != null)
-				return info.tldDocumentManager;
-			return null;
-
-		}
-	}
-
-	public synchronized static void shutdown() {
-		setShutdown(true);
-		FileBuffers.getTextFileBufferManager().removeFileBufferListener(_instance.fBufferListener);
-		_instance = null;
-	}
-
-	public synchronized static void startup() {
-		_instance = new TaglibController();
-		FileBuffers.getTextFileBufferManager().addFileBufferListener(_instance.fBufferListener);
-		setShutdown(false);
-	}
-
-	IFileBufferListener fBufferListener;
-	Map fDocumentMap;
-
-	List fJSPdocuments;
-
-	// This constructor is only to be called as part of the FileBuffer
-	// framework
-	public TaglibController() {
-		super();
-		fBufferListener = new FileBufferListener();
-		fJSPdocuments = new ArrayList(1);
-		fDocumentMap = new HashMap(1);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.filebuffers.IDocumentSetupParticipant#setup(org.eclipse.jface.text.IDocument)
-	 */
-	public void setup(IDocument document) {
-		// if we've already shutdown, just ignore
-		if (isShutdown())
-			return;
-		synchronized (_instance.fJSPdocuments) {
-			_instance.fJSPdocuments.add(document);
-		}
-	}
-
-	private static synchronized boolean isShutdown() {
-		return fIsShutdown;
-	}
-
-
-	private static synchronized void setShutdown(boolean isShutdown) {
-		fIsShutdown = isShutdown;
-	}
-
-
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibIndex.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibIndex.java
deleted file mode 100644
index bd5d064..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibIndex.java
+++ /dev/null
@@ -1,442 +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.jst.jsp.core.internal.contentmodel;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Stack;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-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.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.ResourcesPlugin;
-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.jdt.core.ElementChangedEvent;
-import org.eclipse.jdt.core.IElementChangedListener;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaElementDelta;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-/**
- * @author nitin
- * 
- * A non-extendable index manager for taglibs similar to the J2EE
- * ITaglibRegistry but lacking any ties to project natures.
- * 
- * Indexing is not persisted between sessions, so new ADD events will be sent
- * to ITaglibIndexListeners during each workbench session. REMOVE events are
- * not fired on workbench shutdown. Events for TAGDIR, JAR, and WEBXML type
- * records are only fired for the .jar and web.xml file itself. The record's
- * contents should be examined for any further information.
- */
-public class TaglibIndex {
-
-	class ClasspathChangeListener implements IElementChangedListener {
-		Stack classpathStack = new Stack();
-		List projectsIndexed = new ArrayList(1);
-
-		public void elementChanged(ElementChangedEvent event) {
-			classpathStack.clear();
-			projectsIndexed.clear();
-			elementChanged(event.getDelta());
-		}
-
-		private void elementChanged(IJavaElementDelta delta) {
-			if (delta.getElement().getElementType() == IJavaElement.JAVA_MODEL) {
-				IJavaElementDelta[] changed = delta.getChangedChildren();
-				for (int i = 0; i < changed.length; i++) {
-					elementChanged(changed[i]);
-				}
-			}
-			else if (delta.getElement().getElementType() == IJavaElement.JAVA_PROJECT) {
-				if ((delta.getFlags() & IJavaElementDelta.F_CLASSPATH_CHANGED) != 0) {
-					IJavaElement proj = delta.getElement();
-					handleClasspathChange((IJavaProject) proj);
-				}
-			}
-		}
-
-		private void handleClasspathChange(IJavaProject project) {
-			classpathStack.push(project.getElementName());
-			try {
-				/* Handle changes to this project's build path */
-				IResource resource = project.getCorrespondingResource();
-				if (resource.getType() == IResource.PROJECT && !projectsIndexed.contains(resource)) {
-					projectsIndexed.add(resource);
-					boolean classpathIndexIsOld = fProjectDescriptions.containsKey(resource);
-					ProjectDescription description = createDescription((IProject) resource);
-					if (classpathIndexIsOld) {
-						description.indexClasspath();
-					}
-				}
-				/*
-				 * Update indeces for projects who include this project in
-				 * their build path (e.g. toggling the "exportation" of a
-				 * taglib JAR in this project affects the JAR's visibility in
-				 * other projects)
-				 */
-				IJavaProject[] projects = project.getJavaModel().getJavaProjects();
-				for (int i = 0; i < projects.length; i++) {
-					IJavaProject otherProject = projects[i];
-					if (StringUtils.contains(otherProject.getRequiredProjectNames(), project.getElementName(), false) && !classpathStack.contains(otherProject.getElementName())) {
-						handleClasspathChange(otherProject);
-					}
-				}
-			}
-			catch (JavaModelException e) {
-			}
-			classpathStack.pop();
-		}
-	}
-
-	class ResourceChangeListener implements IResourceChangeListener {
-		public void resourceChanged(IResourceChangeEvent event) {
-			switch (event.getType()) {
-				case IResourceChangeEvent.PRE_CLOSE :
-				case IResourceChangeEvent.PRE_DELETE : {
-					try {
-						// pair deltas with projects
-						IResourceDelta[] deltas = new IResourceDelta[]{event.getDelta()};
-						IProject[] projects = null;
-
-						if (deltas != null && deltas.length > 0) {
-							IResource resource = null;
-							if (deltas[0] != null) {
-								resource = deltas[0].getResource();
-							}
-							else {
-								resource = event.getResource();
-							}
-
-							if (resource != null) {
-								if (resource.getType() == IResource.ROOT) {
-									deltas = deltas[0].getAffectedChildren();
-									projects = new IProject[deltas.length];
-									for (int i = 0; i < deltas.length; i++) {
-										if (deltas[i].getResource().getType() == IResource.PROJECT) {
-											projects[i] = (IProject) deltas[i].getResource();
-										}
-									}
-								}
-								else {
-									projects = new IProject[1];
-									if (resource.getType() != IResource.PROJECT) {
-										projects[0] = resource.getProject();
-									}
-									else {
-										projects[0] = (IProject) resource;
-									}
-								}
-							}
-							for (int i = 0; i < projects.length; i++) {
-								if (_debugIndexCreation) {
-									System.out.println("TaglibIndex noticed " + projects[i].getName() + " is about to be deleted/closed");
-								}
-								ProjectDescription description = (ProjectDescription) fProjectDescriptions.remove(projects[i]);
-								if (description != null) {
-									if (_debugIndexCreation) {
-										System.out.println("removing index of " + description.fProject.getName());
-									}
-									description.clear();
-								}
-							}
-						}
-					}
-					catch (Exception e) {
-						Logger.logException("Exception while processing resource deletion", e); //$NON-NLS-1$
-					}
-				}
-				case IResourceChangeEvent.POST_CHANGE : {
-					try {
-						// pair deltas with projects
-						IResourceDelta[] deltas = new IResourceDelta[]{event.getDelta()};
-						IProject[] projects = null;
-
-						if (deltas != null && deltas.length > 0) {
-							IResource resource = null;
-							if (deltas[0] != null) {
-								resource = deltas[0].getResource();
-							}
-							else {
-								resource = event.getResource();
-							}
-
-							if (resource != null) {
-								if (resource.getType() == IResource.ROOT) {
-									deltas = deltas[0].getAffectedChildren();
-									projects = new IProject[deltas.length];
-									for (int i = 0; i < deltas.length; i++) {
-										if (deltas[i].getResource().getType() == IResource.PROJECT) {
-											projects[i] = (IProject) deltas[i].getResource();
-										}
-									}
-								}
-								else {
-									projects = new IProject[1];
-									if (resource.getType() != IResource.PROJECT) {
-										projects[0] = resource.getProject();
-									}
-									else {
-										projects[0] = (IProject) resource;
-									}
-								}
-							}
-							for (int i = 0; i < projects.length; i++) {
-								try {
-									if (deltas[i] != null && deltas[i].getKind() != IResourceDelta.REMOVED && projects[i].isAccessible()) {
-										ProjectDescription description = createDescription(projects[i]);
-										deltas[i].accept(description.getVisitor());
-									}
-									if (!projects[i].isAccessible() || (deltas[i] != null && deltas[i].getKind() == IResourceDelta.REMOVED)) {
-										if (_debugIndexCreation) {
-											System.out.println("TaglibIndex noticed " + projects[i].getName() + " is no longer accessible");
-										}
-										ProjectDescription description = (ProjectDescription) fProjectDescriptions.remove(projects[i]);
-										if (description != null) {
-											if (_debugIndexCreation) {
-												System.out.println("removing index of " + description.fProject.getName());
-											}
-											description.clear();
-										}
-									}
-								}
-								catch (CoreException e) {
-									Logger.logException(e);
-								}
-							}
-						}
-					}
-					catch (Exception e) {
-						Logger.logException("Exception while processing resource change", e); //$NON-NLS-1$
-					}
-				}
-			}
-		}
-	}
-
-	static final boolean _debugChangeListener = false;
-	static boolean _debugIndexCreation = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/indexcreation"));
-	static boolean _debugEvents = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/events"));
-	static final boolean _debugResolution = "true".equals(Platform.getDebugOption("org.eclipse.jst.jsp.core/taglib/resolve"));
-
-	static TaglibIndex _instance;
-
-	static {
-		_instance = new TaglibIndex();
-	}
-
-	static void fireTaglibRecordEvent(ITaglibRecordEvent event) {
-		if(_debugEvents) {
-			System.out.println("TaglibIndex fired event:" + event);
-		}
-		ITaglibIndexListener[] listeners = _instance.fTaglibIndexListeners;
-		if (listeners != null) {
-			for (int i = 0; i < listeners.length; i++) {
-				try {
-					listeners[i].indexChanged(event);
-				}
-				catch (Exception e) {
-					Logger.log(Logger.WARNING, e.getMessage());
-				}
-			}
-		}
-	}
-
-	/**
-	 * Returns all of the visible ITaglibRecords for the given filepath in the
-	 * workspace.
-	 * 
-	 * @param workspacePath
-	 * @return
-	 */
-	public static ITaglibRecord[] getAvailableTaglibRecords(IPath workspacePath) {
-		ITaglibRecord[] records = _instance.internalGetAvailableTaglibRecords(workspacePath);
-		return records;
-	}
-
-	public static IPath getContextRoot(IPath path) {
-		return _instance.internalGetContextRoot(path);
-	}
-
-	public static void removeTaglibIndexListener(ITaglibIndexListener listener) {
-		_instance.internalRemoveTaglibIndexListener(listener);
-	}
-
-	/**
-	 * Find a matching ITaglibRecord given the reference.
-	 * 
-	 * @param basePath -
-	 *            the workspace-relative path for IResources, full filesystem
-	 *            path otherwise
-	 * @param reference
-	 * @param crossProjects
-	 * @return
-	 */
-	public static ITaglibRecord resolve(String basePath, String reference, boolean crossProjects) {
-		ITaglibRecord result = _instance.internalResolve(basePath, reference, crossProjects);
-		if (_debugResolution) {
-			if (result == null) {
-				System.out.println("TaglibIndex could not resolve \"" + reference + "\" from " + basePath);
-			}
-			else {
-				switch (result.getRecordType()) {
-					case (ITaglibRecord.TLD) : {
-						TLDRecord record = (TLDRecord) result;
-						System.out.println("TaglibIndex resolved " + basePath + ":" + reference + " = " + record.getLocation());
-					}
-						break;
-					case (ITaglibRecord.JAR) : {
-						JarRecord record = (JarRecord) result;
-						System.out.println("TaglibIndex resolved " + basePath + ":" + reference + " = " + record.getLocation());
-					}
-						break;
-					case (ITaglibRecord.TAGDIR) : {
-					}
-						break;
-					case (ITaglibRecord.URL) : {
-						URLRecord record = (URLRecord) result;
-						System.out.println("TaglibIndex resolved " + basePath + ":" + reference + " = " + record.getURL());
-					}
-						break;
-				}
-			}
-		}
-		return result;
-	}
-
-	private ClasspathChangeListener fClasspathChangeListener = null;
-
-	Map fProjectDescriptions;
-	private ResourceChangeListener fResourceChangeListener;
-
-	private ITaglibIndexListener[] fTaglibIndexListeners = null;
-
-	private TaglibIndex() {
-		super();
-		fResourceChangeListener = new ResourceChangeListener();
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(fResourceChangeListener);
-		fClasspathChangeListener = new ClasspathChangeListener();
-		JavaCore.addElementChangedListener(fClasspathChangeListener);
-		fProjectDescriptions = new HashMap();
-	}
-
-	public static void addTaglibIndexListener(ITaglibIndexListener listener) {
-		_instance.internalAddTaglibIndexListener(listener);
-	}
-
-	/**
-	 * @param project
-	 * @return
-	 */
-	ProjectDescription createDescription(IProject project) {
-		ProjectDescription description = (ProjectDescription) fProjectDescriptions.get(project);
-		if (description == null) {
-			description = new ProjectDescription(project);
-			description.index();
-			description.indexClasspath();
-			fProjectDescriptions.put(project, description);
-		}
-		return description;
-	}
-
-	private synchronized void internalAddTaglibIndexListener(ITaglibIndexListener listener) {
-		if (fTaglibIndexListeners == null) {
-			fTaglibIndexListeners = new ITaglibIndexListener[]{listener};
-		}
-		else {
-			List listeners = new ArrayList(Arrays.asList(fTaglibIndexListeners));
-			listeners.add(listener);
-			fTaglibIndexListeners = (ITaglibIndexListener[]) listeners.toArray(new ITaglibIndexListener[0]);
-		}
-	}
-
-	private ITaglibRecord[] internalGetAvailableTaglibRecords(IPath location) {
-		ITaglibRecord[] records = null;
-		IFile baseResource = ResourcesPlugin.getWorkspace().getRoot().getFile(location);
-		if (baseResource != null) {
-			IProject project = baseResource.getProject();
-			ProjectDescription description = createDescription(project);
-			List availableRecords = description.getAvailableTaglibRecords(location);
-			records = (ITaglibRecord[]) availableRecords.toArray(records);
-		}
-		else {
-			records = new ITaglibRecord[0];
-		}
-		return records;
-	}
-
-	private IPath internalGetContextRoot(IPath path) {
-		IFile baseResource = FileBuffers.getWorkspaceFileAtLocation(path);
-		if (baseResource != null) {
-			IProject project = baseResource.getProject();
-			ProjectDescription description = _instance.createDescription(project);
-			IPath rootPath = description.getLocalRoot(baseResource.getFullPath());
-			return ResourcesPlugin.getWorkspace().getRoot().getLocation().append(rootPath);
-		}
-		// try to handle out-of-workspace paths
-		IPath root = path;
-		while (root != null && !root.isRoot())
-			root = root.removeLastSegments(1);
-		if (root == null)
-			root = path;
-		return root;
-	}
-
-	private synchronized void internalRemoveTaglibIndexListener(ITaglibIndexListener listener) {
-		if (fTaglibIndexListeners != null) {
-			List listeners = new ArrayList(Arrays.asList(fTaglibIndexListeners));
-			listeners.remove(listener);
-			fTaglibIndexListeners = (ITaglibIndexListener[]) listeners.toArray(new ITaglibIndexListener[0]);
-		}
-	}
-
-	private ITaglibRecord internalResolve(String basePath, String reference, boolean crossProjects) {
-		IProject project = null;
-		ITaglibRecord resolved = null;
-		IFile baseResource = FileBuffers.getWorkspaceFileAtLocation(new Path(basePath));
-		if (baseResource != null) {
-			project = baseResource.getProject();
-			ProjectDescription description = createDescription(project);
-			resolved = description.resolve(basePath, reference);
-		}
-		else {
-			// try simple file support outside of the workspace
-			File baseFile = FileBuffers.getSystemFileAtLocation(new Path(basePath));
-			if (baseFile != null) {
-				String normalizedReference = URIHelper.normalize(reference, basePath, "/"); //$NON-NLS-1$
-				if (normalizedReference != null) {
-					TLDRecord record = new TLDRecord();
-					record.location = new Path(normalizedReference);
-					record.uri = reference;
-					resolved = record;
-				}
-			}
-		}
-		return resolved;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/URLRecord.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/URLRecord.java
deleted file mode 100644
index d23e255..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/URLRecord.java
+++ /dev/null
@@ -1,56 +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.jst.jsp.core.internal.contentmodel;
-
-import java.net.URL;
-
-public class URLRecord implements ITaglibRecord {
-	URL url;
-	String uri;
-	String baseLocation;
-
-	public boolean equals(Object obj) {
-		if (!(obj instanceof URLRecord))
-			return false;
-		return ((URLRecord) obj).baseLocation.equals(baseLocation) || ((URLRecord) obj).uri.equals(uri) || ((URLRecord) obj).url.equals(url);
-	}
-
-	public String getBaseLocation() {
-		return baseLocation;
-	}
-
-	public URLRecord() {
-		super();
-	}
-
-	public int getRecordType() {
-		return ITaglibRecord.URL;
-	}
-
-	/**
-	 * @return Returns the uri.
-	 */
-	public String getURI() {
-		return uri;
-	}
-
-	/**
-	 * @return Returns the URL.
-	 */
-	public URL getURL() {
-		return url;
-	}
-
-	public String toString() {
-		return "URLRecord: " + baseLocation + " <-> " + uri;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMAttributeDeclarationImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMAttributeDeclarationImpl.java
deleted file mode 100644
index fdef4f0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMAttributeDeclarationImpl.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-
-
-import java.util.Enumeration;
-
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDAttributeDeclaration;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDDocument;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class CMAttributeDeclarationImpl implements TLDAttributeDeclaration {
-
-	private CMDataType attrType = new CMDataTypeImpl(CMDataType.CDATA);
-	private String fDescription;
-	
-	//
-	private boolean fIsFragment = false;
-
-	private CMDocument fOwnerDocument;
-	// optional id
-	private String id = null;
-
-	// required name
-	private String name = null;
-	// optional "required" element present, defaults to not present
-	private boolean required = false;
-	
-	// optional run-time (scriplet derived) value of attributes, defaults to none/false
-	private String rtexprvalue = null;
-
-	private String type = null;
-
-	/**
-	 * CMAttributeDeclarationImpl constructor comment.
-	 */
-	public CMAttributeDeclarationImpl(CMDocument owner) {
-		super();
-		fOwnerDocument = owner;
-	}
-
-	/**
-	 * getAttrName method
-	 * @return java.lang.String
-	 */
-	public String getAttrName() {
-		return getNodeName();
-	}
-
-	/**
-	 * getAttrType method
-	 * @return CMDataType
-	 */
-	public CMDataType getAttrType() {
-		return attrType;
-	}
-
-	/**
-	 * @deprecated in superclass
-	 */
-	public String getDefaultValue() {
-		return ""; //$NON-NLS-1$
-	}
-	/**
-	 * @return Returns the description.
-	 */
-	public String getDescription() {
-		return fDescription;
-	}
-
-	/**
-	 * @deprecated in superclass
-	 */
-	public Enumeration getEnumAttr() {
-		return null;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getId() {
-		return id;
-	}
-
-	/**
-	 * getNodeName method
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return name;
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 *
-	 */
-	public int getNodeType() {
-		return CMNode.ATTRIBUTE_DECLARATION;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.jsp.core.contentmodel.tld.TLDAttributeDeclaration#getOwnerDocument()
-	 */
-	public CMDocument getOwnerDocument() {
-		return fOwnerDocument;
-	}
-
-	/**
-	 * getProperty method
-	 * @return java.lang.Object
-	 *
-	 * Returns the object property desciped by the propertyName
-	 *
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName != null && propertyName.equals(JSP12TLDNames.DESCRIPTION)) {
-			return getDescription(); // return attribute description
-		}
-		else if (propertyName.equals(TLDDocument.CM_KIND)) {
-			return TLDDocument.JSP_TLD;
-		}
-		else if (propertyName.equals(JSP12TLDNames.SMALL_ICON) || propertyName.equals(JSP12TLDNames.LARGE_ICON)) {
-			return getOwnerDocument().getProperty(propertyName);
-		}
-		return null;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public java.lang.String getRtexprvalue() {
-		return rtexprvalue;
-	}
-
-	public String getType() {
-		return type;
-	}
-
-	/**
-	 * getUsage method
-	 * @return int
-	 * OPTIONAL|REQUIRED
-	 */
-	public int getUsage() {
-		return required ? REQUIRED : OPTIONAL;
-	}
-	/**
-	 * @return Returns the isFragment.
-	 */
-	public boolean isFragment() {
-		return fIsFragment;
-	}
-
-	/**
-	 * 
-	 * @return boolean
-	 */
-	public boolean isRequired() {
-		return required;
-	}
-	/**
-	 * @param description The description to set.
-	 */
-	public void setDescription(String description) {
-		fDescription = description;
-	}
-	/**
-	 * @param isFragment The isFragment to set.
-	 */
-	public void setFragment(boolean isFragment) {
-		fIsFragment = isFragment;
-	}
-
-	/**
-	 * 
-	 * @param newId java.lang.String
-	 */
-	public void setId(String newId) {
-		id = newId;
-	}
-
-	public void setNodeName(String string) {
-		name = string;
-	}
-
-	/**
-	 * 
-	 * @param newRequired boolean
-	 */
-	public void setRequired(boolean newRequired) {
-		required = newRequired;
-	}
-
-	/**
-	 * 
-	 * @param newRequired boolean
-	 */
-	public void setRequiredString(String newRequired) {
-		if (newRequired.equalsIgnoreCase("true") || newRequired.equalsIgnoreCase("yes")) //$NON-NLS-2$//$NON-NLS-1$
-			setRequired(true);
-		else if (newRequired.equalsIgnoreCase("false") || newRequired.equalsIgnoreCase("no")) //$NON-NLS-2$//$NON-NLS-1$
-			setRequired(false);
-	}
-
-	/**
-	 * 
-	 * @param newRtexprvalue java.lang.String
-	 */
-	public void setRtexprvalue(String newRtexprvalue) {
-		rtexprvalue = newRtexprvalue;
-	}
-
-	public void setType(String type) {
-		this.type = type;
-	}
-
-	/**
-	 * supports method
-	 * 
-	 * @return boolean
-	 * 
-	 * Returns true if the CMNode supports a specified property
-	 * 
-	 */
-	public boolean supports(String propertyName) {
-		return propertyName == null || propertyName.equals(JSP12TLDNames.DESCRIPTION) || propertyName.equals(TLDDocument.CM_KIND) || propertyName.equals(JSP12TLDNames.SMALL_ICON) || propertyName.equals(JSP12TLDNames.LARGE_ICON);
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append("\n\t " + super.toString()); //$NON-NLS-1$
-		buffer.append("\n\t name:" + StringUtils.escape(getNodeName())); //$NON-NLS-1$
-		// Boolean.toString(boolean) is introduced in 1.4
-		//buffer.append("\n\t required:" + StringUtils.escape(Boolean.toString(isRequired())));
-		buffer.append("\n\t required:" + StringUtils.toString(isRequired())); //$NON-NLS-1$
-		buffer.append("\n\t rtexpr:" + StringUtils.escape(getRtexprvalue())); //$NON-NLS-1$
-		if (getId() != null)
-			buffer.append("\n\t id:" + StringUtils.escape(getId())); //$NON-NLS-1$
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDataTypeImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDataTypeImpl.java
deleted file mode 100644
index 06e0817..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDataTypeImpl.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class CMDataTypeImpl implements CMDataType {
-
-	protected String dataTypeName;
-
-	public CMDataTypeImpl(String dataTypeName) {
-		this.dataTypeName = dataTypeName;
-	}
-
-	/**
-	 * getTypeName method
-	 * @return java.lang.String
-	 *
-	 * This method returns a suitable default value that can be used when an instance of the data type is created.
-	 * This returns null of a suitable default is not available.
-	 */
-	public String generateInstanceValue() {
-		return null;
-	}
-
-	public String getDataTypeName() {
-		return dataTypeName;
-	}
-
-	/**
-	 * getTypeName method
-	 * @return java.lang.String[]
-	 *
-	 */
-	public String[] getEnumeratedValues() {
-		return null;
-	}
-
-	/**
-	 * getTypeName method
-	 * @return java.lang.String  
-	 *
-	 * Returns the implied value or null if none exists.
-	 */
-	public String getImpliedValue() {
-		return null;
-	}
-
-	/**
-	 * getImpliedValueKind method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * IMPLIED_VALUE_NONE, IMPLIED_VALUE_FIXED, IMPLIED_VALUE_DEFAULT.
-	 */
-	public int getImpliedValueKind() {
-		return IMPLIED_VALUE_NONE;
-	}
-
-	public String getNodeName() {
-		return dataTypeName;
-	}
-
-	public int getNodeType() {
-		return CMNode.DATA_TYPE;
-	}
-
-	/**
-	 * getProperty method
-	 * @return java.lang.Object
-	 *
-	 * Returns the object property described by the propertyName
-	 *
-	 */
-	public Object getProperty(String propertyName) {
-		return null;
-	}
-
-	/**
-	 * supports method
-	 * @return boolean
-	 *
-	 * Returns true if the CMNode supports a specified property
-	 *
-	 */
-	public boolean supports(String propertyName) {
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentFactoryTLD.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentFactoryTLD.java
deleted file mode 100644
index 955a965..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentFactoryTLD.java
+++ /dev/null
@@ -1,685 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.net.URLConnection;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP11TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP20TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDDocument;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDFunction;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDInitParam;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDListener;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDValidator;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDVariable;
-import org.eclipse.jst.jsp.core.internal.contentmodel.ITaglibRecord;
-import org.eclipse.jst.jsp.core.internal.contentmodel.JarRecord;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TLDRecord;
-import org.eclipse.jst.jsp.core.internal.contentmodel.URLRecord;
-import org.eclipse.jst.jsp.core.internal.util.DocumentProvider;
-import org.eclipse.wst.sse.core.util.JarUtilities;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.factory.CMDocumentFactory;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.w3c.dom.Element;
-import org.w3c.dom.EntityReference;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * CMDocumentBuilder for Taglib Descriptors
- * 
- * Returns namespace-less CMDocuments for a taglib descriptor, loading it
- * directly from a file or extracted from a JAR archive. Content Model objects
- * will implement the TLDCMDocument, TLDElementDeclaration, and
- * TLDAttributeDeclaration interfaces for extended properties.
- */
-public class CMDocumentFactoryTLD implements CMDocumentFactory {
-
-	static final boolean _debug = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/tldcmdocument/factory")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	/**
-	 * CMDocumentFactoryTLD constructor comment.
-	 */
-	public CMDocumentFactoryTLD() {
-		super();
-	}
-
-	/**
-	 * NOT API
-	 * 
-	 * @param baselocation
-	 * @param input
-	 * @return
-	 */
-	public CMDocument buildCMDocument(String baselocation, InputStream input) {
-		DocumentProvider provider = new DocumentProvider();
-		provider.setValidating(false);
-		provider.setRootElementName(JSP11TLDNames.TAGLIB);
-		provider.setInputStream(input);
-		if (baselocation != null)
-			provider.setBaseReference(baselocation);
-		return loadDocument(baselocation, provider.getRootElement());
-	}
-
-	/**
-	 * @param fileName
-	 * @return
-	 */
-	private CMDocument buildCMDocumentFromDirectory(File directory) {
-		if (_debug) {
-			System.out.println("not implemented: tagdir loading for " + directory.getAbsolutePath());
-		}
-		return null;
-	}
-
-	/**
-	 * NOT API
-	 * 
-	 * @param fileName
-	 * @return
-	 */
-	protected CMDocument buildCMDocumentFromFile(String fileName) {
-		// load the taglib descriptor file
-		DocumentProvider provider = new DocumentProvider();
-		provider.setValidating(false);
-		provider.setBaseReference(fileName);
-		provider.setRootElementName(JSP11TLDNames.TAGLIB);
-		provider.setFileName(fileName);
-		Node rootElement = provider.getRootElement();
-		return loadDocument(fileName, rootElement);
-	}
-
-	/**
-	 * Builds a CMDocument assuming the JSP v1.1 default path
-	 * 
-	 * @param jarFileName -
-	 *            the name of the containing JAR file
-	 */
-	protected CMDocument buildCMDocumentFromJar(String jarFileName) {
-		// load the taglib descriptor file
-		return buildCMDocumentFromJar(jarFileName, JarUtilities.JSP11_TAGLIB);
-	}
-
-	/**
-	 * Builds a CMDocument
-	 * 
-	 * @param jarFileName -
-	 *            the name of the containing JAR file
-	 * @param contentFileName -
-	 *            the path within the JAR for a valid taglib descriptor
-	 */
-	protected CMDocument buildCMDocumentFromJar(String jarFileName, String contentFileName) {
-		// load the taglib descriptor file
-		DocumentProvider provider = new DocumentProvider();
-		provider.setValidating(false);
-		provider.setBaseReference(jarFileName);
-		provider.setRootElementName(JSP11TLDNames.TAGLIB);
-		provider.setJarFileName(jarFileName);
-		provider.setFileName(contentFileName);
-		CMDocument document = loadDocument("jar:file://" + jarFileName + "!" + contentFileName, provider.getRootElement()); //$NON-NLS-1$ //$NON-NLS-2$
-		// TODO: Add the tags declared in META-INF/tags, see JSP 2.0 section
-		// 8.4.1
-		return document;
-	}
-
-	protected CMAttributeDeclaration createAttributeDeclaration(CMDocument document, Node attrNode) {
-		CMAttributeDeclarationImpl attr = new CMAttributeDeclarationImpl(document);
-
-		Node child = attrNode.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ELEMENT_NODE) {
-				if (child.getNodeName().equals(JSP11TLDNames.NAME) && child.hasChildNodes()) {
-					attr.setNodeName(getContainedText(child));
-				}
-				else if (child.getNodeName().equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
-					attr.setDescription(getContainedText(child));
-				}
-				else if (child.getNodeName().equals(JSP11TLDNames.ID) && child.hasChildNodes()) {
-					attr.setId(getContainedText(child));
-				}
-				else if (child.getNodeName().equals(JSP11TLDNames.REQUIRED) && child.hasChildNodes()) {
-					attr.setRequiredString(getContainedText(child));
-				}
-				else if (child.getNodeName().equals(JSP11TLDNames.RTEXPRVALUE) && child.hasChildNodes()) {
-					attr.setRtexprvalue(getContainedText(child));
-				}
-				else if (child.getNodeName().equals(JSP20TLDNames.FRAGMENT) && child.hasChildNodes()) {
-					attr.setFragment(Boolean.valueOf(getContainedText(child)).booleanValue());
-				}
-			}
-			child = child.getNextSibling();
-		}
-
-		return attr;
-	}
-
-	/**
-	 * Builds a CMDocument from a taglib descriptor
-	 * 
-	 * @param uri -
-	 *            the location of a valid taglib descriptor
-	 */
-	public CMDocument createCMDocument(String uri) {
-		CMDocument result = null;
-		URL url = null;
-		try {
-			url = new URL(uri);
-		}
-		catch (MalformedURLException e) {
-			result = createCMDocumentFromFile(uri);
-		}
-		if (result == null && url != null) {
-			InputStream istream = null;
-			if (url.getProtocol().equals("file")) { //$NON-NLS-1$
-				result = createCMDocumentFromFile(url.getFile());
-			}
-			else {
-				try {
-					istream = url.openStream();
-					result = buildCMDocument(url.toExternalForm(), istream);
-				}
-				catch (Exception t) {
-					// Logger.log(Logger.INFO, "Exception creating content
-					// model: could not load TLD contents from URI " + uri + "
-					// :" + t);
-				}
-			}
-			try {
-				if (istream != null)
-					istream.close();
-			}
-			catch (IOException e1) {
-				// don't care
-			}
-		}
-		if (result == null)
-			result = new CMDocumentImpl();
-		return result;
-	}
-
-	/**
-	 * @param fileName
-	 * @return
-	 */
-	private CMDocument createCMDocumentFromFile(String fileName) {
-		CMDocument result = null;
-		File file = new File(fileName);
-		try {
-			if (file.isDirectory()) {
-				result = buildCMDocumentFromDirectory(file);
-			}
-		}
-		catch (SecurityException e) {
-			result = null;
-		}
-		if (result == null) {
-			if (fileName.endsWith(".jar")) { //$NON-NLS-1$
-				result = buildCMDocumentFromJar(fileName);
-			}
-			else {
-				result = buildCMDocumentFromFile(fileName);
-			}
-		}
-		return result;
-	}
-
-	protected CMElementDeclaration createElementDeclaration(CMDocument cmdocument, Element tagFileNode, String path) {
-		CMElementDeclarationImpl ed = new CMElementDeclarationImpl(cmdocument);
-		boolean hasName = false;
-
-		// load information declared within the .tld
-		Node child = tagFileNode.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ELEMENT_NODE) {
-				String nodeName = child.getNodeName();
-				if (nodeName.equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
-					ed.setDescription(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.DISPLAY_NAME) && child.hasChildNodes()) {
-					ed.setDisplayName(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP20TLDNames.EXAMPLE) && child.hasChildNodes()) {
-					ed.setExample(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP20TLDNames.ICON) && child.hasChildNodes()) {
-					ed.setSmallIcon(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.NAME) && child.hasChildNodes()) {
-					ed.setNodeName(getContainedText(child));
-					hasName = ed.getNodeName().trim().length() > 0;
-				}
-				else if (nodeName.equals(JSP20TLDNames.PATH) && child.hasChildNodes()) {
-					ed.setPath(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP20TLDNames.TAG_EXTENSION)) {
-					ed.getExtensions().add(child);
-				}
-			}
-			child = child.getNextSibling();
-		}
-		if (hasName) {
-			// load information declared within the .tag(x) file
-			// JSP2_TODO: implement for JSP 2.0
-			return ed;
-		}
-		return null;
-	}
-
-	protected CMElementDeclaration createElementDeclaration(CMDocument document, Node tagNode) {
-		CMElementDeclarationImpl ed = new CMElementDeclarationImpl(document);
-
-		Node child = tagNode.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ELEMENT_NODE) {
-				// tag information
-				String nodeName = child.getNodeName();
-				if (nodeName.equals(JSP11TLDNames.NAME) && child.hasChildNodes()) {
-					ed.setNodeName(getContainedText(child));
-				}
-				else if ((nodeName.equals(JSP11TLDNames.TAGCLASS) || nodeName.equals(JSP12TLDNames.TAG_CLASS)) && child.hasChildNodes()) {
-					ed.setTagclass(getContainedText(child));
-				}
-				else if ((nodeName.equals(JSP11TLDNames.TEICLASS) || nodeName.equals(JSP12TLDNames.TEI_CLASS)) && child.hasChildNodes()) {
-					ed.setTeiclass(getContainedText(child));
-				}
-				else if ((nodeName.equals(JSP11TLDNames.BODYCONTENT) || nodeName.equals(JSP12TLDNames.BODY_CONTENT)) && child.hasChildNodes()) {
-					String bodycontent = getContainedText(child);
-					// Apparently, Apache Tomcat is not case sensitive about
-					// these values
-					if (bodycontent.equalsIgnoreCase(JSP11TLDNames.CONTENT_JSP))
-						ed.setBodycontent(JSP11TLDNames.CONTENT_JSP);
-					else if (bodycontent.equalsIgnoreCase(JSP11TLDNames.CONTENT_TAGDEPENDENT))
-						ed.setBodycontent(JSP11TLDNames.CONTENT_TAGDEPENDENT);
-					else if (bodycontent.equalsIgnoreCase(JSP11TLDNames.CONTENT_EMPTY))
-						ed.setBodycontent(JSP11TLDNames.CONTENT_EMPTY);
-					else if (bodycontent.equalsIgnoreCase(JSP20TLDNames.CONTENT_SCRIPTLESS))
-						ed.setBodycontent(JSP20TLDNames.CONTENT_SCRIPTLESS);
-				}
-				// info (1.1 only) or description (1.2 only)
-				else if ((nodeName.equals(JSP11TLDNames.INFO) || nodeName.equals(JSP12TLDNames.DESCRIPTION)) && child.hasChildNodes()) {
-					ed.setDescription(getContainedText(child));
-				}
-				// attributes
-				else if (nodeName.equals(JSP11TLDNames.ATTRIBUTE)) {
-					CMAttributeDeclaration attr = createAttributeDeclaration(document, child);
-					ed.attributes.setNamedItem(attr.getAttrName(), attr);
-				}
-				// variables
-				else if (nodeName.equals(JSP12TLDNames.VARIABLE)) {
-					ed.getVariables().add(createVariable(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.LARGE_ICON) && child.hasChildNodes()) {
-					ed.setLargeIcon(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.SMALL_ICON) && child.hasChildNodes()) {
-					ed.setSmallIcon(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP20TLDNames.TAG_EXTENSION) && child.getNodeType() == Node.ELEMENT_NODE) {
-					ed.getExtensions().add(child);
-				}
-			}
-			child = child.getNextSibling();
-		}
-		return ed;
-	}
-
-	protected TLDFunction createFunction(CMDocument document, Node functionNode) {
-		TLDFunctionImpl function = new TLDFunctionImpl(document);
-		boolean hasName = false;
-
-		Node child = functionNode.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ELEMENT_NODE) {
-				// tag information
-				String nodeName = child.getNodeName();
-				if (nodeName.equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
-					function.setDescription(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.DISPLAY_NAME) && child.hasChildNodes()) {
-					function.setName(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP20TLDNames.EXAMPLE) && child.hasChildNodes()) {
-					function.setExample(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP20TLDNames.FUNCTION_CLASS) && child.hasChildNodes()) {
-					function.setClassName(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP20TLDNames.FUNCTION_EXTENSION) && child.hasChildNodes()) {
-					function.getExtensions().add(child);
-				}
-				else if (nodeName.equals(JSP20TLDNames.FUNCTION_SIGNATURE) && child.hasChildNodes()) {
-					function.setSignature(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP20TLDNames.ICON) && child.hasChildNodes()) {
-					function.setIcon(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.NAME) && child.hasChildNodes()) {
-					function.setName(getContainedText(child));
-					hasName = function.getName().trim().length() > 0;
-				}
-			}
-			child = child.getNextSibling();
-		}
-		if (hasName) {
-			return function;
-		}
-		return null;
-	}
-
-	protected TLDInitParam createInitParam(Node initParamNode) {
-		TLDInitParamImpl initParam = new TLDInitParamImpl();
-		Node child = initParamNode.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ELEMENT_NODE) {
-				String nodeName = child.getNodeName();
-				if (nodeName.equals(JSP12TLDNames.VALIDATOR_PARAM_NAME) && child.hasChildNodes()) {
-					initParam.setName(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.VALIDATOR_PARAM_VALUE) && child.hasChildNodes()) {
-					initParam.setValue(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
-					initParam.setDescription(getContainedText(child));
-				}
-			}
-			child = child.getNextSibling();
-		}
-		return initParam;
-	}
-
-	protected TLDListener createListener(Node listenerNode) {
-		TLDListenerImpl listener = new TLDListenerImpl();
-		Node child = listenerNode.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ELEMENT_NODE) {
-				String nodeName = child.getNodeName();
-				if (nodeName.equals(JSP12TLDNames.LISTENER_CLASS) && child.hasChildNodes()) {
-					listener.setListenerClass(getContainedText(child));
-				}
-			}
-			child = child.getNextSibling();
-		}
-		return listener;
-	}
-
-	protected TLDValidator createValidator(Node validatorNode) {
-		TLDValidatorImpl validator = new TLDValidatorImpl();
-		Node child = validatorNode.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ELEMENT_NODE) {
-				String nodeName = child.getNodeName();
-				if (nodeName.equals(JSP12TLDNames.VALIDATOR_CLASS) && child.hasChildNodes()) {
-					validator.setValidatorClass(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.VALIDATOR_INIT_PARAM) && child.hasChildNodes()) {
-					validator.getInitParams().add(createInitParam(child));
-				}
-			}
-			child = child.getNextSibling();
-		}
-		return validator;
-	}
-
-	protected TLDVariable createVariable(Node variableNode) {
-		TLDVariableImpl variable = new TLDVariableImpl();
-		Node child = variableNode.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ELEMENT_NODE) {
-				String nodeName = child.getNodeName();
-				if (nodeName.equals(JSP12TLDNames.VARIABLE_CLASS) && child.hasChildNodes()) {
-					variable.setVariableClass(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.VARIABLE_DECLARE) && child.hasChildNodes()) {
-					variable.setDeclareString(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.VARIABLE_NAME_FROM_ATTRIBUTE) && child.hasChildNodes()) {
-					variable.setNameFromAttribute(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.VARIABLE_NAME_GIVEN) && child.hasChildNodes()) {
-					variable.setNameGiven(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.VARIABLE_SCOPE) && child.hasChildNodes()) {
-					variable.setScope(getContainedText(child));
-				}
-				else if (nodeName.equals(JSP12TLDNames.DESCRIPTION) && child.hasChildNodes()) {
-					variable.setDescription(getContainedText(child));
-				}
-			}
-			child = child.getNextSibling();
-		}
-		return variable;
-	}
-
-	protected String getContainedText(Node parent) {
-		NodeList children = parent.getChildNodes();
-		if (children.getLength() == 1) {
-			return children.item(0).getNodeValue().trim();
-		}
-		StringBuffer s = new StringBuffer();
-		Node child = parent.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() == Node.ENTITY_REFERENCE_NODE) {
-				String reference = ((EntityReference) child).getNodeValue();
-				if (reference == null && child.getNodeName() != null) {
-					reference = "&" + child.getNodeName() + ";";
-				}
-				if (reference != null) {
-					s.append(reference.trim());
-				}
-			}
-			else {
-				s.append(child.getNodeValue().trim());
-			}
-			child = child.getNextSibling();
-		}
-		return s.toString().trim();
-	}
-
-	public boolean isBuilderForGrammar(String grammarFileName) {
-		String fileName = grammarFileName.toLowerCase();
-		return fileName.endsWith(".tld") || fileName.endsWith(".jar"); //$NON-NLS-2$//$NON-NLS-1$
-	}
-
-	private CMDocument loadDocument(String baseLocation, Node taglib) {
-		Node root = taglib;
-
-		// create the CMDocument
-		CMDocumentImpl document = new CMDocumentImpl();
-		document.setBaseLocation(baseLocation);
-
-		if (root == null) {
-			if (_debug) {
-				System.out.println("null \"taglib\" element for TLD " + baseLocation);
-			}
-			return document;
-		}
-
-		// populate the CMDocument
-		Node child = root.getFirstChild();
-		while (child != null) {
-			if (child.getNodeType() != Node.ELEMENT_NODE) {
-				child = child.getNextSibling();
-				continue;
-			}
-			String nodeName = child.getNodeName();
-			// tag
-			if (nodeName.equals(JSP11TLDNames.TAG)) {
-				CMElementDeclaration ed = createElementDeclaration(document, child);
-				if (ed != null) {
-					document.fElements.setNamedItem(ed.getNodeName(), ed);
-				}
-			}
-			// tag-file
-			else if (nodeName.equals(JSP20TLDNames.TAG_FILE) && child.getNodeType() == Node.ELEMENT_NODE && child.hasChildNodes()) {
-				Element tagFileElement = (Element) child;
-				String path = tagFileElement.getAttribute(JSP20TLDNames.PATH);
-
-				CMElementDeclarationImpl ed = (CMElementDeclarationImpl) createElementDeclaration(document, tagFileElement, path);
-				if (ed != null) {
-					document.fElements.setNamedItem(ed.getNodeName(), ed);
-				}
-			}
-			// other one-of-a-kind children
-			// JSP version
-			else if ((nodeName.equals(JSP11TLDNames.JSPVERSION) || nodeName.equals(JSP12TLDNames.JSP_VERSION)) && child.hasChildNodes()) {
-				document.setJspversion(getContainedText(child));
-			}
-			// tag library version
-			else if ((nodeName.equals(JSP11TLDNames.TLIBVERSION) || nodeName.equals(JSP12TLDNames.TLIB_VERSION)) && child.hasChildNodes()) {
-				document.setTlibversion(getContainedText(child));
-			}
-			// short name
-			else if ((nodeName.equals(JSP11TLDNames.SHORTNAME) || nodeName.equals(JSP12TLDNames.SHORT_NAME)) && child.hasChildNodes()) {
-				document.setShortname(getContainedText(child));
-			}
-			// URI/URN
-			else if ((nodeName.equals(JSP11TLDNames.URI) || nodeName.equals(JSP11TLDNames.URN)) && child.hasChildNodes()) { //$NON-NLS-1$
-				document.setUri(getContainedText(child));
-			}
-			// info
-			else if (nodeName.equals(JSP11TLDNames.INFO) && child.hasChildNodes()) {
-				document.setInfo(getContainedText(child));
-			}
-			// New JSP 1.2
-			// description
-			else if (nodeName.equals(JSP12TLDNames.DESCRIPTION)) {
-				document.setDescription(getContainedText(child));
-			}
-			// display name
-			else if (nodeName.equals(JSP12TLDNames.DISPLAY_NAME) && child.hasChildNodes()) {
-				document.setDisplayName(getContainedText(child));
-			}
-			// large icon
-			else if (nodeName.equals(JSP12TLDNames.LARGE_ICON) && child.hasChildNodes()) {
-				document.setLargeIcon(getContainedText(child));
-			}
-			// small icon
-			else if (nodeName.equals(JSP12TLDNames.SMALL_ICON) && child.hasChildNodes()) {
-				document.setSmallIcon(getContainedText(child));
-			}
-			// validator
-			else if (nodeName.equals(JSP12TLDNames.VALIDATOR)) {
-				document.setValidator(createValidator(child));
-			}
-			// listener
-			else if (nodeName.equals(JSP12TLDNames.LISTENER)) {
-				document.getListeners().add(createListener(child));
-			}
-			else if (nodeName.equals(JSP20TLDNames.FUNCTION)) {
-				TLDFunction function = createFunction(document, child);
-				if (function != null) {
-					document.getListeners().add(function);
-				}
-			}
-			else if (nodeName.equals(JSP20TLDNames.TAGLIB_EXTENSION)) {
-				document.getExtensions().add(child);
-			}
-
-			child = child.getNextSibling();
-		}
-		return document;
-	}
-
-	/**
-	 * @param reference
-	 * @return
-	 */
-	public CMDocument createCMDocument(ITaglibRecord reference) {
-		CMDocumentImpl document = null;
-		switch (reference.getRecordType()) {
-			case (ITaglibRecord.TLD) : {
-				TLDRecord record = (TLDRecord) reference;
-				document = (CMDocumentImpl) buildCMDocumentFromFile(record.getLocation().toString());
-				if (_debug && document != null && document.getElements().getLength() == 0) {
-					System.out.println("failure parsing " + record.getLocation());
-				}
-
-				if (document.getSmallIcon() != null) {
-					String iconPath = URIHelper.normalize(((TLDDocument) document).getSmallIcon(), record.getLocation().toString(), "/");
-					document.setProperty(JSP12TLDNames.SMALL_ICON, "file:" + iconPath);
-				}
-				if (document.getLargeIcon() != null) {
-					String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), record.getLocation().toString(), "/");
-					document.setProperty(JSP12TLDNames.LARGE_ICON, "file:" + iconPath);
-				}
-			}
-				break;
-			case (ITaglibRecord.JAR) : {
-				JarRecord record = (JarRecord) reference;
-				document = (CMDocumentImpl) buildCMDocumentFromJar(record.getLocation().toString());
-				if (document.getSmallIcon() != null) {
-					String iconPath = URIHelper.normalize(((TLDDocument) document).getSmallIcon(), record.getLocation().toString() + "!META-INF/", "/");
-					document.setProperty(JSP12TLDNames.SMALL_ICON, "jar:file:" + iconPath);
-				}
-				if (document.getLargeIcon() != null) {
-					String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), record.getLocation().toString() + "!META-INF/", "/");
-					document.setProperty(JSP12TLDNames.LARGE_ICON, "jar:file:" + iconPath);
-				}
-				if (document != null && document.getElements().getLength() == 0) {
-					System.out.println("failure parsing " + record.getLocation());
-				}
-			}
-				break;
-			case (ITaglibRecord.TAGDIR) : {
-				// TagDirRecord record = (TagDirRecord) reference;
-				// document =
-				// buildCMDocumentFromDirectory(record.getLocation().toFile());
-			}
-				break;
-			case (ITaglibRecord.URL) : {
-				URLRecord record = (URLRecord) reference;
-				InputStream urlContents = null;
-				boolean doCache = false;
-				URLConnection connection = null;
-				try {
-					connection = record.getURL().openConnection();
-					doCache = connection.getUseCaches();
-					connection.setUseCaches(false);
-					urlContents = connection.getInputStream();
-					document = (CMDocumentImpl) buildCMDocument(record.getBaseLocation(), urlContents);
-					if (document.getSmallIcon() != null) {
-						String iconPath = URIHelper.normalize(((TLDDocument) document).getSmallIcon(), record.getURL().toString(), "/");
-						document.setProperty(JSP12TLDNames.SMALL_ICON, iconPath);
-					}
-					if (document.getLargeIcon() != null) {
-						String iconPath = URIHelper.normalize(((TLDDocument) document).getLargeIcon(), record.getURL().toString(), "/");
-						document.setProperty(JSP12TLDNames.LARGE_ICON, iconPath);
-					}
-					connection.setUseCaches(doCache);
-				}
-				catch (IOException e) {
-					// not uncommon given invalid URLs
-				}
-				finally {
-					if (urlContents != null) {
-						try {
-							urlContents.close();
-						}
-						catch (IOException e) {
-						}
-					}
-				}
-			}
-				break;
-		}
-		return document;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentImpl.java
deleted file mode 100644
index 4b816fa..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMDocumentImpl.java
+++ /dev/null
@@ -1,444 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDDocument;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDValidator;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation.AnnotationFileParser;
-
-public class CMDocumentImpl implements TLDDocument {
-	
-	/** Contains taginfo and/or any other misc properties*/
-	private AnnotationMap fAnnotationMap = null;
-	
-	private Map fProperties = new HashMap(0);
-
-	/**
-	 * Records from where this document was created
-	 */
-	private String fBaseLocation;
-	/** 
-	 * since JSP 1.2
-	 */
-	private String fDescription;
-	
-	private String fDisplayName;
-
-	/**
-	 * NOT public API
-	 */
-	public CMNamedNodeMapImpl fElements = new CMNamedNodeMapImpl();
-
-	private List fFunctions = new ArrayList(0);
-	
-	// id of the taglib
-	private String fId = null;
-	/**
-	 * Children of "taglib" within a .tld file each allow
-	 * one Text node (#PCDATA) beneath them.  Store the values
-	 * here for simplicity.
-	 */
-	// The JSP specification required for this taglib to function
-	private String fJSPVersion = null;
-	
-	private String fLargeIcon;
-
-	private List fListeners;
-	
-	private String fParentURI = null;
-	// A short name suggested as the default prefix for tags within the lib
-	private String fShortName = null;
-	
-	private String fSmallIcon;
-	
-	/**
-	 * since JSP 2.0
-	 * 
-	 * The entire element is stored here since its layout is undefined 
-	 */
-	private List fTaglibExtensions = new ArrayList(0);
-	
-	// Version information for the taglib itself
-	private String fTLibVersion = null;
-	
-	// A unique public URI describing this taglib.  Recommended to be the URL
-	// to the descriptor
-	private String fURI = null;
-
-	protected TLDValidator validator;
-	
-	/**
-	 * CMDocumentImpl constructor comment.
-	 */
-	public CMDocumentImpl() {
-		super();
-	}
-
-	/**
-	 * Get the annotation map associated with this document.  Lazily creates
-	 * and loads annotation map.
-	 * @return AnnotationMap
-	 */
-	private AnnotationMap getAnnotationMap() {
-		// create a new annotation map and load it up
-		if (fAnnotationMap == null) {
-			fAnnotationMap = new AnnotationMap();
-			
-		    List annotationFiles = ContentModelManager.getInstance().getAnnotationFiles(getUri());
-		    for (Iterator i = annotationFiles.iterator(); i.hasNext();) {
-		    	try {
-		    		String annotationFileURI = (String) i.next();
-		    		AnnotationFileParser parser = new AnnotationFileParser();
-		    		parser.parse(fAnnotationMap, annotationFileURI);
-		        } catch (Exception e) {
-		        	Logger.log(Logger.WARNING_DEBUG, "Exception thrown in CMDocumentImpl#getAnnotationMap", e); //$NON-NLS-1$
-		        }
-		    }
-		}
-		return fAnnotationMap;
-	}
-	/**
-	 * @return Returns the baseLocation.
-	 */
-	public String getBaseLocation() {
-		return fBaseLocation;
-	}
-
-	/**
-	 * Gets the description.
-	 * @return Returns a String
-	 */
-	public String getDescription() {
-		return fDescription;
-	}
-
-	/**
-	 * Gets the displayName.
-	 * @return Returns a String
-	 */
-	public String getDisplayName() {
-		return fDisplayName;
-	}
-
-	/**
-	 * getElements method
-	 * @return CMNamedNodeMap
-	 *
-	 * Returns CMNamedNodeMap of ElementDeclaration
-	 */
-	public CMNamedNodeMap getElements() {
-		return fElements;
-	}
-
-	/**
-	 * getEntities method
-	 * @return CMNamedNodeMap
-	 *
-	 * Returns CMNamedNodeMap of EntityDeclaration
-	 */
-	public CMNamedNodeMap getEntities() {
-		return null;
-	}
-	
-	public List getExtensions() {
-		return fTaglibExtensions;
-	}
-	/**
-	 * @return Returns the functions.
-	 */
-	public List getFunctions() {
-		return fFunctions;
-	}
-
-	/**
-	 * Gets the id.
-	 * @return Returns a String
-	 */
-	public String getId() {
-		return fId;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getInfo() {
-		return getDescription();
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getJspversion() {
-		return fJSPVersion;
-	}
-
-	/**
-	 * Gets the largeIcon.
-	 * @return Returns a String
-	 */
-	public String getLargeIcon() {
-		return fLargeIcon;
-	}
-
-	public List getListeners() {
-		if (fListeners == null)
-			fListeners = new ArrayList();
-		return fListeners;
-	}
-
-	/**
-	 * getNamespace method
-	 * @return CMNamespace
-	 */
-	public CMNamespace getNamespace() {
-		return null;
-	}
-
-	/**
-	 * getNodeName method
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return "#cmdocument"; //$NON-NLS-1$
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 *
-	 */
-	public int getNodeType() {
-		return CMNode.DOCUMENT;
-	}
-	/**
-	 * @return Returns the parentURI.
-	 */
-	public String getParentURI() {
-		return fParentURI;
-	}
-
-	/**
-	 * getProperty method
-	 * @return java.lang.Object
-	 *
-	 * Returns the object property desciped by the propertyName
-	 *
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName.equals(TLDDocument.CM_KIND)) {
-			return TLDDocument.JSP_TLD;
-		}
-		else if (propertyName.equals("annotationMap")) { //$NON-NLS-1$
-			return getAnnotationMap();
-		}
-		return fProperties.get(propertyName);
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getShortname() {
-		return fShortName;
-	}
-
-	/**
-	 * Gets the smallIcon.
-	 * @return Returns a String
-	 */
-	public String getSmallIcon() {
-		return fSmallIcon;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getTlibversion() {
-		return fTLibVersion;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getUri() {
-		return fURI;
-	}
-
-	/*
-	 * @see TLDDocument#getValidator()
-	 */
-	public TLDValidator getValidator() {
-		return validator;
-	}
-	/**
-	 * @param baseLocation The baseLocation to set.
-	 */
-	public void setBaseLocation(String baseLocation) {
-		fBaseLocation = baseLocation;
-	}
-
-	/**
-	 * Sets the description.
-	 * @param description The description to set
-	 */
-	public void setDescription(String description) {
-		this.fDescription = description;
-	}
-
-	/**
-	 * Sets the displayName.
-	 * @param displayName The displayName to set
-	 */
-	public void setDisplayName(String displayName) {
-		this.fDisplayName = displayName;
-	}
-
-	/**
-	 * Sets the id.
-	 * @param id The id to set
-	 */
-	public void setId(String id) {
-		this.fId = id;
-	}
-
-	/**
-	 * 
-	 * @param newInfo java.lang.String
-	 */
-	public void setInfo(String newInfo) {
-		setDescription(newInfo);
-	}
-
-	/**
-	 * 
-	 * @param newJspversion java.lang.String
-	 */
-	public void setJspversion(String newJspversion) {
-		fJSPVersion = newJspversion;
-	}
-
-	/**
-	 * Sets the largeIcon.
-	 * @param largeIcon The largeIcon to set
-	 */
-	public void setLargeIcon(String largeIcon) {
-		this.fLargeIcon = largeIcon;
-	}
-
-	public void setListeners(List listeners) {
-		this.fListeners = listeners;
-	}
-	/**
-	 * @param parentURI The parentURI to set.
-	 */
-	public void setParentURI(String parentURI) {
-		fParentURI = parentURI;
-	}
-	
-	public void setProperty(String property, Object value) {
-		fProperties.put(property, value);
-	}
-
-	/**
-	 * 
-	 * @param newShortname java.lang.String
-	 */
-	public void setShortname(String newShortname) {
-		fShortName = newShortname;
-	}
-
-	/**
-	 * Sets the smallIcon.
-	 * @param smallIcon The smallIcon to set
-	 */
-	public void setSmallIcon(String smallIcon) {
-		this.fSmallIcon = smallIcon;
-	}
-
-	/**
-	 * 
-	 * @param newTlibversion java.lang.String
-	 */
-	public void setTlibversion(String newTlibversion) {
-		fTLibVersion = newTlibversion;
-	}
-
-	/**
-	 * 
-	 * @param newUri java.lang.String
-	 */
-	public void setUri(String newUri) {
-		fURI = newUri;
-	}
-
-	public void setValidator(TLDValidator validator) {
-		this.validator = validator;
-	}
-
-	/**
-	 * supports method
-	 * @return boolean
-	 *
-	 * Returns true if the CMNode supports a specified property
-	 *
-	 */
-	public boolean supports(String propertyName) {
-		if (TLDDocument.CM_KIND.equals(propertyName) || "annotationMap".equals(propertyName)) //$NON-NLS-1$
-			return true;
-		return fProperties.containsKey(propertyName);
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(super.toString());
-		buffer.append("\n\t short name:" + StringUtils.escape(getShortname())); //$NON-NLS-1$
-		buffer.append("\n\t display name:" + StringUtils.escape(getDisplayName())); //$NON-NLS-1$
-		buffer.append("\n\t description (info):" + StringUtils.escape(getDescription())); //$NON-NLS-1$
-		buffer.append("\n\t URI:" + StringUtils.escape(getUri())); //$NON-NLS-1$
-		buffer.append("\n\t jsp version:" + StringUtils.escape(getJspversion())); //$NON-NLS-1$
-		buffer.append("\n\t taglib version:" + StringUtils.escape(getTlibversion())); //$NON-NLS-1$
-		buffer.append("\n\t small icon:" + StringUtils.escape(getSmallIcon())); //$NON-NLS-1$
-		buffer.append("\n\t large icon:" + StringUtils.escape(getLargeIcon())); //$NON-NLS-1$
-		if (getValidator() != null)
-			buffer.append("\n\t validator:" + StringUtils.replace(getValidator().toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		buffer.append("\n\t listeners:"); //$NON-NLS-1$
-		for (int i = 0; i < getListeners().size(); i++) {
-			buffer.append("\n" + StringUtils.replace(getListeners().get(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-		buffer.append("\n\t elements:"); //$NON-NLS-1$
-		CMNamedNodeMap elements = getElements();
-		for (int i = 0; i < elements.getLength(); i++) {
-			buffer.append(StringUtils.replace(elements.item(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMElementDeclarationImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMElementDeclarationImpl.java
deleted file mode 100644
index d128a5f..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMElementDeclarationImpl.java
+++ /dev/null
@@ -1,455 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP11TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDDocument;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDElementDeclaration;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
-
-public class CMElementDeclarationImpl implements TLDElementDeclaration {
-
-	// optional attributes
-	public CMNamedNodeMapImpl attributes = new CMNamedNodeMapImpl();
-	// (empty|JSP|tagdependant|scriptless) - optional, defaults to JSP
-	private String bodycontent = JSP11TLDNames.CONTENT_JSP;
-
-	/** 
-	 * since JSP 1.2
-	 * 
-	 * Usage information
-	 */
-	private String description;
-	
-	/** 
-	 * since JSP 1.2
-	 */
-	private String displayName;
-
-	/** 
-	 * since JSP 2.0
-	 */
-	private String fExample;
-
-	private CMDocument fOwnerDocument;
-	
-	private String fPath = null;
-
-	private List fTagExtensions = new ArrayList(0);
-	/** 
-	 * since JSP 1.2
-	 */
-	private String largeIcon;
-	
-	
-	private int maxOccur = -1;
-	private int minOccur = 0;
-
-	// required tag name
-	private String nodeName = null;
-	
-	/** 
-	 * since JSP 1.2
-	 */
-	private String smallIcon;
-	
-	// tag handler class - required
-	private String tagclass = null;
-	
-	// tag extra info class (subclass of javax.servlet.jsp.TagExtraInfo) - optional
-	private String teiclass = null;
-
-	/** 
-	 * since JSP 1.2
-	 */
-	private List variables;
-
-	/**
-	 * CMElementDeclarationImpl constructor comment.
-	 */
-	public CMElementDeclarationImpl(CMDocument owner) {
-		super();
-		fOwnerDocument = owner;
-	}
-
-	/**
-	 * getAttributes method
-	 * @return CMNamedNodeMap
-	 *
-	 * Returns CMNamedNodeMap of AttributeDeclaration
-	 */
-	public CMNamedNodeMap getAttributes() {
-		return attributes;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getBodycontent() {
-		return bodycontent;
-	}
-
-	/**
-	 * getCMContent method
-	 * @return CMContent
-	 *
-	 * Returns the root node of this element's content model.
-	 * This can be an CMElementDeclaration or a CMGroup
-	 */
-	public CMContent getContent() {
-		return null;
-	}
-
-	/**
-	 * getContentType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 * ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA.
-	 */
-	public int getContentType() {
-		if (bodycontent.equals(JSP11TLDNames.CONTENT_EMPTY))
-			return EMPTY;
-		if (bodycontent.equals(JSP11TLDNames.CONTENT_TAGDEPENDENT))
-			return PCDATA;
-		else
-			// JSP
-			return ANY;
-	}
-
-	/**
-	 * getDataType method
-	 * @return java.lang.String
-	 */
-	public CMDataType getDataType() {
-		return new CMDataTypeImpl(CMDataType.CDATA);
-	}
-
-	/**
-	 * Gets the description.
-	 * @return Returns a String
-	 */
-	public String getDescription() {
-		return description;
-	}
-
-	/**
-	 * Gets the displayName.
-	 * @return Returns a String
-	 */
-	public String getDisplayName() {
-		return displayName;
-	}
-
-	/**
-	 * getElementName method
-	 * @return java.lang.String
-	 */
-	public String getElementName() {
-		return getNodeName();
-	}
-	/**
-	 * @return Returns the example.
-	 */
-	public String getExample() {
-		return fExample;
-	}
-	/**
-	 * @return Returns the extensions.
-	 */
-	public List getExtensions() {
-		return fTagExtensions;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getInfo() {
-		return getDescription();
-	}
-
-	/**
-	 * Gets the largeIcon.
-	 * @return Returns a String
-	 */
-	public String getLargeIcon() {
-		return largeIcon;
-	}
-
-	/**
-	 * getLocalElements method
-	 * @return CMNamedNodeMap
-	 *
-	 * Returns a list of locally defined elements.
-	 */
-	public CMNamedNodeMap getLocalElements() {
-		return null;
-	}
-
-	/**
-	 * getMaxOccur method
-	 * @return int
-	 *
-	 * If -1, it's UNBOUNDED.
-	 */
-	public int getMaxOccur() {
-		return maxOccur;
-	}
-
-	/**
-	 * getMinOccur method
-	 * @return int
-	 *
-	 * If 0, it's OPTIONAL.
-	 * If 1, it's REQUIRED.
-	 */
-	public int getMinOccur() {
-		return minOccur;
-	}
-
-	/**
-	 * getNodeName method
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return nodeName;
-	}
-
-	/**
-	 * getNodeType method
-	 * @return int
-	 *
-	 * Returns one of :
-	 *
-	 */
-	public int getNodeType() {
-		return CMNode.ELEMENT_DECLARATION;
-	}
-
-	/**
-	 * @return
-	 */
-	public CMDocument getOwnerDocument() {
-		return fOwnerDocument;
-	}
-	/**
-	 * @return Returns the path.
-	 */
-	public String getPath() {
-		return fPath;
-	}
-
-	/**
-	 * getProperty method
-	 * @return java.lang.Object
-	 *
-	 * Returns the object property described by the propertyName
-	 *
-	 */
-	public Object getProperty(String propertyName) {
-		if (propertyName != null && propertyName.equals("tagInfo")) { //$NON-NLS-1$
-			return StringUtils.restoreMarkers(getTagInfo());	// return tag info
-		}
-		else if (propertyName != null && propertyName.equals("description")) {	//$NON-NLS-1$
-			return StringUtils.restoreMarkers(getDescription()); // return tag description
-		}
-		else if (propertyName.equals(TLDDocument.CM_KIND)) {
-			return TLDDocument.JSP_TLD;
-		}
-		else if (propertyName.equals(JSP12TLDNames.SMALL_ICON) || propertyName.equals(JSP12TLDNames.LARGE_ICON)) {
-			return getOwnerDocument().getProperty(propertyName);
-		}
-		return null;
-	}
-
-	/**
-	 * Gets the smallIcon.
-	 * @return Returns a String
-	 */
-	public String getSmallIcon() {
-		return smallIcon;
-	}
-	
-	/**
-	 * Returns the XPath of this element
-	 * (currently just returns the node name)
-	 * @return
-	 */
-	private String getSpec() {
-		return getNodeName();
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getTagclass() {
-		return tagclass;
-	}
-	
-	/**
-	 * Get the taginfo for this current element
-	 * @return String taginfo if it exists, null otherwise
-	 */
-	private String getTagInfo() {
-		if (getOwnerDocument().supports("annotationMap")) { //$NON-NLS-1$
-			AnnotationMap map = (AnnotationMap)getOwnerDocument().getProperty("annotationMap"); //$NON-NLS-1$
-			String spec = getSpec();
-			String result = map.getProperty(spec, "tagInfo"); //$NON-NLS-1$
-			return StringUtils.restoreMarkers(result); // return tag info
-		}
-		return null;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getTeiclass() {
-		return teiclass;
-	}
-
-	/**
-	 * Gets the variables.
-	 * @return Returns a List
-	 */
-	public List getVariables() {
-		if (variables == null)
-			variables = new ArrayList();
-		return variables;
-	}
-
-	/**
-	 * 
-	 * @param newBodycontent java.lang.String
-	 */
-	public void setBodycontent(String newBodycontent) {
-		bodycontent = newBodycontent;
-	}
-
-	/**
-	 * Sets the description.
-	 * @param description The description to set
-	 */
-	public void setDescription(String description) {
-		this.description = description;
-	}
-
-	/**
-	 * Sets the displayName.
-	 * @param displayName The displayName to set
-	 */
-	public void setDisplayName(String displayName) {
-		this.displayName = displayName;
-	}
-	/**
-	 * @param example The example to set.
-	 */
-	public void setExample(String example) {
-		fExample = example;
-	}
-
-	/**
-	 * Sets the largeIcon.
-	 * @param largeIcon The largeIcon to set
-	 */
-	public void setLargeIcon(String largeIcon) {
-		this.largeIcon = largeIcon;
-	}
-
-	public void setNodeName(String string) {
-		nodeName = string;
-	}
-	/**
-	 * @param path The path to set.
-	 */
-	public void setPath(String path) {
-		fPath = path;
-	}
-
-	/**
-	 * Sets the smallIcon.
-	 * @param smallIcon The smallIcon to set
-	 */
-	public void setSmallIcon(String smallIcon) {
-		this.smallIcon = smallIcon;
-	}
-
-	/**
-	 * 
-	 * @param newTagclass java.lang.String
-	 */
-	public void setTagclass(String newTagclass) {
-		tagclass = newTagclass;
-	}
-
-	/**
-	 * 
-	 * @param newTeiclass java.lang.String
-	 */
-	public void setTeiclass(String newTeiclass) {
-		teiclass = newTeiclass;
-	}
-
-	/**
-	 * Sets the variables.
-	 * @param variables The variables to set
-	 */
-	public void setVariables(List variables) {
-		this.variables = variables;
-	}
-
-	/**
-	 * supports method
-	 * 
-	 * @return boolean
-	 * 
-	 * Returns true if the CMNode supports a specified property
-	 * 
-	 */
-	public boolean supports(String propertyName) {
-		return propertyName == null || propertyName.equals("tagInfo") || propertyName.equals(JSP12TLDNames.DESCRIPTION) || propertyName.equals(TLDDocument.CM_KIND) || propertyName.equals(JSP12TLDNames.SMALL_ICON) || propertyName.equals(JSP12TLDNames.LARGE_ICON);//$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append("\n\t " + super.toString()); //$NON-NLS-1$
-		buffer.append("\n\t name:" + StringUtils.escape(getNodeName())); //$NON-NLS-1$
-		buffer.append("\n\t tag class:" + StringUtils.escape(getTagclass())); //$NON-NLS-1$
-		buffer.append("\n\t tei class:" + StringUtils.escape(getTeiclass())); //$NON-NLS-1$
-		buffer.append("\n\t body content:" + StringUtils.escape(getBodycontent())); //$NON-NLS-1$
-		buffer.append("\n\t description (info):" + StringUtils.escape(getDescription())); //$NON-NLS-1$
-		buffer.append("\n\t attributes:"); //$NON-NLS-1$
-		CMNamedNodeMap attributes = getAttributes();
-		for (int i = 0; i < attributes.getLength(); i++) {
-			buffer.append("\n\t\t" + StringUtils.replace(attributes.item(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-		buffer.append("\n\t variables:"); //$NON-NLS-1$
-		for (int i = 0; i < getVariables().size(); i++) {
-			buffer.append("\n\t\t" + StringUtils.replace(getVariables().get(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNamedNodeMapImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNamedNodeMapImpl.java
deleted file mode 100644
index 38613f9..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNamedNodeMapImpl.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-
-
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class CMNamedNodeMapImpl implements CMNamedNodeMap {
-
-	public static CMNamedNodeMapImpl EMPTY_NAMED_NODE_MAP = new CMNamedNodeMapImpl();
-	protected Hashtable table = new Hashtable();
-
-	/**
-	 * CMNamedNodeMapImpl constructor comment.
-	 */
-	public CMNamedNodeMapImpl() {
-		super();
-	}
-
-	Hashtable getHashtable() {
-		return table;
-	}
-
-	/**
-	 * getLength method
-	 * @return int
-	 */
-	public int getLength() {
-		return table.size();
-	}
-
-	/**
-	 * getNamedItem method
-	 * @return CMNode
-	 * @param name java.lang.String
-	 */
-	public CMNode getNamedItem(String name) {
-		return (CMNode) table.get(name);
-	}
-
-	/**
-	 * item method
-	 * @return CMNode
-	 * @param index int
-	 */
-	public CMNode item(int index) {
-		Object result = null;
-		int size = table.size();
-		if (index < size) {
-			Iterator values = iterator();
-			for (int i = 0; i <= index; i++) {
-				result = values.next();
-			}
-		}
-		return (CMNode) result;
-	}
-
-	public Iterator iterator() {
-		return table.values().iterator();
-	}
-
-	/**
-	 * getNamedItem method
-	 * @return
-	 * @param name java.lang.String
-	 * @param aNode CMNode
-	 */
-	public void setNamedItem(String name, CMNode aNode) {
-		if (name != null && aNode != null)
-			table.put(name, aNode);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNodeListImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNodeListImpl.java
deleted file mode 100644
index b066cf7..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/CMNodeListImpl.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-
-public class CMNodeListImpl implements CMNodeList {
-	static CMNodeListImpl EMPTY_NODE_LIST = new CMNodeListImpl(Collections.EMPTY_LIST);
-	protected List list;
-
-	public CMNodeListImpl() {
-		this(new ArrayList());
-	}
-
-	public CMNodeListImpl(List list) {
-		this.list = list;
-	}
-
-	public void appendItem(CMNode node) {
-		list.add(node);
-	}
-
-	/**
-	 * getLength method
-	 * @return int
-	 */
-	public int getLength() {
-		return list.size();
-	}
-
-	public List getList() {
-		return list;
-	}
-
-	/**
-	 * item method
-	 * @return CMNode
-	 * @param index int
-	 */
-	public CMNode item(int index) {
-		return (CMNode) list.get(index);
-	}
-
-	public Iterator iterator() {
-		return list.iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDCMDocumentManager.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDCMDocumentManager.java
deleted file mode 100644
index 5b68ada..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDCMDocumentManager.java
+++ /dev/null
@@ -1,924 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.util.ArrayList;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Stack;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-import org.eclipse.core.resources.IFile;
-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.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.jst.jsp.core.JSP12Namespace;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP11TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP20TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDDocument;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDElementDeclaration;
-import org.eclipse.jst.jsp.core.contentmodel.tld.URIResolverProvider;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.contentmodel.ITaglibIndexListener;
-import org.eclipse.jst.jsp.core.internal.contentmodel.ITaglibRecord;
-import org.eclipse.jst.jsp.core.internal.contentmodel.ITaglibRecordEvent;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibIndex;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.common.uriresolver.URIResolverPlugin;
-import org.eclipse.wst.sse.core.parser.BlockMarker;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionHandlerExtension;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.Assert;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-public class TLDCMDocumentManager implements ITaglibIndexListener {
-
-	protected class DirectiveStructuredDocumentRegionHandler implements StructuredDocumentRegionHandler, StructuredDocumentRegionHandlerExtension {
-
-		/**
-		 * Adds a block tagname (fully namespace qualified) into the list of
-		 * block tag names for the parser. The marker
-		 * IStructuredDocumentRegion along with position cues during reparses
-		 * allow the JSPSourceParser to enable/ignore the tags as blocks.
-		 */
-		protected void addBlockTag(String tagnameNS, IStructuredDocumentRegion marker) {
-			if (getParser() == null)
-				return;
-			if (getParser().getBlockMarker(tagnameNS) == null) {
-				getParser().addBlockMarker(new BlockMarker(tagnameNS, marker, XMLRegionContext.BLOCK_TEXT, true, false));
-				if (_debug) {
-					System.out.println("TLDCMDocumentManager added block marker: " + tagnameNS + "@" + marker.getStartOffset()); //$NON-NLS-2$//$NON-NLS-1$
-				}
-			}
-		}
-
-		/**
-		 * Enables a TLD owning the given prefix loaded from the given URI at
-		 * the anchorStructuredDocumentRegion. The list of
-		 * additionalCMDocuments will claim to not know any of its tags at
-		 * positions earlier than that IStructuredDocumentRegion's position.
-		 * 
-		 * For taglib directives, the taglib is the anchor while taglibs
-		 * registered through include directives use the parent document's
-		 * include directive as their anchor.
-		 * 
-		 * @param prefix
-		 * @param uri
-		 * @param anchorStructuredDocumentRegion
-		 */
-		protected void enableTaglibFromURI(String prefix, String uri, IStructuredDocumentRegion anchorStructuredDocumentRegion) {
-			if (prefix == null || uri == null || bannedPrefixes.contains(prefix))
-				return;
-			// Try to load the CMDocument for this URI
-			CMDocument tld = getCMDocument(uri);
-			if (tld == null || !(tld instanceof TLDDocument)) {
-				if (_debug) {
-					System.out.println("TLDCMDocumentManager failed to create a CMDocument for " + uri); //$NON-NLS-1$
-				}
-				return;
-			}
-			CMNamedNodeMap elements = tld.getElements();
-			// Go through the CMDocument for any tags that must be marked as
-			// block tags
-			// starting at the anchoring IStructuredDocumentRegion. As the
-			// document is edited and the
-			// IStructuredDocumentRegion moved around, the block tag
-			// enablement will automatically follow
-			// it.
-			for (int i = 0; i < elements.getLength(); i++) {
-				TLDElementDeclaration ed = (TLDElementDeclaration) elements.item(i);
-				if (ed.getBodycontent() == JSP12TLDNames.CONTENT_TAGDEPENDENT)
-					addBlockTag(prefix + ":" + ed.getNodeName(), anchorStructuredDocumentRegion); //$NON-NLS-1$
-			}
-			// Since modifications to StructuredDocumentRegions adjacent to a
-			// taglib directive can cause
-			// that IStructuredDocumentRegion to be reported, filter out any
-			// duplicated URIs. When the
-			// taglib is actually modified, a full rebuild will occur and no
-			// duplicates
-			// will/should be found.
-			List trackers = getTaglibTrackers();
-			for (int i = 0; i < trackers.size(); i++) {
-				TaglibTracker tracker = (TaglibTracker) trackers.get(i);
-				if (tracker.getPrefix().equals(prefix) && tracker.getURI().equals(uri)) {
-					return;
-				}
-			}
-			if (_debug) {
-				System.out.println("TLDCMDocumentManager registered a tracker for " + uri + " with prefix " + prefix); //$NON-NLS-2$//$NON-NLS-1$
-			}
-			getTaglibTrackers().add(new TaglibTracker(uri, prefix, tld, anchorStructuredDocumentRegion));
-		}
-
-		/**
-		 * Enables a TLD owning the given prefix loaded from the given URI at
-		 * the anchorStructuredDocumentRegion. The list of
-		 * additionalCMDocuments will claim to not know any of its tags at
-		 * positions earlier than that IStructuredDocumentRegion's position.
-		 * 
-		 * For taglib directives, the taglib is the anchor while taglibs
-		 * registered through include directives use the parent document's
-		 * include directive as their anchor.
-		 * 
-		 * @param prefix
-		 * @param uri
-		 * @param taglibStructuredDocumentRegion
-		 */
-		protected void enableTagsInDir(String prefix, String tagdir, IStructuredDocumentRegion taglibStructuredDocumentRegion) {
-			if (prefix == null || tagdir == null || bannedPrefixes.contains(prefix))
-				return;
-			if (_debug) {
-				System.out.println("TLDCMDocumentManager enabling tags from directory" + tagdir + " for prefix " + prefix); //$NON-NLS-2$//$NON-NLS-1$
-			}
-			// Try to load the CMDocument for this URI
-			CMDocument tld = getImplicitCMDocument(tagdir);
-			if (tld == null || !(tld instanceof TLDDocument))
-				return;
-			CMNamedNodeMap elements = tld.getElements();
-			// Go through the CMDocument for any tags that must be marked as
-			// block tags
-			// starting at the anchoring IStructuredDocumentRegion. As the
-			// document is edited and the
-			// IStructuredDocumentRegion moved around, the block tag
-			// enablement will automatically follow
-			// it.
-			for (int i = 0; i < elements.getLength(); i++) {
-				TLDElementDeclaration ed = (TLDElementDeclaration) elements.item(i);
-				if (ed.getBodycontent() == JSP12TLDNames.CONTENT_TAGDEPENDENT)
-					addBlockTag(prefix + ":" + ed.getNodeName(), taglibStructuredDocumentRegion); //$NON-NLS-1$
-			}
-			// Since modifications to StructuredDocumentRegions adjacent to a
-			// taglib directive can cause
-			// that IStructuredDocumentRegion to be reported, filter out any
-			// duplicated URIs. When the
-			// taglib is actually modified, a full rebuild will occur and no
-			// duplicates
-			// will/should be found.
-			List trackers = getTaglibTrackers();
-			for (int i = 0; i < trackers.size(); i++) {
-				TaglibTracker tracker = (TaglibTracker) trackers.get(i);
-				if (tracker.getPrefix().equals(prefix) && tracker.getURI().equals(tagdir)) {
-					return;
-				}
-			}
-			if (_debug) {
-				System.out.println("TLDCMDocumentManager registered a tracker for directory" + tagdir + " with prefix " + prefix); //$NON-NLS-2$//$NON-NLS-1$
-			}
-			getTaglibTrackers().add(new TaglibTracker(tagdir, prefix, tld, taglibStructuredDocumentRegion));
-		}
-
-		public void nodeParsed(IStructuredDocumentRegion aCoreStructuredDocumentRegion) {
-			// could test > 1, but since we only care if there are 8 (<%@,
-			// taglib, uri, =, where, prefix, =, what) [or 4 for includes]
-			if (aCoreStructuredDocumentRegion.getNumberOfRegions() > 4 && aCoreStructuredDocumentRegion.getRegions().get(1).getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-				ITextRegion name = aCoreStructuredDocumentRegion.getRegions().get(1);
-				try {
-					if (getParser() == null) {
-						Logger.log(Logger.WARNING, "Warning: parser text was requested by " + getClass().getName() + " but none was available; taglib support disabled"); //$NON-NLS-1$ //$NON-NLS-2$
-					}
-					else {
-						boolean taglibDetected = false;
-						boolean taglibDirectiveDetected = false;
-						boolean includeDetected = false;
-						boolean includeDirectiveDetected = false;
-						int startOffset = aCoreStructuredDocumentRegion.getStartOffset(name);
-						int textLength = name.getTextLength();
-
-						if (getParser() != null) {
-							taglibDetected = getParser().regionMatches(startOffset, textLength, JSP12TLDNames.TAGLIB);
-							taglibDirectiveDetected = getParser().regionMatches(startOffset, textLength, JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-							includeDetected = getParser().regionMatches(startOffset, textLength, JSP12TLDNames.INCLUDE);
-							includeDirectiveDetected = getParser().regionMatches(startOffset, textLength, JSP12Namespace.ElementName.DIRECTIVE_INCLUDE);
-						}
-						else {
-							// old fashioned way
-							String directiveName = getParser().getText(startOffset, textLength);
-							taglibDetected = directiveName.equals(JSP12TLDNames.TAGLIB);
-							taglibDirectiveDetected = directiveName.equals(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-							includeDetected = directiveName.equals(JSP12TLDNames.INCLUDE);
-							includeDirectiveDetected = directiveName.equals(JSP12Namespace.ElementName.DIRECTIVE_INCLUDE);
-						}
-						if (taglibDetected || taglibDirectiveDetected) {
-							processTaglib(aCoreStructuredDocumentRegion);
-						}
-						else if (includeDetected || includeDirectiveDetected) {
-							processInclude(aCoreStructuredDocumentRegion);
-						}
-					}
-				}
-				catch (StringIndexOutOfBoundsException sioobExc) {
-					// do nothing
-				}
-			}
-			// could test > 1, but since we only care if there are 5 (<,
-			// jsp:root, xmlns:prefix, =, where)
-			else if (aCoreStructuredDocumentRegion.getNumberOfRegions() > 4 && aCoreStructuredDocumentRegion.getRegions().get(1).getType() == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME) {
-				if (getParser() == null) {
-					Logger.log(Logger.WARNING, "Warning: parser text was requested by " + getClass().getName() + " but none was available; taglib support disabled"); //$NON-NLS-1$ //$NON-NLS-2$
-				}
-				else {
-					processJSPRoot(aCoreStructuredDocumentRegion);
-				}
-			}
-		}
-
-		protected void processInclude(IStructuredDocumentRegion aCoreStructuredDocumentRegion) {
-			processInclude(aCoreStructuredDocumentRegion, aCoreStructuredDocumentRegion, getParser());
-		}
-
-		/**
-		 * Process an include directive found by the textSource parser and
-		 * anchor any taglibs found within at the
-		 * anchorStructuredDocumentRegion. Includes use the including file as
-		 * the point of reference, not necessarily the "top" file.
-		 */
-		protected void processInclude(IStructuredDocumentRegion includeStructuredDocumentRegion, IStructuredDocumentRegion anchorStructuredDocumentRegion, JSPSourceParser textSource) {
-			ITextRegionList regions = includeStructuredDocumentRegion.getRegions();
-			String includedFile = null;
-			boolean isFilename = false;
-			try {
-				for (int i = 0; i < regions.size(); i++) {
-					ITextRegion region = regions.get(i);
-					if (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-						if (textSource.getText(includeStructuredDocumentRegion.getStartOffset(region), region.getTextLength()).equals(JSP12TLDNames.FILE)) {
-							isFilename = true;
-						}
-						else {
-							isFilename = false;
-						}
-					}
-					else if (isFilename && region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						includedFile = textSource.getText(includeStructuredDocumentRegion.getStartOffset(region), region.getTextLength());
-						isFilename = false;
-					}
-				}
-			}
-			catch (StringIndexOutOfBoundsException sioobExc) {
-				// nothing to be done
-				includedFile = null;
-			}
-			if (includedFile != null) {
-				IPath root = TaglibIndex.getContextRoot(getCurrentBaseLocation());
-				IPath fileLocation = new Path(URIHelper.normalize(StringUtils.strip(includedFile).trim(), getCurrentBaseLocation().toString(), root.toString()));
-				// check for "loops"
-				if (!getIncludes().contains(fileLocation) && fileLocation != null && !fileLocation.equals(getCurrentBaseLocation())) {
-					getIncludes().push(fileLocation);
-					if (getParser() != null)
-						new IncludeHelper(anchorStructuredDocumentRegion, getParser()).parse(fileLocation.toString());
-					else
-						Logger.log(Logger.WARNING, "Warning: parser text was requested by " + getClass().getName() + " but none was available; taglib support disabled"); //$NON-NLS-1$ //$NON-NLS-2$
-					getIncludes().pop();
-				}
-				else {
-					if (Debug.debugTokenizer)
-						System.out.println("LOOP IN @INCLUDES FOUND: " + fileLocation); //$NON-NLS-1$
-				}
-			}
-		}
-
-		// Pulls the URI and prefix from the given jsp:root
-		// IStructuredDocumentRegion and
-		// makes sure the tags are known.
-		protected void processJSPRoot(IStructuredDocumentRegion jspRootStructuredDocumentRegion) {
-			processJSPRoot(jspRootStructuredDocumentRegion, jspRootStructuredDocumentRegion, getParser());
-		}
-
-		protected void processJSPRoot(IStructuredDocumentRegion taglibStructuredDocumentRegion, IStructuredDocumentRegion anchorStructuredDocumentRegion, JSPSourceParser textSource) {
-			ITextRegionList regions = taglibStructuredDocumentRegion.getRegions();
-			String uri = null;
-			String prefix = null;
-			boolean taglib = false;
-			try {
-				for (int i = 0; i < regions.size(); i++) {
-					ITextRegion region = regions.get(i);
-					if (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-						String name = textSource.getText(taglibStructuredDocumentRegion.getStartOffset(region), region.getTextLength());
-						if (name.startsWith(XMLNS)) { //$NON-NLS-1$
-							prefix = name.substring(XMLNS_LENGTH);
-							if (!bannedPrefixes.contains(prefix))
-								taglib = true;
-						}
-						else {
-							prefix = null;
-							taglib = false;
-						}
-					}
-					else if (taglib && region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						uri = textSource.getText(taglibStructuredDocumentRegion.getStartOffset(region), region.getTextLength());
-						if (uri != null && prefix != null && (StringUtils.strip(uri).length() > 0) && (StringUtils.strip(prefix).length() > 0)) {
-							if (anchorStructuredDocumentRegion == null)
-								enableTaglibFromURI(StringUtils.strip(prefix), StringUtils.strip(uri), taglibStructuredDocumentRegion);
-							else
-								enableTaglibFromURI(StringUtils.strip(prefix), StringUtils.strip(uri), anchorStructuredDocumentRegion);
-							uri = null;
-							prefix = null;
-						}
-					}
-				}
-			}
-			catch (StringIndexOutOfBoundsException sioobExc) {
-				// nothing to be done
-				uri = null;
-				prefix = null;
-			}
-		}
-
-		protected void processTaglib(IStructuredDocumentRegion taglibStructuredDocumentRegion) {
-			processTaglib(taglibStructuredDocumentRegion, taglibStructuredDocumentRegion, getParser());
-		}
-
-		/**
-		 * Pulls the URI and prefix from the given taglib directive
-		 * IStructuredDocumentRegion and makes sure the tags are known.
-		 */
-		protected void processTaglib(IStructuredDocumentRegion taglibStructuredDocumentRegion, IStructuredDocumentRegion anchorStructuredDocumentRegion, JSPSourceParser textSource) {
-			ITextRegionList regions = taglibStructuredDocumentRegion.getRegions();
-			String uri = null;
-			String prefix = null;
-			String tagdir = null;
-			String attrName = null;
-			try {
-				for (int i = 0; i < regions.size(); i++) {
-					ITextRegion region = regions.get(i);
-					// remember attribute name
-					int startOffset = taglibStructuredDocumentRegion.getStartOffset(region);
-					int textLength = region.getTextLength();
-					if (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-						// String name = textSource.getText(startOffset,
-						// textLength);
-						if (textSource.regionMatches(startOffset, textLength, JSP11TLDNames.PREFIX)) {
-							attrName = JSP11TLDNames.PREFIX;
-						}
-						else if (textSource.regionMatches(startOffset, textLength, JSP12TLDNames.URI)) {
-							attrName = JSP11TLDNames.URI;
-						}
-						else if (textSource.regionMatches(startOffset, textLength, JSP20TLDNames.TAGDIR)) {
-							attrName = JSP20TLDNames.TAGDIR;
-						}
-						else {
-							attrName = null;
-						}
-					}
-					// process value
-					else if (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						if (JSP11TLDNames.PREFIX.equals(attrName))
-							prefix = textSource.getText(startOffset, textLength);
-						else if (JSP11TLDNames.URI.equals(attrName))
-							uri = textSource.getText(startOffset, textLength);
-						else if (JSP20TLDNames.TAGDIR.equals(attrName))
-							tagdir = textSource.getText(startOffset, textLength);
-					}
-				}
-			}
-			catch (StringIndexOutOfBoundsException sioobExc) {
-				// nothing to be done
-				uri = null;
-				prefix = null;
-			}
-			if (uri != null && prefix != null && (StringUtils.strip(uri).length() > 0) && (StringUtils.strip(prefix).length() > 0)) {
-				if (anchorStructuredDocumentRegion == null)
-					enableTaglibFromURI(StringUtils.strip(prefix), StringUtils.strip(uri), taglibStructuredDocumentRegion);
-				else
-					enableTaglibFromURI(StringUtils.strip(prefix), StringUtils.strip(uri), anchorStructuredDocumentRegion);
-			}
-			else if (tagdir != null && prefix != null && (StringUtils.strip(tagdir).length() > 0) && (StringUtils.strip(prefix).length() > 0)) {
-				if (anchorStructuredDocumentRegion == null)
-					enableTagsInDir(StringUtils.strip(prefix), StringUtils.strip(tagdir), taglibStructuredDocumentRegion);
-				else
-					enableTagsInDir(StringUtils.strip(prefix), StringUtils.strip(tagdir), anchorStructuredDocumentRegion);
-			}
-		}
-
-		private void resetBlockTags() {
-			if (getParser() == null)
-				return;
-			Iterator names = getParser().getBlockMarkers().iterator();
-			while (names.hasNext()) {
-				BlockMarker marker = (BlockMarker) names.next();
-				if (!marker.isGlobal() && marker.getContext() == XMLRegionContext.BLOCK_TEXT) {
-					if (_debug) {
-						System.out.println("TLDCMDocumentManager removing block tag named: " + marker.getTagName()); //$NON-NLS-1$
-					}
-					names.remove();
-				}
-			}
-		}
-
-		public void resetNodes() {
-			if (Debug.debugTaglibs)
-				System.out.println(getClass().getName() + ": resetting"); //$NON-NLS-1$
-			getIncludes().clear();
-			resetBlockTags();
-			resetTaglibTrackers();
-		}
-
-		public void setStructuredDocument(IStructuredDocument newDocument) {
-			Assert.isTrue(newDocument != null, "null document");
-			Assert.isTrue(newDocument.getParser() != null, "null document parser");
-			Assert.isTrue(newDocument.getParser() instanceof JSPSourceParser, "can only listen to document with a JSPSourceParser");
-			getSourceParser().removeStructuredDocumentRegionHandler(this);
-			setSourceParser((JSPSourceParser) newDocument.getParser());
-			getSourceParser().addStructuredDocumentRegionHandler(this);
-		}
-	}
-
-	protected class IncludeHelper extends DirectiveStructuredDocumentRegionHandler {
-		protected IStructuredDocumentRegion fAnchor = null;
-		protected JSPSourceParser fLocalParser = null;
-		protected JSPSourceParser fParentParser = null;
-
-		public IncludeHelper(IStructuredDocumentRegion anchor, JSPSourceParser rootParser) {
-			super();
-			fAnchor = anchor;
-			fParentParser = rootParser;
-		}
-
-		private String detectCharset(IFile file) {
-			if (file.getType() == IResource.FILE && file.isAccessible()) {
-				IContentDescription d = null;
-				try {
-					// optimized description lookup, might not succeed
-					d = file.getContentDescription();
-					if (d != null)
-						return d.getCharset();
-				}
-				catch (CoreException e) {
-					// should not be possible given the accessible and file
-					// type
-					// check above
-				}
-				InputStream contents = null;
-				try {
-					contents = file.getContents();
-					IContentDescription description = Platform.getContentTypeManager().getDescriptionFor(contents, file.getName(), new QualifiedName[]{IContentDescription.CHARSET});
-					if (description != null) {
-						return description.getCharset();
-					}
-				}
-				catch (IOException e) {
-					// will try to cleanup in finally
-				}
-				catch (CoreException e) {
-					Logger.logException(e);
-				}
-				finally {
-					if (contents != null) {
-						try {
-							contents.close();
-						}
-						catch (Exception e) {
-							// not sure how to recover at this point
-						}
-					}
-				}
-			}
-			return ResourcesPlugin.getEncoding();
-		}
-
-		protected String getContents(String fileName) {
-			StringBuffer s = new StringBuffer();
-			IFile iFile = FileBuffers.getWorkspaceFileAtLocation(new Path(fileName));
-			if (iFile != null && iFile.exists()) {
-				String charset = detectCharset(iFile);
-				InputStream contents = null;
-				try {
-					contents = iFile.getContents();
-					Reader reader = new InputStreamReader(contents, charset);
-					char[] readBuffer = new char[2048];
-					int n = reader.read(readBuffer);
-					while (n > 0) {
-						s.append(readBuffer, 0, n);
-						n = reader.read(readBuffer);
-					}
-				}
-				catch (Exception e) {
-					if (Debug.debugStructuredDocument)
-						Logger.log(Logger.WARNING, "An exception occured while scanning " + fileName, e); //$NON-NLS-1$
-				}
-				finally {
-					try {
-						if (contents != null) {
-							contents.close();
-						}
-					}
-					catch (Exception e) {
-						// nothing to do
-					}
-				}
-			}
-			else {
-				int c = 0;
-				int length = 0;
-				int count = 0;
-				File file = null;
-				FileInputStream fis = null;
-				try {
-					file = new File(fileName);
-					length = (int) file.length();
-					fis = new FileInputStream(file);
-					while (((c = fis.read()) >= 0) && (count < length)) {
-						count++;
-						s.append((char) c);
-					}
-				}
-				catch (FileNotFoundException e) {
-					if (Debug.debugStructuredDocument)
-						System.out.println("File not found : \"" + fileName + "\""); //$NON-NLS-2$//$NON-NLS-1$
-				}
-				catch (ArrayIndexOutOfBoundsException e) {
-					if (Debug.debugStructuredDocument)
-						System.out.println("Usage wrong: specify inputfile"); //$NON-NLS-1$
-					//$NON-NLS-1$
-				}
-				catch (IOException e) {
-					if (Debug.debugStructuredDocument)
-						System.out.println("An I/O error occured while scanning :"); //$NON-NLS-1$
-					//$NON-NLS-1$
-				}
-				catch (Exception e) {
-					if (Debug.debugStructuredDocument)
-						e.printStackTrace();
-				}
-				finally {
-					try {
-						if (fis != null) {
-							fis.close();
-						}
-					}
-					catch (Exception e) {
-						// nothing to do
-					}
-				}
-			}
-			return s.toString();
-		}
-
-		public void nodeParsed(IStructuredDocumentRegion aCoreStructuredDocumentRegion) {
-			// could test > 1, but since we only care if there are 8 (<%@,
-			// taglib, uri, =, where, prefix, =, what)
-			if (aCoreStructuredDocumentRegion.getNumberOfRegions() > 1 && aCoreStructuredDocumentRegion.getRegions().get(1).getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-				ITextRegion name = aCoreStructuredDocumentRegion.getRegions().get(1);
-				try {
-					String directiveName = fLocalParser.getText(aCoreStructuredDocumentRegion.getStartOffset(name), name.getTextLength());
-					if (directiveName.equals(JSP12TLDNames.TAGLIB) || directiveName.equals(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB)) {
-						processTaglib(aCoreStructuredDocumentRegion, fAnchor, fLocalParser);
-					}
-					if (directiveName.equals(JSP12TLDNames.INCLUDE) || directiveName.equals(JSP12Namespace.ElementName.DIRECTIVE_INCLUDE)) {
-						processInclude(aCoreStructuredDocumentRegion, fAnchor, fLocalParser);
-					}
-				}
-				catch (StringIndexOutOfBoundsException sioobExc) {
-					// do nothing
-				}
-			}
-			// could test > 1, but since we only care if there are 5 (<,
-			// jsp:root, xmlns:prefix, =, where)
-			else if (aCoreStructuredDocumentRegion.getNumberOfRegions() > 4 && aCoreStructuredDocumentRegion.getRegions().get(1).getType() == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME) {
-				processJSPRoot(aCoreStructuredDocumentRegion, fAnchor, fLocalParser);
-			}
-		}
-
-		public void parse(String filename) {
-			JSPSourceParser p = new JSPSourceParser();
-			fLocalParser = p;
-			List blockTags = fParentParser.getBlockMarkers();
-			String includedFilename = filename;
-			File baseFile = FileBuffers.getSystemFileAtLocation(new Path(includedFilename));
-			try {
-				if (baseFile != null)
-					includedFilename = baseFile.getCanonicalPath();
-			}
-			catch (IOException e) {
-			}
-			String s = getContents(includedFilename);
-			fLocalParser.addStructuredDocumentRegionHandler(this);
-			fLocalParser.reset(s);
-			for (int i = 0; i < blockTags.size(); i++) {
-				BlockMarker marker = (BlockMarker) blockTags.get(i);
-				fLocalParser.addBlockMarker(new BlockMarker(marker.getTagName(), null, marker.getContext(), marker.isCaseSensitive()));
-			}
-			// force parse
-			fLocalParser.getDocumentRegions();
-			fLocalParser = null;
-		}
-
-		public void resetNodes() {
-		}
-
-	}
-
-	static final boolean _debug = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/tldcmdocument/manager")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	// will hold the prefixes banned by the specification; taglibs may not use
-	// them
-	protected static List bannedPrefixes = null;
-	static final String XMLNS = "xmlns:"; //$NON-NLS-1$ 
-	static final int XMLNS_LENGTH = XMLNS.length();
-
-	static {
-		bannedPrefixes = new ArrayList(7);
-		bannedPrefixes.add("jsp"); //$NON-NLS-1$
-		bannedPrefixes.add("jspx"); //$NON-NLS-1$
-		bannedPrefixes.add("java"); //$NON-NLS-1$
-		bannedPrefixes.add("javax"); //$NON-NLS-1$
-		bannedPrefixes.add("servlet"); //$NON-NLS-1$
-		bannedPrefixes.add("sun"); //$NON-NLS-1$
-		bannedPrefixes.add("sunw"); //$NON-NLS-1$
-	}
-
-	private CMDocumentFactoryTLD fCMDocumentBuilder = null;
-	private DirectiveStructuredDocumentRegionHandler fDirectiveHandler = null;
-	private Hashtable fDocuments = null;
-	private Stack fIncludes = null;
-
-	private JSPSourceParser fParser = null;
-
-	// trivial hand edit to remove unused variable private URIResolverProvider
-	// fResolverProvider = null;
-
-	private List fTaglibTrackers = null;
-
-	public TLDCMDocumentManager() {
-		super();
-	}
-
-	public void clearCache() {
-		if (_debug) {
-			System.out.println("TLDCMDocumentManager cleared its CMDocument cache"); //$NON-NLS-1$
-		}
-		getDocuments().clear();
-	}
-
-	/**
-	 * Return the CMDocument at the uri (cached)
-	 */
-	protected CMDocument getCMDocument(String uri) {
-		if (uri == null || uri.length() == 0)
-			return null;
-		String reference = uri;
-		/**
-		 * JSP 1.2 Specification, section 5.2.2 jsp-1_2-fcs-spec.pdf, page 87
-		 */
-		String URNprefix = "urn:jsptld:"; //$NON-NLS-1$
-		if (reference.startsWith(URNprefix)) {
-			/**
-			 * @see section 7.3.2
-			 */
-			if (reference.length() > URNprefix.length())
-				reference = reference.substring(11);
-		}
-		else {
-			/**
-			 * @see section 7.3.6
-			 */
-		}
-		CMDocument doc = (CMDocument) getDocuments().get(reference);
-		if (doc == null) {
-			doc = loadTaglib(reference);
-			if (doc != null)
-				getDocuments().put(reference, doc);
-		}
-		return doc;
-	}
-
-	/**
-	 * Gets the cMDocumentBuilder.
-	 * 
-	 * @return Returns a CMDocumentFactoryTLD, since it has more builder
-	 *         methods
-	 */
-	protected CMDocumentFactoryTLD getCMDocumentBuilder() {
-		if (fCMDocumentBuilder == null)
-			fCMDocumentBuilder = new CMDocumentFactoryTLD();
-		return fCMDocumentBuilder;
-	}
-
-	public List getCMDocumentTrackers(int offset) {
-		List validDocs = new ArrayList();
-		Iterator alldocs = getTaglibTrackers().iterator();
-		while (alldocs.hasNext()) {
-			TaglibTracker aTracker = (TaglibTracker) alldocs.next();
-			if (aTracker.getStructuredDocumentRegion().getStartOffset() < offset || offset < 0) {
-				validDocs.add(aTracker);
-			}
-		}
-		return validDocs;
-	}
-
-	public List getCMDocumentTrackers(String prefix, int offset) {
-		List validDocs = new ArrayList();
-		Iterator alldocs = getTaglibTrackers().iterator();
-		while (alldocs.hasNext()) {
-			TaglibTracker aTracker = (TaglibTracker) alldocs.next();
-			if ((aTracker.getStructuredDocumentRegion().getStartOffset() < offset || offset < 0) && aTracker.getPrefix().equals(prefix)) {
-				validDocs.add(aTracker);
-			}
-		}
-		return validDocs;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	IPath getCurrentBaseLocation() {
-		IPath baseLocation = null;
-		if (!getIncludes().isEmpty()) {
-			baseLocation = (IPath) getIncludes().peek();
-		}
-		else {
-			IPath path = TaglibController.getFileBuffer(this).getLocation();
-			if (path.toFile().exists())
-				baseLocation = path;
-			else
-				baseLocation = ResourcesPlugin.getWorkspace().getRoot().getFile(path).getLocation();
-		}
-		return baseLocation;
-	}
-
-	protected DirectiveStructuredDocumentRegionHandler getDirectiveStructuredDocumentRegionHandler() {
-		if (fDirectiveHandler == null)
-			fDirectiveHandler = new DirectiveStructuredDocumentRegionHandler();
-		return fDirectiveHandler;
-	}
-
-	/**
-	 * Gets the documents.
-	 * 
-	 * @return Returns a Hashtable
-	 */
-	public Hashtable getDocuments() {
-		if (fDocuments == null)
-			fDocuments = new Hashtable();
-		return fDocuments;
-	}
-
-	/**
-	 * Return the CMDocument at the tagdir (cached)
-	 */
-	protected CMDocument getImplicitCMDocument(String tagdir) {
-		if (tagdir == null || tagdir.length() == 0)
-			return null;
-		String reference = tagdir;
-		/**
-		 * JSP 1.2 Specification, section 5.2.2 jsp-1_2-fcs-spec.pdf, page 87
-		 */
-		String URNprefix = "urn:jsptld:"; //$NON-NLS-1$
-		if (reference.startsWith(URNprefix)) {
-			/**
-			 * @see section 7.3.2
-			 */
-			if (reference.length() > URNprefix.length())
-				reference = reference.substring(11);
-		}
-		else {
-			/**
-			 * @see section 7.3.6
-			 */
-		}
-		CMDocument doc = (CMDocument) getDocuments().get(reference);
-		if (doc == null) {
-			doc = loadTagDir(reference);
-			if (doc != null)
-				getDocuments().put(reference, doc);
-		}
-		return doc;
-	}
-
-	/**
-	 * Gets the includes.
-	 * 
-	 * @return Returns a Stack
-	 */
-	protected Stack getIncludes() {
-		if (fIncludes == null)
-			fIncludes = new Stack();
-		return fIncludes;
-	}
-
-	JSPSourceParser getParser() {
-		return fParser;
-	}
-
-	/**
-	 * @deprecated
-	 */
-	public URIResolverProvider getResolverProvider() {
-		return null;
-	}
-
-	public JSPSourceParser getSourceParser() {
-		return fParser;
-	}
-
-	public StructuredDocumentRegionHandler getStructuredDocumentRegionHandler() {
-		return getDirectiveStructuredDocumentRegionHandler();
-	}
-
-	/**
-	 * 
-	 * @return java.util.List
-	 */
-	public List getTaglibTrackers() {
-		if (fTaglibTrackers == null)
-			fTaglibTrackers = new ArrayList();
-		return fTaglibTrackers;
-	}
-	
-	public void indexChanged(ITaglibRecordEvent event) {
-	}
-
-	/**
-	 * Loads the tags from the specified URI. It must point to a URL of valid
-	 * tag files to work.
-	 */
-	protected CMDocument loadTagDir(String uri) {
-		ITaglibRecord reference = TaglibIndex.resolve(getCurrentBaseLocation().toString(), uri, false);
-		if (reference != null) {
-			CMDocument document = getCMDocumentBuilder().createCMDocument(reference);
-			if (document != null) {
-				return document;
-			}
-		}
-		// JSP2_TODO: implement for JSP 2.0
-		String location = URIResolverPlugin.createResolver().resolve(getCurrentBaseLocation().toString(), null, uri);
-		if (location == null)
-			return null;
-		if (_debug) {
-			System.out.println("Loading tags from dir" + uri + " at " + location); //$NON-NLS-2$//$NON-NLS-1$
-		}
-		return getCMDocumentBuilder().createCMDocument(location);
-	}
-
-	/**
-	 * Loads the taglib from the specified URI. It must point to a valid
-	 * taglib descriptor or valid JAR file to work.
-	 */
-	protected CMDocument loadTaglib(String uri) {
-		CMDocument document = null;
-		ITaglibRecord reference = TaglibIndex.resolve(TaglibController.getFileBuffer(this).getLocation().toString(), uri, false);
-		if (reference != null) {
-			document = getCMDocumentBuilder().createCMDocument(reference);
-		}
-		else {
-			String location = URIResolverPlugin.createResolver().resolve(getCurrentBaseLocation().toString(), null, uri);
-			if (location != null) {
-				if (_debug) {
-					System.out.println("Loading tags from " + uri + " at " + location); //$NON-NLS-2$//$NON-NLS-1$
-				}
-				document = getCMDocumentBuilder().createCMDocument(location);
-			}
-		}
-		return document;
-	}
-
-	protected void resetTaglibTrackers() {
-		if (_debug) {
-			System.out.println("TLDCMDocumentManager cleared its taglib trackers\n"); //$NON-NLS-1$
-		}
-		getTaglibTrackers().clear();
-	}
-
-	public void setSourceParser(JSPSourceParser parser) {
-		if (fParser != null)
-			fParser.removeStructuredDocumentRegionHandler(getStructuredDocumentRegionHandler());
-		fParser = parser;
-		if (fParser != null)
-			fParser.addStructuredDocumentRegionHandler(getStructuredDocumentRegionHandler());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDFunctionImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDFunctionImpl.java
deleted file mode 100644
index 5a3ef34..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDFunctionImpl.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDFunction;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-public class TLDFunctionImpl implements TLDFunction {
-	private String fClassName = null;
-	private String fDescription = null;
-	private String fDisplayName = null;
-	private String fExample = null;
-	private List fExtensions = new ArrayList(0);
-	private String fIcon = null;
-	private String fName = null;
-
-	private CMDocument fOwnerDocument = null;
-	private String fSignature = null;
-
-	public TLDFunctionImpl(CMDocument owner) {
-		super();
-		fOwnerDocument = owner;
-	}
-
-	/**
-	 * @return Returns the className.
-	 */
-	public String getClassName() {
-		return fClassName;
-	}
-	/**
-	 * @return Returns the description.
-	 */
-	public String getDescription() {
-		return fDescription;
-	}
-
-	/**
-	 * @return Returns the displayName.
-	 */
-	public String getDisplayName() {
-		return fDisplayName;
-	}
-
-	/**
-	 * @return Returns the example.
-	 */
-	public String getExample() {
-		return fExample;
-	}
-
-	/**
-	 * @return Returns the extensions.
-	 */
-	public List getExtensions() {
-		return fExtensions;
-	}
-
-	/**
-	 * @return Returns the icon.
-	 */
-	public String getIcon() {
-		return fIcon;
-	}
-
-	/**
-	 * @return Returns the name.
-	 */
-	public String getName() {
-		return fName;
-	}
-
-	/**
-	 * @return Returns the ownerDocument.
-	 */
-	public CMDocument getOwnerDocument() {
-		return fOwnerDocument;
-	}
-
-	/**
-	 * @return Returns the signature.
-	 */
-	public String getSignature() {
-		return fSignature;
-	}
-
-	/**
-	 * @param className
-	 *            The className to set.
-	 */
-	public void setClassName(String className) {
-		fClassName = className;
-	}
-	/**
-	 * @param description The description to set.
-	 */
-	public void setDescription(String description) {
-		fDescription = description;
-	}
-
-	/**
-	 * @param displayName
-	 *            The displayName to set.
-	 */
-	public void setDisplayName(String displayName) {
-		fDisplayName = displayName;
-	}
-
-	/**
-	 * @param example
-	 *            The example to set.
-	 */
-	public void setExample(String example) {
-		fExample = example;
-	}
-
-	/**
-	 * @param icon
-	 *            The icon to set.
-	 */
-	public void setIcon(String icon) {
-		fIcon = icon;
-	}
-
-	/**
-	 * @param name
-	 *            The name to set.
-	 */
-	public void setName(String name) {
-		fName = name;
-	}
-
-	/**
-	 * @param signature
-	 *            The signature to set.
-	 */
-	public void setSignature(String signature) {
-		fSignature = signature;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDInitParamImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDInitParamImpl.java
deleted file mode 100644
index 6bc9fc1..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDInitParamImpl.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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 9, 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.jst.jsp.core.internal.contentmodel.tld;
-
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDInitParam;
-import org.eclipse.wst.sse.core.util.StringUtils;
-
-
-public class TLDInitParamImpl implements TLDInitParam {
-	private String description;
-	private String name;
-	private String value;
-
-	public TLDInitParamImpl() {
-		super();
-	}
-
-	public String getDescription() {
-		return description;
-	}
-
-	public String getName() {
-		return name;
-	}
-
-	public String getValue() {
-		return value;
-	}
-
-	public void setDescription(String description) {
-		this.description = description;
-	}
-
-	public void setName(String name) {
-		this.name = name;
-	}
-
-	public void setValue(String value) {
-		this.value = value;
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(super.toString());
-		buffer.append("\n\t name:" + StringUtils.escape(getName())); //$NON-NLS-1$
-		buffer.append("\n\t description:" + StringUtils.escape(getDescription())); //$NON-NLS-1$
-		buffer.append("\n\t value:" + StringUtils.escape(getValue())); //$NON-NLS-1$
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDListenerImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDListenerImpl.java
deleted file mode 100644
index 0fea952..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDListenerImpl.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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 9, 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.jst.jsp.core.internal.contentmodel.tld;
-
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDListener;
-import org.eclipse.wst.sse.core.util.StringUtils;
-
-
-public class TLDListenerImpl implements TLDListener {
-	protected String listenerClass;
-
-	public String getListenerClass() {
-		return listenerClass;
-	}
-
-	public void setListenerClass(String className) {
-		listenerClass = className;
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(super.toString());
-		buffer.append("\n\t listener class:" + StringUtils.escape(getListenerClass())); //$NON-NLS-1$
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDValidatorImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDValidatorImpl.java
deleted file mode 100644
index 7fc7f57..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDValidatorImpl.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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 9, 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.jst.jsp.core.internal.contentmodel.tld;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDValidator;
-import org.eclipse.wst.sse.core.util.StringUtils;
-
-
-public class TLDValidatorImpl implements TLDValidator {
-	protected List initParams;
-	protected String validatorClass;
-
-	public List getInitParams() {
-		if (initParams == null)
-			initParams = new ArrayList();
-		return initParams;
-	}
-
-	public String getValidatorClass() {
-		return validatorClass;
-	}
-
-	public void setInitParams(List initParams) {
-		this.initParams = initParams;
-	}
-
-	public void setValidatorClass(String validatorClass) {
-		this.validatorClass = validatorClass;
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(super.toString());
-		buffer.append("\n\t validator class:" + StringUtils.escape(getValidatorClass())); //$NON-NLS-1$
-		buffer.append("\n\t init-parms:"); //$NON-NLS-1$
-		for (int i = 0; i < getInitParams().size(); i++) {
-			buffer.append("\n" + StringUtils.replace(getInitParams().get(i).toString(), "\n", "\n\t\t")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDVariableImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDVariableImpl.java
deleted file mode 100644
index 8b75897..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TLDVariableImpl.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDVariable;
-import org.eclipse.wst.sse.core.util.StringUtils;
-
-
-public class TLDVariableImpl implements TLDVariable {
-	// optional - defaults to true
-	private boolean declare = true;
-	
-	private String fDescription;
-	// required
-	private String nameFromAttribute;
-	// required
-	private String nameGiven;
-	// optional - defaults to NESTED
-	private String scope = JSP12TLDNames.VARIABLE_SCOPE_NESTED;
-	// required - defaults to a String
-	private String variableClass = "java.lang.String"; //$NON-NLS-1$
-
-	public boolean getDeclare() {
-		return declare;
-	}
-
-	/**
-	 * @return Returns the description.
-	 */
-	public String getDescription() {
-		return fDescription;
-	}
-
-	public String getNameFromAttribute() {
-		return nameFromAttribute;
-	}
-
-	public String getNameGiven() {
-		return nameGiven;
-	}
-
-	public String getScope() {
-		return scope;
-	}
-
-	public String getVariableClass() {
-		return variableClass;
-	}
-
-	public void setDeclare(boolean declare) {
-		this.declare = declare;
-	}
-
-	public void setDeclareString(String decl) {
-		setDeclare(decl.equals(JSP12TLDNames.TRUE) || decl.equals(JSP12TLDNames.YES));
-	}
-	/**
-	 * @param description The description to set.
-	 */
-	public void setDescription(String description) {
-		fDescription = description;
-	}
-
-	public void setNameFromAttribute(String nameFromAttribute) {
-		this.nameFromAttribute = nameFromAttribute;
-	}
-
-	public void setNameGiven(String nameGiven) {
-		this.nameGiven = nameGiven;
-	}
-
-	public void setScope(String scope) {
-		this.scope = scope;
-	}
-
-	public void setVariableClass(String variableClass) {
-		this.variableClass = variableClass;
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(super.toString());
-		buffer.append("\n\t name given:" + StringUtils.escape(getNameGiven())); //$NON-NLS-1$
-		buffer.append("\n\t name from attribute:" + StringUtils.escape(getNameFromAttribute())); //$NON-NLS-1$
-		// Boolean.toString(boolean) is introduced in JDK 1.4
-		//buffer.append("\n\t declare:" + StringUtils.escape(Boolean.toString(getDeclare())));
-		buffer.append("\n\t declare:" + StringUtils.toString(getDeclare())); //$NON-NLS-1$
-		buffer.append("\n\t scope:" + StringUtils.escape(getScope())); //$NON-NLS-1$
-		buffer.append("\n\t variable class:" + StringUtils.escape(getVariableClass())); //$NON-NLS-1$
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TaglibTracker.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TaglibTracker.java
deleted file mode 100644
index bcdf95e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/tld/TaglibTracker.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contentmodel.tld;
-
-
-
-import org.eclipse.jst.jsp.core.internal.contentmodel.CMDocumentWrapperImpl;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.contentmodel.CMDocumentTracker;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-/**
- * TaglibTracker class
- */
-public class TaglibTracker extends CMDocumentWrapperImpl implements CMDocumentTracker {
-
-	private IStructuredDocumentRegion fStructuredDocumentRegion;
-
-	public TaglibTracker(String newURI, String newPrefix, CMDocument tld, IStructuredDocumentRegion aStructuredDocumentRegion) {
-		super(newURI, newPrefix, tld);
-		fStructuredDocumentRegion = aStructuredDocumentRegion;
-	}
-
-	/**
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getStructuredDocumentRegion() {
-		return fStructuredDocumentRegion;
-	}
-
-	public String toString() {
-		if (getStructuredDocumentRegion() != null)
-			return getPrefix() + "@" + getStructuredDocumentRegion().getStartOffset(); //$NON-NLS-1$
-		return super.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/AbstractContentDescriber.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/AbstractContentDescriber.java
deleted file mode 100644
index 79e9d37..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/AbstractContentDescriber.java
+++ /dev/null
@@ -1,208 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.jst.jsp.core.internal.contenttype;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.content.IContentDescriber;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.ITextContentDescriber;
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.IContentDescriptionExtended;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-
-public abstract class AbstractContentDescriber implements ITextContentDescriber {
-
-	private final static QualifiedName[] SUPPORTED_OPTIONS = {IContentDescription.CHARSET, IContentDescription.BYTE_ORDER_MARK, IContentDescriptionExtended.DETECTED_CHARSET, IContentDescriptionExtended.UNSUPPORTED_CHARSET, IContentDescriptionExtended.APPROPRIATE_DEFAULT};
-
-	private void calculateSupportedOptions(InputStream contents, IContentDescription description) throws IOException {
-		if (isRelevent(description)) {
-			IResourceCharsetDetector detector = getDetector();
-			detector.set(contents);
-			handleCalculations(description, detector);
-		}
-	}
-
-	/**
-	 * @param contents
-	 * @param description
-	 * @throws IOException
-	 */
-	private void calculateSupportedOptions(Reader contents, IContentDescription description) throws IOException {
-		if (isRelevent(description)) {
-			IResourceCharsetDetector detector = getDetector();
-			detector.set(contents);
-			handleCalculations(description, detector);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.IContentDescriber#describe(java.io.InputStream,
-	 *      org.eclipse.core.runtime.content.IContentDescription)
-	 */
-	public int describe(InputStream contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.VALID;
-
-		calculateSupportedOptions(contents, description);
-
-		// assume if we're called at all that we are valid (few types could be
-		// disproved, maybe XML -- or, maybe if exception occurs above?)
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.ITextContentDescriber#describe(java.io.Reader,
-	 *      org.eclipse.core.runtime.content.IContentDescription)
-	 */
-	public int describe(Reader contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.VALID;
-
-		calculateSupportedOptions(contents, description);
-
-		// assume if we're called at all that we are valid (few types could be
-		// disproved, maybe XML -- or, maybe if exception occurs above?)
-		return result;
-	}
-
-	protected abstract IResourceCharsetDetector getDetector();
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.IContentDescriber#getSupportedOptions()
-	 */
-	public QualifiedName[] getSupportedOptions() {
-
-		return SUPPORTED_OPTIONS;
-	}
-
-	/**
-	 * @param description
-	 * @param detector
-	 * @throws IOException
-	 */
-	protected void handleCalculations(IContentDescription description, IResourceCharsetDetector detector) throws IOException {
-		// note: if we're asked for one, we set them all. I need to be sure if
-		// called
-		// mulitiple times (one for each, say) that we don't waste time
-		// processing same
-		// content again.
-		EncodingMemento encodingMemento = detector.getEncodingMemento();
-		// TODO: I need to verify to see if this BOM work is always done
-		// by text type.
-		Object detectedByteOrderMark = encodingMemento.getUnicodeBOM();
-		if (detectedByteOrderMark != null) {
-			Object existingByteOrderMark = description.getProperty(IContentDescription.BYTE_ORDER_MARK);
-			// not sure why would ever be different, so if is different, may
-			// need to "push" up into base.
-			if (!detectedByteOrderMark.equals(existingByteOrderMark))
-				description.setProperty(IContentDescription.BYTE_ORDER_MARK, detectedByteOrderMark);
-		}
-
-
-		if (!encodingMemento.isValid()) {
-			// note: after setting here, its the mere presence of
-			// IContentDescriptionExtended.UNSUPPORTED_CHARSET
-			// in the resource's description that can be used to determine if
-			// invalid
-			// in those cases, the "detected" property contains an
-			// "appropriate default" to use.
-			description.setProperty(IContentDescriptionExtended.UNSUPPORTED_CHARSET, encodingMemento.getInvalidEncoding());
-			description.setProperty(IContentDescriptionExtended.APPROPRIATE_DEFAULT, encodingMemento.getAppropriateDefault());
-		}
-
-		Object detectedCharset = encodingMemento.getDetectedCharsetName();
-		Object javaCharset = encodingMemento.getJavaCharsetName();
-
-		// we always include detected, if its different than java
-		handleDetectedSpecialCase(description, detectedCharset, javaCharset);
-
-		if (javaCharset != null) {
-			Object existingCharset = description.getProperty(IContentDescription.CHARSET);
-			if (javaCharset.equals(existingCharset)) {
-				handleDetectedSpecialCase(description, detectedCharset, javaCharset);
-			} else {
-				// we may need to add what we found, but only need to add
-				// if different from default.the
-				Object defaultCharset = getDetector().getSpecDefaultEncoding();
-				if (defaultCharset != null) {
-					if (!defaultCharset.equals(javaCharset)) {
-						description.setProperty(IContentDescription.CHARSET, javaCharset);
-					}
-				} else {
-					// assuming if there is no spec default, we always need to
-					// add, I'm assuming
-					description.setProperty(IContentDescription.CHARSET, javaCharset);
-				}
-			}
-		}
-
-		// avoid adding anything if not absolutly needed, since always
-		// "cached" per session
-		//description.setProperty(IContentDescriptionExtended.ENCODING_MEMENTO,
-		// encodingMemento);
-	}
-
-	private void handleDetectedSpecialCase(IContentDescription description, Object detectedCharset, Object javaCharset) {
-		// since equal, we don't need to add, but if our detected version is
-		// different than
-		// javaCharset, then we should add it. This will happen, for example,
-		// if there's
-		// differences in case, or differences due to override properties
-		if (detectedCharset != null) {
-			//			if (!detectedCharset.equals(javaCharset)) {
-			//				description.setProperty(IContentDescriptionExtended.DETECTED_CHARSET,
-			// detectedCharset);
-			//			}
-
-			// Once we detected a charset, we should set the property even
-			// though it's the same as javaCharset
-			// because there are clients that rely on this property to
-			// determine if the charset is actually detected in file or not.
-			description.setProperty(IContentDescriptionExtended.DETECTED_CHARSET, detectedCharset);
-		}
-	}
-
-	/**
-	 * @param description
-	 * @return
-	 */
-	private boolean isRelevent(IContentDescription description) {
-		boolean result = false;
-		if (description == null)
-			result = false;
-		else if (description.isRequested(IContentDescription.BYTE_ORDER_MARK))
-			result = true;
-		else if (description.isRequested(IContentDescription.CHARSET))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.APPROPRIATE_DEFAULT))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.DETECTED_CHARSET))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.UNSUPPORTED_CHARSET))
-			result = true;
-		//		else if
-		// (description.isRequested(IContentDescriptionExtended.ENCODING_MEMENTO))
-		//			result = true;
-		return result;
-	}
-
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/AbstractResourceEncodingDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/AbstractResourceEncodingDetector.java
deleted file mode 100644
index 532524f..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/AbstractResourceEncodingDetector.java
+++ /dev/null
@@ -1,258 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.jst.jsp.core.internal.contenttype;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-import java.nio.charset.Charset;
-import java.nio.charset.IllegalCharsetNameException;
-import java.nio.charset.UnsupportedCharsetException;
-
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.sse.core.internal.encoding.CodedIO;
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-import org.eclipse.wst.sse.core.internal.encoding.util.ByteReader;
-
-
-public abstract class AbstractResourceEncodingDetector implements IResourceCharsetDetector {
-
-	protected EncodingMemento fEncodingMemento;
-
-	protected boolean fHeaderParsed;
-
-	protected Reader fReader;
-
-	/**
-	 *  
-	 */
-	public AbstractResourceEncodingDetector() {
-		super();
-	}
-
-	/**
-	 * Note: once this instance is created, trace info still needs to be
-	 * appended by caller, depending on the context its created.
-	 */
-	private void createEncodingMemento(String detectedCharsetName) {
-		fEncodingMemento = new EncodingMemento();
-		fEncodingMemento.setJavaCharsetName(getAppropriateJavaCharset(detectedCharsetName));
-		fEncodingMemento.setDetectedCharsetName(detectedCharsetName);
-		// TODO: if detectedCharset and spec default is
-		// null, need to use "work
-		// bench based" defaults.
-		fEncodingMemento.setAppropriateDefault(getSpecDefaultEncoding());
-	}
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 * 
-	 * @param detectedCharsetName
-	 * @param reason
-	 */
-	final protected void createEncodingMemento(String detectedCharsetName, String reason) {
-		createEncodingMemento(detectedCharsetName);
-	}
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 */
-	final protected void ensureInputSet() {
-		if (fReader == null) {
-			throw new IllegalStateException("input must be set before use"); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * This method can return null, if invalid charset name (in which case
-	 * "appropriateDefault" should be used, if a name is really need for some
-	 * "save anyway" cases).
-	 * 
-	 * @param detectedCharsetName
-	 * @return
-	 */
-	private String getAppropriateJavaCharset(String detectedCharsetName) {
-		String result = null;
-		// 1. Check explicit mapping overrides from
-		// property file -- its here we pick up "rules" for cases
-		// that are not even in Java
-		result = CodedIO.checkMappingOverrides(detectedCharsetName);
-		// 2. Use the "canonical" name from JRE mappings
-		// Note: see Charset JavaDoc, the name you get one
-		// with can be alias,
-		// the name you get back is "standard" name.
-		Charset javaCharset = null;
-		try {
-			javaCharset = Charset.forName(detectedCharsetName);
-		} catch (UnsupportedCharsetException e) {
-			// only set invalid, if result is same as detected -- they won't
-			// be equal if
-			// overridden
-			if (result != null && result.equals(detectedCharsetName)) {
-				fEncodingMemento.setInvalidEncoding(detectedCharsetName);
-			}
-		} catch (IllegalCharsetNameException e) {
-			// only set invalid, if result is same as detected -- they won't
-			// be equal if
-			// overridden
-			if (result != null && result.equals(detectedCharsetName)) {
-				fEncodingMemento.setInvalidEncoding(detectedCharsetName);
-			}
-		}
-		// give priority to java cononical name, if present
-		if (javaCharset != null) {
-			result = javaCharset.name();
-			// but still allow overrides
-			result = CodedIO.checkMappingOverrides(result);
-		}
-		return result;
-	}
-
-	public String getEncoding() throws IOException {
-		return getEncodingMemento().getDetectedCharsetName();
-	}
-
-	// to ensure consist overall rules used, we'll mark as
-	// final,
-	// and require subclasses to provide certain pieces of
-	// the
-	// implementation
-	public EncodingMemento getEncodingMemento() throws IOException {
-		ensureInputSet();
-		if (!fHeaderParsed) {
-			parseInput();
-			// we keep track of if header's already been
-			// parse, so can make
-			// multiple 'get' calls, without causing
-			// reparsing.
-			fHeaderParsed = true;
-			// Note: there is a "hidden assumption" here
-			// that an empty
-			// string in content should be treated same as
-			// not present.
-		}
-		if (fEncodingMemento == null) {
-			handleSpecDefault();
-		}
-		if (fEncodingMemento == null) {
-			// safty net
-			fEncodingMemento = new NullMemento();
-		}
-		return fEncodingMemento;
-	}
-
-	/**
-	 * This is to return a default encoding -- as specified by an industry
-	 * content type spec -- when not present in the stream, for example, XML
-	 * specifies UTF-8, JSP specifies ISO-8859-1. This method should return
-	 * null if there is no such "spec default".
-	 */
-	abstract public String getSpecDefaultEncoding();
-
-	public EncodingMemento getSpecDefaultEncodingMemento() {
-		resetAll();
-		EncodingMemento result = null;
-		String enc = getSpecDefaultEncoding();
-		if (enc != null) {
-			createEncodingMemento(enc, EncodingMemento.DEFAULTS_ASSUMED_FOR_EMPTY_INPUT);
-			fEncodingMemento.setAppropriateDefault(enc);
-			result = fEncodingMemento;
-		}
-		return result;
-	}
-
-	private void handleSpecDefault() {
-		String encodingName;
-		encodingName = getSpecDefaultEncoding();
-		if (encodingName != null) {
-			//createEncodingMemento(encodingName,
-			// EncodingMemento.USED_CONTENT_TYPE_DEFAULT);
-			fEncodingMemento = new EncodingMemento();
-			fEncodingMemento.setJavaCharsetName(encodingName);
-			fEncodingMemento.setAppropriateDefault(encodingName);
-		}
-	}
-
-	/**
-	 * Every subclass must provide a way to parse the input. This method has
-	 * several critical responsibilities:
-	 * <li>set the fEncodingMemento field appropriately, according to the
-	 * results of the parse of fReader.</li>
-	 * <li>set fHarderParsed to true, to avoid wasted re-parsing.</li>
-	 */
-	abstract protected void parseInput() throws IOException;
-
-	/**
-	 *  
-	 */
-	private void resetAll() {
-		fReader = null;
-		fHeaderParsed = false;
-		fEncodingMemento = null;
-	}
-
-	/**
-	 *  
-	 */
-	public void set(InputStream inputStream) {
-		resetAll();
-		fReader = new ByteReader(inputStream);
-		try {
-			fReader.mark(CodedIO.MAX_MARK_SIZE);
-		} catch (IOException e) {
-			// impossible, since we know ByteReader
-			// supports marking
-			throw new Error(e);
-		}
-	}
-
-	/**
-	 *  
-	 */
-	public void set(IStorage iStorage) throws CoreException {
-		resetAll();
-		InputStream inputStream = iStorage.getContents();
-		InputStream resettableStream = new BufferedInputStream(inputStream, CodedIO.MAX_BUF_SIZE);
-		resettableStream.mark(CodedIO.MAX_MARK_SIZE);
-		set(resettableStream);
-		// TODO we'll need to "remember" IFile, or
-		// get its (or its project's) settings, in case
-		// those are needed to handle cases when the
-		// encoding is not in the file stream.
-	}
-
-	/**
-	 * Note: this is not part of interface to help avoid confusion ... it
-	 * expected this Reader is a well formed character reader ... that is, its
-	 * all ready been determined to not be a unicode marked input stream. And,
-	 * its assumed to be in the correct position, at position zero, ready to
-	 * read first character.
-	 */
-	public void set(Reader reader) {
-		resetAll();
-		fReader = reader;
-		if (!fReader.markSupported()) {
-			fReader = new BufferedReader(fReader);
-		}
-		try {
-			fReader.mark(CodedIO.MAX_MARK_SIZE);
-		} catch (IOException e) {
-			// impossble, since we just checked if markable
-			throw new Error(e);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ContentDescriberForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ContentDescriberForJSP.java
deleted file mode 100644
index 3f6a6d0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/ContentDescriberForJSP.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contenttype;
-
-import java.io.IOException;
-
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.ITextContentDescriber;
-import org.eclipse.wst.sse.core.internal.encoding.IContentDescriptionExtended;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-
-public class ContentDescriberForJSP extends AbstractContentDescriber implements ITextContentDescriber {
-	private final static QualifiedName[] SUPPORTED_OPTIONS = {
-				IContentDescription.CHARSET, 
-				IContentDescription.BYTE_ORDER_MARK, 
-				IContentDescriptionExtended.DETECTED_CHARSET, 
-				IContentDescriptionExtended.UNSUPPORTED_CHARSET, 
-				IContentDescriptionExtended.APPROPRIATE_DEFAULT,
-				IContentDescriptionForJSP.CONTENT_TYPE_ATTRIBUTE, 
-				IContentDescriptionForJSP.LANGUAGE_ATTRIBUTE};
-
-	public QualifiedName[] getSupportedOptions() {
-		return SUPPORTED_OPTIONS;
-	}
-
-	protected IResourceCharsetDetector getDetector() {
-		return new JSPResourceEncodingDetector();
-	}
-
-	protected void handleCalculations(IContentDescription description, IResourceCharsetDetector detector) throws IOException {
-		// handle standard ones first, to be sure detector processes
-		super.handleCalculations(description, detector);
-		// now do those specific for JSPs
-		// note: detector should always be of correct instance, but we'll check, for now.
-		if (detector instanceof JSPResourceEncodingDetector) {
-			JSPResourceEncodingDetector jspDetector = (JSPResourceEncodingDetector) detector;
-			String language = jspDetector.getLanguage();
-			if (language != null && language.length() > 0) {
-				description.setProperty(IContentDescriptionForJSP.LANGUAGE_ATTRIBUTE, language);
-			}
-			String contentTypeAttribute = jspDetector.getContentType(); 
-			if (contentTypeAttribute != null && contentTypeAttribute.length() > 0) {
-				description.setProperty(IContentDescriptionForJSP.CONTENT_TYPE_ATTRIBUTE, contentTypeAttribute);
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/HeadParserToken.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/HeadParserToken.java
deleted file mode 100644
index 5a93e08..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/HeadParserToken.java
+++ /dev/null
@@ -1,44 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.jst.jsp.core.internal.contenttype;
-
-public class HeadParserToken {
-	private int fStart;
-
-	private String fText;
-	private String fType;
-
-	protected HeadParserToken() {
-		super();
-	}
-
-	public HeadParserToken(String type, int start, String text) {
-		this();
-		fType = type;
-		fStart = start;
-		fText = text;
-
-	}
-
-	public String getText() {
-		return fText;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return ("text: " + fText + " offset: " + fStart + " type: " + fType); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IContentDescriptionForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IContentDescriptionForJSP.java
deleted file mode 100644
index 2b7a4af..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IContentDescriptionForJSP.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contenttype;
-
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.wst.sse.core.internal.encoding.ICodedResourcePlugin;
-
-
-public interface IContentDescriptionForJSP {
-	/**
-	 * This should not be considered API at this point. It should probably be
-	 * moved in future.
-	 */
-	public final static QualifiedName CONTENT_TYPE_ATTRIBUTE = new QualifiedName(ICodedResourcePlugin.ID, "contentTypeAttribute"); //$NON-NLS-1$
-	public final static QualifiedName LANGUAGE_ATTRIBUTE = new QualifiedName(ICodedResourcePlugin.ID, "languageAttribute"); //$NON-NLS-1$
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IntStack.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IntStack.java
deleted file mode 100644
index e04d0a2..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/IntStack.java
+++ /dev/null
@@ -1,99 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.jst.jsp.core.internal.contenttype;
-
-/*
- * 
- * A non-resizable class implementing the behavior of java.util.Stack, but
- * directly for the <code> integer </code> primitive.
- */
-import java.util.EmptyStackException;
-
-public class IntStack {
-	private int[] list = null;
-
-	private int size = 0;
-
-	public IntStack() {
-		this(100);
-	}
-
-	public IntStack(int maxdepth) {
-		super();
-		list = new int[maxdepth];
-		initialize();
-	}
-
-	public void clear() {
-		initialize();
-	}
-
-	public boolean empty() {
-		return size == 0;
-	}
-
-	public int get(int slot) {
-		return list[slot];
-	}
-
-	private void initialize() {
-		for (int i = 0; i < list.length; i++)
-			list[i] = -1;
-	}
-
-	/**
-	 * Returns the int at the top of the stack without removing it
-	 * 
-	 * @return int at the top of this stack.
-	 * @exception EmptyStackException
-	 *                when empty.
-	 */
-	public int peek() {
-		if (size == 0)
-			throw new EmptyStackException();
-		return list[size - 1];
-	}
-
-	/**
-	 * Removes and returns the int at the top of the stack
-	 * 
-	 * @return int at the top of this stack.
-	 * @exception EmptyStackException
-	 *                when empty.
-	 */
-	public int pop() {
-		int value = peek();
-		list[size - 1] = -1;
-		size--;
-		return value;
-	}
-
-	/**
-	 * Pushes an item onto the top of this stack.
-	 * 
-	 * @param newValue -
-	 *            the int to be pushed onto this stack.
-	 * @return the <code>newValue</code> argument.
-	 */
-	public int push(int newValue) {
-		if (size == list.length) {
-			throw new StackOverflowError();
-		}
-		list[size++] = newValue;
-		return newValue;
-	}
-
-	public int size() {
-		return list.length;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizer.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizer.java
deleted file mode 100644
index ff51ba8..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizer.java
+++ /dev/null
@@ -1,1323 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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
- *******************************************************************************/
-/* The following code was generated by JFlex 1.2.2 on 9/7/04 8:12 AM */
-
-/*nlsXXX*/
-package org.eclipse.jst.jsp.core.internal.contenttype;
-import java.io.IOException;
-import java.io.Reader;
-
-import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
-import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
-
-
-
-
-
-
-/**
- * This class is a scanner generated by 
- * <a href="http://www.informatik.tu-muenchen.de/~kleing/jflex/">JFlex</a> 1.2.2
- * on 9/7/04 8:12 AM from the specification file
- * <tt>file:/D:/DevTimeSupport/HeadParsers/JSPHeadTokenizer/JSPHeadTokenizer.jflex</tt>
- */
-public class JSPHeadTokenizer {
-
-  /** this character denotes the end of file */
-  final public static int YYEOF = -1;
-
-  /** lexical states */
-  final public static int YYINITIAL = 0;
-  final public static int UnDelimitedString = 12;
-  final public static int DQ_STRING = 8;
-  final public static int SQ_STRING = 10;
-  final public static int ST_XMLDecl = 2;
-  final public static int ST_PAGE_DIRECTIVE = 4;
-  final public static int QuotedAttributeValue = 6;
-
-  /**
-   * YY_LEXSTATE[l] is the state in the DFA for the lexical state l
-   * YY_LEXSTATE[l+1] is the state in the DFA for the lexical state l
-   *                  at the beginning of a line
-   * l is of the form l = 2*k, k a non negative integer
-   */
-  private final static int YY_LEXSTATE[] = { 
-     0,  1,  2,  2,  3,  3,  4,  4,  5,  5,  6,  6,  7, 7
-  };
-
-  /** 
-   * Translates characters to character classes
-   */
-  final private static String yycmap_packed = 
-    "\11\0\1\6\1\7\2\0\1\11\22\0\1\6\1\0\1\45\2\0"+
-    "\1\17\1\0\1\46\6\0\1\36\1\44\12\0\1\27\1\0\1\12"+
-    "\1\10\1\41\1\13\1\20\1\22\1\0\1\33\1\30\1\24\1\0"+
-    "\1\23\1\0\1\31\1\25\1\0\1\16\1\15\1\37\1\40\1\21"+
-    "\1\0\1\32\1\26\1\34\1\42\1\35\1\0\1\14\1\43\7\0"+
-    "\1\22\1\0\1\33\1\30\1\24\1\0\1\23\1\0\1\31\1\25"+
-    "\1\0\1\16\1\15\1\37\1\40\1\21\1\0\1\32\1\26\1\34"+
-    "\1\42\1\35\1\0\1\14\1\43\101\0\1\4\3\0\1\5\17\0"+
-    "\1\3\16\0\1\1\20\0\1\3\16\0\1\1\1\2\170\0\1\2"+
-    "\ufe87\0";
-
-  /** 
-   * Translates characters to character classes
-   */
-  final private static char [] yycmap = yy_unpack_cmap(yycmap_packed);
-
-
-  /* error codes */
-  final private static int YY_UNKNOWN_ERROR = 0;
-  final private static int YY_ILLEGAL_STATE = 1;
-  final private static int YY_NO_MATCH = 2;
-  final private static int YY_PUSHBACK_2BIG = 3;
-
-  /* error messages for the codes above */
-  final private static String YY_ERROR_MSG[] = {
-    "Unkown internal scanner error",
-    "Internal error: unknown state",
-    "Error: could not match input",
-    "Error: pushback value was too large"
-  };
-
-  /** the input device */
-  private java.io.Reader yy_reader;
-
-  /** the current state of the DFA */
-  private int yy_state;
-
-  /** the current lexical state */
-  private int yy_lexical_state = YYINITIAL;
-
-  /** this buffer contains the current text to be matched and is
-      the source of the yytext() string */
-  private char yy_buffer[] = new char[16384];
-
-  /** the textposition at the last accepting state */
-  private int yy_markedPos;
-
-  /** the textposition at the last state to be included in yytext */
-  private int yy_pushbackPos;
-
-  /** the current text position in the buffer */
-  private int yy_currentPos;
-
-  /** startRead marks the beginning of the yytext() string in the buffer */
-  private int yy_startRead;
-
-  /** endRead marks the last character in the buffer, that has been read
-      from input */
-  private int yy_endRead;
-
-  /** number of newlines encountered up to the start of the matched text */
-// trivial hand edit to remove unused variable  private int yyline;
-
-  /** the number of characters up to the start of the matched text */
-  private int yychar;
-
-  /**
-   * the number of characters from the last newline up to the start of the 
-   * matched text
-   */
-//trivial hand edit to remove unused variable  private int yycolumn; 
-
-  /** 
-   * yy_atBOL == true <=> the scanner is currently at the beginning of a line
-   */
-  private boolean yy_atBOL;
-
-  /** yy_atEOF == true <=> the scanner has returned a value for EOF */
-  private boolean yy_atEOF;
-
-  /** denotes if the user-EOF-code has already been executed */
-  private boolean yy_eof_done;
-
-  /* user code: */
-
-
-
-	private boolean hasMore = true;
-	private final static int MAX_TO_SCAN = 1000;
-	StringBuffer string = new StringBuffer();
-	// state stack for easier state handling
-	private IntStack fStateStack = new IntStack();
-	private String valueText = null;
-
-
-	public JSPHeadTokenizer() {
-		super();
-	}
-
-	  public void reset (Reader in) {
-	  	/* the input device */
-	  	yy_reader = in;
-
-  		/* the current state of the DFA */
-  		yy_state = 0;
-
-  		/* the current lexical state */
-  		yy_lexical_state = YYINITIAL;
-
-  		/* this buffer contains the current text to be matched and is
-  		 the source of the yytext() string */
-  		java.util.Arrays.fill(yy_buffer, (char)0);
-
-  		/* the textposition at the last accepting state */
-  		yy_markedPos = 0;
-
-  		/* the textposition at the last state to be included in yytext */
-  		yy_pushbackPos = 0;
-
-  		/* the current text position in the buffer */
-  		yy_currentPos = 0;
-
-  		/* startRead marks the beginning of the yytext() string in the buffer */
-  		yy_startRead = 0;
-
-  		/**
-  		 * endRead marks the last character in the buffer, that has been read
-  		 * from input
-  		 */
-  		yy_endRead = 0;
-
-  		/* number of newlines encountered up to the start of the matched text */
-//  	 trivial hand edit to remove unused variable  yyline = 0;
-
-  		/* the number of characters up to the start of the matched text */
-  		yychar = 0;
-
-  		/**
-  		 * the number of characters from the last newline up to the start
-  		 * of the matched text
-  		 */
-//  	 trivial hand edit to remove unused variable    		yycolumn = 0;
-
-  		/**
-  		 * yy_atBOL == true <=> the scanner is currently at the beginning
-  		 * of a line
-  		 */
-  		yy_atBOL = false;
-
-  		/* yy_atEOF == true <=> the scanner has returned a value for EOF */
-  		yy_atEOF = false;
-
-  		/* denotes if the user-EOF-code has already been executed */
-  		yy_eof_done = false;
-
-
-  		fStateStack.clear();
-
-  		hasMore = true;
-
-		// its a little wasteful to "throw away" first char array generated
-		// by class init (via auto generated code), but we really do want
-		// a small buffer for our head parsers.
-		if (yy_buffer.length != MAX_TO_SCAN) {
-			yy_buffer = new char[MAX_TO_SCAN];
-		}
-
-
-  	}
-
-
-	public final HeadParserToken getNextToken() throws IOException {
-		String context = null;
-		context = primGetNextToken();
-		HeadParserToken result = null;
-		if (valueText != null) {
-			result = createToken(context, yychar, valueText);
-			valueText = null;
-		} else {
-			result = createToken(context, yychar, yytext());
-		}
-		return result;
-	}
-
-	public final boolean hasMoreTokens() {
-		return hasMore && yychar < MAX_TO_SCAN;
-	}
-	private void pushCurrentState() {
-		fStateStack.push(yystate());
-
-	}
-
-	private void popState() {
-		yybegin(fStateStack.pop());
-	}
-	private HeadParserToken createToken(String context, int start, String text) {
-		return new HeadParserToken(context, start, text);
-	}
-
-
-
-
-  /**
-   * Creates a new scanner
-   * There is also a java.io.InputStream version of this constructor.
-   *
-   * @param   in  the java.io.Reader to read input from.
-   */
-  public JSPHeadTokenizer(java.io.Reader in) {
-    this.yy_reader = in;
-  }
-
-  /**
-   * Creates a new scanner.
-   * There is also java.io.Reader version of this constructor.
-   *
-   * @param   in  the java.io.Inputstream to read input from.
-   */
-  public JSPHeadTokenizer(java.io.InputStream in) {
-    this(new java.io.InputStreamReader(in));
-  }
-
-  /** 
-   * Unpacks the compressed character translation table.
-   *
-   * @param packed   the packed character translation table
-   * @return         the unpacked character translation table
-   */
-  private static char [] yy_unpack_cmap(String packed) {
-    char [] map = new char[0x10000];
-    int i = 0;  /* index in packed string  */
-    int j = 0;  /* index in unpacked array */
-    while (i < 182) {
-      int  count = packed.charAt(i++);
-      char value = packed.charAt(i++);
-      do map[j++] = value; while (--count > 0);
-    }
-    return map;
-  }
-
-
-  /**
-   * Gets the next input character.
-   *
-   * @return      the next character of the input stream, EOF if the
-   *              end of the stream is reached.
-   * @exception   IOException  if any I/O-Error occurs
-   */
-  private int yy_advance() throws java.io.IOException {
-
-    /* standard case */
-    if (yy_currentPos < yy_endRead) return yy_buffer[yy_currentPos++];
-
-    /* if the eof is reached, we don't need to work hard */ 
-    if (yy_atEOF) return YYEOF;
-
-    /* otherwise: need to refill the buffer */
-
-    /* first: make room (if you can) */
-    if (yy_startRead > 0) {
-      System.arraycopy(yy_buffer, yy_startRead, 
-                       yy_buffer, 0, 
-                       yy_endRead-yy_startRead);
-
-      /* translate stored positions */
-      yy_endRead-= yy_startRead;
-      yy_currentPos-= yy_startRead;
-      yy_markedPos-= yy_startRead;
-      yy_pushbackPos-= yy_startRead;
-      yy_startRead = 0;
-    }
-
-    /* is the buffer big enough? */
-    if (yy_currentPos >= yy_buffer.length) {
-      /* if not: blow it up */
-      char newBuffer[] = new char[yy_currentPos*2];
-      System.arraycopy(yy_buffer, 0, newBuffer, 0, yy_buffer.length);
-      yy_buffer = newBuffer;
-    }
-
-    /* finally: fill the buffer with new input */
-    int numRead = yy_reader.read(yy_buffer, yy_endRead, 
-                                            yy_buffer.length-yy_endRead);
-
-    if ( numRead == -1 ) return YYEOF;
-
-    yy_endRead+= numRead;
-
-    return yy_buffer[yy_currentPos++];
-  }
-
-
-  /**
-   * Closes the input stream.
-   */
-  final public void yyclose() throws java.io.IOException {
-    yy_atEOF = true;            /* indicate end of file */
-    yy_endRead = yy_startRead;  /* invalidate buffer    */
-    yy_reader.close();
-  }
-
-
-  /**
-   * Returns the current lexical state.
-   */
-  final public int yystate() {
-    return yy_lexical_state;
-  }
-
-  /**
-   * Enters a new lexical state
-   *
-   * @param newState the new lexical state
-   */
-  final public void yybegin(int newState) {
-    yy_lexical_state = newState;
-  }
-
-
-  /**
-   * Returns the text matched by the current regular expression.
-   */
-  final public String yytext() {
-    return new String( yy_buffer, yy_startRead, yy_markedPos-yy_startRead );
-  }
-
-  /**
-   * Returns the length of the matched text region.
-   */
-  final public int yylength() {
-    return yy_markedPos-yy_startRead;
-  }
-
-
-  /**
-   * Reports an error that occured while scanning.
-   *
-   * @param   errorCode  the code of the errormessage to display
-   */
-  private void yy_ScanError(int errorCode) {
-    try {
-      System.out.println(YY_ERROR_MSG[errorCode]);
-    }
-    catch (ArrayIndexOutOfBoundsException e) {
-      System.out.println(YY_ERROR_MSG[YY_UNKNOWN_ERROR]);
-    }
-
-    System.exit(1);
-  } 
-
-
-  /**
-   * Pushes the specified amount of characters back into the input stream.
-   *
-   * They will be read again by then next call of the scanning method
-   *
-   * @param number  the number of characters to be read again.
-   *                This number must not be greater than yylength()!
-   */
-  private void yypushback(int number) {
-    if ( number > yylength() )
-      yy_ScanError(YY_PUSHBACK_2BIG);
-
-    yy_markedPos -= number;
-  }
-
-
-  /**
-   * Contains user EOF-code, which will be executed exactly once,
-   * when the end of file is reached
-   */
-  private void yy_do_eof() {
-    if (!yy_eof_done) {
-      yy_eof_done = true;
-    	hasMore=false;
-
-    }
-  }
-
-
-  /**
-   * Resumes scanning until the next regular expression is matched,
-   * the end of input is encountered or an I/O-Error occurs.
-   *
-   * @return      the next token
-   * @exception   IOException  if any I/O-Error occurs
-   */
-  public String primGetNextToken() throws java.io.IOException {
-    int yy_input;
-    int yy_action;
-
-
-    while (true) {
-
-      yychar+= yylength();
-
-      yy_atBOL = yy_markedPos <= 0 || yy_buffer[yy_markedPos-1] == '\n';
-      if (!yy_atBOL && yy_buffer[yy_markedPos-1] == '\r') {
-        yy_atBOL = yy_advance() != '\n';
-        if (!yy_atEOF) yy_currentPos--;
-      }
-
-      yy_action = -1;
-
-      yy_currentPos = yy_startRead = yy_markedPos;
-
-      if (yy_atBOL)
-        yy_state = YY_LEXSTATE[yy_lexical_state+1];
-      else
-        yy_state = YY_LEXSTATE[yy_lexical_state];
-
-
-      yy_forAction: {
-        while (true) {
-
-          yy_input = yy_advance();
-
-          if ( yy_input == YYEOF ) break yy_forAction;
-
-          yy_input = yycmap[yy_input];
-
-          boolean yy_isFinal = false;
-          boolean yy_noLookAhead = false;
-
-          yy_forNext: { switch (yy_state) {
-            case 0:
-              switch (yy_input) {
-                case 1: yy_isFinal = true; yy_state = 9; break yy_forNext;
-                case 2: yy_isFinal = true; yy_state = 10; break yy_forNext;
-                case 3: yy_isFinal = true; yy_state = 11; break yy_forNext;
-                case 10: yy_isFinal = true; yy_state = 12; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 8; break yy_forNext;
-              }
-
-            case 1:
-              switch (yy_input) {
-                case 1: yy_isFinal = true; yy_state = 9; break yy_forNext;
-                case 2: yy_isFinal = true; yy_state = 10; break yy_forNext;
-                case 3: yy_isFinal = true; yy_state = 11; break yy_forNext;
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 13; break yy_forNext;
-                case 10: yy_isFinal = true; yy_state = 14; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 8; break yy_forNext;
-              }
-
-            case 2:
-              switch (yy_input) {
-                case 11: yy_isFinal = true; yy_state = 15; break yy_forNext;
-                case 20: yy_isFinal = true; yy_state = 16; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 8; break yy_forNext;
-              }
-
-            case 3:
-              switch (yy_input) {
-                case 14: yy_isFinal = true; yy_state = 17; break yy_forNext;
-                case 15: yy_isFinal = true; yy_state = 18; break yy_forNext;
-                case 17: yy_isFinal = true; yy_state = 19; break yy_forNext;
-                case 27: yy_isFinal = true; yy_state = 20; break yy_forNext;
-                case 36: yy_isFinal = true; yy_state = 21; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 8; break yy_forNext;
-              }
-
-            case 4:
-              switch (yy_input) {
-                case 6: 
-                case 9: yy_isFinal = true; yy_state = 23; break yy_forNext;
-                case 7: yy_isFinal = true; yy_state = 24; break yy_forNext;
-                case 37: yy_isFinal = true; yy_noLookAhead = true; yy_state = 25; break yy_forNext;
-                case 38: yy_isFinal = true; yy_noLookAhead = true; yy_state = 26; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 22; break yy_forNext;
-              }
-
-            case 5:
-              switch (yy_input) {
-                case 7: 
-                case 9: yy_isFinal = true; yy_noLookAhead = true; yy_state = 28; break yy_forNext;
-                case 11: yy_isFinal = true; yy_state = 29; break yy_forNext;
-                case 15: yy_isFinal = true; yy_state = 30; break yy_forNext;
-                case 37: yy_isFinal = true; yy_noLookAhead = true; yy_state = 31; break yy_forNext;
-                case 38: yy_isFinal = true; yy_state = 32; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 27; break yy_forNext;
-              }
-
-            case 6:
-              switch (yy_input) {
-                case 7: 
-                case 9: yy_isFinal = true; yy_noLookAhead = true; yy_state = 28; break yy_forNext;
-                case 15: yy_isFinal = true; yy_state = 30; break yy_forNext;
-                case 38: yy_isFinal = true; yy_state = 33; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 27; break yy_forNext;
-              }
-
-            case 7:
-              switch (yy_input) {
-                case 11: 
-                case 15: yy_isFinal = true; yy_state = 30; break yy_forNext;
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_noLookAhead = true; yy_state = 34; break yy_forNext;
-                case 37: yy_isFinal = true; yy_noLookAhead = true; yy_state = 35; break yy_forNext;
-                case 38: yy_isFinal = true; yy_state = 36; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 27; break yy_forNext;
-              }
-
-            case 9:
-              switch (yy_input) {
-                case 2: yy_isFinal = true; yy_noLookAhead = true; yy_state = 37; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 10:
-              switch (yy_input) {
-                case 1: yy_isFinal = true; yy_noLookAhead = true; yy_state = 38; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 11:
-              switch (yy_input) {
-                case 4: yy_state = 39; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 12:
-              switch (yy_input) {
-                case 15: yy_state = 40; break yy_forNext;
-                case 21: yy_state = 41; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 13:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_state = 42; break yy_forNext;
-                case 10: yy_state = 43; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 14:
-              switch (yy_input) {
-                case 15: yy_state = 40; break yy_forNext;
-                case 21: yy_state = 41; break yy_forNext;
-                case 11: yy_state = 44; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 15:
-              switch (yy_input) {
-                case 33: yy_isFinal = true; yy_noLookAhead = true; yy_state = 45; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 16:
-              switch (yy_input) {
-                case 31: yy_state = 46; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 17:
-              switch (yy_input) {
-                case 18: yy_state = 47; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 18:
-              switch (yy_input) {
-                case 33: yy_isFinal = true; yy_noLookAhead = true; yy_state = 48; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 19:
-              switch (yy_input) {
-                case 18: yy_state = 49; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 20:
-              switch (yy_input) {
-                case 32: yy_state = 50; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 21:
-              switch (yy_input) {
-                case 33: yy_isFinal = true; yy_noLookAhead = true; yy_state = 51; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 23:
-              switch (yy_input) {
-                case 6: 
-                case 9: yy_isFinal = true; yy_state = 23; break yy_forNext;
-                case 7: yy_state = 52; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 22; break yy_forNext;
-              }
-
-            case 24:
-              switch (yy_input) {
-                case 6: 
-                case 9: yy_isFinal = true; yy_state = 23; break yy_forNext;
-                case 7: yy_state = 52; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 22; break yy_forNext;
-              }
-
-            case 29:
-              switch (yy_input) {
-                case 33: yy_isFinal = true; yy_noLookAhead = true; yy_state = 53; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 30:
-              switch (yy_input) {
-                case 33: yy_isFinal = true; yy_noLookAhead = true; yy_state = 54; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 32:
-              switch (yy_input) {
-                case 10: yy_state = 55; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 33:
-              switch (yy_input) {
-                case 10: yy_state = 55; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 36:
-              switch (yy_input) {
-                case 10: yy_state = 55; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 39:
-              switch (yy_input) {
-                case 5: yy_isFinal = true; yy_noLookAhead = true; yy_state = 56; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 40:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_state = 40; break yy_forNext;
-                case 16: yy_state = 57; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 41:
-              switch (yy_input) {
-                case 22: yy_state = 58; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 42:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_state = 42; break yy_forNext;
-                case 10: yy_state = 43; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 43:
-              switch (yy_input) {
-                case 11: yy_state = 44; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 44:
-              switch (yy_input) {
-                case 12: yy_state = 59; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 46:
-              switch (yy_input) {
-                case 27: yy_state = 60; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 47:
-              switch (yy_input) {
-                case 31: yy_state = 61; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 49:
-              switch (yy_input) {
-                case 19: yy_state = 62; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 50:
-              switch (yy_input) {
-                case 31: yy_state = 63; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 52:
-              switch (yy_input) {
-                case 6: 
-                case 9: yy_isFinal = true; yy_state = 23; break yy_forNext;
-                case 7: yy_state = 52; break yy_forNext;
-                default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 22; break yy_forNext;
-              }
-
-            case 55:
-              switch (yy_input) {
-                case 38: yy_isFinal = true; yy_noLookAhead = true; yy_state = 28; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 57:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_state = 57; break yy_forNext;
-                case 17: yy_state = 64; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 58:
-              switch (yy_input) {
-                case 17: yy_state = 65; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 59:
-              switch (yy_input) {
-                case 13: yy_state = 66; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 60:
-              switch (yy_input) {
-                case 32: yy_state = 67; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 61:
-              switch (yy_input) {
-                case 19: yy_state = 68; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 62:
-              switch (yy_input) {
-                case 20: yy_state = 69; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 63:
-              switch (yy_input) {
-                case 28: yy_state = 70; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 64:
-              switch (yy_input) {
-                case 18: yy_state = 71; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 65:
-              switch (yy_input) {
-                case 23: yy_state = 72; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 66:
-              switch (yy_input) {
-                case 14: yy_state = 73; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 67:
-              switch (yy_input) {
-                case 24: yy_state = 74; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 68:
-              switch (yy_input) {
-                case 34: yy_state = 75; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 69:
-              switch (yy_input) {
-                case 20: yy_state = 76; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 70:
-              switch (yy_input) {
-                case 20: yy_state = 77; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 71:
-              switch (yy_input) {
-                case 19: yy_state = 78; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 72:
-              switch (yy_input) {
-                case 24: yy_state = 79; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 73:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 80; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 74:
-              switch (yy_input) {
-                case 25: yy_state = 81; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 75:
-              switch (yy_input) {
-                case 18: yy_state = 82; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 76:
-              switch (yy_input) {
-                case 31: yy_state = 83; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 77:
-              switch (yy_input) {
-                case 31: yy_state = 84; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 78:
-              switch (yy_input) {
-                case 20: yy_state = 85; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 79:
-              switch (yy_input) {
-                case 25: yy_state = 86; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 80:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 80; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 81:
-              switch (yy_input) {
-                case 31: yy_state = 87; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 82:
-              switch (yy_input) {
-                case 19: yy_state = 88; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 83:
-              switch (yy_input) {
-                case 27: yy_state = 89; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 84:
-              switch (yy_input) {
-                case 28: yy_state = 90; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 85:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 91; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 86:
-              switch (yy_input) {
-                case 26: yy_state = 92; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 87:
-              switch (yy_input) {
-                case 19: yy_state = 93; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 88:
-              switch (yy_input) {
-                case 20: yy_state = 94; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 89:
-              switch (yy_input) {
-                case 32: yy_state = 95; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 90:
-              switch (yy_input) {
-                case 28: yy_state = 96; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 91:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 91; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 92:
-              switch (yy_input) {
-                case 20: yy_state = 97; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 93:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_state = 93; break yy_forNext;
-                case 8: yy_isFinal = true; yy_state = 98; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 94:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_state = 94; break yy_forNext;
-                case 8: yy_isFinal = true; yy_state = 99; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 95:
-              switch (yy_input) {
-                case 24: yy_state = 100; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 96:
-              switch (yy_input) {
-                case 35: yy_state = 101; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 97:
-              switch (yy_input) {
-                case 27: yy_state = 102; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 98:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 98; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 99:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 99; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 100:
-              switch (yy_input) {
-                case 25: yy_state = 103; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 101:
-              switch (yy_input) {
-                case 17: yy_state = 104; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 102:
-              switch (yy_input) {
-                case 28: yy_state = 105; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 103:
-              switch (yy_input) {
-                case 31: yy_state = 106; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 104:
-              switch (yy_input) {
-                case 20: yy_state = 107; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 105:
-              switch (yy_input) {
-                case 25: yy_state = 108; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 106:
-              switch (yy_input) {
-                case 19: yy_state = 109; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 107:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_state = 107; break yy_forNext;
-                case 8: yy_isFinal = true; yy_state = 110; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 108:
-              switch (yy_input) {
-                case 29: yy_state = 111; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 109:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_state = 109; break yy_forNext;
-                case 8: yy_isFinal = true; yy_state = 112; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 110:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 110; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 111:
-              switch (yy_input) {
-                case 20: yy_state = 113; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 112:
-              switch (yy_input) {
-                case 6: 
-                case 7: 
-                case 9: yy_isFinal = true; yy_state = 112; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 113:
-              switch (yy_input) {
-                case 30: yy_state = 114; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            case 114:
-              switch (yy_input) {
-                case 17: yy_state = 64; break yy_forNext;
-                default: break yy_forAction;
-              }
-
-            default:
-              yy_ScanError(YY_ILLEGAL_STATE);
-              break;
-          } }
-
-          if ( yy_isFinal ) {
-            yy_action = yy_state; 
-            yy_markedPos = yy_currentPos; 
-            if ( yy_noLookAhead ) break yy_forAction;
-          }
-
-        }
-      }
-
-
-      switch (yy_action) {    
-
-        case 33: 
-          {  popState(); valueText = string.toString(); return EncodingParserConstants.StringValue; }
-        case 116: break;
-        case 28: 
-          {  yypushback(1);popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue; }
-        case 117: break;
-        case 22: 
-        case 23: 
-          {  yypushback(1); yybegin(UnDelimitedString); string.setLength(0); }
-        case 118: break;
-        case 35: 
-        case 36: 
-          {  yypushback(1);popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue; }
-        case 119: break;
-        case 48: 
-          {  yybegin(YYINITIAL);  return JSPHeadTokenizerConstants.PageDirectiveEnd; }
-        case 120: break;
-        case 51: 
-          {  yybegin(YYINITIAL); return JSPHeadTokenizerConstants.PageDirectiveEnd; }
-        case 121: break;
-        case 53: 
-          {  yypushback(2); popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue; }
-        case 122: break;
-        case 54: 
-          {  yypushback(2);popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue; }
-        case 123: break;
-        case 80: 
-          { if (yychar == 0 ) {yybegin(ST_XMLDecl); return XMLHeadTokenizerConstants.XMLDeclStart;} }
-        case 124: break;
-        case 8: 
-        case 9: 
-        case 10: 
-        case 11: 
-        case 12: 
-        case 13: 
-        case 14: 
-        case 15: 
-        case 16: 
-        case 17: 
-        case 18: 
-        case 19: 
-        case 20: 
-        case 21: 
-        case 24: 
-          { if (yychar > MAX_TO_SCAN) {hasMore=false; return EncodingParserConstants.MAX_CHARS_REACHED;} }
-        case 125: break;
-        case 91: 
-          { yybegin(ST_PAGE_DIRECTIVE); return JSPHeadTokenizerConstants.PageDirectiveStart; }
-        case 126: break;
-        case 45: 
-          { yybegin(YYINITIAL); hasMore = false; return XMLHeadTokenizerConstants.XMLDeclEnd; }
-        case 127: break;
-        case 112: 
-          { pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageEncoding; }
-        case 128: break;
-        case 110: 
-          { pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageContentType; }
-        case 129: break;
-        case 99: 
-          { pushCurrentState(); yybegin(QuotedAttributeValue); return JSPHeadTokenizerConstants.PageLanguage; }
-        case 130: break;
-        case 98: 
-          { pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDelEncoding; }
-        case 131: break;
-        case 56: 
-          { hasMore = false; return EncodingParserConstants.UTF83ByteBOM; }
-        case 132: break;
-        case 37: 
-          { hasMore = false; return EncodingParserConstants.UTF16BE; }
-        case 133: break;
-        case 38: 
-          { hasMore = false; return EncodingParserConstants.UTF16LE; }
-        case 134: break;
-        case 31: 
-          {  popState(); valueText = string.toString(); return EncodingParserConstants.StringValue;  }
-        case 135: break;
-        case 27: 
-        case 29: 
-        case 30: 
-        case 32: 
-          {  string.append( yytext() );  }
-        case 136: break;
-        case 26: 
-          {  yybegin(SQ_STRING); string.setLength(0);  }
-        case 137: break;
-        case 25: 
-          {  yybegin(DQ_STRING); string.setLength(0);  }
-        case 138: break;
-        case 34: 
-          {  yypushback(1);popState(); valueText = string.toString(); return EncodingParserConstants.UnDelimitedStringValue;  }
-        case 139: break;
-        default: 
-          if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
-            yy_atEOF = true;
-            yy_do_eof();
-              { hasMore = false; return EncodingParserConstants.EOF; }
-          } 
-          else {
-            yy_ScanError(YY_NO_MATCH);
-          }
-      }
-    }
-  }    
-
-  /**
-   * Runs the scanner on input files.
-   *
-   * This main method is the debugging routine for the scanner.
-   * It prints each returned token to System.out until the end of
-   * file is reached, or an error occured.
-   *
-   * @param argv   the command line, contains the filenames to run
-   *               the scanner on.
-   */
-  public static void main(String argv[]) {
-    for (int i = 0; i < argv.length; i++) {
-      JSPHeadTokenizer scanner = null;
-      try {
-        scanner = new JSPHeadTokenizer( new java.io.FileReader(argv[i]) );
-      }
-      catch (java.io.FileNotFoundException e) {
-        System.out.println("File not found : \""+argv[i]+"\"");
-//        System.exit(1);
-      }
-//      catch (java.io.IOException e) {
-//        System.out.println("Error opening file \""+argv[i]+"\"");
-//        System.exit(1);
-//      }
-      catch (ArrayIndexOutOfBoundsException e) {
-        System.out.println("Usage : java JSPHeadTokenizer <inputfile>");
-       //System.exit(1);
-      }
-
-      try {
-        do {
-          System.out.println(scanner.primGetNextToken());
-        } while (!scanner.yy_atEOF);
-
-      }
-      catch (java.io.IOException e) {
-        System.out.println("An I/O error occured while scanning :");
-        System.out.println(e);
-        //System.exit(1);
-      }
-      catch (Exception e) {
-        e.printStackTrace();
-        //System.exit(1);
-      }
-    }
-  }
-
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizerConstants.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizerConstants.java
deleted file mode 100644
index 08fa5b9..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPHeadTokenizerConstants.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contenttype;
-
-import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
-
-public interface JSPHeadTokenizerConstants extends XMLHeadTokenizerConstants {
-	String PageDirectiveStart = "PageDirectiveStart"; //$NON-NLS-1$
-	String PageDirectiveEnd = "PageDirectiveEnd"; //$NON-NLS-1$
-	String PageLanguage = "PageLanguage"; //$NON-NLS-1$
-	String PageEncoding = "PageEncoding"; //$NON-NLS-1$
-	String PageContentType = "PageContentType"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPResourceEncodingDetector.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPResourceEncodingDetector.java
deleted file mode 100644
index 2760e9a..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/JSPResourceEncodingDetector.java
+++ /dev/null
@@ -1,257 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.contenttype;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-import java.util.regex.Pattern;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
-import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
-
-public class JSPResourceEncodingDetector extends AbstractResourceEncodingDetector implements IResourceCharsetDetector {
-
-	private String fPageEncodingValue = null;
-	private JSPHeadTokenizer fTokenizer = null;
-	private String fLanguage;
-
-	private String fContentTypeValue;
-	private String fXMLDecEncodingName;
-	private String fCharset;
-	private boolean unicodeCase;
-	private String fContentType;
-
-	protected void parseInput() throws IOException {
-		JSPHeadTokenizer tokenizer = getTokinizer();
-		tokenizer.reset(fReader);
-		parseHeader(tokenizer);
-		// unicode stream cases are created directly in parseHeader
-		if (!unicodeCase) {
-			String enc = getAppropriateEncoding();
-			if (enc != null && enc.length() > 0) {
-				createEncodingMemento(enc, EncodingMemento.FOUND_ENCODING_IN_CONTENT);
-			}
-		}
-	}
-
-	private JSPHeadTokenizer getTokinizer() {
-		if (fTokenizer == null) {
-			fTokenizer = new JSPHeadTokenizer();
-		}
-		return fTokenizer;
-	}
-
-	/**
-	 * There can sometimes be mulitple 'encodings' specified in a file. This
-	 * is an attempt to centralize the rules for deciding between them.
-	 * Returns encoding according to priority: 1. XML Declaration 2. page
-	 * directive pageEncoding name 3. page directive contentType charset name
-	 */
-	private String getAppropriateEncoding() {
-		String result = null;
-		if (fXMLDecEncodingName != null)
-			result = fXMLDecEncodingName;
-		else if (fPageEncodingValue != null)
-			result = fPageEncodingValue;
-		else if (fCharset != null)
-			result = fCharset;
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	public JSPResourceEncodingDetector() {
-		super();
-	}
-
-	public String getSpecDefaultEncoding() {
-		// by JSP Spec
-		final String enc = "ISO-8859-1"; //$NON-NLS-1$
-		return enc;
-	}
-
-	private boolean canHandleAsUnicodeStream(String tokenType) {
-		boolean canHandleAsUnicode = false;
-		if (tokenType == EncodingParserConstants.UTF83ByteBOM) {
-			canHandleAsUnicode = true;
-			String enc = "UTF-8"; //$NON-NLS-1$
-			createEncodingMemento(enc, EncodingMemento.DETECTED_STANDARD_UNICODE_BYTES);
-			fEncodingMemento.setUTF83ByteBOMUsed(true);
-		}
-		else if (tokenType == EncodingParserConstants.UTF16BE) {
-			canHandleAsUnicode = true;
-			String enc = "UTF-16BE"; //$NON-NLS-1$
-			createEncodingMemento(enc, EncodingMemento.DETECTED_STANDARD_UNICODE_BYTES);
-		}
-		else if (tokenType == EncodingParserConstants.UTF16LE) {
-			canHandleAsUnicode = true;
-			String enc = "UTF-16"; //$NON-NLS-1$
-			createEncodingMemento(enc, EncodingMemento.DETECTED_STANDARD_UNICODE_BYTES);
-		}
-		return canHandleAsUnicode;
-	}
-
-	/**
-	 * Looks for what ever encoding properties the tokenizer returns. Its the
-	 * responsibility of the tokenizer to stop when appropriate and not go too
-	 * far.
-	 */
-	private void parseHeader(JSPHeadTokenizer tokenizer) throws IOException {
-		fPageEncodingValue = null;
-		fCharset = null;
-
-		HeadParserToken token = null;
-		do {
-			// don't use 'get' here (at least until reset issue fixed)
-			token = tokenizer.getNextToken();
-			String tokenType = token.getType();
-			if (canHandleAsUnicodeStream(tokenType))
-				unicodeCase = true;
-			else {
-
-				if (tokenType == XMLHeadTokenizerConstants.XMLDelEncoding) {
-					if (tokenizer.hasMoreTokens()) {
-						HeadParserToken valueToken = tokenizer.getNextToken();
-						String valueTokenType = valueToken.getType();
-						if (isLegalString(valueTokenType)) {
-							fXMLDecEncodingName = valueToken.getText();
-						}
-					}
-				}
-				else if (tokenType == JSPHeadTokenizerConstants.PageEncoding) {
-					if (tokenizer.hasMoreTokens()) {
-						HeadParserToken valueToken = tokenizer.getNextToken();
-						String valueTokenType = valueToken.getType();
-						if (isLegalString(valueTokenType)) {
-							fPageEncodingValue = valueToken.getText();
-						}
-					}
-				}
-				else if (tokenType == JSPHeadTokenizerConstants.PageContentType) {
-					if (tokenizer.hasMoreTokens()) {
-						HeadParserToken valueToken = tokenizer.getNextToken();
-						String valueTokenType = valueToken.getType();
-						if (isLegalString(valueTokenType)) {
-							fContentTypeValue = valueToken.getText();
-						}
-					}
-				}
-				else if (tokenType == JSPHeadTokenizerConstants.PageLanguage) {
-					if (tokenizer.hasMoreTokens()) {
-						HeadParserToken valueToken = tokenizer.getNextToken();
-						String valueTokenType = valueToken.getType();
-						if (isLegalString(valueTokenType)) {
-							fLanguage = valueToken.getText();
-						}
-					}
-				}
-			}
-		}
-		while (tokenizer.hasMoreTokens());
-		if (fContentTypeValue != null) {
-			parseContentTypeValue(fContentTypeValue);
-		}
-
-	}
-
-	private boolean isLegalString(String valueTokenType) {
-		if (valueTokenType == null)
-			return false;
-		else
-			return valueTokenType.equals(EncodingParserConstants.StringValue) || valueTokenType.equals(EncodingParserConstants.UnDelimitedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTerminatedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue);
-	}
-
-	private void parseContentTypeValue(String contentType) {
-		Pattern pattern = Pattern.compile(";\\s*charset\\s*=\\s*"); //$NON-NLS-1$
-		String[] parts = pattern.split(contentType);
-		if (parts.length > 0) {
-			// if only one item, it can still be charset instead of
-			// contentType
-			if (parts.length == 1) {
-				if (parts[0].length() > 6) {
-					String checkForCharset = parts[0].substring(0, 7);
-					if (checkForCharset.equalsIgnoreCase("charset")) { //$NON-NLS-1$
-						int eqpos = parts[0].indexOf('=');
-						eqpos = eqpos + 1;
-						if (eqpos < parts[0].length()) {
-							fCharset = parts[0].substring(eqpos);
-							fCharset = fCharset.trim();
-						}
-					}
-				}
-			}
-			else {
-				fContentType = parts[0];
-			}
-		}
-		if (parts.length > 1) {
-			fCharset = parts[1];
-		}
-	}
-
-	/**
-	 *  
-	 */
-
-	public void set(IFile iFile) throws CoreException {
-		reset();
-		super.set(iFile);
-	}
-
-	private void reset() {
-		fCharset = null;
-		fContentTypeValue = null;
-		fPageEncodingValue = null;
-		fXMLDecEncodingName = null;
-		unicodeCase = false;
-	}
-
-	public void set(InputStream inputStream) {
-		reset();
-		super.set(inputStream);
-	}
-
-	public void set(Reader reader) {
-		reset();
-		super.set(reader);
-	}
-
-	public String getLanguage() throws IOException {
-		ensureInputSet();
-		if (!fHeaderParsed) {
-			parseInput();
-			fHeaderParsed = true;
-		}
-		return fLanguage;
-	}
-
-	/**
-	 * @return Returns the contentType.
-	 */
-	public String getContentType() throws IOException {
-		ensureInputSet();
-		if (!fHeaderParsed) {
-			parseInput();
-			// we keep track of if header's already been parse, so can make
-			// multiple 'get' calls, without causing reparsing.
-			fHeaderParsed = true;
-			// Note: there is a "hidden assumption" here that an empty
-			// string in content should be treated same as not present.
-		}
-		return fContentType;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/NullMemento.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/NullMemento.java
deleted file mode 100644
index 8c04324..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contenttype/NullMemento.java
+++ /dev/null
@@ -1,37 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.jst.jsp.core.internal.contenttype;
-
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.NonContentBasedEncodingRules;
-
-
-
-/**
- * This class can be used in place of an EncodingMemento (its super class),
- * when there is not in fact ANY encoding information. For example, when a
- * structuredDocument is created directly from a String
- */
-public class NullMemento extends EncodingMemento {
-	/**
-	 *  
-	 */
-	public NullMemento() {
-		super();
-		String defaultCharset = NonContentBasedEncodingRules.useDefaultNameRules(null);
-		setJavaCharsetName(defaultCharset);
-		setAppropriateDefault(defaultCharset);
-		setDetectedCharsetName(null);
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/DocumentFactoryForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/DocumentFactoryForJSP.java
deleted file mode 100644
index 2984e0d..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/DocumentFactoryForJSP.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.document;
-
-import org.eclipse.core.filebuffers.IDocumentFactory;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.wst.sse.core.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.parser.TagMarker;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-
-
-public class DocumentFactoryForJSP implements IDocumentFactory {
-
-	public DocumentFactoryForJSP() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.filebuffers.IDocumentFactory#createDocument()
-	 */
-	public IDocument createDocument() {
-		IStructuredDocument structuredDocument = StructuredDocumentFactory.getNewStructuredDocumentInstance(new JSPSourceParser());
-		return structuredDocument;
-	}
-
-	public RegionParser getParser() {
-		// remember, the Loader
-		// will need to finish initialization of parser
-		// based on "embedded content"
-		JSPSourceParser parser = new JSPSourceParser();
-		// add default nestable tag list
-		addNestablePrefix(parser, JSP11Namespace.JSP_TAG_PREFIX);
-		return parser;
-	}
-
-	private void addNestablePrefix(JSPSourceParser parser, String tagName) {
-		TagMarker bm = new TagMarker(tagName);
-		parser.addNestablePrefix(bm);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterFactory.java
deleted file mode 100644
index 050d48c..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterFactory.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.document;
-
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.contentproperties.ContentSettingsChangeSubject;
-import org.eclipse.wst.sse.ui.util.Assert;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.Node;
-
-/**
- * This class adapts document 
- * with the an instance of PageDirectiveAdapter
- */
-public class PageDirectiveAdapterFactory extends AbstractAdapterFactory implements IAdapterFactory {
-
-
-	private PageDirectiveAdapter pageDirectiveAdapterInstance = null;
-
-	/**
-	 * Constructor for PageDirectiveAdapterFactory.
-	 * Note: its important not to be a singleton, since
-	 * this factory needs to track its adapter(s) and release
-	 * them when they are released.
-	 * 
-	 * @param adapterKey
-	 * @param registerAdapters
-	 */
-	protected PageDirectiveAdapterFactory(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	/**
-	 * The no argument constructor assumes its a 
-	 * Factory for PageDirectiveAdapter
-	 */
-	public PageDirectiveAdapterFactory() {
-		this(PageDirectiveAdapter.class, true);
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		PageDirectiveAdapter result = null;
-		if (target instanceof XMLNode) {
-			XMLNode node = (XMLNode) target;
-			if (node.getNodeType() == Node.DOCUMENT_NODE) {
-				result = getAdapterInstance(target);
-				ContentSettingsChangeSubject.getSubject().addListener(result);
-
-			}
-
-		}
-		return result;
-	}
-
-	public void release() {
-		if (pageDirectiveAdapterInstance != null) {
-			ContentSettingsChangeSubject.getSubject().removeListener(pageDirectiveAdapterInstance);
-		}
-	}
-
-	/**
-	 * We assume this is only called for 'document' target
-	 */
-	protected PageDirectiveAdapter getAdapterInstance(INodeNotifier target) {
-		// if our instance already exists with a different
-		// target, then, somehow, the document node must 
-		// have changed for a model, so we should release 
-		// old adapter and create new one for new document 
-		// node. This is probably a programming error.
-		if (pageDirectiveAdapterInstance != null) {
-			if (target != pageDirectiveAdapterInstance.getTarget()) {
-				release();
-				pageDirectiveAdapterInstance = new PageDirectiveAdapterImpl(target);
-			}
-			// else return the one we have
-		}
-		else {
-			// if is equal to null, create a new one
-			pageDirectiveAdapterInstance = new PageDirectiveAdapterImpl(target);
-		}
-		Assert.isNotNull(pageDirectiveAdapterInstance);
-		return pageDirectiveAdapterInstance;
-	}
-
-	public IAdapterFactory copy() {
-
-		return new PageDirectiveAdapterFactory(this.adapterKey, this.shouldRegisterAdapter);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterImpl.java
deleted file mode 100644
index 32c235e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveAdapterImpl.java
+++ /dev/null
@@ -1,613 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.document;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.StringTokenizer;
-
-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.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.IDocumentExtension3;
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
-import org.eclipse.jst.jsp.core.modelhandler.EmbeddedTypeStateData;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistry;
-import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistryImpl;
-import org.eclipse.wst.sse.core.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLNode;
-
-/**
- * This class has the responsibility to provide 
- * an embedded factory registry for JSP Aware INodeAdapter Factories
- * to use. 
- * 
- * Typically, the embedded type is to be considered a feature of 
- * the document, so JSP Aware AdpaterFactories should call
- * getAdapter(PageDirectiveAdapter.class) directoy on the document
- * (or owning document) node.
- */
-public class PageDirectiveAdapterImpl implements PageDirectiveAdapter {
-
-	protected static final String STR_CHARSET = "charset"; //$NON-NLS-1$
-	private final static Object adapterType = PageDirectiveAdapter.class;
-	private IStructuredModel model;
-	protected final String[] JAVASCRIPT_LANGUAGE_KEYS = new String[]{"javascript", "javascript1.0", "javascript1.1_3", "javascript1.2", "javascript1.3", "javascript1.4", "javascript1.5", "javascript1.6", "jscript", "sashscript"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ //$NON-NLS-7$ //$NON-NLS-8$ //$NON-NLS-9$ //$NON-NLS-10$
-	protected final String[] JAVA_LANGUAGE_KEYS = new String[]{"java"}; //$NON-NLS-1$
-
-	/**
-	 * Constructor for PageDirectiveAdapterImpl.
-	 */
-	public PageDirectiveAdapterImpl(INodeNotifier target) {
-		super();
-		notifierAtCreation = target;
-		// we need to remember our instance of model, 
-		// in case we need to "signal" a re-init needed.
-		if (target instanceof XMLNode) {
-			XMLNode node = (XMLNode) target;
-			model = node.getModel();
-		}
-
-	}
-
-	/**
-	 * parses the full contentType value into its two parts
-	 * the contentType, and the charset, if present. Note: this 
-	 * method is a lightly modified version of a method in AbstractHeadParser.
-	 * There, we're mostly interested in the charset part of contentTypeValue. 
-	 * Here, we're mostly interested in the mimeType part.
-	 */
-	private String getMimeTypeFromContentTypeValue(String contentTypeValue) {
-		if (contentTypeValue == null)
-			return null;
-		String cleanContentTypeValue = StringUtils.stripNonLetterDigits(contentTypeValue);
-		StringTokenizer tokenizer = new StringTokenizer(cleanContentTypeValue, ";= \t\n\r\f"); //$NON-NLS-1$
-		int tLen = tokenizer.countTokens();
-		// if contains encoding should have three tokens, the mimetype, the word 'charset', and the encoding value
-		String[] tokens = new String[tLen];
-		int j = 0;
-		while (tokenizer.hasMoreTokens()) {
-			tokens[j] = tokenizer.nextToken();
-			j++;
-		}
-		// 
-		// Following is the common form for target expression		
-		// <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-		// But apparrently is also valid without the content type there, 
-		// just the charset, as follows:
-		// <META http-equiv="Content-Type" content="charset=UTF-8">
-		// So we'll loop through tokens and key off of 'charset'
-
-		int charsetPos = -1;
-		for (int i = 0; i < tokens.length; i++) {
-			if (tokens[i].equalsIgnoreCase(STR_CHARSET)) {
-				charsetPos = i;
-				break;
-			}
-		}
-		//String charset = null;
-		String contentType = null;
-		if (charsetPos > -1) {
-			// case where charset was present
-			//			int charsetValuePos = charsetPos + 1;
-			//			if (charsetValuePos < tokens.length) {
-			//				charset = tokens[charsetValuePos];
-			//			}
-			int contentTypeValuePos = charsetPos - 1;
-			if (contentTypeValuePos > -1) {
-				contentType = tokens[contentTypeValuePos];
-			}
-		}
-		else {
-			// charset was not present, so if there's 
-			// a value, we assume its the contentType value
-			if (tokens.length > 0) {
-				contentType = tokens[0];
-			}
-		}
-		return contentType;
-	}
-
-	private EmbeddedTypeHandler embeddedTypeHandler;
-	private List embeddedFactoryRegistry = new ArrayList();
-	private String cachedLanguage;
-	private String cachedContentType;
-	private INodeNotifier notifierAtCreation;
-
-	private int firstLanguagePosition = -1;
-	private int firstContentTypePosition = -1;
-
-	private boolean reinitializing;
-
-	/*
-	 * @see INodeAdapter#isAdapterForType(Object)
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == adapterType);
-	}
-
-	/*
-	 * @see INodeAdapter#notifyChanged(INodeNotifier, int, Object, Object, Object, int)
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	public void setEmbeddedType(EmbeddedTypeHandler handler) {
-		// if really the same handler, no need for further processing
-		if (embeddedTypeHandler == handler) {
-			return;
-		}
-		// then one exists, and the new one is truely different, so we need to 
-		// release and remove current factories
-		if (embeddedTypeHandler != null) {
-			Iterator list = embeddedFactoryRegistry.iterator();
-			while (list.hasNext()) {
-				IAdapterFactory factory = (IAdapterFactory) list.next();
-				factory.release();
-			}
-
-			embeddedFactoryRegistry.clear();
-		}
-
-		embeddedTypeHandler = handler;
-		// when the handler is set, "transfer" its factories to our own list.
-		// note: our own list may also be added to else where, such as on
-		// "editor side".
-		if (embeddedTypeHandler != null) {
-			Iterator iterator = embeddedTypeHandler.getAdapterFactories().iterator();
-			while (iterator.hasNext()) {
-				IAdapterFactory factory = (IAdapterFactory) iterator.next();
-				embeddedFactoryRegistry.add(factory);
-			}
-		}
-	}
-
-	/**
-	 * @see PageDirectiveAdapter#adapt(INodeNotifier, Object)
-	 */
-	public INodeAdapter adapt(INodeNotifier notifier, Object type) {
-		INodeAdapter result = null;
-		// if embeddedContentType hasn't been set, 
-		// then we can not adapt it.
-		if (embeddedTypeHandler != null) {
-			if (embeddedFactoryRegistry != null) {
-				Iterator iterator = embeddedFactoryRegistry.iterator();
-				IAdapterFactory factory = null;
-				while (iterator.hasNext()) {
-					factory = (IAdapterFactory) iterator.next();
-					if (factory.isFactoryForType(type)) {
-						result = factory.adapt(notifier);
-						break;
-					}
-				}
-			}
-		}
-		return result;
-
-	}
-
-	/**
-	 * @see PageDirectiveAdapter#getEmbeddedType()
-	 */
-	public EmbeddedTypeHandler getEmbeddedType() {
-		if (embeddedTypeHandler == null) {
-			embeddedTypeHandler = getDefaultEmbeddedType();
-		}
-		return embeddedTypeHandler;
-	}
-
-	public void addEmbeddedFactory(IAdapterFactory factory) {
-		// should we check if already exists in list?
-		embeddedFactoryRegistry.add(factory);
-	}
-
-	//	/**
-	//	 * Used by PageDirectiveWatchers to signal that some important attribute has changed, and 
-	//	 * any cached values should be re-calcuated
-	//	 */
-	//	void changed() {
-	//		// we won't actually check if change is needed, if the model state is already changing.
-	//		if (!model.isReinitializationNeeded()) {
-	//			// go through our list of page watcher adapters, and updates the attributes 
-	//			// we're interested in, if and only if they are the earliest occurance in the resource
-	//			String potentialContentType = null;
-	//			String potentialLanguage = null;
-	//			int contentTypePosition = -1;
-	//			int languagePosition = -1;
-	//			Iterator iterator = pageDirectiveWatchers.iterator();
-	//			while (iterator.hasNext()) {
-	//				PageDirectiveWatcher pdWatcher = (PageDirectiveWatcher) iterator.next();
-	//				String contentType = pdWatcher.getContentType();
-	//				String language = pdWatcher.getLanguage();
-	//				int offset = pdWatcher.getOffset();
-	//				if (potentialContentType == null || (hasValue(contentType) && (offset < contentTypePosition))) {
-	//					potentialContentType = contentType;
-	//					contentTypePosition = offset;
-	//				}
-	//			}
-	//			// now we have the best candiates for cached values, let's see if they've really changed from 
-	//			// what we had. If so, note we go through the setters so side effects can take place there.
-	//			potentialContentType = getMimeTypeFromContentTypeValue(potentialContentType);
-	//			if (potentialContentType == null || potentialContentType.length() == 0) {
-	//				//potentialContentType = getDefaultContentType();
-	//			} else {
-	//				setCachedContentType(potentialContentType);
-	//			}
-	//
-	//			if (potentialLanguage != null && hasValue(potentialLanguage)) {
-	//				setCachedLanguage(potentialLanguage);
-	//			}
-	//		}
-	//	}
-	void changedContentType(int elementOffset, String newValue) {
-		// only need to process if this new value is 
-		// earlier in the file than our current value
-		if (firstContentTypePosition == -1 || elementOffset <= firstContentTypePosition) {
-			// dw_TODO: update embedded partitioner in JSP document partitioner
-			// nsd_TODO: update embedded partitioner in JSP document partitioner
-
-			// no need to change current value, if we're told some 
-			// earlier value is null or blank (sounds like an error, anyway)
-			if (hasValue(newValue)) {
-				firstContentTypePosition = elementOffset;
-				String potentialContentType = getMimeTypeFromContentTypeValue(newValue);
-				// only do the set processing if different
-				// from what it already is
-				//	if (!potentialContentType.equalsIgnoreCase(cachedLanguage)) {
-				setCachedContentType(potentialContentType);
-				//	}
-			}
-		}
-	}
-
-	/**
-	 * Used by PageDirectiveWatchers to signal that some important attribute has changed, and 
-	 * any cached values should be re-calcuated
-	 */
-	void changedLanguage(int elementOffset, String newValue) {
-		// only need to process if this new value is 
-		// earlier in the file than our current value
-		// has to be less than or equal to, in case our previous earliest one, 
-		// is itself changing!
-		if (firstLanguagePosition == -1 || elementOffset <= firstLanguagePosition) {
-
-			// no need to change current value, if we're told some 
-			// earlier value is null or blank (sounds like an error, anyway)
-			if (hasValue(newValue)) {
-				firstLanguagePosition = elementOffset;
-				// only do the set processing if different
-				// from what it already is
-				if (!newValue.equalsIgnoreCase(cachedLanguage)) {
-					setCachedLanguage(newValue);
-				}
-			}
-
-			// dw_TODO: set language in document partitioner
-			// nsd_TODO: set language in document partitioner
-		}
-	}
-
-	/**
-	 * Used by PageDirectiveWatchers to signal that some important attribute has changed, and 
-	 * any cached values should be re-calcuated
-	 */
-	void changedPageEncoding(int elementOffset, String newValue) {
-
-		// we don't currently track active value, since
-		// just need during read and write (where its 
-		// calculated. We will need in future, to 
-		// acurately clone a model and to display 
-		// "current encoding" to user in status bar.
-	}
-
-	/**
-	 * Method hasValue.
-	 * @param contentType
-	 * @return boolean
-	 */
-	private boolean hasValue(String value) {
-		if (value != null && value.length() > 0)
-			return true;
-		else
-			return false;
-	}
-
-	/**
-	 * Returns the cachedContentType.
-	 * @return String
-	 */
-	public String getContentType() {
-		if (cachedContentType == null) {
-			cachedContentType = getDefaultContentType();
-		}
-		return cachedContentType;
-	}
-
-	/**
-	 * Method getDefaultContentType.
-	 * @return String
-	 */
-	private String getDefaultContentType() {
-		return "text/html"; //$NON-NLS-1$
-	}
-
-	/**
-	 * Returns the cachedLanguage.
-	 * @return String
-	 */
-	public String getLanguage() {
-		if (cachedLanguage == null)
-			cachedLanguage = getDefaultLanguage();
-		return cachedLanguage;
-	}
-
-	/**
-	 * Method getDefaultLanguage.
-	 * @return String
-	 */
-	private String getDefaultLanguage() {
-		return "java"; //$NON-NLS-1$
-	}
-
-	/**
-	 * Sets the cachedContentType.
-	 * @param cachedContentType The cachedContentType to set
-	 */
-	public void setCachedContentType(String newContentType) {
-		// if the passed in value is the same as existing, there's nothing to do.
-		// if its different, then we need to change the contentHandler as well
-		// and, more to the point, signal a re-initializtation is needed.
-		// Note: if the value we're getting set to does not have a handler in the registry, 
-		// we'll actually not set it to null or anything, we'll just continue on with the one
-		// we have. This is pretty important to avoid re-initializing on every key stroke if someone 
-		// is typing in a new content type, but haven't yet finished the whole "word".
-		// However, if an contentType is not recognized, the registry returns the one 
-		// for XML.
-		//		if (this.cachedContentType != null && this.cachedContentType.equalsIgnoreCase(newContentType)) { // then do nothing
-		//		} else {
-		this.cachedContentType = newContentType;
-		// see if we can update embedded handler
-		//		if (this.cachedContentType == null || this.cachedContentType.length() == 0) { // do nothing, don't can't get a new handler, so we'll keep what we have
-		//		} else {
-
-		// getHandler should always return something (never null), based 
-		// on the rules in the factory. 
-		EmbeddedTypeHandler handler = getHandlerFor(this.cachedContentType);
-		// we do this check for re-init here, instead of in setEmbeddedType, 
-		// since setEmbeddedType is called during the normal initializtion 
-		// process, when re-init is not needed (since there is no content)
-		if (embeddedTypeHandler != null && handler != null && embeddedTypeHandler != handler) {
-			// changing this embedded handler here may 
-			// be in the middle of anotify loop, not sure
-			// if that'll cause problems.
-			
-			// be sure to hold oldHandler in temp var
-			// or else setEmbeddedType will "reset" it
-			// before modelReinitNeeded(oldHandler, handler) is called
-		    EmbeddedTypeHandler oldHandler = embeddedTypeHandler;
-			setEmbeddedType(handler);
-			modelReinitNeeded(oldHandler, handler);
-		}
-		//		}
-
-		//		}
-
-	}
-
-	/**
-	 * This method is used to re-init based on embeddedTypeHandler
-	 * changing. It is given priority over the language change, since
-	 * there its more important to have old and new handlers's in the 
-	 * stateData field.
-	 */
-	private void modelReinitNeeded(EmbeddedTypeHandler oldHandler, EmbeddedTypeHandler newHandler) {
-		if (model.isReinitializationNeeded()) {
-			System.out.println("already being initialized"); //$NON-NLS-1$
-		}
-
-		try {
-			model.aboutToChangeModel();
-			model.setReinitializeStateData(new EmbeddedTypeStateData(oldHandler, newHandler));
-			model.setReinitializeNeeded(true);
-		}
-		finally {
-			model.changedModel();
-		}
-	}
-
-	/**
-	 * Method modelReinitNeeded.
-	 */
-	private void modelReinitNeeded(String oldlanguage, String newLanguage) {
-		// bit of a short cut for now .... we dont' need language at the moment, 
-		// but should set the state data
-		if (model.isReinitializationNeeded()) {
-			if (Debug.displayWarnings) {
-				System.out.println("already being initialized"); //$NON-NLS-1$
-			}
-		}
-		else {
-			try {
-				// if already being re-initialized, we don't want to 
-				// reset the data in the stateData field.
-				model.aboutToChangeModel();
-				model.setReinitializeStateData(newLanguage);
-				model.setReinitializeNeeded(true);
-			}
-			finally {
-				model.changedModel();
-			}
-		}
-	}
-
-	public void setCachedLanguage(String newLanguage) {
-		if (cachedLanguage != null && languageStateChanged(cachedLanguage, newLanguage)) { // a complete re-init overkill in current system, since really just need for 
-			// the line style providers, 
-			// BUT, a change in language could effect other things, 
-			// and we don't expect to happen often so a little overkill isn't too bad.
-			// The deep problem is that there is no way to get at the "edit side" adpapters
-			// specifically here in model class.
-			// we have to do the model changed sequence to get the 
-			// screen to update.
-			// do not signal again, if signaled once (the reinit state data will be wrong.
-			// (this needs to be improved in future)
-			if (!model.isReinitializationNeeded()) {
-				modelReinitNeeded(cachedLanguage, newLanguage);
-			}
-		}
-		setLanguage(newLanguage);
-	}
-
-	/**
-	 * This is public access method, used especially
-	 * from loader, for JSP Fragment support. 
-	 */
-	public void setLanguage(String newLanguage) {
-		this.cachedLanguage = newLanguage;
-		IDocumentPartitioner partitioner = ((IDocumentExtension3) model.getStructuredDocument()).getDocumentPartitioner(IStructuredDocument.DEFAULT_STRUCTURED_PARTITIONING);
-		if (partitioner instanceof StructuredTextPartitionerForJSP) {
-			((StructuredTextPartitionerForJSP) partitioner).setLanguage(newLanguage);
-		}
-	}
-
-	/**
-	 * Method languageStateChange.
-	 * @param cachedLanguage
-	 * @param newLanguage
-	 * @return boolean
-	 */
-	private boolean languageStateChanged(String cachedLanguage, String newLanguage) {
-		boolean result = false; // languages are equal, then no change in state
-		if (!cachedLanguage.equalsIgnoreCase(newLanguage)) {
-			boolean oldLanguageKnown = languageKnown(cachedLanguage);
-			boolean newLanguageKnown = languageKnown(newLanguage);
-			result = newLanguageKnown || (!newLanguageKnown && oldLanguageKnown);
-		}
-		return result;
-	}
-
-	/**
-	 * Method languageKnown.
-	 * @param cachedLanguage
-	 * @return boolean
-	 */
-	private boolean languageKnown(String language) {
-		return (StringUtils.contains(JAVA_LANGUAGE_KEYS, language, false) || StringUtils.contains(JAVASCRIPT_LANGUAGE_KEYS, language, false));
-	}
-
-	private IFile getFile(IStructuredModel model) {
-		String location = model.getBaseLocation();
-		IPath path = new Path(location);
-		if (!path.toFile().exists() && path.segmentCount() > 1) {
-			return ResourcesPlugin.getWorkspace().getRoot().getFile(path);
-		}
-		return null;
-	}
-
-	private EmbeddedTypeHandler getHandlerFor(String contentType) {
-		EmbeddedTypeRegistry reg = getEmbeddedContentTypeRegistry();
-		EmbeddedTypeHandler handler = null;
-		if (reg != null)
-			handler = reg.getTypeFor(contentType);
-		return handler;
-	}
-
-	/**
-	 * Gets the embeddedContentTypeRegistry.
-	 * @return Returns a EmbeddedContentTypeRegistry
-	 */
-	private EmbeddedTypeRegistry getEmbeddedContentTypeRegistry() {
-		return EmbeddedTypeRegistryImpl.getInstance();
-	}
-
-	/**
-	 * For JSP files, text/html is the default 
-	 * content type. This may want this different 
-	 * for types like jsv (jsp for voice xml)
-	 * For now, hard code to new instance.
-	 * In future, should get instance from registry.
-	 * 
-	 * Specification cites HTML as the default contentType.
-	 */
-	protected EmbeddedTypeHandler getDefaultEmbeddedType() {
-		return getHandlerFor(getDefaultContentType());
-	}
-
-	public void contentSettingsChanged(IResource resource) {
-		// Note: we currently get notified multiple times, 
-		// I assume since there's mulitple fields in the properties.
-		// For now, I'll assume that once we get notified, all the 
-		// fields are accurate, so if we're reinitializing, don't 
-		// check any further. To NOT do this causes concurrent modification
-		// exceptions. To do it, may cause us to miss when user changes
-		// two fields at once. Will need to test. 
-		if (reinitializing)
-			return;
-		if (resource == null)
-			return;
-		IFile file = getFile(model);
-		if (file == null)
-			return;
-		//        String filename = null;
-		//        if (resource.FILE == resource.getType()) {
-		//        	filename = resource.getLocation().toString();
-		//        }
-		IProject project = file.getProject();
-		if (project == null)
-			return;
-		if (!project.equals(resource.getProject()))
-			return;
-		// Note: these change notifications appear to be coming 
-		// in based on any change in project. I'm not sure how
-		// to tell if they are for my particular file, or 
-		// if there's some other error I'm making in listeners.
-		// the setters below should be smart enough 
-		// to know if a meaningful change occurred, or 
-		// not. Note: we seem to get called a lot (for resources other than our own?)
-		// with lots of 'null' values. The logic below may prevent the correct unsetting
-		// of a property (such as changing from a language setting back to 'none'). 
-		// We may need a 'none' id, or something, to help detect that case, since we can't 
-		// always assume the 'null' is accurate.
-	}
-
-	public INodeNotifier getTarget() {
-		return notifierAtCreation;
-	}
-
-	public void release(Object type) {
-		if (embeddedTypeHandler != null) {
-			if (embeddedFactoryRegistry != null) {
-				Iterator iterator = embeddedFactoryRegistry.iterator();
-				IAdapterFactory factory = null;
-				while (iterator.hasNext()) {
-					factory = (IAdapterFactory) iterator.next();
-					if (factory.isFactoryForType(type)) {
-						factory.release();
-					}
-				}
-			}
-		}
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcher.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcher.java
deleted file mode 100644
index f0cd6b1..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcher.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.document;
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-
-interface PageDirectiveWatcher extends INodeAdapter {
-
-	String getContentType();
-
-	String getLanguage();
-
-	int getOffset();
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherFactory.java
deleted file mode 100644
index 8df4e48..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherFactory.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.document;
-
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapterFactory;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.internal.propagate.PropagatingAdapterFactoryImpl;
-import org.w3c.dom.Node;
-
-public class PageDirectiveWatcherFactory extends PropagatingAdapterFactoryImpl implements PropagatingAdapterFactory {
-
-	/**
-	 * Constructor for PageDirectiveWatcherFactory.
-	 */
-	public PageDirectiveWatcherFactory() {
-		this(PageDirectiveWatcher.class, true);
-	}
-
-	/**
-	 * Constructor for PageDirectiveWatcherFactory.
-	 * @param adapterKey
-	 * @param registerAdapters
-	 */
-	public PageDirectiveWatcherFactory(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		PageDirectiveWatcher result = null;
-		if (target instanceof XMLElement) {
-			XMLElement xmlElement = (XMLElement) target;
-			if (xmlElement.getNodeType() == Node.ELEMENT_NODE) {
-				//                if (xmlElement.getNodeName() == JSP12Namespace.ElementName.DIRECTIVE_PAGE) {   // not sure why identity to  JSP11Namespace.ElementName.DIRECTIVE_PAGE doesn't work
-				String nodeName = xmlElement.getNodeName();
-				if (nodeName.equals("jsp:directive.page")) { //$NON-NLS-1$
-					result = new PageDirectiveWatcherImpl(xmlElement);
-				}
-
-			}
-		}
-		return result;
-
-	}
-
-	public IAdapterFactory copy() {
-		return new PageDirectiveWatcherFactory(this.adapterKey, this.shouldRegisterAdapter);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherImpl.java
deleted file mode 100644
index bb85d5c..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/PageDirectiveWatcherImpl.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.document;
-
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.document.AttrImpl;
-
-
-
-/** 
- * The responsibility of this class is to monitor page directives and if 
- * a change in embedded type is is made, it will signal 
- * the structuredModel that it needs to reinitialize itself.
- */
-class PageDirectiveWatcherImpl implements PageDirectiveWatcher {
-
-	private static Object adapterType = PageDirectiveWatcher.class;
-	XMLElement targetElement;
-
-	/**
-	 * Constructor for PageDirectiveWatcherImpl.
-	 */
-	public PageDirectiveWatcherImpl(XMLElement target) {
-		super();
-		targetElement = target;
-		String contentTypeValue = target.getAttribute("contentType"); //$NON-NLS-1$
-		if (contentTypeValue != null) {
-			// using concrete class below, since "changed" is something of an internal method
-			PageDirectiveAdapterImpl pageDirectiveAdapter = (PageDirectiveAdapterImpl) ((XMLDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
-			pageDirectiveAdapter.changedContentType(((IndexedRegion) targetElement).getStartOffset(), contentTypeValue);
-		}
-		String languageValue = target.getAttribute("language"); //$NON-NLS-1$
-		if (languageValue != null) {
-			// using concrete class below, since "changed" is something of an internal method
-			PageDirectiveAdapterImpl pageDirectiveAdapter = (PageDirectiveAdapterImpl) ((XMLDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
-			pageDirectiveAdapter.changedLanguage(((IndexedRegion) targetElement).getStartOffset(), languageValue);
-		}
-
-
-	}
-
-	/**
-	 * @see com.ibm.sse.model.INodeAdapter#isAdapterForType(Object)
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == adapterType);
-	}
-
-	/**
-	 * @see com.ibm.sse.model.INodeAdapter#notifyChanged(INodeNotifier, int, Object, Object, Object, int)
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		// we should only be added to page directives, so if we see a page directive
-		// change, we need to check its attributes, and notify the PageDirectiveAdapter when 
-		// certain ones chane, so it can make its "centralized" decisions.
-		if (notifier instanceof XMLNode) {
-
-			switch (eventType) {
-				case INodeNotifier.CHANGE :
-					if (changedFeature instanceof AttrImpl) {
-						AttrImpl attribute = (AttrImpl) changedFeature;
-						String name = attribute.getName();
-						if (name.equals("contentType")) { //$NON-NLS-1$
-							// using concrete class below, since "changed" is something of an internal method
-							PageDirectiveAdapterImpl pageDirectiveAdapter = (PageDirectiveAdapterImpl) ((XMLDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
-							pageDirectiveAdapter.changedContentType(((IndexedRegion) targetElement).getStartOffset(), (String) newValue);
-						}
-						if (name.equals("language")) { //$NON-NLS-1$ //$NON-NLS-2$
-							// using concrete class below, since "changed" is something of an internal method
-							PageDirectiveAdapterImpl pageDirectiveAdapter = (PageDirectiveAdapterImpl) ((XMLDocument) targetElement.getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
-							pageDirectiveAdapter.changedLanguage(((IndexedRegion) targetElement).getStartOffset(), (String) newValue);
-						}
-					}
-
-					break;
-				case INodeNotifier.REMOVE :
-					//System.out.println("removed"+new Date().toString());
-					break;
-
-
-				default :
-					break;
-			}
-		}
-
-	}
-
-	/**
-	 * @see com.ibm.sed.content.impl.PageDirectiveWatcher#getContentType()
-	 */
-	public String getContentType() {
-		String contentTypeValue = targetElement.getAttribute("contentType"); //$NON-NLS-1$
-		return contentTypeValue;
-	}
-
-	/**
-	 * @see com.ibm.sed.content.impl.PageDirectiveWatcher#getLanguage()
-	 */
-	public String getLanguage() {
-		String languageValue = targetElement.getAttribute("language"); //$NON-NLS-1$
-		return languageValue;
-	}
-
-	/**
-	 * @see com.ibm.sed.content.impl.PageDirectiveWatcher#getOffset()
-	 */
-	public int getOffset() {
-		return targetElement.getStartOffset();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/SetupParticipantForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/SetupParticipantForJSP.java
deleted file mode 100644
index 4525ae7..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/document/SetupParticipantForJSP.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.document;
-
-import org.eclipse.core.filebuffers.IDocumentSetupParticipant;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
-
-/**
- * @deprecated - not used and will be removed in WTP 1.0M4
- */
-
-public class SetupParticipantForJSP implements IDocumentSetupParticipant {
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.filebuffers.IDocumentSetupParticipant#setup(org.eclipse.jface.text.IDocument)
-	 */
-	public void setup(IDocument document) {
-		if (document != null) {
-			IDocumentPartitioner partitioner = new StructuredTextPartitionerForJSP();
-			document.setDocumentPartitioner(partitioner);
-			partitioner.connect(document);
-			
-			// setup empty model here? coordinated via model manager?
-			
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/AttrImplForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/AttrImplForJSP.java
deleted file mode 100644
index 591d2c0..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/AttrImplForJSP.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.domdocument;
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.xml.core.internal.document.AttrImpl;
-import org.w3c.dom.Document;
-
-public class AttrImplForJSP extends AttrImpl {
-
-	protected boolean isNestedLanguageOpening(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN;
-		return result;
-	}
-	protected void setOwnerDocument(Document ownerDocument) {
-		super.setOwnerDocument(ownerDocument);
-	}
-	protected void setName(String name) {
-		super.setName(name);
-	}
-	protected void setNamespaceURI(String namespaceURI) {
-		super.setNamespaceURI(namespaceURI);
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/CommentImplForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/CommentImplForJSP.java
deleted file mode 100644
index 887b38d..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/CommentImplForJSP.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.domdocument;
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.xml.core.internal.document.CommentImpl;
-import org.w3c.dom.Document;
-
-public class CommentImplForJSP extends CommentImpl {
-	protected boolean isNestedCommentClose(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_CLOSE;
-		return result;
-	}
-
-	protected boolean isNestedCommentOpenClose(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_OPEN || regionType == DOMJSPRegionContexts.JSP_COMMENT_CLOSE;
-		return result;
-	}
-
-	protected void setOwnerDocument(Document ownerDocument) {
-		super.setOwnerDocument(ownerDocument);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMDocumentForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMDocumentForJSP.java
deleted file mode 100644
index e32f151..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMDocumentForJSP.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.domdocument;
-
-import org.eclipse.wst.html.core.document.DocumentStyleImpl;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Comment;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-public class DOMDocumentForJSP extends DocumentStyleImpl {
-
-	/**
-	 * 
-	 */
-	public DOMDocumentForJSP() {
-		super();
-	}
-
-	/**
-	 * @param that
-	 */
-	protected DOMDocumentForJSP(DocumentImpl that) {
-		super(that);
-	}
-	/**
-	 * cloneNode method
-	 * @return org.w3c.dom.Node
-	 * @param deep boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		DOMDocumentForJSP cloned = new DOMDocumentForJSP(this);
-		if (deep)
-			cloned.importChildNodes(this, true);
-		return cloned;
-	}
-	/**
-	 * createElement method
-	 * 
-	 * @return org.w3c.dom.Element
-	 * @param tagName
-	 *            java.lang.String
-	 */
-	public Element createElement(String tagName) throws DOMException {
-		checkTagNameValidity(tagName);
-
-		ElementImplForJSP element = new ElementImplForJSP();
-		element.setOwnerDocument(this);
-		element.setTagName(tagName);
-		return element;
-	}
-	/**
-	 * createComment method
-	 * 
-	 * @return org.w3c.dom.Comment
-	 * @param data
-	 *            java.lang.String
-	 */
-	public Comment createComment(String data) {
-		CommentImplForJSP comment = new CommentImplForJSP();
-		comment.setOwnerDocument(this);
-		if (data != null)
-			comment.setData(data);
-		return comment;
-	}
-
-	/**
-	 * createAttribute method
-	 * 
-	 * @return org.w3c.dom.Attr
-	 * @param name
-	 *            java.lang.String
-	 */
-	public Attr createAttribute(String name) throws DOMException {
-		AttrImplForJSP attr = new AttrImplForJSP();
-		attr.setOwnerDocument(this);
-		attr.setName(name);
-		return attr;
-	}
-
-	/**
-	 */
-	public Attr createAttributeNS(String uri, String name) throws DOMException {
-		AttrImplForJSP attr = new AttrImplForJSP();
-		attr.setOwnerDocument(this);
-		attr.setName(name);
-		attr.setNamespaceURI(uri);
-		return attr;
-	}
-	/**
-	 * createTextNode method
-	 * 
-	 * @return org.w3c.dom.Text
-	 * @param data
-	 *            java.lang.String
-	 */
-	public Text createTextNode(String data) {
-		TextImplForJSP text = new TextImplForJSP();
-		text.setOwnerDocument(this);
-		text.setData(data);
-		return text;
-	}
-	protected void setModel(XMLModel model) {
-		super.setModel(model);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMModelForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMModelForJSP.java
deleted file mode 100644
index f6ca49d..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/DOMModelForJSP.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.domdocument;
-
-import org.eclipse.wst.html.core.document.XMLStyleModelImpl;
-import org.eclipse.wst.xml.core.internal.document.XMLModelParser;
-import org.eclipse.wst.xml.core.internal.document.XMLModelUpdater;
-import org.w3c.dom.Document;
-
-public class DOMModelForJSP extends XMLStyleModelImpl {
-
-	/**
-	 * 
-	 */
-	public DOMModelForJSP() {
-		super();
-		// remember, the document is created in super constructor, 
-		// via internalCreateDocument
-	}
-	/**
-	 * createDocument method
-	 * @return org.w3c.dom.Document
-	 */
-	protected Document internalCreateDocument() {
-		DOMDocumentForJSP document = new DOMDocumentForJSP();
-		document.setModel(this);
-		return document;
-	}
-	protected XMLModelParser createModelParser() {
-		return new NestedDOMModelParser(this);
-	}
-	protected XMLModelUpdater createModelUpdater() {
-		return new NestDOMModelUpdater(this);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/ElementImplForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/ElementImplForJSP.java
deleted file mode 100644
index 2c88c4c..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/ElementImplForJSP.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.domdocument;
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.html.core.document.ElementStyleImpl;
-import org.eclipse.wst.xml.core.internal.document.ElementImpl;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-public class ElementImplForJSP extends ElementStyleImpl {
-	/**
-	 * 
-	 */
-	public ElementImplForJSP() {
-		super();
-	}
-
-	/**
-	 * @param that
-	 */
-	public ElementImplForJSP(ElementImpl that) {
-		super(that);
-	}
-
-	protected boolean isNestedEndTag(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME;
-		return result;
-	}
-
-	protected boolean isNestedClosed(String regionType) {
-		boolean result = (regionType == DOMJSPRegionContexts.JSP_CLOSE || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE);
-		return result;
-	}
-
-	protected boolean isNestedClosedComment(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_CLOSE;
-		return result;
-	}
-
-	protected boolean isClosedNestedDirective(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE;
-		return result;
-	}
-
-	protected void setOwnerDocument(Document ownerDocument) {
-		super.setOwnerDocument(ownerDocument);
-	}
-
-	protected void setTagName(String tagName) {
-		super.setTagName(tagName);
-	}
-	public Node cloneNode(boolean deep) {
-		ElementImpl cloned = new ElementImplForJSP(this);
-		if (deep)
-			cloneChildNodes(cloned, deep);
-		return cloned;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestDOMModelUpdater.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestDOMModelUpdater.java
deleted file mode 100644
index 29e3fd9..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestDOMModelUpdater.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.domdocument;
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.xml.core.internal.document.XMLModelImpl;
-import org.eclipse.wst.xml.core.internal.document.XMLModelUpdater;
-
-
-public class NestDOMModelUpdater extends XMLModelUpdater {
-
-	/**
-	 * @param model
-	 */
-	public NestDOMModelUpdater(XMLModelImpl model) {
-		super(model);
-	}
-
-	protected boolean isNestedTagClose(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_CLOSE || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE;
-		return result;
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestedDOMModelParser.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestedDOMModelParser.java
deleted file mode 100644
index 928489c..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/NestedDOMModelParser.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.domdocument;
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.document.JSPTag;
-import org.eclipse.wst.xml.core.internal.document.XMLModelImpl;
-import org.eclipse.wst.xml.core.internal.document.XMLModelParser;
-
-public class NestedDOMModelParser extends XMLModelParser {
-
-	/**
-	 * @param model
-	 */
-	public NestedDOMModelParser(XMLModelImpl model) {
-		super(model);
-	}
-
-	protected boolean isNestedCommentOpen(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_OPEN;
-		return result;
-	}
-
-	protected boolean isNestedCommentText(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_COMMENT_TEXT;
-		return result;
-	}
-
-	protected boolean isNestedContent(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_CONTENT;
-		return result;
-	}
-
-	protected boolean isNestedTag(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || regionType == DOMJSPRegionContexts.JSP_CLOSE;
-		return result;
-	}
-
-	protected boolean isNestedTagName(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME;
-		return result;
-	}
-	protected boolean isNestedTagOpen(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN;
-		return result;
-	}
-	protected String computeNestedTag(String regionType, String tagName, IStructuredDocumentRegion structuredDocumentRegion, ITextRegion region) {
-		String resultTagName = tagName;
-		if (regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) {
-			resultTagName = JSPTag.JSP_SCRIPTLET;
-		}
-		else if (regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) {
-			resultTagName = JSPTag.JSP_EXPRESSION;
-		}
-		else if (regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN) {
-			resultTagName = JSPTag.JSP_DECLARATION;
-		}
-		else if (regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN) {
-			resultTagName = JSPTag.JSP_DIRECTIVE;
-		}
-		else if (regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-			resultTagName += '.';
-			resultTagName += structuredDocumentRegion.getText(region);
-		}
-		return resultTagName;
-	}
-
-	protected boolean isNestedTagClose(String regionType) {
-		boolean result = regionType == DOMJSPRegionContexts.JSP_CLOSE || regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE;
-		return result;
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/TextImplForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/TextImplForJSP.java
deleted file mode 100644
index 94d8bad..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/domdocument/TextImplForJSP.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.domdocument;
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.xml.core.internal.document.TextImpl;
-import org.w3c.dom.Document;
-
-public class TextImplForJSP extends TextImpl {
-	protected boolean isNotNestedContent(String regionType) {
-		boolean result = regionType != DOMJSPRegionContexts.JSP_CONTENT;
-		return result;
-	}
-	protected void setOwnerDocument(Document ownerDocument) {
-		super.setOwnerDocument(ownerDocument);
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/CompilationUnitHelper.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/CompilationUnitHelper.java
deleted file mode 100644
index dbc62cd..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/CompilationUnitHelper.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package org.eclipse.jst.jsp.core.internal.java;
-
-import org.eclipse.jdt.core.WorkingCopyOwner;
-
-/**
- * To ensure there is only one instance of ProblemRequestor and WorkingCopyOwner
- * for JSP plugins.  These were removed from JSPTranslation to ensure that the
- * JSPTranslation was not held in memory by any type of JDT lists (caching
- * search results, etc...)
- * 
- * @author pavery
- */
-public class CompilationUnitHelper {
-
-    private JSPProblemRequestor fProblemRequestor = null;
-    private WorkingCopyOwner fWorkingCopyOwner = null;
-    private static CompilationUnitHelper instance;
-
-    private CompilationUnitHelper() {
-        // force use of instance
-    }
-
-    public synchronized static final CompilationUnitHelper getInstance() {
-
-        if (instance == null)
-            instance = new CompilationUnitHelper();
-        return instance;
-    }
-
-    public JSPProblemRequestor getProblemRequestor() {
-
-        if (fProblemRequestor == null)
-            fProblemRequestor = new JSPProblemRequestor();
-        return fProblemRequestor;
-    }
-
-    public WorkingCopyOwner getWorkingCopyOwner() {
-
-        if (fWorkingCopyOwner == null) {
-            fWorkingCopyOwner = new WorkingCopyOwner() {
-                public String toString() {
-                    return "JSP Working copy owner";
-                }
-            };
-        }
-        return fWorkingCopyOwner;
-    }
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/EscapedTextUtil.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/EscapedTextUtil.java
deleted file mode 100644
index b9cf610..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/EscapedTextUtil.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-
-
-import java.util.Properties;
-import java.util.StringTokenizer;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-/**
- * class to handle chunks of text/regions
- * with escaped character data
- * @author pavery
- */
-public class EscapedTextUtil {
-
-	public static Properties fXMLtoJavaLookup = null;
-
-	/**
-	 * @return unescaped full text of that region, "" if there is no text
-	 */
-	public static String getUnescapedText(IStructuredDocumentRegion parent, ITextRegion r) {
-		String test = (parent != r) ? parent.getFullText(r) : parent.getFullText();
-		return getUnescapedText(test);
-	}
-
-	public static String getUnescapedText(String test) {
-		initLookup();
-		StringBuffer buffer = new StringBuffer();
-		if (test != null) {
-			StringTokenizer st = new StringTokenizer(test, "&;", true); //$NON-NLS-1$
-			String tok1, tok2, tok3, transString;
-			while (st.hasMoreTokens()) {
-				tok1 = tok2 = tok3 = transString = ""; //$NON-NLS-1$
-				tok1 = st.nextToken();
-				if (tok1.equals("&") && st.hasMoreTokens()) //$NON-NLS-1$
-				{
-					tok2 = st.nextToken();
-					if (st.hasMoreTokens()) {
-						tok3 = st.nextToken();
-					}
-				}
-				if (!(transString = fXMLtoJavaLookup.getProperty(tok1 + tok2 + tok3, "")).equals("")) //$NON-NLS-2$ //$NON-NLS-1$
-				{
-					buffer.append(transString);
-				}
-				else {
-					buffer.append(tok1 + tok2 + tok3);
-				}
-			}
-			return buffer.toString();
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	/**
-	 * initialize lookup tables
-	 */
-	private static void initLookup() {
-		fXMLtoJavaLookup = new Properties();
-		fXMLtoJavaLookup.setProperty("&apos;", "'"); //$NON-NLS-2$ //$NON-NLS-1$
-		fXMLtoJavaLookup.setProperty("&quot;", "\""); //$NON-NLS-2$ //$NON-NLS-1$
-		fXMLtoJavaLookup.setProperty("&amp;", "&"); //$NON-NLS-2$ //$NON-NLS-1$
-		fXMLtoJavaLookup.setProperty("&lt;", "<"); //$NON-NLS-2$ //$NON-NLS-1$
-		fXMLtoJavaLookup.setProperty("&gt;", ">"); //$NON-NLS-2$ //$NON-NLS-1$
-		fXMLtoJavaLookup.setProperty("&nbsp;", " "); //$NON-NLS-2$ //$NON-NLS-1$
-	}
-
-	/**
-	 * Get the String representation of an entity reference.
-	 */
-	public static String translateEntityReference(String entity) {
-		return fXMLtoJavaLookup.getProperty(entity, entity);
-	}
-}
-
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPTranslation.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPTranslation.java
deleted file mode 100644
index cb79f3e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPTranslation.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import java.util.List;
-
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.IJavaElement;
-
-/**
- * An object that holds a translated JSP String along with
- * position mapping from Java to JSP, and JSP to Java.
- * 
- * @author pavery
- * 
- */
-public interface IJSPTranslation {
-
-	/**
-	 * The string contents of the translated document.
-	 * @return  the string contents of the translated document.
-	 */
-	public String getJavaText();
-
-	/**
-	 * The corresponding java offset in the translated document for a given jsp offset.
-	 * @param jspPosition
-	 * @return the java offset that maps to jspOffset, -1 if the position has no mapping.
-	 */
-	public int getJavaOffset(int jspOffset);
-
-	/**
-	 * The corresponding jsp offset in the source document for a given jsp offset in the translated document.
-	 * @param javaPosition
-	 * @return the jsp offset that maps to javaOffset, -1 if the position has no mapping.
-	 */
-	public int getJspOffset(int javaOffset);
-
-	/**
-	 * The corresponding CompilationUnit for the translated JSP document
-	 * @return an ICompilationUnit of the translation
-	 */
-	public ICompilationUnit getCompilationUnit();
-
-	/**
-	 * Returns the IJavaElements corresponding to the JSP range in the JSP StructuredDocument
-	 * 
-	 * @param jspStart staring offset in the JSP document
-	 * @param jspEnd ending offset in the JSP document
-	 * @return IJavaElements corresponding to the JSP selection
-	 */
-	public IJavaElement[] getElementsFromJspRange(int jspStart, int jspEnd);
-
-	/**
-	 * Must be set true in order for problems to be collected during reconcile.
-	 * If set false, problems will be ignored during reconcile.
-	 * @param collect
-	 */
-	public void setProblemCollectingActive(boolean collect);
-
-	/**
-	 * Reconciles the compilation unit for this JSPTranslation
-	 */
-	public void reconcileCompilationUnit();
-
-	/**
-	 * @return the List of problems collected during reconcile of the compilation unit
-	 */
-	public List getProblems();
-	
-	// add these API once finalized
-	// getJspEdits(TextEdit javaEdit)
-	// getJavaRanges()
-    // getJavaDocument()
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSP2ServletNameUtil.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSP2ServletNameUtil.java
deleted file mode 100644
index cc9a91e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSP2ServletNameUtil.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import java.io.File;
-
-/**
- * @author pavery
- */
-public class JSP2ServletNameUtil {
-	
-	/**
-	 * WAS mangles Tom&Jerry as: _Tom_26_Jerry; this takes in the mangled name
-	 * and returns the original name.
-	 * 
-	 * Unmangles the qualified type name.  If an underscore is found
-	 * it is assumed to be a mangled representation of a non-alpha, 
-	 * non-digit character of the form _NN_, where NN are hex digits
-	 * representing the encoded character.  This routine converts it
-	 * back to the original character.
-	 */
-	public final static String unmangle(String qualifiedTypeName) {
-		if(qualifiedTypeName.charAt(0) != '_')
-			return qualifiedTypeName;
-		
-		StringBuffer buf = new StringBuffer();
-		String possible = "";
-	
-		// remove the .java extension if there is one
-		if(qualifiedTypeName.endsWith(".java"))//$NON-NLS-1$
-			qualifiedTypeName = qualifiedTypeName.substring(0, qualifiedTypeName.length() - 5);
-		
-		for(int i = 1; i < qualifiedTypeName.length(); i++) {  // start at index 1 b/c 1st char is always '_'
-			char c = qualifiedTypeName.charAt(i);
-			if(c == '_') {
-				int endIndex = qualifiedTypeName.indexOf('_', i+1);
-				if(endIndex == -1)
-					buf.append(c);
-				else {
-					char unmangled;
-					try {
-						possible = qualifiedTypeName.substring(i+1, endIndex); 
-					    if(isValid(possible)) {
-							unmangled = (char)Integer.decode("0x" + possible).intValue();//$NON-NLS-1$
-							i = endIndex;
-					    }
-					    else { 
-					        unmangled = c;
-					    }
-						
-					} catch(NumberFormatException e) {
-						unmangled = c;
-					}
-					buf.append(unmangled);
-				}
-			} else {
-				buf.append(c);
-			}
-		}
-		return buf.toString();
-	}
-
-	/**
-	 * Determine if given string is a valid Hex representation of an ASCII character (eg. 2F -> /)
-	 * @param possible
-	 * @return
-	 */
-	private static boolean isValid(String possible) {
-	    boolean result = false;
-	    if(possible.length() == 2){	    
-	        char c1 = possible.charAt(0);
-	        char c2 = possible.charAt(1);
-	        // 1st character must be a digit
-	        if(Character.isDigit(c1)) {
-	            // 2nd character must be digit or upper case letter A-F
-	            if(Character.isDigit(c2)) {
-	                result = true;
-	            }
-	            else if(Character.isUpperCase(c2) && (c2 == 'A' || c2 == 'B' || c2 ==  'C'|| c2 ==  'D'|| c2 ==  'E'|| c2 == 'F')) {
-	                result = true;
-	            }
-	        }
-	    }
-        return result;
-	}
-	
-	/**
-	 * Mangle string to WAS-like specifications
-	 *
-	 */
-	public final static String mangle(String name) {	  
-	  StringBuffer modifiedName = new StringBuffer();
-	  
-	  // extension (.jsp, .jspf, .jspx, etc...) should already be encoded in name
-	  
-	  int length = name.length();
-	  // in case name is forbidden (a number, class, for, etc...)
-	  modifiedName.append('_');
-	
-	  // ensure rest of characters are valid	
-	  for (int i=0; i< length; i++) {
-		  char currentChar = name.charAt(i);
-		  if (Character.isJavaIdentifierPart(currentChar) == true  ) { 
-			  modifiedName.append(currentChar);
-		  } else {
-			  modifiedName.append(mangleChar(currentChar));
-		  }
-	  }
-	  return modifiedName.toString();
-	  
-	}
-
-	/**
-	 * take a character and return its hex equivalent
-	 */
-	private final static String mangleChar(char ch) {
-	  if ( ch == File.separatorChar ) {
-		  ch = '/';
-	  }
-	
-	  if ( Character.isLetterOrDigit(ch) == true ) {
-		  return "" + ch; //$NON-NLS-1$
-	  }
-	  return "_" + Integer.toHexString(ch).toUpperCase() + "_"; //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPIncludeRegionHelper.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPIncludeRegionHelper.java
deleted file mode 100644
index 6f64818..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPIncludeRegionHelper.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * Extension of XMLJSPRegionHelper inteded to parse entire included JSP files.
- * Basically it expands the rules for what tags are parsed as JSP.
- * 
- * @author pavery
- */
-class JSPIncludeRegionHelper extends XMLJSPRegionHelper {
-	/**
-	 * @param JSPTranslator
-	 */
-	public JSPIncludeRegionHelper(JSPTranslator translator) {
-		super(translator);
-	}
-
-	// these methods determine what content gets added to the local scriplet, expression, declaration buffers
-	/*
-	 * return true for elements whose contents we might want to add to the java file we are building
-	 */
-	protected boolean isJSPStartRegion(IStructuredDocumentRegion sdRegion) {
-		String type = sdRegion.getFirstRegion().getType();
-		return type == XMLRegionContext.XML_TAG_OPEN || type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || type == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME;
-	}
-
-	protected boolean isDeclaration(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:declaration") //$NON-NLS-1$		
-					|| tagName.equalsIgnoreCase("<%!"); //$NON-NLS-1$		
-	}
-
-	protected boolean isExpression(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:expression") //$NON-NLS-1$		
-					|| tagName.equalsIgnoreCase("<%="); //$NON-NLS-1$
-	}
-
-	protected boolean isScriptlet(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:scriptlet") //$NON-NLS-1$		
-					|| tagName.equalsIgnoreCase("<%"); //$NON-NLS-1$
-	}
-
-	protected boolean isIncludeDirective(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:directive.include") || //$NON-NLS-1$
-					tagName.equalsIgnoreCase("include"); //$NON-NLS-1$
-	}
-
-	protected boolean isTaglibDirective(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:directive.taglib") //$NON-NLS-1$
-					|| tagName.equalsIgnoreCase("taglib"); //$NON-NLS-1$
-	}
-
-	protected boolean isPageDirective(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:directive.page") //$NON-NLS-1$
-					|| tagName.equalsIgnoreCase("page"); //$NON-NLS-1$
-	}
-
-	// different btwn XML-JSP and JSP tags		
-	protected String getRegionName(IStructuredDocumentRegion sdRegion) {
-		ITextRegion nameRegion = null;
-		String nameStr = ""; //$NON-NLS-1$
-		int size = sdRegion.getRegions().size();
-		if (size > 1) {
-			// presumably XML-JSP <jsp:scriptlet> | <jsp:expression> | <jsp:declaration>
-			nameRegion = sdRegion.getRegions().get(1);
-		}
-		else if (size == 1) {
-			// presumably JSP open <% | <%= | <%!
-			nameRegion = sdRegion.getRegions().get(0);
-		}
-		if (nameRegion != null)
-			nameStr = fTextToParse.substring(sdRegion.getStartOffset(nameRegion), sdRegion.getTextEndOffset(nameRegion));
-		return nameStr.trim();
-	}
-
-	protected void processOtherRegions(IStructuredDocumentRegion sdRegion) {
-		processIncludeDirective(sdRegion);
-		processPageDirective(sdRegion);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPProblemRequestor.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPProblemRequestor.java
deleted file mode 100644
index cf47682..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPProblemRequestor.java
+++ /dev/null
@@ -1,88 +0,0 @@
-package org.eclipse.jst.jsp.core.internal.java;
-
-/**
- * @author pavery
- */
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jdt.core.IProblemRequestor;
-import org.eclipse.jdt.core.compiler.IProblem;
-
-class JSPProblemRequestor implements IProblemRequestor {
-
-    private boolean fIsActive = false;
-
-    private boolean fIsRunning = false;
-
-    private List fCollectedProblems;
-
-    public void beginReporting() {
-
-        fIsRunning = true;
-        fCollectedProblems = new ArrayList();
-    }
-
-    public void acceptProblem(IProblem problem) {
-
-        if (isActive())
-            fCollectedProblems.add(problem);
-    }
-
-    public void endReporting() {
-
-        fIsRunning = false;
-    }
-
-    public boolean isActive() {
-
-        return fIsActive && fCollectedProblems != null;
-    }
-
-    /**
-     * Sets the active state of this problem requestor.
-     * 
-     * @param isActive
-     *            the state of this problem requestor
-     */
-    public void setIsActive(boolean isActive) {
-
-        if (fIsActive != isActive) {
-            fIsActive = isActive;
-            if (fIsActive)
-                startCollectingProblems();
-            else
-                stopCollectingProblems();
-        }
-    }
-
-    /**
-     * Tells this annotation model to collect temporary problems from now on.
-     */
-    private void startCollectingProblems() {
-
-        fCollectedProblems = new ArrayList();
-    }
-
-    /**
-     * Tells this annotation model to no longer collect temporary problems.
-     */
-    private void stopCollectingProblems() {
-
-        // do nothing
-    }
-
-    /**
-     * @return the list of collected problems
-     */
-    public List getCollectedProblems() {
-
-        return fCollectedProblems;
-    }
-
-    public boolean isRunning() {
-
-        return fIsRunning;
-    }
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslation.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslation.java
deleted file mode 100644
index f0d9f7b..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslation.java
+++ /dev/null
@@ -1,561 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.IBuffer;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.core.IPackageFragmentRoot;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.WorkingCopyOwner;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jst.jsp.core.internal.Logger;
-
-
-/**
- * <p>
- * An implementation of IJSPTranslation.  
- * <br>
- * This object that holds the java translation of 
- * a JSP file as well as a mapping of ranges from the translated Java to the JSP source, 
- * and mapping from JSP source back to the translated Java.
- * </p>
- * 
- * <p>
- * You may also use JSPTranslation to do CompilationUnit-esque things such as:
- * <ul>
- * 	<li>code select (get java elements for jsp selection)</li>
- *  <li>reconcile</li>
- *  <li>get java regions for jsp selection</li>
- *  <li>get a JSP text edit based on a Java text edit</li>
- *  <li>determine if a java offset falls within a jsp:useBean range</li>
- *  <li>determine if a java offset falls within a jsp import statment</li>
- * </ul>
- * </p>
- * 
- * @author pavery
- */
-public class JSPTranslation implements IJSPTranslation {
-	
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-
-	/** the name of the class (w/out extension) **/
-	private String fClassname = ""; //$NON-NLS-1$
-	private IJavaProject fJavaProject = null;
-	private HashMap fJava2JspMap = null;
-	private HashMap fJsp2JavaMap = null;
-	private HashMap fJava2JspImportsMap = null;
-	private HashMap fJava2JspUseBeanMap = null;
-	private HashMap fJava2JspIndirectMap = null;
-	
-	// don't want to hold onto model (via translator)
-	// all relevant info is extracted in the constructor.
-	//private JSPTranslator fTranslator = null;
-	private String fJavaText = "";
-	private String fJspText = "";
-	
-	private ICompilationUnit fCompilationUnit = null;
-	private IProgressMonitor fProgressMonitor = null;
-	/** lock to synchronize access to the compilation unit **/
-	private byte[] fLock = null;
-
-	public JSPTranslation(IJavaProject javaProj, JSPTranslator translator) {
-
-		fLock = new byte[0];
-		fJavaProject = javaProj;
-		//fTranslator = translator;
-		
-		// can be null if it's an empty document (w/ NullJSPTranslation)
-		if(translator != null) {
-		    fJavaText = translator.getTranslation().toString();
-		    fJspText = translator.getJspText();
-			fClassname = translator.getClassname();
-			fJava2JspMap = translator.getJava2JspRanges();
-			fJsp2JavaMap = translator.getJsp2JavaRanges();
-			fJava2JspImportsMap = translator.getJava2JspImportRanges();
-			fJava2JspUseBeanMap = translator.getJava2JspUseBeanRanges();
-			fJava2JspIndirectMap = translator.getJava2JspIndirectRanges();
-		}
-	}
-	
-	public IJavaProject getJavaProject() {
-		return fJavaProject;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.jsp.core.internal.java.IJSPTranslation#getJavaText()
-	 */
-	public String getJavaText() {
-		//return (fTranslator != null) ? fTranslator.getTranslation().toString() : "";  //$NON-NLS-1$ 
-		return fJavaText;
-	}
-	
-	public String getJspText() {
-		//return (fTranslator != null) ? fTranslator.getJspText() : "";  //$NON-NLS-1$
-		return fJspText;
-	}
-	
-	public String getJavaPath() {
-		// create if necessary
-		ICompilationUnit cu = getCompilationUnit();
-		return (cu != null) ? cu.getPath().toString() : ""; //$NON-NLS-1$
-	}
-	
-	/**
-	 * 
-	 * @return the corresponding Java offset for a give JSP offset
-	 */
-	public int getJavaOffset(int jspOffset) {
-		int result = -1;
-		int offsetInRange = 0;
-		Position jspPos, javaPos = null;
-
-		// iterate all mapped jsp ranges
-		Iterator it = fJsp2JavaMap.keySet().iterator();
-		while (it.hasNext()) {
-			jspPos = (Position) it.next();
-			// need to count the last position as included
-			if (!jspPos.includes(jspOffset) && !(jspPos.offset+jspPos.length == jspOffset))
-				continue;
-
-			offsetInRange = jspOffset - jspPos.offset;
-			javaPos = (Position) fJsp2JavaMap.get(jspPos);
-			if(javaPos != null)
-				result = javaPos.offset + offsetInRange;
-			else  {
-
-				Logger.log(Logger.ERROR, "JavaPosition was null!" + jspOffset); //$NON-NLS-1$
-			}
-			break;
-		}
-		return result;
-	}
-
-	/**
-	 * 
-	 * @return the corresponding JSP offset for a give Java offset
-	 */
-	public int getJspOffset(int javaOffset) {
-		int result = -1;
-		int offsetInRange = 0;
-		Position jspPos, javaPos = null;
-
-		// iterate all mapped java ranges
-		Iterator it = fJava2JspMap.keySet().iterator();
-		while (it.hasNext()) {
-			javaPos = (Position) it.next();
-			// need to count the last position as included
-			if (!javaPos.includes(javaOffset) && !(javaPos.offset+javaPos.length == javaOffset))
-				continue;
-
-			offsetInRange = javaOffset - javaPos.offset;
-			jspPos = (Position) fJava2JspMap.get(javaPos);
-			
-			if(jspPos != null)
-				result = jspPos.offset + offsetInRange;
-			else  {
-				Logger.log(Logger.ERROR, "jspPosition was null!" + javaOffset); //$NON-NLS-1$
-			}
-			break;
-		}
-
-		return result;
-	}
-
-	/**
-	 * 
-	 * @return a map of Positions in the Java document to corresponding Positions in the JSP document
-	 */
-	public HashMap getJava2JspMap() {
-		return fJava2JspMap;
-	}
-
-	/**
-	 * 
-	 * @return a map of Positions in the JSP document to corresponding Positions in the Java document
-	 */
-	public HashMap getJsp2JavaMap() {
-		return fJsp2JavaMap;
-	}
-
-	/**
-	 * Checks if the specified java range covers more than one partition in the JSP file.
-	 * 
-	 * <p>
-	 * ex.
-	 * <code>
-	 * <%
-	 * 	if(submit)
-	 *  {
-	 * %>
-	 *    <p> print this...</p>
-	 * 
-	 * <%
-	 *  }
-	 *  else
-	 *  {
-	 * %>
-	 * 	   <p> print that...</p>
-	 * <%
-	 *  }
-	 * %>
-	 * </code>
-	 * </p>
-	 * 
-	 * the if else statement above spans 3 JSP partitions, so it would return true.
-	 * @param offset
-	 * @param length
-	 * @return <code>true</code> if the java code spans multiple JSP partitions, otherwise false.
-	 */
-	public boolean javaSpansMultipleJspPartitions(int javaOffset, int javaLength) {
-		HashMap java2jsp = getJava2JspMap();
-		int count = 0;
-		Iterator it = java2jsp.keySet().iterator();
-		Position javaRange = null;
-		while(it.hasNext()) {
-			javaRange = (Position)it.next();
-			if(javaRange.overlapsWith(javaOffset, javaLength))
-				count++;
-			if(count > 1)
-				return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * Returns the Java positions for the given range in the Java document.
-	 * 
-	 * @param offset
-	 * @param length
-	 * @return
-	 */
-	public Position[] getJavaRanges(int offset, int length) {
-
-		List results = new ArrayList();
-		Iterator it = getJava2JspMap().keySet().iterator();
-		Position p = null;
-		while(it.hasNext()) {
-			p = (Position)it.next();
-			if(p.overlapsWith(offset, length))
-				results.add(p);
-		}
-		return (Position[])results.toArray(new Position[results.size()]);
-	}
-	
-	/**
-	 * Indicates if the java Offset falls within the user import ranges
-	 * @param javaOffset
-	 * @return true if the java Offset falls within the user import ranges, otherwise false
-	 */
-	public boolean isImport(int javaOffset) {
-		return isInRanges(javaOffset, fJava2JspImportsMap);
-	}
-
-	/**
-	 * Indicates if the java offset falls within the use bean ranges
-	 * @param javaOffset
-	 * @return true if the java offset falls within the user import ranges, otherwise false
-	 */
-	public boolean isUseBean(int javaOffset) {
-		return isInRanges(javaOffset, fJava2JspUseBeanMap);
-	}
-	
-	/**
-	 * @param javaPos
-	 * @return
-	 */
-	public boolean isIndirect(int javaOffset) {
-		return isInRanges(javaOffset, fJava2JspIndirectMap, false);
-	}
-	
-	private boolean isInRanges(int javaOffset, HashMap ranges) {
-		return isInRanges(javaOffset, ranges, true);
-	}
-	/**
-	 * Tells you if the given offset is included in any of the ranges (Positions) passed in.
-	 * includeEndOffset tells whether or not to include the end offset of each range in the test.
-	 * 
-	 * @param javaOffset
-	 * @param ranges
-	 * @param includeEndOffset
-	 * @return
-	 */
-	private boolean isInRanges(int javaOffset, HashMap ranges, boolean includeEndOffset) {
-		
-		Iterator it = ranges.keySet().iterator();
-		while(it.hasNext()) {
-			Position javaPos = (Position)it.next();
-			// also include the start and end offset (only if requested)
-			// https://bugs.eclipse.org/bugs/show_bug.cgi?id=81687
-			if(javaPos.includes(javaOffset) || (includeEndOffset && javaPos.offset+javaPos.length == javaOffset)) 
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Return the Java CompilationUnit associated with this JSPTranslation (this particular model)
-	 * When using methods on the CU, it's reccomended to synchronize on the CU for reliable
-	 * results.
-	 * 
-	 * The method is synchronized to ensure that <code>createComplilationUnit</code> doesn't
-	 * get entered 2 or more times simultaneously.  A side effect of that is 2 compilation units
-	 * can be created in the JavaModelManager, but we only hold one reference to it in 
-	 * fCompilationUnit.  This would lead to a leak since only one instance of the CU is
-	 * discarded in the <code>release()</code> method.
-	 * 
-	 * @return a CompilationUnit representation of this JSPTranslation
-	 */
-	public ICompilationUnit getCompilationUnit() {
-		synchronized(fLock) {
-			try {
-				if (fCompilationUnit == null) {
-					fCompilationUnit = createCompilationUnit();
-				}
-			}
-			catch (JavaModelException jme) {
-				if(DEBUG)
-					Logger.logException("error creating JSP working copy... ", jme); //$NON-NLS-1$
-			}
-		}
-		return fCompilationUnit;
-	}
-	
-	/**
-	 * Originally from ReconcileStepForJava.  Creates an ICompilationUnit from the contents of the JSP document.
-	 * 
-	 * @return an ICompilationUnit from the contents of the JSP document
-	 */
-	private ICompilationUnit createCompilationUnit() throws JavaModelException {
-		
-		IPackageFragment packageFragment = null;
-		IJavaElement je = getJavaProject();
-
-		if (je == null || !je.exists())
-			return null;
-
-		switch (je.getElementType()) {
-			case IJavaElement.PACKAGE_FRAGMENT :
-				je = je.getParent();
-			// fall through
-
-			case IJavaElement.PACKAGE_FRAGMENT_ROOT :
-				IPackageFragmentRoot packageFragmentRoot = (IPackageFragmentRoot) je;
-				packageFragment = packageFragmentRoot.getPackageFragment(IPackageFragmentRoot.DEFAULT_PACKAGEROOT_PATH);
-				break;
-
-			case IJavaElement.JAVA_PROJECT :
-				IJavaProject jProject = (IJavaProject) je;
-
-				if (!jProject.exists()) {
-					if(DEBUG) {
-						System.out.println("** Abort create working copy: cannot create working copy: JSP is not in a Java project");
-					}
-					return null;
-				}
-
-				packageFragmentRoot = null;
-				IPackageFragmentRoot[] packageFragmentRoots = jProject.getPackageFragmentRoots();
-				int i = 0;
-				while (i < packageFragmentRoots.length) {
-					if (!packageFragmentRoots[i].isArchive() && !packageFragmentRoots[i].isExternal()) {
-						packageFragmentRoot = packageFragmentRoots[i];
-						break;
-					}
-					i++;
-				}
-				if (packageFragmentRoot == null) {
-					if(DEBUG) {
-						System.out.println("** Abort create working copy: cannot create working copy: JSP is not in a Java project with source package fragment root");
-					}
-					return null;
-				}
-				packageFragment = packageFragmentRoot.getPackageFragment(IPackageFragmentRoot.DEFAULT_PACKAGEROOT_PATH);
-				break;
-
-			default :
-				return null;
-		}
-		
-		ICompilationUnit cu = packageFragment.getCompilationUnit(getClassname() + ".java").getWorkingCopy(getWorkingCopyOwner(), getProblemRequestor(), getProgressMonitor()); //$NON-NLS-1$
-		setContents(cu);
-
-		if(DEBUG) {
-			System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
-			System.out.println("(+) JSPTranslation ["+ this + "] finished creating CompilationUnit: " + cu);
-			System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
-		}
-		
-		return cu;
-	}
-
-	/**
-	 * 
-	 * @return the problem requestor for the CompilationUnit in this JSPTranslation
-	 */
-	private JSPProblemRequestor getProblemRequestor() {
-	    return CompilationUnitHelper.getInstance().getProblemRequestor();
-	}
-
-	/**
-	 * 
-	 * @return the IWorkingCopyOwner for this CompilationUnit in this JSPTranslation
-	 */
-	public WorkingCopyOwner getWorkingCopyOwner() {
-	    return CompilationUnitHelper.getInstance().getWorkingCopyOwner();
-	}
-
-	/**
-	 * 
-	 * @return the progress monitor used in long operations (reconcile, creating the CompilationUnit...) in this JSPTranslation
-	 */
-	private IProgressMonitor getProgressMonitor() {
-		if (fProgressMonitor == null)
-			fProgressMonitor = new NullProgressMonitor();
-		return fProgressMonitor;
-	}
-
-	/**
-	 * 
-	 * @return the List of problems collected during reconcile of the compilation unit
-	 */
-	public List getProblems() {
-		List problems = getProblemRequestor().getCollectedProblems();
-		return problems != null ? problems : new ArrayList();
-	}
-
-	/**
-	 * Must be set true in order for problems to be collected during reconcile.
-	 * If set false, problems will be ignored during reconcile.
-	 * @param collect
-	 */
-	public void setProblemCollectingActive(boolean collect) {
-		ICompilationUnit cu = getCompilationUnit();
-		if(cu != null) {	
-			getProblemRequestor().setIsActive(collect);
-		}
-	}
-
-	/**
-	 * Reconciles the compilation unit for this JSPTranslation
-	 */
-	public void reconcileCompilationUnit() {
-		ICompilationUnit cu = getCompilationUnit();
-		if (cu != null) {
-			try {
-				synchronized(cu) {
-					cu.makeConsistent(getProgressMonitor());
-					cu.reconcile(ICompilationUnit.NO_AST, true, getWorkingCopyOwner(), getProgressMonitor());
-				}
-			}
-			catch (JavaModelException e) {
-				Logger.logException(e);
-			}
-		}
-	}
-
-	/**
-	 * Set contents of the compilation unit to the translated jsp text.
-	 * @param the ICompilationUnit on which to set the buffer contents
-	 */
-	private void setContents(ICompilationUnit cu) {
-		if (cu == null)
-			return;
-		
-		synchronized (cu) {
-			IBuffer buffer;
-			try {
-				
-				buffer = cu.getBuffer();
-			}
-			catch (JavaModelException e) {
-				e.printStackTrace();
-				buffer = null;
-			}
-	
-			if (buffer != null)
-				buffer.setContents(getJavaText());
-		}
-	}
-
-	/**
-	 * Returns the IJavaElements corresponding to the JSP range in the JSP StructuredDocument
-	 * 
-	 * @param jspStart staring offset in the JSP document
-	 * @param jspEnd ending offset in the JSP document
-	 * @return IJavaElements corresponding to the JSP selection
-	 */
-	public IJavaElement[] getElementsFromJspRange(int jspStart, int jspEnd) {
-
-		int javaPositionStart = getJavaOffset(jspStart);
-		int javaPositionEnd = getJavaOffset(jspEnd);
-
-		IJavaElement[] EMTPY_RESULT_SET = new IJavaElement[0];
-		IJavaElement[] result = EMTPY_RESULT_SET;
-		try {
-			ICompilationUnit cu = getCompilationUnit();
-			if (cu != null && cu.getBuffer().getLength() > 0 && javaPositionStart > 0 && javaPositionEnd >= javaPositionStart) {
-				synchronized (cu) {
-					result = cu.codeSelect(javaPositionStart, javaPositionEnd - javaPositionStart);
-				}
-			}
-
-			if (result == null || result.length == 0)
-				return EMTPY_RESULT_SET;
-		}
-		catch (JavaModelException x) {
-			Logger.logException(x);
-		}
-
-		return result;
-	}
-
-	public String getClassname() {
-		return fClassname;
-	}
-
-	/**
-	 * Must discard compilation unit, or else they can leak in the JavaModelManager
-	 */
-	public void release() {
-		
-		synchronized(fLock) {
-			if(fCompilationUnit != null) {
-				try {
-					if(DEBUG) {
-						System.out.println("------------------------------------------------------------------");
-						System.out.println("(-) JSPTranslation [" + this +"] discarding CompilationUnit: " + fCompilationUnit);
-						System.out.println("------------------------------------------------------------------");
-					}
-					fCompilationUnit.discardWorkingCopy();	
-				} 
-				catch (JavaModelException e) {
-					// we're done w/ it anyway
-				}
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapter.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapter.java
deleted file mode 100644
index 8873a28..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapter.java
+++ /dev/null
@@ -1,247 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-
-/**
- * An adapter for getting a JSPTranslation of the document.
- * 
- * @author pavery
- */
-public class JSPTranslationAdapter implements INodeAdapter, IDocumentListener {
-	
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	private IDocument fJspDocument = null;
-	private IDocument fJavaDocument = null;
-	private JSPTranslationExtension fJSPTranslation = null;
-	private boolean fDocumentIsDirty = true;
-	private XMLModel fXMLModel;
-	private JSPTranslator fTranslator = null;
-	private NullProgressMonitor fTranslationMonitor = null;
-
-	public JSPTranslationAdapter(XMLModel xmlModel) {
-		setXMLModel(xmlModel);
-		initializeJavaPlugins();
-	}
-
-	/**
-	 * Initialize the required Java Plugins
-	 */
-	protected void initializeJavaPlugins() {
-		JavaCore.getPlugin();
-	}
-
-	/**
-	 * @see com.ibm.sse.model.INodeAdapter#isAdapterForType(java.lang.Object)
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type.equals(IJSPTranslation.class);
-	}
-
-	/**
-	 * @see com.ibm.sse.model.INodeAdapter#notifyChanged(com.ibm.sse.model.INodeNotifier,
-	 *      int, java.lang.Object, java.lang.Object, java.lang.Object, int)
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		// nothing to do
-	}
-
-	/**
-	 * Automatically set through the setXMLModel(XMLModel)
-	 * 
-	 * @param doc
-	 */
-	private void setDocument(IDocument doc) {
-		if (fJspDocument != null)
-			fJspDocument.removeDocumentListener(this);
-		if (doc != null) {
-			doc.addDocumentListener(this);
-			fJspDocument = doc;
-		}
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
-	 */
-	public void documentAboutToBeChanged(DocumentEvent event) {
-		// do nothing
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)
-	 */
-	public void documentChanged(DocumentEvent event) {
-		// mark translation for rebuilding
-		fDocumentIsDirty = true;
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.IReleasable#release()
-	 */
-	public void release() {
-		
-		if(fJspDocument != null)
-			fJspDocument.removeDocumentListener(this);
-		
-		if(fTranslationMonitor != null)
-			fTranslationMonitor.setCanceled(true);
-		
-		if(fJSPTranslation != null) {
-			
-			if(DEBUG)
-				System.out.println("JSPTranslationAdapter releasing:" + fJSPTranslation);
-			
-			fJSPTranslation.release();
-		}
-	}
-
-	/**
-	 * Returns the JSPTranslation for this adapter.
-	 * 
-	 * @see com.ibm.sse.editor.jsp.java.JSPTranslation
-	 * @return a JSPTranslationExtension
-	 */
-	public synchronized JSPTranslationExtension getJSPTranslation() {
-		
-		if (fJSPTranslation == null || fDocumentIsDirty) {
-			JSPTranslator translator = null;
-			if (getXMLModel() != null && getXMLModel().getIndexedRegion(0) != null) {
-				translator = getTranslator((XMLNode) getXMLModel().getIndexedRegion(0));
-				translator.translate();
-				StringBuffer javaContents = translator.getTranslation();
-				fJavaDocument = new Document(javaContents.toString());
-				
-			}
-			else {
-				// empty document case
-				translator = new JSPTranslator();
-				StringBuffer emptyContents = translator.getEmptyTranslation();
-				fJavaDocument = new Document(emptyContents.toString());
-			}
-			// it's going to be rebuilt, so we release it here
-			if(fJSPTranslation != null) {
-				if(DEBUG)
-					System.out.println("JSPTranslationAdapter releasing:" + fJSPTranslation);
-				fJSPTranslation.release();
-			}
-			fJSPTranslation = new JSPTranslationExtension(getXMLModel().getStructuredDocument(), fJavaDocument, getJavaProject(), translator);
-			fDocumentIsDirty = false;
-		}
-		return fJSPTranslation;
-	}
-
-	/**
-	 * Returns the JSPTranslator for this adapter. If it's null, a new
-	 * translator is created with the xmlNode. Otherwise the
-	 * translator.reset(xmlNode) is called to reset the current local
-	 * translator.
-	 * 
-	 * @param xmlNode
-	 *            the first node of the JSP document to be translated
-	 * @return the JSPTranslator for this adapter (creates if null)
-	 */
-	private JSPTranslator getTranslator(XMLNode xmlNode) {
-		if (fTranslator == null) {
-			fTranslationMonitor = new NullProgressMonitor();
-			fTranslator = new JSPTranslator();
-			fTranslator.reset(xmlNode, fTranslationMonitor);
-		}
-		else
-			fTranslator.reset(xmlNode, fTranslationMonitor);
-		return fTranslator;
-	}
-
-	/**
-	 * set the XMLModel for this adapter. Must be called.
-	 * 
-	 * @param xmlModel
-	 */
-	public void setXMLModel(XMLModel xmlModel) {
-		fXMLModel = xmlModel;
-		setDocument(fXMLModel.getStructuredDocument());
-	}
-
-	/**
-	 * @return the XMLModel for this adapter.
-	 */
-	public XMLModel getXMLModel() {
-		return fXMLModel;
-	}
-
-	/**
-	 * Gets (or creates via JavaCore) a JavaProject based on the location of
-	 * this adapter's XMLModel.  Returns null for non IFile based models.
-	 * 
-	 * @return the java project where
-	 */
-	public IJavaProject getJavaProject() {
-
-		IJavaProject javaProject = null;
-		try {
-			String baseLocation = getXMLModel().getBaseLocation();
-			// 20041129 (pa) the base location changed for xml model 
-			// because of FileBuffers, so this code had to be updated
-			// https://bugs.eclipse.org/bugs/show_bug.cgi?id=79686
-			IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-			IPath filePath = new Path(baseLocation);
-			IFile file = null;
-			IProject project = null;
-			if (filePath.segmentCount() > 1) {
-				file = root.getFile(filePath);
-			}
-			if (file != null) {
-				project = file.getProject();
-			}
-//			IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(baseLocation));
-//			for (int i = 0; project == null && i < files.length; i++) {
-//				if (files[i].getType() != IResource.PROJECT) {
-//					project = files[i].getProject();
-//					break;
-//				}
-//			}
-			if(project != null) {
-				javaProject = JavaCore.create(project);
-			}
-		}
-		catch (Exception ex) {
-			if (getXMLModel() != null)
-				Logger.logException("(JSPTranslationAdapter) problem getting java project from the XMLModel's baseLocation > " + getXMLModel().getBaseLocation(), ex); //$NON-NLS-1$
-			else
-				Logger.logException("(JSPTranslationAdapter) problem getting java project", ex); //$NON-NLS-1$
-		}
-		return javaProject;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapterFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapterFactory.java
deleted file mode 100644
index bbdd5ad..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationAdapterFactory.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.xml.core.document.XMLNode;
-
-/**
- * Factory for JSPTranslationAdapters.
- * 
- * @author pavery
- *  
- */
-public class JSPTranslationAdapterFactory extends AbstractAdapterFactory {
-
-	private JSPTranslationAdapter fAdapter = null;
-
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	public JSPTranslationAdapterFactory() {
-		super();
-	}
-
-	/**
-	 * @see com.ibm.sse.model.IAdapterFactory#copy()
-	 */
-	public IAdapterFactory copy() {
-		return new JSPTranslationAdapterFactory();
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		if (target instanceof XMLNode && fAdapter == null) {
-			fAdapter = new JSPTranslationAdapter(((XMLNode) target).getModel());
-			if(DEBUG) {
-				System.out.println("(+) JSPTranslationAdapterFactory [" + this + "] created adapter: " + fAdapter);
-			}
-		}
-		return fAdapter;
-	}
-
-	/**
-	 * @see com.ibm.sse.model.AbstractAdapterFactory#isFactoryForType(java.lang.Object)
-	 */
-
-	public boolean isFactoryForType(Object type) {
-		return type.equals(IJSPTranslation.class);
-	}
-
-	/**
-	 * @see com.ibm.sse.model.AbstractAdapterFactory#release()
-	 */
-	public void release() {
-		if (fAdapter != null) {
-			if(DEBUG) {
-				System.out.println("(-) JSPTranslationAdapterFactory [" + this + "] releasing adapter: " + fAdapter);
-			}
-			fAdapter.release();
-		}
-		super.release();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationExtension.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationExtension.java
deleted file mode 100644
index 0a7d63c..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationExtension.java
+++ /dev/null
@@ -1,302 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.text.edits.DeleteEdit;
-import org.eclipse.text.edits.InsertEdit;
-import org.eclipse.text.edits.MalformedTreeException;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.text.edits.ReplaceEdit;
-import org.eclipse.text.edits.TextEdit;
-
-
-/**
- * Adds the notion of IDocuments (jsp Document and java Document)
- * Used for TextEdit translation
- * @author pavery
- */
-public class JSPTranslationExtension extends JSPTranslation {
-	
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	// just a convenience data structure
-	// to keep track of java position deltas
-	private class PositionDelta {
-		
-		public boolean isDeleted = false;
-		public int preOffset = 0;
-		public int preLength = 0;
-		public int postOffset = 0;
-		public int postLength = 0;
-		
-		public PositionDelta(int preOffset, int preLength) {
-			this.preOffset = preOffset;
-			this.preLength = preLength;
-		}
-		public void setPostEditData(int postOffset, int postLength, boolean isDeleted) {
-			this.postOffset = postOffset;
-			this.postLength = postLength;
-			this.isDeleted = isDeleted;
-		}
-	}
-	
-	private IDocument fJspDocument = null;
-	private IDocument fJavaDocument = null;
-	
-	public JSPTranslationExtension(IDocument jspDocument, IDocument javaDocument, IJavaProject javaProj, JSPTranslator translator) {
-		super(javaProj, translator);
-		fJspDocument = jspDocument;
-		fJavaDocument = javaDocument;
-		
-		// make sure positions are added to Java and JSP documents
-		// this is necessary for text edits
-		addPositionsToDocuments();
-	}
-	
-	public IDocument getJspDocument() {
-		return fJspDocument;
-	}
-	
-	public IDocument getJavaDocument() {
-		return fJavaDocument;
-	}
-	
-	public String getJavaText() {
-		return getJavaDocument() != null ? getJavaDocument().get() : ""; //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns a corresponding TextEdit for the JSP file given a TextEdit for a Java file.
-	 * Note: This method actually applies the Java edit to the internal Java document.
-	 * 
-	 * @param javaEdit
-	 * @return the corresponding JSP edits (not applied to the document yet)
-	 */
-	public TextEdit getJspEdit(TextEdit javaEdit) {
-
-		if(javaEdit == null)
-			return null;
-		
-		List jspEdits = new ArrayList();
-
-		int offset = javaEdit.getOffset();
-		int length = javaEdit.getLength();
-		
-		if(javaEdit instanceof MultiTextEdit && javaEdit.getChildren().length > 0) {
-	
-			IRegion r = TextEdit.getCoverage(getAllEdits(javaEdit));
-			offset = r.getOffset();
-			length = r.getLength();
-		}
-		
-		// get java ranges that will be affected by the edit
-		Position[] javaPositions = getJavaRanges(offset, length);
-		
-		// record position data before the change
-		Position[] jspPositions = new Position[javaPositions.length];
-		PositionDelta[] deltas = new PositionDelta[javaPositions.length];
-		for(int i=0; i<javaPositions.length; i++) {
-			deltas[i] = new PositionDelta(javaPositions[i].offset, javaPositions[i].length);
-			// isIndirect means the position doesn't actually exist as exact text 
-			// mapping from java <-> jsp (eg. an import statement)
-			if(!isIndirect(javaPositions[i].offset))
-				jspPositions[i] = (Position)getJava2JspMap().get(javaPositions[i]);
-		}
-
-		if(DEBUG) {
-			System.out.println("================================================");
-			System.out.println("deltas:");
-			String javaText = getJavaText();
-			for(int i=0; i<deltas.length; i++) 
-				System.out.println("pos[" + deltas[i].preOffset + ":" + deltas[i].preLength + "]" + javaText.substring(deltas[i].preOffset, deltas[i].preOffset + deltas[i].preLength) );
-			System.out.println("===============================================");
-		}
-		
-		// apply the edit to the java document
-		try {
-			javaEdit.apply(getJavaDocument());
-		} catch (MalformedTreeException e) {
-			Logger.logException(e);
-		} catch (BadLocationException e) {
-			Logger.logException(e);
-		}
-		// now at this point Java positions are unreliable since they were updated after applying java edit.
-		
-		String newJavaText = getJavaDocument().get();
-		if(DEBUG) 
-			System.out.println("java post format text:\n" + newJavaText); //$NON-NLS-1$
-		
-		// record post edit data
-		for(int i=0; i<javaPositions.length; i++)
-			deltas[i].setPostEditData(javaPositions[i].offset, javaPositions[i].length, javaPositions[i].isDeleted);
-		
-		// create appropriate text edits for deltas
-		Position jspPos = null;
-		String replaceText = ""; //$NON-NLS-1$
-		for(int i=0; i<deltas.length; i++) {
-			jspPos = jspPositions[i];
-			// can be null if it's an indirect mapping position
-			// or if something was added into java that was not originally in JSP (like a new import...)
-
-			if(jspPos != null) {
-				if(deltas[i].isDeleted) {
-					jspEdits.add(new DeleteEdit(jspPos.offset, jspPos.length));
-				}
-				else {
-					replaceText = newJavaText.substring(deltas[i].postOffset, deltas[i].postOffset + deltas[i].postLength);
-					jspEdits.add(new ReplaceEdit(jspPos.offset, jspPos.length, replaceText));
-				}
-				if(DEBUG) 
-					debugReplace(deltas, jspPos, replaceText, i);
-			}
-			else {
-				// the new Java text has no corresponding JSP position
-				// possible new import?
-				if(isImport(javaPositions[i].getOffset()) && replaceText.lastIndexOf("import ") != -1) { //$NON-NLS-1$
-					replaceText = newJavaText.substring(deltas[i].postOffset, deltas[i].postOffset + deltas[i].postLength);
-					String importText = replaceText.substring(replaceText.lastIndexOf("import "), replaceText.indexOf(";")); //$NON-NLS-1$ //$NON-NLS-2$
-					// evenutally need to check if it's XML-JSP
-					importText = "<%@page import=\"" + importText + "\" %>\n"; //$NON-NLS-1$ //$NON-NLS-2$
-					jspEdits.add(new InsertEdit(0, importText));
-				}
-			}
-		}
-		return createMultiTextEdit((TextEdit[])jspEdits.toArray(new TextEdit[jspEdits.size()]));
-	}
-	
-
-	/**
-	 * Combines an array of edits into one MultiTextEdit (with the appropriate coverage region)
-	 * @param edits
-	 * @return
-	 */
-	private TextEdit createMultiTextEdit(TextEdit[] edits) {
-		
-		if(edits.length == 0)
-			return new MultiTextEdit();
-			
-		IRegion region = TextEdit.getCoverage(edits);
-		MultiTextEdit multiEdit = new MultiTextEdit(region.getOffset(), region.getLength());
-		for (int i = 0; i < edits.length; i++) {
-			addToMultiEdit(edits[i], multiEdit);
-		}
-		return multiEdit;
-	}
-	
-	
-	private void addToMultiEdit(TextEdit edit, MultiTextEdit multiEdit) {
-		
-		// check for overlap here
-		// discard overlapping edits..
-		// possible exponential performance hit... need a better way...
-		TextEdit[] children = multiEdit.getChildren();
-		for (int i = 0; i < children.length; i++) {
-			if(children[i].covers(edit))
-				// don't add
-				return;
-		}
-		multiEdit.addChild(edit);
-	}
-	
-	
-	/**
-	 * @param translation
-	 */
-	private void addPositionsToDocuments() {
-		
-		// can be null if it's a NullJSPTranslation
-		if(getJavaDocument() != null && getJspDocument() != null) {
-
-			HashMap java2jsp = getJava2JspMap();
-			Iterator it = java2jsp.keySet().iterator();
-			Position javaPos = null;
-			while(it.hasNext()) {
-				javaPos =(Position)it.next();
-				try {
-					
-					fJavaDocument.addPosition(javaPos);
-					
-				} catch (BadLocationException e) {
-					if(DEBUG) {
-						System.out.println("tyring to add Java Position:[" + javaPos.offset + ":" + javaPos.length + "] to " + getJavaPath()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$					
-						//System.out.println("substring :[" + fJavaDocument.get().substring(javaPos.offset) + "]"); //$NON-NLS-1$ //$NON-NLS-2$
-						Logger.logException(e);
-					}
-				}
-				
-				try {
-					
-					fJspDocument.addPosition((Position)java2jsp.get(javaPos));
-					
-				} catch (BadLocationException e) {
-					if(DEBUG) {
-						System.out.println("tyring to add JSP Position:[" + ((Position)java2jsp.get(javaPos)).offset + ":" +((Position)java2jsp.get(javaPos)).length + "] to " + getJavaPath()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-						Logger.logException(e);
-					}
-				}
-			}
-		}
-	}
-	
-	/**
-	 * Recursively gets all child edits
-	 * @param javaEdit
-	 * @return all child edits
-	 */
-	private TextEdit[] getAllEdits(TextEdit javaEdit) {
-		
-		List result = new ArrayList();
-		if(javaEdit instanceof MultiTextEdit) {
-			TextEdit[] children = javaEdit.getChildren();
-			for (int i = 0; i < children.length; i++) 
-				result.addAll(Arrays.asList(getAllEdits(children[i])));
-		}
-		else 
-			result.add(javaEdit);
-		return (TextEdit[])result.toArray(new TextEdit[result.size()]);
-	}
-
-	/**
-	 * @param deltas
-	 * @param jspPos
-	 * @param replaceText
-	 * @param jspText
-	 * @param i
-	 */
-	private void debugReplace(PositionDelta[] deltas, Position jspPos, String replaceText, int i) {
-		String jspChunk;
-		jspChunk = getJspDocument().get().substring(jspPos.offset, jspPos.offset + jspPos.length);
-		if(!deltas[i].isDeleted) {
-			System.out.println("replacing:"); //$NON-NLS-1$
-			System.out.println("jsp:[" + jspChunk + "]"); //$NON-NLS-1$ //$NON-NLS-2$
-			System.out.println("w/ :[" + replaceText + "]"); //$NON-NLS-1$ //$NON-NLS-2$
-			System.out.println("--------------------------------"); //$NON-NLS-1$
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java
deleted file mode 100644
index 30b51fe..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.text.edits.CopySourceEdit;
-import org.eclipse.text.edits.CopyTargetEdit;
-import org.eclipse.text.edits.DeleteEdit;
-import org.eclipse.text.edits.InsertEdit;
-import org.eclipse.text.edits.MoveSourceEdit;
-import org.eclipse.text.edits.MoveTargetEdit;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.text.edits.ReplaceEdit;
-import org.eclipse.text.edits.TextEdit;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-
-public class JSPTranslationUtil {
-	protected IDocument fDocument = null;
-	protected JSPTranslationExtension fTranslation = null;
-
-	public JSPTranslationUtil(IDocument document) {
-		fDocument = document;
-	}
-
-	public TextEdit translateTextEdit(TextEdit textEdit) {
-		TextEdit translatedTextEdit = null;
-
-		int javaOffset = textEdit.getOffset();
-		int jspOffset = getTranslation().getJspOffset(textEdit.getOffset());
-		int length = textEdit.getLength();
-
-		if (textEdit instanceof MultiTextEdit) {
-			translatedTextEdit = new MultiTextEdit();
-			TextEdit[] children = ((MultiTextEdit) textEdit).getChildren();
-			for (int i = 0; i < children.length; i++) {
-				TextEdit translatedChildTextEdit = translateTextEdit(children[i]);
-				if (translatedChildTextEdit != null)
-					((MultiTextEdit) translatedTextEdit).addChild(translatedChildTextEdit);
-			}
-		} else if (textEdit instanceof ReplaceEdit) {
-			if (jspOffset == -1)
-				return null;
-
-			if (!getTranslation().javaSpansMultipleJspPartitions(javaOffset, length))
-				translatedTextEdit = new ReplaceEdit(jspOffset, length, ((ReplaceEdit) textEdit).getText());
-		} else if (textEdit instanceof InsertEdit) {
-			translatedTextEdit = new InsertEdit(jspOffset, ((InsertEdit) textEdit).getText());
-		} else if (textEdit instanceof DeleteEdit) {
-			translatedTextEdit = new DeleteEdit(jspOffset, length);
-			TextEdit[] children = ((DeleteEdit) textEdit).getChildren();
-			for (int i = 0; i < children.length; i++) {
-				TextEdit translatedChildTextEdit = translateTextEdit(children[i]);
-				if (translatedChildTextEdit != null)
-					((DeleteEdit) translatedTextEdit).addChild(translatedChildTextEdit);
-			}
-		} else if (textEdit instanceof CopySourceEdit) {
-			translatedTextEdit = new CopySourceEdit(jspOffset, length);
-			((CopySourceEdit) translatedTextEdit).setTargetEdit(((CopySourceEdit) textEdit).getTargetEdit());
-			((CopySourceEdit) translatedTextEdit).setSourceModifier(((CopySourceEdit) textEdit).getSourceModifier());
-		} else if (textEdit instanceof CopyTargetEdit) {
-			translatedTextEdit = new CopyTargetEdit(jspOffset);
-			((CopyTargetEdit) textEdit).getSourceEdit().setTargetEdit((CopyTargetEdit) translatedTextEdit);
-		} else if (textEdit instanceof MoveSourceEdit) {
-			translatedTextEdit = new MoveSourceEdit(jspOffset, length);
-			((MoveSourceEdit) translatedTextEdit).setTargetEdit(((MoveSourceEdit) textEdit).getTargetEdit());
-		} else if (textEdit instanceof MoveTargetEdit) {
-			translatedTextEdit = new MoveTargetEdit(jspOffset);
-			((MoveTargetEdit) textEdit).getSourceEdit().setTargetEdit((MoveTargetEdit) translatedTextEdit);
-		} else {
-			System.out.println("Need to translate " + textEdit); //$NON-NLS-1$
-		}
-
-		return translatedTextEdit;
-	}
-
-	public JSPTranslationExtension getTranslation() {
-		if (fTranslation == null) {
-			XMLModel xmlModel = (XMLModel) getModelManager().getExistingModelForRead(fDocument);
-			try {
-				XMLDocument xmlDoc = xmlModel.getDocument();
-
-				JSPTranslationAdapter translationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-				if (translationAdapter != null)
-					fTranslation = translationAdapter.getJSPTranslation();
-			} finally {
-				xmlModel.releaseFromRead();
-			}
-		}
-
-		return fTranslation;
-	}
-
-	public ICompilationUnit getCompilationUnit() {
-		return getTranslation().getCompilationUnit();
-	}
-
-	protected IModelManager getModelManager() {
-		return StructuredModelManager.getModelManager();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslator.java
deleted file mode 100644
index 8a7537e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslator.java
+++ /dev/null
@@ -1,1992 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Stack;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDElementDeclaration;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDVariable;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.parser.BlockMarker;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionCollection;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.core.util.URIResolver;
-import org.eclipse.wst.xml.core.contentmodel.CMDocumentTracker;
-import org.eclipse.wst.xml.core.contentmodel.CMNodeWrapper;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-/**
- * Translates a JSP document into a HttpServlet. Keeps two way mapping from
- * java translation to the original JSP source, which can be obtained through
- * getJava2JspRanges() and getJsp2JavaRanges().
- * 
- * @author pavery
- */
-public class JSPTranslator {
-
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value = Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspjavamapping"); //$NON-NLS-1$
-		DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-
-	public static final String ENDL = "\n"; //$NON-NLS-1$
-
-	private String fClassHeader = "public class _JSPServlet extends "; //$NON-NLS-1$
-	private String fClassname = "_JSPServlet"; //$NON-NLS-1$
-
-	private String fServiceHeader = "public void _jspService(javax.servlet.http.HttpServletRequest request," + //$NON-NLS-1$
-				" javax.servlet.http.HttpServletResponse response)" + ENDL + //$NON-NLS-1$
-				"\t\tthrows java.io.IOException, javax.servlet.ServletException {" + ENDL + //$NON-NLS-1$
-				"javax.servlet.jsp.PageContext pageContext = null;" + ENDL + //$NON-NLS-1$
-				"javax.servlet.http.HttpSession session = null;" + ENDL + //$NON-NLS-1$
-				"javax.servlet.ServletContext application = null;" + ENDL + //$NON-NLS-1$
-				"javax.servlet.ServletConfig config = null;" + ENDL + //$NON-NLS-1$ 
-				"javax.servlet.jsp.JspWriter out = null;" + ENDL + //$NON-NLS-1$
-				"Object page = null;" + ENDL; //$NON-NLS-1$
-
-	private String fFooter = "}}"; //$NON-NLS-1$
-	private String fException = "Throwable exception = null;"; //$NON-NLS-1$
-	public static final String EXPRESSION_PREFIX = "out.print(\"\"+"; //$NON-NLS-1$
-	public static final String EXPRESSION_SUFFIX = ");"; //$NON-NLS-1$
-	private String fSuperclass = "javax.servlet.http.HttpServlet"; //$NON-NLS-1$
-
-	private String fTryCatchStart = ENDL + "try {" + ENDL;
-	private String fTryCatchEnd = " } catch (java.lang.Exception e) {} " + ENDL;
-
-	/** fSourcePosition = position in JSP source */
-	private int fSourcePosition = -1;
-	/** fRelativeOffest = offset in the buffer there the cursor is */
-	private int fRelativeOffset = -1;
-	/** fCursorPosition = offset in the translated java document */
-	private int fCursorPosition = -1;
-	/** some page directive attributes */
-	private boolean fIsErrorPage, fCursorInExpression = false;
-
-	/** user java code in body of the service method */
-	private StringBuffer fUserCode = new StringBuffer();
-	/** user defined vars declared in the beginning of the class */
-	private StringBuffer fUserDeclarations = new StringBuffer();
-
-	/** user defined imports */
-	private StringBuffer fUserImports = new StringBuffer();
-
-	private StringBuffer fResult; // the final traslated java document
-	// string buffer
-	private StringBuffer fCursorOwner = null; // the buffer where the cursor
-	// is
-
-	private XMLModel fStructuredModel = null;
-	private IStructuredDocument fStructuredDocument = null;
-	private ModelQuery fModelQuery = null;
-	// private XMLNode fPositionNode; // position in the DOM
-	private IStructuredDocumentRegion fCurrentNode;
-	private boolean fInCodeRegion = false; // flag for if cursor is in the
-	// current region being translated
-
-	/**
-	 * these constants are to keep track of whether the code in question is
-	 * embedded (JSP as an attribute or within comment tags) or is just
-	 * standard JSP code, or identifies if it's an expression
-	 */
-	protected final static int STANDARD_JSP = 0;
-	protected final static int EMBEDDED_JSP = 1;
-	protected final static int DECLARATION = 2;
-	protected final static int EXPRESSION = 4;
-	protected final static int SCRIPTLET = 8;
-
-	/** used to avoid infinite looping include files */
-	private Stack fIncludes = null;
-	/** mostly for helper classes, so they parse correctly */
-	private ArrayList fBlockMarkers = null;
-	/** use only one inclue helper per file location */
-	private HashMap fJSPIncludeHelperMap = null;
-	/**
-	 * for keeping track of offset in user buffers while document is being
-	 * built
-	 */
-	private int fOffsetInUserImports = 0;
-	private int fOffsetInUserDeclarations = 0;
-	private int fOffsetInUserCode = 0;
-
-	/** correlates ranges (positions) in java to ranges in jsp */
-	private HashMap fJava2JspRanges = new HashMap();
-
-	/**
-	 * map of ranges in fUserImports (relative to the start of the buffer) to
-	 * ranges in source JSP buffer.
-	 */
-	private HashMap fImportRanges = new HashMap();
-	/**
-	 * map of ranges in fUserCode (relative to the start of the buffer) to
-	 * ranges in source JSP buffer.
-	 */
-	private HashMap fCodeRanges = new HashMap();
-	/**
-	 * map of ranges in fUserDeclarations (relative to the start of the
-	 * buffer) to ranges in source JSP buffer.
-	 */
-	private HashMap fDeclarationRanges = new HashMap();
-
-	private HashMap fUseBeanRanges = new HashMap();
-	/**
-	 * ranges that don't directly map from java code to JSP code (eg.
-	 * <%@include file="included.jsp"%>
-	 */
-	private HashMap fIndirectRanges = new HashMap();
-
-	private IProgressMonitor fProgressMonitor = null;
-
-	/**
-	 * save JSP document text for later use may just want to read this from
-	 * the file or strucdtured document depending what is available
-	 */
-	private StringBuffer fJspTextBuffer = new StringBuffer();
-
-	/**
-	 * configure using an XMLNode
-	 * 
-	 * @param node
-	 * @param monitor
-	 */
-	private void configure(XMLNode node, IProgressMonitor monitor) {
-
-		fProgressMonitor = monitor;
-		fStructuredModel = node.getModel();
-		// fPositionNode = node;
-
-		fModelQuery = ModelQueryUtil.getModelQuery(node.getOwnerDocument());
-		fStructuredDocument = fStructuredModel.getStructuredDocument();
-
-		String className = createClassname(node);
-		if (className.length() > 0) {
-			setClassname(className);
-			fClassHeader = "public class " + className + " extends "; //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-
-	/**
-	 * memory saving configure (no StructuredDocument in memory) currently
-	 * doesn't handle included files
-	 * 
-	 * @param jspFile
-	 * @param monitor
-	 */
-	private void configure(IFile jspFile, IProgressMonitor monitor) {
-		// when configured on a file
-		// fStructuredModel, fPositionNode, fModelQuery, fStructuredDocument
-		// are all null
-
-		fProgressMonitor = monitor;
-
-		String className = createClassname(jspFile);
-		if (className.length() > 0) {
-			setClassname(className);
-			fClassHeader = "public class " + className + " extends "; //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-
-	/**
-	 * Set the jsp text from an IFile
-	 * 
-	 * @param jspFile
-	 */
-	private void setJspText(IFile jspFile) {
-		try {
-			BufferedInputStream in = new BufferedInputStream(jspFile.getContents());
-			BufferedReader reader = new BufferedReader(new InputStreamReader(in));
-			String line = null;
-			while ((line = reader.readLine()) != null) {
-				fJspTextBuffer.append(line);
-				fJspTextBuffer.append(ENDL);
-			}
-			reader.close();
-		}
-		catch (CoreException e) {
-			Logger.logException(e);
-		}
-		catch (IOException e) {
-			Logger.logException(e);
-		}
-	}
-
-	/**
-	 * @param node
-	 * @return
-	 */
-	private String createClassname(XMLNode node) {
-
-		String classname = ""; //$NON-NLS-1$
-		if (node != null) {
-			String base = node.getModel().getBaseLocation();
-			classname = JSP2ServletNameUtil.mangle(base);
-		}
-		return classname;
-	}
-
-	/**
-	 * @param jspFile
-	 * @return
-	 */
-	private String createClassname(IFile jspFile) {
-
-		String classname = ""; //$NON-NLS-1$
-		if (jspFile != null) {
-			classname = JSP2ServletNameUtil.mangle(jspFile.getFullPath().toString());
-		}
-		return classname;
-	}
-
-	public void setClassname(String classname) {
-		this.fClassname = classname;
-	}
-
-	public String getClassname() {
-		return this.fClassname != null ? this.fClassname : "GenericJspServlet"; //$NON-NLS-1$
-	}
-
-	/**
-	 * So that the JSPTranslator can be reused.
-	 */
-	public void reset(XMLNode node, IProgressMonitor progress) {
-
-		// initialize some things on node
-		configure(node, progress);
-		reset();
-		// set the jsp text buffer
-		fJspTextBuffer.append(fStructuredDocument.get());
-	}
-
-	/**
-	 * conservative version (no StructuredDocument/Model)
-	 * 
-	 * @param jspFile
-	 * @param progress
-	 */
-	public void reset(IFile jspFile, IProgressMonitor progress) {
-
-		// initialize some things on node
-		configure(jspFile, progress);
-		reset();
-		// set the jsp text buffer
-		setJspText(jspFile);
-	}
-
-	/**
-	 * Reinitialize some fields
-	 */
-	private void reset() {
-
-		// reset progress monitor
-		if (fProgressMonitor != null)
-			fProgressMonitor.setCanceled(false);
-
-		// reinit fields
-		fSourcePosition = -1;
-		fRelativeOffset = -1;
-		fCursorPosition = -1;
-
-		fIsErrorPage = fCursorInExpression = false;
-
-		fUserCode = new StringBuffer();
-		fUserDeclarations = new StringBuffer();
-		fUserImports = new StringBuffer();
-
-		fResult = null;
-		fCursorOwner = null; // the buffer where the cursor is
-
-		fCurrentNode = null;
-		fInCodeRegion = false; // flag for if cursor is in the current region
-		// being translated
-
-		if (fIncludes != null)
-			fIncludes.clear();
-
-		fBlockMarkers = null;
-
-		fJSPIncludeHelperMap = null;
-
-		fOffsetInUserImports = 0;
-		fOffsetInUserDeclarations = 0;
-		fOffsetInUserCode = 0;
-
-		fJava2JspRanges.clear();
-		fImportRanges.clear();
-		fCodeRanges.clear();
-		fUseBeanRanges.clear();
-		fDeclarationRanges.clear();
-		fIndirectRanges.clear();
-
-		fJspTextBuffer = new StringBuffer();
-	}
-
-	/**
-	 * @return just the "shell" of a servlet, nothing contributed from the JSP
-	 *         doc
-	 */
-	public final StringBuffer getEmptyTranslation() {
-		reset();
-		buildResult();
-		return getTranslation();
-	}
-
-	/**
-	 * put the final java document together
-	 */
-	private final void buildResult() {
-		// to build the java document this is the order:
-		// 
-		// + user imports
-		// + class header
-		// [+ error page]
-		// + user declarations
-		// + service method header
-		// + try/catch start
-		// + user code
-		// + try/catch end
-		// + service method footer
-		fResult = new StringBuffer(fUserImports.length() + fClassHeader.length() + fUserDeclarations.length() + fServiceHeader.length() + fTryCatchStart.length() // try/catch
-					// start
-					+ fUserCode.length() + fTryCatchEnd.length() // try/catch
-					// end
-					+ fFooter.length());
-		int javaOffset = 0;
-
-		// updateRanges(fIndirectImports, javaOffset);
-		// user imports
-		append(fUserImports);
-		javaOffset += fUserImports.length();
-		// updateRanges(fImportRanges, javaOffset);
-
-		// class header
-		fResult.append(fClassHeader); //$NON-NLS-1$
-		javaOffset += fClassHeader.length();
-		fResult.append(fSuperclass + "{" + ENDL); //$NON-NLS-1$
-		javaOffset += fSuperclass.length() + 2;
-
-		updateRanges(fDeclarationRanges, javaOffset);
-		// user declarations
-		append(fUserDeclarations);
-		javaOffset += fUserDeclarations.length();
-
-		fResult.append(fServiceHeader);
-		javaOffset += fServiceHeader.length();
-		// error page
-		if (fIsErrorPage) {
-			fResult.append(fException);
-			javaOffset += fException.length();
-		}
-
-
-		fResult.append(fTryCatchStart);
-		javaOffset += fTryCatchStart.length();
-
-		updateRanges(fCodeRanges, javaOffset);
-
-		// user code
-		append(fUserCode);
-		javaOffset += fUserCode.length();
-
-
-		fResult.append(fTryCatchEnd);
-		javaOffset += fTryCatchEnd.length();
-
-		// footer
-		fResult.append(fFooter);
-		javaOffset += fFooter.length();
-
-		fJava2JspRanges.putAll(fImportRanges);
-		fJava2JspRanges.putAll(fDeclarationRanges);
-		fJava2JspRanges.putAll(fCodeRanges);
-	}
-
-	/**
-	 * @param javaRanges
-	 * @param offsetInJava
-	 */
-	private void updateRanges(HashMap rangeMap, int offsetInJava) {
-		// just need to update java ranges w/ the offset we now know
-		Iterator it = rangeMap.keySet().iterator();
-		while (it.hasNext())
-			((Position) it.next()).offset += offsetInJava;
-	}
-
-	/**
-	 * map of ranges (positions) in java document to ranges in jsp document
-	 * 
-	 * @return a map of java positions to jsp positions.
-	 */
-	public HashMap getJava2JspRanges() {
-		return fJava2JspRanges;
-	}
-
-	/**
-	 * map of ranges in jsp document to ranges in java document.
-	 * 
-	 * @return a map of jsp positions to java positions, or null if no
-	 *         translation has occured yet (the map hasn't been built).
-	 */
-	public HashMap getJsp2JavaRanges() {
-		if (fJava2JspRanges == null)
-			return null;
-		HashMap flipFlopped = new HashMap();
-		Iterator keys = fJava2JspRanges.keySet().iterator();
-		Object range = null;
-		while (keys.hasNext()) {
-			range = keys.next();
-			flipFlopped.put(fJava2JspRanges.get(range), range);
-		}
-		return flipFlopped;
-	}
-
-	public HashMap getJava2JspImportRanges() {
-		return fImportRanges;
-	}
-
-	public HashMap getJava2JspUseBeanRanges() {
-		return fUseBeanRanges;
-	}
-
-	public HashMap getJava2JspIndirectRanges() {
-		return fIndirectRanges;
-	}
-
-	/**
-	 * Adds to the jsp<->java map by default
-	 * 
-	 * @param value
-	 *            a comma delimited list of imports
-	 */
-	protected void addImports(String value) {
-		addImports(value, true);
-	}
-
-	/**
-	 * Pass in a comma delimited list of import values, appends each to the
-	 * final result buffer
-	 * 
-	 * @param value
-	 *            a comma delimited list of imports
-	 */
-	protected void addImports(String value, boolean addToMap) {
-		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=81687
-		// added the "addToMap" parameter to exclude imports originating
-		// from included JSP files to be added to the jsp<->java mapping
-		StringTokenizer st = new StringTokenizer(value, ",", false); //$NON-NLS-1$
-		String tok = ""; //$NON-NLS-1$
-		// String appendage = ""; //$NON-NLS-1$
-		while (st.hasMoreTokens()) {
-			tok = st.nextToken();
-			appendImportToBuffer(tok, fCurrentNode, addToMap);
-		}
-	}
-
-	/**
-	 * /* keep track of cursor position inside the buffer /* appends buffer to
-	 * the final result buffer
-	 */
-	protected void append(StringBuffer buf) {
-		if (getCursorOwner() == buf) {
-			fCursorPosition = fResult.length() + getRelativeOffset();
-		}
-		fResult.append(buf.toString());
-	}
-
-	/**
-	 * Only valid after a configure(...), translate(...) or
-	 * translateFromFile(...) call
-	 * 
-	 * @return the current result (java translation) buffer
-	 */
-	public final StringBuffer getTranslation() {
-
-		if (DEBUG) {
-			Iterator it = fJava2JspRanges.keySet().iterator();
-			while (it.hasNext()) {
-				System.out.println("--------------------------------------------------------------");
-				Position java = (Position) it.next();
-				System.out.println("Java range:[" + java.offset + ":" + java.length + "]");
-				System.out.println("[" + fResult.toString().substring(java.offset, java.offset + java.length) + "]");
-				System.out.println("--------------------------------------------------------------");
-				System.out.println("|maps to...|");
-				System.out.println("==============================================================");
-				Position jsp = (Position) fJava2JspRanges.get(java);
-				System.out.println("JSP range:[" + jsp.offset + ":" + jsp.length + "]");
-				System.out.println("[" + fJspTextBuffer.toString().substring(jsp.offset, jsp.offset + jsp.length) + "]");
-				System.out.println("==============================================================");
-				System.out.println("");
-				System.out.println("");
-			}
-		}
-
-		return fResult;
-	}
-
-	/**
-	 * Only valid after a configure(...), translate(...) or
-	 * translateFromFile(...) call
-	 * 
-	 * @return the text in the JSP file
-	 */
-	public final String getJspText() {
-		return fJspTextBuffer.toString();
-	}
-
-	/**
-	 * adds the variables for a tag in a taglib to the dummy java document
-	 * 
-	 * @param tagToAdd
-	 *            is the name of the tag whose variables we want to add
-	 */
-	protected void addTaglibVariables(String tagToAdd) {
-		if (fModelQuery != null) {
-			// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5159
-			TLDCMDocumentManager docMgr = TaglibController.getTLDCMDocumentManager(fStructuredDocument);
-			if (docMgr == null)
-				return;
-			Iterator taglibs = docMgr.getCMDocumentTrackers(fCurrentNode.getStartOffset()).iterator();
-			CMDocument doc = null;
-			CMNamedNodeMap elements = null;
-			while (taglibs.hasNext()) {
-				doc = (CMDocument) taglibs.next();
-				CMNode node = null;
-				if ((elements = doc.getElements()) != null && (node = elements.getNamedItem(tagToAdd)) != null && node.getNodeType() == CMNode.ELEMENT_DECLARATION) {
-					if (node instanceof CMNodeWrapper) {
-						node = ((CMNodeWrapper) node).getOriginNode();
-					}
-					// future_TODO
-					// FOR TAGLIB 1.1 STYLE, WE NEED TO INSTANTIATE THE
-					// TagExtraInfo class and get the variables that way
-					// use reflection to create class...
-					// VariableInfo[] getVariableInfo(TagData data)
-					// THIS IS ONLY FOR TAGLIB 1.2 STYLE .tld files
-					List list = ((TLDElementDeclaration) node).getVariables();
-					Iterator it = list.iterator();
-					while (it.hasNext()) {
-						TLDVariable var = (TLDVariable) it.next();
-						String varName = var.getNameGiven();
-						if (varName == null) {
-							varName = var.getNameFromAttribute();
-						}
-						if (varName != null) {
-							String varClass = "java.lang.String"; //$NON-NLS-1$ // the default class...
-							if (var.getVariableClass() != null) {
-								varClass = var.getVariableClass();
-							}
-							// add to declarations...
-							String newDeclaration = varClass + " " + varName + " = null;" + ENDL; //$NON-NLS-1$ //$NON-NLS-2$
-							// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5159
-							// not adding to map to avoid strange refactoring
-							// behavior
-							appendToBuffer(newDeclaration, fUserCode, false, fCurrentNode);
-						}
-					}
-				}
-			}
-		}
-	}
-
-	/*
-	 * used by inner helper class (XMLJSPRegionHelper, JSPIncludeRegionHelper)
-	 */
-	public List getBlockMarkers() {
-		if (fBlockMarkers == null)
-			fBlockMarkers = new ArrayList();
-		return fBlockMarkers;
-	}
-
-	/**
-	 * /* the main control loop for translating the document, driven by the
-	 * structuredDocument nodes
-	 */
-	public void translate() {
-		setCurrentNode(fStructuredDocument.getFirstStructuredDocumentRegion());
-
-		while (getCurrentNode() != null && !isCanceled()) {
-
-			// intercept HTML comment flat node
-			// also handles UNDEFINED (which is what CDATA comes in as)
-			// basically this part will handle any "embedded" JSP containers
-			if (getCurrentNode().getType() == XMLRegionContext.XML_COMMENT_TEXT || getCurrentNode().getType() == XMLRegionContext.XML_CDATA_TEXT || getCurrentNode().getType() == XMLRegionContext.UNDEFINED) {
-				translateXMLCommentNode(getCurrentNode());
-			}
-			else // iterate through each region in the flat node
-			{
-				translateRegionContainer(getCurrentNode(), STANDARD_JSP);
-			}
-			if (getCurrentNode() != null)
-				advanceNextNode();
-		}
-		buildResult();
-	}
-
-	protected void setDocumentContent(IDocument document, InputStream contentStream, String charset) {
-		Reader in = null;
-		try {
-			in = new BufferedReader(new InputStreamReader(contentStream, charset), 2048);
-			StringBuffer buffer = new StringBuffer(2048);
-			char[] readBuffer = new char[2048];
-			int n = in.read(readBuffer);
-			while (n > 0) {
-				buffer.append(readBuffer, 0, n);
-				n = in.read(readBuffer);
-			}
-			document.set(buffer.toString());
-		}
-		catch (IOException x) {
-			// ignore
-		}
-		finally {
-			if (in != null) {
-				try {
-					in.close();
-				}
-				catch (IOException x) {
-					// ignore
-				}
-			}
-		}
-	}
-
-	/**
-	 * 
-	 * @return the status of the translator's progrss monitor, false if the
-	 *         monitor is null
-	 */
-	private boolean isCanceled() {
-		return (fProgressMonitor == null) ? false : fProgressMonitor.isCanceled();
-	}
-
-	private void advanceNextNode() {
-		setCurrentNode(getCurrentNode().getNext());
-		if (getCurrentNode() != null)
-			setSourceReferencePoint();
-	}
-
-	private void setSourceReferencePoint() {
-		if (isJSP(getCurrentNode().getFirstRegion().getType())) {
-			Iterator it = getCurrentNode().getRegions().iterator();
-			ITextRegion r = null;
-			while (it.hasNext()) {
-				r = (ITextRegion) it.next();
-				if (r.getType() == DOMJSPRegionContexts.JSP_CONTENT || r.getType() == XMLRegionContext.XML_CONTENT)
-					break;
-				else if (r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)
-					break;
-				else if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE && getCurrentNode().getFullText(r).trim().equals("import")) //$NON-NLS-1$
-					break;
-			}
-		}
-	}
-
-	/**
-	 * translates a region container (and XML JSP container, or <% JSP
-	 * container)
-	 */
-	protected void translateRegionContainer(ITextRegionCollection container, int JSPType) {
-
-		ITextRegionCollection containerRegion = container;
-		Iterator regions = containerRegion.getRegions().iterator();
-		ITextRegion region = null;
-		while (regions.hasNext()) {
-			region = (ITextRegion) regions.next();
-			String type = region.getType();
-			// PMR 91930
-			// CMVC 241869
-			// content assist was not showing up in JSP inside a javascript
-			// region
-			if (type == XMLRegionContext.BLOCK_TEXT) {
-				// check if it's nested jsp in a script tag...
-				if (region instanceof ITextRegionContainer) {
-					translateJSPNode(region, regions, type, EMBEDDED_JSP);
-				}
-				else {
-					// ////////////////////////////////////////////////////////////////////////////////
-					// THIS EMBEDDED JSP TEXT WILL COME OUT LATER WHEN
-					// PARTITIONING HAS
-					// SUPPORT FOR NESTED XML-JSP
-					// CMVC 241882
-					decodeScriptBlock(containerRegion.getFullText(region), containerRegion.getStartOffset());
-					// ////////////////////////////////////////////////////////////////////////////////
-				}
-			}
-			if (type != null && isJSP(type)) // <%, <%=, <%!, <%@
-			{
-				translateJSPNode(region, regions, type, JSPType);
-			}
-			else if (type != null && type == XMLRegionContext.XML_TAG_OPEN) {
-				translateXMLNode(containerRegion, regions);
-			}
-		}
-		// }
-	}
-
-	/*
-	 * ////////////////////////////////////////////////////////////////////////////////// **
-	 * TEMP WORKAROUND FOR CMVC 241882 Takes a String and blocks out
-	 * jsp:scriptlet, jsp:expression, and jsp:declaration @param blockText
-	 * @return
-	 */
-	private void decodeScriptBlock(String blockText, int startOfBlock) {
-		XMLJSPRegionHelper helper = new XMLJSPRegionHelper(this);
-		helper.addBlockMarker(new BlockMarker("jsp:scriptlet", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
-		helper.addBlockMarker(new BlockMarker("jsp:expression", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
-		helper.addBlockMarker(new BlockMarker("jsp:declaration", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
-		helper.addBlockMarker(new BlockMarker("jsp:directive.include", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
-		helper.addBlockMarker(new BlockMarker("jsp:directive.taglib", null, DOMJSPRegionContexts.JSP_CONTENT, false)); //$NON-NLS-1$
-		helper.reset(blockText, startOfBlock);
-		// force parse
-		helper.forceParse();
-		helper.writeToBuffers();
-	}
-
-	/*
-	 * returns string minus CDATA open and close text
-	 */
-	final public String stripCDATA(String text) {
-		String resultText = ""; //$NON-NLS-1$
-		String CDATA_OPEN = "<![CDATA["; //$NON-NLS-1$
-		String CDATA_CLOSE = "]]>"; //$NON-NLS-1$
-		int start = 0;
-		int end = text.length();
-		while (start < text.length()) {
-			if (text.indexOf(CDATA_OPEN, start) > -1) {
-				end = text.indexOf(CDATA_OPEN, start);
-				resultText += text.substring(start, end);
-				start = end + CDATA_OPEN.length();
-			}
-			else if (text.indexOf(CDATA_CLOSE, start) > -1) {
-				end = text.indexOf(CDATA_CLOSE, start);
-				resultText += text.substring(start, end);
-				start = end + CDATA_CLOSE.length();
-			}
-			else {
-				end = text.length();
-				resultText += text.substring(start, end);
-				break;
-			}
-		}
-		return resultText;
-	}
-
-	// END OF WORKAROUND CODE...
-	// /////////////////////////////////////////////////////////////////////////////////////
-	/**
-	 * determines if the type is a pure JSP type (not XML)
-	 */
-	protected boolean isJSP(String type) {
-		return ((type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || type == DOMJSPRegionContexts.JSP_CONTENT) && type != XMLRegionContext.XML_TAG_OPEN);
-		// checking XML_TAG_OPEN so <jsp:directive.xxx/> gets treated like
-		// other XML jsp tags
-	}
-
-	/**
-	 * translates the various XMLJSP type nodes
-	 * 
-	 * @param regions
-	 *            the regions of the XMLNode
-	 */
-	protected void translateXMLNode(ITextRegionCollection container, Iterator regions) {
-		// contents must be valid XHTML, translate escaped CDATA into what it
-		// really is...
-		ITextRegion r = null;
-		if (regions.hasNext()) {
-			r = (ITextRegion) regions.next();
-			if (r.getType() == XMLRegionContext.XML_TAG_NAME || r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) // <jsp:directive.xxx
-			// comes
-			// in
-			// as
-			// this
-			{
-				String fullTagName = container.getFullText(r).trim();
-				if (fullTagName.indexOf(':') > -1) {
-					addTaglibVariables(fullTagName); // it may be a taglib
-				}
-				StringTokenizer st = new StringTokenizer(fullTagName, ":.", false); //$NON-NLS-1$
-				if (st.hasMoreTokens() && st.nextToken().equals("jsp")) //$NON-NLS-1$
-				{
-					if (st.hasMoreTokens()) {
-						String jspTagName = st.nextToken();
-						if (jspTagName.equals("useBean")) //$NON-NLS-1$
-						{
-							advanceNextNode(); // get the content
-							if (getCurrentNode() != null) {
-								translateUseBean(container); // 'regions'
-								// should be
-								// all the
-								// useBean
-								// attributes
-							}
-						}
-						else if (jspTagName.equals("scriptlet")) //$NON-NLS-1$
-						{
-							// <jsp:scriptlet>scriptlet
-							// content...</jsp:scriptlet>
-							IStructuredDocumentRegion sdr = getCurrentNode().getNext();
-							if (sdr != null) {
-								translateScriptletString(sdr.getText(), sdr, sdr.getStartOffset(), sdr.getEndOffset());
-							}
-							advanceNextNode();
-						}
-						else if (jspTagName.equals("expression")) //$NON-NLS-1$
-						{
-							// <jsp:expression>expression
-							// content...</jsp:expression>
-							IStructuredDocumentRegion sdr = getCurrentNode().getNext();
-							if (sdr != null) {
-								translateExpressionString(sdr.getText(), sdr, sdr.getStartOffset(), sdr.getEndOffset());
-							}
-							advanceNextNode();
-						}
-						else if (jspTagName.equals("declaration")) //$NON-NLS-1$
-						{
-							// <jsp:declaration>declaration
-							// content...</jsp:declaration>
-							IStructuredDocumentRegion sdr = getCurrentNode().getNext();
-							if (sdr != null) {
-								translateDeclarationString(sdr.getText(), sdr, sdr.getStartOffset(), sdr.getEndOffset());
-
-							}
-							advanceNextNode();
-						}
-						else if (jspTagName.equals("directive")) //$NON-NLS-1$
-						{
-							if (st.hasMoreTokens()) {
-								String directiveName = st.nextToken();
-								if (directiveName.equals("taglib")) { //$NON-NLS-1$
-									handleTaglib();
-									return;
-								}
-								else if (directiveName.equals("include")) { //$NON-NLS-1$
-
-									String fileLocation = ""; //$NON-NLS-1$
-									String attrValue = ""; //$NON-NLS-1$
-									// CMVC 258311
-									// PMR 18368, B663
-									// skip to required "file" attribute,
-									// should be safe because
-									// "file" is the only attribute for the
-									// include directive
-									while (r != null && regions.hasNext() && !r.getType().equals(XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-										r = (ITextRegion) regions.next();
-									}
-									attrValue = getAttributeValue(r, regions);
-									if (attrValue != null)
-										handleIncludeFile(fileLocation);
-								}
-								else if (directiveName.equals("page")) { //$NON-NLS-1$
-
-									// 20040702 commenting this out
-									// bad if currentNode is referenced after
-									// here w/ the current list
-									// see:
-									// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3035
-									// setCurrentNode(getCurrentNode().getNext());
-									if (getCurrentNode() != null) {
-										translatePageDirectiveAttributes(regions); // 'regions'
-										// are
-										// attributes
-										// for
-										// the
-										// directive
-									}
-								}
-							}
-						}
-						else if (jspTagName.equals("include")) { //$NON-NLS-1$
-
-							// <jsp:include page="filename") />
-							while (regions.hasNext()) {
-								r = (ITextRegion) regions.next();
-								if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME && getCurrentNode().getText(r).equals("page")) { //$NON-NLS-1$
-									String filename = getAttributeValue(r, regions);
-									handleIncludeFile(filename);
-									break;
-								}
-							}
-						}
-					}
-				}
-				else {
-					// tag name is not jsp
-					// handle embedded jsp attributes...
-					ITextRegion embedded = null;
-					Iterator attrRegions = null;
-					ITextRegion attrChunk = null;
-					while (regions.hasNext()) {
-						embedded = (ITextRegion) regions.next();
-						if (embedded instanceof ITextRegionContainer) {
-							// parse out container
-							attrRegions = ((ITextRegionContainer) embedded).getRegions().iterator();
-							while (attrRegions.hasNext()) {
-								attrChunk = (ITextRegion) attrRegions.next();
-								String type = attrChunk.getType();
-								// CMVC 263661, embedded JSP in attribute
-								// support
-								// only want to translate one time per
-								// embedded region
-								// so we only translate on the JSP open tags
-								// (not content)
-								if (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN || type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN) {
-									// now call jsptranslate
-									// System.out.println("embedded jsp OPEN
-									// >>>> " +
-									// ((ITextRegionContainer)embedded).getText(attrChunk));
-									translateEmbeddedJSPInAttribute((ITextRegionContainer) embedded);
-								}
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * goes through comment regions, checks if any are an embedded JSP
-	 * container if it finds one, it's sends the container into the
-	 * translation routine
-	 */
-	protected void translateXMLCommentNode(IStructuredDocumentRegion node) {
-		Iterator it = node.getRegions().iterator();
-		ITextRegion commentRegion = null;
-		while (it != null && it.hasNext()) {
-			commentRegion = (ITextRegion) it.next();
-			if (commentRegion instanceof ITextRegionContainer) {
-				translateRegionContainer((ITextRegionContainer) commentRegion, EMBEDDED_JSP); // it's
-				// embedded
-				// jsp...iterate
-				// regions...
-			}
-		}
-	}
-
-	/**
-	 * determines which type of JSP node to translate
-	 */
-	protected void translateJSPNode(ITextRegion region, Iterator regions, String type, int JSPType) {
-		if (type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN && regions != null) {
-			translateDirective(regions);
-		}
-		else {
-			ITextRegionCollection contentRegion = null;
-			if (JSPType == STANDARD_JSP && (setCurrentNode(getCurrentNode().getNext())) != null) {
-				contentRegion = getCurrentNode();
-			}
-			else if (JSPType == EMBEDDED_JSP && region instanceof ITextRegionCollection) {
-				// CMVC 263661
-				translateEmbeddedJSPInBlock((ITextRegionCollection) region);
-				// ensure the rest of this method won't be called
-				contentRegion = null;
-			}
-			if (contentRegion != null) {
-				if (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) {
-					translateExpression(contentRegion);
-				}
-				else if (type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN) {
-					translateDeclaration(contentRegion);
-				}
-				else if (type == DOMJSPRegionContexts.JSP_CONTENT || type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) {
-					translateScriptlet(contentRegion);
-				}
-			}
-			else {
-				// this is the case of an attribute w/ no region <p
-				// align="<%%>">
-				setCursorOwner(getJSPTypeForRegion(region));
-			}
-		}
-	}
-
-	/**
-	 * Pass the ITextRegionCollection which is the embedded region
-	 * 
-	 * @param iterator
-	 */
-	private void translateEmbeddedJSPInBlock(ITextRegionCollection collection) {
-		Iterator regions = collection.getRegions().iterator();
-		ITextRegion region = null;
-		while (regions.hasNext()) {
-			region = (ITextRegion) regions.next();
-			if (isJSP(region.getType()))
-				break;
-			region = null;
-		}
-		if (region != null) {
-			translateEmbeddedJSPInAttribute(collection);
-		}
-	}
-
-	/*
-	 * for example: <a href="index.jsp?p=<%=abc%>b=<%=xyz%>">abc</a>
-	 */
-	private void translateEmbeddedJSPInAttribute(ITextRegionCollection embeddedContainer) {
-		// THIS METHOD IS A FIX FOR CMVC 263661 (jsp embedded in attribute
-		// regions)
-
-		// loop all regions
-		ITextRegionList embeddedRegions = embeddedContainer.getRegions();
-		ITextRegion delim = null;
-		ITextRegion content = null;
-		String type = null;
-		for (int i = 0; i < embeddedRegions.size(); i++) {
-
-			// possible delimiter, check later
-			delim = embeddedRegions.get(i);
-			type = delim.getType();
-
-			// check next region to see if it's content
-			if (i + 1 < embeddedRegions.size()) {
-				if (embeddedRegions.get(i + 1).getType() == DOMJSPRegionContexts.JSP_CONTENT)
-					content = embeddedRegions.get(i + 1);
-			}
-
-			if (content != null) {
-				int contentStart = embeddedContainer.getStartOffset(content);
-				int rStart = fCurrentNode.getStartOffset() + contentStart;
-				int rEnd = fCurrentNode.getStartOffset() + embeddedContainer.getEndOffset(content);
-
-				boolean inThisRegion = rStart <= fSourcePosition && rEnd >= fSourcePosition;
-				// int jspPositionStart = fCurrentNode.getStartOffset() +
-				// contentStart;
-
-				if (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) {
-					fLastJSPType = EXPRESSION;
-					translateExpressionString(embeddedContainer.getText(content), fCurrentNode, contentStart, content.getLength());
-				}
-				else if (type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) {
-					fLastJSPType = SCRIPTLET;
-					translateScriptletString(embeddedContainer.getText(content), fCurrentNode, contentStart, content.getLength());
-				}
-				else if (type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN) {
-					fLastJSPType = DECLARATION;
-					translateDeclarationString(embeddedContainer.getText(content), fCurrentNode, contentStart, content.getLength());
-				}
-
-				// calculate relative offset in buffer
-				if (inThisRegion) {
-					setCursorOwner(fLastJSPType);
-					int currentBufferLength = getCursorOwner().length();
-					setRelativeOffset((fSourcePosition - contentStart) + currentBufferLength);
-					if (fLastJSPType == EXPRESSION) {
-						// if an expression, add then length of the enclosing
-						// paren..
-						setCursorInExpression(true);
-						setRelativeOffset(getRelativeOffset() + EXPRESSION_PREFIX.length());
-					}
-				}
-			}
-			else {
-				type = null;
-				content = null;
-			}
-		}
-	}
-
-	private int fLastJSPType = SCRIPTLET;
-
-	/**
-	 * JSPType is only used internally in this class to describe tye type of
-	 * region to be translated
-	 * 
-	 * @param region
-	 * @return int
-	 */
-	private int getJSPTypeForRegion(ITextRegion region) {
-		String regionType = region.getType();
-		int type = SCRIPTLET;
-		if (regionType == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN)
-			type = SCRIPTLET;
-		else if (regionType == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN)
-			type = EXPRESSION;
-		else if (regionType == DOMJSPRegionContexts.JSP_DECLARATION_OPEN)
-			type = DECLARATION;
-		else if (regionType == DOMJSPRegionContexts.JSP_CONTENT)
-			type = fLastJSPType;
-		// remember the last type, in case the next type that comes in is
-		// JSP_CONTENT
-		fLastJSPType = type;
-		return type;
-	}
-
-	/**
-	 * /* <%@ %> /* need to pass in the directive tag region
-	 */
-	protected void translateDirective(Iterator regions) {
-		ITextRegion r = null;
-		String regionText, attrValue = ""; //$NON-NLS-1$
-		while (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) { // could
-			// be
-			// XML_CONTENT
-			// =
-			// "",
-			// skips
-			// attrs?
-			regionText = getCurrentNode().getText(r);
-			if (regionText.indexOf("taglib") > -1) { //$NON-NLS-1$
-				// add custom tag block markers here
-				handleTaglib();
-				return;
-			}
-			else if (regionText.equals("include")) { //$NON-NLS-1$
-				String fileLocation = ""; //$NON-NLS-1$
-				// CMVC 258311
-				// PMR 18368, B663
-				// skip to required "file" attribute, should be safe because
-				// "file" is the only attribute for the include directive
-				while (r != null && regions.hasNext() && !r.getType().equals(XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-					r = (ITextRegion) regions.next();
-				}
-				fileLocation = getAttributeValue(r, regions);
-				if (attrValue != null)
-					handleIncludeFile(fileLocation);
-			}
-			else if (regionText.indexOf("page") > -1) { //$NON-NLS-1$
-				translatePageDirectiveAttributes(regions);
-			}
-		}
-	}
-
-	/*
-	 * This method should ideally only be called once per run through
-	 * JSPTranslator This is intended for use by inner helper classes that
-	 * need to add block markers to their own parsers. This method only adds
-	 * markers that came from <@taglib> directives, (not <@include>), since
-	 * include file taglibs are handled on the fly when they are encountered. *
-	 * @param regions
-	 */
-	protected void handleTaglib() {
-		// get/create TLDCMDocument
-		TLDCMDocumentManager mgr = TaglibController.getTLDCMDocumentManager(fStructuredDocument);
-		if (mgr != null) {
-			List trackers = mgr.getCMDocumentTrackers(getCurrentNode().getEnd());
-			Iterator it = trackers.iterator();
-			CMDocumentTracker tracker = null;
-			Iterator taglibRegions = null;
-			IStructuredDocumentRegion sdRegion = null;
-			ITextRegion r = null;
-			while (it.hasNext()) {
-				tracker = (CMDocumentTracker) it.next();
-				sdRegion = tracker.getStructuredDocumentRegion();
-				// since may be call from another thread (like a background job)
-				// this check is to be safer
-				if(sdRegion != null && !sdRegion.isDeleted()) {
-					taglibRegions = sdRegion.getRegions().iterator();
-					while (sdRegion != null && !sdRegion.isDeleted() && taglibRegions.hasNext()) {
-						r = (ITextRegion) taglibRegions.next();
-						if (r.getType().equals(DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)) {
-							if (sdRegion.getText(r).equals(JSP12TLDNames.TAGLIB)) {
-								addBlockMarkers(tracker.getDocument());
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-
-	/*
-	 * adds block markers to JSPTranslator's block marker list for all
-	 * elements in doc @param doc
-	 */
-	protected void addBlockMarkers(CMDocument doc) {
-		if (doc.getElements().getLength() > 0) {
-			Iterator elements = doc.getElements().iterator();
-			CMNode node = null;
-			while (elements.hasNext()) {
-				node = (CMNode) elements.next();
-				getBlockMarkers().add(new BlockMarker(node.getNodeName(), null, DOMJSPRegionContexts.JSP_CONTENT, true));
-			}
-		}
-	}
-
-	/**
-	 * If r is an attribute name region, this method will safely return the
-	 * value for that attribute.
-	 * 
-	 * @param r
-	 * @param remainingRegions
-	 * @return the value for the attribute name (r), or null if isn't one
-	 */
-	protected String getAttributeValue(ITextRegion r, Iterator remainingRegions) {
-		if (r.getType().equals(XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-			if (remainingRegions.hasNext() && (r = (ITextRegion) remainingRegions.next()) != null && r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				if (remainingRegions.hasNext() && (r = (ITextRegion) remainingRegions.next()) != null && r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-					// handle include for the filename
-					return StringUtils.stripQuotes(getCurrentNode().getText(r));
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * takes an emnumeration of the attributes of a directive tag
-	 */
-	protected void translatePageDirectiveAttributes(Iterator regions) {
-		ITextRegion r = null;
-		String attrName, attrValue;
-		// iterate all attributes
-		while (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() != DOMJSPRegionContexts.JSP_CLOSE) {
-			attrName = attrValue = null;
-			if (r.getType().equals(XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-
-				attrName = getCurrentNode().getText(r).trim();
-				if (attrName.length() > 0) {
-					if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-						if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-
-							attrValue = StringUtils.strip(getCurrentNode().getText(r));
-						}
-						// has equals, but no value?
-					}
-					setDirectiveAttribute(attrName, attrValue);
-				}
-			}
-		}
-	}
-
-	/**
-	 * sets the appropriate page directive attribute
-	 */
-	protected void setDirectiveAttribute(String attrName, String attrValue) {
-		if (attrValue == null)
-			return; // uses default (if there was one)
-		if (attrName.equals("extends")) //$NON-NLS-1$
-		{
-			fSuperclass = attrValue;
-		}
-		else if (attrName.equals("import")) //$NON-NLS-1$
-		{
-			addImports(attrValue);
-		}
-		else if (attrName.equals("session")) //$NON-NLS-1$
-		{
-			// fSession = ("true".equalsIgnoreCase(attrValue)); //$NON-NLS-1$
-		}
-		else if (attrName.equals("buffer")) //$NON-NLS-1$
-		{
-			// ignore for now
-		}
-		else if (attrName.equals("autoFlush")) //$NON-NLS-1$
-		{
-			// ignore for now
-		}
-		else if (attrName.equals("isThreadSafe")) //$NON-NLS-1$
-		{
-			// fThreadSafe = "true".equalsIgnoreCase(attrValue); //$NON-NLS-1$
-		}
-		else if (attrName.equals("isErrorPage")) //$NON-NLS-1$
-		{
-			fIsErrorPage = Boolean.valueOf(attrValue).booleanValue();
-		}
-	}
-
-	protected void handleIncludeFile(String filename) {
-		if (filename != null) {
-			String fileLocation = null;
-			if (getResolver() != null) {
-				fileLocation = (getIncludes().empty()) ? getResolver().getLocationByURI(StringUtils.strip(filename)) : getResolver().getLocationByURI(StringUtils.strip(filename), (String) getIncludes().peek());
-			}
-			else {
-				// shouldn't happen
-				fileLocation = StringUtils.strip(filename);
-			}
-			// hopefully, a resolver is present and has returned a canonical
-			// file path
-			if (!getIncludes().contains(fileLocation) && getBaseLocation() != null && !fileLocation.equals(getBaseLocation())) {
-				getIncludes().push(fileLocation);
-				JSPIncludeRegionHelper helper = getIncludesHelper(fileLocation);
-				helper.parse(fileLocation);
-				helper.writeToBuffers();
-				getIncludes().pop();
-			}
-		}
-	}
-
-	/*
-	 * one helper per fileLocation
-	 */
-	protected JSPIncludeRegionHelper getIncludesHelper(String fileLocation) {
-		// lazy creation
-		if (fJSPIncludeHelperMap == null) {
-			fJSPIncludeHelperMap = new HashMap();
-		}
-		JSPIncludeRegionHelper helper = (JSPIncludeRegionHelper) fJSPIncludeHelperMap.get(fileLocation);
-		if (helper == null) {
-			helper = new JSPIncludeRegionHelper(this);
-			fJSPIncludeHelperMap.put(fileLocation, helper);
-		}
-		return helper;
-	}
-
-	private URIResolver getResolver() {
-		return (fStructuredModel != null) ? fStructuredModel.getResolver() : null;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	private String getBaseLocation() {
-		if (getResolver() == null)
-			return null;
-		return getResolver().getFileBaseLocation();
-	}
-
-	private Stack getIncludes() {
-		if (fIncludes == null)
-			fIncludes = new Stack();
-		return fIncludes;
-	}
-
-	protected void translateExpressionString(String newText, ITextRegionCollection embeddedContainer, int jspPositionStart, int jspPositionLength) {
-		appendToBuffer(EXPRESSION_PREFIX, fUserCode, false, embeddedContainer);
-		appendToBuffer(newText, fUserCode, true, embeddedContainer, jspPositionStart, jspPositionLength);
-		appendToBuffer(EXPRESSION_SUFFIX, fUserCode, false, embeddedContainer);
-	}
-
-	protected void translateDeclarationString(String newText, ITextRegionCollection embeddedContainer, int jspPositionStart, int jspPositionLength) {
-		appendToBuffer(newText, fUserDeclarations, true, embeddedContainer, jspPositionStart, jspPositionLength);
-		appendToBuffer(ENDL, fUserDeclarations, false, embeddedContainer);
-	}
-
-	/**
-	 * used by XMLJSPRegionHelper for included JSP files
-	 * 
-	 * @param newText
-	 * @param embeddedContainer
-	 * @param jspPositionStart
-	 * @param jspPositionLength
-	 */
-	protected void translateScriptletString(String newText, ITextRegionCollection embeddedContainer, int jspPositionStart, int jspPositionLength) {
-		appendToBuffer(newText, fUserCode, true, embeddedContainer, jspPositionStart, jspPositionLength);
-	}
-
-	// the following 3 methods determine the cursor position
-	// <%= %>
-	protected void translateExpression(ITextRegionCollection region) {
-		String newText = getUnescapedRegionText(region, EXPRESSION);
-		appendToBuffer(EXPRESSION_PREFIX, fUserCode, false, fCurrentNode);
-		appendToBuffer(newText, fUserCode, true, fCurrentNode);
-		appendToBuffer(EXPRESSION_SUFFIX, fUserCode, false, fCurrentNode);
-	}
-
-	//
-	// <%! %>
-	protected void translateDeclaration(ITextRegionCollection region) {
-		String newText = getUnescapedRegionText(region, DECLARATION);
-		appendToBuffer(newText, fUserDeclarations, true, fCurrentNode);
-		appendToBuffer(ENDL, fUserDeclarations, false, fCurrentNode);
-	}
-
-	//
-	// <% %>
-	protected void translateScriptlet(ITextRegionCollection region) {
-		String newText = getUnescapedRegionText(region, SCRIPTLET);
-		appendToBuffer(newText, fUserCode, true, fCurrentNode);
-	}
-
-	/**
-	 * Append using a region, probably indirect mapping (eg. <%@page
-	 * include=""%>)
-	 * 
-	 * @param newText
-	 * @param buffer
-	 * @param addToMap
-	 * @param jspReferenceRegion
-	 */
-	private void appendToBuffer(String newText, StringBuffer buffer, boolean addToMap, ITextRegionCollection jspReferenceRegion) {
-		int start = 0, length = 0;
-		if (jspReferenceRegion != null) {
-			start = jspReferenceRegion.getStartOffset();
-			length = jspReferenceRegion.getLength();
-		}
-		appendToBuffer(newText, buffer, addToMap, jspReferenceRegion, start, length, false);
-	}
-
-	private void appendToBuffer(String newText, StringBuffer buffer, boolean addToMap, ITextRegionCollection jspReferenceRegion, int jspPositionStart, int jspPositionLength) {
-		appendToBuffer(newText, buffer, addToMap, jspReferenceRegion, jspPositionStart, jspPositionLength, true);
-	}
-
-	/**
-	 * Adds newText to the buffer passed in, and adds to translation mapping
-	 * as specified by the addToMap flag. some special cases to consider (that
-	 * may be affected by changes to this method): included files scriplets in
-	 * an attribute value refactoring
-	 * 
-	 * @param newText
-	 * @param buffer
-	 * @param addToMap
-	 */
-	private void appendToBuffer(String newText, StringBuffer buffer, boolean addToMap, ITextRegionCollection jspReferenceRegion, int jspPositionStart, int jspPositionLength, boolean isIndirect) {
-
-		// nothing to append
-		if (jspReferenceRegion == null)
-			return;
-
-		// add a newline so translation looks cleaner
-		if (!newText.endsWith(ENDL))
-			newText += ENDL;
-
-		if (buffer == fUserCode) {
-			buffer.append(newText);
-			if (addToMap) {
-				if (isUsebeanTag(jspReferenceRegion)) {
-					try {
-						// requires special mapping
-						appendUseBeanToBuffer(newText, jspReferenceRegion, isIndirect);
-					}
-					catch (Exception e) {
-						// still working out kinks
-						Logger.logException(e);
-					}
-				}
-				else {
-					// all other cases
-					Position javaRange = new Position(fOffsetInUserCode, newText.length());
-					Position jspRange = new Position(jspPositionStart, jspPositionLength);
-
-					fCodeRanges.put(javaRange, jspRange);
-					if (isIndirect)
-						fIndirectRanges.put(javaRange, jspRange);
-				}
-			}
-			fOffsetInUserCode += newText.length();
-		}
-		else if (buffer == fUserDeclarations) {
-			buffer.append(newText);
-			if (addToMap) {
-				Position javaRange = new Position(fOffsetInUserDeclarations, newText.length());
-				Position jspRange = new Position(jspPositionStart, jspPositionLength);
-
-				fDeclarationRanges.put(javaRange, jspRange);
-				if (isIndirect)
-					fIndirectRanges.put(javaRange, jspRange);
-			}
-			fOffsetInUserDeclarations += newText.length();
-		}
-	}
-
-	/**
-	 * 
-	 * @param jspReferenceRegion
-	 * @return
-	 */
-	private boolean isUsebeanTag(ITextRegionCollection jspReferenceRegion) {
-		ITextRegionList regions = jspReferenceRegion.getRegions();
-		ITextRegion r = null;
-		boolean isUseBean = false;
-		for (int i = 0; i < regions.size(); i++) {
-			r = regions.get(i);
-			if (r.getType() == XMLRegionContext.XML_TAG_NAME && jspReferenceRegion.getText(r).equals("jsp:useBean")) { //$NON-NLS-1$
-				isUseBean = true;
-				break;
-			}
-		}
-		return isUseBean;
-	}
-
-	/**
-	 * @param importName
-	 *            should be just the package plus the type eg. java.util.List
-	 *            or java.util.*
-	 * @param jspReferenceRegion
-	 *            should be the <%@ page import = "java.util.List"%> region
-	 * @param addToMap
-	 */
-	private void appendImportToBuffer(String importName, ITextRegionCollection jspReferenceRegion, boolean addToMap) {
-		String javaImportString = "import " + importName + ";" + ENDL;
-		fUserImports.append(javaImportString);
-		if (addToMap) {
-			addImportToMap(importName, jspReferenceRegion);
-		}
-		fOffsetInUserImports += javaImportString.length();
-	}
-
-	/**
-	 * new text can be something like: "import java.lang.Object;\n"
-	 * 
-	 * but the reference region could have been something like: <%@page
-	 * import="java.lang.Object, java.io.*, java.util.List"%>
-	 * 
-	 * so the exact mapping has to be calculated carefully.
-	 * 
-	 * isIndirect means that the import came from an included file (if true)
-	 * 
-	 * @param importName
-	 * @param jspReferenceRegion
-	 */
-	private void addImportToMap(String importName, ITextRegionCollection jspReferenceRegion) {
-
-		// massage text
-		// String jspText = importName.substring(importName.indexOf("import ")
-		// + 7, importName.indexOf(';'));
-		// String jspText = importName.trim();
-
-		// these positions will be updated below
-		Position javaRange = new Position(fOffsetInUserImports + 7, 1);
-		Position jspRange = new Position(jspReferenceRegion.getStart(), jspReferenceRegion.getLength());
-
-		// calculate JSP range by finding "import" attribute
-		ITextRegionList regions = jspReferenceRegion.getRegions();
-		int size = regions.size();
-
-		int start = -1;
-		int length = -1;
-
-		ITextRegion r = null;
-		for (int i = 0; i < size; i++) {
-			r = regions.get(i);
-			if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)
-				if (jspReferenceRegion.getText(r).trim().equals("import")) { //$NON-NLS-1$
-					// get the attr value region
-					if (size > i + 2) {
-						r = regions.get(i + 2);
-						if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-
-							String jspImportText = jspReferenceRegion.getText(r);
-
-							// the position in question (in the JSP) is what
-							// is bracketed below
-							// includes whitespace
-							// <%@page import="java.lang.Object,[ java.io.* ],
-							// java.util.List"%>
-
-							// in the java file
-							// import [ java.io.* ];
-
-							start = jspImportText.indexOf(importName);
-							length = importName.length();
-
-							// safety, don't add to map if bad positioning
-							if (start == -1 || length < 1)
-								break;
-
-							// update jsp range
-							jspRange.setOffset(jspReferenceRegion.getStartOffset(r) + start);
-							jspRange.setLength(length);
-
-							// update java range
-							javaRange.setLength(length);
-
-							break;
-						}
-					}
-				}
-		}
-
-		// safety for bad ranges
-		if (start != -1 && length > 1) {
-			// put ranges in java -> jsp range map
-			fImportRanges.put(javaRange, jspRange);
-		}
-	}
-
-	/**
-	 * temp fix for 282295 until better mapping is in place
-	 * 
-	 * @param newText
-	 * @param jspReferenceRegion
-	 */
-	private void appendUseBeanToBuffer(String newText, ITextRegionCollection jspReferenceRegion, boolean isIndirect) throws Exception {
-		// java string looks like this (tokenized)
-		// Type id = new Classname();\n
-		// 0 1 2 3 4
-		// or
-		// Type id = null;\n // if there is no classname
-		// 0 1 2 3
-
-		// ----------------------
-		// calculate java ranges
-		// ----------------------
-		StringTokenizer st = new StringTokenizer(newText, " ", false); //$NON-NLS-1$
-		int i = 0;
-		String[] parsedJava = new String[st.countTokens()];
-		while (st.hasMoreTokens())
-			parsedJava[i++] = st.nextToken();
-
-		String type = parsedJava[0] != null ? parsedJava[0] : ""; //$NON-NLS-1$
-		String id = parsedJava[1] != null ? parsedJava[1] : ""; //$NON-NLS-1$
-		String className = parsedJava.length > 4 ? parsedJava[4] : ""; //$NON-NLS-1$
-
-		Position javaTypeRange = new Position(fOffsetInUserCode, type.length());
-		Position javaIdRange = new Position(fOffsetInUserCode + type.length() + 1, id.length());
-		Position javaClassRange = new Position(fOffsetInUserCode + type.length() + 1 + id.length() + 7, 0);
-		if (className.length() >= 4) {
-			// https://bugs.eclipse.org/bugs/show_bug.cgi?id=86132
-			int classNameLength = className.substring(0, className.indexOf('(')).length();
-			javaClassRange = new Position(fOffsetInUserCode + type.length() + 1 + id.length() + 7, classNameLength);
-		}
-
-		// ---------------------
-		// calculate jsp ranges
-		// ---------------------
-		ITextRegionList regions = jspReferenceRegion.getRegions();
-		ITextRegion r = null;
-		String attrName = "", attrValue = ""; //$NON-NLS-1$ //$NON-NLS-2$
-		int quoteOffset = 0;
-		Position jspTypeRange = null;
-		Position jspIdRange = null;
-		Position jspClassRange = null;
-
-		for (int j = 0; j < regions.size(); j++) {
-			r = regions.get(j);
-			if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				attrName = jspReferenceRegion.getText(r);
-				if (regions.size() >= j + 2 && regions.get(j + 2).getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-					// get attr value
-					r = regions.get(j + 2);
-					attrValue = jspReferenceRegion.getText(r);
-
-					// may have quotes
-					quoteOffset = (attrValue.startsWith("\"") || attrValue.startsWith("'")) ? 1 : 0; //$NON-NLS-1$ //$NON-NLS-2$
-
-					if (attrName.equals("type")) //$NON-NLS-1$
-						jspTypeRange = new Position(jspReferenceRegion.getStartOffset(r) + quoteOffset, StringUtils.stripQuotesLeaveInsideSpace(attrValue).length());
-					else if (attrName.equals("id")) //$NON-NLS-1$
-						jspIdRange = new Position(jspReferenceRegion.getStartOffset(r) + quoteOffset, StringUtils.stripQuotesLeaveInsideSpace(attrValue).length());
-					else if (attrName.equals("class")) //$NON-NLS-1$
-						jspClassRange = new Position(jspReferenceRegion.getStartOffset(r) + quoteOffset, StringUtils.stripQuotesLeaveInsideSpace(attrValue).length());
-				}
-			}
-		}
-
-		// put ranges in java -> jsp range map
-		if (!type.equals("") && jspTypeRange != null) { //$NON-NLS-1$
-			fCodeRanges.put(javaTypeRange, jspTypeRange);
-			// note: don't update offsets for this map when result is built
-			// they'll be updated when code ranges offsets are updated
-			fUseBeanRanges.put(javaTypeRange, jspTypeRange);
-			if (isIndirect)
-				fIndirectRanges.put(javaTypeRange, jspTypeRange);
-		}
-		if (!id.equals("") && jspIdRange != null) { //$NON-NLS-1$
-			fCodeRanges.put(javaIdRange, jspIdRange);
-			// note: don't update offsets for this map when result is built
-			// they'll be updated when code ranges offsets are updated
-			fUseBeanRanges.put(javaIdRange, jspTypeRange);
-			if (isIndirect)
-				fIndirectRanges.put(javaIdRange, jspTypeRange);
-		}
-		if (!className.equals("") && jspClassRange != null) { //$NON-NLS-1$
-			fCodeRanges.put(javaClassRange, jspClassRange);
-			// note: don't update offsets for this map when result is built
-			// they'll be updated when code ranges offsets are updated
-			fUseBeanRanges.put(javaClassRange, jspTypeRange);
-			if (isIndirect)
-				fIndirectRanges.put(javaClassRange, jspTypeRange);
-		}
-	}
-
-	/**
-	 * Set the buffer to the current JSPType: STANDARD_JSP, EMBEDDED_JSP,
-	 * DECLARATION, EXPRESSION, SCRIPTLET (for keepting track of cursor
-	 * position when the final document is built)
-	 * 
-	 * @param JSPType
-	 *            the JSP type that the cursor is in
-	 */
-	protected void setCursorOwner(int JSPType) {
-		switch (JSPType) {
-			case DECLARATION :
-				setCursorOwner(fUserDeclarations);
-				break;
-			case EXPRESSION :
-			case SCRIPTLET :
-				setCursorOwner(fUserCode);
-				break;
-			default :
-				setCursorOwner(fUserCode);
-		}
-	}
-
-	/**
-	 * this piece of code iterates through fCurrentNodes and clumps them
-	 * together in a big text string - unescaping characters if they are not
-	 * CDATA - simply appending if they are CDATA it stops iteration when it
-	 * hits a node that is an XML_TAG_NAME (which should be the region closing
-	 * tag)
-	 */
-	protected String getUnescapedRegionText(ITextRegionCollection stRegion, int JSPType) {
-		StringBuffer buffer = new StringBuffer();
-		int start = stRegion.getStartOffset();
-		int end = stRegion.getEndOffset();
-		// adjustment necessary for embedded region containers
-		if (stRegion instanceof ITextRegionContainer && stRegion.getType() == XMLRegionContext.BLOCK_TEXT) {
-			if (stRegion.getRegions() != null && stRegion.getRegions().size() > 1) {
-				ITextRegion jspContent = stRegion.getRegions().get(1); // should
-				// be
-				// jspContent
-				// region
-				start = stRegion.getStartOffset(jspContent);
-				end = stRegion.getEndOffset(jspContent);
-			}
-		}
-		int CDATAOffset = 0; // number of characters lost in conversion
-		int bufferSize = 0;
-		if (stRegion.getType() == DOMJSPRegionContexts.JSP_CONTENT || stRegion.getType() == XMLRegionContext.BLOCK_TEXT // need
-					// this
-					// for
-					// embedded
-					// JSP
-					// regions
-					|| stRegion.getType() == XMLRegionContext.XML_TAG_NAME) // need
-		// this
-		// in
-		// case
-		// there's
-		// no
-		// region...
-		{
-			fInCodeRegion = (start <= fSourcePosition && fSourcePosition <= end);
-			if (fInCodeRegion) {
-				setCursorOwner(JSPType);
-				setRelativeOffset((fSourcePosition - start) + getCursorOwner().length());
-				if (JSPType == EXPRESSION) {
-					// if an expression, add then length of the enclosing
-					// paren..
-					setCursorInExpression(true);
-					setRelativeOffset(getRelativeOffset() + EXPRESSION_PREFIX.length());
-				}
-			}
-			ITextRegion jspContent = null;
-			if (stRegion.getRegions() != null && stRegion.getRegions().size() > 1)
-				jspContent = stRegion.getRegions().get(1);
-			return (jspContent != null) ? stRegion.getFullText(jspContent) : stRegion.getFullText(); // don't
-			// unescape
-			// if
-			// it's
-			// not
-			// an
-			// XMLJSP
-			// tag
-		}
-		else if (stRegion.getType() == DOMJSPRegionContexts.JSP_CLOSE) {
-			// need to determine cursor owner so that the fCurosorPosition
-			// will be
-			// correct even if there is no region after the cursor in the JSP
-			// file
-			setCursorOwner(JSPType);
-		}
-		// iterate XMLCONTENT and CDATA regions
-		// loop fCurrentNode until you hit </jsp:scriptlet> (or other closing
-		// tag name)
-		while (getCurrentNode() != null && getCurrentNode().getType() != XMLRegionContext.XML_TAG_NAME) // need
-		// to
-		// stop
-		// on
-		// the
-		// ending
-		// tag
-		// name...
-		{
-			start = getCurrentNode().getStartOffset();
-			end = getCurrentNode().getEndOffset();
-			bufferSize = buffer.length();
-			CDATAOffset = unescapeRegion(getCurrentNode(), buffer);
-			fInCodeRegion = (start <= fSourcePosition && fSourcePosition <= end);
-			if (fInCodeRegion) {
-				setCursorOwner(JSPType);
-				// this offset is sort of complicated...
-				// it's composed of:
-				// 1. the length of the start of the current region up till
-				// where the cursor is
-				// 2. minus the number of characters lost in CDATA translation
-				// 3. plus the length of the escaped buffer before the current
-				// region, but
-				// is still within the jsp tag
-				setRelativeOffset((fSourcePosition - getCurrentNode().getStartOffset()) + getCursorOwner().length() - CDATAOffset + bufferSize);
-				if (JSPType == EXPRESSION) {
-					setCursorInExpression(true);
-					// if an expression, add then length of the enclosing
-					// paren..
-					setRelativeOffset(getRelativeOffset() + EXPRESSION_PREFIX.length());
-				}
-			}
-			if (getCurrentNode() != null)
-				advanceNextNode();
-		}
-		return buffer.toString();
-	}
-
-	/**
-	 * @param r
-	 *            the region to be unescaped (XMLContent, XML ENTITY
-	 *            REFERENCE, or CDATA)
-	 * @param sb
-	 *            the stringbuffer to append the text to
-	 * @return the number of characters removed in unescaping this text
-	 */
-	protected int unescapeRegion(ITextRegion r, StringBuffer sb) {
-		String s = ""; //$NON-NLS-1$
-		int lengthBefore = 0, lengthAfter = 0, cdata_tags_length = 0;
-		if (r != null && (r.getType() == XMLRegionContext.XML_CONTENT || r.getType() == XMLRegionContext.XML_ENTITY_REFERENCE)) {
-			lengthBefore = (getCurrentNode() != r) ? getCurrentNode().getFullText(r).length() : getCurrentNode().getFullText().length();
-			s = EscapedTextUtil.getUnescapedText(getCurrentNode(), r);
-			lengthAfter = s.length();
-			sb.append(s);
-		}
-		else if (r != null && r.getType() == XMLRegionContext.XML_CDATA_TEXT) {
-			if (r instanceof ITextRegionContainer) // only interested in
-													// contents
-			{
-				// navigate to next region container (which should be a JSP
-				// region)
-				Iterator it = ((ITextRegionContainer) r).getRegions().iterator();
-				ITextRegion temp = null;
-				while (it.hasNext()) {
-					temp = (ITextRegion) it.next();
-					if (temp instanceof ITextRegionContainer || temp.getType() == XMLRegionContext.XML_CDATA_TEXT) {
-						sb.append(getCurrentNode().getFullText(temp));
-					}
-					else if (temp.getType() == XMLRegionContext.XML_CDATA_OPEN || temp.getType() == XMLRegionContext.XML_CDATA_CLOSE) {
-						cdata_tags_length += temp.getLength();
-					}
-				}
-			}
-		}
-		return (lengthBefore - lengthAfter + cdata_tags_length);
-	}
-
-	//
-	// <jsp:useBean>
-	protected void translateUseBean(ITextRegionCollection container) {
-		ITextRegion r = null;
-		String attrName = null;
-		String attrValue = null;
-		String id = null;
-		String type = null;
-		String className = null;
-
-		Iterator regions = container.getRegions().iterator();
-		while (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && (r.getType() != XMLRegionContext.XML_TAG_CLOSE || r.getType() != XMLRegionContext.XML_EMPTY_TAG_CLOSE)) {
-
-			attrName = attrValue = null;
-			if (r.getType().equals(XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-				attrName = container.getText(r).trim();
-				if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-					if (regions.hasNext() && (r = (ITextRegion) regions.next()) != null && r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						attrValue = StringUtils.stripQuotes(container.getText(r));
-					}
-					// has equals, but no value?
-				}
-				// an attribute with no equals?
-			}
-			// (pa) might need different logic here if we wanna support more
-			if (attrName != null && attrValue != null) {
-				if (attrName.equals("id")) //$NON-NLS-1$
-					id = attrValue;
-				else if (attrName.equals("class")) //$NON-NLS-1$
-					className = attrValue;
-				else if (attrName.equals("type")) //$NON-NLS-1$
-					type = attrValue;
-			}
-
-		}
-		// has id w/ type and/or classname
-		// Type id = new Classname();
-		// or
-		// Type id = null; // if there is no classname
-		if (id != null && (type != null || className != null)) {
-			if (type == null)
-				type = className;
-			String prefix = type + " " + id + " = "; //$NON-NLS-1$ //$NON-NLS-2$
-			String suffix = "null;" + ENDL; //$NON-NLS-1$
-			if (className != null)
-				suffix = "new " + className + "();" + ENDL; //$NON-NLS-1$ //$NON-NLS-2$
-			IStructuredDocumentRegion referenceRegion = fCurrentNode.getPrevious() != null ? fCurrentNode.getPrevious() : fCurrentNode;
-			appendToBuffer(prefix + suffix, fUserCode, true, referenceRegion);
-		}
-	}
-
-	final public int getCursorPosition() {
-		return fCursorPosition;
-	}
-
-	protected boolean isCursorInExpression() {
-		return fCursorInExpression;
-	}
-
-	protected void setCursorInExpression(boolean in) {
-		fCursorInExpression = in;
-	}
-
-	final public void setSourceCursor(int i) {
-		fSourcePosition = i;
-	}
-
-	final public int getSourcePosition() {
-		return fSourcePosition;
-	}
-
-	final public TLDCMDocumentManager getTLDCMDocumentManager() {
-		return TaglibController.getTLDCMDocumentManager(fStructuredDocument);
-	}
-
-	final public void setRelativeOffset(int relativeOffset) {
-		this.fRelativeOffset = relativeOffset;
-	}
-
-	final public int getRelativeOffset() {
-		return fRelativeOffset;
-	}
-
-	private void setCursorOwner(StringBuffer cursorOwner) {
-		this.fCursorOwner = cursorOwner;
-	}
-
-	final public StringBuffer getCursorOwner() {
-		return fCursorOwner;
-	}
-
-	private IStructuredDocumentRegion setCurrentNode(IStructuredDocumentRegion currentNode) {
-		return this.fCurrentNode = currentNode;
-	}
-
-	final public IStructuredDocumentRegion getCurrentNode() {
-		return fCurrentNode;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/XMLJSPRegionHelper.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/XMLJSPRegionHelper.java
deleted file mode 100644
index ef4dabb..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/XMLJSPRegionHelper.java
+++ /dev/null
@@ -1,439 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java;
-
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.parser.BlockMarker;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * Parser/helper class for JSPTranslator.  Used for parsing XML-JSP regions (in a script block)
- * A lot of logic borrowed from TLDCMDocumentManager.  There should be only one XMLJSPRegionHelper per text file
- * 
- * @author pavery
- */
-class XMLJSPRegionHelper implements StructuredDocumentRegionHandler {
-	private final JSPTranslator fTranslator;
-	protected JSPSourceParser fLocalParser = null;
-	protected String fTextToParse = null;
-	// need this if not at the start of the document (eg. parsing just a script block)
-	protected int fStartOfTextToParse = 0;
-	// buffers for text that this class parses	
-	protected List fScriptlets = new ArrayList();
-	protected List fExpressions = new ArrayList();
-	protected List fDeclarations = new ArrayList();
-	// name of the open tag that was last handled (if we are interested in it)
-	protected String fTagname = null;
-	protected String fTextBefore = ""; //$NON-NLS-1$
-	protected String fUnescapedText = ""; //$NON-NLS-1$
-	protected String fStrippedText = ""; //$NON-NLS-1$
-	// for reconciling cursor position later
-	int fPossibleOwner = JSPTranslator.SCRIPTLET;
-
-	public XMLJSPRegionHelper(JSPTranslator translator) {
-		getLocalParser().addStructuredDocumentRegionHandler(this);
-		this.fTranslator = translator;
-	}
-
-	protected JSPSourceParser getLocalParser() {
-		if (fLocalParser == null)
-			fLocalParser = new JSPSourceParser();
-		return fLocalParser;
-	}
-
-	public void addBlockMarker(BlockMarker marker) {
-		fLocalParser.addBlockMarker(marker);
-	}
-
-	public void reset(String textToParse) {
-		reset(textToParse, 0);
-	}
-
-	public void reset(String textToParse, int start) {
-		fStartOfTextToParse = start;
-		getLocalParser().reset(textToParse);
-		fTextToParse = textToParse;
-	}
-
-	public void forceParse() {
-		getLocalParser().getDocumentRegions();
-		fLocalParser = null;
-	}
-
-	/*
-	 * parse an entire file
-	 */
-	public void parse(String filename) {
-		// from outer class
-		List blockMarkers = this.fTranslator.getBlockMarkers();
-		reset(getContents(filename));
-		// this adds the current markers from the outer class list
-		// to this parser so parsing works correctly
-		for (int i = 0; i < blockMarkers.size(); i++) {
-			addBlockMarker((BlockMarker) blockMarkers.get(i));
-		}
-		forceParse();
-	}
-
-	/*
-	 * writes out scriptlet, expression, and declaration buffers
-	 * to the ongoing buffers in the JSPTranslator (calls to outer JSPTranslator methods)
-	 */
-	public void writeToBuffers() {
-		IStructuredDocumentRegion currentNode = fTranslator.getCurrentNode();
-		// currentNode should be the <%@page include="xxx"%> StructuredDocumentRegion
-		for (int i = 0; i < fScriptlets.size(); i++) {
-			this.fTranslator.translateScriptletString((String) fScriptlets.get(i), currentNode, currentNode.getStartOffset(), currentNode.getLength());
-		}
-		for (int i = 0; i < fExpressions.size(); i++) {
-			this.fTranslator.translateExpressionString((String) fExpressions.get(i), currentNode, currentNode.getStartOffset(), currentNode.getLength());
-		}
-		for (int i = 0; i < fDeclarations.size(); i++) {
-			this.fTranslator.translateDeclarationString((String) fDeclarations.get(i), currentNode, currentNode.getStartOffset(), currentNode.getLength());
-		}
-	}
-
-	/*
-	 * listens to parser node parsed events
-	 * adds to local scriplet, expression, declaration buffers
-	 * determines which type of region the cursor is in, and adjusts cursor offset accordingly 
-	 */
-	public void nodeParsed(IStructuredDocumentRegion sdRegion) {
-		//				System.out.println("tagname > " + fTagname);
-		//				System.out.println("sdRegion > " + sdRegion.getType());
-		//				System.out.println("sdRegion text is >> " + fTextToParse.substring(sdRegion.getStartOffset(), sdRegion.getEndOffset()));
-		//				System.out.println("+++=======================");
-		try {
-			if (isJSPStartRegion(sdRegion)) {
-				String nameStr = getRegionName(sdRegion);
-				if (isJSPRegion(nameStr))
-					fTagname = nameStr;
-				else
-					fTagname = null;
-			}
-			else if (sdRegion.getFirstRegion().getType() == DOMJSPRegionContexts.JSP_CONTENT) {
-				if (fTagname != null) {
-					// assign contents to one of the tables
-					if (isScriptlet(fTagname)) {
-						processScriptlet(sdRegion);
-					}
-					else if (isExpression(fTagname)) {
-						processExpression(sdRegion);
-					}
-					else if (isDeclaration(fTagname)) {
-						processDeclaration(sdRegion);
-					}
-					else {
-						processOtherRegions(sdRegion);
-					}
-				}
-			}
-			else if (sdRegion.getFirstRegion().getType() == XMLRegionContext.XML_CONTENT) {
-				if (fTagname != null) {
-					processUseBean(sdRegion);
-					processOtherRegions(sdRegion);
-				}
-			}
-			else {
-				fTagname = null;
-			}
-			// this updates cursor position
-			checkCursorInRegion(sdRegion);
-		}
-		catch (NullPointerException e) {
-			// logging this exception that I've seen a couple of times...
-			// seems to happen during shutdown of unit tests, at which 
-			// point Logger has already been unloaded
-			try {
-			Logger.logException("XMLJSPRegionHelper: exception in node parsing", e); //$NON-NLS-1$
-			}
-			catch (NoClassDefFoundError ex) {
-				// do nothing, since we're just ending
-			}
-		}
-	}
-
-	public void resetNodes() {
-		// do nothing
-	}
-
-	private void checkCursorInRegion(IStructuredDocumentRegion sdRegion) {
-		// if cursor is in this region...
-		if (this.fTranslator.getSourcePosition() >= fStartOfTextToParse + sdRegion.getStartOffset() && this.fTranslator.getSourcePosition() <= fStartOfTextToParse + sdRegion.getEndOffset()) {
-			int endOfNameTag = sdRegion.getStartOffset();
-			int offset = fTextBefore.length() - fStrippedText.length();
-			// offset in addtion to what's already in the buffer
-			this.fTranslator.setRelativeOffset(this.fTranslator.getSourcePosition() - (fStartOfTextToParse + endOfNameTag) - offset);
-			// outer class method
-			this.fTranslator.setCursorOwner(fPossibleOwner);
-			// add length of what's already in the buffer
-			this.fTranslator.setRelativeOffset(this.fTranslator.getRelativeOffset() + this.fTranslator.getCursorOwner().length());
-			if (fPossibleOwner == JSPTranslator.EXPRESSION) {
-				// add length of expression prefix if necessary...
-				this.fTranslator.setRelativeOffset(this.fTranslator.getRelativeOffset() + JSPTranslator.EXPRESSION_PREFIX.length());
-			}
-		}
-	}
-
-	protected void processDeclaration(IStructuredDocumentRegion sdRegion) {
-		prepareText(sdRegion);
-		fDeclarations.add(fStrippedText);
-		fPossibleOwner = JSPTranslator.DECLARATION;
-	}
-
-	protected void processExpression(IStructuredDocumentRegion sdRegion) {
-		prepareText(sdRegion);
-		fExpressions.add(fStrippedText);
-		fPossibleOwner = JSPTranslator.EXPRESSION;
-	}
-
-	protected void processScriptlet(IStructuredDocumentRegion sdRegion) {
-		prepareText(sdRegion);
-		fScriptlets.add(fStrippedText);
-		fPossibleOwner = JSPTranslator.SCRIPTLET;
-	}
-
-	/*
-	 * Substitutes values for entity references, strips CDATA tags, and keeps
-	 * track of string length(s) for cursor position calculation later.
-	 * @param sdRegion
-	 */
-	protected void prepareText(IStructuredDocumentRegion sdRegion) {
-		fTextBefore = fTextToParse.substring(sdRegion.getStartOffset(), sdRegion.getEndOffset());
-		fUnescapedText = EscapedTextUtil.getUnescapedText(fTextBefore);
-		fStrippedText = this.fTranslator.stripCDATA(fUnescapedText);
-	}
-
-	protected void processUseBean(IStructuredDocumentRegion sdRegion) {
-		if (fTagname != null && isUseBean(fTagname)) {
-			// previous region has the actual attributes
-			sdRegion = sdRegion.getPrevious();
-			String beanClass, beanType, beanId, beanDecl = ""; //$NON-NLS-1$
-			beanClass = getAttributeValue("class", sdRegion); //$NON-NLS-1$
-			beanType = getAttributeValue("type", sdRegion); //$NON-NLS-1$
-			beanId = getAttributeValue("id", sdRegion); //$NON-NLS-1$
-			
-			if (beanId != null && (beanType != null || beanClass != null)) {
-				if (beanType.equals(""))
-				    beanType = beanClass;
-				String prefix = beanType + " " + beanId + " = "; //$NON-NLS-1$ //$NON-NLS-2$
-				String suffix = "null;\n"; //$NON-NLS-1$
-				if (beanClass != null)
-					suffix = "new " + beanClass + "();\n"; //$NON-NLS-1$ //$NON-NLS-2$
-				beanDecl = prefix + suffix;
-			}	
-			
-			fScriptlets.add(beanDecl);
-			fPossibleOwner = JSPTranslator.SCRIPTLET;
-		}
-	}
-
-	protected void processOtherRegions(IStructuredDocumentRegion sdRegion) {
-		processIncludeDirective(sdRegion);
-		processPageDirective(sdRegion);
-	}
-
-	protected void processIncludeDirective(IStructuredDocumentRegion sdRegion) {
-		if (isIncludeDirective(fTagname)) {
-			// the directive name region itself contains the attrs...
-			if (sdRegion.getRegions().get(0).getType() == XMLRegionContext.XML_CONTENT)
-				sdRegion = sdRegion.getPrevious();
-			String fileLocation = getAttributeValue("file", sdRegion); //$NON-NLS-1$
-			this.fTranslator.handleIncludeFile(fileLocation);
-		}
-		else if (isPossibleCustomTag(fTagname)) {
-			// this custom tag may define variables
-			this.fTranslator.addTaglibVariables(fTagname);
-		}
-		else if (isTaglibDirective(fTagname)) {
-			// also add the ones created here to the parent document
-			String prefix = getAttributeValue("prefix", sdRegion); //$NON-NLS-1$
-			List docs = this.fTranslator.getTLDCMDocumentManager().getCMDocumentTrackers(prefix, this.fTranslator.getCurrentNode().getEnd());
-			Iterator it = docs.iterator();
-			Iterator elements = null;
-			CMNode node = null;
-			CMDocument doc = null;
-			BlockMarker marker = null;
-			while (it.hasNext()) {
-				doc = (CMDocument) it.next();
-				elements = doc.getElements().iterator();
-				while (elements.hasNext()) {
-					node = (CMNode) elements.next();
-					marker = new BlockMarker(node.getNodeName(), null, DOMJSPRegionContexts.JSP_CONTENT, true);
-					// global scope is OK because we have encountered this <@taglib> directive
-					// so it all markers from it should will be in scope
-					// add to this local parser
-					addBlockMarker(marker);
-					// add to outer class marker list, for 
-					this.fTranslator.getBlockMarkers().add(marker);
-				}
-			}
-		}
-	}
-
-	protected void processPageDirective(IStructuredDocumentRegion sdRegion) {
-		if (isPageDirective(fTagname)) {
-			while (sdRegion != null) {
-				if (sdRegion.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)
-					break;
-				sdRegion = sdRegion.getPrevious();
-			}
-			String importValue = getAttributeValue("import", sdRegion); //$NON-NLS-1$
-			if (importValue != "") { //$NON-NLS-1$
-				// had to add "false" parameter to ensure these 
-				// imports don't get added to jsp <-> java map (since they are from an included file)
-				// https://bugs.eclipse.org/bugs/show_bug.cgi?id=81687
-				this.fTranslator.addImports(importValue, false);
-			}
-		}
-	}	
-
-	/*
-	 * convenience method to get an attribute value from attribute name
-	 */
-	protected String getAttributeValue(String attrName, IStructuredDocumentRegion sdRegion) {
-		String sdRegionText = fTextToParse.substring(sdRegion.getStartOffset(), sdRegion.getEndOffset());
-		String textRegionText, attrValue = ""; //$NON-NLS-1$
-		Iterator it = sdRegion.getRegions().iterator();
-		ITextRegion nameRegion, valueRegion = null;
-		while (it.hasNext()) {
-			nameRegion = (ITextRegion) it.next();
-			if (nameRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				textRegionText = sdRegionText.substring(nameRegion.getStart(), nameRegion.getEnd());
-				if (textRegionText.equalsIgnoreCase(attrName)) {
-					while (it.hasNext()) {
-						valueRegion = (ITextRegion) it.next();
-						if (valueRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-							attrValue = sdRegionText.substring(valueRegion.getStart(), valueRegion.getEnd());
-							break; // inner
-						}
-					}
-					break; // outer
-				}
-			}
-		}
-		return StringUtils.stripQuotes(attrValue);
-	}
-
-	// these methods determine what content gets added to the local scriplet, expression, declaration buffers
-	/*
-	 * return true for elements whose contents we might want to add to the java file we are building
-	 */
-	protected boolean isJSPStartRegion(IStructuredDocumentRegion sdRegion) {
-		return (sdRegion.getFirstRegion().getType() == XMLRegionContext.XML_TAG_OPEN || sdRegion.getFirstRegion().getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN);
-	}
-
-	protected boolean isJSPRegion(String tagName) {
-		return isDeclaration(tagName) || isExpression(tagName) || isScriptlet(tagName) || isUseBean(tagName) || isIncludeDirective(tagName) || isPossibleCustomTag(tagName) || isTaglibDirective(tagName) || isPageDirective(tagName);
-	}
-
-	protected boolean isDeclaration(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:declaration"); //$NON-NLS-1$		
-	}
-
-	protected boolean isExpression(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:expression"); //$NON-NLS-1$		
-	}
-
-	protected boolean isScriptlet(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:scriptlet"); //$NON-NLS-1$
-	}
-
-	protected boolean isUseBean(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:useBean"); //$NON-NLS-1$
-	}
-
-	protected boolean isIncludeDirective(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:directive.include"); //$NON-NLS-1$
-	}
-
-	protected boolean isPossibleCustomTag(String tagName) {
-		return tagName.indexOf(":") > 1; //$NON-NLS-1$
-	}
-
-	protected boolean isTaglibDirective(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:directive.taglib"); //$NON-NLS-1$
-	}
-
-	protected boolean isPageDirective(String tagName) {
-		return tagName.equalsIgnoreCase("jsp:directive.page"); //$NON-NLS-1$
-	}
-
-	protected String getRegionName(IStructuredDocumentRegion sdRegion) {
-		ITextRegion nameRegion = null;
-		String nameStr = ""; //$NON-NLS-1$
-		int size = sdRegion.getRegions().size();
-		if (size > 1) {
-			// presumably XML-JSP <jsp:scriptlet> | <jsp:expression> | <jsp:declaration>
-			nameRegion = sdRegion.getRegions().get(1);
-			nameStr = fTextToParse.substring(sdRegion.getStartOffset(nameRegion), sdRegion.getTextEndOffset(nameRegion));
-		}
-		return nameStr.trim();
-	}
-
-	/*
-	 * get the contents of a file as a String
-	 */
-	protected String getContents(String fileName) {
-		StringBuffer s = new StringBuffer();
-		int c = 0;
-		int count = 0;
-		InputStream is = null;
-		try {
-			IPath filePath = new Path(fileName);
-			IFile f = ResourcesPlugin.getWorkspace().getRoot().getFile(filePath);
-			if(f != null && !f.exists()) {
-				f = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(filePath);
-			}
-            if (f != null && f.exists()) {
-    			is = f.getContents();
-    			while ((c = is.read()) != -1) {
-    				count++;
-    				s.append((char) c);
-    			}
-            }
-		}
-		catch (Exception e) {
-			if (Debug.debugStructuredDocument)
-				e.printStackTrace();
-		}
-		finally {
-			try {
-				if (is != null) {
-					is.close();
-				}
-			}
-			catch (Exception e) {
-				// nothing to do
-			}
-		}
-		return s.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/IndexWorkspaceJob.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/IndexWorkspaceJob.java
deleted file mode 100644
index 3a4d0db..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/IndexWorkspaceJob.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceProxy;
-import org.eclipse.core.resources.IResourceProxyVisitor;
-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.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jst.jsp.core.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-
-/**
- * Re-indexes the entire workspace.
- * Ensures the JSP Index is in a stable state before performing a search.
- * (like after a crash or if previous indexing was canceled)
- * 
- * @author pavery
- */
-public class IndexWorkspaceJob extends Job {
-
-	// for debugging
-	static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspindexmanager"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Visitor that retrieves jsp project paths for all jsp files in the workspace,
-	 * and adds the files to be indexed as they are encountered
-	 */
-	private class JSPFileVisitor implements IResourceProxyVisitor {
-	    private List files = new ArrayList(); 
-		
-		// monitor from the Job
-		IProgressMonitor fInnerMonitor = null;
-		public JSPFileVisitor(IProgressMonitor monitor) {
-			this.fInnerMonitor = monitor;
-		}
-		
-		public boolean visit(IResourceProxy proxy) throws CoreException {
-			
-			// check job canceled
-			if (this.fInnerMonitor != null && this.fInnerMonitor.isCanceled()) {
-				setCanceledState();
-				return false;
-			}
-			
-			// check search support canceled
-			if(JSPSearchSupport.getInstance().isCanceled()) {
-				setCanceledState();
-				return false;
-			}
-			
-			if (proxy.getType() == IResource.FILE) {
-				
-				// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3553
-				// check this before description
-				// check name before actually getting the file (less work)
-				if(getJspContentType().isAssociatedWith(proxy.getName())) {
-					IFile file = (IFile) proxy.requestResource();
-					if(file.exists()) {
-						
-						if(DEBUG)
-							System.out.println("(+) IndexWorkspaceJob adding file: " + file.getName());
-						// this call will check the ContentTypeDescription, so don't need to do it here.
-						//JSPSearchSupport.getInstance().addJspFile(file);
-						this.files.add(file);
-						this.fInnerMonitor.subTask(proxy.getName());
-						
-						// don't search deeper for files
-						return false;
-					}
-				}
-			}
-			return true;
-		}
-		
-		public final IFile[] getFiles() {
-		    return (IFile[])this.files.toArray(new IFile[this.files.size()]);
-		}
-	}
-	
-	private IContentType fContentTypeJSP = null;
-	
-	public IndexWorkspaceJob() {
-		// pa_TODO may want to say something like "Rebuilding JSP Index" to be more
-		// descriptive instead of "Updating JSP Index" since they are 2 different things
-		super(JSPCorePlugin.getResourceString("%JSPIndexManager.0"));
-		setPriority(Job.LONG);
-		setSystem(true);
-	}
-
-	IContentType getJspContentType() {
-		if(this.fContentTypeJSP == null)
-			this.fContentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
-		return this.fContentTypeJSP;
-	}
-	
-	/**
-	 * @see org.eclipse.core.internal.jobs.InternalJob#run(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	protected IStatus run(IProgressMonitor monitor) {
-		
-		IStatus status = Status.OK_STATUS;
-		
-		if(monitor.isCanceled()) {
-			setCanceledState();
-			return Status.CANCEL_STATUS;
-		}
-		
-		if(DEBUG)
-			System.out.println(" ^ IndexWorkspaceJob started: "); //$NON-NLS-1$
-		
-		long start = System.currentTimeMillis();
-		
-		try {
-		    JSPFileVisitor visitor = new JSPFileVisitor(monitor);
-		    // collect all jsp files
-			ResourcesPlugin.getWorkspace().getRoot().accept(visitor, IResource.DEPTH_INFINITE);
-			// request indexing
-			// this is pretty much like faking an entire workspace resource delta
-			JSPIndexManager.getInstance().indexFiles(visitor.getFiles());
-		}
-		catch (CoreException e) {
-			if(DEBUG)
-				e.printStackTrace();
-		}
-		finally {
-			if(monitor != null)
-				monitor.done();
-		}
-		long finish = System.currentTimeMillis();
-		if(DEBUG)
-			System.out.println(" ^ IndexWorkspaceJob finished\n   total time running: " + (finish - start)); //$NON-NLS-1$
-		
-		return status;
-	}
-	
-	void setCanceledState() {
-		JSPIndexManager.getInstance().setIndexState(JSPIndexManager.S_CANCELED);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPIndexManager.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPIndexManager.java
deleted file mode 100644
index c990aab..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPIndexManager.java
+++ /dev/null
@@ -1,501 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import java.io.File;
-import java.util.HashMap;
-
-import org.eclipse.core.resources.IFile;
-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.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.Platform;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.core.runtime.jobs.IJobChangeEvent;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.jobs.JobChangeAdapter;
-import org.eclipse.jdt.internal.core.JavaModelManager;
-import org.eclipse.jdt.internal.core.index.Index;
-import org.eclipse.jdt.internal.core.search.indexing.IndexManager;
-import org.eclipse.jst.jsp.core.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.osgi.framework.Bundle;
-
-/**
- * Responsible for keeping the JSP index up to date.
- * 
- * @author pavery
- */
-public class JSPIndexManager implements IResourceChangeListener {
-	
-	// for debugging
-	static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspindexmanager"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	private static final String PKEY_INDEX_STATE = "jspIndexState"; //$NON-NLS-1$
-
-	
-	// set to S_UPDATING once a resource change comes in
-	// set to S_STABLE if:
-	// - we know we aren't interested in the resource change
-	// - or the ProcessFilesJob completes
-	// set to S_CANCELED if an indexing job is canceled
-	// set to S_REBUILDING if re-indexing the entire workspace
-
-	// the int '0' is reserved for the default value if a preference is not there
-	/** index is reliable to use*/
-	public static final int S_STABLE = 1;
-	/** index is being updated (from a resource delta)*/
-	public static final int S_UPDATING = 2;
-	/** entire index is being rebuilt */
-	public static final int S_REBUILDING = 3;
-	/** indexing job was canceled in the middle of it, index needs to be rebuilt */
-	public static final int S_CANCELED = 4;
-	
-	/** symbolic name for OSGI framework */
-	private final String OSGI_FRAMEWORK_ID = "org.eclipse.osgi";
-	
-	/**
-	 * Collects JSP files from a resource delta.
-	 */
-	private class JSPResourceVisitor implements IResourceDeltaVisitor {
-		// using hash map ensures only one of each file
-		// must be reset before every use
-		private HashMap jspFiles = null;
-		
-		public JSPResourceVisitor() {
-			this.jspFiles = new HashMap();
-		}
-		
-		public boolean visit(IResourceDelta delta) throws CoreException {
-			
-			// in case JSP search was canceled (eg. when closing the editor)
-			if(JSPSearchSupport.getInstance().isCanceled() || frameworkIsShuttingDown()) {
-				setCanceledState();
-				return false;
-			}
-			
-			try {
-				int kind = delta.getKind();
-				boolean added = (kind & IResourceDelta.ADDED) == IResourceDelta.ADDED;
-				boolean isInterestingChange = false;
-				if((kind & IResourceDelta.CHANGED) == IResourceDelta.CHANGED) {
-					int flags = delta.getFlags();
-					// ignore things like marker changes
-					isInterestingChange = (flags & IResourceDelta.CONTENT) == IResourceDelta.CONTENT || (flags & IResourceDelta.REPLACED) == IResourceDelta.REPLACED;
-				}
-				boolean removed = (kind & IResourceDelta.REMOVED) == IResourceDelta.REMOVED;
-				if(added || isInterestingChange) {
-					
-					// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3553
-					// quick check if it's even JSP related to improve performance
-					// checking name from the delta before getting resource because it's lighter
-					int numSegments = delta.getFullPath().segmentCount();
-					String filename = delta.getFullPath().segment(numSegments-1);
-					if (getJspContentType().isAssociatedWith(filename)) {
-						
-						IResource r = delta.getResource();
-						if (r != null && r.getType() == IResource.FILE) {	
-							this.jspFiles.put(r.getFullPath(), r);
-						}
-					}
-				}
-				else if(removed) {
-					// handle cleanup 
-					if(delta.getResource() != null) {
-						IResource r = delta.getResource();
-						if(r.getType() == IResource.FOLDER && r.exists()) {
-							deleteIndex((IFile)r);
-						}
-					}
-				}
-			}
-			catch (Exception e){
-				// need to set state here somehow, and reindex
-				// otherwise index will be unreliable
-				if(DEBUG)
-					Logger.logException("Delta analysis may not be complete",  e); //$NON-NLS-1$
-			}
-			// if the delta has children, continue to add/remove files
-			return true;
-		}
-		
-		private void deleteIndex(IFile folder) {
-			// cleanup index
-			IndexManager im = JavaModelManager.getJavaModelManager().getIndexManager();
-			IPath folderPath = folder.getFullPath();
-			IPath indexLocation = JSPSearchSupport.getInstance().computeIndexLocation(folderPath);
-			im.removeIndex(indexLocation);
-//			im.indexLocations.removeKey(folderPath);
-//			im.indexLocations.removeValue(indexLocation);
-			File f = indexLocation.toFile();
-			f.delete();
-		}
-		
-		public IFile[] getFiles() {
-			return (IFile[])this.jspFiles.values().toArray(new IFile[this.jspFiles.size()]);
-		}
-		
-		public void reset() {
-			this.jspFiles.clear();
-		}
-	}
-	// end class JSPResourceVisitor
-	
-	/**
-	 * schedules JSP files for indexing by Java core
-	 */
-	private class ProcessFilesJob extends Job { 
-		IFile[] jspFiles =  null;
-		ProcessFilesJob(String taskName, IFile[] files) {
-			super(taskName);
-			this.jspFiles = files;
-		}
-		
-		protected IStatus run(IProgressMonitor monitor) {
-			
-			if(isCanceled(monitor) || frameworkIsShuttingDown()) {
-				setCanceledState();
-				return Status.CANCEL_STATUS;
-			}
-			
-			long start = System.currentTimeMillis();
-			
-			try {
-				// API indicates that monitor is never null
-				monitor.beginTask("", this.jspFiles .length); //$NON-NLS-1$
-				JSPSearchSupport ss = JSPSearchSupport.getInstance();
-				String processingNFiles = ""; //$NON-NLS-1$
-
-				
-				for(int i = 0; i<this.jspFiles.length; i++) {
-
-					if(isCanceled(monitor) || frameworkIsShuttingDown()) {
-						setCanceledState();
-						return Status.CANCEL_STATUS;
-					}
-					try {
-						ss.addJspFile(this.jspFiles [i]);
-						// JSP Indexer processing n files
-						processingNFiles = JSPCorePlugin.getResourceString("%JSPIndexManager.2", new String[]{Integer.toString((this.jspFiles .length -i))});
-						monitor.subTask(processingNFiles + " - " + this.jspFiles [i].getName());
-						monitor.worked(1);
-						
-						if(DEBUG) {
-							System.out.println("JSPIndexManager Job added file: " + this.jspFiles [i].getName()); //$NON-NLS-1$
-						}
-					}
-					catch (Exception e){
-					    // RATLC00284776
-					    // ISSUE: we probably shouldn't be catching EVERY exception, but
-					    // the framework only allows to return IStatus in order to communicate
-					    // that something went wrong, which means the loop
-					    // won't complete, and we would hit the same problem the next time.
-					    // 
-					    // a possible solution is to keep track of the exceptions logged
-					    // and only log a certain amt of the same one, otherwise skip it.
-						if(!frameworkIsShuttingDown()) {
-						    String filename = this.jspFiles[i] != null ? this.jspFiles[i].getFullPath().toString() : ""; //$NON-NLS-1$
-						    Logger.logException("JSPIndexer problem indexing:" + filename,  e); //$NON-NLS-1$
-						}
-					}
-				} // end for
-			}
-			finally {
-				// just in case something didn't follow API (monitor is null)
-				if(monitor != null)
-					monitor.done();
-			}
-			
-			long finish = System.currentTimeMillis();
-			long diff = finish - start;
-			if(DEBUG) {
-				fTotalTime += diff;
-				System.out.println("============================================================================"); //$NON-NLS-1$
-				System.out.println("this time: " + diff +" cumulative time for resource changed: " + fTotalTime); //$NON-NLS-1$ //$NON-NLS-2$
-				System.out.println("============================================================================"); //$NON-NLS-1$
-			}	
-			return Status.OK_STATUS;
-		}
-		
-		private boolean isCanceled(IProgressMonitor runMonitor) {
-			
-			boolean canceled = false;
-			// check specific monitor passed into run method (the progress group in this case)
-			// check main search support canceled
-			if(runMonitor != null && runMonitor.isCanceled())
-				canceled = true;
-			else if(JSPSearchSupport.getInstance().isCanceled())
-				canceled = true;
-			return canceled;
-		}
-	}
-	// end class ProcessFilesJob
-	
-	private static JSPIndexManager fSingleton = null;
-	private JSPResourceVisitor fVisitor = null;
-	private IContentType fContentTypeJSP = null;
-		
-	static long fTotalTime = 0;
-	
-	private JSPIndexManager(){
-		// only one instance
-	}
-	
-	public synchronized static JSPIndexManager getInstance() {
-		
-		if(fSingleton == null)
-			fSingleton = new JSPIndexManager();
-		return fSingleton;
-	}
-	
-	/**
-	 * @see org.eclipse.core.resources.IResourceChangeListener#resourceChanged(org.eclipse.core.resources.IResourceChangeEvent)
-	 */
-	public void resourceChanged(IResourceChangeEvent event) {
-		
-		// ignore resource changes if already rebuilding
-		if(getIndexState() == S_REBUILDING)
-			return;
-		// previously canceled, needs entire index rebuild
-		if(getIndexState() == S_CANCELED) {
-			rebuildIndex();
-			return;
-		}
-		
-		// set flag, so we know if a job is going to be started
-		// and the state will eventually be set back to S_STABLE
-		boolean beganProcess = false;
-		setUpdatingState();
-		
-		IResourceDelta delta = event.getDelta();
-		if(delta != null) {
-			// only care about adds or changes right now...
-			int kind = delta.getKind();
-			boolean added = (kind & IResourceDelta.ADDED) == IResourceDelta.ADDED;
-			boolean changed = (kind & IResourceDelta.CHANGED) == IResourceDelta.CHANGED;
-			if(added || changed) {
-				
-				// only analyze the full (starting at root) delta hierarchy
-				if(delta.getFullPath().toString().equals("/")) { //$NON-NLS-1$
-					try {
-						JSPResourceVisitor v = getVisitor();
-						// clear from last run
-						v.reset();
-						// count files, possibly do this in a job too...
-						// don't include PHANTOM resources
-						delta.accept(v, false);
-						
-						// process files from this delta
-						IFile[] files = v.getFiles();
-						if(files.length > 0) {	
-							//processFiles(files);
-							indexFiles(files);
-							beganProcess = true;
-						}
-					}
-					catch (CoreException e) {
-						// need to set state here somehow, and reindex
-						// otherwise index will be unreliable
-						if(DEBUG)
-							Logger.logException(e);
-					}
-					catch (Exception e) {
-						// need to set state here somehow, and reindex
-						// otherwise index will be unreliable
-						if(DEBUG)
-							Logger.logException(e);
-					}
-				}
-			}
-
-		}
-		// if we never kicked off process, job won't set back to stable
-		// so we set it here
-		if(!beganProcess) {
-			setStableState();
-		}
-	}
-	
-	public synchronized void setIndexState(int state) {
-		if(DEBUG) {
-			System.out.println("JSPIndexManager setting index state to: " + state2String(state));
-		}
-		Plugin jspModelPlugin = JSPCorePlugin.getDefault();
-		jspModelPlugin.getPluginPreferences().setValue(PKEY_INDEX_STATE, state);
-		jspModelPlugin.savePluginPreferences();
-		
-	}
-	private String state2String(int state) {
-		String s = "UNKNOWN";
-		switch(state) {
-			case(S_STABLE):
-				s = "S_STABLE";
-				break;
-			case(S_UPDATING):
-				s = "S_UPDATING";
-				break;
-			case(S_CANCELED):
-				s = "S_CANCELED";
-				break;
-			case(S_REBUILDING):
-				s = "S_REBUILDING";
-				break;
-		}
-		return s;
-	}
-	public int getIndexState() {
-		return JSPCorePlugin.getDefault().getPluginPreferences().getInt(PKEY_INDEX_STATE); 
-	}
-	public void setUpdatingState() {
-		if(getIndexState() != S_CANCELED)
-			setIndexState(S_UPDATING);
-	}
-	public void setCanceledState() {
-		setIndexState(JSPIndexManager.S_CANCELED);
-	}
-	// ca
-	public void setStableState() {
-		if(getIndexState() != S_CANCELED)
-			setIndexState(S_STABLE);
-	}
-	public void setRebuildingState() {
-		setIndexState(S_REBUILDING);
-	}
-	public synchronized void rebuildIndexIfNeeded() {
-		if(getIndexState() != S_STABLE) {
-			rebuildIndex();
-		}
-	}
-	
-	private void rebuildIndex() {
-		
-		if(DEBUG) 
-			System.out.println("*** JSP Index unstable, requesting re-indexing");
-
-		final IndexWorkspaceJob indexingJob = new IndexWorkspaceJob();
-		
-		indexingJob.addJobChangeListener(new JobChangeAdapter() {
-			public void aboutToRun(IJobChangeEvent event) {
-				super.aboutToRun(event);
-				setRebuildingState();
-			}
-			public void done(IJobChangeEvent event) {
-				super.done(event);
-				setStableState();
-				indexingJob.removeJobChangeListener(this);
-			}
-		});
-		indexingJob.schedule();
-		
-	}
-	
-	/**
-	 * Creates and schedules a Job to process collected files.
-	 * All JSP indexing should be done through this method or processFiles(IFile file)
-	 * @param files
-	 */
-	public final void indexFiles(IFile[] files) {
-		// updating JSP Index
-		String taskName = JSPCorePlugin.getResourceString("%JSPIndexManager.0");
-		
-		// Processing resource delta
-		final Job processFiles = new ProcessFilesJob(taskName, files);
-
-		// only show in verbose mode
-		processFiles.setSystem(true);
-		
-		// don't use this rule
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4931
-		//processFiles.setRule(new IndexFileRule());
-		
-		processFiles.setPriority(Job.LONG);
-		processFiles.addJobChangeListener(new JobChangeAdapter() {
-			public void done(IJobChangeEvent event) {
-				super.done(event);
-				setStableState();
-			}
-		});
-		processFiles.schedule();
-	}
-	
-	
-	/**
-	 * Package protected for access by inner Job class in resourceChanged(...)
-	 * @return
-	 */
-	JSPResourceVisitor getVisitor()  {
-		
-		if(this.fVisitor == null) {
-			this.fVisitor = new JSPResourceVisitor();
-		}
-		return this.fVisitor;
-	}
-	
-	// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5091
-	// makes sure IndexManager is aware of our indexes
-	public void saveIndexes() {
-		IndexManager indexManager = JavaModelManager.getJavaModelManager().getIndexManager();
-		IPath jspModelWorkingLocation = JSPSearchSupport.getInstance().getModelJspPluginWorkingLocation();
-		
-		File folder = new File(jspModelWorkingLocation.toOSString());
-		String[] files = folder.list();
-		String locay = ""; //$NON-NLS-1$
-		Index index = null;
-		try {
-			for(int i=0; i<files.length; i++) {
-				if(files[i].toLowerCase().endsWith(".index")) { //$NON-NLS-1$
-					locay = jspModelWorkingLocation.toString() +"/" + files[i]; //$NON-NLS-1$
-					index = new Index(locay, "Index for " + locay, true /*reuse index file*/); //$NON-NLS-1$
-					indexManager.saveIndex(index);
-				}
-			}
-		}
-		catch (Exception e) {
-			// we should be shutting down, want to shut down quietly
-			if(DEBUG)
-				e.printStackTrace();
-		}
-	}
-	
-	IContentType getJspContentType() {
-		if(this.fContentTypeJSP == null)
-			this.fContentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
-		return this.fContentTypeJSP;
-	}
-	
-	/**
-	 * A check to see if the OSGI framework is shutting down.
-	 * @return true if the System Bundle is stopped (ie. the framework is shutting down)
-	 */
-	boolean frameworkIsShuttingDown() {
-		// in the Framework class there's a note:
-		// set the state of the System Bundle to STOPPING.
-		// this must be done first according to section 4.19.2 from the OSGi R3 spec.  
-		boolean shuttingDown = Platform.getBundle(OSGI_FRAMEWORK_ID).getState() == Bundle.STOPPING;
-		if (DEBUG && shuttingDown) {
-			System.out.println("JSPIndexManager: system is shutting down!");
-		}
-		return shuttingDown;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPPathIndexer.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPPathIndexer.java
deleted file mode 100644
index cb45463..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPPathIndexer.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import java.util.HashMap;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceProxy;
-import org.eclipse.core.resources.IResourceProxyVisitor;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-import org.eclipse.jdt.core.search.SearchPattern;
-import org.eclipse.jst.jsp.core.contenttype.ContentTypeIdForJSP;
-
-/**
- * pa_TODO Still need to take into consideration:
- * 	- focus in workspace
- *  - search pattern
- * 
- * @author pavery
- */
-public class JSPPathIndexer {
-
-	// for debugging
-	static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspsearch"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	// visitor that retrieves jsp project paths for all jsp files in the workspace
-	class JSPFileVisitor implements IResourceProxyVisitor {
-		// hash map forces only one of each file
-		private HashMap fPaths = new HashMap();
-		IJavaSearchScope fScope = null;
-		SearchPattern fPattern = null;
-
-		public JSPFileVisitor(SearchPattern pattern, IJavaSearchScope scope) {
-			this.fPattern = pattern;
-			this.fScope = scope;
-		}
-
-		public boolean visit(IResourceProxy proxy) throws CoreException {
-			
-			if(JSPSearchSupport.getInstance().isCanceled())
-				return false;
-			
-			if (proxy.getType() == IResource.FILE) {
-
-				IContentType contentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
-				// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3553
-				// check this before description
-				// check name before actually getting the file (less work)
-				if(contentTypeJSP.isAssociatedWith(proxy.getName())) {
-					
-					IFile file = (IFile)proxy.requestResource();
-					IContentDescription contentDescription = file.getContentDescription();
-					String ctId = null;
-					if (contentDescription != null) {
-						ctId = contentDescription.getContentType().getId();
-					}
-					if (ContentTypeIdForJSP.ContentTypeID_JSP.equals(ctId)) {
-						if (this.fScope.encloses(proxy.requestFullPath().toString())) {
-	
-							if (DEBUG)
-								System.out.println("adding selected index path:" + file.getParent().getFullPath()); //$NON-NLS-1$
-
-							fPaths.put(file.getParent().getFullPath(), JSPSearchSupport.getInstance().computeIndexLocation(file.getParent().getFullPath()));
-						}
-					}
-				}
-				// don't search deeper for files
-				return false;
-			}
-			return true;
-		}
-
-		public IPath[] getPaths() {
-			return (IPath[]) fPaths.values().toArray(new IPath[fPaths.size()]);
-		}
-	}
-
-	public IPath[] getVisibleJspPaths(SearchPattern pattern, IJavaSearchScope scope) {
-
-		JSPFileVisitor jspFileVisitor = new JSPFileVisitor(pattern, scope);
-		try {
-			ResourcesPlugin.getWorkspace().getRoot().accept(jspFileVisitor, 0);
-		}
-		catch (CoreException e) {
-			e.printStackTrace();
-		}
-		return jspFileVisitor.getPaths();
-	}
-}
-
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchDocument.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchDocument.java
deleted file mode 100644
index 4d1effb..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchDocument.java
+++ /dev/null
@@ -1,230 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IFile;
-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.core.runtime.Path;
-import org.eclipse.jdt.core.search.SearchParticipant;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapterFactory;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationExtension;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.exceptions.UnsupportedCharsetExceptionWithDetail;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-
-
-/**
- * Created with a .jsp file, but should appear to be a .java file for indexing
- * and searching purposes. There are purposely few fields in this class, and
- * those fields are lightweight since it's possible for many JSP search
- * documents to exist in memory at one time (eg. after importing a project
- * with a large number of JSP files)
- * 
- * @author pavery
- */
-public class JSPSearchDocument {
-
-	private String UNKNOWN_PATH = "**path unknown**"; //$NON-NLS-1$
-	private String fJSPPathString = UNKNOWN_PATH;
-	private String fCUPath = UNKNOWN_PATH;
-	private SearchParticipant fParticipant = null;
-
-	/**
-	 * @param file
-	 * @param participant
-	 * @throws CoreException
-	 */
-	public JSPSearchDocument(String filePath, SearchParticipant participant) {
-
-		this.fJSPPathString = filePath;
-		this.fParticipant = participant;
-	}
-
-	public SearchParticipant getParticipant() {
-		return this.fParticipant;
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.search.SearchDocument#getCharContents()
-	 */
-	public char[] getCharContents() {
-		JSPTranslation trans = getJSPTranslation();
-		return trans != null ? trans.getJavaText().toCharArray() : new char[0];
-	}
-
-	public String getJavaText() {
-		return new String(getCharContents());
-	}
-
-	private IModelManager getModelManager() {
-		return StructuredModelManager.getModelManager();
-	}
-
-	/**
-	 * It's not recommended for clients to hold on to this JSPTranslation
-	 * since it's kind of large. If possible, hold on to the
-	 * JSPSearchDocument, which is more of a lightweight proxy.
-	 * 
-	 * @return the JSPTranslation for the jsp file, or null if it's an
-	 *         unsupported file.
-	 */
-	public final JSPTranslationExtension getJSPTranslation() {
-		JSPTranslationExtension translation = null;
-		IFile jspFile = getFile();
-		if (!JSPSearchSupport.isJsp(jspFile))
-			return translation;
-
-		XMLModel xmlModel = null;
-		try {
-			// get existing model for read, then get document from it
-			IModelManager modelManager = getModelManager();
-			if (modelManager != null) {
-				xmlModel = (XMLModel) modelManager.getModelForRead(jspFile);
-			}
-			// handle unsupported
-			if (xmlModel != null) {
-				setupAdapterFactory(xmlModel);
-				XMLDocument doc = xmlModel.getDocument();
-				JSPTranslationAdapter adapter = (JSPTranslationAdapter) doc.getAdapterFor(IJSPTranslation.class);
-				translation = adapter.getJSPTranslation();
-			}
-		}
-		catch (IOException e) {
-			Logger.logException(e);
-		}
-		catch (CoreException e) {
-			Logger.logException(e);
-		}
-		catch (UnsupportedCharsetExceptionWithDetail e) {
-			// no need to log this. Just consider it an invalid file for our
-			// purposes.
-			// Logger.logException(e);
-		}
-		finally {
-			if (xmlModel != null)
-				xmlModel.releaseFromRead();
-		}
-		return translation;
-	}
-
-	/**
-	 * add the factory for JSPTranslationAdapter here
-	 * 
-	 * @param sm
-	 */
-	private void setupAdapterFactory(IStructuredModel sm) {
-		JSPTranslationAdapterFactory factory = new JSPTranslationAdapterFactory();
-		sm.getFactoryRegistry().addFactory(factory);
-	}
-
-	/**
-	 * the path to the Java compilation unit
-	 * 
-	 * @see org.eclipse.jdt.core.search.SearchDocument#getPath()
-	 */
-	public String getPath() {
-		JSPTranslation trans = getJSPTranslation();
-		// caching the path since it's expensive to get translation
-		if (this.fCUPath == null || this.fCUPath == UNKNOWN_PATH) {
-			if (trans != null)
-				this.fCUPath = trans.getJavaPath();
-		}
-		return fCUPath != null ? fCUPath : UNKNOWN_PATH;
-	}
-
-	public int getJspOffset(int javaOffset) {
-		// copied from JSPTranslation
-		int result = -1;
-		int offsetInRange = 0;
-		Position jspPos, javaPos = null;
-		JSPTranslation trans = getJSPTranslation();
-		if (trans != null) {
-			HashMap java2jspMap = trans.getJava2JspMap();
-
-			// iterate all mapped java ranges
-			Iterator it = java2jspMap.keySet().iterator();
-			while (it.hasNext()) {
-				javaPos = (Position) it.next();
-				// need to count the last position as included
-				if (!javaPos.includes(javaOffset) && !(javaPos.offset + javaPos.length == javaOffset))
-					continue;
-
-				offsetInRange = javaOffset - javaPos.offset;
-				jspPos = (Position) java2jspMap.get(javaPos);
-
-				if (jspPos != null)
-					result = jspPos.offset + offsetInRange;
-				else {
-					Logger.log(Logger.ERROR, "jspPosition was null!" + javaOffset); //$NON-NLS-1$
-				}
-				break;
-			}
-		}
-		return result;
-	}
-
-	public IFile getFile() {
-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-		IPath jspPath = new Path(this.fJSPPathString);
-		IFile jspFile = root.getFile(jspPath);
-		if (!jspFile.exists()) {
-			// possibly outside workspace
-			jspFile = root.getFileForLocation(jspPath);
-		}
-		return jspFile;
-	}
-
-	public void release() {
-		// nothing to do now since JSPTranslation is created on the fly
-	}
-
-	/**
-	 * for debugging
-	 */
-	public String toString() {
-		return "[JSPSearchDocument:" + this.fJSPPathString + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jdt.core.search.SearchDocument#getEncoding()
-	 */
-	public String getEncoding() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jdt.core.search.SearchDocument#getByteContents()
-	 */
-	public byte[] getByteContents() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchParticipant.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchParticipant.java
deleted file mode 100644
index 044f5aa..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchParticipant.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-import org.eclipse.jdt.core.search.SearchDocument;
-import org.eclipse.jdt.core.search.SearchEngine;
-import org.eclipse.jdt.core.search.SearchParticipant;
-import org.eclipse.jdt.core.search.SearchPattern;
-import org.eclipse.jdt.core.search.SearchRequestor;
-
-/**
- * Integration of JSP w/ java search.
- * 
- * @author pavery
- */
-public class JSPSearchParticipant extends SearchParticipant {
-
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jspsearch"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Important to never return null here or else Java search participation will break.
-	 */
-	public SearchDocument getDocument(String documentPath) {
-		
-		SearchDocument sDoc = JSPSearchSupport.getInstance().getSearchDocument(documentPath);
-
-		if(sDoc == null){
-			// return a dummy doc here so search participation doesn't break
-			return new NullSearchDocument(documentPath);
-		}
-		return sDoc;
-	}
-
-	public String getDescription() {
-		return "JSP"; //$NON-NLS-1$
-	}
-
-	public IPath[] selectIndexes(SearchPattern pattern, IJavaSearchScope scope) {
-		JSPPathIndexer indexer = new JSPPathIndexer();
-		return indexer.getVisibleJspPaths(pattern, scope);
-	}
-
-	public void indexDocument(SearchDocument document, IPath indexPath) {
-		if (!(document instanceof JavaSearchDocumentDelegate))
-			return;
-
-		// use Java search indexing
-		SearchEngine.getDefaultSearchParticipant().indexDocument(document, indexPath);
-	}
-
-	public void locateMatches(SearchDocument[] indexMatches, SearchPattern pattern, IJavaSearchScope scope, SearchRequestor requestor, IProgressMonitor monitor) throws CoreException {
-
-		if(monitor != null && monitor.isCanceled())
-			return;
-			
-		// filter out null matches
-		List filtered = new ArrayList();
-		SearchDocument match = null;
-		for (int i = 0; i < indexMatches.length; i++) {
-			if (DEBUG)
-				System.out.println("found possible matching JavaSearchDocumentDelegate: " + indexMatches[i]); //$NON-NLS-1$
-			match = indexMatches[i];
-			if (match != null) {
-				// some matches may be null, or if the index is out of date, the file may not even exist
-				if(match instanceof JavaSearchDocumentDelegate && ((JavaSearchDocumentDelegate)match).getFile().exists())
-				filtered.add(match);
-			}
-		}
-
-		indexMatches = (SearchDocument[]) filtered.toArray(new SearchDocument[filtered.size()]);
-		SearchEngine.getDefaultSearchParticipant().locateMatches(indexMatches, pattern, scope, requestor, monitor);
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.search.SearchParticipant#beginSearching()
-	 */
-	public void beginSearching() {
-		// nothing to do
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.search.SearchParticipant#doneSearching()
-	 */
-	public void doneSearching() {
-		// nothing to do
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.search.SearchParticipant#getDocument(org.eclipse.core.resources.IFile)
-	 */
-	public SearchDocument getDocument(IFile file) {
-		// never gets called?
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchScope.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchScope.java
deleted file mode 100644
index 49cc26d..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchScope.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.resources.IResourceProxy;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-
-/**
- * Used to constrain JSP/java search to certain paths and elements.
- * @author pavery
- */
-public class JSPSearchScope implements IJavaSearchScope {
-
-	private boolean fEnclosesAll = false;
-	private List fResourcePaths = null;
-	private List fJavaElements = null;
-
-	public JSPSearchScope() {
-		// empty constructor just returns true for everything
-		// everything is in scope
-		this.fEnclosesAll = true;
-		init();
-	}
-
-	public JSPSearchScope(String[] resourceStringPath) {
-		init();
-		fResourcePaths.addAll(Arrays.asList(resourceStringPath));
-	}
-
-	public JSPSearchScope(IJavaElement[] javaElement) {
-		init();
-		fJavaElements.addAll(Arrays.asList(javaElement));
-	}
-
-	private void init() {
-		this.fResourcePaths = new ArrayList();
-		this.fJavaElements = new ArrayList();
-	}
-
-	public boolean encloses(String resourcePathString) {
-
-		if (this.fEnclosesAll)
-			return true;
-		else if (enclosesPath(resourcePathString))
-			return true;
-
-		return false;
-	}
-
-	public boolean encloses(IJavaElement element) {
-
-		// pa_TOD implement
-		if (this.fEnclosesAll)
-			return true;
-
-		return true;
-	}
-
-	public boolean encloses(IResourceProxy element) {
-
-		if (this.fEnclosesAll)
-			return true;
-		else if (enclosesPath(element.requestFullPath().toOSString()))
-			return true;
-
-		return true;
-	}
-
-	public void addPath(String path) {
-		this.fResourcePaths.add(path);
-	}
-
-	public void addElement(IJavaElement element) {
-		this.fJavaElements.add(element);
-	}
-
-	private boolean enclosesPath(String possible) {
-
-		String[] paths = (String[]) fResourcePaths.toArray(new String[fResourcePaths.size()]);
-		for (int i = 0; i < paths.length; i++) {
-			if (possible.equals(paths[i]))
-				return true;
-		}
-		return false;
-	}
-
-	public String getDescription() {
-
-		return "JSPSearchScope"; //$NON-NLS-1$
-	}
-
-	public IPath[] enclosingProjectsAndJars() {
-
-		// pa_TODO
-		return null;
-	}
-
-	public boolean includesBinaries() {
-		return false;
-	}
-
-	public boolean includesClasspaths() {
-		return false;
-	}
-
-	public void setIncludesBinaries(boolean includesBinaries) {
-		// do nothing
-	}
-
-	public void setIncludesClasspaths(boolean includesClasspaths) {
-		// do nothing
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchSupport.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchSupport.java
deleted file mode 100644
index 6f007b5..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JSPSearchSupport.java
+++ /dev/null
@@ -1,569 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.zip.CRC32;
-
-import org.eclipse.core.resources.IFile;
-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.IStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.search.IJavaSearchConstants;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-import org.eclipse.jdt.core.search.SearchDocument;
-import org.eclipse.jdt.core.search.SearchEngine;
-import org.eclipse.jdt.core.search.SearchPattern;
-import org.eclipse.jdt.core.search.SearchRequestor;
-import org.eclipse.jdt.internal.compiler.util.SimpleLookupTable;
-import org.eclipse.jdt.internal.core.JavaModelManager;
-import org.eclipse.jdt.internal.core.search.indexing.IndexManager;
-import org.eclipse.jst.jsp.core.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.java.JSP2ServletNameUtil;
-
-/**
- * Central access to java indexing and search. All contact between JDT indexing
- * and Searching should be done through here.
- * 
- * Clients should access the methods of this class via the single instance via
- * <code>getInstance()</code>.
- * 
- * @author pavery
- */
-public class JSPSearchSupport {
-
-    // for debugging
-    static final boolean DEBUG;
-    static {
-        String value = Platform.getDebugOption("com.ibm.sse.model.jsp/debug/jspsearch"); //$NON-NLS-1$
-        DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-    }
-
-    private static JSPSearchSupport singleton = null;
-
-    private JSPSearchParticipant fParticipant = null;
-
-    private IPath fJspPluginLocation = null;
-
-    // pa_TODO may be slow (esp for indexing entire workspace)
-    private final CRC32 fChecksumCalculator = new CRC32();
-
-    /** main cancel montior for all search support */
-    private final IProgressMonitor fMonitor = new NullProgressMonitor();
-
-    private JSPSearchSupport() {
-        // force use of single instance
-    }
-
-    /**
-     * This operation ensures that the live resource's search markers show up in
-     * the open editor. It also allows the ability to pass in a ProgressMonitor
-     */
-    private class SearchJob extends Job implements IJavaSearchConstants {
-
-        String fSearchText = ""; //$NON-NLS-1$
-
-        IJavaSearchScope fScope = null;
-
-        int fSearchFor = FIELD;
-
-        int fLimitTo = ALL_OCCURRENCES;
-
-        int fMatchMode = SearchPattern.R_PATTERN_MATCH;
-
-        boolean fIsCaseSensitive = false;
-
-        SearchRequestor fRequestor = null;
-
-        IJavaElement fElement = null;
-
-        // constructor w/ java element
-        public SearchJob(IJavaElement element, IJavaSearchScope scope, SearchRequestor requestor) {
-
-            super("JSP Search - " + element.getElementName());
-            this.fElement = element;
-            this.fScope = scope;
-            this.fRequestor = requestor;
-        }
-
-        // constructor w/ search text
-        public SearchJob(String searchText, IJavaSearchScope scope, int searchFor, int limitTo, int matchMode, boolean isCaseSensitive, SearchRequestor requestor) {
-
-            super("JSP Search - " + searchText);
-            this.fSearchText = searchText;
-            this.fScope = scope;
-            this.fSearchFor = searchFor;
-            this.fLimitTo = limitTo;
-            this.fMatchMode = matchMode;
-            this.fIsCaseSensitive = isCaseSensitive;
-            this.fRequestor = requestor;
-        }
-
-        public IStatus run(IProgressMonitor jobMonitor) {
-
-            if (jobMonitor != null && jobMonitor.isCanceled())
-                return Status.CANCEL_STATUS;
-            if (JSPSearchSupport.getInstance().isCanceled())
-                return Status.CANCEL_STATUS;
-
-            SearchPattern javaSearchPattern = null;
-            // if an element is available, use that to create search pattern
-            // (eg. LocalVariable)
-            // otherwise use the text and other paramters
-            if (this.fElement != null)
-                javaSearchPattern = SearchPattern.createPattern(this.fElement, this.fLimitTo);
-            else
-                javaSearchPattern = SearchPattern.createPattern(this.fSearchText, this.fSearchFor, this.fLimitTo, this.fMatchMode);
-
-            if (javaSearchPattern != null) {
-                JSPSearchParticipant[] participants = { getSearchParticipant() };
-                SearchEngine engine = new SearchEngine();
-                try {
-                    if (jobMonitor != null)
-                        jobMonitor.beginTask("", IProgressMonitor.UNKNOWN); //$NON-NLS-1$
-                    engine.search(javaSearchPattern, participants, this.fScope, this.fRequestor, jobMonitor);
-                } catch (CoreException e) {
-                    if (DEBUG)
-                        Logger.logException(e);
-                }
-                // non-CoreExceptions will permanently stall the Worker thread
-                catch (Exception e) {
-                    if (DEBUG)
-                        Logger.logException(e);
-                } finally {
-                    if (jobMonitor != null)
-                        jobMonitor.done();
-                }
-            }
-            return Status.OK_STATUS;
-        }
-    }
-
-    // end SearchJob
-    /**
-     * Runnable forces caller to wait until finished (as opposed to using a Job)
-     */
-    private class SearchRunnable implements IWorkspaceRunnable, IJavaSearchConstants {
-
-        String fSearchText = ""; //$NON-NLS-1$
-
-        IJavaSearchScope fScope = null;
-
-        int fSearchFor = FIELD;
-
-        int fLimitTo = ALL_OCCURRENCES;
-
-        int fMatchMode = SearchPattern.R_PATTERN_MATCH;
-
-        boolean fIsCaseSensitive = false;
-
-        SearchRequestor fRequestor = null;
-
-        IJavaElement fElement = null;
-
-        // constructor w/ java element
-        public SearchRunnable(IJavaElement element, IJavaSearchScope scope, SearchRequestor requestor) {
-
-            this.fElement = element;
-            this.fScope = scope;
-            this.fRequestor = requestor;
-        }
-
-        // constructor w/ search text
-        public SearchRunnable(String searchText, IJavaSearchScope scope, int searchFor, int limitTo, int matchMode, boolean isCaseSensitive, SearchRequestor requestor) {
-
-            this.fSearchText = searchText;
-            this.fScope = scope;
-            this.fSearchFor = searchFor;
-            this.fLimitTo = limitTo;
-            this.fMatchMode = matchMode;
-            this.fIsCaseSensitive = isCaseSensitive;
-            this.fRequestor = requestor;
-        }
-
-        public void run(IProgressMonitor monitor) throws CoreException {
-
-            if (monitor != null && monitor.isCanceled())
-                return;
-            if (JSPSearchSupport.getInstance().isCanceled())
-                return;
-
-            SearchPattern javaSearchPattern = null;
-            // if an element is available, use that to create search pattern
-            // (eg. LocalVariable)
-            // otherwise use the text and other paramters
-            if (this.fElement != null)
-                javaSearchPattern = SearchPattern.createPattern(this.fElement, fLimitTo);
-            else
-                javaSearchPattern = SearchPattern.createPattern(fSearchText, fSearchFor, fLimitTo, fMatchMode);
-
-            if (javaSearchPattern != null) {
-                JSPSearchParticipant[] participants = { getSearchParticipant() };
-                SearchEngine engine = new SearchEngine();
-                try {
-                    if (monitor != null)
-                        monitor.beginTask("", 0); //$NON-NLS-1$
-                    engine.search(javaSearchPattern, participants, fScope, fRequestor, monitor);
-                } catch (CoreException e) {
-                    Logger.logException(e);
-                    //throw e;
-                }
-                // non-CoreExceptions will permanently stall the Worker thread
-                catch (Exception e) {
-                    Logger.logException(e);
-                } finally {
-                    if (monitor != null)
-                        monitor.done();
-                }
-            }
-        }
-    }
-
-    // end SearchRunnable
-
-    /**
-     * Clients should access the methods of this class via the single instance
-     * via getInstance()
-     * 
-     * @return
-     */
-    public synchronized static JSPSearchSupport getInstance() {
-
-        if (singleton == null)
-            singleton = new JSPSearchSupport();
-        return singleton;
-    }
-
-    /**
-     * Utility method to check if a file is a jsp file (since this is done
-     * frequently)
-     */
-    public static boolean isJsp(IFile file) {
-
-        boolean isJsp = false;
-        InputStream is = null;
-        try {
-            if (file != null && file.exists()) {
-
-                IContentType contentTypeJSP = Platform.getContentTypeManager().getContentType(ContentTypeIdForJSP.ContentTypeID_JSP);
-                // check this before description, it's less expensive
-                if (contentTypeJSP.isAssociatedWith(file.getName())) {
-
-                    IContentDescription contentDescription = file.getContentDescription();
-                    // it can be null
-                    if (contentDescription == null) {
-                        is = file.getContents();
-                        contentDescription = Platform.getContentTypeManager().getDescriptionFor(is, file.getName(), new QualifiedName[] { IContentDescription.CHARSET });
-                    }
-                    if (contentDescription != null) {
-                        String fileCtId = contentDescription.getContentType().getId();
-                        isJsp = (fileCtId != null && ContentTypeIdForJSP.ContentTypeID_JSP.equals(fileCtId));
-                    }
-                }
-            }
-        } catch (IOException e) {
-            // ignore, assume it's invalid JSP
-        } catch (CoreException e) {
-            // ignore, assume it's invalid JSP
-        } finally {
-            // must close input stream in case others need it
-            if (is != null)
-                try {
-                    is.close();
-                } catch (Exception e) {
-                    // not sure how to recover at this point
-                }
-        }
-        return isJsp;
-    }
-
-    /**
-     * schedules a search document representing this JSP file for indexing (by
-     * the java indexer)
-     * 
-     * @param file
-     *            the JSP file
-     * @return true if indexing was successful, false otherwise
-     * @throws CoreException
-     */
-    public SearchDocument addJspFile(IFile file) {
-        if (JSPSearchSupport.getInstance().isCanceled()) {
-            return null;
-        }
-
-        if (DEBUG)
-            System.out.println("adding JSP file:" + file.getFullPath()); //$NON-NLS-1$
-
-        // create
-        SearchDocument delegate = createSearchDocument(file);
-        // null if not a jsp file
-        if (delegate != null) {
-            try {
-                getSearchParticipant().scheduleDocumentIndexing(delegate, computeIndexLocation(file.getParent().getFullPath()));
-            } catch (Exception e) {
-                // ensure that failure here doesn't keep other documents from
-                // being indexed
-                // if peformed in a batch call (like JSPIndexManager)
-                if (DEBUG)
-                    e.printStackTrace();
-            }
-        }
-
-        if (DEBUG)
-            System.out.println("scheduled" + delegate + "for indexing"); //$NON-NLS-1$ //$NON-NLS-2$
-
-        return delegate;
-    }
-    
-    /**
-     * Perform a java search w/ the given parameters. Runs in a background Job
-     * (results may still come in after this method call)
-     * 
-     * @param searchText
-     *            the string of text to search on
-     * @param searchFor
-     *            IJavaSearchConstants.TYPE, METHOD, FIELD, PACKAGE, etc...
-     * @param limitTo
-     *            IJavaSearchConstants.DECLARATIONS,
-     *            IJavaSearchConstants.REFERENCES,
-     *            IJavaSearchConstants.IMPLEMENTORS, or
-     *            IJavaSearchConstants.ALL_OCCURRENCES
-     * @param matchMode
-     *            allow * wildcards or not
-     * @param isCaseSensitive
-     * @param requestor
-     *            passed in to accept search matches (and do "something" with
-     *            them)
-     */
-    public void search(String searchText, IJavaSearchScope scope, int searchFor, int limitTo, int matchMode, boolean isCaseSensitive, SearchRequestor requestor) {
-
-        JSPIndexManager.getInstance().rebuildIndexIfNeeded();
-
-        SearchJob job = new SearchJob(searchText, scope, searchFor, limitTo, matchMode, isCaseSensitive, requestor);
-        setCanceled(false);
-        job.setUser(true);
-        // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5032
-        // pops up user operation blocked dialog if you perform a long search,
-        // then open a file because it locks the workspace
-        //job.setRule(ResourcesPlugin.getWorkspace().getRoot());
-        job.schedule();
-    }
-
-    /**
-     * Search for an IJavaElement, constrained by the given parameters. Runs in
-     * a background Job (results may still come in after this method call)
-     * 
-     * @param element
-     * @param scope
-     * @param requestor
-     */
-    public void search(IJavaElement element, IJavaSearchScope scope, SearchRequestor requestor) {
-
-        JSPIndexManager.getInstance().rebuildIndexIfNeeded();
-
-        SearchJob job = new SearchJob(element, scope, requestor);
-        setCanceled(false);
-        job.setUser(true);
-        // https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5032
-        //job.setRule(ResourcesPlugin.getWorkspace().getRoot());
-        job.schedule();
-    }
-
-    /**
-     * Search for an IJavaElement, constrained by the given parameters. Runs in
-     * an IWorkspace runnable (results will be reported by the end of this
-     * method)
-     * 
-     * @param element
-     * @param scope
-     * @param requestor
-     */
-    public void searchRunnable(IJavaElement element, IJavaSearchScope scope, SearchRequestor requestor) {
-
-        JSPIndexManager.getInstance().rebuildIndexIfNeeded();
-
-        SearchRunnable searchRunnable = new SearchRunnable(element, scope, requestor);
-        try {
-            setCanceled(false);
-            ResourcesPlugin.getWorkspace().run(searchRunnable, JSPSearchSupport.getInstance().getProgressMonitor());
-        } catch (CoreException e) {
-            e.printStackTrace();
-        }
-    }
-
-    /**
-     * @param jspFile
-     * @return SearchDocument if the file is not null, exists, and is a JSP
-     *         file, otherwise null.
-     */
-    private SearchDocument createSearchDocument(IFile jspFile) {
-
-        JavaSearchDocumentDelegate delegate = null;
-        if (jspFile != null && jspFile.exists() && isJsp(jspFile)) {
-
-            delegate = new JavaSearchDocumentDelegate(new JSPSearchDocument(jspFile.getFullPath().toString(), getSearchParticipant()));
-        }
-        return delegate;
-
-    }
-
-    /**
-     * Centralized place to access JSPSearchDocuments (used by
-     * JSPSearchParticipant and JSPSearchRequestor)
-     * 
-     * @param searchDocPath
-     * @param doc
-     * @return the JSPSearchDocument or null if one is not found
-     */
-    public SearchDocument getSearchDocument(String searchDocPath) {
-         
-        SearchDocument delegate = null;
-        IFile f = fileForCUPath(searchDocPath);
-        if (f != null) {
-            delegate = createSearchDocument(f);
-        } else {
-            // handle failure case... (file deleted maybe?)
-        }
-        return delegate;
-    }
-
-    /**
-     * Unmangles the searchDocPath and returns the corresponding JSP file.
-     * 
-     * @param searchDocPath
-     */
-    private IFile fileForCUPath(String searchDocPath) {
-    
-        String[] split = searchDocPath.split("/"); //$NON-NLS-1$
-        String classname = split[split.length - 1];
-
-        // ignore anything but .java matches (like .class binary matches)
-        if(!searchDocPath.endsWith(".java")) {
-            return null;
-        }
-
-        String filePath = JSP2ServletNameUtil.unmangle(classname);
-       
-        // try absolute path
-        IFile f = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(new Path(filePath));
-        // workspace relative then
-        if(f == null) {
-            // https://bugs.eclipse.org/bugs/show_bug.cgi?id=86009
-            // must have a project name as well
-            // which would mean >= 2 path segments
-            IPath path = new Path(filePath);
-            if(path.segmentCount() >= 2) {
-                f = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
-            }
-        }
-        return f;
-    }
-
-    JSPSearchParticipant getSearchParticipant() {
-
-        if (this.fParticipant == null)
-            this.fParticipant = new JSPSearchParticipant();
-        return this.fParticipant;
-    }
-
-    // This is called from JSPPathIndexer
-    // pa_TODO
-    //how can we make sure participant indexLocations are updated at startup?
-    public final IPath computeIndexLocation(IPath containerPath) {
-
-        // pa_TODO there should be a non internal way to do this.
-        IndexManager indexManager = JavaModelManager.getJavaModelManager().getIndexManager();
-        SimpleLookupTable indexLocations = indexManager.indexLocations;
-
-        String indexLocation = null;
-        Object obj = indexLocations.get(containerPath);
-        if (obj != null) {
-            indexLocation = (String) obj;
-        } else {
-            // create index entry
-            String pathString = containerPath.toOSString();
-            this.fChecksumCalculator.reset();
-            this.fChecksumCalculator.update(pathString.getBytes());
-            String fileName = Long.toString(this.fChecksumCalculator.getValue()) + ".index"; //$NON-NLS-1$
-            // this is the only difference from
-            // IndexManager#computeIndexLocation(...)
-            indexLocation = getModelJspPluginWorkingLocation().append(fileName).toOSString();
-
-            // pa_TODO need to add to java path too, so JDT search support knows
-            // there should be a non internal way to do this.
-            indexLocations.put(containerPath, indexLocation);
-        }
-        return new Path(indexLocation);
-    }
-
-    // copied from JDT IndexManager
-    public IPath getModelJspPluginWorkingLocation() {
-
-        if (this.fJspPluginLocation != null)
-            return this.fJspPluginLocation;
-
-        IPath stateLocation = JSPCorePlugin.getDefault().getStateLocation();
-
-        // pa_TODO workaround for
-        // https://bugs.eclipse.org/bugs/show_bug.cgi?id=62267
-        // copied from IndexManager
-        String device = stateLocation.getDevice();
-        if (device != null && device.charAt(0) == '/')
-            stateLocation = stateLocation.setDevice(device.substring(1));
-
-        return this.fJspPluginLocation = stateLocation;
-    }
-
-    /**
-     * JSP Indexing and Search jobs check this
-     * 
-     * @return
-     */
-    public synchronized final void setCanceled(boolean cancel) {
-
-        fMonitor.setCanceled(cancel);
-    }
-
-    /**
-     * JSP Indexing and Search jobs check this
-     * 
-     * @return
-     */
-    public synchronized final boolean isCanceled() {
-
-        return fMonitor.isCanceled();
-    }
-
-    /**
-     * JSP Indexing and Search jobs check this
-     * 
-     * @return
-     */
-    public final IProgressMonitor getProgressMonitor() {
-
-        return this.fMonitor;
-    }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JavaSearchDocumentDelegate.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JavaSearchDocumentDelegate.java
deleted file mode 100644
index 83f13d1..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/JavaSearchDocumentDelegate.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jdt.core.search.SearchDocument;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationExtension;
-
-
-/**
- * Wrapper method to set getPath() path to be the path of the compilation unit 
- * for the jsp file. (since it's a final method, it needs to be set via constructor)
- * 
- * @author pavery
- */
-public class JavaSearchDocumentDelegate extends SearchDocument {
-	
-	private JSPSearchDocument fJSPSearchDoc = null;
-	
-	public JavaSearchDocumentDelegate(JSPSearchDocument jspSearchDoc) {
-		
-		super(jspSearchDoc.getPath(), jspSearchDoc.getParticipant());
-		this.fJSPSearchDoc = jspSearchDoc;
-	}
-
-	public byte[] getByteContents() {
-		
-		return this.fJSPSearchDoc.getByteContents();
-	}
-
-	public char[] getCharContents() {
-		
-		return this.fJSPSearchDoc.getCharContents();
-	}
-	
-	public String getJavaText() {
-		return this.fJSPSearchDoc.getJavaText();
-	}
-
-	public String getEncoding() {
-		
-		return this.fJSPSearchDoc.getEncoding();
-	}
-	
-	public IFile getFile() {
-		
-		return this.fJSPSearchDoc.getFile();
-	}
-	
-	public JSPTranslationExtension getJspTranslation() {
-		
-		return this.fJSPSearchDoc.getJSPTranslation();
-	}
-	
-	public int getJspOffset(int javaOffset) {
-		
-		return this.fJSPSearchDoc.getJspOffset(javaOffset);
-	}
-	
-	public void release() {
-		this.fJSPSearchDoc.release();
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/NullSearchDocument.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/NullSearchDocument.java
deleted file mode 100644
index ad99a10..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/search/NullSearchDocument.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.java.search;
-
-import org.eclipse.jdt.core.search.SearchDocument;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslator;
-
-
-
-/**
- * An empty servlet, safe for Java search participation
- * 
- * @author pavery
- */
-public class NullSearchDocument extends SearchDocument {
-	
-	StringBuffer fEmptyServletBuffer = null;
-	
-	public NullSearchDocument(String documentPath) {
-		super(documentPath, new JSPSearchParticipant()); //$NON-NLS-1$
-		this.fEmptyServletBuffer = new JSPTranslator().getEmptyTranslation();
-	}
-	
-	public byte[] getByteContents() {
-		return this.fEmptyServletBuffer.toString().getBytes();
-	}
-	
-	public char[] getCharContents() {
-		return this.fEmptyServletBuffer.toString().toCharArray();
-	}
-	
-	public String getEncoding() {
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPCodeRegion.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPCodeRegion.java
deleted file mode 100644
index b7b1434..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPCodeRegion.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.parser;
-
-
-
-import org.eclipse.jst.jsp.core.contenttype.ContentTypeIdForJSP;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.parser.ForeignRegion;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-
-public class JSPCodeRegion extends ForeignRegion {
-
-	protected RegionParser fBlockNodeChecker = null;
-
-	/**
-	 * JavaCodeRegion constructor comment.
-	 */
-	public JSPCodeRegion() {
-		super();
-	}
-
-	public JSPCodeRegion(String newContext, int newStart, int newTextLength, int newLength) {
-		super(newContext, newStart, newTextLength, newLength, "jsp-java"); //$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 * @return RegionParser
-	 */
-	protected RegionParser getBlockNodeChecker() {
-		if (fBlockNodeChecker == null) {
-			IModelManager mmanager = StructuredModelManager.getModelManager();
-			fBlockNodeChecker = mmanager.createStructuredDocumentFor(ContentTypeIdForJSP.ContentTypeID_JSP).getParser();
-		}
-		return fBlockNodeChecker;
-	}
-
-	/**
-	 * @see com.ibm.sed.interfaces.core.IRegionCodeAssistProcessor
-	 */
-	public void setStructuredDocument(IStructuredDocument structuredDocument) {
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPDirectiveStructuredDocumentRegion.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPDirectiveStructuredDocumentRegion.java
deleted file mode 100644
index 33d026e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPDirectiveStructuredDocumentRegion.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.parser;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.internal.text.XMLStructuredDocumentRegion;
-
-public class JSPDirectiveStructuredDocumentRegion extends XMLStructuredDocumentRegion {
-	/**
-	 * JSPDirectiveStructuredDocumentRegion constructor comment.
-	 */
-	public JSPDirectiveStructuredDocumentRegion() {
-		super();
-	}
-
-	protected StructuredDocumentEvent reparse(Object requester, String changes, int requestStart, int lengthToReplace) {
-		return null;
-	}
-
-	// This is a language specific method (e.g. HTML, Java, Prolog, etc.) so
-	// could/should be made configurable.
-	public StructuredDocumentEvent updateModel(Object requester, String changes, int requestStart, int lengthToReplace, IStructuredDocumentRegion flatnode) {
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPReParser.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPReParser.java
deleted file mode 100644
index c949f88..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPReParser.java
+++ /dev/null
@@ -1,384 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.parser;
-
-
-import java.util.Iterator;
-
-import org.eclipse.jst.jsp.core.JSP12Namespace;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP11TLDNames;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.internal.text.CoreNodeList;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.text.IStructuredTextReParser;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.xml.core.internal.parser.XMLStructuredDocumentReParser;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-public class JSPReParser extends XMLStructuredDocumentReParser {
-
-	/**
-	 * Allow a reparser to check for extra syntactic cases that require
-	 * parsing beyond the flatNode boundary.
-	 * 
-	 * This implementation adds JSP language markers (comments are handled
-	 * elsewhere).
-	 */
-	protected StructuredDocumentEvent checkForCrossStructuredDocumentRegionSyntax() {
-		StructuredDocumentEvent result = super.checkForCrossStructuredDocumentRegionSyntax();
-		// None of the superclass' cases were valid, so check for JSP cases
-		if (result == null) {
-			result = checkForJSP();
-		}
-		return result;
-	}
-
-	/**
-	 * A change to a JSP tag can result in all being reparsed.
-	 */
-	private StructuredDocumentEvent checkForJSP() {
-		StructuredDocumentEvent result = null;
-		result = checkForCriticalKey("<%"); //$NON-NLS-1$
-		if (result == null)
-			result = checkForCriticalKey("<%="); //$NON-NLS-1$
-		if (result == null)
-			result = checkForCriticalKey("<%!"); //$NON-NLS-1$
-		if (result == null)
-			result = checkForCriticalKey("%>"); //$NON-NLS-1$
-
-		return result;
-	}
-
-	/**
-	 * If a comment start or end tag is being added or deleted, we'll rescan
-	 * the whole document. The reason is that content that is revealed or
-	 * commented out can effect the interpretation of the rest of the
-	 * document. Note: for now this is very XML/JSP specific, can
-	 * refactor/improve later.
-	 */
-	protected StructuredDocumentEvent checkForComments() {
-
-		StructuredDocumentEvent result = super.checkForComments();
-
-		if (result == null)
-			result = checkForCriticalKey("<%--"); //$NON-NLS-1$
-		if (result == null)
-			result = checkForCriticalKey("--%>"); //$NON-NLS-1$
-		// we'll also check for these degenerate cases
-		if (result == null)
-			result = checkForCriticalKey("<%---%>"); //$NON-NLS-1$
-
-		return result;
-	}
-
-	/**
-	 * The core reparsing method ... after the dirty start and dirty end have
-	 * been calculated elsewhere. - this method overrides, does not extend
-	 * super's method. changes/fixes to super may have to be made here as
-	 * well.
-	 */
-	protected StructuredDocumentEvent reparse(IStructuredDocumentRegion dirtyStart, IStructuredDocumentRegion dirtyEnd) {
-		StructuredDocumentEvent result = null;
-		int rescanStart = -1;
-		int rescanEnd = -1;
-		boolean firstTime = false;
-		boolean detectedBreakingChange = false;
-
-		//
-		// "save" the oldNodes (that may be replaced) in a list
-		CoreNodeList oldNodes = formOldNodes(dirtyStart, dirtyEnd);
-
-		if (containsBreakingChange(oldNodes) || isBreakingWithNestedTag(dirtyStart, dirtyEnd)) {
-			if (Debug.debugTaglibs)
-				System.out.println("reparse: is taglib or include"); //$NON-NLS-1$
-			detectedBreakingChange = true;
-			rescanStart = 0;
-			rescanEnd = fStructuredDocument.getLength() + fLengthDifference;
-			oldNodes = formOldNodes(fStructuredDocument.getFirstStructuredDocumentRegion(), fStructuredDocument.getLastStructuredDocumentRegion());
-			clearTaglibInfo();
-		}
-		else if (dirtyStart == null || dirtyEnd == null) {
-			// dirtyStart or dirty end are null, then that means we didn't
-			// have a
-			// cached node, which means we have an empty document, so we
-			// just need to rescan the changes
-			rescanStart = 0;
-			rescanEnd = fChanges.length();
-			firstTime = true;
-		}
-		else {
-			// set the start of the text to rescan
-			rescanStart = dirtyStart.getStart();
-			//
-			// set the end of the text to rescan
-			// notice we use the same rationale as for the rescanStart,
-			// with the added caveat that length has to be added to it,
-			// to compensate for the new text which has been added or deleted.
-			// If changes has zero length, then "length" will be negative,
-			// since
-			// we are deleting text. Otherwise, use the difference between
-			// what's selected to be replaced and the length of the new text.
-			rescanEnd = dirtyEnd.getEnd() + fLengthDifference;
-		}
-
-		// now that we have the old stuff "saved" away, update the document
-		// with the changes.
-		fStructuredDocument.updateDocumentData(fStart, fLengthToReplace, fChanges);
-		// ------------------ now the real work
-		result = core_reparse(rescanStart, rescanEnd, oldNodes, firstTime);
-		//
-
-		// if we did not detect a breaking type of change at the beginning,
-		// but
-		// do now, then reparse all! If we did detect them, then we may or may
-		// not detect again, but presumably we've already set up to re-parsed
-		// everthing, so no need to do again.
-		if ((!detectedBreakingChange) && (containsBreakingChange(oldNodes))) {
-			clearTaglibInfo();
-			// reparse all
-			oldNodes = formOldNodes(fStructuredDocument.getFirstStructuredDocumentRegion(), fStructuredDocument.getLastStructuredDocumentRegion());
-			result = core_reparse(0, fStructuredDocument.getLength(), oldNodes, firstTime);
-		}
-
-		// event is returned to the caller, incase there is
-		// some optimization they can do
-		return result;
-	}
-
-	/**
-	 * Verifies that the regions given, representing the contents of a
-	 * IStructuredDocumentRegion, contain regions that could alter the
-	 * behavior of the parser or the parsing of areas outside of the regions
-	 * given.
-	 */
-	private boolean isBreakingChange(IStructuredDocumentRegion node, ITextRegionList regions) {
-		return isTaglibOrInclude(node, regions) || isJspRoot(regions);
-	}
-
-	/**
-	 * Verifies that the regions given, representing the regions touched by a
-	 * text change have: 1) ...an insertion at the textEndOffset of an
-	 * XML_TAG_OPEN that's in it's own IStructuredDocumentRegion and preceded
-	 * by an unended IStructuredDocumentRegion 2) ...a deletion happening in
-	 * an XML_EMPTY_TAG_CLOSE that ends a ITextRegionContainer 3) ...an
-	 * insertion happening with a ' <' character somewhere in an XML attribute
-	 * name or value 4) ...a deletion of a normal XML_TAG_CLOSE since
-	 * subsequent tags become attribute values
-	 */
-
-	private boolean isBreakingWithNestedTag(boolean changesIncludeA_lt, boolean delsIncludeA_gt, IStructuredDocumentRegion parent, ITextRegion region) {
-		boolean result = false;
-
-		IStructuredDocumentRegion previous = parent.getPrevious();
-		// case 1 test
-		if (parent.getRegions().size() == 1 && region.getType() == XMLRegionContext.XML_TAG_OPEN && (previous == null || (!previous.isEnded() || previous.getType() == XMLRegionContext.XML_CONTENT))) {
-			result = true;
-		}
-		//case 2 test
-		if (region instanceof ITextRegionContainer) {
-			ITextRegionContainer container = (ITextRegionContainer) region;
-			ITextRegion internal = container.getRegions().get(container.getRegions().size() - 1);
-			if (internal.getType() == XMLRegionContext.WHITE_SPACE && container.getRegions().size() >= 2)
-				internal = container.getRegions().get(container.getRegions().size() - 2);
-			if (internal.getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE) {
-				result = true;
-			}
-		}
-		//case 3 test
-		if (changesIncludeA_lt && (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME || region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)) {
-			result = true;
-		}
-		//case 4 test
-		if (delsIncludeA_gt && region.getType() == XMLRegionContext.XML_TAG_CLOSE) {
-			result = true;
-		}
-		return result;
-	}
-
-	/**
-	 * Verifies that the regions given, representing the contents of a
-	 * IStructuredDocumentRegion, includes a jsp:root tag
-	 */
-	private boolean isJspRoot(ITextRegionList regions) {
-		return regions.size() > 1 && regions.get(0).getType() == XMLRegionContext.XML_TAG_OPEN && regions.get(1).getType() == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME;
-	}
-
-	/**
-	 * Verifies that the regions given, representing the contents of a
-	 * IStructuredDocumentRegion, includes a valid taglib directive or include
-	 * directive
-	 */
-	private boolean isTaglibOrInclude(IStructuredDocumentRegion node, ITextRegionList regions) {
-		boolean sizeAndTypesMatch = (regions.size() > 1) && (regions.get(1).getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME)
-					&& (regions.get(0).getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || regions.get(0).getType() == XMLRegionContext.XML_TAG_OPEN);
-		if (!sizeAndTypesMatch)
-			return false;
-		ITextRegion region = regions.get(1);
-		String directiveName = node.getText(region);
-		return sizeAndTypesMatch
-					&& (directiveName.equals(JSP11TLDNames.TAGLIB) || directiveName.equals(JSP11TLDNames.INCLUDE) || directiveName.equals(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB) || directiveName
-								.equals(JSP12Namespace.ElementName.DIRECTIVE_INCLUDE));
-	}
-
-	private void clearTaglibInfo() {
-		if (Debug.debugTaglibs)
-			System.out.println("clearing taglib info"); //$NON-NLS-1$
-		RegionParser parser = fStructuredDocument.getParser();
-		if (parser instanceof StructuredDocumentRegionParser)
-			((StructuredDocumentRegionParser) parser).resetHandlers();
-	}
-
-	private boolean containsBreakingChange(IStructuredDocumentRegionList list) {
-		boolean contains = false;
-		for (int i = 0; i < list.getLength(); i++) {
-			IStructuredDocumentRegion node = list.item(i);
-			if (isBreakingChange(node, node.getRegions())) {
-				contains = true;
-				break;
-			}
-		}
-		return contains;
-	}
-
-	protected IStructuredDocumentRegion findDirtyEnd(int end) {
-
-		IStructuredDocumentRegion result = super.findDirtyEnd(end);
-
-		// if not well formed, get one past, if its not null
-
-		// now, if any of to-be-scanned flatnodes are the start of a jsp
-		// region, we'll
-		// reparse all the way to the end, to be sure we detect embedded
-		// regions (or not-embedded regions) correctly.
-		// notice we don't need to do if we're only processing one node.
-		// notice too we have a strong assumption here that dirtyStart has
-		// already been found!
-		//
-		// note that dirtyEnd is not checked in the do-block below, so we'll
-		// check it first.
-		if (isJSPEmbeddedStartOrEnd(result)) {
-			result = fStructuredDocument.getLastStructuredDocumentRegion();
-		}
-		else {
-			// when end node and start node are the same, we only need the
-			// above
-			// check, otherwise, there's a few cases that we'll search the
-			// rest of the
-			// flatnodes needlessly.
-			if (result != dirtyStart) {
-				IStructuredDocumentRegion searchNode = dirtyStart;
-				do {
-					if (isJSPEmbeddedStartOrEnd(searchNode)) {
-						result = fStructuredDocument.getLastStructuredDocumentRegion();
-						break;
-					}
-					else {
-						searchNode = searchNode.getNext();
-					}
-					// if we get to the current dirty end, or end of
-					// flatnodes, without finding JSP region then we
-					// don't need to check further
-				}
-				while ((searchNode != result) && (searchNode != null));
-			}
-		}
-		// result should never be null, but cachedNode needs to be protected
-		// from being changed to null
-		if (result != null)
-			fStructuredDocument.setCachedDocumentRegion(result);
-		dirtyEnd = result;
-		return dirtyEnd;
-	}
-
-	private boolean isBreakingWithNestedTag(IStructuredDocumentRegion start, IStructuredDocumentRegion end) {
-		boolean result = false;
-		boolean changesIncludeA_lt = fChanges != null && fChanges.indexOf('<') >= 0;
-		boolean delsIncludeA_gt = fDeletedText != null && fDeletedText.indexOf('>') >= 0;
-
-		//List regions = new ArrayList();
-		IStructuredDocumentRegion node = start;
-		int endReplace = fStart + fLengthToReplace;
-		while (end != null && node != end.getNext()) {
-			Iterator i = node.getRegions().iterator();
-			while (i.hasNext()) {
-				ITextRegion region = (ITextRegion) i.next();
-				if (intersects(node, region, fStart, endReplace)) {
-
-					result = isBreakingWithNestedTag(changesIncludeA_lt, delsIncludeA_gt, node, region);
-
-					if (result)
-						break;
-				}
-			}
-			node = node.getNext();
-			if (result)
-				break;
-		}
-		return result;
-	}
-
-	private boolean intersects(IStructuredDocumentRegion node, ITextRegion region, int low, int high) {
-		int start = node.getStartOffset(region);
-		int end = node.getEndOffset(region);
-		return (end >= low && start <= high) || (start <= low && end >= low) || (start <= high && end >= high);
-	}
-
-	/**
-	 * Returns true if potentially could be a jsp embedded region. Things like
-	 * JSP Declaration can't be embedded.
-	 */
-	private boolean isJSPEmbeddedStartOrEnd(IStructuredDocumentRegion flatNode) {
-		boolean result = false;
-		String type = flatNode.getType();
-		result = ((type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) || (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) || (type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN));
-		return result;
-	}
-
-	/**
-	 * extends super class behavior
-	 */
-	protected boolean isPartOfBlockRegion(IStructuredDocumentRegion flatNode) {
-		boolean result = false;
-		String type = flatNode.getType();
-		result = ((type == DOMJSPRegionContexts.JSP_CLOSE) || (type == DOMJSPRegionContexts.JSP_CONTENT) || super.isPartOfBlockRegion(flatNode));
-		return result;
-	}
-
-	public IStructuredTextReParser newInstance() {
-		return new JSPReParser();
-	}
-
-	public StructuredDocumentEvent quickCheck() {
-		if (containsBreakingChange(new CoreNodeList(dirtyStart, dirtyEnd)))
-			return null;
-		return super.quickCheck();
-	}
-
-	public Object clone() {
-		try {
-			return super.clone();
-		}
-		catch (CloneNotSupportedException e) {
-			// could only happen if some changes
-			// superclass someday
-			throw new SourceEditingRuntimeException(e);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPSourceParser.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPSourceParser.java
deleted file mode 100644
index 3356fbc..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/JSPSourceParser.java
+++ /dev/null
@@ -1,435 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.parser;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jst.jsp.core.JSP12Namespace;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.internal.parser.internal.JSPTokenizer;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.internal.text.IRegionComparible;
-import org.eclipse.wst.sse.core.parser.BlockTokenizer;
-import org.eclipse.wst.sse.core.parser.JSPCapableParser;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionHandlerExtension;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionParser;
-import org.eclipse.wst.sse.core.parser.TagMarker;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.parser.XMLSourceParser;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-/**
- * Takes input from the JSPTokenizer and creates a tag list
- */
-
-public class JSPSourceParser extends XMLSourceParser implements JSPCapableParser {
-	protected class NestablePrefixHandler implements StructuredDocumentRegionHandler, StructuredDocumentRegionHandlerExtension {
-
-		private static final String XMLNS = "xmlns:";
-
-		/**
-		 * Enables a TLD owning the given prefix loaded from the given URI at
-		 * the anchorFlatNode. The list of additionalCMDocuments will claim to
-		 * not know any of its tags at positions earlier than that
-		 * IStructuredDocumentRegion's position.
-		 * 
-		 * For taglib directives, the taglib is the anchor while taglibs
-		 * registered through include directives use the primary include
-		 * directive as their anchor.
-		 */
-		protected void enableForTaglib(String prefix, IStructuredDocumentRegion anchorFlatNode) {
-			if (prefix == null)
-				return;
-			List tagmarkers = ((JSPTokenizer) getTokenizer()).getNestablePrefixes();
-			for (int i = 0; i < tagmarkers.size(); i++) {
-				if (((TagMarker) tagmarkers.get(i)).getTagName().equals(prefix))
-					return;
-			}
-			((JSPTokenizer) getTokenizer()).getNestablePrefixes().add(new TagMarker(prefix, anchorFlatNode));
-		}
-
-		public void nodeParsed(IStructuredDocumentRegion aCoreFlatNode) {
-			// could test > 1, but since we only care if there are 8 (<%@,
-			// taglib, uri, =, where, prefix, =, what) [or 4 for includes]
-			if (aCoreFlatNode.getNumberOfRegions() > 4 && aCoreFlatNode.getRegions().get(1).getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-				ITextRegion name = aCoreFlatNode.getRegions().get(1);
-				try {
-					int offset = aCoreFlatNode.getStartOffset(name);
-					int length = name.getTextLength();
-					boolean taglibdetected = false;
-					boolean taglibdirectivedetected = false;
-					if (fCharSequenceSource instanceof IRegionComparible) {
-						taglibdetected = ((IRegionComparible) fCharSequenceSource).regionMatches(offset, length, JSP12TLDNames.TAGLIB);
-						taglibdirectivedetected = ((IRegionComparible) fCharSequenceSource).regionMatches(offset, length, JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-					}
-					else {
-						// old fashioned way
-						String directiveName = getText(offset, length);
-						taglibdetected = directiveName.equals(JSP12TLDNames.TAGLIB);
-						taglibdirectivedetected = directiveName.equals(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-					}
-					boolean processDirectiveName = taglibdetected || taglibdirectivedetected;
-					if (processDirectiveName) {
-						processTaglib(aCoreFlatNode);
-					}
-				}
-				catch (StringIndexOutOfBoundsException sioobExc) {
-					//do nothing
-				}
-			}
-			// could test > 1, but since we only care if there are 5 (<,
-			// jsp:root, xmlns:prefix, =, where)
-			else if (aCoreFlatNode.getNumberOfRegions() > 4 && (aCoreFlatNode.getRegions().get(1)).getType() == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME) {
-				processJSPRoot(aCoreFlatNode);
-			}
-		}
-
-		protected void processJSPRoot(IStructuredDocumentRegion taglibFlatNode) {
-			ITextRegionList regions = taglibFlatNode.getRegions();
-			String prefix = null;
-			boolean taglib = false;
-			try {
-				for (int i = 0; i < regions.size(); i++) {
-					ITextRegion region = regions.get(i);
-					if (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-						int offset = taglibFlatNode.getStartOffset(region);
-						int length = region.getTextLength();
-
-						String name = getText(offset, length);
-						if (name.startsWith(XMLNS) && name.length() > XMLNS.length()) { //$NON-NLS-1$
-							prefix = name.substring(6);
-							taglib = true;
-						}
-						else {
-							prefix = null;
-							taglib = false;
-						}
-					}
-					else if (taglib && region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						prefix = StringUtils.strip(prefix);
-						if (prefix != null && prefix.length() > 0) {
-							enableForTaglib(prefix, taglibFlatNode);
-							prefix = null;
-						}
-					}
-				}
-			}
-			catch (StringIndexOutOfBoundsException sioobExc) {
-				// nothing to be done
-				prefix = null;
-			}
-		}
-
-		/**
-		 * Pulls the prefix from the given taglib directive
-		 * IStructuredDocumentRegion and makes sure the prefix is nestable.
-		 */
-		protected void processTaglib(IStructuredDocumentRegion taglibFlatNode) {
-			ITextRegionList regions = taglibFlatNode.getRegions();
-			String prefix = null;
-			boolean prefixname = false;
-			try {
-				for (int i = 0; i < regions.size(); i++) {
-					ITextRegion region = regions.get(i);
-					if (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-						if (fCharSequenceSource != null && fCharSequenceSource instanceof IRegionComparible) {
-							int offset = taglibFlatNode.getStartOffset(region);
-							int length = region.getTextLength();
-							prefixname = ((IRegionComparible) fCharSequenceSource).regionMatches(offset, length, JSP12TLDNames.PREFIX);
-						}
-						else {
-							// old fashioned way
-							prefixname = (getText(taglibFlatNode.getStartOffset(region), region.getTextLength()).equals(JSP12TLDNames.PREFIX));
-						}
-					}
-					else if (prefixname && region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						prefix = getText(taglibFlatNode.getStartOffset(region), region.getTextLength());
-					}
-				}
-			}
-			catch (StringIndexOutOfBoundsException sioobExc) {
-				// nothing to be done
-				prefix = null;
-			}
-			prefix = StringUtils.strip(prefix);
-			if (prefix != null && prefix.length() > 0) {
-				enableForTaglib(prefix, taglibFlatNode);
-			}
-		}
-
-		public void resetNodes() {
-			Iterator tagmarkers = ((JSPTokenizer) getTokenizer()).getNestablePrefixes().iterator();
-			while (tagmarkers.hasNext()) {
-				if (!((TagMarker) tagmarkers.next()).isGlobal())
-					tagmarkers.remove();
-			}
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see com.ibm.sse.model.parser.StructuredDocumentRegionHandlerExtension#setStructuredDocument(com.ibm.sse.model.text.IStructuredDocument)
-		 */
-		public void setStructuredDocument(IStructuredDocument newDocument) {
-			resetNodes();
-			getStructuredDocumentRegionHandlers().remove(this);
-			if (newDocument != null && newDocument.getParser() instanceof StructuredDocumentRegionParser) {
-				((StructuredDocumentRegionParser) newDocument.getParser()).addStructuredDocumentRegionHandler(this);
-			}
-		}
-	}
-
-	/**
-	 * JSPSourceParser constructor comment.
-	 */
-	public JSPSourceParser() {
-		super();
-	}
-
-	public void addNestablePrefix(TagMarker marker) {
-		((JSPTokenizer) getTokenizer()).addNestablePrefix(marker);
-	}
-
-	public List getNestablePrefixes() {
-		return ((JSPTokenizer) getTokenizer()).getNestablePrefixes();
-	}
-
-	protected BlockTokenizer getTokenizer() {
-		if (fTokenizer == null) {
-			fTokenizer = new JSPTokenizer();
-			getStructuredDocumentRegionHandlers().add(new NestablePrefixHandler());
-		}
-		return fTokenizer;
-	}
-
-	/**
-	 * @see com.ibm.sed.parser.RegionParser#newInstance()
-	 */
-	public RegionParser newInstance() {
-		JSPSourceParser newInstance = new JSPSourceParser();
-		newInstance.setTokenizer(getTokenizer().newInstance());
-		return newInstance;
-	}
-
-	protected IStructuredDocumentRegion parseNodes() {
-		// regions are initially reported as complete offsets within the
-		// scanned input
-		// they are adjusted here to be indexes from the currentNode's start
-		// offset
-		IStructuredDocumentRegion headNode = null;
-		IStructuredDocumentRegion lastNode = null;
-		ITextRegion region = null;
-		// DMW: 2/12/03. Made current node local variable, since
-		// we changed class to not require state
-		IStructuredDocumentRegion currentNode = null;
-		String type = null;
-
-		while ((region = getNextRegion()) != null) {
-			type = region.getType();
-			// these types (might) demand a IStructuredDocumentRegion for each
-			// of them
-			if (type == XMLRegionContext.BLOCK_TEXT) {
-				if (currentNode != null && currentNode.getLastRegion().getType() == XMLRegionContext.BLOCK_TEXT) {
-					// multiple block texts indicated embedded containers; no
-					// new IStructuredDocumentRegion
-					currentNode.addRegion(region);
-					currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-					region.adjustStart(-currentNode.getStart());
-					// DW, 4/16/2003 token regions no longer have parents
-					//region.setParent(currentNode);
-					if (region instanceof ITextRegionContainer) {
-						((ITextRegionContainer) region).setParent(currentNode);
-					}
-				}
-				else {
-					// not continuing a IStructuredDocumentRegion
-					if (currentNode != null) {
-						// ensure that any existing node is at least
-						// terminated
-						if (!currentNode.isEnded()) {
-							currentNode.setLength(region.getStart() - currentNode.getStart());
-							// fCurrentNode.setTextLength(region.getStart() -
-							// fCurrentNode.getStart());
-						}
-						lastNode = currentNode;
-					}
-					fireNodeParsed(currentNode);
-					currentNode = createStructuredDocumentRegion(type);
-					if (lastNode != null) {
-						lastNode.setNext(currentNode);
-					}
-					currentNode.setPrevious(lastNode);
-					currentNode.setStart(region.getStart());
-					currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-					currentNode.setEnded(true);
-					region.adjustStart(-currentNode.getStart());
-					currentNode.addRegion(region);
-					// DW, 4/16/2003 token regions no longer have parents
-					//region.setParent(currentNode);
-					if (region instanceof ITextRegionContainer) {
-						((ITextRegionContainer) region).setParent(currentNode);
-					}
-
-				}
-			}
-			// the following contexts OPEN new StructuredDocumentRegions
-			else if ((currentNode != null && currentNode.isEnded()) || (type == XMLRegionContext.XML_CONTENT) || (type == XMLRegionContext.XML_CHAR_REFERENCE) || (type == XMLRegionContext.XML_ENTITY_REFERENCE)
-						|| (type == XMLRegionContext.XML_PI_OPEN) || (type == XMLRegionContext.XML_TAG_OPEN) || (type == XMLRegionContext.XML_END_TAG_OPEN) || (type == XMLRegionContext.XML_COMMENT_OPEN) || (type == XMLRegionContext.XML_CDATA_OPEN)
-						|| (type == XMLRegionContext.XML_DECLARATION_OPEN) || (type == DOMJSPRegionContexts.JSP_COMMENT_OPEN) || (type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN) || (type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN)
-						|| (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) || (type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) || (type == DOMJSPRegionContexts.JSP_CLOSE) || type == DOMJSPRegionContexts.JSP_EL_OPEN) {
-				if (currentNode != null) {
-					// ensure that any existing node is at least terminated
-					if (!currentNode.isEnded()) {
-						currentNode.setLength(region.getStart() - currentNode.getStart());
-						// fCurrentNode.setTextLength(region.getStart() -
-						// fCurrentNode.getStart());
-					}
-					lastNode = currentNode;
-				}
-				fireNodeParsed(currentNode);
-				currentNode = createStructuredDocumentRegion(type);
-				if (lastNode != null) {
-					lastNode.setNext(currentNode);
-				}
-				currentNode.setPrevious(lastNode);
-				currentNode.setStart(region.getStart());
-				currentNode.addRegion(region);
-				currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-				region.adjustStart(-currentNode.getStart());
-				// DW, 4/16/2003 token regions no longer have parents
-				//region.setParent(currentNode);
-				if (region instanceof ITextRegionContainer) {
-					((ITextRegionContainer) region).setParent(currentNode);
-				}
-
-			}
-			// the following contexts NEITHER open nor close
-			// StructuredDocumentRegions; just add to them
-			else if ((type == XMLRegionContext.XML_TAG_NAME) || (type == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) || (type == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) || (type == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-						|| (type == XMLRegionContext.XML_COMMENT_TEXT) || (type == XMLRegionContext.XML_PI_CONTENT) || (type == XMLRegionContext.XML_DOCTYPE_INTERNAL_SUBSET) || (type == DOMJSPRegionContexts.JSP_COMMENT_TEXT)
-						|| (type == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME) || (type == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) || type == DOMJSPRegionContexts.JSP_EL_CONTENT) {
-				currentNode.addRegion(region);
-				currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-				region.adjustStart(-currentNode.getStart());
-				// DW, 4/16/2003 token regions no longer have parents
-				//region.setParent(currentNode);
-				if (region instanceof ITextRegionContainer) {
-					((ITextRegionContainer) region).setParent(currentNode);
-				}
-			}
-			// the following contexts close off StructuredDocumentRegions
-			// cleanly
-			else if ((type == XMLRegionContext.XML_PI_CLOSE) || (type == XMLRegionContext.XML_TAG_CLOSE) || (type == XMLRegionContext.XML_EMPTY_TAG_CLOSE) || (type == XMLRegionContext.XML_COMMENT_CLOSE) || (type == XMLRegionContext.XML_CDATA_CLOSE)
-						|| (type == DOMJSPRegionContexts.JSP_CLOSE) || (type == DOMJSPRegionContexts.JSP_COMMENT_CLOSE) || (type == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE) || (type == XMLRegionContext.XML_DECLARATION_CLOSE)
-						|| type == DOMJSPRegionContexts.JSP_EL_CLOSE) {
-				currentNode.setEnded(true);
-				currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-				currentNode.addRegion(region);
-				region.adjustStart(-currentNode.getStart());
-				// DW, 4/16/2003 token regions no longer have parents
-				//region.setParent(currentNode);
-				if (region instanceof ITextRegionContainer) {
-					((ITextRegionContainer) region).setParent(currentNode);
-				}
-			}
-			// this is extremely rare, but valid
-			else if (type == XMLRegionContext.WHITE_SPACE) {
-				ITextRegion lastRegion = currentNode.getLastRegion();
-				// pack the embedded container with this region
-				if (lastRegion instanceof ITextRegionContainer) {
-					ITextRegionContainer container = (ITextRegionContainer) lastRegion;
-					container.getRegions().add(region);
-					// DW, 4/16/2003 container regions have parent. Probably a
-					// better place to set,
-					// but for now, will (re)set each time through
-					container.setParent(currentNode);
-					// DW, 4/16/2003 token regions no longer have parents
-					//region.setParent(container);
-					region.adjustStart(container.getLength() - region.getStart());
-				}
-				currentNode.getLastRegion().adjustLengthWith(region.getLength());
-				currentNode.adjustLengthWith(region.getLength());
-			}
-			else if (type == XMLRegionContext.UNDEFINED && currentNode != null) {
-				// skip on a very-first region situation as the default
-				// behavior is good enough
-				// combine with previous if also undefined
-				if (currentNode.getLastRegion() != null && currentNode.getLastRegion().getType() == XMLRegionContext.UNDEFINED) {
-					currentNode.getLastRegion().adjustLengthWith(region.getLength());
-					currentNode.adjustLengthWith(region.getLength());
-				}
-				// previous wasn't undefined
-				else {
-					currentNode.addRegion(region);
-					currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-					region.adjustStart(-currentNode.getStart());
-				}
-				if (region instanceof ITextRegionContainer) {
-					((ITextRegionContainer) region).setParent(currentNode);
-				}
-			}
-			else {
-				// if an unknown type is the first region in the document,
-				// ensure that a node exists
-				if (currentNode == null) {
-					currentNode = createStructuredDocumentRegion(type);
-					currentNode.setStart(region.getStart());
-				}
-				currentNode.addRegion(region);
-				currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-				region.adjustStart(-currentNode.getStart());
-				// DW, 4/16/2003 token regions no longer have parents
-				//region.setParent(currentNode);
-				if (region instanceof ITextRegionContainer) {
-					((ITextRegionContainer) region).setParent(currentNode);
-				}
-
-				if (Debug.debugTokenizer)
-					System.out.println(getClass().getName() + " found region of not specifically handled type " + region.getType() + " @ " + region.getStart() + "[" + region.getLength() + "]");//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-
-			}
-
-			// these regions also get their own node, so close them cleanly
-			// NOTE: these regions have new StructuredDocumentRegions created
-			// for them above; it may
-			// be more readable if that is handled here as well, but the
-			// current layout
-			// ensures that they open StructuredDocumentRegions the same way
-			if ((type == XMLRegionContext.XML_CONTENT) || (type == XMLRegionContext.XML_CHAR_REFERENCE) || (type == XMLRegionContext.XML_ENTITY_REFERENCE) || (type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN)
-						|| (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) || (type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) || (type == DOMJSPRegionContexts.JSP_CONTENT) || (type == DOMJSPRegionContexts.JSP_CLOSE)) {
-				currentNode.setEnded(true);
-			}
-			if (headNode == null && currentNode != null) {
-				headNode = currentNode;
-			}
-		}
-		if (currentNode != null) {
-			fireNodeParsed(currentNode);
-			currentNode.setPrevious(lastNode);
-		}
-		primReset();
-		return headNode;
-	}
-
-	public void removeNestablePrefix(String tagName) {
-		((JSPTokenizer) getTokenizer()).removeNestablePrefix(tagName);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPParserRegionFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPParserRegionFactory.java
deleted file mode 100644
index 8958242..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPParserRegionFactory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.parser.internal;
-
-import org.eclipse.jst.jsp.core.internal.parser.JSPCodeRegion;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.internal.parser.regions.XMLParserRegionFactory;
-
-/**
- * 
- * This region factory is very specific to the parser output, 
- * and the specific implementation classes for various regions.
- */
-public class JSPParserRegionFactory extends XMLParserRegionFactory {
-	public JSPParserRegionFactory() {
-		super();
-	}
-
-	public ITextRegion createToken(String context, int start, int textLength, int length, String lang, String surroundingTag) {
-		ITextRegion newRegion = null;
-		if (context == DOMJSPRegionContexts.JSP_CONTENT) {
-			newRegion = new JSPCodeRegion(context, start, textLength, length);
-		}
-		else
-			newRegion = super.createToken(context, start, textLength, length, lang, surroundingTag);
-		return newRegion;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPStructuredRegionFactory.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPStructuredRegionFactory.java
deleted file mode 100644
index 8e0770e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPStructuredRegionFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.parser.internal;
-
-import org.eclipse.jst.jsp.core.internal.parser.JSPDirectiveStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.internal.parser.XMLStructuredRegionFactory;
-
-/**
- * A simple class to generate instances of StructuredRegions. 
- */
-public class JSPStructuredRegionFactory extends XMLStructuredRegionFactory {
-
-	public static IStructuredDocumentRegion createRegion(int type) {
-		IStructuredDocumentRegion instance = null;
-		switch (type) {
-			case JSP_DIRECTIVE :
-				instance = new JSPDirectiveStructuredDocumentRegion();
-				break;
-			default :
-				instance = XMLStructuredRegionFactory.createRegion(type);
-		}
-		return instance;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPTokenizer.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPTokenizer.java
deleted file mode 100644
index f48d31e..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/parser/internal/JSPTokenizer.java
+++ /dev/null
@@ -1,3599 +0,0 @@
-/* The following code was generated by JFlex 1.2.2 on 1/27/05 4:49 PM */
-
-/*******************************************************************************
- * Copyright (c) 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
- *******************************************************************************/
-/*nlsXXX*/
-package org.eclipse.jst.jsp.core.internal.parser.internal;
-
-import java.io.CharArrayReader;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.parser.BlockMarker;
-import org.eclipse.wst.sse.core.parser.BlockTokenizer;
-import org.eclipse.wst.sse.core.parser.TagMarker;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.parser.ContextRegionContainer;
-import org.eclipse.wst.xml.core.internal.parser.IntStack;
-
-
-/**
- * This class is a scanner generated by 
- * <a href="http://www.informatik.tu-muenchen.de/~kleing/jflex/">JFlex</a> 1.2.2
- * on 1/27/05 4:49 PM from the specification file
- * <tt>file:/D:/eclipse.wtp/workspace/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/JSPTokenizer.jflex</tt>
- */
-public class JSPTokenizer implements BlockTokenizer, DOMJSPRegionContexts {
-
-  /** this character denotes the end of file */
-  final public static int YYEOF = -1;
-
-  /** lexical states */
-  final public static int ST_JSP_VBL_DQUOTES = 52;
-  final public static int ST_JSP_VBL_SQUOTES = 51;
-  final public static int ST_JSP_VBL_SQUOTES_END = 53;
-  final public static int ST_XML_COMMENT_END = 4;
-  final public static int ST_JSP_DIRECTIVE_ATTRIBUTE_VALUE = 21;
-  final public static int ST_JSP_EL_SQUOTES_END = 46;
-  final public static int ST_JSP_EL_DQUOTES = 45;
-  final public static int ST_JSP_EL = 43;
-  final public static int ST_BLOCK_TAG_SCAN = 36;
-  final public static int ST_JSP_EL_SQUOTES = 44;
-  final public static int ST_DHTML_ATTRIBUTE_VALUE = 14;
-  final public static int ST_XML_PI_ATTRIBUTE_NAME = 8;
-  final public static int ST_DHTML_TAG_CLOSE = 15;
-  final public static int ST_XML_ATTRIBUTE_VALUE_DQUOTED = 41;
-  final public static int ST_DHTML_EQUALS = 13;
-  final public static int ST_XML_PI_ATTRIBUTE_VALUE = 10;
-  final public static int ST_XML_ATTRIBUTE_VALUE = 25;
-  final public static int ST_JSP_VBL = 50;
-  final public static int ST_JSP_SQUOTED_VBL = 56;
-  final public static int ST_XML_ATTRIBUTE_VALUE_SQUOTED = 40;
-  final public static int ST_XML_ATTRIBUTE_NAME = 23;
-  final public static int ST_XML_EQUALS = 24;
-  final public static int YYINITIAL = 0;
-  final public static int ST_JSP_DIRECTIVE_ATTRIBUTE_NAME = 19;
-  final public static int ST_JSP_CONTENT = 16;
-  final public static int ST_XML_DOCTYPE_ID_SYSTEM = 31;
-  final public static int ST_XML_ELEMENT_DECLARATION = 32;
-  final public static int ST_XML_DECLARATION_CLOSE = 27;
-  final public static int ST_JSP_DIRECTIVE_EQUALS = 20;
-  final public static int ST_JSP_VBL_DQUOTES_END = 54;
-  final public static int ST_JSP_DQUOTED_EL = 48;
-  final public static int ST_XML_DOCTYPE_DECLARATION = 28;
-  final public static int ST_CDATA_END = 2;
-  final public static int ST_PI_WS = 6;
-  final public static int ST_CDATA_TEXT = 1;
-  final public static int ST_JSP_DIRECTIVE_NAME_WHITESPACE = 18;
-  final public static int ST_XML_ELEMENT_DECLARATION_CONTENT = 33;
-  final public static int ST_XML_ATTLIST_DECLARATION = 34;
-  final public static int ST_JSP_EL_DQUOTES_END = 47;
-  final public static int ST_JSP_SQUOTED_EL = 49;
-  final public static int ST_JSP_COMMENT_END = 39;
-  final public static int ST_XML_PI_EQUALS = 9;
-  final public static int ST_XML_ATTLIST_DECLARATION_CONTENT = 35;
-  final public static int ST_XML_DOCTYPE_ID_PUBLIC = 30;
-  final public static int ST_JSP_DQUOTED_VBL = 55;
-  final public static int ST_DHTML_ATTRIBUTE_NAME = 12;
-  final public static int ST_ABORT_EMBEDDED = 42;
-  final public static int ST_XML_DOCTYPE_EXTERNAL_ID = 29;
-  final public static int ST_JSP_COMMENT = 38;
-  final public static int ST_PI_CONTENT = 7;
-  final public static int ST_BLOCK_TAG_INTERNAL_SCAN = 37;
-  final public static int ST_PI = 5;
-  final public static int ST_XML_DECLARATION = 26;
-  final public static int ST_JSP_DIRECTIVE_NAME = 17;
-  final public static int ST_XML_TAG_NAME = 22;
-  final public static int ST_XML_PI_TAG_CLOSE = 11;
-  final public static int ST_XML_COMMENT = 3;
-
-  /** 
-   * Translates characters to character classes
-   */
-  final private static String yycmap_packed = 
-    "\11\0\1\5\1\26\2\0\1\17\22\0\1\17\1\25\1\12\1\63"+
-    "\1\15\1\22\1\13\1\14\1\24\1\24\1\24\1\24\1\24\1\7"+
-    "\1\6\1\3\12\20\1\11\1\70\1\1\1\50\1\2\1\4\1\21"+
-    "\1\37\1\71\1\35\1\36\1\54\1\66\1\60\1\60\1\61\1\60"+
-    "\1\60\1\32\1\31\1\62\1\51\1\53\1\60\1\65\1\64\1\40"+
-    "\1\67\2\60\1\27\1\52\1\60\1\34\1\102\1\23\1\0\1\10"+
-    "\1\0\1\56\1\101\1\72\1\57\1\42\1\66\1\73\1\60\1\45"+
-    "\1\76\1\60\1\33\1\31\1\47\1\46\1\77\1\60\1\43\1\44"+
-    "\1\55\1\100\1\41\1\60\1\30\1\52\1\60\1\16\1\0\1\103"+
-    "\71\0\1\75\10\0\27\74\1\0\37\74\1\0\72\74\2\0\13\74"+
-    "\2\0\10\74\1\0\65\74\1\0\104\74\11\0\44\74\3\0\2\74"+
-    "\4\0\36\74\70\0\131\74\22\0\7\74\16\0\2\75\56\0\106\75"+
-    "\32\0\2\75\44\0\1\74\1\75\3\74\1\0\1\74\1\0\24\74"+
-    "\1\0\54\74\1\0\7\74\3\0\1\74\1\0\1\74\1\0\1\74"+
-    "\1\0\1\74\1\0\22\74\15\0\14\74\1\0\102\74\1\0\14\74"+
-    "\1\0\44\74\1\0\4\75\11\0\65\74\2\0\2\74\2\0\2\74"+
-    "\3\0\34\74\2\0\10\74\2\0\2\74\67\0\46\74\2\0\1\74"+
-    "\7\0\46\74\12\0\21\75\1\0\27\75\1\0\3\75\1\0\1\75"+
-    "\1\0\2\75\1\0\1\75\13\0\33\74\5\0\3\74\56\0\32\74"+
-    "\5\0\1\75\12\74\10\75\15\0\12\75\6\0\1\75\107\74\2\0"+
-    "\5\74\1\0\17\74\1\0\4\74\1\0\1\74\17\75\2\74\2\75"+
-    "\1\0\4\75\2\0\12\75\u0207\0\3\75\1\0\65\74\2\0\1\75"+
-    "\1\74\20\75\3\0\4\75\3\0\12\74\2\75\2\0\12\75\21\0"+
-    "\3\75\1\0\10\74\2\0\2\74\2\0\26\74\1\0\7\74\1\0"+
-    "\1\74\3\0\4\74\2\0\1\75\1\0\7\75\2\0\2\75\2\0"+
-    "\3\75\11\0\1\75\4\0\2\74\1\0\3\74\2\75\2\0\12\75"+
-    "\2\74\20\0\1\75\2\0\6\74\4\0\2\74\2\0\26\74\1\0"+
-    "\7\74\1\0\2\74\1\0\2\74\1\0\2\74\2\0\1\75\1\0"+
-    "\5\75\4\0\2\75\2\0\3\75\13\0\4\74\1\0\1\74\7\0"+
-    "\12\75\2\75\3\74\14\0\3\75\1\0\7\74\1\0\1\74\1\0"+
-    "\3\74\1\0\26\74\1\0\7\74\1\0\2\74\1\0\5\74\2\0"+
-    "\1\75\1\74\10\75\1\0\3\75\1\0\3\75\22\0\1\74\5\0"+
-    "\12\75\21\0\3\75\1\0\10\74\2\0\2\74\2\0\26\74\1\0"+
-    "\7\74\1\0\2\74\2\0\4\74\2\0\1\75\1\74\6\75\3\0"+
-    "\2\75\2\0\3\75\10\0\2\75\4\0\2\74\1\0\3\74\4\0"+
-    "\12\75\22\0\2\75\1\0\6\74\3\0\3\74\1\0\4\74\3\0"+
-    "\2\74\1\0\1\74\1\0\2\74\3\0\2\74\3\0\3\74\3\0"+
-    "\10\74\1\0\3\74\4\0\5\75\3\0\3\75\1\0\4\75\11\0"+
-    "\1\75\17\0\11\75\21\0\3\75\1\0\10\74\1\0\3\74\1\0"+
-    "\27\74\1\0\12\74\1\0\5\74\4\0\7\75\1\0\3\75\1\0"+
-    "\4\75\7\0\2\75\11\0\2\74\4\0\12\75\22\0\2\75\1\0"+
-    "\10\74\1\0\3\74\1\0\27\74\1\0\12\74\1\0\5\74\4\0"+
-    "\7\75\1\0\3\75\1\0\4\75\7\0\2\75\7\0\1\74\1\0"+
-    "\2\74\4\0\12\75\22\0\2\75\1\0\10\74\1\0\3\74\1\0"+
-    "\27\74\1\0\20\74\4\0\6\75\2\0\3\75\1\0\4\75\11\0"+
-    "\1\75\10\0\2\74\4\0\12\75\221\0\56\74\1\0\1\74\1\75"+
-    "\2\74\7\75\5\0\6\74\1\75\10\75\1\0\12\75\47\0\2\74"+
-    "\1\0\1\74\2\0\2\74\1\0\1\74\2\0\1\74\6\0\4\74"+
-    "\1\0\7\74\1\0\3\74\1\0\1\74\1\0\1\74\2\0\2\74"+
-    "\1\0\2\74\1\0\1\74\1\75\2\74\6\75\1\0\2\75\1\74"+
-    "\2\0\5\74\1\0\1\75\1\0\6\75\2\0\12\75\76\0\2\75"+
-    "\6\0\12\75\13\0\1\75\1\0\1\75\1\0\1\75\4\0\2\75"+
-    "\10\74\1\0\41\74\7\0\24\75\1\0\6\75\4\0\6\75\1\0"+
-    "\1\75\1\0\25\75\3\0\7\75\1\0\1\75\346\0\46\74\12\0"+
-    "\47\74\11\0\1\74\1\0\2\74\1\0\3\74\1\0\1\74\1\0"+
-    "\2\74\1\0\5\74\51\0\1\74\1\0\1\74\1\0\1\74\13\0"+
-    "\1\74\1\0\1\74\1\0\1\74\3\0\2\74\3\0\1\74\5\0"+
-    "\3\74\1\0\1\74\1\0\1\74\1\0\1\74\1\0\1\74\3\0"+
-    "\2\74\3\0\2\74\1\0\1\74\50\0\1\74\11\0\1\74\2\0"+
-    "\1\74\2\0\2\74\7\0\2\74\1\0\1\74\1\0\7\74\50\0"+
-    "\1\74\4\0\1\74\10\0\1\74\u0c06\0\234\74\4\0\132\74\6\0"+
-    "\26\74\2\0\6\74\2\0\46\74\2\0\6\74\2\0\10\74\1\0"+
-    "\1\74\1\0\1\74\1\0\1\74\1\0\37\74\2\0\65\74\1\0"+
-    "\7\74\1\0\1\74\3\0\3\74\1\0\7\74\3\0\4\74\2\0"+
-    "\6\74\4\0\15\74\5\0\3\74\1\0\7\74\323\0\15\75\4\0"+
-    "\1\75\104\0\1\74\3\0\2\74\2\0\1\74\121\0\3\74\u0e82\0"+
-    "\1\75\1\0\1\74\31\0\11\74\6\75\1\0\5\75\13\0\124\74"+
-    "\4\0\2\75\2\0\2\75\2\0\132\74\1\0\3\75\6\0\50\74"+
-    "\u1cd3\0\u51a6\74\u0c5a\0\u2ba4\74\134\0\u0800\0\u1ffe\0\2\0";
-
-  /** 
-   * Translates characters to character classes
-   */
-  final private static char [] yycmap = yy_unpack_cmap(yycmap_packed);
-
-  /** 
-   * Translates a state to a row index in the transition table
-   */
-  final private static int yy_rowMap [] = { 
-        0,    68,   136,   204,   272,   340,   408,   476,   544,   612, 
-      680,   748,   816,   884,   952,  1020,  1088,  1156,  1224,  1292, 
-     1360,  1428,  1496,  1564,  1632,  1700,  1768,  1836,  1904,  1972, 
-     2040,  2108,  2176,  2244,  2312,  2380,  2448,  2516,  2584,  2652, 
-     2720,  2788,  2856,  2924,  2992,  3060,  3128,  3196,  3264,  3332, 
-     3400,  3468,  3536,  3604,  3672,  3740,  3808,  3876,  3944,  4012, 
-     4080,  4148,  4216,  4284,  4352,  4284,  4352,  4420,  4284,  4284, 
-     4352,  4488,  4556,  4624,  4692,  4760,  4828,  4896,  4284,  4352, 
-     4964,  5032,  5100,  4284,  5168,  5168,  5236,  5304,  5372,  4964, 
-     4284,  5440,  5508,  4284,  5576,  5644,  5712,  5780,  4284,  4352, 
-     5848,  5916,  5984,  6052,  6120,  6188,  4284,  6256,  6256,  6324, 
-     6392,  6460,  6528,  6596,  4284,  6664,  6732,  6800,  6868,  6936, 
-     7004,  4284,  7072,  7140,  7208,  7276,  7344,  7412,  7480,  7548, 
-     4284,  7616,  7684,  7752,  7820,  7888,  7956,  8024,  8092,  8092, 
-     8160,  8228,  8296,  8364,  8364,  8432,  8500,  8568,  8636,  8636, 
-     8704,  8772,  8840,  8908,  4284,  8976,  8976,  9044,  9112,  9180, 
-     9248,  4284,  4284,  4352,  9316,  4284,  4352,  9384,  9452,  9520, 
-     9588,  4284,  9656,  9724,  9792,  9860,  4284,  9928,  9996, 10064, 
-    10132,  4284,  4284, 10200,  4284, 10268, 10336, 10268, 10404, 10472, 
-    10404,  4284,  4284, 10540, 10608, 10676,  4284, 10744, 10812, 10880, 
-    10948, 11016,  4284,  4284, 11084,  4284, 11152, 11220, 11152, 11288, 
-    11356, 11288,  4284,  4284, 11424, 11492, 11560,  4284, 11628, 11696, 
-    11764,  4284,  4284, 11832, 11900, 11968, 12036, 12104,  4284, 12172, 
-    12240, 12308, 12376, 12444, 12512, 12580, 12648, 12716,  4284, 12784, 
-    12852,  4284,  4284,  5168,  5304,  4284, 12920,  5372, 12988,  5440, 
-     5576,  5644, 13056,  5712,  4284, 13124, 13192,  5780, 13260,  4284, 
-    11900,  4284,  6256,  6324,  4284, 13328,  6392, 13396,  4284, 13464, 
-    13532,  7072, 13600,  7276,  4284, 13668,  7344, 13736, 13804, 13872, 
-    13940, 14008, 14076,  7820,  4284, 14144, 14212,  8092,  8160,  4284, 
-    14280, 14348, 14416, 14484, 14552,  8296,  8092,  8364,  8432,  4284, 
-     8500,  8568,  8364,  8636,  8704,  4284, 14620, 14688, 14756, 14824, 
-    14892, 14960, 15028,  8976,  9044,  4284, 15096, 15164, 15232, 15300, 
-    15368, 15436, 15504, 15572, 15640, 15708,  4284,  4284,  4284, 15776, 
-     4284,  4284, 15844, 15912, 15980, 16048, 10268,  4284, 16116, 16184, 
-    10404,  4284, 16252, 16320, 16388, 16456, 16524, 16592, 16660, 16728, 
-    16796, 10948, 11152,  4284, 16864, 16932, 11288,  4284, 17000, 17068, 
-    17136, 17204, 17272, 17340, 17408, 17476, 17544,  4284,  4284,  4284, 
-    17612, 17680, 17748, 17816, 17884,  4284, 17952, 18020,  4284,  4284, 
-     4284,  4284,  4284,  4692, 18088, 18156, 18224, 18292, 18360, 18428, 
-    18360, 18496, 18564, 18496, 18632, 18700, 18768, 18836, 18904, 18972, 
-    19040, 19040, 19108, 19176, 19176,  8840,  8840, 19244, 19312, 19380, 
-    19380,  9180,  9180, 19448, 19516, 19584, 15980, 10064, 10064, 19652, 
-    10268, 10268, 19720, 10404, 10404, 19788, 10540, 10540, 16524, 19856, 
-    10744, 10744, 16728, 19924, 10948, 10948, 11152, 11152, 19992, 11288, 
-    11288, 20060, 11424, 11424, 17272, 20128, 11628, 11628, 17476, 20196, 
-     4284,  4284, 20264, 20332,  4284, 20400, 20468, 20536,  7072,  4284, 
-     4284, 20604, 20672, 20740, 20808, 20876, 14484, 14824, 20944, 15300, 
-    21012,  4284,  4284, 21080, 21148, 21216,  4284, 21284, 21352, 21420, 
-    21488,  4284, 21556, 21624, 21692, 21760, 21828, 21896, 21964, 22032, 
-    22100, 22168, 22236, 22304, 22372, 22440, 22508, 22576, 22644, 22712, 
-    22780, 22848, 22916,  4692, 22984, 23052, 23120, 23188, 23256,  4284, 
-     4284, 23324, 23392, 23460, 23528, 16524, 16728, 23596, 23664, 17272, 
-    17476, 23732, 23800, 23868,  4284,  4284,  4284, 23936, 24004, 24072, 
-    24140, 24208, 24276, 24344,  6800, 24412, 24480, 24548, 24616, 24684, 
-    24752, 24820,  4284, 24888,  8840,  9180, 10268, 10404, 11152, 11288, 
-    24956, 25024, 25092, 25160, 25228, 25296, 25364, 25432, 25500, 25568, 
-    25636, 25704, 25772, 25840, 25908, 25976, 26044, 26112, 26180, 26248, 
-    26316, 26384, 26452, 26520, 26588, 26656, 26724, 26792, 26860, 26928, 
-    26996, 27064, 27132, 27200, 27268, 27336, 27404, 27472, 27540, 27608, 
-     4284, 27676, 27744, 27812, 27880,  6800, 27948, 28016, 28084, 28152, 
-    28220, 28288, 28356, 28424, 28492, 28560, 28628, 28696, 28764, 28832
-  };
-
-  /** 
-   * The packed transition table of the DFA
-   */
-  final private static String yy_packed = 
-    "\1\72\1\73\11\72\1\74\1\72\1\75\4\72\1\76"+
-    "\40\72\1\77\20\72\1\100\1\101\102\100\1\102\1\103"+
-    "\21\102\1\104\2\102\1\105\55\102\1\106\1\107\102\106"+
-    "\1\102\1\103\5\102\1\110\16\102\1\105\56\102\1\103"+
-    "\2\102\1\111\1\112\2\102\2\113\5\102\1\112\6\102"+
-    "\1\112\2\114\3\113\1\102\10\113\1\115\2\113\1\102"+
-    "\10\113\1\115\1\113\1\102\4\113\1\102\4\113\1\102"+
-    "\4\113\3\102\1\103\2\102\1\111\1\116\11\102\1\116"+
-    "\6\102\1\116\55\102\1\117\1\120\2\117\1\121\21\117"+
-    "\1\105\55\117\1\102\1\103\2\102\1\122\1\112\2\102"+
-    "\2\123\5\102\1\112\6\102\1\112\5\123\1\102\13\123"+
-    "\1\102\12\123\1\102\4\123\1\102\4\123\1\102\4\123"+
-    "\3\102\1\103\2\102\1\122\1\112\2\102\2\123\5\102"+
-    "\1\112\6\102\1\112\5\123\1\102\13\123\1\124\12\123"+
-    "\1\102\4\123\1\102\4\123\1\102\4\123\2\102\1\125"+
-    "\1\103\1\102\1\126\1\127\1\112\4\125\1\130\1\125"+
-    "\1\131\2\125\1\112\6\125\1\112\55\125\1\102\1\103"+
-    "\2\102\1\132\21\102\1\105\56\102\1\103\1\133\1\134"+
-    "\1\102\1\112\2\102\2\135\5\102\1\112\6\102\1\112"+
-    "\5\135\1\102\13\135\1\102\12\135\1\102\4\135\1\102"+
-    "\4\135\1\102\4\135\3\102\1\103\1\133\1\134\1\102"+
-    "\1\112\2\102\2\135\5\102\1\112\6\102\1\112\5\135"+
-    "\1\102\13\135\1\136\12\135\1\102\4\135\1\102\4\135"+
-    "\1\102\4\135\2\102\1\137\1\103\1\133\1\140\1\137"+
-    "\1\112\4\137\1\141\1\137\1\142\2\137\1\112\6\137"+
-    "\1\112\55\137\1\102\1\103\3\102\1\112\11\102\1\112"+
-    "\6\102\1\112\55\102\1\143\1\144\20\143\1\145\3\143"+
-    "\1\105\55\143\1\102\1\146\3\102\1\112\2\102\2\147"+
-    "\5\102\1\112\2\102\1\150\3\102\1\112\5\147\1\102"+
-    "\13\147\1\102\12\147\1\102\4\147\1\102\4\147\1\102"+
-    "\4\147\3\102\1\146\3\102\1\151\11\102\1\151\2\102"+
-    "\1\150\3\102\1\151\56\102\1\146\3\102\1\112\2\102"+
-    "\2\152\5\102\1\112\2\102\1\150\3\102\1\112\5\152"+
-    "\1\102\13\152\1\102\12\152\1\102\4\152\1\102\4\152"+
-    "\1\102\4\152\3\102\1\146\3\102\1\112\2\102\2\152"+
-    "\5\102\1\112\2\102\1\150\3\102\1\112\5\152\1\102"+
-    "\13\152\1\153\12\152\1\102\4\152\1\102\4\152\1\102"+
-    "\4\152\2\102\1\154\1\146\1\102\1\155\1\154\1\112"+
-    "\4\154\1\156\1\154\1\157\2\154\1\112\2\154\1\160"+
-    "\3\154\1\112\55\154\1\161\1\162\1\163\1\164\4\161"+
-    "\2\165\15\161\5\166\1\161\13\166\1\161\12\166\1\161"+
-    "\4\166\1\161\4\166\1\161\1\167\3\166\2\161\1\102"+
-    "\1\170\1\163\1\164\1\102\1\112\2\102\2\171\5\102"+
-    "\1\112\6\102\1\112\5\171\1\102\13\171\1\102\12\171"+
-    "\1\102\4\171\1\102\4\171\1\102\4\171\3\102\1\170"+
-    "\1\163\1\164\1\102\1\112\2\102\2\171\5\102\1\112"+
-    "\6\102\1\112\5\171\1\102\13\171\1\172\12\171\1\102"+
-    "\4\171\1\102\4\171\1\102\4\171\2\102\1\173\1\174"+
-    "\1\163\1\175\1\173\1\112\4\173\1\176\1\173\1\177"+
-    "\1\200\1\173\1\112\6\173\1\112\34\173\1\201\20\173"+
-    "\1\102\1\202\1\203\2\102\1\112\11\102\1\112\6\102"+
-    "\1\112\7\102\1\204\1\205\2\102\1\206\11\102\1\206"+
-    "\1\102\1\205\1\204\25\102\1\103\1\203\2\102\1\112"+
-    "\11\102\1\112\6\102\1\112\5\102\1\207\50\102\1\103"+
-    "\1\203\2\102\1\112\2\102\2\210\5\102\1\112\6\102"+
-    "\1\112\5\210\1\207\13\210\1\102\12\210\1\102\4\210"+
-    "\1\102\4\210\1\102\4\210\3\102\1\103\1\203\2\102"+
-    "\1\112\11\102\1\112\6\102\1\112\5\102\1\207\7\102"+
-    "\1\211\6\102\1\212\10\102\1\211\12\102\1\212\4\102"+
-    "\1\213\1\103\1\203\1\214\1\213\1\112\4\213\1\215"+
-    "\1\213\1\216\2\213\1\112\6\213\1\112\5\213\1\217"+
-    "\47\213\1\220\1\103\1\203\1\221\1\220\1\112\4\220"+
-    "\1\222\1\220\1\223\2\220\1\112\6\220\1\112\5\220"+
-    "\1\224\47\220\1\225\1\103\1\203\1\226\1\225\1\112"+
-    "\4\225\1\227\1\225\1\230\2\225\1\112\6\225\1\112"+
-    "\55\225\1\231\1\232\1\233\101\231\1\234\1\103\1\203"+
-    "\1\235\1\234\1\112\4\234\1\236\1\234\1\237\2\234"+
-    "\1\112\6\234\1\112\55\234\1\240\1\241\1\242\101\240"+
-    "\1\243\1\244\102\243\1\102\1\245\24\102\1\105\55\102"+
-    "\1\246\1\247\102\246\1\102\1\103\5\102\1\250\16\102"+
-    "\1\105\55\102\1\251\1\252\3\251\1\253\6\251\1\254"+
-    "\1\255\1\251\1\253\6\251\1\253\34\251\1\256\20\251"+
-    "\1\257\1\252\3\257\1\260\4\257\1\261\2\257\1\262"+
-    "\1\257\1\260\6\257\1\260\34\257\1\263\20\257\1\102"+
-    "\1\103\24\102\1\105\55\102\1\264\1\265\10\264\1\266"+
-    "\1\264\1\267\1\270\65\264\1\271\1\272\1\273\12\272"+
-    "\1\102\11\272\1\274\55\272\1\275\1\276\10\275\1\102"+
-    "\13\275\1\277\55\275\1\102\1\103\12\102\1\300\11\102"+
-    "\1\105\56\102\1\103\10\102\1\301\13\102\1\105\55\102"+
-    "\1\302\1\303\10\302\1\261\67\302\1\304\1\305\1\306"+
-    "\1\307\12\306\1\254\65\306\1\310\1\305\1\311\1\312"+
-    "\10\311\1\313\1\311\1\314\46\311\1\315\17\311\1\316"+
-    "\1\317\1\320\12\317\1\102\11\317\1\321\55\317\1\322"+
-    "\1\323\10\322\1\102\13\322\1\324\55\322\1\102\1\103"+
-    "\12\102\1\325\11\102\1\105\56\102\1\103\10\102\1\326"+
-    "\13\102\1\105\55\102\1\327\1\330\10\327\1\261\67\327"+
-    "\1\331\1\332\1\333\1\334\12\333\1\254\65\333\1\335"+
-    "\1\332\1\72\1\0\11\72\1\0\1\72\1\0\4\72"+
-    "\1\0\40\72\1\0\20\72\3\0\1\336\1\337\15\0"+
-    "\1\340\2\0\1\341\63\0\1\342\2\0\2\343\5\0"+
-    "\1\342\6\0\1\342\5\343\1\0\13\343\1\0\12\343"+
-    "\1\344\4\343\1\0\4\343\1\0\4\343\2\0\1\345"+
-    "\1\0\11\345\1\0\1\345\1\346\1\347\3\345\1\0"+
-    "\61\345\5\0\1\342\2\0\2\350\5\0\1\342\6\0"+
-    "\1\342\5\350\1\0\13\350\1\0\12\350\1\0\4\350"+
-    "\1\0\4\350\1\0\4\350\2\0\1\345\1\0\11\345"+
-    "\1\0\2\345\1\351\3\345\1\0\40\345\1\352\20\345"+
-    "\126\0\1\353\2\0\1\354\101\0\1\355\67\0\1\356"+
-    "\76\0\1\357\106\0\1\112\11\0\1\112\6\0\1\112"+
-    "\63\0\4\113\6\0\1\113\6\0\5\113\1\0\13\113"+
-    "\1\0\12\113\1\0\4\113\1\0\11\113\10\0\4\113"+
-    "\6\0\1\113\6\0\2\113\1\360\2\113\1\0\13\113"+
-    "\1\0\12\113\1\0\4\113\1\0\11\113\10\0\4\113"+
-    "\6\0\1\113\6\0\2\113\1\361\2\113\1\0\13\113"+
-    "\1\0\12\113\1\0\4\113\1\0\11\113\7\0\1\116"+
-    "\11\0\1\116\6\0\1\116\57\0\1\362\103\0\1\363"+
-    "\107\0\4\123\6\0\1\123\6\0\5\123\1\0\13\123"+
-    "\1\0\12\123\1\0\4\123\1\0\11\123\2\0\1\125"+
-    "\2\0\1\364\1\125\1\0\4\125\1\0\1\125\1\0"+
-    "\2\125\1\0\6\125\1\0\56\125\1\0\1\363\1\364"+
-    "\1\125\1\0\4\125\1\0\1\125\1\0\2\125\1\0"+
-    "\6\125\1\0\55\125\1\365\1\0\10\365\1\366\2\365"+
-    "\1\367\45\365\1\367\20\365\1\370\1\0\12\370\1\366"+
-    "\1\371\45\370\1\371\20\370\2\0\1\133\1\372\106\0"+
-    "\4\135\6\0\1\135\6\0\5\135\1\0\13\135\1\0"+
-    "\12\135\1\0\4\135\1\0\11\135\2\0\1\137\2\0"+
-    "\1\373\1\137\1\0\4\137\1\0\1\137\1\0\2\137"+
-    "\1\0\6\137\1\0\56\137\1\0\1\133\1\374\1\137"+
-    "\1\0\4\137\1\0\1\137\1\0\2\137\1\0\6\137"+
-    "\1\0\55\137\1\141\1\0\1\375\1\376\1\141\1\375"+
-    "\4\141\1\377\1\141\1\375\1\u0100\1\141\1\375\6\141"+
-    "\1\375\34\141\1\u0100\20\141\1\142\1\0\1\u0101\1\u0102"+
-    "\1\142\1\u0101\4\142\1\u0101\1\142\1\377\1\u0103\1\142"+
-    "\1\u0101\6\142\1\u0101\34\142\1\u0103\20\142\2\0\1\u0104"+
-    "\123\0\1\353\2\0\1\u0105\64\0\4\147\6\0\1\147"+
-    "\6\0\5\147\1\0\13\147\1\0\12\147\1\0\4\147"+
-    "\1\0\11\147\4\0\1\u0106\106\0\1\151\11\0\1\151"+
-    "\6\0\1\151\63\0\4\152\6\0\1\152\6\0\5\152"+
-    "\1\0\13\152\1\0\12\152\1\0\4\152\1\0\11\152"+
-    "\2\0\1\154\2\0\1\u0107\1\154\1\0\4\154\1\0"+
-    "\1\154\1\0\2\154\1\0\6\154\1\0\55\154\1\u0108"+
-    "\1\0\10\u0108\1\u0109\2\u0108\1\u010a\45\u0108\1\u010a\20\u0108"+
-    "\1\u010b\1\0\12\u010b\1\u0109\1\u010c\45\u010b\1\u010c\20\u010b"+
-    "\1\154\1\0\1\u0106\1\u0107\1\154\1\0\4\154\1\0"+
-    "\1\154\1\0\2\154\1\0\6\154\1\0\55\154\1\161"+
-    "\3\0\23\161\5\0\1\161\13\0\1\161\12\0\1\161"+
-    "\4\0\1\161\4\0\1\161\4\0\2\161\3\0\1\336"+
-    "\16\0\1\353\2\0\1\341\60\0\1\u010d\101\0\1\161"+
-    "\3\0\2\161\4\165\6\161\1\165\6\161\5\166\1\161"+
-    "\13\166\1\161\12\166\1\161\4\166\1\161\4\166\1\165"+
-    "\4\166\2\161\6\0\4\166\6\0\1\166\6\0\5\166"+
-    "\1\0\13\166\1\0\12\166\1\0\4\166\1\0\11\166"+
-    "\10\0\4\166\6\0\1\166\6\0\5\166\1\0\7\166"+
-    "\1\u010e\3\166\1\0\12\166\1\0\4\166\1\0\11\166"+
-    "\5\0\1\336\4\0\2\u010f\10\0\1\353\2\0\1\341"+
-    "\1\0\5\u010f\1\0\13\u010f\1\0\12\u010f\1\0\4\u010f"+
-    "\1\0\4\u010f\1\0\4\u010f\10\0\4\171\6\0\1\171"+
-    "\6\0\5\171\1\0\13\171\1\0\12\171\1\0\4\171"+
-    "\1\0\11\171\2\0\1\173\2\0\1\u0110\1\173\1\0"+
-    "\4\173\1\0\1\173\1\0\2\173\1\0\6\173\1\0"+
-    "\55\173\3\0\1\336\4\0\2\u0111\10\0\1\353\2\0"+
-    "\1\341\1\0\5\u0111\1\0\13\u0111\1\0\12\u0111\1\0"+
-    "\4\u0111\1\0\4\u0111\1\0\4\u0111\2\0\1\173\1\0"+
-    "\1\u010d\1\u0110\1\173\1\0\4\173\1\0\1\173\1\0"+
-    "\2\173\1\0\6\173\1\0\55\173\1\u0112\1\0\10\u0112"+
-    "\1\u0113\2\u0112\1\u0114\45\u0112\1\u0114\20\u0112\1\u0115\1\0"+
-    "\12\u0115\1\u0113\1\u0116\45\u0115\1\u0116\20\u0115\1\173\2\0"+
-    "\1\u0110\1\173\1\0\4\173\1\0\1\173\1\0\1\173"+
-    "\1\u0117\1\0\6\173\1\0\56\173\2\0\1\u0110\1\173"+
-    "\1\0\4\173\1\0\1\173\1\0\1\173\1\u0118\1\0"+
-    "\6\173\1\0\55\173\3\0\1\336\16\0\1\353\2\0"+
-    "\1\u0105\124\0\1\u0119\2\0\1\u0119\72\0\1\u011a\14\0"+
-    "\1\u011a\60\0\2\u011b\50\0\23\u011c\1\u011d\60\u011c\6\0"+
-    "\4\210\6\0\1\210\6\0\5\210\1\0\13\210\1\0"+
-    "\12\210\1\0\4\210\1\0\11\210\54\0\1\u011e\120\0"+
-    "\1\u011f\10\0\1\u011f\3\0\1\213\2\0\1\u0120\1\213"+
-    "\1\0\4\213\1\0\1\213\1\0\2\213\1\0\6\213"+
-    "\1\0\55\213\1\u0121\1\0\10\u0121\1\u0122\2\u0121\1\u0123"+
-    "\45\u0121\1\u0123\20\u0121\1\u0124\1\0\1\u0124\2\u0125\1\u0124"+
-    "\4\u0125\2\u0124\1\u0126\1\u0127\1\u0124\4\u0125\1\u0124\10\u0125"+
-    "\1\u0124\26\u0125\1\u0127\10\u0125\2\u0124\4\u0125\2\u0124\1\217"+
-    "\2\u011c\1\u0128\1\217\1\u011c\4\217\1\u011c\1\217\1\u011c"+
-    "\2\217\1\u011c\3\217\1\u0129\2\217\1\u011c\55\217\1\220"+
-    "\2\0\1\u012a\1\220\1\0\4\220\1\0\1\220\1\0"+
-    "\2\220\1\0\6\220\1\0\55\220\12\u012b\1\u012c\71\u012b"+
-    "\14\u012d\1\u012c\67\u012d\1\224\2\u011c\1\u012e\1\224\1\u011c"+
-    "\4\224\1\u011c\1\224\1\u011c\2\224\1\u011c\3\224\1\u012f"+
-    "\2\224\1\u011c\55\224\1\225\2\0\1\u0130\1\225\1\0"+
-    "\4\225\1\0\1\225\1\0\2\225\1\0\6\225\1\0"+
-    "\55\225\1\u0131\1\0\10\u0131\1\u0132\2\u0131\1\u0133\45\u0131"+
-    "\1\u0133\20\u0131\1\u0134\1\0\1\u0134\2\u0135\1\u0134\4\u0135"+
-    "\2\u0134\1\u0136\1\u0137\1\u0134\4\u0135\1\u0134\10\u0135\1\u0134"+
-    "\26\u0135\1\u0137\10\u0135\2\u0134\4\u0135\2\u0134\2\231\1\0"+
-    "\103\231\1\0\17\231\1\u0138\2\231\1\u0139\56\231\1\234"+
-    "\2\0\1\u013a\1\234\1\0\4\234\1\0\1\234\1\0"+
-    "\2\234\1\0\6\234\1\0\55\234\1\u013b\1\0\10\u013b"+
-    "\1\u013c\2\u013b\1\u013d\45\u013b\1\u013d\20\u013b\1\u013e\1\0"+
-    "\1\u013e\2\u013f\1\u013e\4\u013f\2\u013e\1\u0140\1\u0141\1\u013e"+
-    "\4\u013f\1\u013e\10\u013f\1\u013e\26\u013f\1\u0141\10\u013f\2\u013e"+
-    "\4\u013f\2\u013e\2\240\1\0\103\240\1\0\17\240\1\u0142"+
-    "\2\240\1\u0143\56\240\22\0\1\u0144\2\0\1\354\65\0"+
-    "\1\u0145\74\0\1\251\1\0\12\251\1\0\1\u0146\45\251"+
-    "\1\u0146\20\251\3\0\1\u0147\16\0\1\353\2\0\1\354"+
-    "\56\0\1\251\1\0\3\251\1\253\6\251\1\0\1\u0146"+
-    "\1\251\1\253\6\251\1\253\34\251\1\u0146\36\251\1\u0148"+
-    "\103\251\1\u0149\65\251\1\257\1\0\10\257\1\0\2\257"+
-    "\1\u014a\45\257\1\u014a\21\257\1\0\3\257\1\260\4\257"+
-    "\1\0\2\257\1\u014a\1\257\1\260\6\257\1\260\34\257"+
-    "\1\u014a\36\257\1\u014b\103\257\1\u014c\65\257\12\264\1\0"+
-    "\1\264\1\0\1\u014d\65\264\1\0\12\264\1\0\1\264"+
-    "\1\0\1\u014d\4\264\1\u014e\60\264\1\0\12\264\1\0"+
-    "\1\264\1\0\1\264\1\u014f\64\264\1\u0150\14\u0151\1\u0152"+
-    "\103\u0151\1\u0152\5\u0151\1\u0153\2\u0151\1\u0154\56\u0151\12\u0155"+
-    "\1\u0156\103\u0155\1\u0156\7\u0155\1\u0157\2\u0155\1\u0158\56\u0155"+
-    "\12\302\1\0\67\302\1\u0159\1\0\12\302\1\0\7\302"+
-    "\1\u015a\57\302\1\u0159\1\0\12\302\1\u015b\71\302\14\306"+
-    "\1\0\65\306\1\u015c\1\0\14\306\1\0\5\306\1\u015d"+
-    "\57\306\1\u015c\1\0\14\306\1\u015e\67\306\12\311\1\0"+
-    "\1\311\1\0\66\311\1\0\12\311\1\0\1\311\1\0"+
-    "\5\311\1\u015f\60\311\1\0\12\311\1\0\1\311\1\0"+
-    "\1\311\1\u0160\64\311\1\0\14\u0161\1\u0162\103\u0161\1\u0162"+
-    "\5\u0161\1\u0163\2\u0161\1\u0164\56\u0161\12\u0165\1\u0166\103\u0165"+
-    "\1\u0166\7\u0165\1\u0167\2\u0165\1\u0168\56\u0165\12\327\1\0"+
-    "\67\327\1\u0169\1\0\12\327\1\0\7\327\1\u016a\57\327"+
-    "\1\u0169\1\0\12\327\1\u016b\71\327\14\333\1\0\65\333"+
-    "\1\u016c\1\0\14\333\1\0\5\333\1\u016d\57\333\1\u016c"+
-    "\1\0\14\333\1\u016e\67\333\7\0\1\u016f\11\0\1\u0170"+
-    "\3\0\1\u0171\22\0\1\u0172\42\0\1\u0173\24\0\1\u0174"+
-    "\54\0\1\342\2\0\2\u0175\5\0\1\342\6\0\1\342"+
-    "\5\u0175\1\0\13\u0175\1\0\12\u0175\1\0\4\u0175\1\0"+
-    "\4\u0175\1\0\4\u0175\2\0\1\u0176\1\0\3\u0176\1\u0177"+
-    "\4\343\1\u0176\1\0\3\u0176\1\u0177\1\343\1\u0176\1\0"+
-    "\3\u0176\1\u0177\5\343\1\u0176\13\343\1\u0176\12\343\1\u0176"+
-    "\4\343\1\u0178\11\343\2\u0176\20\0\1\u0179\7\0\1\u017a"+
-    "\70\0\1\346\66\0\103\347\1\u017b\1\u0176\1\0\3\u0176"+
-    "\1\u0177\4\350\1\u0176\1\0\3\u0176\1\u0177\1\350\1\u0176"+
-    "\1\0\3\u0176\1\u0177\5\350\1\u0176\13\350\1\u0176\12\350"+
-    "\1\u0176\4\350\1\u017c\11\350\2\u0176\103\351\1\u017d\63\0"+
-    "\1\352\45\0\1\u0171\22\0\1\u0172\67\0\1\u0174\51\0"+
-    "\1\u017e\103\0\1\u017f\107\0\4\113\6\0\1\113\6\0"+
-    "\3\113\2\u0180\1\0\13\113\1\0\12\113\1\0\4\113"+
-    "\1\0\11\113\10\0\4\113\6\0\1\113\6\0\5\113"+
-    "\1\0\13\113\1\0\2\113\1\u0181\7\113\1\0\4\113"+
-    "\1\0\6\113\1\u0181\2\113\2\0\12\365\1\366\3\365"+
-    "\1\0\65\365\14\370\1\366\1\370\1\0\65\370\1\375"+
-    "\1\0\10\375\1\377\2\375\1\u0182\45\375\1\u0182\20\375"+
-    "\1\141\2\375\1\376\1\141\1\375\4\141\1\377\1\141"+
-    "\1\375\1\141\1\137\1\375\6\141\1\375\55\141\1\u0101"+
-    "\1\0\12\u0101\1\377\1\u0183\45\u0101\1\u0183\20\u0101\1\142"+
-    "\2\u0101\1\u0102\1\142\1\u0101\4\142\1\u0101\1\142\1\377"+
-    "\1\142\1\137\1\u0101\6\142\1\u0101\55\142\12\u0108\1\u0109"+
-    "\3\u0108\1\0\65\u0108\14\u010b\1\u0109\1\u010b\1\0\65\u010b"+
-    "\6\0\4\166\6\0\1\166\6\0\5\166\1\0\13\166"+
-    "\1\0\12\166\1\0\4\166\1\0\6\166\1\u0184\2\166"+
-    "\10\0\4\u010f\6\0\1\u010f\6\0\5\u010f\1\0\13\u010f"+
-    "\1\0\12\u010f\1\0\4\u010f\1\0\11\u010f\10\0\4\u0111"+
-    "\6\0\1\u0111\6\0\5\u0111\1\0\13\u0111\1\0\12\u0111"+
-    "\1\0\4\u0111\1\0\11\u0111\2\0\12\u0112\1\u0113\3\u0112"+
-    "\1\0\65\u0112\14\u0115\1\u0113\1\u0115\1\0\65\u0115\1\u0185"+
-    "\2\u0186\1\u0187\1\u0185\1\u0186\4\u0185\1\u0186\1\u0185\1\u0186"+
-    "\2\u0185\1\u0186\6\u0185\1\u0186\54\u0185\1\173\1\u0188\2\u0189"+
-    "\1\u018a\1\u0188\1\u0189\4\u0188\1\u0189\1\u0188\1\u0189\2\u0188"+
-    "\1\u0189\6\u0188\1\u0189\54\u0188\1\173\35\0\1\u018b\34\0"+
-    "\1\u018b\51\0\1\u018c\14\0\1\u018c\70\0\1\u018d\11\0"+
-    "\1\u018d\73\0\1\u018e\17\0\1\u018e\110\0\1\u018f\7\0"+
-    "\1\u018f\2\0\12\u0121\1\u0122\3\u0121\1\0\65\u0121\1\u0124"+
-    "\1\0\12\u0124\1\u0122\1\u0190\45\u0124\1\u0190\21\u0124\1\0"+
-    "\12\u0124\1\u0191\1\u0190\45\u0124\1\u0190\20\u0124\14\0\1\u0192"+
-    "\67\0\14\u0124\1\u0191\1\u0124\1\0\65\u0124\12\u0131\1\u0132"+
-    "\3\u0131\1\0\65\u0131\1\u0134\1\0\12\u0134\1\u0132\1\u0193"+
-    "\45\u0134\1\u0193\21\u0134\1\0\12\u0134\1\u0194\1\u0193\45\u0134"+
-    "\1\u0193\20\u0134\14\0\1\u0195\67\0\14\u0134\1\u0194\1\u0134"+
-    "\1\0\65\u0134\2\231\1\0\22\231\1\u0196\22\231\1\u0197"+
-    "\35\231\1\0\31\231\1\u0198\47\231\12\u013b\1\u013c\3\u013b"+
-    "\1\0\65\u013b\1\u013e\1\0\12\u013e\1\u013c\1\u0199\45\u013e"+
-    "\1\u0199\21\u013e\1\0\12\u013e\1\u019a\1\u0199\45\u013e\1\u0199"+
-    "\20\u013e\14\0\1\u019b\67\0\14\u013e\1\u019a\1\u013e\1\0"+
-    "\65\u013e\2\240\1\0\22\240\1\u019c\22\240\1\u019d\35\240"+
-    "\1\0\31\240\1\u019e\47\240\7\0\1\u019f\11\0\1\u0170"+
-    "\3\0\1\u0171\22\0\1\u0172\55\0\1\u01a0\61\0\16\251"+
-    "\1\0\65\251\16\257\1\0\65\257\12\264\1\0\1\264"+
-    "\1\0\1\264\1\u01a1\64\264\1\u0150\12\264\1\0\1\264"+
-    "\1\0\1\u014d\7\264\1\u01a2\22\264\1\u01a3\32\264\1\0"+
-    "\12\u01a1\1\0\1\u01a1\1\0\66\u01a1\1\0\12\u0150\1\0"+
-    "\1\u0150\1\0\1\u01a4\65\u0150\1\0\14\u0151\1\u0152\10\u0151"+
-    "\1\u01a5\22\u0151\1\u01a6\47\u0151\1\u0152\17\u0151\1\u01a7\47\u0151"+
-    "\12\u0155\1\u0156\12\u0155\1\u01a8\22\u0155\1\u01a9\45\u0155\1\u0156"+
-    "\21\u0155\1\u01aa\47\u0155\12\302\1\0\103\302\1\0\12\302"+
-    "\1\u01ab\22\302\1\u01ac\31\302\1\u0159\1\0\102\u01ad\1\u01ae"+
-    "\1\u01ad\14\306\1\0\103\306\1\0\10\306\1\u01af\22\306"+
-    "\1\u01b0\31\306\1\u015c\1\0\102\u01b1\1\u01b2\1\u01b1\12\311"+
-    "\1\0\1\311\1\0\10\311\1\u01b3\22\311\1\u01b4\32\311"+
-    "\1\0\14\u0161\1\u0162\10\u0161\1\u01b5\22\u0161\1\u01b6\47\u0161"+
-    "\1\u0162\17\u0161\1\u01b7\47\u0161\12\u0165\1\u0166\12\u0165\1\u01b8"+
-    "\22\u0165\1\u01b9\45\u0165\1\u0166\21\u0165\1\u01ba\47\u0165\12\327"+
-    "\1\0\103\327\1\0\12\327\1\u01bb\22\327\1\u01bc\31\327"+
-    "\1\u0169\1\0\102\u01bd\1\u01be\1\u01bd\14\333\1\0\103\333"+
-    "\1\0\10\333\1\u01bf\22\333\1\u01c0\31\333\1\u016c\1\0"+
-    "\102\u01c1\1\u01c2\1\u01c1\7\0\1\u01c3\103\0\1\u01c4\131\0"+
-    "\1\u01c5\46\0\1\u0175\1\0\11\u0175\1\0\6\u0175\1\0"+
-    "\61\u0175\1\u0176\1\0\11\u0176\1\0\6\u0176\1\0\45\u0176"+
-    "\1\0\14\u0176\1\0\3\u0176\1\u0177\5\u0176\1\0\3\u0176"+
-    "\1\u0177\2\u0176\1\0\3\u0176\1\u0177\41\u0176\1\u01c6\13\u0176"+
-    "\20\0\1\u0179\47\0\1\u01c7\33\0\1\u01c8\14\0\3\u01c8"+
-    "\2\0\1\u01c8\11\0\1\u01c8\1\0\2\u01c8\6\0\1\u01c8"+
-    "\2\0\2\u01c8\6\0\1\u01c8\10\0\4\113\6\0\1\113"+
-    "\6\0\5\113\1\0\11\113\1\u01c9\1\113\1\0\1\u01c9"+
-    "\11\113\1\0\4\113\1\0\11\113\2\0\12\375\1\377"+
-    "\3\375\1\0\65\375\14\u0101\1\377\1\u0101\1\0\65\u0101"+
-    "\6\0\3\166\1\u01ca\6\0\1\166\6\0\5\166\1\0"+
-    "\13\166\1\0\12\166\1\0\4\166\1\0\11\166\2\0"+
-    "\1\u0185\2\u0186\1\u0187\1\u0185\1\u0186\4\u0185\1\u0186\1\u0185"+
-    "\1\u0186\2\u0185\1\u0186\6\u0185\1\u0186\54\u0185\1\u01cb\103\u0186"+
-    "\1\u01cc\1\u0188\2\u0189\1\u018a\1\u0188\1\u0189\4\u0188\1\u0189"+
-    "\1\u0188\1\u0189\2\u0188\1\u0189\6\u0188\1\u0189\54\u0188\1\u01cb"+
-    "\103\u0189\1\u01cd\40\0\1\u01ce\14\0\1\u01ce\60\0\2\u01cf"+
-    "\101\0\1\u01d0\112\0\1\u01d1\14\0\1\u01d1\60\0\2\u01d2"+
-    "\50\0\14\u0124\1\u0122\1\u0124\1\0\65\u0124\3\0\2\u01d3"+
-    "\1\0\4\u01d3\2\0\1\u0126\1\u01d3\1\0\4\u01d3\1\0"+
-    "\10\u01d3\1\0\37\u01d3\2\0\4\u01d3\2\0\14\u0134\1\u0132"+
-    "\1\u0134\1\0\65\u0134\3\0\2\u01d4\1\0\4\u01d4\2\0"+
-    "\1\u0136\1\u01d4\1\0\4\u01d4\1\0\10\u01d4\1\0\37\u01d4"+
-    "\2\0\4\u01d4\2\0\2\231\1\0\32\231\1\u01d5\46\231"+
-    "\14\u013e\1\u013c\1\u013e\1\0\65\u013e\3\0\2\u01d6\1\0"+
-    "\4\u01d6\2\0\1\u0140\1\u01d6\1\0\4\u01d6\1\0\10\u01d6"+
-    "\1\0\37\u01d6\2\0\4\u01d6\2\0\2\240\1\0\32\240"+
-    "\1\u01d7\46\240\7\0\1\u01d8\76\0\1\u01d9\101\0\12\u0150"+
-    "\1\0\1\u0150\1\0\1\u0150\1\0\65\u0150\14\u0151\1\u0152"+
-    "\20\u0151\1\u01da\46\u0151\12\u0155\1\u0156\22\u0155\1\u01db\46\u0155"+
-    "\12\u01dc\1\u01dd\70\u01dc\1\0\14\u01de\1\u01dd\66\u01de\1\0"+
-    "\14\u0161\1\u0162\20\u0161\1\u01df\46\u0161\12\u0165\1\u0166\22\u0165"+
-    "\1\u01e0\46\u0165\12\u01e1\1\u01e2\70\u01e1\1\0\14\u01e3\1\u01e2"+
-    "\66\u01e3\37\0\1\u01e4\135\0\1\u01c6\33\0\1\u01c8\14\0"+
-    "\3\u01c8\2\0\1\u01c8\11\0\1\u01c8\1\0\2\u01c8\6\0"+
-    "\1\u01c8\1\0\1\u01c7\2\u01c8\6\0\1\u01c8\10\0\4\113"+
-    "\6\0\1\113\6\0\5\113\1\0\6\113\1\u01e5\4\113"+
-    "\1\0\12\113\1\0\1\113\1\u01e5\2\113\1\0\11\113"+
-    "\10\0\4\166\6\0\1\166\6\0\5\166\1\0\6\166"+
-    "\1\u01e6\4\166\1\0\6\166\1\u01e7\3\166\1\0\4\166"+
-    "\1\0\11\166\54\0\1\u01e8\76\0\1\u01e9\13\0\1\u01e9"+
-    "\64\0\1\u01ea\11\0\1\u01ea\71\0\1\u01eb\11\0\1\u01eb"+
-    "\74\0\1\u01ec\13\0\1\u01ec\22\0\2\231\1\0\33\231"+
-    "\1\u01ed\45\231\2\240\1\0\33\240\1\u01ee\45\240\14\u0151"+
-    "\1\u0152\21\u0151\1\u01ef\45\u0151\12\u0155\1\u0156\23\u0155\1\u01f0"+
-    "\45\u0155\12\u01dc\1\u01ad\67\u01dc\1\u01f1\1\u01ad\14\u01de\1\u01b1"+
-    "\65\u01de\1\u01f2\1\u01b1\14\u0161\1\u0162\21\u0161\1\u01f3\45\u0161"+
-    "\12\u0165\1\u0166\23\u0165\1\u01f4\45\u0165\12\u01e1\1\u01bd\67\u01e1"+
-    "\1\u01f5\1\u01bd\14\u01e3\1\u01c1\65\u01e3\1\u01f6\1\u01c1\37\0"+
-    "\1\u01f7\52\0\4\113\6\0\1\113\6\0\5\113\1\0"+
-    "\3\113\1\u01f8\7\113\1\0\4\113\1\u01f8\5\113\1\0"+
-    "\4\113\1\0\11\113\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\11\166\1\u01f9\1\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\10\166\1\u01fa\2\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\55\0\1\u01fb\23\0\1\u01fb\50\0"+
-    "\1\u01fc\17\0\1\u01fc\66\0\1\u01fd\12\0\1\u01fd\52\0"+
-    "\1\u01fe\107\0\1\u01ff\34\0\1\u01ff\11\0\2\231\1\0"+
-    "\34\231\1\u0200\44\231\2\240\1\0\34\240\1\u0201\44\240"+
-    "\14\u0151\1\u0152\22\u0151\1\u0202\44\u0151\12\u0155\1\u0156\24\u0155"+
-    "\1\u0203\44\u0155\12\u01dc\1\u0204\67\u01dc\1\u01f1\1\u01ad\14\u01de"+
-    "\1\u0205\65\u01de\1\u01f2\1\u01b1\14\u0161\1\u0162\22\u0161\1\u0206"+
-    "\44\u0161\12\u0165\1\u0166\24\u0165\1\u0207\44\u0165\12\u01e1\1\u0208"+
-    "\67\u01e1\1\u01f5\1\u01bd\14\u01e3\1\u0209\65\u01e3\1\u01f6\1\u01c1"+
-    "\40\0\1\u020a\51\0\4\166\6\0\1\166\6\0\5\166"+
-    "\1\0\11\166\1\u020b\1\166\1\0\12\166\1\0\4\166"+
-    "\1\0\11\166\10\0\4\166\6\0\1\166\6\0\5\166"+
-    "\1\0\6\166\1\u020c\4\166\1\0\12\166\1\0\4\166"+
-    "\1\0\11\166\44\0\1\u020d\11\0\1\u020d\67\0\1\u020e"+
-    "\14\0\1\u020e\66\0\1\u020f\14\0\1\u020f\26\0\2\231"+
-    "\1\0\35\231\1\u0210\43\231\2\240\1\0\35\240\1\u0211"+
-    "\43\240\14\u0151\1\u0152\23\u0151\1\u0212\43\u0151\12\u0155\1\u0156"+
-    "\25\u0155\1\u0213\43\u0155\14\u0161\1\u0162\23\u0161\1\u0214\43\u0161"+
-    "\12\u0165\1\u0166\25\u0165\1\u0215\43\u0165\37\0\1\u0216\52\0"+
-    "\4\166\6\0\1\166\6\0\5\166\1\0\13\166\1\0"+
-    "\4\166\1\u0217\5\166\1\0\4\166\1\0\11\166\10\0"+
-    "\4\166\6\0\1\166\6\0\5\166\1\0\5\166\1\u0218"+
-    "\5\166\1\0\12\166\1\0\4\166\1\0\11\166\2\0"+
-    "\2\231\1\0\34\231\1\u0219\44\231\2\240\1\0\34\240"+
-    "\1\u021a\44\240\14\u0151\1\u0152\22\u0151\1\u021b\44\u0151\12\u0155"+
-    "\1\u0156\24\u0155\1\u021c\44\u0155\14\u0161\1\u0162\22\u0161\1\u021d"+
-    "\44\u0161\12\u0165\1\u0166\24\u0165\1\u021e\44\u0165\34\0\1\u021f"+
-    "\55\0\4\166\6\0\1\166\6\0\5\166\1\0\13\166"+
-    "\1\0\12\166\1\0\4\166\1\0\1\166\1\u0220\7\166"+
-    "\2\0\2\231\1\0\31\231\1\u0221\47\231\2\240\1\0"+
-    "\31\240\1\u0222\47\240\14\u0151\1\u0152\17\u0151\1\u0223\47\u0151"+
-    "\12\u0155\1\u0156\21\u0155\1\u0224\47\u0155\14\u0161\1\u0162\17\u0161"+
-    "\1\u0225\47\u0161\12\u0165\1\u0166\21\u0165\1\u0226\47\u0165\6\0"+
-    "\4\166\6\0\1\166\6\0\5\166\1\0\13\166\1\0"+
-    "\4\166\1\u0227\5\166\1\0\4\166\1\0\11\166\10\0"+
-    "\4\166\6\0\1\166\6\0\5\166\1\0\10\166\1\u0228"+
-    "\2\166\1\0\12\166\1\0\4\166\1\0\11\166\10\0"+
-    "\4\166\6\0\1\166\6\0\5\166\1\0\4\166\1\u0229"+
-    "\6\166\1\0\12\166\1\0\4\166\1\0\11\166\10\0"+
-    "\4\166\6\0\1\166\6\0\5\166\1\0\5\166\1\u022a"+
-    "\5\166\1\0\12\166\1\0\4\166\1\0\11\166\2\0"+
-    "\6\u022b\4\u022c\6\u022b\1\u022c\5\u022b\1\0\5\u022c\1\u022b"+
-    "\13\u022c\1\u022b\12\u022c\1\u022b\4\u022c\1\u022b\11\u022c\2\u022b"+
-    "\41\0\1\u022d\3\0\1\u022e\7\0\1\u022f\1\u0230\20\0"+
-    "\1\u0231\12\0\4\166\6\0\1\166\6\0\5\166\1\0"+
-    "\4\166\1\u0232\3\166\1\u0233\2\166\1\0\4\166\1\u0234"+
-    "\1\u0235\4\166\1\0\4\166\1\0\6\166\1\u0236\2\166"+
-    "\60\0\1\u0237\74\0\1\u0238\112\0\1\u0239\102\0\1\u023a"+
-    "\104\0\1\u023b\33\0\4\166\6\0\1\166\6\0\5\166"+
-    "\1\0\13\166\1\0\5\166\1\u023c\4\166\1\0\4\166"+
-    "\1\0\11\166\10\0\4\166\6\0\1\166\6\0\5\166"+
-    "\1\0\12\166\1\u023d\1\0\12\166\1\0\4\166\1\0"+
-    "\11\166\10\0\4\166\6\0\1\166\6\0\5\166\1\0"+
-    "\13\166\1\0\5\166\1\u023e\4\166\1\0\4\166\1\0"+
-    "\11\166\10\0\4\166\6\0\1\166\6\0\5\166\1\0"+
-    "\13\166\1\0\4\166\1\u023f\5\166\1\0\4\166\1\0"+
-    "\11\166\10\0\4\166\6\0\1\166\6\0\5\166\1\0"+
-    "\13\166\1\0\5\166\1\u0240\4\166\1\0\4\166\1\0"+
-    "\11\166\45\0\1\u0241\132\0\1\u0242\104\0\1\u0243\65\0"+
-    "\1\u0244\121\0\1\u0245\16\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\6\166\1\u0246\4\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\13\166\1\0\12\166\1\0\4\166\1\0"+
-    "\1\166\1\u0247\7\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\13\166\1\0\12\166\1\0\4\166\1\0"+
-    "\2\166\1\u0248\6\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\13\166\1\0\4\166\1\u0249\5\166\1\0"+
-    "\4\166\1\0\11\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\13\166\1\0\12\166\1\0\4\166\1\0"+
-    "\2\166\1\u024a\6\166\47\0\1\u024b\71\0\1\u024c\103\0"+
-    "\1\u024d\113\0\1\u024e\102\0\1\u024f\47\0\4\166\6\0"+
-    "\1\166\6\0\5\166\1\0\10\166\1\u0250\2\166\1\0"+
-    "\12\166\1\0\4\166\1\0\11\166\10\0\4\166\6\0"+
-    "\1\166\6\0\4\166\1\u0251\1\0\13\166\1\0\12\166"+
-    "\1\0\4\166\1\0\11\166\10\0\4\166\6\0\1\166"+
-    "\6\0\4\166\1\u0252\1\0\13\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\6\166\1\u0253\4\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\5\166\1\u0254\5\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\60\0\1\u0255\125\0\1\u0256\50\0"+
-    "\1\u0257\103\0\1\u0258\44\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\13\166\1\0\5\166\1\u0259\4\166\1\0"+
-    "\4\166\1\0\11\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\13\166\1\0\12\166\1\0\4\166\1\0"+
-    "\7\166\1\u025a\1\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\10\166\1\u025b\2\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\10\166\1\u025c\2\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\103\0\1\u025d\61\0\1\u0245\125\0"+
-    "\1\u024f\103\0\1\u025e\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\13\166\1\0\12\166\1\0\4\166\1\0"+
-    "\10\166\1\u025f\10\0\4\166\6\0\1\166\6\0\5\166"+
-    "\1\0\13\166\1\0\6\166\1\u024a\3\166\1\0\4\166"+
-    "\1\0\11\166\10\0\4\166\6\0\1\166\6\0\5\166"+
-    "\1\0\13\166\1\0\12\166\1\0\4\166\1\0\10\166"+
-    "\1\u0254\10\0\4\166\6\0\1\166\6\0\5\166\1\0"+
-    "\13\166\1\0\12\166\1\0\4\166\1\0\10\166\1\u0260"+
-    "\35\0\1\u0245\150\0\1\u0261\11\0\4\166\6\0\1\166"+
-    "\6\0\4\166\1\u024a\1\0\13\166\1\0\12\166\1\0"+
-    "\4\166\1\0\11\166\10\0\4\166\6\0\1\166\6\0"+
-    "\5\166\1\0\13\166\1\0\12\166\1\0\4\166\1\0"+
-    "\7\166\1\u0262\1\166\57\0\1\u0245\34\0\4\166\6\0"+
-    "\1\166\6\0\5\166\1\0\13\166\1\0\4\166\1\u024a"+
-    "\5\166\1\0\4\166\1\0\11\166\2\0";
-
-  /** 
-   * The transition table of the DFA
-   */
-  final private static int yytrans [] = yy_unpack(yy_packed);
-
-
-  /* error codes */
-  final private static int YY_UNKNOWN_ERROR = 0;
-  // final private static int YY_ILLEGAL_STATE = 1;
-  final private static int YY_NO_MATCH = 2;
-  final private static int YY_PUSHBACK_2BIG = 3;
-
-  /* error messages for the codes above */
-  final private static String YY_ERROR_MSG[] = {
-    "Unkown internal scanner error",		//$NON-NLS-1$
-    "Internal error: unknown state",		//$NON-NLS-1$
-    "Error: could not match input",		//$NON-NLS-1$
-    "Error: pushback value was too large"	//$NON-NLS-1$
-  };
-
-  /**
-   * YY_ATTRIBUTE[aState] contains the attributes of state <code>aState</code>
-   */
-  private final static byte YY_ATTRIBUTE[] = {
-     1,  0,  0,  0,  0,  1,  0,  0,  1,  1,  1,  0,  1,  1,  1,  1, 
-     0,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1, 
-     1,  1,  1,  1,  0,  0,  0,  0,  1,  1,  0,  1,  0,  0,  0,  0, 
-     0,  0,  1,  0,  0,  0,  0,  0,  0,  1,  1,  1,  1,  1,  1,  9, 
-     1,  9,  1,  1,  9,  9,  1,  1,  1,  1,  1,  1,  1,  1,  9,  1, 
-     1,  1,  1,  9,  1,  1,  1,  1,  1,  1,  9,  1,  1,  9,  1,  1, 
-     1,  1,  9,  1,  1,  1,  1,  1,  1,  1,  9,  1,  1,  1,  1,  1, 
-     1,  1,  9,  1,  1,  1,  1,  1,  1,  9,  1,  1,  1,  1,  1,  1, 
-     1,  1,  9,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1, 
-     1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  9,  1,  1,  1,  1,  1, 
-     1,  9,  9,  1,  1,  9,  1,  1,  1,  1,  1,  9,  1,  1,  1,  1, 
-     9,  1,  1,  1,  1,  9,  9,  1,  9,  3,  3,  3,  3,  3,  3,  9, 
-     9,  1,  1,  1,  9,  1,  1,  1,  1,  1,  9,  9,  1,  9,  3,  3, 
-     3,  3,  3,  3,  9,  9,  1,  1,  1,  9,  1,  1,  1,  9,  9,  1, 
-     1,  0,  1,  0,  9,  1,  2,  1,  2,  1,  1,  0,  0,  0,  9,  1, 
-     1,  9,  9,  0,  0,  9,  0,  0,  0,  0,  0,  0,  0,  0,  9,  1, 
-     0,  0,  1,  9,  0,  9,  0,  0,  9,  0,  0,  0,  9,  1,  1,  0, 
-     1,  0,  9,  0,  0,  0,  1,  1,  0,  0,  0,  0,  9,  0,  0,  0, 
-     0,  9,  0,  0,  0,  1,  0,  0,  1,  0,  0,  9,  0,  0,  1,  0, 
-     0,  9,  0,  0,  0,  1,  0,  1,  1,  0,  0,  9,  0,  0,  0,  1, 
-     0,  1,  1,  1,  0,  0,  9,  9,  9,  0,  9,  9,  1,  1,  1,  1, 
-     2, 13,  3,  2,  2, 13,  3,  2,  0,  1,  1,  0,  1,  1,  1,  1, 
-     2, 13,  3,  2,  2, 13,  3,  2,  0,  1,  1,  0,  1,  1,  0,  9, 
-     9,  9,  0,  0,  1,  1,  1,  9,  0,  0, 13,  9, 13,  9,  9,  1, 
-     1,  0,  0,  1,  3,  2,  2,  3,  2,  2,  0,  0,  0,  0,  0,  0, 
-     1,  0,  0,  1,  0,  1,  1,  1,  0,  1,  0,  1,  1,  1,  0,  0, 
-     1,  1,  1,  0,  3,  3,  2,  3,  3,  2,  1,  1,  0,  0,  1,  1, 
-     0,  0,  1,  1,  3,  3,  2,  3,  3,  2,  1,  1,  0,  0,  1,  1, 
-     0,  0,  9,  9,  0,  1,  9,  0,  1,  1,  5, 13, 13,  0,  0,  0, 
-     0,  0,  0,  0,  1,  0,  1,  9,  9,  2,  2,  0,  9,  0,  2,  2, 
-     0,  9,  0,  0,  1,  1,  1,  0,  0,  0,  0,  0,  1,  1,  2,  2, 
-     0,  0,  2,  2,  0,  0,  0,  1,  1,  1,  0,  0,  0,  9,  9,  1, 
-     1,  2,  2,  1,  1,  2,  2,  1,  1,  0,  1,  1,  9,  9,  9,  1, 
-     1,  2,  2,  2,  2,  0,  1,  1,  1,  1,  2,  2,  2,  2,  9,  1, 
-     1,  1,  3,  3,  3,  3,  1,  1,  1,  1,  0,  1,  0,  0,  0,  0, 
-     0,  1,  1,  1,  1,  1,  0,  0,  0,  0,  0,  1,  1,  1,  1,  1, 
-     0,  0,  1,  0,  0,  1,  1,  1,  1,  1,  0,  0,  0,  0,  9,  1, 
-     1,  1,  1,  1,  0,  0,  0,  0,  1,  1,  1,  1,  0,  0,  1,  1, 
-     0,  1
-  };
-
-  /** the input device */
-  private java.io.Reader yy_reader;
-
-  /** the current state of the DFA */
-  private int yy_state;
-
-  /** the current lexical state */
-  private int yy_lexical_state = YYINITIAL;
-
-  /** this buffer contains the current text to be matched and is
-      the source of the yytext() string */
-  private char yy_buffer[] = new char[16384];
-
-  /** the textposition at the last accepting state */
-  private int yy_markedPos;
-
-  /** the textposition at the last state to be included in yytext */
-  private int yy_pushbackPos;
-
-  /** the current text position in the buffer */
-  private int yy_currentPos;
-
-  /** startRead marks the beginning of the yytext() string in the buffer */
-  private int yy_startRead;
-
-  /** endRead marks the last character in the buffer, that has been read
-      from input */
-  private int yy_endRead;
-
-  /** number of newlines encountered up to the start of the matched text */
-  private int yyline;
-
-  /** the number of characters up to the start of the matched text */
-  private int yychar;
-
-  /**
-   * the number of characters from the last newline up to the start of the 
-   * matched text
-   */
-  // private int yycolumn; 
-
-  /** 
-   * yy_atBOL == true <=> the scanner is currently at the beginning of a line
-   */
-  // private boolean yy_atBOL;
-
-  /** yy_atEOF == true <=> the scanner has returned a value for EOF */
-  private boolean yy_atEOF;
-
-  /** denotes if the user-EOF-code has already been executed */
-  private boolean yy_eof_done;
-
-  /* user code: */
-	private int fTokenCount = 0;
- 
-	// required holders for white-space compacting
-	private boolean fShouldLoadBuffered = false;
-	private String fBufferedContext = null;
-	private int fBufferedStart = 1;
-	private int fBufferedLength = 0;
-	private ContextRegionContainer fBufferedEmbeddedContainer = null;
-	private String f_context = null;
-
-	// state stack for handling embedded regions
-	private IntStack fStateStack = new IntStack();
-	// a "hint" as to what an embedded region should be evaluated
-	private String fEmbeddedHint = UNDEFINED;
-	// a "hint" as to what state to enter once an embedded region has
-	//   been completed
-	private int fEmbeddedPostState = YYINITIAL;
-	// the container used to create embedded regions
-	private ContextRegionContainer fEmbeddedContainer = null;
-	private static final String PROXY_CONTEXT = "PROXY_CONTEXT";
-
-	private String context = null;
-	private int start = 0;
-	private int textLength = 0;
-	private int length = 0;
-
-	// offset for tracking position specific block tags
-	private int fOffset = 0;
-	
-	// the name of the current tag being opened
-	private String fCurrentTagName = null;
-
-	// the name of the current tag inside of an embedded region
-	private String internalTagName = null;
-	private String internalContext = null;
-
-	// the list of tag name BlockMarkers
-	private List fBlockMarkers = new ArrayList(0);
-	private List fNestablePrefixes = new ArrayList(1);
-	
-	// where the last internal container block was found
-	private int fLastInternalBlockStart = -1;
-
-	// required to not seek text blocks on an end tag
-	private boolean fIsBlockingEnabled = false;
-	private boolean fIsCaseSensitiveBlocking = true;
-
-	private static final boolean fForbidJSP = false;
-	
-	private int fELlevel = 0;
-
-	private JSPParserRegionFactory fRegionFactory = new JSPParserRegionFactory();
-
-	private static final String rcsver = "$Id: JSPTokenizer.java,v 1.6 2005/03/15 17:34:05 david_williams Exp $";//$NON-NLS-1$
-
-	/**
-	 * user method 
-	 */
-	public final void addBlockMarker(BlockMarker marker) {
-		if(containsTagName(marker.getTagName()))
-			return;
-		fBlockMarkers.add(marker);
-	}
-	/**
-	 * user method
-	 */
-	public final void addNestablePrefix(TagMarker marker) {
-		fNestablePrefixes.add(marker);
-	}
-	/* user method */
-	public List getNestablePrefixes() {
-		return fNestablePrefixes;
-	}
-	/**
-	 * user method
-	 */
-	private boolean isNestable(String tagName) {
-		//Iterator blocks = fNestablePrefixes.iterator();
-		//while(blocks.hasNext()) {
-		//	TagMarker marker = (TagMarker)blocks.next();
-		//	String markerName = marker.getTagName();
-		//	if(tagName.length() > markerName.length() + 1 && tagName.startsWith(markerName) && tagName.charAt(markerName.length()) == ':') {
-		//		return marker.isGlobal() || getOffset() >= marker.getMarker().getStart();
-		//	}
-		//}
-		//return false;
-		return true;
-	}
-	/**
-	 * user method 
-	 */
-	public final void removeNestablePrefix(String name) {
-		if (fNestablePrefixes != null) {
-			Iterator nestables = fNestablePrefixes.iterator();
-			while (nestables.hasNext()) {
-				if (((TagMarker) nestables.next()).getTagName().equalsIgnoreCase(name))
-					nestables.remove();
-			}
-		}
-	}
-	/**
-	 * user method 
-	 */
-	public final void removeBlockMarker(BlockMarker marker) {
-		fBlockMarkers.remove(marker);
-	}
-	/**
-	 * user method 
-	 */
-	public final void removeBlockMarker(String tagname) {
-		if (fBlockMarkers != null) {
-			Iterator blocks = fBlockMarkers.iterator();
-			while (blocks.hasNext()) {
-				if (((BlockMarker) blocks.next()).getTagName().equals(tagname))
-					blocks.remove();
-			}
-		}
-	}
-	/* user method */
-	private final void assembleEmbeddedTagSequence(String startType, String endTagName) {
-		assembleEmbeddedContainer(startType, null, endTagName);
-	}
-	/* user method */
-	private final void assembleEmbeddedContainer(String startType, String[] endTypes) {
-		assembleEmbeddedContainer(startType, endTypes, null);
-	}
-	/* user method */
-	private final void assembleEmbeddedContainer(String startType, String endType) {
-		assembleEmbeddedContainer(startType, new String[]{endType}, null);
-	}
-	/**
-	 *  user method 
-	 * 
-	 * Assembles an embedded container beginning with the given startType as
-	 * the first ContextRegion within it and of the type fEmbeddedHint.  The
-	 * endTypes[] array contains the context types that will cause a successful
-	 * exit.  Use of the endTagName parameter alters this behavior to force an
-	 * exit on an XML_TAG_CLOSE after seeing an XML_TAG_NAME whose significant
-	 * text matches the endTagName String.  All contents in between are
-	 * insignificant, and yes, this means comments are allowed inside.
-	 **/
-	private final void assembleEmbeddedContainer(String startType, String[] endTypes, String endTagName) {
-		// the context of the region being added to the embedded container
-		internalContext = startType;
-		// keep track of where this container began; to provide relative indeces for the regions
-		int containerStart = yychar;
-		boolean notFinished = true;
-		// keep track of where we seem to be so that the endTagName can be checked
-		boolean isInEndTag = false;
-		boolean isInFirstTag = true;
-		// create the embedded container and setup its "type"
-		if (fEmbeddedContainer == null) {
-			fEmbeddedContainer = new ContextRegionContainer();
-			fEmbeddedContainer.setType(fEmbeddedHint);
-			fEmbeddedContainer.setStart(containerStart);
-			// TODO: parent region needs to be set .... but not sure where to get it from 
-			//		fEmbeddedContainer.setParent(parentRegion);
-		}
-		containerStart = fEmbeddedContainer.getStart();
-		while (notFinished) {
-			// add the region to the container
-			if (internalContext != null && internalContext != PROXY_CONTEXT) {
-				ITextRegion newToken = fRegionFactory.createToken(internalContext, yychar - containerStart, yylength(), yylength());
-				fEmbeddedContainer.getRegions().add(newToken);
-				fEmbeddedContainer.setLength(fEmbeddedContainer.getLength() + yylength());
-				fEmbeddedContainer.setTextLength(fEmbeddedContainer.getTextLength() + yylength());
-				// DW, 4/16/2003 token regions no longer have parents
-				//newToken.setParent(fEmbeddedContainer);
-			}
-			try {
-				// longscan determines whether to attempt a blockTagScan within the embedded container
-				boolean longscan = false;
-				// save the tokenizer state in case of a block tag scan
-				int previousState = yystate();
-				String previousCurrentTagName = fCurrentTagName;
-				int previousPostState = fEmbeddedPostState;
-				String previousEmbeddedHint = fEmbeddedHint;
-				// determine if a block tag scan is necessary
-				if (internalContext == XML_TAG_NAME) {
-					internalTagName = yytext();
-					if(!isNestable(internalTagName)) {
-						internalTagName = null;
-						// snagged a tag name we shouldn't have
-						fEmbeddedPostState = ST_ABORT_EMBEDDED;
-						notFinished = false;
-					}
-				}
-				else if (internalContext == XML_TAG_OPEN || internalContext == XML_END_TAG_OPEN) {
-					internalTagName = null;
-				}
-				// do upkeep for endTagName usage; must be here since the next token could be the close
-				if (internalContext == XML_END_TAG_OPEN) {
-					isInEndTag = true;
-				} else if (internalContext == XML_TAG_CLOSE) {
-					isInFirstTag = isInEndTag = false;
-				} else {
-				 	ITextRegionList embeddedRegions = fEmbeddedContainer.getRegions();
-					if (embeddedRegions.size() > 2 && (embeddedRegions.get(embeddedRegions.size()-1)).getType() == XML_TAG_CLOSE && (embeddedRegions.get(embeddedRegions.size() - 3)).getType() == XML_TAG_OPEN && internalTagName != null) {
-						if (containsTagName(internalTagName)) {
-							longscan = true;
-							yybegin(ST_BLOCK_TAG_SCAN);
-						}
-					}
-				}
-				if (longscan)
-					fCurrentTagName = internalTagName;
-				// read the next region and context
-				internalContext = primGetNextToken();
-				if (longscan) {
-					// Returning from a block tag scan requires restoring some state variables
-					// as well as handling the block region and setting up for normal scanning
-					// inside the embedded container
-					ITextRegion newToken = fRegionFactory.createToken(internalContext, yychar - containerStart, yylength(), yylength());
-					fEmbeddedContainer.getRegions().add(newToken);
-					fEmbeddedContainer.setLength(fEmbeddedContainer.getLength() + yylength());
-					fEmbeddedContainer.setTextLength(fEmbeddedContainer.getTextLength() + yylength());
-					// DW, 4/16/2003 token regions no longer have parents
-					// newToken.setParent(fEmbeddedContainer);
-					longscan = false;
-					fEmbeddedPostState = previousPostState;
-					fEmbeddedHint = previousEmbeddedHint;
-					fCurrentTagName = previousCurrentTagName;
-					yybegin(previousState);
-					internalContext = primGetNextToken();
-				}
-			} catch (IOException e) {
-				// primGetNextToken() calls may throw an IOException
-				// catch and do nothing since the isEOF check below
-				// will properly exit if the input was too short
-			} catch (Exception f) {
-				// some other exception happened; never should
-				Logger.logException(f);
-			}
-			boolean isEndingType = yystate() == ST_ABORT_EMBEDDED;
-			if(!isEndingType) {
-				// check for ending context
-				if (endTagName == null) {
-					for (int i = 0; i < endTypes.length; i++) {
-						isEndingType = isEndingType || (internalContext == endTypes[i]);
-					}
-				}
-				else {
-					isEndingType = ((isInEndTag && internalContext == XML_TAG_CLOSE) || (isInFirstTag && internalContext == XML_EMPTY_TAG_CLOSE)) && internalTagName != null && internalTagName.equals(endTagName);
-				}
-			}
-			ITextRegionList embeddedList = fEmbeddedContainer.getRegions();
-			notFinished = notFinished && ((!isEndingType) && !isEOF() && (endTagName != null || internalContext != UNDEFINED) && !(internalContext == PROXY_CONTEXT && (embeddedList.get(embeddedList.size()-1)).getType() == UNDEFINED));
-		}
-		// finish adding the last context
-		if (internalContext != null && internalContext != PROXY_CONTEXT) {
-			ITextRegion newToken = fRegionFactory.createToken(internalContext, yychar - containerStart, yylength(), yylength());
-			fEmbeddedContainer.getRegions().add(newToken);
-			// DW, 4/16/2003 token regions no longer have parents
-			//newToken.setParent(fEmbeddedContainer);
-			fEmbeddedContainer.setLength(yychar - containerStart + yylength());
-			fEmbeddedContainer.setTextLength(yychar - containerStart + yylength());
-		}
-		yybegin(fEmbeddedPostState);
-	}
-	/* user method */
-	public final boolean isCaseSensitiveBlocking() {
-		return fIsCaseSensitiveBlocking;
-	}
-	/* user method */
-	public final void setCaseSensitiveBlocking(boolean newValue) {
-		fIsCaseSensitiveBlocking = newValue;
-	}
-	/* user method */
-	public boolean getBlockMarkerAllowsJSP() {
-		return getBlockMarkerAllowsJSP(fCurrentTagName);
-	}
-	/* user method */
-	public boolean getBlockMarkerAllowsJSP(String name) {
-		Iterator iterator = fBlockMarkers.iterator();
-		while(iterator.hasNext()) {
-			BlockMarker marker = (BlockMarker)iterator.next();
-			boolean casesensitive = marker.isCaseSensitive();
-			if(casesensitive && marker.getTagName().equals(name))
-				return marker.allowsJSP();
-			else if(!casesensitive && marker.getTagName().equalsIgnoreCase(name))
-				return marker.allowsJSP();
-		}
-		return true;
-	}
-	/* user method */
-	public boolean getBlockMarkerCaseSensitivity() {
-		return getBlockMarkerCaseSensitivity(fCurrentTagName);
-	}
-	public boolean getBlockMarkerCaseSensitivity(String name) {
-		Iterator iterator = fBlockMarkers.iterator();
-		while(iterator.hasNext()) {
-			BlockMarker marker = (BlockMarker)iterator.next();
-			boolean casesensitive = marker.isCaseSensitive();
-			if(casesensitive && marker.getTagName().equals(name))
-				return casesensitive;
-			else if(!casesensitive && marker.getTagName().equalsIgnoreCase(name))
-				return casesensitive;
-		}
-		return true;
-	}
-	/* user method */
-	public String getBlockMarkerContext() {
-		return getBlockMarkerContext(fCurrentTagName);
-	}
-	/* user method */
-	public String getBlockMarkerContext(String name) {
-		Iterator iterator = fBlockMarkers.iterator();
-		while(iterator.hasNext()) {
-			BlockMarker marker = (BlockMarker)iterator.next();
-			if(marker.getTagName().equals(name))
-				return marker.getContext();
-		}
-		return BLOCK_TEXT;
-	}
-	/* user method */
-	public List getBlockMarkers() {
-		return fBlockMarkers;
-	}
-	/* user method */
-	public final int getOffset() {
-		return fOffset + yychar;
-	}
-	private final boolean isBlockMarker() {
-		return isBlockMarker(fCurrentTagName);
-	}
-	private final boolean isBlockMarker(String tagName) {
-		if (!fIsBlockingEnabled)
-			return false;
-		return containsTagName(tagName);
-	}
-	/**
-	 * user method
-	 */
-	public final void beginBlockTagScan(String newTagName) {
-		beginBlockMarkerScan(newTagName, BLOCK_TEXT);
-	}
-	/**
-	 * user method
-	 *
-	 * Special tokenizer setup.  Allows tokenization to be initiated at the
-	 * start of a text block within a "newTagName" tag.
-	 *
-	 * Example: 
-	 *	Tokenizer toker = new Tokenizer();
-	 *	toker.setCaseSensitiveBlocking(false);
-	 *	toker.reset(new java.io.StringReader("afiuhqwkejhtasihgalkwhtq</scripter></scr></script>asgdasga"));
-	 *	toker.beginBlockMarkerScan("script", BLOCK_TEXT);
-	 *	toker.getRegions(); 
-	 *
-	 * Returns:
-	 *	BLOCK_TEXT: 0-40
-	 *	XML_END_TAG_OPEN: 41-42
-	 *	XML_TAG_NAME: 43-48
-	 *	XML_TAG_CLOSE: 49-49
-	 *	XML_CONTENT: 50-57
-	 *
-	 */
-	public final void beginBlockMarkerScan(String newTagName, String blockcontext) {
-		yybegin(ST_BLOCK_TAG_SCAN);
-		fCurrentTagName = newTagName;
-	}
-
-/**
- * Method doScan.
- * 
- * Returns a context region for all of the text from the current position upto the end of input or
- * to right *before* the first occurence of searchString
- * 
- * @param searchString - target string to search for ex.: "-->", "</tagname"
- * @param requireTailSeparator - whether the target must be immediately followed by whitespace or '>'
- * @param allowJSP - check for and allow for JSP markup <%%>
- * @param context - the context of the scanned region if non-zero length
- * @param exitState - the state to go to if the region was of non-zero length
- * @param abortState - the state to go to if the searchString was found immediately
- * @return String - the context found: the desired context on a non-zero length match, the abortContext on immediate success
- * @throws IOException
- */
-private final String doScan(String searchString, boolean requireTailSeparator, boolean allowJSP, boolean allowCDATA, String searchContext, int exitState, int immediateFallbackState) throws IOException {
-	boolean stillSearching = true;
-	// Disable further block (probably)
-	fIsBlockingEnabled = false;
-	int searchStringLength = searchString.length();
-	int n = 0;
-	char lastCheckChar;
-	int i;
-	boolean same = false;
-	// Check for JSP starts ("<%") if the tag is global like SCRIPT or STYLE
-	boolean checkJSPs = allowJSP && !fForbidJSP;
-	boolean checkedForJSPsOnce = !checkJSPs;
-	boolean checkedJSPsAtStartOnce = false;
-	
-	while (stillSearching) {
-		n = 0;
-		// Ensure that enough data from the input exists to compare against the search String.
-		n = yy_advance();
-		while(n != YYEOF && yy_currentPos < searchStringLength)
-			n = yy_advance();
-//		c = (char) n;
-		// If the input was too short or we've exhausted the input, stop immediately.
-		if (n == YYEOF && checkedForJSPsOnce) {
-			stillSearching = false;
-		}
-		else {
-			/**
-			 * Look for starting JSPs "<%"
-			 */
-			checkedForJSPsOnce = true;
-			// 1) yy_currentPos - searchStringLength : There's at least searchStringLength of input available; once that's read, check for JSPs
-			// ---
-			// Look for a JSP beginning at current-searchStringLength; if so, backup and switch scanner states to handle it.
-			// Ensure that we've not encountered a complete block (<%%>) that was *shorter* than the closeTagString and
-			// thus found twice at current-targetLength [since the first scan would have come out this far anyway].
-			if(checkJSPs && yy_currentPos > searchStringLength && yy_currentPos - searchStringLength != fLastInternalBlockStart && 
-				yy_buffer[yy_currentPos - searchStringLength] == '<' && yy_buffer[yy_currentPos - searchStringLength + 1] == '%') {
-				fLastInternalBlockStart = yy_markedPos = yy_currentPos - searchStringLength;
-				yy_currentPos = yy_markedPos + 1;
-				int resumeState = yystate();
-				yybegin(ST_BLOCK_TAG_INTERNAL_SCAN);
-				if(yy_markedPos == yy_startRead) {
-					String jspContext = primGetNextToken();
-					yybegin(resumeState);
-					return jspContext;
-				}
-				return searchContext;
-			}
-			// 2) yy_currentPos - jspstarter.length : There's not searchStringLength of input available; check for a JSP 2 spots back in what we could read
-			// ---
-			// Look for a JSP beginning at the current position; this case wouldn't be handled by the preceding section
-			// since it relies upon *having* closeTagStringLength amount of input to work as designed.  Must be sure we don't
-			// spill over the end of the buffer while checking.
-			else if(checkJSPs && yy_startRead != fLastInternalBlockStart && yy_currentPos > 0 && yy_currentPos < yy_buffer.length - 1 &&
-					yy_buffer[yy_currentPos - 1] == '<' && yy_buffer[yy_currentPos] == '%') {
-				fLastInternalBlockStart = yy_markedPos = yy_currentPos - 1;
-				yy_currentPos = yy_markedPos + 1;
-				int resumeState = yystate();
-				yybegin(ST_BLOCK_TAG_INTERNAL_SCAN);
-				if(yy_markedPos == yy_startRead) {
-					String jspContext = primGetNextToken();
-					yybegin(resumeState);
-					return jspContext;
-				}
-				return searchContext;
-			}
-			// 3) yy_currentPos..(yy_currentPos+jspStartlength-1) : Check at the start of the block one time
-			// ---
-			// Look for a JSP beginning immediately in the block area; this case wouldn't be handled by the preceding section
-			// since it relies upon yy_currentPos equaling exactly the previous end +1 to work as designed.
-			else if(checkJSPs && !checkedJSPsAtStartOnce && yy_startRead != fLastInternalBlockStart && yy_startRead > 0 &&
-					yy_startRead < yy_buffer.length - 1 && yy_buffer[yy_startRead] == '<' && yy_buffer[yy_startRead + 1] == '%') {
-				checkedJSPsAtStartOnce = true;
-				fLastInternalBlockStart = yy_markedPos = yy_startRead;
-				yy_currentPos = yy_markedPos + 1;
-				int resumeState = yystate();
-				yybegin(ST_BLOCK_TAG_INTERNAL_SCAN);
-				if(yy_markedPos == yy_startRead) {
-					String jspContext = primGetNextToken();
-					yybegin(resumeState);
-					return jspContext;
-				}
-				return searchContext;
-			}
-
-
-			/**
-			 * Look for starting CDATA "<![CDATA["
-			 */
-			// 1) yy_currentPos - searchStringLength: There's at least searchStringLength of input available; once that's read, check for CDATA
-			// ---
-			// Look for a CDATA beginning at current-searchStringLength; if so, backup and switch scanner states to handle it.
-			// Ensure that we've not encountered a complete block (<[!CDATA[]]>) that was *shorter* than the closeTagString and
-			// thus found twice at current-targetLength [since the first scan would have come out this far anyway].
-/*			if(checkCDATA && yy_currentPos > searchStringLength && yy_currentPos + searchStringLength < yy_buffer.length && yy_currentPos - searchStringLength != fLastInternalBlockStart && 
-				charsMatch(cdataStarter, yy_buffer, 0, yy_currentPos - searchStringLength)) {
-				fLastInternalBlockStart = yy_markedPos = yy_currentPos - searchStringLength;
-				yy_currentPos = yy_markedPos + 1;
-				int resumeState = yystate();
-				// go to a state where CDATA can be found
-				if (fEmbeddedContainer == null) {
-					fEmbeddedContainer = new ContextRegionContainer();
-					fEmbeddedContainer.setType(searchContext);
-					fEmbeddedContainer.setStart(yychar);
-				}
-				ITextRegion newToken = fRegionFactory.createToken(searchContext, yychar, yylength(), yylength());
-				fEmbeddedContainer.getRegions().add(newToken);
-				fEmbeddedContainer.setLength(fEmbeddedContainer.getLength() + yylength());
-				fEmbeddedContainer.setTextLength(fEmbeddedContainer.getTextLength() + yylength());
-				yybegin(YYINITIAL);
-				String context = primGetNextToken();
-				if(context.equals(XMLRegionContexts.XML_CDATA_OPEN)) {
-					assembleEmbeddedContainer(XMLRegionContexts.XML_CDATA_OPEN, XMLRegionContexts.XML_CDATA_CLOSE);
-				}
-				yybegin(resumeState);
-				return searchContext;
-			}
-*//*
-			// 2) yy_currentPos - cdataStarter.length: There's not searchStringLength of input available; check for a CDATA right here spots back in what we could read
-			// ---
-			// Look for a JSP beginning at the current position; this case wouldn't be handled by the preceding section
-			// since it relies upon *having* closeTagStringLength amount of input to work as designed.  Must be sure we don't
-			// spill over the end of the buffer while checking.
-			else if(checkCDATA && yy_startRead != fLastInternalBlockStart && yy_currentPos > 0 && yy_currentPos < yy_buffer.length - 1 &&
-					yy_buffer[yy_currentPos - 1] == '<' && yy_buffer[yy_currentPos] == '%') {
-				fLastInternalBlockStart = yy_markedPos = yy_currentPos - 1;
-				yy_currentPos = yy_markedPos + 1;
-				int resumeState = yystate();
-				yybegin(ST_BLOCK_TAG_INTERNAL_SCAN);
-				if(yy_markedPos == yy_startRead) {
-					String jspContext = primGetNextToken();
-					yybegin(resumeState);
-					return jspContext;
-				}
-				return searchContext;
-			}
-			// 3) yy_currentPos : Check at the start of the block one time
-			// ---
-			// Look for a JSP beginning immediately in the block area; this case wouldn't be handled by the preceding section
-			// since it relies upon yy_currentPos equaling exactly the previous end +1 to work as designed.
-			else if(checkCDATA && !checkedForCDATAOnce && yy_startRead != fLastInternalBlockStart && yy_startRead > 0 &&
-					yy_startRead < yy_buffer.length - 1 && yy_buffer[yy_startRead] == '<' && yy_buffer[yy_startRead + 1] == '%') {
-				checkedForCDATAOnce = true;
-				fLastInternalBlockStart = yy_markedPos = yy_startRead;
-				yy_currentPos = yy_markedPos + 1;
-				int resumeState = yystate();
-				yybegin(ST_BLOCK_TAG_INTERNAL_SCAN);
-				if(yy_markedPos == yy_startRead) {
-					String jspContext = primGetNextToken();
-					yybegin(resumeState);
-					return jspContext;
-				}
-				return searchContext;
-			}
-*/
-			// Check the characters in the target versus the last targetLength characters read from the buffer
-			// and see if it matches
-			if (n == YYEOF) {
-				stillSearching = false;
-			}
-			else {
-				same = true;
-				// safety check for array accesses
-				if(yy_currentPos >= searchStringLength && yy_currentPos <= yy_buffer.length) {
-					for(i = 0; i < searchStringLength; i++) {
-						if(same && fIsCaseSensitiveBlocking)
-							same = yy_buffer[i + yy_currentPos - searchStringLength] == searchString.charAt(i);
-						else if(same && !fIsCaseSensitiveBlocking)
-							same = Character.toLowerCase(yy_buffer[i + yy_currentPos - searchStringLength]) == Character.toLowerCase(searchString.charAt(i));
-					}
-				}
-				// safety check failed; no match is possible right now
-				else {
-					same = false;
-				}
-			}
-			if (same && requireTailSeparator && yy_currentPos < yy_buffer.length) {
-				// Additional check for close tags to ensure that targetString="</script" doesn't match
-				// "</scriptS"
-				lastCheckChar = yy_buffer[yy_currentPos];
-				// Succeed on "</script>" and "</script "
-				if(lastCheckChar == '>' || Character.isWhitespace(lastCheckChar))
-					stillSearching = false;
-			}
-			else {
-				stillSearching = !same || (yy_currentPos < yy_startRead + searchStringLength);
-			}
-		}
-	}
-	if (n != YYEOF || same) {
-		// We've stopped short of the end or definitely found a match
-		yy_markedPos = yy_currentPos - searchStringLength;
-		yy_currentPos = yy_markedPos + 1;
-		// If the searchString occurs at the very beginning of what would have
-		// been a Block, resume scanning normally immediately
-		if (yy_markedPos == yy_startRead) {
-			yybegin(immediateFallbackState);
-			return primGetNextToken();
-		}
-	}
-	else {
-		// We ran through the rest of the input
-		yy_markedPos = yy_currentPos;
-		yy_currentPos++;
-	}
-	yybegin(exitState);
-	// If the ending occurs at the very beginning of what would have
-	// been a Block, resume scanning normally immediately
-	if(yy_markedPos == yy_startRead)
-		return primGetNextToken();
-	return searchContext;
-}
-/**
- * user method 
- * does a lookahead for the current tag name
- */
-private final String doBlockTagScan() throws IOException {
-	fIsCaseSensitiveBlocking = getBlockMarkerCaseSensitivity();
-	return doScan("</" + fCurrentTagName, true, getBlockMarkerAllowsJSP(), true, getBlockMarkerContext(fCurrentTagName), YYINITIAL, YYINITIAL);
-}
-	/**
-	 * user method
-	 *
-	 * Converts the raw context String returned by the primGetNextToken()
-	 * method into a full ITextRegion by pulling in values for the
-	 * current offset within the scanning text.
-	 *
-	 * Returns null when EOF is encountered and attaches intermittently
-	 * discovered whitespace onto the end of useful regions.
-	 *
-	 * Note that this algorithm caches the token following the one being returned
-	 * so that whitespace can be collapsed.
-	 */
-	public final ITextRegion getNextToken() throws IOException {
-		fEmbeddedContainer = null;
-		// load the starting non-whitespace token (assume that it is so)
-		if (fShouldLoadBuffered) {
-			if (fBufferedEmbeddedContainer != null) {
-				ITextRegion container = fBufferedEmbeddedContainer;
-				fBufferedEmbeddedContainer = null;
-				fShouldLoadBuffered = false;
-				return container;
-			}
-			context = fBufferedContext;
-			start = fBufferedStart;
-			textLength = length = fBufferedLength;
-			fShouldLoadBuffered = false;
-		} else {
-			context = primGetNextToken();
-			if (context == PROXY_CONTEXT) {
-				return fEmbeddedContainer;
-			} else if (context == XML_TAG_NAME || f_context == JSP_ROOT_TAG_NAME || f_context == JSP_DIRECTIVE_NAME) {
-				if(containsTagName(yy_buffer, yy_startRead, yy_markedPos-yy_startRead))
-					fCurrentTagName = yytext();
-				else
-					fCurrentTagName = null;
-			} else if (context == XML_TAG_OPEN) {
-				fIsBlockingEnabled = true;
-			} else if (context == XML_END_TAG_OPEN) {
-				fIsBlockingEnabled = false;
-			}
-			start = yychar;
-			textLength = length = yylength();
-			if (yy_atEOF) {
-				fTokenCount++;
-				return null;
-			}
-		}
-		// store the next token
-		f_context = primGetNextToken();
-		if (f_context == PROXY_CONTEXT) {
-			fBufferedEmbeddedContainer = fEmbeddedContainer;
-			fShouldLoadBuffered = true;
-		} else if (f_context == XML_TAG_NAME || f_context == JSP_ROOT_TAG_NAME || f_context == JSP_DIRECTIVE_NAME) {
-			if(containsTagName(yy_buffer, yy_startRead, yy_markedPos-yy_startRead))
-				fCurrentTagName = yytext();
-			else
-				fCurrentTagName = null;
-		} else if (f_context == XML_TAG_OPEN) {
-			fIsBlockingEnabled = true;
-		} else if (f_context == XML_END_TAG_OPEN) {
-			fIsBlockingEnabled = false;
-		}
-		fBufferedContext = f_context;
-		fBufferedStart = yychar;
-		fBufferedLength = yylength();
-		fShouldLoadBuffered = true;
-		if (fBufferedContext == WHITE_SPACE) {
-			fShouldLoadBuffered = false;
-			length += fBufferedLength;
-		}
-		if (context == null) {
-			// EOF
-			if (Debug.debugTokenizer) {
-				System.out.println(getClass().getName() + " discovered " + fTokenCount + " tokens."); //$NON-NLS-2$//$NON-NLS-1$
-			}
-			return null;
-		}
-		fTokenCount++;
-		return fRegionFactory.createToken(context, start, textLength, length, null, fCurrentTagName);
-	}
-	/* user method */
-	public JSPTokenizer(){
-		super();
-	}
-	/* user method */
-	public JSPTokenizer(char[] charArray){
-			this(new CharArrayReader(charArray));
-	}
-	/* user method */
-	public void reset(char[] charArray) {
-		reset(new CharArrayReader(charArray), 0);
-	}
-	/* user method */
-	public void reset(char[] charArray, int newOffset) {
-		reset(new CharArrayReader(charArray), newOffset);
-	}
-	/* user method */
-	public void reset(java.io.InputStream in) {
-		reset(new java.io.InputStreamReader(in), 0);
-	}
-	/* user method */
-	public void reset(java.io.InputStream in, int newOffset) {
-		reset(new java.io.InputStreamReader(in), newOffset);
-	}
-	/* user method */
-	public void reset(java.io.Reader in) {
-		reset(in, 0);
-	}
-	/**
-	 * user method *
-	 *
-	 * Reset internal counters and vars to "newly created" values, in the hopes
-	 * that resetting a pre-existing tokenizer is faster than creating a new one.
-	 *
-	 * This method contains code blocks that were essentially duplicated from the
-	 * <em>generated</em> output of this specification before this method was
-	 * added.  Those code blocks were under the above copyright.
-	 */
-	public void reset(java.io.Reader in, int newOffset) {
-		if (Debug.debugTokenizer) {
-			System.out.println("resetting tokenizer");//$NON-NLS-1$
-		}
-		fOffset = newOffset;
-	
-		/* the input device */
-		yy_reader = in;
-	
-		/* the current state of the DFA */
-		yy_state = 0;
-	
-		/* the current lexical state */
-		yy_lexical_state = YYINITIAL;
-	
-		/* this buffer contains the current text to be matched and is
-		the source of the yytext() string */
-		java.util.Arrays.fill(yy_buffer, (char)0);
-	
-		/* the textposition at the last accepting state */
-		yy_markedPos = 0;
-	
-		/* the textposition at the last state to be included in yytext */
-		yy_pushbackPos = 0;
-	
-		/* the current text position in the buffer */
-		yy_currentPos = 0;
-	
-		/* startRead marks the beginning of the yytext() string in the buffer */
-		yy_startRead = 0;
-	
-		/** 
-		 * endRead marks the last character in the buffer, that has been read
-		 * from input 
-		 */
-		yy_endRead = 0;
-	
-		/* number of newlines encountered up to the start of the matched text */
-		yyline = 0;
-	
-		/* the number of characters up to the start of the matched text */
-		yychar = 0;
-	
-		/* yy_atEOF == true <=> the scanner has returned a value for EOF */
-		yy_atEOF = false;
-	
-		/* denotes if the user-EOF-code has already been executed */
-		yy_eof_done = false;
-	
-	
-		/* user vars: */
-		fTokenCount = 0;
-	 
-		fShouldLoadBuffered = false;
-		fBufferedContext = null;
-		fBufferedStart = 1;
-		fBufferedLength = 0;
-		fStateStack = new IntStack();
-	
-		fLastInternalBlockStart = -1;
-	
-		context = null;
-		start = 0;
-		textLength = 0;
-		length = 0;
-	
-		fEmbeddedContainer = null;
-		
-		fELlevel = 0;
-	}
-	/**
-	 * user method
-	 *
-	 * @see com.ibm.sed.parser.BlockTokenizer#newInstance()
-	 */
-	public BlockTokenizer newInstance() {
-		JSPTokenizer newInstance = new JSPTokenizer();
-		// global tagmarkers can be shared; they have no state and 
-		// are never destroyed (e.g. 'release')
-		for(int i = 0; i < fBlockMarkers.size(); i++) {
-			BlockMarker blockMarker = (BlockMarker) fBlockMarkers.get(i);
-			if(blockMarker.isGlobal())
-				newInstance.addBlockMarker(blockMarker);
-		}
-		for(int i = 0; i < fNestablePrefixes.size(); i++) {
-			TagMarker marker = (TagMarker) fNestablePrefixes.get(i);
-			if(marker.isGlobal())
-				newInstance.addNestablePrefix(marker);
-		}
-		return newInstance;
-	}
-	/* user method */
-	private final String scanXMLCommentText() throws IOException {
-		// Scan for '-->' and return the text up to that point as
-		//   XML_COMMENT_TEXT unless the string occurs IMMEDIATELY, in which
-		//  case change to the ST_XML_COMMENT_END state and return the next
-		//  context as usual.
-		return doScan("-->", false, true, true, XML_COMMENT_TEXT, ST_XML_COMMENT_END, ST_XML_COMMENT_END);
-	}
-	/* user method */
-	private final String scanJSPCommentText() throws IOException {
-		// Scan for '--%>' and return the text up to that point as
-		//   JSP_COMMENT_TEXT unless the string occurs IMMEDIATELY, in which
-		//  case change to the ST_JSP_COMMENT_END state and return the next
-		//  context as usual.
-		return doScan("--%>", false, false, true, JSP_COMMENT_TEXT, ST_JSP_COMMENT_END, ST_JSP_COMMENT_END);
-	}
-
-
-  /**
-   * Creates a new scanner
-   * There is also a java.io.InputStream version of this constructor.
-   *
-   * @param   in  the java.io.Reader to read input from.
-   */
-  public JSPTokenizer(java.io.Reader in) {
-    this.yy_reader = in;
-  }
-
-  /**
-   * Creates a new scanner.
-   * There is also java.io.Reader version of this constructor.
-   *
-   * @param   in  the java.io.Inputstream to read input from.
-   */
-  public JSPTokenizer(java.io.InputStream in) {
-    this(new java.io.InputStreamReader(in));
-  }
-
-  /** 
-   * Unpacks the compressed DFA transition table.
-   *
-   * @param packed   the packed transition table
-   * @return         the unpacked transition table
-   */
-  private static int [] yy_unpack(String packed) {
-    int [] trans = new int[28900];
-    int i = 0;  /* index in packed string  */
-    int j = 0;  /* index in unpacked array */
-    while (i < 7180) {
-      int count = packed.charAt(i++);
-      int value = packed.charAt(i++);
-      value--;
-      do trans[j++] = value; while (--count > 0);
-    }
-    return trans;
-  }
-
-  /** 
-   * Unpacks the compressed character translation table.
-   *
-   * @param packed   the packed character translation table
-   * @return         the unpacked character translation table
-   */
-  private static char [] yy_unpack_cmap(String packed) {
-    char [] map = new char[0x10000];
-    int i = 0;  /* index in packed string  */
-    int j = 0;  /* index in unpacked array */
-    while (i < 1376) {
-      int  count = packed.charAt(i++);
-      char value = packed.charAt(i++);
-      do map[j++] = value; while (--count > 0);
-    }
-    return map;
-  }
-
-
-  /**
-   * Gets the next input character.
-   *
-   * @return      the next character of the input stream, EOF if the
-   *              end of the stream is reached.
-   * @exception   IOException  if any I/O-Error occurs
-   */
-  private int yy_advance() throws java.io.IOException {
-
-    /* standard case */
-    if (yy_currentPos < yy_endRead) return yy_buffer[yy_currentPos++];
-
-    /* if the eof is reached, we don't need to work hard */ 
-    if (yy_atEOF) return YYEOF;
-
-    /* otherwise: need to refill the buffer */
-
-    /* first: make room (if you can) */
-    if (yy_startRead > 0) {
-      System.arraycopy(yy_buffer, yy_startRead, 
-                       yy_buffer, 0, 
-                       yy_endRead-yy_startRead);
-
-      /* translate stored positions */
-      yy_endRead-= yy_startRead;
-      yy_currentPos-= yy_startRead;
-      yy_markedPos-= yy_startRead;
-      yy_pushbackPos-= yy_startRead;
-      yy_startRead = 0;
-    }
-
-    /* is the buffer big enough? */
-    if (yy_currentPos >= yy_buffer.length) {
-      /* if not: blow it up */
-      char newBuffer[] = new char[yy_currentPos*2];
-      System.arraycopy(yy_buffer, 0, newBuffer, 0, yy_buffer.length);
-      yy_buffer = newBuffer;
-    }
-
-    /* finally: fill the buffer with new input */
-    int numRead = yy_reader.read(yy_buffer, yy_endRead, 
-                                            yy_buffer.length-yy_endRead);
-
-    if ( numRead == -1 ) return YYEOF;
-
-    yy_endRead+= numRead;
-
-    return yy_buffer[yy_currentPos++];
-  }
-
-    
-  /**
-   * Closes the input stream.
-   */
-  final public void yyclose() throws java.io.IOException {
-    yy_atEOF = true;            /* indicate end of file */
-    yy_endRead = yy_startRead;  /* invalidate buffer    */
-    yy_reader.close();
-  }
-
-
-  /**
-   * Returns the current lexical state.
-   */
-  final public int yystate() {
-    return yy_lexical_state;
-  }
-
-  /**
-   * Enters a new lexical state
-   *
-   * @param newState the new lexical state
-   */
-  final public void yybegin(int newState) {
-    yy_lexical_state = newState;
-  }
-
-
-  /**
-   * Returns the text matched by the current regular expression.
-   */
-  final public String yytext() {
-    return new String( yy_buffer, yy_startRead, yy_markedPos-yy_startRead );
-  }
-
-  /**
-   * Returns the length of the matched text region.
-   */
-  final public int yylength() {
-    return yy_markedPos-yy_startRead;
-  }
-
-
-  /**
-   * Reports an error that occured while scanning - from the SED JFlex skeleton
-   *
-   * @param   errorCode  the code of the errormessage to display
-   */
-  private void yy_ScanError(int errorCode) {
-    try {
-      Logger.log(Logger.ERROR, YY_ERROR_MSG[errorCode]);
-    }
-    catch (ArrayIndexOutOfBoundsException e) {
-      Logger.log(Logger.ERROR, YY_ERROR_MSG[YY_UNKNOWN_ERROR]);
-    }
-    // DO NOT EXIT the VM on an error
-    // System.exit(1);
-  } 
-
-
-  /**
-   * Pushes the specified amount of characters back into the input stream.
-   *
-   * They will be read again by then next call of the scanning method
-   *
-   * @param number  the number of characters to be read again.
-   *                This number must not be greater than yylength()!
-   */
-  void yypushback(int number) {
-    if ( number > yylength() )
-      yy_ScanError(YY_PUSHBACK_2BIG);
-
-    yy_markedPos -= number;
-  }
-
-	/**
-	 * user method - skeleton.sed
-	 */
-	protected final boolean containsTagName(char[] markerTagName, int offset, int tagnameLength) {
-		for(int j = 0; j < fBlockMarkers.size(); j++) {
-			BlockMarker marker = (BlockMarker)fBlockMarkers.get(j);
-			if(marker.getTagName().length() == tagnameLength) {
-				boolean matchesSoFar = true;
-				for(int i = 0; i < tagnameLength && matchesSoFar; i++) {
-					if(marker.isCaseSensitive()) {
-						if(marker.getTagName().charAt(i) != markerTagName[i + offset])
-							matchesSoFar = false;
-					}
-					else {
-						if(Character.toLowerCase(marker.getTagName().charAt(i)) != Character.toLowerCase(markerTagName[i + offset]))
-							matchesSoFar = false;
-					}
-				}
-				if(matchesSoFar)
-					return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * user method - skeleton.sed
-	 *
-	 * Return ALL of the regions scannable within the remaining text
-	 * Note: for verification use
-	 */
-	public final List getRegions() {
-		List tokens = new ArrayList();
-		ITextRegion region = null;
-		try {
-			region = getNextToken();
-			while(region != null) {
-				if (region != null) {
-					tokens.add(region);
-				}
-				region = getNextToken();
-			}
-		}
-		catch (StackOverflowError e) {
-			Logger.logException(getClass().getName()+": input could not be tokenized correctly at position " + getOffset(), e);//$NON-NLS-1$
-			throw e;
-		}
-		catch (Exception e) {
-			// Since this is convenience method and NOT the recommended 
-			// way of getting tokens, many errors are simply hidden
-			Logger.logException("Exception not handled retrieving regions: " + e.getLocalizedMessage(), e);//$NON-NLS-1$
-		}
-		return tokens;
-	}
-	/**
-	 * user method - skeleton.sed
-	 */
-	private final void dump(String s) {
-		if (Debug.debugTokenizer) {
-			System.out.println(s + " (" + yychar + "-" + //$NON-NLS-2$//$NON-NLS-1$
-				(yylength() + yychar) + "):\'" +//$NON-NLS-1$
-					StringUtils.escape(yytext()) + "\'");//$NON-NLS-1$
-		}
-	}
-	/* user method  - skeleton.sed */
-	public final boolean isEOF() {
-		return yy_atEOF;
-	}
-/* user method - skeleton.sed */
-protected final boolean containsTagName(String markerTagName) {
-	Iterator blocks = fBlockMarkers.iterator();
-	while(blocks.hasNext()) {
-		BlockMarker marker = (BlockMarker)blocks.next();
-		if(marker.isCaseSensitive()) {
-			if(marker.getTagName().equals(markerTagName))
-				return true;
-		}
-		else {
-			if(marker.getTagName().equalsIgnoreCase(markerTagName))
-				return true;
-		}
-	}
-	return false;
-}
-
-  /**
-   * Contains user EOF-code, which will be executed exactly once,
-   * when the end of file is reached
-   */
-  private void yy_do_eof() {
-    if (!yy_eof_done) {
-      yy_eof_done = true;
-    // do nothing, this is the downstream parser's job
-
-    }
-  }
-
-
-  /**
-   * Resumes scanning until the next regular expression is matched,
-   * the end of input is encountered or an I/O-Error occurs.
-   *
-   * @return      the next token
-   * @exception   IOException  if any I/O-Error occurs
-   */
-  public String primGetNextToken() throws java.io.IOException {
-    int yy_input;
-    int yy_action;
-
-    yy_pushbackPos = -1;
-    boolean yy_was_pushback;
-
-    while (true) {
-
-      yychar+= yylength();
-
-      boolean yy_counted = false;
-      for (yy_currentPos = yy_startRead; yy_currentPos < yy_markedPos;
-                                                      yy_currentPos++) {
-        switch (yy_buffer[yy_currentPos]) {
-        case '\r':
-          yyline++;
-          yy_counted = true;
-          break;
-        case '\n':
-          if (yy_counted)
-            yy_counted = false;
-          else {
-            yyline++;
-          }
-          break;
-        default:
-          yy_counted = false;
-        }
-      }
-
-      if (yy_counted) {
-        if ( yy_advance() == '\n' ) yyline--;
-        if ( !yy_atEOF ) yy_currentPos--;
-      }
-
-      yy_action = -1;
-
-      yy_currentPos = yy_startRead = yy_markedPos;
-
-      yy_state = yy_lexical_state;
-
-      yy_was_pushback = false;
-
-      yy_forAction: {
-        while (true) {
-    
-          yy_input = yy_advance();
-
-          if ( yy_input == YYEOF ) break yy_forAction;
-
-          int yy_next = yytrans[ yy_rowMap[yy_state] + yycmap[yy_input] ];
-          if (yy_next == -1) break yy_forAction;
-          yy_state = yy_next;
-
-          int yy_attributes = YY_ATTRIBUTE[yy_state];
-          if ( (yy_attributes & 2) > 0 )
-            yy_pushbackPos = yy_currentPos;
-
-          if ( (yy_attributes & 1) > 0 ) {
-            yy_was_pushback = (yy_attributes & 4) > 0;
-            yy_action = yy_state; 
-            yy_markedPos = yy_currentPos; 
-            if ( (yy_attributes & 8) > 0 ) break yy_forAction;
-          }
-
-        }
-      }
-
-      if (yy_was_pushback)
-        yy_markedPos = yy_pushbackPos;
-
-      switch (yy_action) {    
-
-        case 578: 
-        case 583: 
-        case 590: 
-        case 595: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("jsp directive tag name");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_XML_ATTRIBUTE_NAME);
-        return JSP_DIRECTIVE_NAME;
- }
-        case 611: break;
-        case 542: 
-        case 544: 
-        case 545: 
-        case 546: 
-        case 547: 
-        case 548: 
-        case 549: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nCDATA start");//$NON-NLS-1$
-	fStateStack.push(yystate());
-	yybegin(ST_CDATA_TEXT);
-	return XML_CDATA_OPEN;
- }
-        case 612: break;
-        case 534: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("jsp:root tag name");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_XML_ATTRIBUTE_NAME);
-        return JSP_ROOT_TAG_NAME;
- }
-        case 613: break;
-        case 526: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("element");//$NON-NLS-1$
-	yybegin(ST_XML_ELEMENT_DECLARATION);
-	return XML_ELEMENT_DECLARATION;
- }
-        case 614: break;
-        case 525: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attlist");//$NON-NLS-1$
-	yybegin(ST_XML_ATTLIST_DECLARATION);
-	return XML_ATTLIST_DECLARATION;
- }
-        case 615: break;
-        case 524: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype");//$NON-NLS-1$
-	yybegin(ST_XML_DOCTYPE_DECLARATION);
-	return XML_DOCTYPE_DECLARATION;
- }
-        case 616: break;
-        case 510: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype external id");//$NON-NLS-1$
-	fEmbeddedHint = XML_DOCTYPE_EXTERNAL_ID_PUBREF;
-	yybegin(ST_XML_DOCTYPE_ID_PUBLIC);
-	return XML_DOCTYPE_EXTERNAL_ID_PUBLIC;
- }
-        case 617: break;
-        case 509: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype external id");//$NON-NLS-1$
-	fEmbeddedHint = XML_DOCTYPE_EXTERNAL_ID_SYSREF;
-	yybegin(ST_XML_DOCTYPE_ID_SYSTEM);
-	return XML_DOCTYPE_EXTERNAL_ID_SYSTEM;
- }
-        case 618: break;
-        case 503: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction target");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_DHTML_ATTRIBUTE_NAME);
-        return XML_TAG_NAME;
- }
-        case 619: break;
-        case 481: 
-        case 519: 
-        case 520: 
-          { 
-	return JSP_VBL_QUOTED_CONTENT;
- }
-        case 620: break;
-        case 476: 
-        case 515: 
-        case 516: 
-          { 
-	return JSP_EL_QUOTED_CONTENT;
- }
-        case 621: break;
-        case 472: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nJSP comment close");//$NON-NLS-1$
-	yybegin(YYINITIAL);
-	return JSP_COMMENT_CLOSE;
- }
-        case 622: break;
-        case 471: 
-          { 
-	yybegin(ST_JSP_COMMENT);
-	assembleEmbeddedContainer(JSP_COMMENT_OPEN, JSP_COMMENT_CLOSE);
-	if(yystate() == ST_BLOCK_TAG_INTERNAL_SCAN)
-		yybegin(ST_BLOCK_TAG_SCAN);
-	return PROXY_CONTEXT;
- }
-        case 623: break;
-        case 460: 
-          { 
-	if (Debug.debugTokenizer) {
-		System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-	}
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	fStateStack.push(yystate());
-	if(yylength() > 2)
-		yypushback(yylength() -2);
-	if(Debug.debugTokenizer)
-		dump("VBL in attr value");//$NON-NLS-1$
-	yybegin(ST_JSP_VBL);
-	fELlevel++;
-	assembleEmbeddedContainer(JSP_VBL_OPEN, new String[]{JSP_VBL_CLOSE});
-	fStateStack.pop();
-	yybegin(ST_XML_ATTRIBUTE_NAME);
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-	return PROXY_CONTEXT;
- }
-        case 624: break;
-        case 459: 
-          { 
-	if (Debug.debugTokenizer) {
-		System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-	}
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	fStateStack.push(yystate());
-	if(yylength() > 2)
-		yypushback(yylength() -2);
-	if(Debug.debugTokenizer)
-		dump("EL in attr value");//$NON-NLS-1$
-	yybegin(ST_JSP_EL);
-	fELlevel++;
-	assembleEmbeddedContainer(JSP_EL_OPEN, new String[]{JSP_EL_CLOSE});
-	fStateStack.pop();
-	yybegin(ST_XML_ATTRIBUTE_NAME);
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-	return PROXY_CONTEXT;
- }
-        case 625: break;
-        case 454: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nCharRef");//$NON-NLS-1$
-	return XML_CHAR_REFERENCE;
- }
-        case 626: break;
-        case 451: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\ncomment start");//$NON-NLS-1$
-	fEmbeddedHint = XML_COMMENT_TEXT;
-	fEmbeddedPostState = ST_XML_COMMENT;
-	yybegin(ST_XML_COMMENT);
-	return XML_COMMENT_OPEN;
- }
-        case 627: break;
-        case 450: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nJSP comment start");//$NON-NLS-1$
-	yybegin(ST_JSP_COMMENT);
-	return JSP_COMMENT_OPEN;
- }
-        case 628: break;
-        case 383: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction target");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_XML_PI_ATTRIBUTE_NAME);
-        return XML_TAG_NAME;
- }
-        case 629: break;
-        case 382: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("comment end");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-	yybegin(YYINITIAL);
-	return XML_COMMENT_CLOSE;
- }
-        case 630: break;
-        case 381: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("CDATA end");//$NON-NLS-1$
-	yybegin(fStateStack.pop());
-	return XML_CDATA_CLOSE;
- }
-        case 631: break;
-        case 380: 
-          { 
-	yybegin(ST_JSP_VBL);
-	if(yylength() > 2)
-		yypushback(yylength() - 2);
-	fELlevel++;
-	fEmbeddedHint = XML_CONTENT;
-	fEmbeddedPostState = YYINITIAL;
-	assembleEmbeddedContainer(JSP_VBL_OPEN, JSP_VBL_CLOSE);
-	fEmbeddedHint = XML_CONTENT;
-	yybegin(YYINITIAL);
-	return PROXY_CONTEXT;
- }
-        case 632: break;
-        case 379: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nPEReference");//$NON-NLS-1$
-	return XML_PE_REFERENCE;
- }
-        case 633: break;
-        case 378: 
-          { 
-	yybegin(ST_JSP_EL);
-	if(yylength() > 2)
-		yypushback(yylength() - 2);
-	fELlevel++;
-	fEmbeddedHint = XML_CONTENT;
-	fEmbeddedPostState = YYINITIAL;
-	assembleEmbeddedContainer(JSP_EL_OPEN, JSP_EL_CLOSE);
-	fEmbeddedHint = XML_CONTENT;
-	yybegin(YYINITIAL);
-	return PROXY_CONTEXT;
- }
-        case 634: break;
-        case 375: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nEntityRef");//$NON-NLS-1$
-	return XML_ENTITY_REFERENCE;
- }
-        case 635: break;
-        case 369: 
-        case 406: 
-        case 412: 
-        case 418: 
-        case 421: 
-        case 424: 
-        case 427: 
-        case 431: 
-        case 435: 
-        case 437: 
-        case 440: 
-        case 443: 
-        case 447: 
-          { 
-	/* JSP expression begun (anywhere)
-	 * A consequence of the start anywhere possibility is that the
-	 *  incoming state must be checked to see if it's erroneous
-	 *  due to the order of precedence generated
-	 */
-	// begin sanity checks
-	if(yystate() == ST_JSP_CONTENT) {
-		// at the beginning?!
-		yypushback(2);
-		return JSP_CONTENT;
-	}
-	else if(yystate() == ST_BLOCK_TAG_SCAN) {
-		yypushback(3);
-		return doBlockTagScan();
-	}
-	else if(yystate() == ST_XML_COMMENT) {
-		yypushback(3);
-		return scanXMLCommentText();
-	}
-	else if(yystate() == ST_JSP_COMMENT) {
-		yypushback(3);
-		return scanJSPCommentText();
-	}
-	// end sanity checks
-	fStateStack.push(yystate());
-	if(fStateStack.peek()==YYINITIAL) {
-		// the simple case, just an expression out in content
-		if(Debug.debugTokenizer)
-			dump("\nJSP expression start");//$NON-NLS-1$
-		yybegin(ST_JSP_CONTENT);
-		return JSP_EXPRESSION_OPEN;
-	}
-	else {
-		if (Debug.debugTokenizer) {
-			System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-		}
-		if(Debug.debugTokenizer)
-			dump("JSP expression start");//$NON-NLS-1$
-		if(yystate() == ST_XML_ATTRIBUTE_VALUE_DQUOTED)
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_VALUE_DQUOTED;
-		else if(yystate() == ST_XML_ATTRIBUTE_VALUE_SQUOTED)
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_VALUE_SQUOTED;
-		else if(yystate() == ST_CDATA_TEXT) {
-			fEmbeddedPostState = ST_CDATA_TEXT;
-			fEmbeddedHint = XML_CDATA_TEXT;
-		}
-		yybegin(ST_JSP_CONTENT);
-		assembleEmbeddedContainer(JSP_EXPRESSION_OPEN, JSP_CLOSE);
-		if(yystate() == ST_BLOCK_TAG_INTERNAL_SCAN) {
-			yybegin(ST_BLOCK_TAG_SCAN);
-			return BLOCK_TEXT;
-		}
-		// required help for successive embedded regions
-		if(yystate() == ST_XML_TAG_NAME) {
-			fEmbeddedHint = XML_TAG_NAME;
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-		}
-		else if((yystate() == ST_XML_ATTRIBUTE_NAME || yystate() == ST_XML_EQUALS)) {
-			fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-			fEmbeddedPostState = ST_XML_EQUALS;
-		}
-		else if(yystate() == ST_XML_ATTRIBUTE_VALUE) {
-			fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-		}
-		return PROXY_CONTEXT;
-	}
- }
-        case 636: break;
-        case 368: 
-        case 405: 
-        case 411: 
-        case 417: 
-        case 420: 
-        case 423: 
-        case 426: 
-        case 430: 
-        case 434: 
-        case 436: 
-        case 439: 
-        case 442: 
-        case 446: 
-          { 
-	/* JSP declaration begun (anywhere)
-	 * A consequence of the start anywhere possibility is that the
-	 *  incoming state must be checked to see if it's erroneous
-	 *  due to the order of precedence generated
-	 */
-	// begin sanity checks
-	if(yystate() == ST_JSP_CONTENT) {
-		// at the beginning?!
-		yypushback(2);
-		return JSP_CONTENT;
-	}
-	else if(yystate() == ST_BLOCK_TAG_SCAN) {
-		yypushback(3);
-		return doBlockTagScan();
-	}
-	else if(yystate() == ST_XML_COMMENT) {
-		yypushback(3);
-		return scanXMLCommentText();
-	}
-	else if(yystate() == ST_JSP_COMMENT) {
-		yypushback(3);
-		return scanJSPCommentText();
-	}
-	// end sanity checks
-	fStateStack.push(yystate());
-	if(fStateStack.peek()==YYINITIAL) {
-		// the simple case, just a declaration out in content
-		if(Debug.debugTokenizer)
-			dump("\nJSP declaration start");//$NON-NLS-1$
-		yybegin(ST_JSP_CONTENT);
-		return JSP_DECLARATION_OPEN;
-	}
-	else {
-		if (Debug.debugTokenizer) {
-			System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-		}
-		if(Debug.debugTokenizer)
-			dump("JSP declaration start");//$NON-NLS-1$
-		if(yystate() == ST_XML_ATTRIBUTE_VALUE_DQUOTED)
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_VALUE_DQUOTED;
-		else if(yystate() == ST_XML_ATTRIBUTE_VALUE_SQUOTED)
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_VALUE_SQUOTED;
-		else if(yystate() == ST_CDATA_TEXT) {
-			fEmbeddedPostState = ST_CDATA_TEXT;
-			fEmbeddedHint = XML_CDATA_TEXT;
-		}
-		yybegin(ST_JSP_CONTENT);
-		assembleEmbeddedContainer(JSP_DECLARATION_OPEN, JSP_CLOSE);
-		if(yystate() == ST_BLOCK_TAG_INTERNAL_SCAN) {
-			yybegin(ST_BLOCK_TAG_SCAN);
-			return BLOCK_TEXT;
-		}
-		// required help for successive embedded regions
-		if(yystate() == ST_XML_TAG_NAME) {
-			fEmbeddedHint = XML_TAG_NAME;
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-		}
-		else if((yystate() == ST_XML_ATTRIBUTE_NAME || yystate() == ST_XML_EQUALS)) {
-			fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-			fEmbeddedPostState = ST_XML_EQUALS;
-		}
-		else if(yystate() == ST_XML_ATTRIBUTE_VALUE) {
-			fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-		}
-		return PROXY_CONTEXT;
-	}
- }
-        case 637: break;
-        case 367: 
-          { 
-	fStateStack.push(yystate());
-	if(fStateStack.peek()==YYINITIAL) {
-		if(Debug.debugTokenizer)
-			dump("\nJSP directive start");//$NON-NLS-1$
-		yybegin(ST_JSP_DIRECTIVE_NAME);
-		return JSP_DIRECTIVE_OPEN;
-	}
-	else {
-		if (Debug.debugTokenizer) {
-			System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-		}
-		if(Debug.debugTokenizer)
-			dump("JSP directive start");//$NON-NLS-1$
-		yybegin(ST_JSP_DIRECTIVE_NAME);
-		assembleEmbeddedContainer(JSP_DIRECTIVE_OPEN, new String[]{JSP_DIRECTIVE_CLOSE, JSP_CLOSE});
-		if(yystate() == ST_BLOCK_TAG_INTERNAL_SCAN) {
-			yybegin(ST_BLOCK_TAG_SCAN);
-			return BLOCK_TEXT;
-		}
-		return PROXY_CONTEXT;
-	}
- }
-        case 638: break;
-        case 357: 
-          { 
-	yybegin(ST_JSP_VBL_DQUOTES_END);
-	return JSP_VBL_QUOTED_CONTENT;
- }
-        case 639: break;
-        case 353: 
-          { 
-	yybegin(ST_JSP_VBL_SQUOTES_END);
-	return JSP_VBL_QUOTED_CONTENT;
- }
-        case 640: break;
-        case 351: 
-          { 
-	fELlevel++;
-	if(fELlevel == 1) {
-		return JSP_VBL_OPEN;
-	}
- }
-        case 641: break;
-        case 341: 
-          { 
-	yybegin(ST_JSP_EL_DQUOTES_END);
-	return JSP_EL_QUOTED_CONTENT;
- }
-        case 642: break;
-        case 337: 
-          { 
-	yybegin(ST_JSP_EL_SQUOTES_END);
-	return JSP_EL_QUOTED_CONTENT;
- }
-        case 643: break;
-        case 335: 
-          { 
-	//System.out.println(JSP_EL_CONTENT+ ":[" + yytext() + "]");
-	return JSP_EL_CONTENT;
- }
-        case 644: break;
-        case 334: 
-          { 
-	fELlevel++;
-	if(fELlevel == 1) {
-		return JSP_EL_OPEN;
-	}
- }
-        case 645: break;
-        case 331: 
-          { 
-	int enterState = yystate();
-	yybegin(ST_JSP_DQUOTED_VBL);
-	assembleEmbeddedContainer(JSP_VBL_OPEN, new String[]{JSP_VBL_CLOSE, XML_TAG_ATTRIBUTE_VALUE_DQUOTE});
-	// abort early when an unescaped double quote is found in the VBL
-	if(fEmbeddedContainer.getLastRegion().getType().equals(XML_TAG_ATTRIBUTE_VALUE_DQUOTE)) {
-		yybegin(ST_ABORT_EMBEDDED);
-		fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	}
-	else {
-		yybegin(enterState);
-	}
-	return PROXY_CONTEXT;
- }
-        case 646: break;
-        case 330: 
-          { 
-	int enterState = yystate();
-	yybegin(ST_JSP_DQUOTED_EL);
-	assembleEmbeddedContainer(JSP_EL_OPEN, new String[]{JSP_EL_CLOSE, XML_TAG_ATTRIBUTE_VALUE_DQUOTE});
-	// abort early when an unescaped double quote is found in the EL
-	if(fEmbeddedContainer.getLastRegion().getType().equals(XML_TAG_ATTRIBUTE_VALUE_DQUOTE)) {
-		yybegin(ST_ABORT_EMBEDDED);
-		fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	}
-	else {
-		yybegin(enterState);
-	}
-	return PROXY_CONTEXT;
- }
-        case 647: break;
-        case 328: 
-          { 
-	int enterState = yystate();
-	yybegin(ST_JSP_SQUOTED_VBL);
-	assembleEmbeddedContainer(JSP_VBL_OPEN, new String[]{JSP_VBL_CLOSE, XML_TAG_ATTRIBUTE_VALUE_SQUOTE});
-	// abort early when an unescaped single quote is found in the VBL
-	if(fEmbeddedContainer.getLastRegion().getType().equals(XML_TAG_ATTRIBUTE_VALUE_SQUOTE)) {
-		yybegin(ST_ABORT_EMBEDDED);
-		fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	}
-	else {
-		yybegin(enterState);
-	}
-	return PROXY_CONTEXT;
- }
-        case 648: break;
-        case 327: 
-          { 
-	int enterState = yystate();
-	yybegin(ST_JSP_SQUOTED_EL);
-	assembleEmbeddedContainer(JSP_EL_OPEN, new String[]{JSP_EL_CLOSE, XML_TAG_ATTRIBUTE_VALUE_SQUOTE});
-	// abort early when an unescaped single quote is found in the EL
-	if(fEmbeddedContainer.getLastRegion().getType().equals(XML_TAG_ATTRIBUTE_VALUE_SQUOTE)) {
-		yybegin(ST_ABORT_EMBEDDED);
-		fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	}
-	else {
-		yybegin(enterState);
-	}
-	return PROXY_CONTEXT;
- }
-        case 649: break;
-        case 326: 
-          { 
-	if (Debug.debugTokenizer) {
-		System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-	}
-	int incomingState = yystate();
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	if(Debug.debugTokenizer)
-		dump("JSP attribute value start - end tag");//$NON-NLS-1$
-	yybegin(ST_XML_TAG_NAME);
-	assembleEmbeddedContainer(XML_END_TAG_OPEN, new String[]{XML_TAG_CLOSE,XML_EMPTY_TAG_CLOSE});
-	if(yystate() != ST_ABORT_EMBEDDED)
-        yybegin(incomingState);
-	return PROXY_CONTEXT;
- }
-        case 650: break;
-        case 284: 
-        case 296: 
-        case 302: 
-          { 
-	return XML_DOCTYPE_INTERNAL_SUBSET;
- }
-        case 651: break;
-        case 272: 
-          { 
-	String tagName = yytext().substring(1);
-	// pushback to just after the opening bracket
-	yypushback(yylength() - 1);
-	if(!isNestable(tagName)) {
-		yybegin(ST_XML_TAG_NAME);
-		return XML_TAG_OPEN;
-	}
-	if(Debug.debugTokenizer)
-		dump("tag in place of attr value");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	fStateStack.push(yystate());
-	// embedded container should be looking for the name (again) next
-	yybegin(ST_XML_TAG_NAME);
-	assembleEmbeddedTagSequence(XML_TAG_OPEN, tagName); // ?
-	fStateStack.pop();
-	yybegin(ST_XML_ATTRIBUTE_NAME);
-	return PROXY_CONTEXT;
- }
-        case 652: break;
-        case 270: 
-          { 
-	String tagName = yytext().substring(1);
-	// pushback to just after the opening bracket
-	yypushback(yylength() - 1);
-	if(!isNestable(tagName)) {
-		yybegin(ST_XML_TAG_NAME);
-		return XML_TAG_OPEN;
-	}
-	if(Debug.debugTokenizer)
-		dump("tag in place of attr name");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	fStateStack.push(yystate());
-	// embedded container should be looking for the name (again) next
-	yybegin(ST_XML_TAG_NAME);
-	assembleEmbeddedTagSequence(XML_TAG_OPEN, tagName); // ?
-	fStateStack.pop();
-	yybegin(ST_XML_EQUALS);
-	return PROXY_CONTEXT;
- }
-        case 653: break;
-        case 268: 
-          { 
-        yybegin(YYINITIAL);
-	fEmbeddedHint = UNDEFINED;
-	if(Debug.debugTokenizer)
-		dump("empty tag close");//$NON-NLS-1$
-        return XML_EMPTY_TAG_CLOSE;
- }
-        case 654: break;
-        case 125: 
-          { 
-	if (Debug.debugTokenizer) {
-		System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-	}
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_VALUE_DQUOTED;
-	yybegin(ST_XML_ATTRIBUTE_VALUE_DQUOTED);
-	fStateStack.push(yystate());
-	if(Debug.debugTokenizer)
-		dump("JSP attribute value start - complex double quoted");//$NON-NLS-1$
-	assembleEmbeddedContainer(XML_TAG_ATTRIBUTE_VALUE_DQUOTE, XML_TAG_ATTRIBUTE_VALUE_DQUOTE);
-	fStateStack.pop();
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-	yybegin(ST_XML_ATTRIBUTE_NAME);
-	return PROXY_CONTEXT;
- }
-        case 655: break;
-        case 123: 
-          { 
-	if (Debug.debugTokenizer) {
-		System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-	}
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	fStateStack.push(yystate());
-	if(Debug.debugTokenizer)
-		dump("JSP tag embedded name start - start tag");//$NON-NLS-1$
-	yybegin(ST_XML_TAG_NAME);
-	assembleEmbeddedContainer(XML_TAG_OPEN, new String[]{XML_TAG_CLOSE,XML_EMPTY_TAG_CLOSE});
-	fStateStack.pop();
-        yybegin(ST_XML_ATTRIBUTE_NAME);
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-	return PROXY_CONTEXT;
- }
-        case 656: break;
-        case 122: 
-        case 127: 
-        case 128: 
-        case 274: 
-        case 278: 
-        case 279: 
-        case 388: 
-        case 391: 
-        case 458: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attr value");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_XML_ATTRIBUTE_NAME);
-        return XML_TAG_ATTRIBUTE_VALUE;
- }
-        case 657: break;
-        case 121: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("equals");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-        yybegin(ST_XML_ATTRIBUTE_VALUE);
-        return XML_TAG_ATTRIBUTE_EQUALS;
- }
-        case 658: break;
-        case 120: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attr name");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-        yybegin(ST_XML_EQUALS);
-        return XML_TAG_ATTRIBUTE_NAME;
- }
-        case 659: break;
-        case 116: 
-        case 117: 
-        case 118: 
-        case 269: 
-        case 387: 
-        case 457: 
-        case 485: 
-        case 486: 
-        case 504: 
-        case 505: 
-        case 522: 
-        case 523: 
-        case 535: 
-        case 543: 
-        case 550: 
-        case 551: 
-        case 552: 
-        case 553: 
-        case 555: 
-        case 561: 
-        case 562: 
-        case 563: 
-        case 564: 
-        case 565: 
-        case 571: 
-        case 572: 
-        case 573: 
-        case 574: 
-        case 575: 
-        case 581: 
-        case 582: 
-        case 584: 
-        case 585: 
-        case 591: 
-        case 592: 
-        case 593: 
-        case 594: 
-        case 600: 
-        case 601: 
-        case 602: 
-        case 603: 
-        case 606: 
-        case 607: 
-        case 609: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("tag name");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_XML_ATTRIBUTE_NAME);
-        return XML_TAG_NAME;
- }
-        case 660: break;
-        case 114: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("tag close");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-	if(isBlockMarker()) {
-		fEmbeddedHint = getBlockMarkerContext();
-		fEmbeddedPostState = ST_BLOCK_TAG_SCAN;
-        	yybegin(ST_BLOCK_TAG_SCAN);
-	}
-	else
-        	yybegin(YYINITIAL);
-        return XML_TAG_CLOSE;
- }
-        case 661: break;
-        case 107: 
-        case 111: 
-        case 264: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attr value");//$NON-NLS-1$
-        yybegin(ST_JSP_DIRECTIVE_ATTRIBUTE_NAME);
-        return XML_TAG_ATTRIBUTE_VALUE;
- }
-        case 662: break;
-        case 106: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("equals");//$NON-NLS-1$
-        yybegin(ST_JSP_DIRECTIVE_ATTRIBUTE_VALUE);
-        return XML_TAG_ATTRIBUTE_EQUALS;
- }
-        case 663: break;
-        case 105: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attr name");//$NON-NLS-1$
-        yybegin(ST_JSP_DIRECTIVE_EQUALS);
-        return XML_TAG_ATTRIBUTE_NAME;
- }
-        case 664: break;
-        case 102: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("JSP directive name");//$NON-NLS-1$
-	yybegin(ST_JSP_DIRECTIVE_NAME_WHITESPACE);
-	return JSP_DIRECTIVE_NAME;
- }
-        case 665: break;
-        case 98: 
-        case 99: 
-        case 100: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("JSP code content");//$NON-NLS-1$
-	return doScan("%>", false, false, false, JSP_CONTENT, ST_JSP_CONTENT, ST_JSP_CONTENT);
- }
-        case 666: break;
-        case 94: 
-        case 96: 
-        case 97: 
-        case 254: 
-        case 255: 
-        case 258: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction attribute value");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_DHTML_ATTRIBUTE_NAME);
-        return XML_TAG_ATTRIBUTE_VALUE;
- }
-        case 667: break;
-        case 93: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction '='");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-        yybegin(ST_DHTML_ATTRIBUTE_VALUE);
-        return XML_TAG_ATTRIBUTE_EQUALS;
- }
-        case 668: break;
-        case 92: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction attribute name");//$NON-NLS-1$
-        yybegin(ST_DHTML_EQUALS);
-        return XML_TAG_ATTRIBUTE_NAME;
- }
-        case 669: break;
-        case 90: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction end");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-        yybegin(YYINITIAL);
-        return XML_PI_CLOSE;
- }
-        case 670: break;
-        case 84: 
-        case 86: 
-        case 245: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction attribute value");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_XML_PI_ATTRIBUTE_NAME);
-        return XML_TAG_ATTRIBUTE_VALUE;
- }
-        case 671: break;
-        case 83: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction '='");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-        yybegin(ST_XML_PI_ATTRIBUTE_VALUE);
-        return XML_TAG_ATTRIBUTE_EQUALS;
- }
-        case 672: break;
-        case 50: 
-        case 200: 
-        case 201: 
-        case 204: 
-        case 214: 
-        case 215: 
-        case 218: 
-        case 219: 
-        case 362: 
-        case 365: 
-          { 
-	return JSP_VBL_CONTENT;
- }
-        case 673: break;
-        case 43: 
-        case 179: 
-        case 180: 
-        case 183: 
-        case 193: 
-        case 194: 
-        case 197: 
-        case 198: 
-        case 332: 
-        case 346: 
-        case 349: 
-        case 416: 
-          { 
-	return JSP_EL_CONTENT;
- }
-        case 674: break;
-        case 35: 
-        case 159: 
-        case 160: 
-        case 322: 
-        case 413: 
-        case 470: 
-        case 493: 
-        case 512: 
-        case 528: 
-        case 537: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attlist contentspec");//$NON-NLS-1$
-	return XML_ATTLIST_DECL_CONTENT;
- }
-        case 675: break;
-        case 33: 
-        case 152: 
-        case 153: 
-        case 312: 
-        case 407: 
-        case 468: 
-        case 492: 
-        case 511: 
-        case 527: 
-        case 536: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("elementdecl contentspec");//$NON-NLS-1$
-	return XML_ELEMENT_DECL_CONTENT;
- }
-        case 676: break;
-        case 22: 
-        case 112: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("inappropriate tag name");//$NON-NLS-1$
-	if(!fStateStack.empty() && (fStateStack.peek()==ST_XML_ATTRIBUTE_VALUE_SQUOTED||fStateStack.peek()==ST_XML_ATTRIBUTE_VALUE_DQUOTED)) {
-		yybegin(ST_ABORT_EMBEDDED);
-		yypushback(yylength()-1);
-		return XML_TAG_ATTRIBUTE_VALUE;
-	}
-	yybegin(YYINITIAL);
-        return XML_CONTENT;
- }
-        case 677: break;
-        case 18: 
-        case 104: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("white space");//$NON-NLS-1$
-	yybegin(ST_JSP_DIRECTIVE_ATTRIBUTE_NAME);
-	return WHITE_SPACE;
- }
-        case 678: break;
-        case 5: 
-        case 8: 
-        case 9: 
-        case 10: 
-        case 12: 
-        case 13: 
-        case 14: 
-        case 15: 
-        case 17: 
-        case 19: 
-        case 20: 
-        case 21: 
-        case 23: 
-        case 24: 
-        case 25: 
-        case 26: 
-        case 27: 
-        case 28: 
-        case 29: 
-        case 30: 
-        case 31: 
-        case 32: 
-        case 34: 
-        case 40: 
-        case 41: 
-        case 73: 
-        case 170: 
-        case 175: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("white space");//$NON-NLS-1$
-        return WHITE_SPACE;
- }
-        case 679: break;
-        case 0: 
-        case 57: 
-        case 60: 
-        case 62: 
-        case 226: 
-        case 228: 
-        case 229: 
-        case 231: 
-        case 233: 
-        case 372: 
-        case 373: 
-        case 374: 
-        case 453: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nXML content");//$NON-NLS-1$
-	return XML_CONTENT;
- }
-        case 680: break;
-        case 58: 
-        case 101: 
-        case 113: 
-        case 119: 
-        case 129: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nstart tag open");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_NAME;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-        yybegin(ST_XML_TAG_NAME);
-        return XML_TAG_OPEN;
- }
-        case 681: break;
-        case 59: 
-        case 61: 
-        case 65: 
-        case 66: 
-        case 67: 
-        case 71: 
-        case 72: 
-        case 81: 
-        case 85: 
-        case 87: 
-        case 88: 
-        case 89: 
-        case 91: 
-        case 95: 
-        case 103: 
-        case 108: 
-        case 109: 
-        case 110: 
-        case 115: 
-        case 124: 
-        case 131: 
-        case 132: 
-        case 133: 
-        case 134: 
-        case 136: 
-        case 137: 
-        case 139: 
-        case 140: 
-        case 141: 
-        case 144: 
-        case 145: 
-        case 146: 
-        case 149: 
-        case 150: 
-        case 151: 
-        case 156: 
-        case 157: 
-        case 158: 
-        case 164: 
-        case 167: 
-        case 172: 
-        case 173: 
-        case 177: 
-        case 178: 
-        case 185: 
-        case 186: 
-        case 188: 
-        case 189: 
-        case 195: 
-        case 199: 
-        case 206: 
-        case 207: 
-        case 209: 
-        case 210: 
-        case 216: 
-        case 220: 
-          { 
-	if (Debug.debugTokenizer)
-		System.out.println("!!!unexpected!!!: \"" + yytext() + "\":" + //$NON-NLS-2$//$NON-NLS-1$
-			yychar + "-" + (yychar + yylength()));//$NON-NLS-1$
-	return UNDEFINED;
- }
-        case 682: break;
-        case 63: 
-        case 64: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("CDATA text");//$NON-NLS-1$
-	fEmbeddedPostState = ST_CDATA_TEXT;
-	fEmbeddedHint = XML_CDATA_TEXT;
-	String returnedContext = doScan("]]>", false, true, true, XML_CDATA_TEXT, ST_CDATA_END,  ST_CDATA_END);//$NON-NLS-1$
-	if(returnedContext == XML_CDATA_TEXT)
-		yybegin(ST_CDATA_END);
-	return returnedContext;
- }
-        case 683: break;
-        case 68: 
-        case 187: 
-        case 190: 
-        case 208: 
-        case 211: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("LINE FEED");//$NON-NLS-1$
-	return WHITE_SPACE;
- }
-        case 684: break;
-        case 69: 
-        case 70: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("comment content");//$NON-NLS-1$
-	return scanXMLCommentText();
- }
-        case 685: break;
-        case 74: 
-        case 75: 
-        case 76: 
-        case 239: 
-        case 240: 
-        case 384: 
-        case 456: 
-        case 484: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("processing instruction target");//$NON-NLS-1$
-	fEmbeddedHint = XML_CONTENT;
-        yybegin(ST_PI_WS);
-        return XML_TAG_NAME;
- }
-        case 686: break;
-        case 77: 
-          { 
-        yybegin(ST_PI_CONTENT);
-        return WHITE_SPACE;
- }
-        case 687: break;
-        case 78: 
-        case 79: 
-        case 80: 
-          { 
-		// block scan until close is found
-	return doScan("?>", false, false, false, XML_PI_CONTENT, ST_XML_PI_TAG_CLOSE, ST_XML_PI_TAG_CLOSE);
- }
-        case 688: break;
-        case 82: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction attribute name");//$NON-NLS-1$
-        yybegin(ST_XML_PI_EQUALS);
-        return XML_TAG_ATTRIBUTE_NAME;
- }
-        case 689: break;
-        case 126: 
-          { 
-	if (Debug.debugTokenizer) {
-		System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-	}
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_VALUE_SQUOTED;
-	yybegin(ST_XML_ATTRIBUTE_VALUE_SQUOTED);
-	fStateStack.push(yystate());
-	if(Debug.debugTokenizer)
-		dump("JSP attribute value start - complex single quoted");//$NON-NLS-1$
-	assembleEmbeddedContainer(XML_TAG_ATTRIBUTE_VALUE_SQUOTE, XML_TAG_ATTRIBUTE_VALUE_SQUOTE);
-	fStateStack.pop();
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-	fEmbeddedPostState = ST_XML_EQUALS;
-        yybegin(ST_XML_ATTRIBUTE_NAME);
-	return PROXY_CONTEXT;
- }
-        case 690: break;
-        case 130: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("declaration end");//$NON-NLS-1$
-	if (Debug.debugTokenizer) {
-		if(fStateStack.peek()!=YYINITIAL)
-			System.out.println("end embedded region");//$NON-NLS-1$
-	}
-	yybegin(fStateStack.pop());
-	return XML_DECLARATION_CLOSE;
- }
-        case 691: break;
-        case 135: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype type");//$NON-NLS-1$
-	yybegin(ST_XML_DOCTYPE_EXTERNAL_ID);
-	return XML_DOCTYPE_NAME;
- }
-        case 692: break;
-        case 138: 
-        case 142: 
-        case 289: 
-        case 293: 
-        case 400: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype public reference");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-	fEmbeddedPostState = YYINITIAL;
-	yybegin(ST_XML_DOCTYPE_ID_SYSTEM);
-	return XML_DOCTYPE_EXTERNAL_ID_PUBREF;
- }
-        case 693: break;
-        case 143: 
-        case 147: 
-        case 299: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype system reference");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-	fEmbeddedPostState = YYINITIAL;
-	yybegin(ST_XML_DECLARATION_CLOSE);
-	return XML_DOCTYPE_EXTERNAL_ID_SYSREF;
- }
-        case 694: break;
-        case 148: 
-        case 305: 
-        case 309: 
-        case 403: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("elementdecl name");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-	fEmbeddedPostState = YYINITIAL;
-	yybegin(ST_XML_ELEMENT_DECLARATION_CONTENT);
-	return XML_ELEMENT_DECL_NAME;
- }
-        case 695: break;
-        case 154: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("elementdecl close");//$NON-NLS-1$
-	if (Debug.debugTokenizer) {
-		if(fStateStack.peek()!=YYINITIAL)
-			System.out.println("end embedded region");//$NON-NLS-1$
-	}
-	yybegin(fStateStack.pop());
-	return XML_DECLARATION_CLOSE;
- }
-        case 696: break;
-        case 155: 
-        case 315: 
-        case 319: 
-        case 409: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attlist name");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-	fEmbeddedPostState = YYINITIAL;
-	yybegin(ST_XML_ATTLIST_DECLARATION_CONTENT);
-	return XML_ATTLIST_DECL_NAME;
- }
-        case 697: break;
-        case 161: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attlist close");//$NON-NLS-1$
-	if (Debug.debugTokenizer) {
-		if(fStateStack.peek()!=YYINITIAL)
-			System.out.println("end embedded region");//$NON-NLS-1$
-	}
-	yybegin(fStateStack.pop());
-	return XML_DECLARATION_CLOSE;
- }
-        case 698: break;
-        case 165: 
-        case 166: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nJSP comment text");//$NON-NLS-1$
-	return scanJSPCommentText();
- }
-        case 699: break;
-        case 168: 
-        case 174: 
-          { 
-	return XML_TAG_ATTRIBUTE_VALUE;
- }
-        case 700: break;
-        case 169: 
-          { 
-	if (Debug.debugTokenizer) {
-		System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-	}
-	int incomingState = yystate();
-	fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-	if(Debug.debugTokenizer)
-		dump("tag inside of JSP attribute value start");//$NON-NLS-1$
-	yybegin(ST_XML_TAG_NAME);
-	assembleEmbeddedContainer(XML_TAG_OPEN, new String[]{XML_TAG_CLOSE,XML_EMPTY_TAG_CLOSE});
-	if(yystate() != ST_ABORT_EMBEDDED)
-        yybegin(incomingState);
-	return PROXY_CONTEXT;
- }
-        case 701: break;
-        case 171: 
-          { 
-	return XML_TAG_ATTRIBUTE_VALUE_SQUOTE;
- }
-        case 702: break;
-        case 176: 
-          { 
-	return XML_TAG_ATTRIBUTE_VALUE_DQUOTE;
- }
-        case 703: break;
-        case 181: 
-          { 
-	yybegin(ST_JSP_EL_DQUOTES);
-	return JSP_EL_DQUOTE;
- }
-        case 704: break;
-        case 182: 
-          { 
-	yybegin(ST_JSP_EL_SQUOTES);
-	return JSP_EL_SQUOTE;
- }
-        case 705: break;
-        case 184: 
-          { 
-	fELlevel--;
-	if(fELlevel == 0) {
-		yybegin(YYINITIAL);
-		return JSP_EL_CLOSE;
-	}
-	return JSP_EL_CONTENT;
- }
-        case 706: break;
-        case 191: 
-          { 
-	yybegin(ST_JSP_EL);
-	return JSP_EL_SQUOTE;
- }
-        case 707: break;
-        case 192: 
-          { 
-	yybegin(ST_JSP_EL);
-	return JSP_EL_DQUOTE;
- }
-        case 708: break;
-        case 196: 
-          { 
-	return JSP_EL_CLOSE;
- }
-        case 709: break;
-        case 202: 
-          { 
-	yybegin(ST_JSP_VBL_DQUOTES);
-	return JSP_VBL_DQUOTE;
- }
-        case 710: break;
-        case 203: 
-          { 
-	yybegin(ST_JSP_VBL_SQUOTES);
-	return JSP_VBL_SQUOTE;
- }
-        case 711: break;
-        case 205: 
-          { 
-	fELlevel--;
-	if(fELlevel == 0) {
-		yybegin(YYINITIAL);
-		return JSP_VBL_CLOSE;
-	}
-	return JSP_VBL_CONTENT;
- }
-        case 712: break;
-        case 212: 
-          { 
-	yybegin(ST_JSP_VBL);
-	return JSP_VBL_SQUOTE;
- }
-        case 713: break;
-        case 213: 
-          { 
-	yybegin(ST_JSP_VBL);
-	return JSP_VBL_DQUOTE;
- }
-        case 714: break;
-        case 217: 
-          { 
-	return JSP_VBL_CLOSE;
- }
-        case 715: break;
-        case 221: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nend tag open");//$NON-NLS-1$
-	fEmbeddedHint = XML_TAG_NAME;
-	fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-        yybegin(ST_XML_TAG_NAME);
-        return XML_END_TAG_OPEN;
- }
-        case 716: break;
-        case 222: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nprocessing instruction start");//$NON-NLS-1$
-	yybegin(ST_PI);
-        return XML_PI_OPEN;
- }
-        case 717: break;
-        case 223: 
-        case 234: 
-        case 311: 
-        case 321: 
-        case 323: 
-        case 333: 
-        case 338: 
-        case 342: 
-        case 345: 
-        case 348: 
-        case 350: 
-        case 354: 
-        case 358: 
-        case 361: 
-        case 364: 
-          { 
-	/* JSP scriptlet begun (anywhere)
-	 * A consequence of the start anywhere possibility is that the
-	 *  incoming state must be checked to see if it's erroneous
-	 *  due to the order of precedence generated
-	 */
-	// begin sanity checks
-	if(yystate() == ST_JSP_CONTENT) {
-		// at the beginning?!
-		yypushback(1);
-		return JSP_CONTENT;
-	}
-	else if(yystate() == ST_BLOCK_TAG_SCAN) {
-		yypushback(2);
-		return doBlockTagScan();
-	}
-	else if(yystate() == ST_XML_COMMENT) {
-		yypushback(2);
-		return scanXMLCommentText();
-	}
-	else if(yystate() == ST_JSP_COMMENT) {
-		yypushback(2);
-		return scanJSPCommentText();
-	}
-	// finished sanity checks
-	fStateStack.push(yystate());
-	if(fStateStack.peek()==YYINITIAL) {
-		// the simple case, just a regular scriptlet out in content
-		if(Debug.debugTokenizer)
-			dump("\nJSP scriptlet start");//$NON-NLS-1$
-		yybegin(ST_JSP_CONTENT);
-		return JSP_SCRIPTLET_OPEN;
-	}
-	else {
-		if (Debug.debugTokenizer) {
-			System.out.println("begin embedded region: " + fEmbeddedHint);//$NON-NLS-1$
-		}
-		if(Debug.debugTokenizer)
-			dump("JSP scriptlet start");//$NON-NLS-1$
-		if(yystate() == ST_XML_ATTRIBUTE_VALUE_DQUOTED)
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_VALUE_DQUOTED;
-		else if(yystate() == ST_XML_ATTRIBUTE_VALUE_SQUOTED)
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_VALUE_SQUOTED;
-		else if(yystate() == ST_CDATA_TEXT) {
-			fEmbeddedPostState = ST_CDATA_TEXT;
-			fEmbeddedHint = XML_CDATA_TEXT;
-		}
-		yybegin(ST_JSP_CONTENT);
-		assembleEmbeddedContainer(JSP_SCRIPTLET_OPEN, JSP_CLOSE);
-		if(yystate() == ST_BLOCK_TAG_INTERNAL_SCAN) {
-			yybegin(ST_BLOCK_TAG_SCAN);
-			return BLOCK_TEXT;
-		}
-		// required help for successive embedded regions
-		if(yystate() == ST_XML_TAG_NAME) {
-			fEmbeddedHint = XML_TAG_NAME;
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-		}
-		else if((yystate() == ST_XML_ATTRIBUTE_NAME || yystate() == ST_XML_EQUALS)) {
-			fEmbeddedHint = XML_TAG_ATTRIBUTE_NAME;
-			fEmbeddedPostState = ST_XML_EQUALS;
-		}
-		else if(yystate() == ST_XML_ATTRIBUTE_VALUE) {
-			fEmbeddedHint = XML_TAG_ATTRIBUTE_VALUE;
-			fEmbeddedPostState = ST_XML_ATTRIBUTE_NAME;
-		}
-		return PROXY_CONTEXT;
-	}
- }
-        case 718: break;
-        case 224: 
-          { 
-	fStateStack.push(yystate());
-	if(Debug.debugTokenizer)
-		dump("\ndeclaration start");//$NON-NLS-1$
-        yybegin(ST_XML_DECLARATION);
-	return XML_DECLARATION_OPEN;
- }
-        case 719: break;
-        case 238: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("processing instruction end");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-        yybegin(YYINITIAL);
-        return XML_PI_CLOSE;
- }
-        case 720: break;
-        case 241: 
-          { 
-		// ended with nothing inside
-		fEmbeddedHint = UNDEFINED;
-        yybegin(YYINITIAL);
-        return XML_PI_CLOSE;
- }
-        case 721: break;
-        case 242: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction end");//$NON-NLS-1$
-	fEmbeddedHint = UNDEFINED;
-        yybegin(YYINITIAL);
-        return XML_PI_CLOSE;
- }
-        case 722: break;
-        case 259: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("JSP end");//$NON-NLS-1$
-	if (Debug.debugTokenizer) {
-		if(fStateStack.peek()!=YYINITIAL)
-			System.out.println("end embedded region");//$NON-NLS-1$
-	}
-	yybegin(fStateStack.pop());
-	return JSP_CLOSE;
- }
-        case 723: break;
-        case 261: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("JSP end");//$NON-NLS-1$
-	if (Debug.debugTokenizer) {
-		if(fStateStack.peek()!=YYINITIAL)
-			System.out.println("end embedded region");//$NON-NLS-1$
-	}
-	yybegin(fStateStack.pop());
-	return JSP_DIRECTIVE_CLOSE;
- }
-        case 724: break;
-        case 162: 
-        case 163: 
-          { 
-		return doBlockTagScan();
-	 }
-        case 725: break;
-        default: 
-          if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
-            yy_atEOF = true;
-            yy_do_eof();
-              return null;
-          } 
-          else {
-            yy_ScanError(YY_NO_MATCH);
-          }
-      }
-    }
-  }    
-
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/tasks/JSPTaskTagSeeker.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/tasks/JSPTaskTagSeeker.java
deleted file mode 100644
index cfef658..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/tasks/JSPTaskTagSeeker.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.tasks;
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.builder.delegates.XMLTaskTagSeeker;
-
-public class JSPTaskTagSeeker extends XMLTaskTagSeeker {
-	protected boolean isCommentRegion(IStructuredDocumentRegion region, ITextRegion textRegion) {
-		return super.isCommentRegion(region, textRegion) || textRegion.getType().equals(DOMJSPRegionContexts.JSP_COMMENT_TEXT);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/text/NullStructuredDocumentPartitioner.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/text/NullStructuredDocumentPartitioner.java
deleted file mode 100644
index fd932d3..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/text/NullStructuredDocumentPartitioner.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.text;
-
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredTextPartitioner;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.StructuredTypedRegion;
-
-/**
- * To be used when no known partitioner is available.
- * Always returns the unknown type.
- */
-public class NullStructuredDocumentPartitioner implements IStructuredTextPartitioner {
-
-	public class NullStructuredTypedRegion implements StructuredTypedRegion {
-
-		private int fOffset;
-
-		private int fLength;
-
-		private String fType;
-
-		public void setType(String type) {
-			fType = type;
-		}
-
-		public void setLength(int length) {
-			fLength = length;
-
-		}
-
-		public void setOffset(int offset) {
-			fOffset = offset;
-		}
-
-		public String getType() {
-			return fType;
-		}
-
-		public int getLength() {
-			return fLength;
-		}
-
-		public int getOffset() {
-			return fOffset;
-		}
-
-	}
-
-	public final static String ST_UNKNOWN_PARTITION = "com.ibm.sse.UNKNOWN_PARTITION_TYPE"; //$NON-NLS-1$
-	private final String[] legalTypes = new String[]{ST_UNKNOWN_PARTITION};
-
-	public NullStructuredDocumentPartitioner() {
-		super();
-	}
-
-	public void connect(IDocument document) {
-		// nothing to do
-	}
-
-	public StructuredTypedRegion createPartition(int offset, int length, String type) {
-		StructuredTypedRegion result = new NullStructuredTypedRegion();
-		result.setOffset(offset);
-		result.setLength(length);
-		result.setType(type);
-		return result;
-	}
-
-	public void disconnect() {
-		// nothing to do
-	}
-
-	public String getDefault() {
-		return ST_UNKNOWN_PARTITION;
-	}
-
-	public String[] getLegalContentTypes() {
-		return legalTypes;
-	}
-
-	public String getPartitionType(ITextRegion region, int offset) {
-		return ST_UNKNOWN_PARTITION;
-	}
-
-	public String getPartitionTypeBetween(IStructuredDocumentRegion previousNode, ITextRegion previousStartTagNameRegion, IStructuredDocumentRegion nextNode, ITextRegion nextEndTagNameRegion) {
-		return ST_UNKNOWN_PARTITION;
-	}
-
-	public ITypedRegion[] computePartitioning(int offset, int length) {
-		ITypedRegion[] alwaysOne = new ITypedRegion[]{createPartition(offset, length, ST_UNKNOWN_PARTITION)};
-		return alwaysOne;
-	}
-
-	public void documentAboutToBeChanged(DocumentEvent event) {
-	}
-
-	public boolean documentChanged(DocumentEvent event) {
-		return false;
-	}
-
-	public String getContentType(int offset) {
-		return getDefault();
-	}
-
-	public ITypedRegion getPartition(int offset) {
-		return createPartition(offset, 1, getDefault());
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/text/StructuredTextPartitionerForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/text/StructuredTextPartitionerForJSP.java
deleted file mode 100644
index 25f487c..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/text/StructuredTextPartitionerForJSP.java
+++ /dev/null
@@ -1,535 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.text;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Locale;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.core.JSP12Namespace;
-import org.eclipse.jst.jsp.core.contentmodel.tld.JSP12TLDNames;
-import org.eclipse.jst.jsp.core.encoding.JSPDocumentHeadContentDetector;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-import org.eclipse.wst.sse.core.internal.parser.ForeignRegion;
-import org.eclipse.wst.sse.core.internal.text.rules.StructuredTextPartitioner;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionHandlerExtension;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredTextPartitioner;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-public class StructuredTextPartitionerForJSP extends StructuredTextPartitioner {
-
-	private class PrefixListener implements StructuredDocumentRegionHandler, StructuredDocumentRegionHandlerExtension {
-		// track the list of prefixes introduced by taglib directives
-		private List fCustomActionPrefixes = null;
-		private String fLastTrue = null;
-
-		public PrefixListener() {
-			super();
-			fCustomActionPrefixes = new ArrayList(1);
-			resetNodes();
-		}
-
-		private JSPSourceParser getTextSource() {
-			return (JSPSourceParser) structuredDocument.getParser();
-		}
-
-		public void nodeParsed(IStructuredDocumentRegion sdRegion) {
-			// Largely taken from the TLDCMDocumentManager
-			// could test > 1, but since we only care if there are 8 (<%@,
-			// taglib, uri, =, where, prefix, =, what) [or 4 for includes]
-			if (sdRegion.getNumberOfRegions() > 4 && sdRegion.getRegions().get(1).getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-				ITextRegion nameRegion = sdRegion.getRegions().get(1);
-				try {
-					boolean tablibdetected = false;
-					boolean directiveTaglibdetected;
-					int startOffset = sdRegion.getStartOffset(nameRegion);
-					int textLength = nameRegion.getTextLength();
-
-					if (getTextSource() != null) {
-						tablibdetected = getTextSource().regionMatches(startOffset, textLength, JSP12TLDNames.TAGLIB);
-						directiveTaglibdetected = getTextSource().regionMatches(startOffset, textLength, JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-					}
-					else {
-						// old fashioned way
-						String directiveName = getTextSource().getText(startOffset, textLength);
-						tablibdetected = directiveName.equals(JSP12TLDNames.TAGLIB);
-						directiveTaglibdetected = directiveName.equals(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-					}
-					if (tablibdetected || directiveTaglibdetected) {
-						processTaglib(sdRegion);
-					}
-				}
-				catch (StringIndexOutOfBoundsException sioobExc) {
-					// ISSUE: why is this "normal" here?
-					//do nothing
-				}
-			}
-		}
-
-
-		private void processTaglib(IStructuredDocumentRegion taglibStructuredDocumentRegion) {
-			ITextRegionList regions = taglibStructuredDocumentRegion.getRegions();
-			String prefixValue = null;
-			boolean prefixnameDetected = false;
-			try {
-				for (int i = 0; i < regions.size(); i++) {
-					ITextRegion region = regions.get(i);
-					int startOffset = taglibStructuredDocumentRegion.getStartOffset(region);
-					int textLength = region.getTextLength();
-					if (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-						prefixnameDetected = getTextSource().regionMatches(startOffset, textLength, JSP12TLDNames.PREFIX);
-						//String regionText =
-						// fTextSource.getText(startOffset, textLength);
-						//prefixname =
-						// regionText.equals(JSP12TLDNames.PREFIX);
-					}
-					else if (prefixnameDetected && region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						prefixValue = getTextSource().getText(startOffset, textLength);
-					}
-				}
-			}
-			catch (StringIndexOutOfBoundsException sioobExc) {
-				// nothing to be done
-				prefixValue = null;
-			}
-			if (prefixValue != null) {
-				String prefixText = StringUtils.strip(prefixValue) + ":"; //$NON-NLS-1$
-				if (!fCustomActionPrefixes.contains(prefixText)) {
-					if(debugPrefixListener == true) {
-						System.out.println("StructuredTextPartitionerForJSP.PrefixListener learning prefix: " + prefixText);
-					}
-					fCustomActionPrefixes.add(prefixText);
-				}
-			}
-		}
-
-		public void resetNodes() {
-			fLastTrue = null;
-			fCustomActionPrefixes.clear();
-			fCustomActionPrefixes.add(JSP11Namespace.JSP_TAG_PREFIX + ":"); //$NON-NLS-1$
-			if(debugPrefixListener == true) {
-				System.out.println("StructuredTextPartitionerForJSP.PrefixListener forgetting learned prefixes");
-			}
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see com.ibm.sse.model.parser.StructuredDocumentRegionHandlerExtension#setStructuredDocument(com.ibm.sse.model.text.IStructuredDocument)
-		 */
-		public void setStructuredDocument(IStructuredDocument newDocument) {
-			resetNodes();
-			((StructuredDocumentRegionParser) structuredDocument.getParser()).removeStructuredDocumentRegionHandler(this);
-			if(newDocument != null) {
-				((StructuredDocumentRegionParser) newDocument.getParser()).addStructuredDocumentRegionHandler(this);
-			}
-		}
-
-		public boolean startsWithCustomActionPrefix(String tagname) {
-			if (tagname.equals(fLastTrue))
-				return true;
-			for (int i = 0; i < fCustomActionPrefixes.size(); i++)
-				if (tagname.startsWith((String) fCustomActionPrefixes.get(i))) {
-					fLastTrue = tagname;
-					return true;
-				}
-			return false;
-		}
-	}
-
-	static final boolean debugPrefixListener = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.core/partitioner/prefixlistener"));
-
-
-	// for compatibility with v5.1.0, we'll reuse ST_JSP_DIRECTIVE for action
-	// tags
-	private final static boolean fEnableJSPActionPartitions = true;
-	// list of valid JSP 1.2 tag and action names
-	private static List fJSPActionTagNames = null;
-	private static final String HTML_MIME_TYPE = "text/html"; //$NON-NLS-1$
-	private static final String XHTML_MIME_TYPE = "text/xhtml"; //$NON-NLS-1$
-	private static final String XML_MIME_TYPE = "text/xml"; //$NON-NLS-1$
-
-	private final static String[] fConfiguredContentTypes = new String[]{IJSPPartitions.JSP_DEFAULT, IJSPPartitions.JSP_DEFAULT_EL, IJSPPartitions.JSP_DIRECTIVE, IJSPPartitions.JSP_CONTENT_DELIMITER, IJSPPartitions.JSP_CONTENT_JAVA, IJSPPartitions.JSP_CONTENT_JAVASCRIPT, IJSPPartitions.JSP_COMMENT};
-
-	/**
-	 * @return
-	 */
-	public static String[] getConfiguredContentTypes() {
-		return fConfiguredContentTypes;
-	}
-
-	private IStructuredTextPartitioner fEmbeddedPartitioner = null;
-
-	
-	/**
-	 * Assume language=java by default ... client, such as
-	 * PageDirectiveAdapter, must set language of document partitioner,
-	 * if/when it changes.
-	 */
-	private String fLanguage = "java"; //$NON-NLS-1$
-	private PrefixListener fPrefixParseListener;
-
-	/**
-	 * Constructor for JSPDocumentPartioner.
-	 */
-	public StructuredTextPartitionerForJSP() {
-		super();
-		if (fJSPActionTagNames == null) {
-			fJSPActionTagNames = new ArrayList(); // uses .equals() for
-			// contains()
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.DECLARATION);
-			//			fJSPActionTagNames.add(JSP12Namespace.ElementName.DIRECTIVE_INCLUDE);
-			//			fJSPActionTagNames.add(JSP12Namespace.ElementName.DIRECTIVE_PAGE);
-			//			fJSPActionTagNames.add(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.EXPRESSION);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.FALLBACK);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.FORWARD);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.GETPROPERTY);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.INCLUDE);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.PARAM);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.PARAMS);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.PLUGIN);
-			//			fJSPActionTagNames.add(JSP12Namespace.ElementName.ROOT);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.SCRIPTLET);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.SETPROPERTY);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.TEXT);
-			fJSPActionTagNames.add(JSP12Namespace.ElementName.USEBEAN);
-		}
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#connect(org.eclipse.jface.text.IDocument)
-	 */
-	public void connect(IDocument document) {
-		super.connect(document);
-		fSupportedTypes = null;
-
-		// be extra paranoid
-		if (fEnableJSPActionPartitions && structuredDocument.getParser() instanceof JSPSourceParser) {
-			StructuredDocumentRegionParser parser = (StructuredDocumentRegionParser) structuredDocument.getParser();
-			parser.removeStructuredDocumentRegionHandler(fPrefixParseListener);
-			fPrefixParseListener = new PrefixListener();
-			parser.addStructuredDocumentRegionHandler(fPrefixParseListener);
-		}
-	}
-
-	private IStructuredTextPartitioner createStructuredTextPartitioner(IStructuredDocument structuredDocument) {
-		IStructuredTextPartitioner result = new NullStructuredDocumentPartitioner();
-		JSPDocumentHeadContentDetector jspHeadContentDetector = new JSPDocumentHeadContentDetector();
-		jspHeadContentDetector.set(structuredDocument);
-		String contentType;
-		try {
-			contentType = jspHeadContentDetector.getContentType();
-		}
-		catch (IOException e) {
-			// should be impossible in this context
-			throw new Error(e);
-		}
-		if (contentType == null) {
-			contentType = "text/html"; //$NON-NLS-1$
-		}
-		// we currently only have two ... eventually should
-		// make or tie-in to existing registry.
-		if (contentType.equalsIgnoreCase(HTML_MIME_TYPE)) {
-			result = new StructuredTextPartitionerForHTML();
-			result.connect(structuredDocument);
-		}
-		else if (contentType.equalsIgnoreCase(XHTML_MIME_TYPE)) {
-			result = new StructuredTextPartitionerForHTML();
-			result.connect(structuredDocument);
-		}
-		else if (contentType.equalsIgnoreCase(XML_MIME_TYPE)) {
-			result = new StructuredTextPartitionerForXML();
-			result.connect(structuredDocument);
-		}
-		return result;
-
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#disconnect()
-	 */
-	public void disconnect() {
-		// we'll check for null document, just for bullet proofing (incase
-		// disconnnect is called without corresponding connect.
-		if (structuredDocument != null) {
-			StructuredDocumentRegionParser parser = (StructuredDocumentRegionParser) structuredDocument.getParser();
-			if (fPrefixParseListener != null)
-				parser.removeStructuredDocumentRegionHandler(fPrefixParseListener);
-			fPrefixParseListener = null;
-		}
-
-		if (fEmbeddedPartitioner != null) {
-			fEmbeddedPartitioner.disconnect();
-			// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4909
-			/**
-			 * force recreation when reconnected
-			 */
-			fEmbeddedPartitioner = null;
-		}
-		// super.disconnect should come at end, since it (may) set
-		// structuredDocument to null
-		super.disconnect();
-	}
-
-	public String getDefault() {
-		return getEmbeddedPartitioner().getDefault();
-	}
-
-	/**
-	 * Returns the embeddedPartitioner.
-	 * 
-	 * @return IStructuredTextPartitioner
-	 */
-	public IStructuredTextPartitioner getEmbeddedPartitioner() {
-		if (fEmbeddedPartitioner == null) {
-			fEmbeddedPartitioner = createStructuredTextPartitioner(structuredDocument);
-			fEmbeddedPartitioner.connect(structuredDocument);
-		}
-
-		return fEmbeddedPartitioner;
-	}
-
-	/**
-	 * Returns the language.
-	 * 
-	 * @return String
-	 */
-	public String getLanguage() {
-		return fLanguage;
-	}
-
-	private List getLocalLegalContentTypes() {
-		List types = new ArrayList();
-		Object[] configuredTypes = getConfiguredContentTypes();
-		for (int i = 0; i < configuredTypes.length; i++)
-			types.add(configuredTypes[i]);
-		return types;
-	}
-
-	private String getParentName(IStructuredDocumentRegion sdRegion) {
-		String result = "UNKNOWN"; //$NON-NLS-1$
-		while (sdRegion != null && isValidJspActionRegionType(sdRegion.getType()))
-			sdRegion = sdRegion.getPrevious();
-
-		if (sdRegion != null) {
-			ITextRegionList regions = sdRegion.getRegions();
-			// only find parent names from a start tag
-			if (regions.size() > 1) {
-				ITextRegion r = regions.get(1);
-				if (regions.get(0).getType().equals(XMLRegionContext.XML_TAG_OPEN) && r.getType().equals(XMLRegionContext.XML_TAG_NAME)) {
-					result = sdRegion.getText(r);
-				}
-			}
-		}
-		return result;
-	}
-
-	protected String getPartitionType(ForeignRegion region, int offset) {
-		return getEmbeddedPartitioner().getPartitionType(region, offset);
-	}
-
-	/**
-	 * @see com.ibm.sed.model.StructuredTextPartitioner#getPartitionType(com.ibm.sed.structuredDocument.ITextRegion)
-	 */
-	public String getPartitionType(ITextRegion region, int offset) {
-		String result = null;
-		final String region_type = region.getType();
-		if (region_type == DOMJSPRegionContexts.JSP_CONTENT) {
-			result = getPartitionTypeForDocumentLanguage();
-		}
-		else if (region_type == DOMJSPRegionContexts.JSP_COMMENT_TEXT || region_type == DOMJSPRegionContexts.JSP_COMMENT_OPEN || region_type == DOMJSPRegionContexts.JSP_COMMENT_CLOSE)
-			result = IJSPPartitions.JSP_COMMENT;
-		else if (region_type == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME || region_type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN || region_type == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE)
-			result = IJSPPartitions.JSP_DIRECTIVE;
-		else if (region_type == DOMJSPRegionContexts.JSP_CLOSE || region_type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN || region_type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || region_type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN)
-			result = IJSPPartitions.JSP_CONTENT_DELIMITER;
-		else if (region_type == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME)
-			result = IJSPPartitions.JSP_DEFAULT;
-		else if (region_type == DOMJSPRegionContexts.JSP_EL_OPEN || region_type == DOMJSPRegionContexts.JSP_EL_CONTENT || region_type == DOMJSPRegionContexts.JSP_EL_CLOSE || region_type == DOMJSPRegionContexts.JSP_EL_DQUOTE
-					|| region_type == DOMJSPRegionContexts.JSP_EL_SQUOTE || region_type == DOMJSPRegionContexts.JSP_EL_QUOTED_CONTENT)
-			result = IJSPPartitions.JSP_DEFAULT_EL;
-		else if (region_type == XMLRegionContext.XML_CONTENT) {
-			// possibly between <jsp:scriptlet>, <jsp:expression>,
-			// <jsp:declration>
-			IStructuredDocumentRegion sdRegion = this.structuredDocument.getRegionAtCharacterOffset(offset);
-			if (isJspJavaActionName(getParentName(sdRegion)))
-				result = getPartitionTypeForDocumentLanguage();
-			else
-				result = getDefault();
-		}
-		else {
-			result = getEmbeddedPartitioner().getPartitionType(region, offset);
-		}
-		return result;
-	}
-
-	/**
-	 * @see com.ibm.sed.structuredDocument.partition.StructuredTextPartitioner#getPartitionType(com.ibm.sed.structuredDocument.ITextRegion,
-	 *      com.ibm.sed.structuredDocument.ITextRegion)
-	 */
-	public String getPartitionTypeBetween(IStructuredDocumentRegion previousNode, ITextRegion previousStartTagNameRegion, IStructuredDocumentRegion nextNode, ITextRegion nextEndTagNameRegion) {
-		return getEmbeddedPartitioner().getPartitionTypeBetween(previousNode, previousStartTagNameRegion, nextNode, nextEndTagNameRegion);
-	}
-
-	/**
-	 * @return
-	 */
-	private String getPartitionTypeForDocumentLanguage() {
-		String result;
-		if (fLanguage == null || fLanguage.equalsIgnoreCase("java")) { //$NON-NLS-1$
-			result = IJSPPartitions.JSP_CONTENT_JAVA;
-		}
-		else if (fLanguage.equalsIgnoreCase("javascript")) { //$NON-NLS-1$
-			result = IJSPPartitions.JSP_CONTENT_JAVASCRIPT;
-		}
-		else {
-			result = IJSPPartitions.JSP_SCRIPT_PREFIX + getLanguage().toUpperCase(Locale.ENGLISH);
-		}
-		return result;
-	}
-
-	protected void initLegalContentTypes() {
-		List combinedTypes = getLocalLegalContentTypes();
-		if (getEmbeddedPartitioner() != null) {
-			String[] moreTypes = getEmbeddedPartitioner().getLegalContentTypes();
-			for (int i = 0; i < moreTypes.length; i++)
-				combinedTypes.add(moreTypes[i]);
-		}
-		fSupportedTypes = new String[0];
-		combinedTypes.toArray(fSupportedTypes);
-	}
-
-	/**
-	 * @param sdRegion
-	 * @param offset
-	 * @return
-	 */
-	private boolean isAction(IStructuredDocumentRegion sdRegion, int offset) {
-		if (!sdRegion.getType().equals(XMLRegionContext.XML_TAG_NAME))
-			return false;
-		// shouldn't get a tag name region type unless a tag name region
-		// exists
-		// at [1]
-		ITextRegion tagNameRegion = sdRegion.getRegions().get(1);
-		String tagName = sdRegion.getText(tagNameRegion);
-		// TODO: support custom JSP actions
-		// the jsp: prefix is already loaded in the prefix listener
-		//		if (fJSPActionTagNames.contains(tagName))
-		//			return true;
-		return fPrefixParseListener.startsWithCustomActionPrefix(tagName);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structuredDocument.partition.StructuredTextPartitioner#getOverrideDocumentPartitionType(com.ibm.sed.structured.text.IStructuredDocumentRegion,
-	 *      com.ibm.sed.structured.text.ITextRegion)
-	 */
-	protected boolean isDocumentRegionBasedPartition(IStructuredDocumentRegion sdRegion, ITextRegion containedChildRegion, int offset) {
-		String documentRegionContext = sdRegion.getType();
-		if (containedChildRegion != null) {
-			if (documentRegionContext.equals(DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) || documentRegionContext.equals(DOMJSPRegionContexts.JSP_ROOT_TAG_NAME)) {
-				setInternalPartition(offset, containedChildRegion.getLength(), IJSPPartitions.JSP_DIRECTIVE);
-				return true;
-			}
-			if (fEnableJSPActionPartitions && isAction(sdRegion, offset)) {
-				setInternalPartition(offset, containedChildRegion.getLength(), IJSPPartitions.JSP_DIRECTIVE);
-				return true;
-			}
-		}
-		return super.isDocumentRegionBasedPartition(sdRegion, containedChildRegion, offset);
-	}
-
-	/**
-	 * @param possibleJspJavaAction
-	 * @return
-	 */
-	private boolean isJspJavaActionName(String possibleJspJavaAction) {
-		return possibleJspJavaAction.equals(JSP11Namespace.ElementName.SCRIPTLET) || possibleJspJavaAction.equals(JSP11Namespace.ElementName.EXPRESSION) || possibleJspJavaAction.equals(JSP11Namespace.ElementName.DECLARATION);
-	}
-
-	private boolean isValidJspActionRegionType(String type) {
-		// true for anything that can be within <jsp:scriptlet>,
-		// <jsp:expression>, <jsp:declaration>
-		return type == XMLRegionContext.XML_CONTENT || type == XMLRegionContext.BLOCK_TEXT || type == XMLRegionContext.XML_CDATA_OPEN || type == XMLRegionContext.XML_CDATA_TEXT || type == XMLRegionContext.XML_CDATA_CLOSE;
-	}
-
-	public IDocumentPartitioner newInstance() {
-		StructuredTextPartitionerForJSP instance = new StructuredTextPartitionerForJSP();
-		instance.setEmbeddedPartitioner(createStructuredTextPartitioner(structuredDocument));
-		instance.setLanguage(fLanguage);
-		return instance;
-	}
-
-	/**
-	 * Sets the embeddedPartitioner.
-	 * 
-	 * @param embeddedPartitioner
-	 *            The embeddedPartitioner to set
-	 */
-	public void setEmbeddedPartitioner(IStructuredTextPartitioner embeddedPartitioner) {
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4909
-		/**
-		 * manage connected state of embedded partitioner
-		 */
-		if(fEmbeddedPartitioner != null && structuredDocument != null) {
-			fEmbeddedPartitioner.disconnect();
-		}
-		
-		this.fEmbeddedPartitioner = embeddedPartitioner;
-		
-		if(fEmbeddedPartitioner != null && structuredDocument != null) {
-			fEmbeddedPartitioner.connect(structuredDocument);
-		}
-	}
-
-	/**
-	 * @see com.ibm.sed.structuredDocument.partition.StructuredTextPartitioner#createPartition(int,
-	 *      int, java.lang.String)
-	 */
-	protected void setInternalPartition(int offset, int length, String type) {
-		//TODO: need to carry this single instance idea further to be
-		// complete,
-		// but hopefully this will be less garbage than before (especially for
-		// HTML, XML,
-		// naturally!)
-		internalReusedTempInstance = getEmbeddedPartitioner().createPartition(offset, length, type);
-
-	}
-
-	/**
-	 * Sets the language.
-	 * 
-	 * @param language
-	 *            The language to set
-	 */
-	public void setLanguage(String language) {
-		this.fLanguage = language;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/CommonXML.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/CommonXML.java
deleted file mode 100644
index 221c244..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/CommonXML.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.util;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Source;
-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.jst.jsp.core.internal.Logger;
-import org.w3c.dom.Document;
-
-public class CommonXML {
-
-	public synchronized static DocumentBuilder getDocumentBuilder() {
-		DocumentBuilder result = null;
-		try {
-			result = DocumentBuilderFactory.newInstance().newDocumentBuilder();
-		}
-		catch (ParserConfigurationException e) {
-			Logger.logException(e);
-		}
-		return result;
-	}
-
-	public synchronized static DocumentBuilder getDocumentBuilder(boolean validating) {
-		DocumentBuilder result = null;
-		try {
-			DocumentBuilderFactory instance = DocumentBuilderFactory.newInstance();
-			instance.setValidating(validating);
-			instance.setExpandEntityReferences(false);
-			instance.setCoalescing(true);
-			result = instance.newDocumentBuilder();
-		}
-		catch (ParserConfigurationException e) {
-			Logger.logException(e);
-		}
-		return result;
-	}
-
-	public static void serialize(Document document, OutputStream ostream) throws IOException {
-		Source domSource = new DOMSource(document);
-		try {
-			Transformer serializer = TransformerFactory.newInstance().newTransformer();
-			try {
-				serializer.setOutputProperty(OutputKeys.INDENT, "yes"); //$NON-NLS-1$
-				serializer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4"); //$NON-NLS-1$ //$NON-NLS-2$
-				serializer.setOutputProperty(OutputKeys.ENCODING, "UTF-16"); //$NON-NLS-1$
-			}
-			catch (IllegalArgumentException e) {
-				// unsupported properties
-			}
-			serializer.transform(domSource, new StreamResult(ostream));
-		}
-		catch (TransformerConfigurationException e) {
-			throw new IOException(e.getMessage());
-		}
-		catch (TransformerFactoryConfigurationError e) {
-			throw new IOException(e.getMessage());
-		}
-		catch (TransformerException e) {
-			throw new IOException(e.getMessage());
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/DocumentProvider.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/DocumentProvider.java
deleted file mode 100644
index 1b0fbac..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/util/DocumentProvider.java
+++ /dev/null
@@ -1,492 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.internal.util;
-
-
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.io.StringReader;
-import java.net.URL;
-import java.net.URLConnection;
-import java.util.StringTokenizer;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.FactoryConfigurationError;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.util.JarUtilities;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.DOMImplementation;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.EntityResolver;
-import org.xml.sax.ErrorHandler;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXParseException;
-
-/**
- * An XML Creator/Reader/Writer that 1) Ignores any DocumentType Nodes found
- * within the document (as well as any entities) 2) Ignores any
- * errors/exceptions from Xerces when loading a document 3) Can load Documents
- * from within a .JAR file (***read-only***)
- */
-
-public class DocumentProvider {
-	protected Document document = null;
-	protected ErrorHandler errorHandler = null;
-	private String fBaseReference;
-	protected String fileName = null;
-	protected boolean fValidating = true;
-	protected InputStream inputStream = null;
-	protected String jarFileName = null;
-	protected EntityResolver resolver = null;
-
-	protected Node rootElement = null;
-	protected String rootElementName = null;
-
-	public DocumentProvider() {
-	}
-
-	protected Document _getParsedDocumentDOM2() {
-		Document result = null;
-
-		InputStream is = null;
-		try {
-			DocumentBuilder builder = getDocumentBuilder();
-			// DOMParser parser = new DOMParser();
-			// parser.setFeature("http://apache.org/xml/features/continue-after-fatal-error",
-			// false);//$NON-NLS-1$
-			// parser.setFeature("http://apache.org/xml/features/nonvalidating/load-dtd-grammar",
-			// false);//$NON-NLS-1$
-			// parser.setErrorHandler(getNullErrorHandler());
-			// parser.setEntityResolver(getNullEntityResolver());
-			// is = getInputStream();
-			builder.setEntityResolver(getEntityResolver());
-			builder.setErrorHandler(getNullErrorHandler());
-			is = getInputStream();
-			if (is != null)
-				result = builder.parse(is, getBaseReference());
-		}
-		catch (SAXException e) {
-			result = null;
-			// parsing exception, notify the user?
-			Logger.log(Logger.WARNING, "SAXException while reading descriptor: " + e); //$NON-NLS-1$
-		}
-		catch (FileNotFoundException e) {
-			// NOT an "exceptional case"; do not Log
-		}
-		catch (IOException e) {
-			Logger.log(Logger.WARNING, "IOException while reading descriptor" + e); //$NON-NLS-1$
-		}
-		finally {
-			if (is != null) {
-				try {
-					is.close();
-				}
-				catch (Exception e) {
-					// what can be done?
-				}
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * @return
-	 */
-	public String getBaseReference() {
-		return fBaseReference;
-	}
-
-	/**
-	 * 
-	 * @return Document
-	 */
-	public Document getDocument() {
-		if (document == null)
-			load();
-		return document;
-	}
-
-	protected DocumentBuilder getDocumentBuilder() {
-		return CommonXML.getDocumentBuilder(isValidating());
-	}
-
-	protected DOMImplementation getDomImplementation() {
-		DocumentBuilder builder = null;
-		try {
-			builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
-		}
-		catch (ParserConfigurationException e1) {
-			Logger.logException(e1);
-		}
-		catch (FactoryConfigurationError e1) {
-			Logger.logException(e1);
-		}
-		DOMImplementation impl = builder.getDOMImplementation();
-		return impl;
-	}
-
-	/*************************************************************************
-	 * Takes a single string of the form "a/b/c" and ensures that that
-	 * structure exists below the head element, down through 'c', and returns
-	 * a <em>single</em> element 'c'. For multiple elements (such as
-	 * multiple &lt;macro&gt; elements contained within a single
-	 * &lt;macros&gt; element, full DOM access is required for searching and
-	 * child element manipulation.
-	 ************************************************************************/
-	public Element getElement(String name) {
-		if (document == null)
-			load();
-		if (document != null)
-			return (Element) getNode(getRootElement(), name);
-		else
-			return null;
-	}
-
-	/**
-	 * Returns an EntityResolver that won't try to load and resolve ANY
-	 * entities
-	 */
-	private EntityResolver getEntityResolver() {
-		if (resolver == null) {
-			resolver = new EntityResolver() {
-				public InputSource resolveEntity(String publicID, String systemID) throws SAXException, IOException {
-					InputSource result = null;
-					if (getBaseReference() != null) {
-						try {
-							URL spec = new URL("file://" + getBaseReference()); //$NON-NLS-1$
-							URL url = new URL(spec, systemID);
-							if (url.getProtocol().startsWith("file:")) { //$NON-NLS-1$
-								URLConnection connection = url.openConnection();
-								result = new InputSource(systemID != null ? systemID : "/_" + toString()); //$NON-NLS-1$
-								result.setPublicId(publicID);
-								result.setByteStream(connection.getInputStream());
-							}
-						}
-						catch (Exception e) {
-							result = null;
-						}
-					}
-					if (result == null) {
-						result = new InputSource(new StringReader("")); //$NON-NLS-1$
-						result.setPublicId(publicID);
-						result.setSystemId(systemID != null ? systemID : "/_" + getClass().getName()); //$NON-NLS-1$
-					}
-					return result;
-				}
-			};
-		}
-		return resolver;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getFileName() {
-		return fileName;
-	}
-
-	/**
-	 * Returns and input stream to use as the source of the Document 1) from
-	 * an InputStream set on this instance 2) from a JAR file with the given
-	 * entry name 3) from a normal file
-	 * 
-	 * @return InputStream
-	 */
-	public InputStream getInputStream() throws FileNotFoundException {
-		if (inputStream != null)
-			return inputStream;
-		else if (isJAR()) {
-			return JarUtilities.getInputStream(getJarFileName(), getFileName());
-		}
-		else {
-			return new FileInputStream(getFileName());
-		}
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getJarFileName() {
-		return jarFileName;
-	}
-
-	protected Node getNamedChild(Node parent, String childName) {
-		if (parent == null) {
-			return null;
-		}
-		NodeList childList = parent.getChildNodes();
-		for (int i = 0; i < childList.getLength(); i++) {
-			if (childList.item(i).getNodeName().equals(childName))
-				return childList.item(i);
-		}
-		return null;
-	}
-
-	protected Document getNewDocument() {
-		Document result = null;
-		try {
-			result = getDomImplementation().createDocument("", getRootElementName(), null); //$NON-NLS-1$
-			NodeList children = result.getChildNodes();
-			for (int i = 0; i < children.getLength(); i++) {
-				result.removeChild(children.item(i));
-			}
-			// we're going through this effort to avoid a NS element
-			Element settings = result.createElement(getRootElementName());
-			result.appendChild(settings);
-			return result;
-		}
-		catch (DOMException e) {
-			Logger.logException(e);
-		}
-		return null;
-	}
-
-	/*************************************************************************
-	 * Takes a single string of the form "a/b/c" and ensures that that
-	 * structure exists below the head element, down through 'c', and returns
-	 * the element 'c'.
-	 ************************************************************************/
-	protected Node getNode(Node node, String name) {
-		StringTokenizer tokenizer = new StringTokenizer(name, "/"); //$NON-NLS-1$
-		String token = null;
-		while (tokenizer.hasMoreTokens()) {
-			token = tokenizer.nextToken();
-			if (getNamedChild(node, token) == null)
-				node.appendChild(document.createElement(token));
-			node = getNamedChild(node, token);
-		}
-		return node;
-	}
-
-	/**
-	 * Returns an ErrorHandler that will not stop the parser on reported
-	 * errors
-	 */
-	private ErrorHandler getNullErrorHandler() {
-		if (errorHandler == null) {
-			errorHandler = new ErrorHandler() {
-				public void error(SAXParseException exception) throws SAXException {
-					Logger.log(Logger.WARNING, "SAXParseException with " + getJarFileName() + "/" + getFileName() + " (error) while reading descriptor: " + exception.getMessage()); //$NON-NLS-1$
-				}
-
-				public void fatalError(SAXParseException exception) throws SAXException {
-					Logger.log(Logger.WARNING, "SAXParseException with " + getJarFileName() + "/" + getFileName() + " (fatalError) while reading descriptor: " + exception.getMessage()); //$NON-NLS-1$
-				}
-
-				public void warning(SAXParseException exception) throws SAXException {
-					Logger.log(Logger.WARNING, "SAXParseException with " + getJarFileName() + "/" + getFileName() + " (warning) while reading descriptor: " + exception.getMessage()); //$NON-NLS-1$
-				}
-			};
-		}
-		return errorHandler;
-	}
-
-	protected Document getParsedDocument() {
-		Document result = null;
-		if (inputStream == null) {
-			File existenceTester = null;
-			if (isJAR())
-				existenceTester = new File(getJarFileName());
-			else
-				existenceTester = new File(getFileName());
-			if (!existenceTester.exists())
-				return null;
-		}
-
-		result = _getParsedDocumentDOM2();
-
-		return result;
-
-	}
-
-	/**
-	 * Returns the root Element of the current document
-	 * 
-	 * @return org.w3c.dom.Element
-	 */
-	public Node getRootElement() {
-		return getRootElement(getDocument());
-	}
-
-	/**
-	 * Returns the/a root Element for the current document
-	 * 
-	 * @return org.w3c.dom.Element
-	 */
-	protected Node getRootElement(Document doc) {
-		if (doc == null)
-			return null;
-		if (doc.getDocumentElement() != null)
-			return doc.getDocumentElement();
-		try {
-			Element newRootElement = doc.createElement(getRootElementName());
-			doc.appendChild(newRootElement);
-			return newRootElement;
-		}
-		catch (DOMException e) {
-			Logger.logException(e);
-		}
-		return null;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public java.lang.String getRootElementName() {
-		return rootElementName;
-	}
-
-	protected boolean isJAR() {
-		return getJarFileName() != null;
-	}
-
-	/**
-	 * @return
-	 */
-	public boolean isValidating() {
-		return fValidating;
-	}
-
-	public void load() {
-		// rootElementName and fileName are expected to be defined at this
-		// point
-		document = getParsedDocument();
-		if (document != null) {
-			if (rootElementName != null)
-				rootElement = getRootElement(document);
-			else
-				rootElement = document.getDocumentElement();
-		}
-
-		if (document == null || rootElement == null) {
-			document = getNewDocument();
-			if (document != null) {
-				NodeList children = document.getChildNodes();
-				for (int i = 0; i < children.getLength(); i++) {
-					if (children.item(i).getNodeType() == Node.ELEMENT_NODE && children.item(i).getNodeName().equals(getRootElementName()))
-						rootElement = (Element) children.item(i);
-				}
-				if (rootElement == null) {
-					for (int i = 0; i < children.getLength(); i++) {
-						if (children.item(i).getNodeType() == Node.ELEMENT_NODE) {
-							rootElement = (Element) children.item(i);
-							break;
-						}
-					}
-				}
-			}
-		}
-	}
-
-	protected void saveDocument(Document odocument, OutputStream stream) throws IOException {
-		CommonXML.serialize(odocument, stream);
-	}
-
-	/**
-	 * @param string
-	 */
-	public void setBaseReference(String string) {
-		fBaseReference = string;
-	}
-
-	/**
-	 * 
-	 * @param newFileName
-	 *            java.lang.String
-	 */
-	public void setFileName(java.lang.String newFileName) {
-		fileName = newFileName;
-	}
-
-	/**
-	 * Sets the inputStream for which to provide a Document.
-	 * 
-	 * @param inputStream
-	 *            The inputStream to set
-	 */
-	public void setInputStream(InputStream inputStream) {
-		this.inputStream = inputStream;
-	}
-
-	/**
-	 * 
-	 * @param newJarFileName
-	 *            java.lang.String
-	 */
-	public void setJarFileName(java.lang.String newJarFileName) {
-		jarFileName = newJarFileName;
-	}
-
-	/**
-	 * 
-	 * @param newRootElementName
-	 *            java.lang.String
-	 */
-	public void setRootElementName(java.lang.String newRootElementName) {
-		rootElementName = newRootElementName;
-	}
-
-	/**
-	 * @param b
-	 */
-	public void setValidating(boolean b) {
-		fValidating = b;
-	}
-
-	public void store() {
-		if (isJAR())
-			return;
-
-		if (rootElement == null) {
-			document = getNewDocument();
-			rootElement = document.getDocumentElement();
-		}
-
-		try {
-			OutputStream ostream = new FileOutputStream(getFileName());
-
-			storeDocument(document, ostream);
-
-			ostream.flush();
-			ostream.close();
-		}
-		catch (IOException e) {
-			Logger.logException("Exception saving document " + getFileName(), e); //$NON-NLS-1$
-			throw new SourceEditingRuntimeException(e);
-		}
-	}
-
-	protected void storeDocument(Document odocument, OutputStream ostream) {
-		try {
-			saveDocument(odocument, ostream);
-		}
-		catch (IOException e) {
-			Logger.logException(e);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/model/parser/DOMJSPRegionContexts.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/model/parser/DOMJSPRegionContexts.java
deleted file mode 100644
index bece372..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/model/parser/DOMJSPRegionContexts.java
+++ /dev/null
@@ -1,56 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.jst.jsp.core.model.parser;
-
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- *
- */
-
-public interface DOMJSPRegionContexts extends XMLRegionContext {
-	public static final String JSP_CLOSE = "JSP_CLOSE"; //$NON-NLS-1$
-	public static final String JSP_COMMENT_CLOSE = "JSP_COMMENT_CLOSE"; //$NON-NLS-1$
-
-	public static final String JSP_COMMENT_OPEN = "JSP_COMMENT_OPEN"; //$NON-NLS-1$
-	public static final String JSP_COMMENT_TEXT = "JSP_COMMENT_TEXT"; //$NON-NLS-1$
-
-	public static final String JSP_CONTENT = "JSP_CONTENT"; //$NON-NLS-1$
-	public static final String JSP_DECLARATION_OPEN = "JSP_DECLARATION_OPEN"; //$NON-NLS-1$
-	public static final String JSP_DIRECTIVE_CLOSE = "JSP_DIRECTIVE_CLOSE"; //$NON-NLS-1$
-	public static final String JSP_DIRECTIVE_NAME = "JSP_DIRECTIVE_NAME"; //$NON-NLS-1$
-
-	public static final String JSP_DIRECTIVE_OPEN = "JSP_DIRECTIVE_OPEN"; //$NON-NLS-1$
-	public static final String JSP_EL_CLOSE = "JSP_EL_CLOSE"; //$NON-NLS-1$
-	public static final String JSP_EL_CONTENT = "JSP_EL_CONTENT"; //$NON-NLS-1$
-	public static final String JSP_EL_DQUOTE = "JSP_EL_DQUOTE"; //$NON-NLS-1$
-
-	public static final String JSP_EL_OPEN = "JSP_EL_OPEN"; //$NON-NLS-1$
-	public static final String JSP_EL_QUOTED_CONTENT = "JSP_EL_QUOTED_CONTENT"; //$NON-NLS-1$
-	public static final String JSP_EL_SQUOTE = "JSP_EL_SQUOTE"; //$NON-NLS-1$
-	public static final String JSP_EXPRESSION_OPEN = "JSP_EXPRESSION_OPEN"; //$NON-NLS-1$
-
-	public static final String JSP_ROOT_TAG_NAME = "JSP_ROOT_TAG_NAME"; //$NON-NLS-1$
-
-	public static final String JSP_SCRIPTLET_OPEN = "JSP_SCRIPTLET_OPEN"; //$NON-NLS-1$
-	public static final String JSP_VBL_CLOSE = "JSP_VBL_CLOSE"; //$NON-NLS-1$
-	public static final String JSP_VBL_CONTENT = "JSP_VBL_CONTENT"; //$NON-NLS-1$
-	public static final String JSP_VBL_DQUOTE = "JSP_VBL_DQUOTE"; //$NON-NLS-1$
-	public static final String JSP_VBL_OPEN = "JSP_VBL_OPEN"; //$NON-NLS-1$
-	public static final String JSP_VBL_QUOTED_CONTENT = "JSP_VBL_QUOTED_CONTENT"; //$NON-NLS-1$
-	public static final String JSP_VBL_SQUOTE = "JSP_VBL_SQUOTE"; //$NON-NLS-1$
-	public static final String XML_TAG_ATTRIBUTE_VALUE_DQUOTE = "XML_TAG_ATTRIBUTE_VALUE_DQUOTE"; //$NON-NLS-1$
-
-	public static final String XML_TAG_ATTRIBUTE_VALUE_SQUOTE = "XML_TAG_ATTRIBUTE_VALUE_SQUOTE"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/EmbeddedTypeStateData.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/EmbeddedTypeStateData.java
deleted file mode 100644
index e197116..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/EmbeddedTypeStateData.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.modelhandler;
-
-
-
-import org.eclipse.wst.sse.core.modelhandler.EmbeddedTypeHandler;
-
-/**
- * This class is only for remembering old and new embedded handlers, 
- * in the event a re-init is needed.
- */
-public class EmbeddedTypeStateData {
-
-
-	EmbeddedTypeHandler oldHandler;
-	EmbeddedTypeHandler newHandler;
-
-	public EmbeddedTypeStateData(EmbeddedTypeHandler oldHandler, EmbeddedTypeHandler newHandler) {
-		this.oldHandler = oldHandler;
-		this.newHandler = newHandler;
-	}
-
-	public EmbeddedTypeHandler getNewHandler() {
-		return newHandler;
-	}
-
-	public EmbeddedTypeHandler getOldHandler() {
-		return oldHandler;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/JSPModelLoader.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/JSPModelLoader.java
deleted file mode 100644
index 99f121b..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/JSPModelLoader.java
+++ /dev/null
@@ -1,566 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.modelhandler;
-
-import java.io.BufferedInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.jst.jsp.core.encoding.IJSPHeadContentDetector;
-import org.eclipse.jst.jsp.core.encoding.JSPDocumentHeadContentDetector;
-import org.eclipse.jst.jsp.core.encoding.JSPDocumentLoader;
-import org.eclipse.jst.jsp.core.internal.document.PageDirectiveAdapterFactory;
-import org.eclipse.jst.jsp.core.internal.document.PageDirectiveWatcherFactory;
-import org.eclipse.jst.jsp.core.internal.domdocument.DOMModelForJSP;
-import org.eclipse.jst.jsp.core.internal.parser.JSPReParser;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
-import org.eclipse.jst.jsp.core.modelquery.ModelQueryAdapterFactoryForJSP;
-import org.eclipse.wst.html.core.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-import org.eclipse.wst.sse.core.AbstractModelLoader;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IModelLoader;
-import org.eclipse.wst.sse.core.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistry;
-import org.eclipse.wst.sse.core.internal.modelhandler.EmbeddedTypeRegistryImpl;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.eclipse.wst.sse.core.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.parser.JSPCapableParser;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.util.Assert;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.xml.core.contenttype.ContentTypeIdForXML;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.DebugAdapterFactory;
-import org.eclipse.wst.xml.core.internal.document.XMLModelImpl;
-import org.eclipse.wst.xml.core.internal.propagate.PropagatingAdapterFactoryImpl;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-import org.w3c.dom.Document;
-
-public class JSPModelLoader extends AbstractModelLoader {
-	protected final int MAX_BUFFERED_SIZE_FOR_RESET_MARK = 200000;
-
-	/**
-	 * DMW - Note: I think the embeddedTypeRegistry in IModelManager can be
-	 * removed
-	 */
-	private EmbeddedTypeRegistry embeddedContentTypeRegistry;
-	private final static String DEFAULT_MIME_TYPE = "text/html"; //$NON-NLS-1$
-	private final static String SPEC_DEFAULT_ENCODING = "ISO-8859-1"; //$NON-NLS-1$
-	private final static String DEFAULT_LANGUAGE = "java"; //$NON-NLS-1$
-
-	public JSPModelLoader() {
-		super();
-	}
-
-	/**
-	 * Gets the embeddedContentTypeRegistry.
-	 * 
-	 * @return Returns a EmbeddedContentTypeRegistry
-	 */
-	private EmbeddedTypeRegistry getEmbeddedContentTypeRegistry() {
-		if (embeddedContentTypeRegistry == null) {
-			embeddedContentTypeRegistry = EmbeddedTypeRegistryImpl.getInstance();
-		}
-		return embeddedContentTypeRegistry;
-	}
-
-	public IStructuredModel newModel() {
-		DOMModelForJSP model = new DOMModelForJSP();
-		return model;
-	}
-
-	/**
-	 * Specification cites ISO-8859-1/Latin-1 as the default charset.
-	 */
-	protected String getDefaultEncoding() {
-		return SPEC_DEFAULT_ENCODING;
-	}
-
-	/**
-	 * For JSP files, text/html is the default content type. This may want
-	 * this different for types like jsv (jsp for voice xml) For now, hard
-	 * code to new instance. In future, should get instance from registry.
-	 * 
-	 * Specification cites HTML as the default contentType.
-	 */
-	private EmbeddedTypeHandler getJSPDefaultEmbeddedType() {
-		EmbeddedTypeRegistry reg = getEmbeddedContentTypeRegistry();
-		return reg.getTypeFor(getDefaultMimeType());
-	}
-
-	/**
-	 * Method getDefaultMimeType.
-	 * 
-	 * @return String
-	 */
-	private String getDefaultMimeType() {
-		return DEFAULT_MIME_TYPE;
-	}
-
-	/**
-	 * This method should retrieve the model from the file system (or what
-	 * ever the loader is prepared to do). If the resource can not be found
-	 * (and therefore a model can not be created), then it should return null.
-	 */
-	// public void load(Reader reader, IStructuredModel model, EncodingRule
-	// encodingRule) throws java.io.IOException {
-	// initializeEmbeddedTypeFromStream(reader, model);
-	// setLanguageInPageDirective(model);
-	// super.load(reader, model, encodingRule);
-	// }
-	/**
-	 * This method must return a new instance of IStructuredDocument, that has
-	 * been initialized with appropriate parser. For many loaders, the
-	 * (default) parser used is known for any input. For others, the correct
-	 * parser (and its initialization) is normall dependent on the content of
-	 * the file. This no-argument method should assume "empty input" and would
-	 * therefore return the default parser for the default contentType.
-	 * 
-	 * If the parser is to handle tag libraries, it must have a TaglibSupport
-	 * object with a valid URIResolver and this IStructuredDocument attached
-	 * to it before the contents are set on the IStructuredDocument.
-	 */
-	public IStructuredDocument newStructuredDocument() {
-		IStructuredDocument structuredDocument = StructuredDocumentFactory.getNewStructuredDocumentInstance(getParser());
-		((BasicStructuredDocument) structuredDocument).setReParser(new JSPReParser());
-		// structuredDocument.setDocumentPartitioner(new
-		// JSPJavaDocumentPartioner());
-		// even though this is an "empty model" ... we want it to have at
-		// least the
-		// default embeddeded content type handler
-		EmbeddedTypeHandler embeddedType = getJSPDefaultEmbeddedType();
-		embeddedType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-		return structuredDocument;
-	}
-
-	public RegionParser getParser() {
-		// remember, the Loader
-		// will need to finish initialization of parser
-		// based on "embedded content"
-		return new JSPSourceParser();
-	}
-
-	protected void preLoadAdapt(IStructuredModel structuredModel) {
-		super.preLoadAdapt(structuredModel);
-		XMLModel domModel = (XMLModel) structuredModel;
-		//
-		// document must have already been set for this to
-		// work.
-		Document document = domModel.getDocument();
-		Assert.isNotNull(document);
-		// if there is a model in the adapter, this will adapt it to
-		// first node. After that the PropagatingAdater spreads over the
-		// children being
-		// created. Each time that happends, a side effect is to
-		// also "spread" sprecific registered adapters,
-		// they two can propigate is needed.
-		// This 'get' causes first to be be attached.
-		PropagatingAdapter propagatingAdapter = (PropagatingAdapter) ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
-		// may make this easier to use in futue
-		propagatingAdapter.addAdaptOnCreateFactory(new PageDirectiveWatcherFactory());
-		if (Debug.debugNotificationAndEvents) {
-			propagatingAdapter.addAdaptOnCreateFactory(new DebugAdapterFactory());
-		}
-		// For JSPs, the ModelQueryAdapter must be "attached" to the document
-		// before content is set in the model, so taglib initization can
-		// take place.
-		((INodeNotifier) document).getAdapterFor(ModelQueryAdapter.class);
-		//
-
-	}
-
-	/**
-	 * This method must return those factories which must be attached to the
-	 * structuredModel before content is applied.
-	 */
-	public List getAdapterFactories() {
-		List result = new ArrayList();
-		IAdapterFactory factory = null;
-		//
-		factory = new ModelQueryAdapterFactoryForJSP();
-		result.add(factory);
-		factory = new PropagatingAdapterFactoryImpl();
-		result.add(factory);
-		factory = new PageDirectiveAdapterFactory();
-		result.add(factory);
-
-
-
-		return result;
-	}
-
-	/**
-	 * @see com.ibm.sed.model.AbstractDumper#getDocumentEncodingDetector()
-	 */
-	public IJSPHeadContentDetector getHeadParser() {
-		return new JSPDocumentHeadContentDetector();
-	}
-
-	/**
-	 * This init method is for the case where we are getting the embedded type
-	 * from the input stream specifically.
-	 */
-	// private void initializeEmbeddedTypeFromStream(Reader reader,
-	// IStructuredModel model) throws IOException {
-	// IFile file = ResourceUtil.getFileFor(model);
-	// JSPDocumentLoader jspDocumentLoader =(JSPDocumentLoader)
-	// getDocumentLoader();
-	// EmbeddedTypeHandler inputEmbeddedContentType =
-	// jspDocumentLoader.getEmbeddedType(file);
-	// EmbeddedTypeHandler existingEmbeddedType = getEmbeddedType(model);
-	// // we don't expect the existing type to be null, but if it is, then
-	// // this is a simply init case, not re-init
-	// if (existingEmbeddedType == null) {
-	// initializeEmbeddedType(model, inputEmbeddedContentType);
-	// }
-	// else {
-	// if (existingEmbeddedType != inputEmbeddedContentType) {
-	// // only need to reinitialize if truely different
-	// reInitializeEmbeddedType(model, existingEmbeddedType,
-	// inputEmbeddedContentType);
-	// }
-	// }
-	// }
-	/**
-	 * This init method is for the case where we are creating an empty model,
-	 * which we always do.
-	 */
-	private void initializeEmbeddedTypeFromDefault(IStructuredModel model) {
-		EmbeddedTypeHandler embeddedContentType = getJSPDefaultEmbeddedType();
-		initializeEmbeddedType(model, embeddedContentType);
-	}
-
-	/**
-	 * This is "initialize" since is always assumes it hasn't been initalized
-	 * yet.
-	 */
-	private void initializeEmbeddedType(IStructuredModel model, EmbeddedTypeHandler embeddedContentType) {
-		// check program logic
-		Assert.isNotNull(embeddedContentType, "Program error: invalid call during model initialization"); //$NON-NLS-1$
-		// once we know the embedded content type, we need to set it in the
-		// PageDirectiveAdapter ... the order of initialization is
-		// critical here, the doc must have been created, but its contents not
-		// set yet,
-		// and all factories must have been set up also.
-		XMLModel domModel = (XMLModel) model;
-		XMLDocument document = domModel.getDocument();
-		PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getAdapterFor(PageDirectiveAdapter.class);
-		pageDirectiveAdapter.setEmbeddedType(embeddedContentType);
-		embeddedContentType.initializeFactoryRegistry(model.getFactoryRegistry());
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		embeddedContentType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-		// adding language here, in this convienent central
-		// location, but some obvious renaming or refactoring
-		// wouldn't hurt, in future.
-		// I needed to add this language setting for JSP Fragment support
-		// Note: I don't think this attempted init counts for much.
-		// I think its always executed when model is very first
-		// being initialized, and doesn't even have content
-		// or an ID yet. I thought I'd leave, since it wouldn't
-		// hurt, in case its called in other circumstances.
-		// String language = getLanguage(model);
-		// pageDirectiveAdapter.setLanguage(language);
-	}
-
-	/**
-	 * Method getLanguage.
-	 * 
-	 * @param model
-	 * @return String
-	 */
-	private String getLanguage(IStructuredModel model) {
-		String result = null;
-		// first check the model (document itself) to see if contains
-		result = getLanguageFromStructuredDocument(model.getStructuredDocument());
-		// Note: if model contains an unsupported
-		// language, we'll even return it,
-		// since who knows what future holds.
-
-		// always return something
-		if (result == null) {
-			result = DEFAULT_LANGUAGE;
-		}
-		return result;
-	}
-
-	/**
-	 * Method getLanguageFromStructuredDocument.
-	 * 
-	 * @param structuredDocument
-	 * @return String
-	 */
-	private String getLanguageFromStructuredDocument(IStructuredDocument structuredDocument) {
-		if (structuredDocument == null)
-			return null;
-		String result = null;
-		// bascially same algorithm as get encoding or
-		// get content type from structuredDocument.
-		IJSPHeadContentDetector localHeadParser = getHeadParser();
-		// we can be assured that its already been
-		// parsed. If not call parseHeaderForPageDirective()
-		// before calling getLanguage;
-		localHeadParser.set(structuredDocument);
-		try {
-			result = localHeadParser.getLanguage();
-		} catch (IOException e) {
-			// impossible
-			// TODO need to reconsider design to avoid
-			throw new Error(e);
-		}
-		return result;
-	}
-
-	/**
-	 * This is "reinitialize" since there should always be at least the
-	 * default one assigned, before we start checking the stream
-	 */
-	private void reInitializeEmbeddedType(IStructuredModel model, EmbeddedTypeHandler oldEmbeddedContentType, EmbeddedTypeHandler newEmbeddedContentType) {
-		// check program logic
-		Assert.isNotNull(oldEmbeddedContentType, "Program error: invalid call during model initialization"); //$NON-NLS-1$
-		// once we know the embedded content type, we need to set it in the
-		// PageDirectiveAdapter ... the order of initialization is
-		// critical here, the doc must have been created, but its contents not
-		// set yet,
-		// and all factories must have been set up also.
-		XMLModel domModel = (XMLModel) model;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		XMLDocument document = domModel.getDocument();
-		PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getExistingAdapter(PageDirectiveAdapter.class);
-		// ==> // PropagatingAdapter propagatingAdapter = (PropagatingAdapter)
-		// ((INodeNotifier)
-		// document).getExistingAdapter(PropagatingAdapter.class);
-		// ==> // ModelQueryAdapter modelQueryAdapter = (ModelQueryAdapter)
-		// ((INodeNotifier)
-		// document).getExistingAdapter(ModelQueryAdapter.class);
-		oldEmbeddedContentType.uninitializeFactoryRegistry(model.getFactoryRegistry());
-		oldEmbeddedContentType.uninitializeParser((JSPCapableParser) structuredDocument.getParser());
-		// since 'document' is not recreated in this
-		// reinit path, we need to remove all adapters,
-		// except for the propagated adapters (including page
-		// directive adapter, and model query adapter).
-		// to accomplish this, we'll just remove all, then
-		// add back with a call to pre-load adapt.
-		// let clients decide to unload adapters from document
-		// Collection oldAdapters = document.getAdapters();
-		// Iterator oldAdaptersIterator = oldAdapters.iterator();
-		// while (oldAdaptersIterator.hasNext()) {
-		// INodeAdapter oldAdapter = (INodeAdapter)
-		// oldAdaptersIterator.next();
-		// if (oldAdapter != pageDirectiveAdapter && oldAdapter !=
-		// propagatingAdapter && oldAdapter != modelQueryAdapter) {
-		// // DO NOT remove directly!
-		// // can change contents while in notifity loop!
-		// //oldAdaptersIterator.remove();
-		// document.removeAdapter(oldAdapter);
-		// }
-		// }
-		// DMW: I believe something like the following is needed,
-		// since releases cached adapters
-		// if (document instanceof DocumentImpl) {
-		// ((DocumentImpl) document).releaseDocumentType();
-		// ((DocumentImpl) document).releaseStyleSheets();
-		// }
-		// remember, embedded type factories are automatically cleared when
-		// embededType changed
-		pageDirectiveAdapter.setEmbeddedType(newEmbeddedContentType);
-		// // but still need to clear the page directive watchers, and let
-		// them be rediscovered (with new, accurate node as target)
-		// pageDirectiveAdapter.clearPageWatchers();
-		if (newEmbeddedContentType != null) {
-		
-			// need to null out or else ModelParserAdapter
-			// won't get reinitialized
-			((XMLModelImpl)model).setModelParser(null);
-			
-			newEmbeddedContentType.initializeFactoryRegistry(model.getFactoryRegistry());
-			newEmbeddedContentType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-
-			// partitioner setup is the responsibility of this loader
-			IDocumentPartitioner documentPartitioner = structuredDocument.getDocumentPartitioner();
-			// ISSUE: this logic is flawed, not sure of original intent, but
-			// added null/type checks for safety.
-			if (documentPartitioner != null && documentPartitioner instanceof StructuredTextPartitionerForJSP) {
-				if (newEmbeddedContentType.getFamilyId().equals(ContentTypeIdForXML.ContentTypeID_XML)) {
-					((StructuredTextPartitionerForJSP) documentPartitioner).setEmbeddedPartitioner(new StructuredTextPartitionerForXML());
-				} else if (newEmbeddedContentType.getFamilyId().equals(ContentTypeIdForHTML.ContentTypeID_HTML)) {
-					((StructuredTextPartitionerForJSP) documentPartitioner).setEmbeddedPartitioner(new StructuredTextPartitionerForHTML());
-				}
-			}
-		}
-		// adding language here, in this convienent central
-		// location, but some obvious renaming or refactoring
-		// wouldn't hurt, in future.
-		// I needed to add this language setting for JSP Fragment support
-		// Note: this is the one that counts, since at this point,
-		// the model has an ID, so we can look up IFile, etc.
-		String language = getLanguage(model);
-		if (language != null && language.length() > 0) {
-			pageDirectiveAdapter.setLanguage(language);
-		}
-	}
-
-	/**
-	 * This is "reinitialize" since there should always be at least the
-	 * default one assigned, before we start checking the stream
-	 */
-	private void initCloneOfEmbeddedType(IStructuredModel model, EmbeddedTypeHandler oldEmbeddedContentType, EmbeddedTypeHandler newEmbeddedContentType) {
-		// check program logic
-		Assert.isNotNull(oldEmbeddedContentType, "Program error: invalid call during model initialization"); //$NON-NLS-1$
-		// once we know the embedded content type, we need to set it in the
-		// PageDirectiveAdapter ... the order of initialization is
-		// critical here, the doc must have been created, but its contents not
-		// set yet,
-		// and all factories must have been set up also.
-		XMLModel domModel = (XMLModel) model;
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		XMLDocument document = domModel.getDocument();
-		PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getAdapterFor(PageDirectiveAdapter.class);
-		// ==> // PropagatingAdapter propagatingAdapter = (PropagatingAdapter)
-		// ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
-		// ==> // ModelQueryAdapter modelQueryAdapter = (ModelQueryAdapter)
-		// ((INodeNotifier) document).getAdapterFor(ModelQueryAdapter.class);
-		// because, even in the clone case, the model has been paritally
-		// intialized with
-		// the old embedded type (during createModel), we need to unitialize
-		// parts of it, based on the old (or default) ones
-		oldEmbeddedContentType.uninitializeFactoryRegistry(model.getFactoryRegistry());
-		oldEmbeddedContentType.uninitializeParser((JSPCapableParser) structuredDocument.getParser());
-		// remember, embedded type factories are automatically cleared when
-		// embededType changed
-		pageDirectiveAdapter.setEmbeddedType(newEmbeddedContentType);
-		if (newEmbeddedContentType != null) {
-			newEmbeddedContentType.initializeFactoryRegistry(model.getFactoryRegistry());
-			newEmbeddedContentType.initializeParser((JSPCapableParser) structuredDocument.getParser());
-		}
-		// adding language here, in this convienent central
-		// location, but some obvious renaming or refactoring
-		// wouldn't hurt, in future.
-		// I needed to add this language setting for JSP Fragment support
-		// Note: this is the one that counts, since at this point,
-		// the model has an ID, so we can look up IFile, etc.
-		String language = getLanguage(model);
-		if (language != null && language.length() > 0) {
-			pageDirectiveAdapter.setLanguage(language);
-		}
-	}
-
-	private EmbeddedTypeHandler getEmbeddedType(IStructuredModel model) {
-		Document doc = ((XMLModel) model).getDocument();
-		PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) ((INodeNotifier) doc).getAdapterFor(PageDirectiveAdapter.class);
-		EmbeddedTypeHandler embeddedHandler = pageDirectiveAdapter.getEmbeddedType();
-		return embeddedHandler;
-	}
-
-	/**
-	 * Method initEmbeddedType.
-	 */
-	protected void initEmbeddedType(IStructuredModel model) {
-		initializeEmbeddedTypeFromDefault(model);
-	}
-
-	/**
-	 * Method initEmbeddedType.
-	 */
-	protected void initEmbeddedType(IStructuredModel oldModel, IStructuredModel newModel) {
-		EmbeddedTypeHandler existingEmbeddedType = getEmbeddedType(oldModel);
-		EmbeddedTypeHandler newEmbeddedContentType = existingEmbeddedType.newInstance();
-		if (existingEmbeddedType == null) {
-			initEmbeddedType(newModel);
-		} else {
-			// initEmbeddedType(newModel);
-			initCloneOfEmbeddedType(newModel, existingEmbeddedType, newEmbeddedContentType);
-		}
-		setLanguageInPageDirective(newModel);
-	}
-
-	protected void setLanguageInPageDirective(IStructuredModel newModel) {
-		if (newModel instanceof XMLModel) {
-			XMLDocument document = ((XMLModel) newModel).getDocument();
-			PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getAdapterFor(PageDirectiveAdapter.class);
-			String language = getLanguage(newModel);
-			pageDirectiveAdapter.setLanguage(language);
-		}
-	}
-
-	public IStructuredModel reinitialize(IStructuredModel model) {
-		EmbeddedTypeHandler oldHandler = null;
-		EmbeddedTypeHandler newHandler = null;
-		Object reinitStateData = model.getReinitializeStateData();
-		if (reinitStateData instanceof EmbeddedTypeStateData) {
-			EmbeddedTypeStateData oldStateData = (EmbeddedTypeStateData) reinitStateData;
-			oldHandler = oldStateData.getOldHandler();
-			newHandler = oldStateData.getNewHandler();
-			// note. We should already have the new handler in the model's
-			// (documents) adapters,
-			// so need need to use the old one to undo the old state data
-			reInitializeEmbeddedType(model, oldHandler, newHandler);
-		} else {
-			// for language ... we someday MIGHT have to do something
-			// here, but for now, we don't have any model-side language
-			// sensitive adapters.
-		}
-		return super.reinitialize(model);
-	}
-
-	public IModelLoader newInstance() {
-		return new JSPModelLoader();
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		if (documentLoaderInstance == null) {
-			documentLoaderInstance = new JSPDocumentLoader();
-		}
-		return documentLoaderInstance;
-	}
-
-	/**
-	 * Ensures that an InputStream has mark/reset support.
-	 */
-	public static InputStream getMarkSupportedStream(InputStream original) {
-		if (original == null)
-			return null;
-		if (original.markSupported())
-			return original;
-		return new BufferedInputStream(original);
-	}
-
-	protected byte[] getBytes(InputStream inputStream, int max) throws IOException {
-		byte[] smallBuffer = new byte[max];
-		byte[] returnBuffer = null;
-		int nRead = inputStream.read(smallBuffer, 0, max);
-		if (nRead < max) {
-			// empty file will return -1;
-			if (nRead < 0)
-				nRead = 0;
-			byte[] smallerBuffer = new byte[nRead];
-			System.arraycopy(smallBuffer, 0, smallerBuffer, 0, nRead);
-			returnBuffer = smallerBuffer;
-		} else {
-			returnBuffer = smallBuffer;
-		}
-		return returnBuffer;
-	}
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/ModelHandlerForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/ModelHandlerForJSP.java
deleted file mode 100644
index 22b065f..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelhandler/ModelHandlerForJSP.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.modelhandler;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jst.jsp.core.encoding.JSPDocumentHeadContentDetector;
-import org.eclipse.jst.jsp.core.encoding.JSPDocumentLoader;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-import org.eclipse.jst.jsp.core.internal.parser.JSPSourceParser;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.IModelLoader;
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.modelhandler.AbstractModelHandler;
-import org.eclipse.wst.sse.core.parser.BlockMarker;
-
-public class ModelHandlerForJSP extends AbstractModelHandler {
-
-	/**
-	 * Needs to match what's in plugin registry. In fact, can be overwritten
-	 * at run time with what's in registry! (so should never be 'final')
-	 */
-	static String AssociatedContentTypeID = "org.eclipse.jst.jsp.core.jspsource"; //$NON-NLS-1$
-	/**
-	 * Needs to match what's in plugin registry. In fact, can be overwritten
-	 * at run time with what's in registry! (so should never be 'final')
-	 */
-	private static String ModelHandlerID = "org.eclipse.jst.jsp.core.modelhandler"; //$NON-NLS-1$
-
-
-	public ModelHandlerForJSP() {
-		super();
-		setId(ModelHandlerID);
-		setAssociatedContentTypeId(AssociatedContentTypeID);
-	}
-
-	//	private static final String PageDesigner =
-	// "com.ibm.etools.webedit.page.PageDesigner"; //$NON-NLS-1$
-	//	private static final String HTMLEditor =
-	// "com.ibm.etools.webedit.editor.HTMLEditor"; //$NON-NLS-1$
-
-	protected void addJSPTagName(JSPSourceParser parser, String tagname) {
-		BlockMarker bm = new BlockMarker(tagname, null, DOMJSPRegionContexts.JSP_CONTENT, true);
-		parser.addBlockMarker(bm);
-	}
-
-	public IModelLoader getModelLoader() {
-		return new JSPModelLoader();
-	}
-
-	public Preferences getPreferences() {
-		return JSPCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	public IDocumentCharsetDetector getEncodingDetector() {
-		return new JSPDocumentHeadContentDetector();
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		return new JSPDocumentLoader();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryAdapterImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryAdapterImpl.java
deleted file mode 100644
index 80e1dc2..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryAdapterImpl.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.modelquery;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapterImpl;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-
-
-public class JSPModelQueryAdapterImpl extends ModelQueryAdapterImpl {
-	public JSPModelQueryAdapterImpl(CMDocumentCache cmDocumentCache, ModelQuery modelQuery, IdResolver idResolver) {
-		super(cmDocumentCache, modelQuery, idResolver);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryAssociationProvider.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryAssociationProvider.java
deleted file mode 100644
index 6f37181..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryAssociationProvider.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.modelquery;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.SimpleAssociationProvider;
-
-/**
- */
-public class JSPModelQueryAssociationProvider extends SimpleAssociationProvider {
-
-	/**
-	 * @param modelQueryCMProvider
-	 *            org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryCMProvider
-	 */
-	public JSPModelQueryAssociationProvider() {
-		super(new JSPModelQueryCMProvider());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryCMProvider.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryCMProvider.java
deleted file mode 100644
index ec45f48..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryCMProvider.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.modelquery;
-
-
-
-import java.util.List;
-
-import org.eclipse.jst.jsp.core.internal.contentmodel.JSPCMDocumentFactory;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryCMProvider;
-import org.w3c.dom.Node;
-
-/**
- * CMDocument provider for HTML and JSP documents.
- */
-public class JSPModelQueryCMProvider implements ModelQueryCMProvider {
-
-	protected JSPModelQueryCMProvider() {
-		super();
-	}
-
-	/**
-	 * Returns the CMDocument that corresponds to the DOM Node. or null if no
-	 * CMDocument is appropriate for the DOM Node.
-	 */
-	public CMDocument getCorrespondingCMDocument(Node node) {
-		CMDocument jcmdoc = JSPCMDocumentFactory.getCMDocument();
-
-		CMDocument result = null;
-		try {
-			if (node.getNodeType() == Node.ELEMENT_NODE) {
-				String elementName = node.getNodeName();
-
-				// test to see if this node belongs to JSP's CMDocument (case
-				// sensitive)
-				CMElementDeclaration dec = (CMElementDeclaration) jcmdoc.getElements().getNamedItem(elementName);
-				if (dec != null) {
-					result = jcmdoc;
-				}
-			}
-
-			String prefix = node.getPrefix();
-
-			if (result == null && prefix != null && prefix.length() > 0 && node instanceof XMLNode) {
-				// check position dependent
-				XMLNode xmlNode = (XMLNode) node;
-				TLDCMDocumentManager tldmgr = TaglibController.getTLDCMDocumentManager(xmlNode.getStructuredDocument());
-				if (tldmgr != null) {
-					List documents = tldmgr.getCMDocumentTrackers(node.getPrefix(), xmlNode.getStartOffset());
-					// there shouldn't be more than one cmdocument returned
-					if (documents != null && documents.size() > 0)
-						result = (CMDocument) documents.get(0);
-				}
-			}
-		}
-		catch (Exception e) {
-			e.printStackTrace();
-		}
-		return result;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryImpl.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryImpl.java
deleted file mode 100644
index 3ad3eb5..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/JSPModelQueryImpl.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.modelquery;
-
-
-import java.util.HashMap;
-import java.util.List;
-
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.ModelQueryImpl;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class JSPModelQueryImpl extends ModelQueryImpl {
-
-	protected IStructuredModel jspModel = null;
-	private HashMap embeddedModelQueries = new HashMap();
-	public JSPModelQueryImpl(IStructuredModel model, IdResolver resolver) {
-		super(new JSPModelQueryAssociationProvider());
-		jspModel = model;
-	}
-
-	/*
-	 * @see ModelQuery#getCMElementDeclaration(Element)
-	 */
-	public CMElementDeclaration getCMElementDeclaration(Element element) {
-		CMElementDeclaration result = super.getCMElementDeclaration(element);
-		if (result == null) {
-			ModelQuery query = getEmbeddedModelQuery(element);
-			if (query != null) {
-				result = query.getCMElementDeclaration(element);
-			}
-		}
-		return result;
-	}
-
-	/*
-	 * @see ModelQuery#getCorrespondingCMDocument(Node)
-	 */
-	public CMDocument getCorrespondingCMDocument(Node node) {
-		CMDocument doc = super.getCorrespondingCMDocument(node);
-		if (doc == null) {
-			ModelQuery query = getEmbeddedModelQuery(node);
-			if (query != null) {
-				doc = query.getCorrespondingCMDocument(node);
-			}
-		}
-		return doc;
-	}
-
-	/*
-	 * @see ModelQuery#getCMNode(Node)
-	 */
-	public CMNode getCMNode(Node node) {
-		CMNode result = super.getCMNode(node);
-		if (result == null) {
-			ModelQuery query = getEmbeddedModelQuery(node);
-			if (query != null) {
-				result = query.getCMNode(node);
-			}
-		}
-		return result;
-	}
-
-	public List getAvailableContent(Element element, CMElementDeclaration ed, int includeOptions) {
-		ModelQuery emq = getEmbeddedModelQuery(element);
-		if (emq != null)
-			return emq.getAvailableContent(element, ed, includeOptions);
-		else
-			return super.getAvailableContent(element, ed, includeOptions);
-	}
-
-	protected ModelQuery getEmbeddedModelQuery(Node node) {
-	    ModelQuery emq = null;
-		   
-			if (node instanceof INodeNotifier) {
-				Node ownerNode = node.getOwnerDocument();
-				if (ownerNode == null) {
-					// then must be the document itself
-					ownerNode = node;
-				}
-				PageDirectiveAdapter typeadapter = (PageDirectiveAdapter) ((INodeNotifier) ownerNode).getAdapterFor(PageDirectiveAdapter.class);
-				if (typeadapter != null) {
-				    
-				    String contentType = typeadapter.getContentType();
-				    Object o = embeddedModelQueries.get(contentType);
-				    if(o == null) {
-						ModelQueryAdapter embeddedAdapter = (ModelQueryAdapter) typeadapter.adapt((INodeNotifier) node, ModelQueryAdapter.class);
-						if (embeddedAdapter != null) {
-						    // we will cache one model query per content type
-						    emq = embeddedAdapter.getModelQuery();
-						    embeddedModelQueries.put(contentType, emq);
-						}
-				    }
-					else {
-					    emq = (ModelQuery)o;
-					}
-				}
-			}
-			return emq;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery#getCMAttributeDeclaration(org.w3c.dom.Attr)
-	 */
-	public CMAttributeDeclaration getCMAttributeDeclaration(Attr attr) {
-		CMAttributeDeclaration result = super.getCMAttributeDeclaration(attr);
-		if (result == null) {
-			ModelQuery query = getEmbeddedModelQuery(attr);
-			if (query != null) {
-				result = query.getCMAttributeDeclaration(attr);
-			}
-		}
-		return result;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/ModelQueryAdapterFactoryForJSP.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/ModelQueryAdapterFactoryForJSP.java
deleted file mode 100644
index e4ecee4..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/modelquery/ModelQueryAdapterFactoryForJSP.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.core.modelquery;
-
-import java.io.File;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.IModelStateListener;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.modelquery.XMLCatalogIdResolver;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-
-public class ModelQueryAdapterFactoryForJSP extends AbstractAdapterFactory implements IModelStateListener {
-
-	protected JSPModelQueryAdapterImpl modelQueryAdapterImpl;
-
-	protected IStructuredModel stateNotifier = null;
-
-	public ModelQueryAdapterFactoryForJSP() {
-		this(ModelQueryAdapter.class, true);
-	}
-
-	/**
-	 * ModelQueryAdapterFactoryForJSP constructor comment.
-	 * 
-	 * @param adapterKey
-	 *            java.lang.Object
-	 * @param registerAdapters
-	 *            boolean
-	 */
-	public ModelQueryAdapterFactoryForJSP(Object key, boolean registerAdapters) {
-		super(key, registerAdapters);
-	}
-
-	public IAdapterFactory copy() {
-		return new ModelQueryAdapterFactoryForJSP(this.adapterKey, this.shouldRegisterAdapter);
-	}
-
-	/**
-	 * createAdapter method comment.
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-
-		if (Debug.displayInfo)
-			System.out.println("-----------------------ModelQueryAdapterFactoryForJSP.createAdapter" + target); //$NON-NLS-1$
-		if (modelQueryAdapterImpl == null) {
-			if (target instanceof XMLNode) {
-				XMLNode xmlNode = (XMLNode) target;
-				IStructuredModel model = stateNotifier = xmlNode.getModel();
-				String baseLocation = model.getBaseLocation();
-				// continue only if the location is known
-				if (baseLocation != null) {
-					stateNotifier.addModelStateListener(this);
-					CMDocumentCache cmDocumentCache = new CMDocumentCache();
-					File file = new Path(model.getBaseLocation()).toFile();
-					if (file.exists()) {
-						baseLocation = file.getAbsolutePath();
-					}
-					else {
-						IPath basePath = new Path(model.getBaseLocation());
-						IPath derivedPath = null;
-						if (basePath.segmentCount() > 1)
-							derivedPath = ResourcesPlugin.getWorkspace().getRoot().getFile(basePath).getLocation();
-						else
-							derivedPath = ResourcesPlugin.getWorkspace().getRoot().getLocation().append(basePath);
-						if (derivedPath != null) {
-							baseLocation = derivedPath.toString();
-						}
-					}
-					IdResolver resolver = new XMLCatalogIdResolver(baseLocation, model.getResolver());
-
-					ModelQuery modelQuery = new JSPModelQueryImpl(model, resolver);
-					modelQuery.setEditMode(ModelQuery.EDIT_MODE_UNCONSTRAINED);
-					modelQueryAdapterImpl = new JSPModelQueryAdapterImpl(cmDocumentCache, modelQuery, resolver);
-				}
-			}
-		}
-		return modelQueryAdapterImpl;
-	}
-
-	/**
-	 * @see IModelStateListener#modelAboutToBeChanged(IStructuredModel)
-	 */
-	public void modelAboutToBeChanged(IStructuredModel model) {
-	}
-
-	/**
-	 * @see IModelStateListener#modelChanged(IStructuredModel)
-	 */
-	public void modelChanged(IStructuredModel model) {
-	}
-
-	/**
-	 * @see IModelStateListener#modelDirtyStateChanged(IStructuredModel,
-	 *      boolean)
-	 */
-	public void modelDirtyStateChanged(IStructuredModel model, boolean isDirty) {
-	}
-
-	/**
-	 * @see IModelStateListener#modelResourceDeleted(IStructuredModel)
-	 */
-	public void modelResourceDeleted(IStructuredModel model) {
-	}
-
-	/**
-	 * @see IModelStateListener#modelResourceMoved(IStructuredModel,
-	 *      IStructuredModel)
-	 */
-	public void modelResourceMoved(IStructuredModel oldModel, IStructuredModel newModel) {
-		// if oldModel != newModel, bad things might happen with the adapter
-		stateNotifier.removeModelStateListener(this);
-		stateNotifier = newModel;
-		updateResolver(stateNotifier);
-		stateNotifier.addModelStateListener(this);
-	}
-
-
-	public void release() {
-		super.release();
-		if (stateNotifier != null) {
-			stateNotifier.removeModelStateListener(this);
-		}
-		stateNotifier = null;
-		if (modelQueryAdapterImpl != null) {
-			modelQueryAdapterImpl.release();
-		}
-	}
-
-	protected void updateResolver(IStructuredModel model) {
-		String baseLocation = model.getBaseLocation();
-		IFile baseFile = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(model.getBaseLocation()));
-		if (baseFile != null) {
-			baseLocation = baseFile.getLocation().toString();
-		}
-		modelQueryAdapterImpl.setIdResolver(new XMLCatalogIdResolver(baseLocation, model.getResolver()));
-	}
-
-	public void modelAboutToBeReinitialized(IStructuredModel structuredModel) {
-		// TODO Auto-generated method stub
-		
-	}
-
-	public void modelReinitialized(IStructuredModel structuredModel) {
-		// TODO Auto-generated method stub
-		
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/text/IJSPPartitions.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/text/IJSPPartitions.java
deleted file mode 100644
index 9f14225..0000000
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/text/IJSPPartitions.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package org.eclipse.jst.jsp.core.text;
-
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-
-/**
- * This interface is not intended to be implemented.
- * It defines the partitioning for JSP and all its partitions.
- * Clients should reference the partition type Strings defined here directly.
- * 
- * @since 1.0
- */
-public interface IJSPPartitions {
-
-	String JSP_PARTITIONING = IStructuredPartitions.STRUCTURED_PARTITIONING;
-	
-	String JSP_DEFAULT = "org.eclipse.jst.jsp.DEFAULT_JSP"; //$NON-NLS-1$
-	String JSP_COMMENT = "org.eclipse.jst.jsp.JSP_COMMENT"; //$NON-NLS-1$
-	
-	String JSP_SCRIPT_PREFIX = "org.eclipse.jst.jsp.SCRIPT."; //$NON-NLS-1$
-	String JSP_CONTENT_DELIMITER = JSP_SCRIPT_PREFIX + "DELIMITER"; //$NON-NLS-1$
-	String JSP_CONTENT_JAVA = JSP_SCRIPT_PREFIX + "JAVA"; //$NON-NLS-1$
-	String JSP_CONTENT_JAVASCRIPT = JSP_SCRIPT_PREFIX + "JAVASCRIPT"; //$NON-NLS-1$
-	String JSP_DEFAULT_EL = JSP_SCRIPT_PREFIX + "JSP_EL"; //$NON-NLS-1$
-	
-	String JSP_DIRECTIVE = "org.eclipse.jst.jsp.JSP_DIRECTIVE"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/.classpath b/bundles/org.eclipse.jst.jsp.ui/.classpath
deleted file mode 100644
index 275b34c..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/.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/bundles/org.eclipse.jst.jsp.ui/.cvsignore b/bundles/org.eclipse.jst.jsp.ui/.cvsignore
deleted file mode 100644
index fff9559..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-jspeditor.jar
-temp.folder
-org.eclipse.jst.jsp.ui_6.0.0.jar
-build.xml
diff --git a/bundles/org.eclipse.jst.jsp.ui/.options b/bundles/org.eclipse.jst.jsp.ui/.options
deleted file mode 100644
index 7174d60..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/.options
+++ /dev/null
@@ -1,2 +0,0 @@
-org.eclipse.jst.jsp.ui/debug/jspcontentassist=false
-org.eclipse.jst.jsp.ui/projectionperf=false
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/.project b/bundles/org.eclipse.jst.jsp.ui/.project
deleted file mode 100644
index 2d42e46..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.jsp.ui</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/bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 976aa89..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Wed Jan 12 16:08:24 EST 2005

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=error

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=warning

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore

-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.4

-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=enabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/bundles/org.eclipse.jst.jsp.ui/build.properties b/bundles/org.eclipse.jst.jsp.ui/build.properties
deleted file mode 100644
index cca182e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/build.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-source.jspeditor.jar = src/
-bin.includes = plugin.xml,\
-               *.jar,\
-               jspeditor.jar,\
-               icons/,\
-               plugin.properties,\
-               templates/
-src.includes = plugin.xml,\
-               plugin.properties,\
-               icons/,\
-               build.xml,\
-               templates/
diff --git a/bundles/org.eclipse.jst.jsp.ui/buildnotes_jsp.html b/bundles/org.eclipse.jst.jsp.ui/buildnotes_jsp.html
deleted file mode 100644
index 1067311..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/buildnotes_jsp.html
+++ /dev/null
@@ -1,207 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta
-	http-equiv="Content-Type"
-	content="text/html; charset=ISO-8859-1" />
-<meta
-	name="GENERATOR"
-	content="WTP" />
-<meta
-	http-equiv="Content-Style-Type"
-	content="text/css" />
-<link
-	href="theme/Master.css"
-	rel="stylesheet"
-	type="text/css" />
-<title>Build Notes for JSP Component</title>
-</head>
-<body>
-<h2>Build Notes for JSP <br />
-<br />
-M3, 02/23/2005</h2>
-
-<h3>What's new in this drop</h3>
-<h3>API Changes from previous Build/Milestone</h3>
-<h3>Problem reports fixed</h3>
-<table
-	class="bz_buglist"
-	cellpadding="4"
-	cellspacing="0"
-	width="100%">
-	<tbody>
-		<tr class="bz_normal bz_P2 bz_RESOLVED bz_FIXED bz_odd">
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=82333">82333</a>
-			<span style="display: none;"></span></td>
-
-			<td>Taglibs referenced in included files aren't loaded</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_major bz_P3 bz_CLOSED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=81687">81687</a>
-			<span style="display: none;"></span></td>
-
-			<td>Format Source on JSP file leads to code loss</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_major bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=84046">84046</a>
-			<span style="display: none;"></span></td>
-
-			<td>TLDs in JAR files not found from classpath</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_major bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=85756">85756</a>
-			<span style="display: none;"></span></td>
-
-			<td>TLD indexing maintains whitepsace in TLD URI value</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_major bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=86009">86009</a>
-			<span style="display: none;"></span></td>
-
-			<td>JSP Refactoring doesn't work</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=71224">71224</a>
-			<span style="display: none;"></span></td>
-
-			<td>[IBM WDT] JSP editor cannot link to included files</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=81686">81686</a>
-			<span style="display: none;"></span></td>
-
-			<td>Could not set JSP breakpoint on last line of file</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=81755">81755</a>
-			<span style="display: none;"></span></td>
-
-			<td>intermitant JUnit Test failure on 12/21 build</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=82608">82608</a>
-			<span style="display: none;"></span></td>
-
-			<td>TaglibController leaks documents</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=82919">82919</a>
-			<span style="display: none;"></span></td>
-
-			<td>Investigate JSP-Java Content Assist translation</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=84628">84628</a>
-			<span style="display: none;"></span></td>
-
-			<td>JSP Java hoverhelp should not be using jdt internal classes</td>
-
-		</tr>
-
-
-	</tbody>
-</table>
-</body>
-</html>
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/ctool16/newjsp_wiz.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/ctool16/newjsp_wiz.gif
deleted file mode 100644
index 0c26c93..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/ctool16/newjsp_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/class_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/class_obj.gif
deleted file mode 100644
index c00118d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/class_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/default_co.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/default_co.gif
deleted file mode 100644
index 49a1461..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/default_co.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_default_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_default_obj.gif
deleted file mode 100644
index 6929d3d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_default_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_private_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_private_obj.gif
deleted file mode 100644
index 1fe064e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_private_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_protected_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_protected_obj.gif
deleted file mode 100644
index 3377b1e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_protected_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_public_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_public_obj.gif
deleted file mode 100644
index d4cb425..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/field_public_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_default_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_default_obj.gif
deleted file mode 100644
index 4244a7f..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_default_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_private_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_private_obj.gif
deleted file mode 100644
index 7392f19..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_private_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_protected_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_protected_obj.gif
deleted file mode 100644
index 5105577..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_protected_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_public_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_public_obj.gif
deleted file mode 100644
index e4c2a83..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerclass_public_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_default_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_default_obj.gif
deleted file mode 100644
index ab1b576..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_default_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_private_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_private_obj.gif
deleted file mode 100644
index a1cbff3..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_private_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_protected_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_protected_obj.gif
deleted file mode 100644
index f58eef0..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_protected_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_public_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_public_obj.gif
deleted file mode 100644
index 2ebc46e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/innerinterface_public_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/localvariable_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/localvariable_obj.gif
deleted file mode 100644
index 8adce95..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/localvariable_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/package_obj.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/package_obj.gif
deleted file mode 100644
index 131c28d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/package_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/private_co.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/private_co.gif
deleted file mode 100644
index 5b881d8..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/private_co.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/protected_co.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/protected_co.gif
deleted file mode 100644
index cd83b96..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/protected_co.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/public.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/public.gif
deleted file mode 100644
index 7d24707..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/public.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/public_co.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/public_co.gif
deleted file mode 100644
index a9af5d5..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/public_co.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-generic.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-generic.gif
deleted file mode 100644
index 65f516e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-generic.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-jsp.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-jsp.gif
deleted file mode 100644
index 4084602..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-jsp.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-template.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-template.gif
deleted file mode 100644
index 5d1f81b..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/obj16/tag-template.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/full/wizban/newjspfile_wiz.gif b/bundles/org.eclipse.jst.jsp.ui/icons/full/wizban/newjspfile_wiz.gif
deleted file mode 100644
index bd5eb47..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/full/wizban/newjspfile_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspdecl.gif b/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspdecl.gif
deleted file mode 100644
index 35f48ef..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspdecl.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspexp.gif b/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspexp.gif
deleted file mode 100644
index ab4d74b..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspexp.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspincl.gif b/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspincl.gif
deleted file mode 100644
index 2584c31..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspincl.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspscr.gif b/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspscr.gif
deleted file mode 100644
index 1753b96..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jspscr.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jsptaglib.gif b/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jsptaglib.gif
deleted file mode 100644
index cb55e33..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/jsptaglib.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/tag-generic.gif b/bundles/org.eclipse.jst.jsp.ui/icons/snippets/tag-generic.gif
deleted file mode 100644
index 5e7fb33..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/tag-generic.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/tag-jsp.gif b/bundles/org.eclipse.jst.jsp.ui/icons/snippets/tag-jsp.gif
deleted file mode 100644
index ea4de33..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/snippets/tag-jsp.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/icons/sourceEditor.gif b/bundles/org.eclipse.jst.jsp.ui/icons/sourceEditor.gif
deleted file mode 100644
index 75ebdb8..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/icons/sourceEditor.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.jst.jsp.ui/plugin.properties b/bundles/org.eclipse.jst.jsp.ui/plugin.properties
deleted file mode 100644
index 721a1df..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/plugin.properties
+++ /dev/null
@@ -1,57 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-providerName=Eclipse.org
-pluginName=SSE JSP Source Editor
-nlFeatureName=SSE JSP Source Editor NL Support
-JSP_Source_Page_Editor.name=JSP Source Page Editor
-JSP_Files.name=JSP Files
-JSP_Templates.name=JSP Templates
-JSP_Styles.name=JSP Styles
-JSP_Annotations.name=JSP Annotations
-
-# Snippets contributions for helping with JSP syntax
-jsp_scriptlet=<%..%> scriptlet
-jsp_scr_content=<%  %>
-jsp_hidden_comment=<%--..--%> comment
-jsp_hidden_comment_content=<%--  --%>
-jsp_declaration=<%!..%> declaration
-jsp_declaration_content=<%!  %>
-jsp_expression=<%=..%> expression
-jsp_expression_content=<%=  %>
-jsp_include_directive=include directive
-jsp_include_directive_content=<%@ include file="" %>
-jsp_page_directive=page directive
-jsp_page_directive_content=<%@ page contentType="text/html; charset=" %>
-jsp_taglib_directive=taglib directive
-jsp_taglib_directive_content=<%@ taglib uri="${uri}" prefix="${prefix}" %>
-jsp_taglib_directive_uri=URI to the containing JAR file or taglib descriptor (.tld)
-jsp_taglib_directive_prefix=Namespace prefix for tags from this library
-JSPFragmentContentSettings.name=JSP Fragment
-command.jsp.refactor.rename.name=Rename
-command.jsp.refactor.rename.description=Rename a Java Element
-command.jsp.refactor.move.name=Move
-command.jsp.refactor.move.description=Move a Java Element to another package
-scope.structured.text.editor.jsp.name=Editing JSP Source
-scope.structured.text.editor.jsp.description=Editing JSP Source
-JSP_Type_Rename_Participant_Extension_Element.name=JSP Type Rename Participant
-JSP_Method_Rename_Participant_Extension_Element.name=JSP Method Rename Participant
-JSP_Package_Rename_Participant_Extension_Element.name=JSP Package Rename Participant
-JSP_Type_Move_Participant_Extension_Element.name=JSP Type Move Participant
-All_JSP_context_type_Extension_Element.name=All JSP
-JSP_New_context_type_Extension_Element.name=New JSP
-JSP_Tag_context_type_Extension_Element.name=JSP Tag
-JSP_Attribute_context_type_Extension_Element.name=JSP Attribute
-JSP_Attribute_value_context_type_Extension_Element.name=JSP Attribute value
-JSP_Query_Participant_Extension_Element.name=JSP Query Participant
-JSP_Extension_Element.label=JSP
-#org.eclipse.ui.newWizards extension point
-_UI_WIZARD_NAME = JSP
-_UI_WIZARD_CREATE_NEW_FILE = Create a new JavaServer Page
diff --git a/bundles/org.eclipse.jst.jsp.ui/plugin.xml b/bundles/org.eclipse.jst.jsp.ui/plugin.xml
deleted file mode 100644
index a385a2f..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/plugin.xml
+++ /dev/null
@@ -1,419 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin id="org.eclipse.jst.jsp.ui" name="%pluginName" version="1.0.0"
-	provider-name="%providerName"
-	class="org.eclipse.jst.jsp.ui.internal.JSPUIPlugin">
-
-	<runtime>
-		<library name="jspeditor.jar">
-			<export name="*" />
-		</library>
-	</runtime>
-	<requires>
-		<import plugin="org.eclipse.ui.ide" />
-		<import plugin="org.eclipse.ui.views" />
-		<import plugin="org.eclipse.jface.text" />
-		<import plugin="org.eclipse.ui.workbench.texteditor" />
-		<import plugin="org.eclipse.ui.editors" />
-		<import plugin="org.eclipse.ui" />
-		<import plugin="org.eclipse.wst.sse.ui" />
-		<import plugin="org.eclipse.wst.html.ui" />
-		<import plugin="org.eclipse.wst.css.ui" />
-		<import plugin="org.eclipse.wst.xml.ui" />
-		<import plugin="org.eclipse.jst.jsp.core" />
-		<import plugin="org.eclipse.wst.html.core" />
-		<import plugin="org.eclipse.wst.css.core" />
-		<import plugin="org.eclipse.wst.xml.core" />
-		<import plugin="org.eclipse.wst.xml.uriresolver" />
-		<import plugin="org.eclipse.wst.sse.core" />
-		<import plugin="org.eclipse.jdt.ui" />
-		<import plugin="org.eclipse.jdt.core" />
-		<import plugin="org.eclipse.debug.core" />
-		<import plugin="org.eclipse.jdt.debug" />
-		<import plugin="org.eclipse.core.resources" />
-		<import plugin="org.eclipse.core.runtime" />
-		<import plugin="org.eclipse.search" />
-		<import plugin="org.eclipse.ltk.core.refactoring" />
-		<import plugin="org.eclipse.ltk.ui.refactoring" />
-		<import plugin="org.eclipse.wst.common.uriresolver"/>
-		<import plugin="org.eclipse.ui.ide" />
-  		<import plugin="org.eclipse.wst.javascript.ui"/>
-	</requires>
-
-	<extension point="org.eclipse.ui.editors">
-		<editor name="%JSP_Source_Page_Editor.name"
-			icon="icons/sourceEditor.gif" extensions="jsp, jsf, jspf, jspx, tag, tagf"
-			contributorClass="org.eclipse.jst.jsp.ui.internal.editor.ActionContributorJSP"
-			class="org.eclipse.jst.jsp.ui.internal.editor.StructuredTextEditorJSP"
-			symbolicFontName="org.eclipse.wst.sse.ui.textfont"
-			id="org.eclipse.jst.jsp.ui.internal.editor.StructuredTextEditorJSP">
-		</editor>
-	</extension>
-	<extension point="org.eclipse.wst.sse.ui.extendedconfiguration">
-		<configuration 
-      		type="textviewerconfiguration"
-			class="org.eclipse.jst.jsp.ui.StructuredTextViewerConfigurationJSP"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-		<configuration 
-      		type="contentoutlineconfiguration"
-			class="org.eclipse.jst.jsp.ui.internal.views.contentoutline.JSPContentOutlineConfiguration"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-		<configuration 
-      		type="propertysheetconfiguration"
-			class="org.eclipse.wst.xml.ui.views.properties.XMLPropertySheetConfiguration"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-			<!--
-		<configuration 
-      		type="spellchecktarget"
-			class="org.eclipse.jst.jsp.ui.JSPSpellCheckTarget"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-			-->
-		<configuration 
-      		type="sourceeditingtexttools"
-			class="org.eclipse.jst.jsp.ui.internal.editor.JSPSourceEditingTextTools"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-		<configuration 
-      		type="characterpairmatcher"
-			class="org.eclipse.jst.jsp.ui.internal.text.JSPDocumentRegionEdgeMatcher"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-      <configuration
-      		type="structuredtextfoldingprovider"
-            class="org.eclipse.jst.jsp.ui.internal.projection.StructuredTextFoldingProviderJSP"
-            target="org.eclipse.jst.jsp.core.jspsource"/>
-		<definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.jsp"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-		<definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.jsp.templates"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-		<definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.jsp.styles"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-		<definition 
-      		type="showintarget"
-            value="org.eclipse.jdt.ui.PackageExplorer"
-			target="org.eclipse.jst.jsp.core.jspsource"/>
-	</extension>
-	<extension
-		point="org.eclipse.wst.sse.ui.adapterFactoryDescription">
-		<adapterFactoryDescription
-			class="org.eclipse.jst.jsp.ui.internal.registry.AdapterFactoryProviderForJSP">
-			<contentType id="org.eclipse.jst.jsp.core.jspsource" />
-		</adapterFactoryDescription>
-	</extension>
-	<extension
-		point="org.eclipse.core.filebuffers.annotationModelCreation">
-		<factory contentTypeId="org.eclipse.jst.jsp.core.jspsource"
-			class="org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModelFactory" />
-	</extension>
-	<extension point="org.eclipse.ui.preferencePages">
-
-		<!--======================================================================================-->
-		<!-- JSP PREFERENCE PAGES                                                                 -->
-		<!--======================================================================================-->
-		<page name="%JSP_Files.name"
-			category="org.eclipse.wst.sse.ui.preferences"
-			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPFilesPreferencePage"
-			id="org.eclipse.wst.sse.ui.preferences.jsp">
-		</page>
-		<page name="%JSP_Templates.name"
-			category="org.eclipse.wst.sse.ui.preferences.jsp"
-			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPTemplatePreferencePage"
-			id="org.eclipse.wst.sse.ui.preferences.jsp.templates">
-		</page>
-		<page name="%JSP_Styles.name"
-			category="org.eclipse.wst.sse.ui.preferences.jsp"
-			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPColorPage"
-			id="org.eclipse.wst.sse.ui.preferences.jsp.styles">
-		</page>
-	</extension>
-
-	<!--======================================================================================-->
-	<!-- FOR JSP/JAVA RENAME PARTICIPATION                                                    -->
-	<!--======================================================================================-->
-	<extension
-		point="org.eclipse.ltk.core.refactoring.renameParticipants">
-		<renameParticipant
-			name="%JSP_Type_Rename_Participant_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPTypeRenameParticipant"
-			id="org.eclipse.jst.jsp.ui.java.refactoring.JSPTypeRenameParticipant">
-			<enablement>
-				<with variable="affectedNatures">
-					<iterate operator="or">
-						<equals
-							value="org.eclipse.jdt.core.javanature">
-						</equals>
-					</iterate>
-				</with>
-				<with variable="element">
-					<instanceof value="org.eclipse.jdt.core.IType">
-					</instanceof>
-				</with>
-			</enablement>
-		</renameParticipant>
-
-		<renameParticipant
-			name="%JSP_Method_Rename_Participant_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPMethodRenameParticipant"
-			id="org.eclipse.jst.jsp.ui.java.refactoring.JSPMethodRenameParticipant">
-			<enablement>
-				<with variable="affectedNatures">
-					<iterate operator="or">
-						<equals
-							value="org.eclipse.jdt.core.javanature">
-						</equals>
-					</iterate>
-				</with>
-				<with variable="element">
-					<instanceof value="org.eclipse.jdt.core.IMethod">
-					</instanceof>
-				</with>
-			</enablement>
-		</renameParticipant>
-
-		<renameParticipant
-			name="%JSP_Package_Rename_Participant_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPPackageRenameParticipant"
-			id="org.eclipse.jst.jsp.ui.java.refactoring.JSPPackageRenameParticipant">
-			<enablement>
-				<with variable="affectedNatures">
-					<iterate operator="or">
-						<equals
-							value="org.eclipse.jdt.core.javanature">
-						</equals>
-					</iterate>
-				</with>
-				<with variable="element">
-					<instanceof
-						value="org.eclipse.jdt.core.IPackageFragment">
-					</instanceof>
-				</with>
-			</enablement>
-		</renameParticipant>
-	</extension>
-
-	<!--======================================================================================-->
-	<!-- FOR JSP/JAVA MOVE PARTICIPATION                                                      -->
-	<!--======================================================================================-->
-	<extension
-		point="org.eclipse.ltk.core.refactoring.moveParticipants">
-
-		<moveParticipant
-			id="org.eclipse.jst.jsp.ui.java.refactoring.JSPTypeMoveParticipant"
-			name="%JSP_Type_Move_Participant_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPTypeMoveParticipant">
-			<enablement>
-				<with variable="affectedNatures">
-					<iterate operator="or">
-						<equals value="org.eclipse.jdt.core.javanature" />
-					</iterate>
-				</with>
-				<with variable="element">
-					<instanceof value="org.eclipse.jdt.core.IType">
-					</instanceof>
-				</with>
-			</enablement>
-		</moveParticipant>
-	</extension>
-
-	<!--======================================================================================-->
-	<!-- for breakpoint                                                                       -->
-	<!--======================================================================================-->
-	<extension point="org.eclipse.wst.sse.ui.breakpoint">
-		<breakpointContribution id="org.eclipse.jst.jsp.ui.providers">
-			<!-- 
-				<provider
-				extensions="jsp, jspf, jsf"
-				class="org.eclipse.jst.jsp.ui.internal.breakpointproviders.JavaStratumBreakpointProvider"
-				id="org.eclipse.jst.jsp.ui.internal.breakpointproviders.JavaStratumBreakpointProvider">
-				</provider>
-			-->
-			<provider contentTypes="org.eclipse.jst.jsp.core.jspsource"
-				class="org.eclipse.jst.jsp.ui.internal.breakpointproviders.JavaStratumBreakpointProvider:*jsp"
-				id="org.eclipse.jst.jsp.ui.internal.breakpointproviders.JavaStratumBreakpointProvider" />
-		</breakpointContribution>
-	</extension>
-
-	<!--======================================================================================-->
-	<!-- Snippet View contributions                                                           -->
-	<!--======================================================================================-->
-	<extension
-		point="org.eclipse.wst.sse.snippets.SnippetContributions">
-		<category label="%JSP_Extension_Element.label"
-			icon="icons/snippets/tag-jsp.gif"
-			id="org.eclipse.jst.jsp.ui.category0"
-			contenttypes="org.eclipse.jst.jsp.core.jspsource" />
-		<item label="%jsp_hidden_comment"
-			icon="icons/snippets/tag-generic.gif"
-			category="org.eclipse.jst.jsp.ui.category0"
-			class="org.eclipse.wst.sse.snippets.insertions.VariableInsertion"
-			id="org.eclipse.jst.jsp.ui.jsp_hidden_comment">
-			<content>%jsp_hidden_comment_content</content>
-		</item>
-		<item label="%jsp_scriptlet" icon="icons/snippets/jspscr.gif"
-			category="org.eclipse.jst.jsp.ui.category0"
-			class="org.eclipse.wst.sse.snippets.insertions.VariableInsertion"
-			id="org.eclipse.jst.jsp.ui.jsp_scriptlet">
-			<content>%jsp_scr_content</content>
-		</item>
-		<item label="%jsp_expression" icon="icons/snippets/jspexp.gif"
-			category="org.eclipse.jst.jsp.ui.category0"
-			class="org.eclipse.wst.sse.snippets.insertions.VariableInsertion"
-			id="org.eclipse.jst.jsp.ui.jsp_expression">
-			<content>%jsp_expression_content</content>
-		</item>
-		<item label="%jsp_declaration" icon="icons/snippets/jspdecl.gif"
-			category="org.eclipse.jst.jsp.ui.category0"
-			class="org.eclipse.wst.sse.snippets.insertions.VariableInsertion"
-			id="org.eclipse.jst.jsp.ui.jsp_declaration">
-			<content>%jsp_declaration_content</content>
-		</item>
-		<item label="%jsp_include_directive"
-			icon="icons/snippets/jspincl.gif"
-			category="org.eclipse.jst.jsp.ui.category0"
-			class="org.eclipse.wst.sse.snippets.insertions.VariableInsertion"
-			id="org.eclipse.jst.jsp.ui.jsp_include_directive">
-			<content>%jsp_include_directive_content</content>
-		</item>
-		<item label="%jsp_page_directive"
-			category="org.eclipse.jst.jsp.ui.category0"
-			class="org.eclipse.wst.sse.snippets.insertions.VariableInsertion"
-			id="org.eclipse.jst.jsp.ui.jsp_page_directive">
-			<content>%jsp_page_directive_content</content>
-		</item>
-		<item label="%jsp_taglib_directive"
-			icon="icons/snippets/jsptaglib.gif"
-			category="org.eclipse.jst.jsp.ui.category0"
-			class="org.eclipse.wst.sse.snippets.insertions.PrependInsertion"
-			id="org.eclipse.jst.jsp.ui.jsp_taglib_directive">
-			<content>%jsp_taglib_directive_content</content>
-			<variable description="%jsp_taglib_directive_uri"
-				id="uri">
-			</variable>
-			<variable default="mylib"
-				description="%jsp_taglib_directive_prefix" id="prefix">
-			</variable>
-		</item>
-	</extension>
-
-	<!-- Editor actionsets -->
-	<extension point="org.eclipse.ui.actionSetPartAssociations">
-		<actionSetPartAssociation
-			targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
-			<part id="org.eclipse.jst.jsp.ui.internal.editor.StructuredTextEditorJSP">
-			</part>
-		</actionSetPartAssociation>
-		<actionSetPartAssociation
-			targetID="org.eclipse.ui.NavigateActionSet">
-			<part id="org.eclipse.jst.jsp.ui.internal.editor.StructuredTextEditorJSP">
-			</part>
-		</actionSetPartAssociation>
-	</extension>
-
-	<!--======================================================================================-->
-	<!-- JSP Editor specific actions                                                          -->
-	<!--======================================================================================-->
-	<extension point="org.eclipse.ui.commands">
-		<scope name="%scope.structured.text.editor.jsp.name"
-			parent="org.eclipse.ui.textEditorScope"
-			description="%scope.structured.text.editor.jsp.description"
-			id="org.eclipse.jst.jsp.ui.structured.text.editor.jsp.scope">
-		</scope>
-		<!-- dmw 6/6 removed from 'scope'      parentId="org.eclipse.ui.textEditorScope" -->
-		<!-- rename refactor -->
-		<command name="%command.jsp.refactor.rename.name"
-			description="%command.jsp.refactor.rename.description"
-			category="org.eclipse.ui.category.edit"
-			id="org.eclipse.jst.jsp.ui.refactor.rename">
-		</command>
-		<keyBinding string="Alt+Shift+R"
-			scope="org.eclipse.jst.jsp.ui.structured.text.editor.jsp.scope"
-			command="org.eclipse.jst.jsp.ui.refactor.rename"
-			configuration="org.eclipse.ui.defaultAcceleratorConfiguration">
-		</keyBinding>
-		<!-- move refactor -->
-		<command name="%command.jsp.refactor.move.name"
-			description="%command.jsp.refactor.move.description"
-			category="org.eclipse.ui.category.edit"
-			id="org.eclipse.jst.jsp.ui.refactor.move">
-		</command>
-		<keyBinding string="Alt+Shift+V"
-			scope="org.eclipse.jst.jsp.ui.structured.text.editor.jsp.scope"
-			command="org.eclipse.jst.jsp.ui.refactor.move"
-			configuration="org.eclipse.ui.defaultAcceleratorConfiguration">
-		</keyBinding>
-	</extension>
-
-	<!--======================================================================================-->
-	<!-- Templates                                                                            -->
-	<!--======================================================================================-->
-	<extension point="org.eclipse.ui.editors.templates">
-		<contextType name="%All_JSP_context_type_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
-			id="jsp_all">
-		</contextType>
-		<contextType name="%JSP_New_context_type_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
-			id="jsp_new">
-		</contextType>
-		<contextType name="%JSP_Tag_context_type_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
-			id="jsp_tag">
-		</contextType>
-		<contextType
-			name="%JSP_Attribute_context_type_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
-			id="jsp_attribute">
-		</contextType>
-		<contextType
-			name="%JSP_Attribute_value_context_type_Extension_Element.name"
-			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
-			id="jsp_attribute_value">
-		</contextType>
-		<include file="templates/jspdefault-templates.xml"
-			translations="templates/jspdefault-templates.properties">
-		</include>
-	</extension>
-
-	<!--======================================================================================-->
-	<!-- queryParticipant to participate in java seraches                                     -->
-	<!--======================================================================================-->
-	<extension point="org.eclipse.jdt.ui.queryParticipants">
-		<queryParticipant
-			name="%JSP_Query_Participant_Extension_Element.name"
-			nature="org.eclipse.jdt.core.javanature"
-			class="org.eclipse.jst.jsp.ui.internal.java.search.ui.JSPQueryParticipant"
-			id="org.eclipse.jst.jsp.ui.java.search.ui.JSPQueryParticipant">
-		</queryParticipant>
-	</extension>
-	<!-- initialize xml ui preferences -->
-	<extension point="org.eclipse.core.runtime.preferences">
-	   <initializer class="org.eclipse.jst.jsp.ui.internal.preferences.JSPUIPreferenceInitializer"/>
-	</extension>
-	
-	<!--======================================================================================-->
-	<!-- Document provider for ExternalFileEditorInput                                        -->
-	<!--======================================================================================-->
-	<extension point="org.eclipse.ui.editors.documentProviders"> 
-		<provider 
-			inputTypes="org.eclipse.jst.jsp.ui.internal.hyperlink.ExternalFileEditorInput" 
-			class="org.eclipse.ui.editors.text.TextFileDocumentProvider" 
-			id="org.eclipse.jst.jsp.ui.internal.ExternalFileDocumentProvider"> 
-		</provider> 
-	</extension> 
-
-	<!-- New JSP wizard -->
-	<extension point="org.eclipse.ui.newWizards">
-		<wizard id="org.eclipse.jst.jsp.ui.internal.wizard.NewJSPWizard"
-			name="%_UI_WIZARD_NAME"
-			class="org.eclipse.jst.jsp.ui.internal.wizard.NewJSPWizard"
-			category="org.eclipse.wst.web.ui"
-			icon="icons/full/ctool16/newjsp_wiz.gif">
-			<description>%_UI_WIZARD_CREATE_NEW_FILE</description>
-			<selection class="org.eclipse.core.resources.IResource" />
-		</wizard>
-	</extension>
-</plugin>
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/StructuredTextViewerConfigurationJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/StructuredTextViewerConfigurationJSP.java
deleted file mode 100644
index 0788eb3..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/StructuredTextViewerConfigurationJSP.java
+++ /dev/null
@@ -1,512 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jdt.ui.PreferenceConstants;
-import org.eclipse.jdt.ui.text.IJavaPartitions;
-import org.eclipse.jdt.ui.text.JavaSourceViewerConfiguration;
-import org.eclipse.jdt.ui.text.JavaTextTools;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.IAutoEditStrategy;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextDoubleClickStrategy;
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.jface.text.contentassist.ContentAssistant;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jface.text.contentassist.IContentAssistant;
-import org.eclipse.jface.text.formatter.IContentFormatter;
-import org.eclipse.jface.text.formatter.MultiPassContentFormatter;
-import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
-import org.eclipse.jface.text.information.IInformationPresenter;
-import org.eclipse.jface.text.information.IInformationProvider;
-import org.eclipse.jface.text.information.InformationPresenter;
-import org.eclipse.jface.text.reconciler.IReconciler;
-import org.eclipse.jface.text.reconciler.IReconcilingStrategy;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.jst.jsp.ui.internal.autoedit.StructuredAutoEditStrategyJSP;
-import org.eclipse.jst.jsp.ui.internal.contentassist.JSPContentAssistProcessor;
-import org.eclipse.jst.jsp.ui.internal.contentassist.JSPJavaContentAssistProcessor;
-import org.eclipse.jst.jsp.ui.internal.contentassist.NoRegionContentAssistProcessorForJSP;
-import org.eclipse.jst.jsp.ui.internal.correction.CorrectionProcessorJSP;
-import org.eclipse.jst.jsp.ui.internal.format.FormattingStrategyJSPJava;
-import org.eclipse.jst.jsp.ui.internal.hyperlink.JSPJavaHyperlinkDetector;
-import org.eclipse.jst.jsp.ui.internal.hyperlink.TaglibHyperlinkDetector;
-import org.eclipse.jst.jsp.ui.internal.hyperlink.URIHyperlinkDetector;
-import org.eclipse.jst.jsp.ui.internal.reconcile.StructuredTextReconcilingStrategyForJSP;
-import org.eclipse.jst.jsp.ui.internal.style.LineStyleProviderForJSP;
-import org.eclipse.jst.jsp.ui.internal.style.java.LineStyleProviderForJava;
-import org.eclipse.jst.jsp.ui.internal.taginfo.JSPBestMatchHoverProcessor;
-import org.eclipse.jst.jsp.ui.internal.taginfo.JSPJavaBestMatchHoverProcessor;
-import org.eclipse.jst.jsp.ui.internal.taginfo.JSPJavaJavadocHoverProcessor;
-import org.eclipse.jst.jsp.ui.internal.taginfo.JSPTagInfoHoverProcessor;
-import org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.css.core.text.ICSSPartitions;
-import org.eclipse.wst.css.ui.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.css.ui.style.LineStyleProviderForEmbeddedCSS;
-import org.eclipse.wst.html.core.format.HTMLFormatProcessorImpl;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-import org.eclipse.wst.html.core.text.IHTMLPartitions;
-import org.eclipse.wst.html.ui.internal.contentassist.HTMLContentAssistProcessor;
-import org.eclipse.wst.html.ui.style.LineStyleProviderForHTML;
-import org.eclipse.wst.html.ui.taginfo.HTMLBestMatchHoverProcessor;
-import org.eclipse.wst.html.ui.taginfo.HTMLInformationProvider;
-import org.eclipse.wst.html.ui.taginfo.HTMLTagInfoHoverProcessor;
-import org.eclipse.wst.javascript.common.ui.internal.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.javascript.common.ui.internal.style.LineStyleProviderForJavaScript;
-import org.eclipse.wst.javascript.common.ui.internal.taginfo.JavaScriptBestMatchHoverProcessor;
-import org.eclipse.wst.javascript.common.ui.internal.taginfo.JavaScriptInformationProvider;
-import org.eclipse.wst.javascript.common.ui.internal.taginfo.JavaScriptTagInfoHoverProcessor;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration;
-import org.eclipse.wst.sse.ui.format.StructuredFormattingStrategy;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor;
-import org.eclipse.wst.sse.ui.preferences.CommonEditorPreferenceNames;
-import org.eclipse.wst.sse.ui.style.IHighlighter;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-import org.eclipse.wst.sse.ui.taginfo.AnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.ProblemAnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.TextHoverManager;
-import org.eclipse.wst.sse.ui.util.EditorUtility;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-import org.eclipse.wst.xml.ui.doubleclick.XMLDoubleClickStrategy;
-import org.eclipse.wst.xml.ui.internal.correction.CorrectionProcessorXML;
-import org.eclipse.wst.xml.ui.reconcile.StructuredTextReconcilingStrategyForMarkup;
-import org.eclipse.wst.xml.ui.style.LineStyleProviderForXML;
-import org.eclipse.wst.xml.ui.taginfo.XMLBestMatchHoverProcessor;
-import org.eclipse.wst.xml.ui.taginfo.XMLInformationProvider;
-import org.eclipse.wst.xml.ui.taginfo.XMLTagInfoHoverProcessor;
-
-public class StructuredTextViewerConfigurationJSP extends StructuredTextViewerConfiguration {
-
-	InformationPresenter fInformationPresenter = null;
-
-	private JavaSourceViewerConfiguration fJavaSourceViewerConfiguration;
-
-	public StructuredTextViewerConfigurationJSP() {
-		super();
-	}
-
-	public StructuredTextViewerConfigurationJSP(IPreferenceStore store) {
-		super(store);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAutoEditStrategies(org.eclipse.jface.text.source.ISourceViewer,
-	 *      java.lang.String)
-	 */
-	public IAutoEditStrategy[] getAutoEditStrategies(ISourceViewer sourceViewer, String contentType) {
-		List allStrategies = new ArrayList(0);
-
-		IAutoEditStrategy[] superStrategies = super.getAutoEditStrategies(sourceViewer, contentType);
-		for (int i = 0; i < superStrategies.length; i++) {
-			allStrategies.add(superStrategies[i]);
-		}
-
-		if (contentType == IJSPPartitions.JSP_CONTENT_JAVA) {
-			allStrategies.add(getJavaSourceViewerConfiguration().getAutoEditStrategies(sourceViewer, IJavaPartitions.JAVA_PARTITIONING)[0]);
-		}
-
-		if (contentType == IHTMLPartitions.HTML_DEFAULT || contentType == IHTMLPartitions.HTML_DECLARATION) {
-			allStrategies.add(new StructuredAutoEditStrategyJSP());
-		}
-
-		return (IAutoEditStrategy[]) allStrategies.toArray(new IAutoEditStrategy[0]);
-	}
-
-	public String[] getConfiguredContentTypes(ISourceViewer sourceViewer) {
-		if (configuredContentTypes == null) {
-			String[] xmlTypes = StructuredTextPartitionerForXML.getConfiguredContentTypes();
-			String[] htmlTypes = StructuredTextPartitionerForHTML.getConfiguredContentTypes();
-			String[] jspTypes = StructuredTextPartitionerForJSP.getConfiguredContentTypes();
-			configuredContentTypes = new String[2 + xmlTypes.length + htmlTypes.length + jspTypes.length];
-
-			configuredContentTypes[0] = IStructuredPartitions.DEFAULT_PARTITION;
-			configuredContentTypes[1] = IStructuredPartitions.UNKNOWN_PARTITION;
-
-			int index = 0;
-			System.arraycopy(xmlTypes, 0, configuredContentTypes, index += 2, xmlTypes.length);
-			System.arraycopy(htmlTypes, 0, configuredContentTypes, index += xmlTypes.length, htmlTypes.length);
-			System.arraycopy(jspTypes, 0, configuredContentTypes, index += htmlTypes.length, jspTypes.length);
-		}
-
-		return configuredContentTypes;
-	}
-
-	public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {
-		IContentAssistant ca = super.getContentAssistant(sourceViewer);
-
-		if (ca != null && ca instanceof ContentAssistant) {
-			ContentAssistant contentAssistant = (ContentAssistant) ca;
-
-			IContentAssistProcessor htmlContentAssistProcessor = new HTMLContentAssistProcessor();
-			IContentAssistProcessor jsContentAssistProcessor = new JavaScriptContentAssistProcessor();
-			IContentAssistProcessor cssContentAssistProcessor = new CSSContentAssistProcessor();
-			IContentAssistProcessor jspContentAssistProcessor = new JSPContentAssistProcessor();
-			IContentAssistProcessor jspJavaContentAssistProcessor = new JSPJavaContentAssistProcessor();
-			IContentAssistProcessor noRegionProcessorJsp = new NoRegionContentAssistProcessorForJSP();
-
-			// HTML
-			setContentAssistProcessor(contentAssistant, htmlContentAssistProcessor, IHTMLPartitions.HTML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, htmlContentAssistProcessor, IHTMLPartitions.HTML_COMMENT);
-
-			// HTML JavaScript
-			setContentAssistProcessor(contentAssistant, jsContentAssistProcessor, IHTMLPartitions.SCRIPT);
-
-			// CSS
-			setContentAssistProcessor(contentAssistant, cssContentAssistProcessor, ICSSPartitions.STYLE);
-			setContentAssistProcessor(contentAssistant, cssContentAssistProcessor, ICSSPartitions.STYLE);
-
-			// JSP
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IStructuredPartitions.DEFAULT_PARTITION);
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IXMLPartitions.XML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IHTMLPartitions.HTML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IHTMLPartitions.HTML_COMMENT);
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitions.JSP_DEFAULT);
-
-			// JSP directives
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitions.JSP_DIRECTIVE);
-			// JSP delimiters
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitions.JSP_CONTENT_DELIMITER);
-			// JSP JavaScript
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitions.JSP_CONTENT_JAVASCRIPT);
-			// JSP Java
-			setContentAssistProcessor(contentAssistant, jspJavaContentAssistProcessor, IJSPPartitions.JSP_CONTENT_JAVA);
-			// unknown
-			setContentAssistProcessor(contentAssistant, noRegionProcessorJsp, IStructuredPartitions.UNKNOWN_PARTITION);
-			// CMVC 269718
-			// JSP COMMENT
-			setContentAssistProcessor(contentAssistant, jspContentAssistProcessor, IJSPPartitions.JSP_COMMENT);
-		}
-
-		return ca;
-	}
-
-	public IContentAssistant getCorrectionAssistant(ISourceViewer sourceViewer) {
-		IContentAssistant ca = super.getCorrectionAssistant(sourceViewer);
-
-		if (ca != null && ca instanceof ContentAssistant) {
-			ContentAssistant correctionAssistant = (ContentAssistant) ca;
-			ITextEditor editor = getTextEditor();
-			if (editor != null) {
-				IContentAssistProcessor correctionProcessor = new CorrectionProcessorXML(editor);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IHTMLPartitions.HTML_DEFAULT);
-
-				correctionProcessor = new CorrectionProcessorJSP(editor);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IJSPPartitions.JSP_CONTENT_JAVA);
-			}
-		}
-
-		return ca;
-	}
-
-	public IContentFormatter getContentFormatter(ISourceViewer sourceViewer) {
-		MultiPassContentFormatter formatter = new MultiPassContentFormatter(getConfiguredDocumentPartitioning(sourceViewer), IXMLPartitions.XML_DEFAULT);
-
-		formatter.setMasterStrategy(new StructuredFormattingStrategy(new HTMLFormatProcessorImpl()));
-		formatter.setSlaveStrategy(new FormattingStrategyJSPJava(), IJSPPartitions.JSP_CONTENT_JAVA);
-
-		return formatter;
-	}
-
-	public ITextDoubleClickStrategy getDoubleClickStrategy(ISourceViewer sourceViewer, String contentType) {
-		if (contentType.compareTo(IHTMLPartitions.HTML_DEFAULT) == 0)
-			// HTML
-			return new XMLDoubleClickStrategy();
-		else if (contentType.compareTo(IHTMLPartitions.SCRIPT) == 0 || contentType.compareTo(IJSPPartitions.JSP_CONTENT_JAVA) == 0 || contentType.compareTo(IJSPPartitions.JSP_CONTENT_JAVASCRIPT) == 0)
-			// HTML JavaScript
-			// JSP Java or JSP JavaScript
-			return getJavaSourceViewerConfiguration().getDoubleClickStrategy(sourceViewer, contentType);
-		else if (contentType.compareTo(IJSPPartitions.JSP_DEFAULT) == 0)
-			// JSP
-			return new XMLDoubleClickStrategy();
-		else
-			return super.getDoubleClickStrategy(sourceViewer, contentType);
-	}
-
-	public IHighlighter getHighlighter(ISourceViewer sourceViewer) {
-		IHighlighter highlighter = super.getHighlighter(sourceViewer);
-
-		if (highlighter != null) {
-			// HTML
-			LineStyleProvider htmlLineStyleProvider = new LineStyleProviderForHTML();
-			highlighter.addProvider(IHTMLPartitions.HTML_DEFAULT, htmlLineStyleProvider);
-			highlighter.addProvider(IHTMLPartitions.HTML_COMMENT, htmlLineStyleProvider);
-			highlighter.addProvider(IHTMLPartitions.HTML_DECLARATION, htmlLineStyleProvider);
-
-			// HTML JavaScript
-			LineStyleProvider jsLineStyleProvider = new LineStyleProviderForJavaScript();
-			highlighter.addProvider(IHTMLPartitions.SCRIPT, jsLineStyleProvider);
-
-			// CSS
-			LineStyleProvider cssLineStyleProvider = new LineStyleProviderForEmbeddedCSS();
-			highlighter.addProvider(ICSSPartitions.STYLE, cssLineStyleProvider);
-
-			// JSP
-			LineStyleProvider jspLineStyleProvider = new LineStyleProviderForJSP();
-			highlighter.addProvider(IJSPPartitions.JSP_DEFAULT, jspLineStyleProvider);
-			highlighter.addProvider(IJSPPartitions.JSP_COMMENT, jspLineStyleProvider);
-			highlighter.addProvider(IJSPPartitions.JSP_DIRECTIVE, jspLineStyleProvider);
-			highlighter.addProvider(IJSPPartitions.JSP_CONTENT_DELIMITER, jspLineStyleProvider);
-
-			// XML
-			LineStyleProviderForXML xmlLineStyleProvider = new LineStyleProviderForXML();
-			highlighter.addProvider(IXMLPartitions.XML_DEFAULT, xmlLineStyleProvider);
-			highlighter.addProvider(IXMLPartitions.XML_COMMENT, xmlLineStyleProvider);
-			highlighter.addProvider(IXMLPartitions.XML_CDATA, xmlLineStyleProvider);
-			highlighter.addProvider(IXMLPartitions.XML_DECLARATION, xmlLineStyleProvider);
-			highlighter.addProvider(IXMLPartitions.XML_PI, xmlLineStyleProvider);
-
-
-			// JSP Java or JSP JavaScript
-			highlighter.addProvider(IJSPPartitions.JSP_CONTENT_JAVA, new LineStyleProviderForJava());
-			highlighter.addProvider(IJSPPartitions.JSP_CONTENT_JAVASCRIPT, new LineStyleProviderForJavaScript());
-		}
-
-		return highlighter;
-	}
-
-	public IInformationPresenter getInformationPresenter(ISourceViewer sourceViewer) {
-		if (fInformationPresenter == null) {
-			fInformationPresenter = new InformationPresenter(getInformationPresenterControlCreator(sourceViewer));
-
-			// HTML
-			IInformationProvider htmlInformationProvider = new HTMLInformationProvider();
-			fInformationPresenter.setInformationProvider(htmlInformationProvider, IHTMLPartitions.HTML_DEFAULT);
-
-			// HTML JavaScript
-			IInformationProvider javascriptInformationProvider = new JavaScriptInformationProvider();
-			fInformationPresenter.setInformationProvider(javascriptInformationProvider, IHTMLPartitions.SCRIPT);
-
-			// XML
-			IInformationProvider xmlInformationProvider = new XMLInformationProvider();
-			fInformationPresenter.setInformationProvider(xmlInformationProvider, IXMLPartitions.XML_DEFAULT);
-
-			fInformationPresenter.setSizeConstraints(60, 10, true, true);
-		}
-		return fInformationPresenter;
-	}
-
-	public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) {
-		// html
-		if (contentType == IHTMLPartitions.HTML_DEFAULT) {
-			TextHoverManager.TextHoverDescriptor[] hoverDescs = getTextHovers();
-			int i = 0;
-			while (i < hoverDescs.length) {
-				if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-					String hoverType = hoverDescs[i].getId();
-					if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType))
-						return new HTMLBestMatchHoverProcessor();
-					else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType))
-						return new ProblemAnnotationHoverProcessor();
-					else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new AnnotationHoverProcessor();
-					else if (TextHoverManager.DOCUMENTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new HTMLTagInfoHoverProcessor();
-				}
-				i++;
-			}
-		} else if (contentType == IHTMLPartitions.SCRIPT) {
-			// HTML JavaScript
-			TextHoverManager.TextHoverDescriptor[] hoverDescs = getTextHovers();
-			int i = 0;
-			while (i < hoverDescs.length) {
-				if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-					String hoverType = hoverDescs[i].getId();
-					if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType))
-						return new JavaScriptBestMatchHoverProcessor();
-					else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType))
-						return new ProblemAnnotationHoverProcessor();
-					else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new AnnotationHoverProcessor();
-					else if (TextHoverManager.DOCUMENTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new JavaScriptTagInfoHoverProcessor();
-				}
-				i++;
-			}
-		} else if ((contentType == IJSPPartitions.JSP_DEFAULT) || (contentType == IJSPPartitions.JSP_DIRECTIVE)) {
-			// JSP
-			TextHoverManager.TextHoverDescriptor[] hoverDescs = getTextHovers();
-			int i = 0;
-			while (i < hoverDescs.length) {
-				if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-					String hoverType = hoverDescs[i].getId();
-					if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType))
-						return new JSPBestMatchHoverProcessor();
-					else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType))
-						return new ProblemAnnotationHoverProcessor();
-					else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new AnnotationHoverProcessor();
-					else if (TextHoverManager.DOCUMENTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new JSPTagInfoHoverProcessor();
-				}
-				i++;
-			}
-		} else if (contentType == IJSPPartitions.JSP_CONTENT_JAVA) {
-			// JSP Java
-			TextHoverManager.TextHoverDescriptor[] hoverDescs = getTextHovers();
-			int i = 0;
-			while (i < hoverDescs.length) {
-				if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-					String hoverType = hoverDescs[i].getId();
-					if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType)) {
-						JSPJavaBestMatchHoverProcessor hover = new JSPJavaBestMatchHoverProcessor();
-						return hover;
-					} else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType))
-						return new ProblemAnnotationHoverProcessor();
-					else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new AnnotationHoverProcessor();
-					else if (TextHoverManager.DOCUMENTATION_HOVER.equalsIgnoreCase(hoverType)) {
-						JSPJavaJavadocHoverProcessor hover = new JSPJavaJavadocHoverProcessor();
-						return hover;
-					}
-				}
-				i++;
-			}
-		} else if (contentType == IXMLPartitions.XML_DEFAULT) {
-			// XML
-			TextHoverManager.TextHoverDescriptor[] hoverDescs = SSEUIPlugin.getDefault().getTextHoverManager().getTextHovers();
-			int i = 0;
-			while (i < hoverDescs.length) {
-				if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-					String hoverType = hoverDescs[i].getId();
-					if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType)) {
-						XMLBestMatchHoverProcessor hover = new XMLBestMatchHoverProcessor();
-						// hover.setEditor(getEditorPart());
-						return hover;
-					} else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType))
-						return new ProblemAnnotationHoverProcessor();
-					else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new AnnotationHoverProcessor();
-					else if (TextHoverManager.DOCUMENTATION_HOVER.equalsIgnoreCase(hoverType)) {
-						XMLTagInfoHoverProcessor hover = new XMLTagInfoHoverProcessor();
-						// hover.setEditor(getEditorPart());
-						return hover;
-					}
-				}
-				i++;
-			}
-		}
-		return super.getTextHover(sourceViewer, contentType, stateMask);
-	}
-
-	public void unConfigure(ISourceViewer viewer) {
-		super.unConfigure(viewer);
-
-		// InformationPresenters
-		if (fInformationPresenter != null)
-			fInformationPresenter.uninstall();
-	}
-
-	public IReconciler getReconciler(ISourceViewer sourceViewer) {
-
-		if (fPreferenceStore == null)
-			return null;
-
-		if (fReconciler != null) {
-			// a reconciler should always be installed or disposed of
-			if (!fReconciler.isInstalled()) {
-				fReconciler = null;
-			}
-		}
-
-		// the first time running through, there's no model (so no pref store)
-		// but the reconciler still needs to be created so that its document
-		// gets set
-		if (fReconciler == null) {
-			// create one
-			fReconciler = new StructuredRegionProcessor();
-			fReconciler.setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer));
-		}
-
-		boolean reconcilingEnabled = fPreferenceStore.getBoolean(CommonEditorPreferenceNames.EVALUATE_TEMPORARY_PROBLEMS);
-
-		if (!reconcilingEnabled)
-			return fReconciler;
-
-		if (fReconciler != null) {
-			IDocument doc = ((ITextEditor) editorPart).getDocumentProvider().getDocument(editorPart.getEditorInput());
-			IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(doc);
-			try {
-				if (sModel != null) {
-
-					IReconcilingStrategy markupStrategy = new StructuredTextReconcilingStrategyForMarkup((ITextEditor) editorPart);
-					IReconcilingStrategy jspStrategy = new StructuredTextReconcilingStrategyForJSP((ITextEditor) editorPart);
-
-					fReconciler.setReconcilingStrategy(markupStrategy, IStructuredPartitions.DEFAULT_PARTITION);
-					fReconciler.setReconcilingStrategy(markupStrategy, IXMLPartitions.XML_DEFAULT);
-
-					fReconciler.setReconcilingStrategy(jspStrategy, IJSPPartitions.JSP_DEFAULT);
-					fReconciler.setReconcilingStrategy(jspStrategy, IJSPPartitions.JSP_CONTENT_JAVA);
-					fReconciler.setReconcilingStrategy(jspStrategy, IJSPPartitions.JSP_CONTENT_DELIMITER);
-					fReconciler.setReconcilingStrategy(jspStrategy, IJSPPartitions.JSP_DIRECTIVE);
-
-					fReconciler.setDefaultStrategy(markupStrategy);
-
-					String contentTypeId = sModel.getContentTypeIdentifier();
-					if (contentTypeId != null)
-						fReconciler.setValidatorStrategy(createValidatorStrategy(contentTypeId));
-
-				}
-			} finally {
-				if (sModel != null)
-					sModel.releaseFromRead();
-			}
-		}
-		return fReconciler;
-	}
-
-	private JavaSourceViewerConfiguration getJavaSourceViewerConfiguration() {
-		if (fJavaSourceViewerConfiguration == null) {
-			IPreferenceStore store = PreferenceConstants.getPreferenceStore();
-			JavaTextTools javaTextTools = new JavaTextTools(store);
-			fJavaSourceViewerConfiguration = new JavaSourceViewerConfiguration(javaTextTools.getColorManager(), store, getTextEditor(), IJavaPartitions.JAVA_PARTITIONING);
-			//fJavaSourceViewerConfiguration = new JavaSourceViewerConfiguration(javaTextTools, getTextEditor());
-		}
-		return fJavaSourceViewerConfiguration;
-	}
-
-	/*
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getHyperlinkDetectors(org.eclipse.jface.text.source.ISourceViewer)
-	 * @since 3.1
-	 */
-	public IHyperlinkDetector[] getHyperlinkDetectors(ISourceViewer sourceViewer) {
-		if (fPreferenceStore == null)
-			return null;
-		if (sourceViewer == null || !fPreferenceStore.getBoolean(AbstractDecoratedTextEditorPreferenceConstants.EDITOR_HYPERLINKS_ENABLED))
-			return null;
-
-		List allDetectors = new ArrayList(0);
-		allDetectors.add(new JSPJavaHyperlinkDetector());
-		allDetectors.add(new TaglibHyperlinkDetector());
-		allDetectors.add(new URIHyperlinkDetector());
-
-		IHyperlinkDetector[] superDetectors = super.getHyperlinkDetectors(sourceViewer);
-		for (int m = 0; m < superDetectors.length; m++) {
-			IHyperlinkDetector detector = superDetectors[m];
-			if (!allDetectors.contains(detector)) {
-				allDetectors.add(detector);
-			}
-		}
-		return (IHyperlinkDetector[]) allDetectors.toArray(new IHyperlinkDetector[0]);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/IActionConstantsJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/IActionConstantsJSP.java
deleted file mode 100644
index a400780..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/IActionConstantsJSP.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal;
-
-/**
- * @author pavery
- */
-public interface IActionConstantsJSP {
-	public final static String ACTION_NAME_RENAME_ELEMENT = "RenameElement"; //$NON-NLS-1$
-	public final static String ACTION_NAME_MOVE_ELEMENT = "MoveElement"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/IActionDefinitionIdsJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/IActionDefinitionIdsJSP.java
deleted file mode 100644
index f90607e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/IActionDefinitionIdsJSP.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal;
-
-import org.eclipse.jdt.ui.actions.IJavaEditorActionDefinitionIds;
-
-/**
- * @author pavery
- */
-public interface IActionDefinitionIdsJSP {
-	public final static String RENAME_ELEMENT = IJavaEditorActionDefinitionIds.RENAME_ELEMENT;
-	public final static String MOVE_ELEMENT = IJavaEditorActionDefinitionIds.MOVE_ELEMENT;
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPlugin.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPlugin.java
deleted file mode 100644
index 38fde06..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPlugin.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal;
-
-import java.io.IOException;
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.text.templates.ContextTypeRegistry;
-import org.eclipse.jface.text.templates.persistence.TemplateStore;
-import org.eclipse.jst.jsp.ui.internal.preferences.JSPUIPreferenceNames;
-import org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeIdsJSP;
-import org.eclipse.ui.editors.text.templates.ContributionContextTypeRegistry;
-import org.eclipse.ui.editors.text.templates.ContributionTemplateStore;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistryImpl;
-import org.eclipse.wst.sse.ui.registry.embedded.EmbeddedAdapterFactoryRegistryImpl;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class JSPUIPlugin extends AbstractUIPlugin {
-	public final static String ID = "org.eclipse.jst.jsp.ui"; //$NON-NLS-1$
-
-	protected static JSPUIPlugin instance = null;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$	
-	
-	/**
-	 * The template store for the jsp editor. 
-	 */
-	private TemplateStore fTemplateStore;
-	
-	/** 
-	 * The template context type registry for the jsp editor. 
-	 */
-	private ContextTypeRegistry fContextTypeRegistry;
-
-	public JSPUIPlugin() {
-		super();
-		instance = this;
-	}
-
-	public static JSPUIPlugin getDefault() {
-		return instance;
-	}
-
-	public synchronized static JSPUIPlugin getInstance() {
-		return instance;
-	}
-
-	public AdapterFactoryRegistry getAdapterFactoryRegistry() {
-		return AdapterFactoryRegistryImpl.getInstance();
-
-	}
-
-	public AdapterFactoryRegistry getEmbeddedAdapterFactoryRegistry() {
-		return EmbeddedAdapterFactoryRegistryImpl.getInstance();
-
-	}
-
-	/**
-	 * Returns the template store for the jsp editor templates.
-	 * 
-	 * @return the template store for the jsp editor templates
-	 */
-	public TemplateStore getTemplateStore() {
-		if (fTemplateStore == null) {
-			fTemplateStore= new ContributionTemplateStore(getTemplateContextRegistry(), getPreferenceStore(), JSPUIPreferenceNames.TEMPLATES_KEY);
-
-			try {
-				fTemplateStore.load();
-			} catch (IOException e) {
-				Logger.logException(e);
-			}
-		}		
-		return fTemplateStore;
-	}
-	
-	/**
-	 * Returns the template context type registry for the jsp plugin.
-	 * 
-	 * @return the template context type registry for the jsp plugin
-	 */
-	public ContextTypeRegistry getTemplateContextRegistry() {
-		if (fContextTypeRegistry == null) {
-			ContributionContextTypeRegistry registry = new ContributionContextTypeRegistry();
-			registry.addContextType(TemplateContextTypeIdsJSP.ALL);
-			registry.addContextType(TemplateContextTypeIdsJSP.NEW);
-			registry.addContextType(TemplateContextTypeIdsJSP.TAG);
-			registry.addContextType(TemplateContextTypeIdsJSP.ATTRIBUTE);
-			registry.addContextType(TemplateContextTypeIdsJSP.ATTRIBUTE_VALUE);
-			
-			fContextTypeRegistry= registry;
-		}
-
-		return fContextTypeRegistry;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String value) {
-		String s = value.trim();
-		if (!s.startsWith(KEY_PREFIX, 0))
-			return s;
-		if (s.startsWith(KEY_DOUBLE_PREFIX, 0))
-			return s.substring(1);
-
-		int ix = s.indexOf(' ');
-		String key = ix == -1 ? s : s.substring(0, ix);
-
-		ResourceBundle bundle = getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key.substring(1)) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getResourceString(String key, Object[] args) {
-
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (IllegalArgumentException e) {
-			return getResourceString(key);
-		}
-
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		try {
-			if (resourceBundle == null)
-				resourceBundle = ResourceBundle.getBundle("org.eclipse.jst.jsp.ui.internal.JSPUIPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPluginResources.properties b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPluginResources.properties
deleted file mode 100644
index ed70866..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/JSPUIPluginResources.properties
+++ /dev/null
@@ -1,45 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-## The following line is a sample JSP document.  Please translate only the following parts:   
-## Use below tags ONLY for JSP 1.1
-## Welcome!
-## Use below tags ONLY for JSP 1.2
-## Welcome!
-Sample_JSP_doc=<%@ page \n\tlanguage=\"java\" \n\tcontentType=\"text/html; charset=ISO-8859-1\"\n%>\n<jsp:include flush=\"true\" page=\"titleBar.jsp\"/>\n\n<%-- Use below tags ONLY for JSP 1.1 --%>\n<%\n\tSystem.out.println(\"Welcome!\");\n%>\n<%-- Use below tags ONLY for JSP 1.2 --%>\n<jsp:scriptlet>\n\tSystem.out.println(\"Welcome!\");\n</jsp:scriptlet>
-JSP_Delimiters_UI_=JSP Delimiters
-Refactor.label=R&efactor
-RenameElement.label=Re&name
-MoveElement.label=Mo&ve
-#
-OK=OK
-JSP_changes=JSP changes
-ActionContributorJSP.0=Refa&ctor
-JSPRenameElementAction.0=Editor selection does not resolve to a renamable Java element
-JSPMoveElementAction.0=Editor selection does not resolve to movable Java elements
-BasicRefactorSearchRequestor.0=JSP Rename
-BasicRefactorSearchRequestor.1=in file: {0} line: {1}
-BasicRefactorSearchRequestor.2=Move Type ''{0}'' to package ''{1}''
-BasicRefactorSearchRequestor.3=Rename Method ''{0}'' to ''{1}''
-BasicRefactorSearchRequestor.4=Rename Type ''{0}'' to ''{1}''
-BasicRefactorSearchRequestor.5=Rename Package ''{0}'' to ''{1}''
-JSPSearchUIConfiguration.0=JSP Search - 1 Match
-JSPSearchUIConfiguration.1=JSP Search - {0} Matches
-JSPJavaOpenOnJSP.0=Open
-JSPJavaOpenOnJSP.1=Select or enter the element to open:
-TemplateContextTypeJSPAttribute.0=JSP Attributes
-TemplateContextTypeJSPAttributeValue.0=JSP Attribute Values
-TemplateContextTypeJSP.0=All JSP
-TemplateContextTypeJSPTag.0=JSP Tags
-#
-_UI_WIZARD_NEW_TITLE = New JavaServer Page
-_UI_WIZARD_NEW_HEADING = JavaServer Page
-_UI_WIZARD_NEW_DESCRIPTION = Create a new JavaServer Page.
-_ERROR_FILENAME_MUST_END_JSP = The file name must end in .jsp or .jspf
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/Logger.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/Logger.java
deleted file mode 100644
index a4373ab..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/Logger.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal;
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-/**
- * Small convenience class to log messages to plugin's log file and also, if desired,
- * the console. This class should only be used by classes in this plugin. Other
- * plugins should make their own copy, with appropriate ID.
- */
-public class Logger {
-	private static final String PLUGIN_ID = "org.eclipse.jst.jsp.ui"; //$NON-NLS-1$
-
-	private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
-
-	public static final int OK = IStatus.OK; // 0
-	public static final int INFO = IStatus.INFO; // 1
-	public static final int WARNING = IStatus.WARNING; // 2
-	public static final int ERROR = IStatus.ERROR; // 4
-
-	public static final int OK_DEBUG = 200 + OK;
-	public static final int INFO_DEBUG = 200 + INFO;
-	public static final int WARNING_DEBUG = 200 + WARNING;
-	public static final int ERROR_DEBUG = 200 + ERROR;
-
-	/**
-	 * Adds message to log.
-	 * @param level severity level of the message (OK, INFO, WARNING, ERROR, OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
-	 * @param message text to add to the log
-	 * @param exception exception thrown
-	 */
-	protected static void _log(int level, String message, Throwable exception) {
-		if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
-			if (!isDebugging())
-				return;
-		}
-
-		int severity = IStatus.OK;
-		switch (level) {
-			case INFO_DEBUG :
-			case INFO :
-				severity = IStatus.INFO;
-				break;
-			case WARNING_DEBUG :
-			case WARNING :
-				severity = IStatus.WARNING;
-				break;
-			case ERROR_DEBUG :
-			case ERROR :
-				severity = IStatus.ERROR;
-		}
-		message = (message != null) ? message : "null"; //$NON-NLS-1$
-		Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null) 
-			Platform.getLog(bundle).log(statusObj);
-	}
-
-	/**
-	 * Prints message to log if category matches /debug/tracefilter option.
-	 * @param message text to print
-	 * @param category category of the message, to be compared with /debug/tracefilter
-	 */
-	protected static void _trace(String category, String message, Throwable exception) {
-		if (isTracing(category)) {
-			message = (message != null) ? message : "null"; //$NON-NLS-1$
-			Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
-			Bundle bundle = Platform.getBundle(PLUGIN_ID);
-			if (bundle != null) 
-				Platform.getLog(bundle).log(statusObj);
-		}
-	}
-
-	/**
-	 * @return true if the platform is debugging
-	 */
-	public static boolean isDebugging() {
-		return Platform.inDebugMode();
-	}
-
-	/**
-	 * Determines if currently tracing a category
-	 * @param category
-	 * @return true if tracing category, false otherwise
-	 */
-	public static boolean isTracing(String category) {
-		if (!isDebugging())
-			return false;
-
-		String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
-		if (traceFilter != null) {
-			StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens()) {
-				String cat = tokenizer.nextToken().trim();
-				if (category.equals(cat)) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	public static void log(int level, String message) {
-		_log(level, message, null);
-	}
-
-	public static void log(int level, String message, Throwable exception) {
-		_log(level, message, exception);
-	}
-
-	public static void logException(String message, Throwable exception) {
-		_log(ERROR, message, exception);
-	}
-
-	public static void logException(Throwable exception) {
-		_log(ERROR, exception.getMessage(), exception);
-	}
-
-	public static void traceException(String category, String message, Throwable exception) {
-		_trace(category, message, exception);
-	}
-
-	public static void traceException(String category, Throwable exception) {
-		_trace(category, exception.getMessage(), exception);
-	}
-
-	public static void trace(String category, String message) {
-		_trace(category, message, null);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/autoedit/StructuredAutoEditStrategyJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/autoedit/StructuredAutoEditStrategyJSP.java
deleted file mode 100644
index 1c552a2..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/autoedit/StructuredAutoEditStrategyJSP.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.autoedit;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentCommand;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ui.texteditor.ITextEditorExtension3;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.StructuredDocumentCommand;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.ui.internal.autoedit.StructuredAutoEditStrategyXML;
-
-public class StructuredAutoEditStrategyJSP extends StructuredAutoEditStrategyXML {
-	public void customizeDocumentCommand(IDocument document, DocumentCommand command) {
-		StructuredDocumentCommand structuredDocumentCommand = (StructuredDocumentCommand) command;
-		Object textEditor = getActiveTextEditor();
-		if (!(textEditor instanceof ITextEditorExtension3 && ((ITextEditorExtension3) textEditor).getInsertMode() == ITextEditorExtension3.SMART_INSERT))
-			return;
-		
-		IStructuredModel model = null;
-		try {
-			model = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-
-			if (model != null) {
-				if (structuredDocumentCommand.text != null) {
-					if (structuredDocumentCommand.text.equals("%")) { //$NON-NLS-1$
-						XMLNode node = (XMLNode) model.getIndexedRegion(structuredDocumentCommand.offset);
-						try {
-							if (prefixedWith(document, structuredDocumentCommand.offset, "<") && !node.getSource().endsWith("%>")) { //$NON-NLS-1$ //$NON-NLS-2$
-								structuredDocumentCommand.doit = false;
-								structuredDocumentCommand.addCommand(structuredDocumentCommand.offset, 0, " %>", null); //$NON-NLS-1$
-							}
-						}
-						catch (BadLocationException e) {
-							Logger.logException(e);
-						}
-
-					}
-					else
-						super.customizeDocumentCommand(document, structuredDocumentCommand);
-				}
-			}
-		}
-		finally {
-			if (model != null)
-				model.releaseFromRead();
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/AbstractBreakpointProvider.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/AbstractBreakpointProvider.java
deleted file mode 100644
index f8b5b8f..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/AbstractBreakpointProvider.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.breakpointproviders;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.JSP12Namespace;
-import org.eclipse.jst.jsp.core.contentmodel.tld.TLDElementDeclaration;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionCollection;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.ui.extensions.breakpoint.IBreakpointProvider;
-import org.eclipse.wst.xml.core.contentmodel.CMNodeWrapper;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * Abstract breakpoint provider class which implements breakpoint provider
- * interface.
- * 
- * This is a temporary class for JavaBreakpointProvider and
- * JavaScriptBreakpointProvider, and should be refactored to separate Java and
- * JavaScript parts.
- */
-public abstract class AbstractBreakpointProvider implements IBreakpointProvider {
-
-	private static final String JSP_DIRECTIVE_PAGE = "jsp:directive.page"; //$NON-NLS-1$
-	private static final String[] JAVASCRIPT_LANGUAGE_KEYS = new String[]{"javascript", "javascript1.0", "javascript1.1_3", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				"javascript1.2", "javascript1.3", "javascript1.4", "javascript1.5", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-				"javascript1.6", "jscript", "sashscript"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	protected static final int UNSUPPORTED = 0;
-	protected static final int JAVA = 1;
-	protected static final int JAVASCRIPT = 2;
-
-	protected static final int END_OF_LINE = -1;
-	protected static final int NO_VALID_CONTENT = -2;
-
-	protected int getValidPosition(Document doc, IDocument idoc, int lineNumber) {
-		if (doc == null)
-			return NO_VALID_CONTENT;
-		if (idoc == null)
-			return NO_VALID_CONTENT;
-
-		int startOffset, endOffset;
-		try {
-			startOffset = idoc.getLineOffset(lineNumber - 1);
-			endOffset = idoc.getLineOffset(lineNumber) - 1;
-
-			if (idoc == null)
-				return NO_VALID_CONTENT;
-			String lineText = idoc.get(startOffset, endOffset - startOffset).trim();
-
-			// blank lines or lines with only an open or close brace or
-			// scriptlet tag cannot have a breakpoint
-			if (lineText.equals("") || lineText.equals("{") || //$NON-NLS-2$//$NON-NLS-1$
-						lineText.equals("}") || lineText.equals("<%"))//$NON-NLS-2$//$NON-NLS-1$
-				return NO_VALID_CONTENT;
-		}
-		catch (BadLocationException e) {
-			return NO_VALID_CONTENT;
-		}
-
-		IStructuredDocumentRegion flatNode = ((IStructuredDocument) idoc).getRegionAtCharacterOffset(startOffset);
-		// go through the node's regions looking for JSP content
-		// until reaching the end of the line
-		while (flatNode != null) {
-			int validPosition = getValidRegionPosition(((XMLDocument) doc).getModel(), flatNode, startOffset, endOffset);
-
-			if (validPosition == END_OF_LINE)
-				return NO_VALID_CONTENT;
-
-			if (validPosition >= 0)
-				return validPosition;
-
-			flatNode = flatNode.getNext();
-		}
-		return NO_VALID_CONTENT;
-	}
-
-	/*
-	 * Search the RegionContainer's regions looking for JSP content.
-	 * If valid content is found, return the position >= 0
-	 * If no valid content is found, return NO_VALID_CONTENT.
-	 * If a region starts after the line's endOffset, return END_OF_LINE.
-	 */
-	private static int getValidRegionPosition(IStructuredModel model, ITextRegionCollection regionContainer, int startOffset, int endOffset) {
-
-		ITextRegionList regions = regionContainer.getRegions();
-		for (int i = 0; i < regions.size(); i++) {
-			ITextRegion region = regions.get(i);
-			if (region instanceof ITextRegionCollection) {
-				int validPosition = getValidRegionPosition(model, (ITextRegionCollection) region, startOffset, endOffset);
-				if (validPosition == END_OF_LINE || validPosition >= 0)
-					return validPosition;
-			}
-			else {
-				// region must be at least partially on selected line
-				if (regionContainer.getEndOffset(region) > startOffset) {
-
-					int regionStartOffset = regionContainer.getStartOffset(region);
-					// if region starts after line's endOffset, we're done searching
-					if (regionStartOffset > endOffset)
-						return END_OF_LINE;
-
-					// If region is JSP content, make sure the language is Java not Javascript by
-					// checking the content assist adapter's type.
-					if (region.getType().equals(DOMJSPRegionContexts.JSP_CONTENT)) {
-						// DWM: this logic is not incorrect ... given changes to adapters, etc.
-						// but probably don't need anything here, since both Java and JavaScript
-						// are supported in V5.
-
-						// nsd_TODO: verify this!!!
-
-						//						INodeNotifier notifier = (INodeNotifier)model.getNode(region.getStartOffset());
-						//						IAdapterFactory factory = model.getFactoryRegistry().getFactoryFor(ContentAssistAdapter.class);
-						//						if(factory instanceof HTMLContentAssistAdapterFactory) {
-						//							INodeAdapter adapter = ((HTMLContentAssistAdapterFactory)factory).createAdapter(notifier, region);
-						//							if(adapter != null && adapter instanceof JSPJavaContentAssistAdapter)
-
-						if (regionStartOffset > startOffset)
-							return regionStartOffset;
-						else
-							return startOffset;
-						//						}
-					}
-					// a custom tag, jsp:useBean, getproperty or setproperty statement is also a valid breakpoint location
-					else if (region.getType().equals(XMLRegionContext.XML_TAG_NAME) && (isCustomTagRegion(model.getIndexedRegion(regionStartOffset)) || regionContainer.getText(region).equals(JSP12Namespace.ElementName.USEBEAN) || regionContainer.getText(region).equals(JSP12Namespace.ElementName.GETPROPERTY) || regionContainer.getText(region).equals(JSP12Namespace.ElementName.SETPROPERTY))) {
-
-						if (regionStartOffset > startOffset)
-							return regionStartOffset;
-						else
-							return startOffset;
-					}
-					else {
-						// Defect #241090, the Text Nodes inside of JSP scriptlets, expressions, and declarations are valid
-						// breakpoint-able locations
-						boolean isCodeNode = false;
-						IndexedRegion node = model.getIndexedRegion(regionStartOffset);
-						if (node != null && node instanceof Node) {
-							Node domNode = (Node) node;
-							Node root = domNode.getOwnerDocument().getDocumentElement();
-							if (root != null && root.getNodeName().equals(JSP12Namespace.ElementName.ROOT) && domNode.getNodeType() == Node.TEXT_NODE && domNode.getParentNode() != null) {
-								String parentName = domNode.getParentNode().getNodeName();
-								isCodeNode = parentName.equals(JSP12Namespace.ElementName.SCRIPTLET) || parentName.equals(JSP12Namespace.ElementName.EXPRESSION) || parentName.equals(JSP12Namespace.ElementName.DECLARATION);
-							}
-						}
-						if (isCodeNode) {
-							if (regionStartOffset > startOffset)
-								return regionStartOffset;
-							else
-								return startOffset;
-						}
-					}
-				}
-			}
-		}
-		return NO_VALID_CONTENT;
-	}
-
-	private static boolean isCustomTagRegion(IndexedRegion node) {
-
-		if (node instanceof Element) {
-			Element xmlElement = (Element) node;
-			ModelQuery mq = ModelQueryUtil.getModelQuery(xmlElement.getOwnerDocument());
-			CMElementDeclaration decl = mq.getCMElementDeclaration(xmlElement);
-			if (decl instanceof CMNodeWrapper) {
-				CMNode cmNode = ((CMNodeWrapper) decl).getOriginNode();
-				return cmNode instanceof TLDElementDeclaration;
-			}
-		}
-		return false;
-	}
-
-	protected IResource getEditorInputResource(IEditorInput input) {
-		IResource resource = (IResource) input.getAdapter(IFile.class);
-		if (resource == null) {
-			resource = (IResource) input.getAdapter(IResource.class);
-		}
-		return resource;
-	}
-
-
-	/*
-	 * Return the page language
-	 */
-	protected static int getPageLanguage(Document doc) {
-		if (doc == null)
-			return UNSUPPORTED;
-
-		NodeList pageDirectives = doc.getElementsByTagName(JSP_DIRECTIVE_PAGE);
-		// Search for first language directive
-		for (int i = 0; i < pageDirectives.getLength(); i++) {
-			Node child = pageDirectives.item(i);
-			Node languageAttr = child.getAttributes().getNamedItem("language"); //$NON-NLS-1$
-			if (languageAttr != null) {
-				String pageLanguage = languageAttr.getNodeValue();
-				if (pageLanguage == null || pageLanguage.length() == 0)
-					return UNSUPPORTED;
-				pageLanguage = pageLanguage.toLowerCase();
-				if (contains(JAVASCRIPT_LANGUAGE_KEYS, pageLanguage))
-					return JAVASCRIPT;
-				else if (pageLanguage.equals("java"))//$NON-NLS-1$
-					return JAVA;
-				else
-					return UNSUPPORTED;
-			}
-		}
-		return JAVA; // Java is default if no language directive
-	}
-
-	protected static boolean contains(String[] haystack, String needle) {
-		for (int i = 0; i < haystack.length; i++) {
-			if (haystack[i].equals(needle)) {
-				return true;
-			}
-		}
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaBreakpointProvider.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaBreakpointProvider.java
deleted file mode 100644
index 2b64213..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaBreakpointProvider.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.breakpointproviders;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.debug.core.JDIDebugModel;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.wst.sse.ui.extensions.breakpoint.SourceEditingTextTools;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-/**
- * A BreakpointProvider supporting server-side Java as a JSP language
- */
-public class JavaBreakpointProvider extends AbstractBreakpointProvider {
-
-	/*
-	 * @param res
-	 * @return String
-	 */
-	private static final String getTypeName(IResource res) {
-		IPath path = res.getFullPath();
-		// Assume under Web Content folder if more than 2 segments
-		if (path.segmentCount() > 2) {
-			path = path.removeFirstSegments(2);
-		}
-		else {
-			path = path.removeFirstSegments(1);
-		}
-		String typeName = path.toString().replace(IPath.SEPARATOR, '.');
-		if (res.getFileExtension() != null) {
-			typeName = typeName.substring(0, typeName.lastIndexOf('.'));
-		}
-		return typeName;
-	}
-
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.extensions.BreakpointProvider#canAddBreakpoint(org.w3c.dom.Document, org.eclipse.jface.text.IDocument, org.eclipse.ui.IEditorInput, org.w3c.dom.Node, int, int)
-	 */
-	public boolean canAddBreakpoint(Document doc, IDocument idoc, IEditorInput input, Node node, int lineNumber, int offset) {
-		IResource res = input instanceof IFileEditorInput ? ((IFileEditorInput) input).getFile() : null;
-
-		return res != null && !isBreakpointExist(res, lineNumber) && isValidPosition(doc, idoc, lineNumber) && (getPageLanguage(doc) == JAVA);
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.extensions.breakpoint.IBreakpointProvider#addBreakpoint(org.w3c.dom.Document, org.eclipse.jface.text.IDocument, org.eclipse.ui.IEditorInput, org.w3c.dom.Node, int, int)
-	 */
-	public IStatus addBreakpoint(Document doc, IDocument idoc, IEditorInput input, Node node, int lineNumber, int offset) throws CoreException {
-		int pos = getValidPosition(doc, idoc, lineNumber);
-		if (pos != NO_VALID_CONTENT) {
-			IResource res = getEditorInputResource(input);
-			if (res != null) {
-				String typeName = getTypeName(res);
-				try {
-					JDIDebugModel.createLineBreakpoint(res, typeName, lineNumber, pos, pos, 0, true, null);
-				}
-				catch(CoreException e) {
-					return e.getStatus();
-				}
-			}
-		}
-		return new Status(IStatus.OK, JSPUIPlugin.ID, IStatus.OK, JSPUIPlugin.getResourceString("%OK"), null); //$NON-NLS-1$
-	}
-
-	/*
-	 * @param res
-	 * @param lineNumber
-	 * @return boolean
-	 */
-	private boolean isBreakpointExist(IResource res, int lineNumber) {
-		try {
-			return JDIDebugModel.lineBreakpointExists(getTypeName(res), lineNumber) != null;
-		}
-		catch (CoreException e) {
-			return false;
-		}
-	}
-
-	/*
-	 * @param doc
-	 * @param idoc
-	 * @param lineNumber
-	 * @return boolean
-	 */
-	private boolean isValidPosition(Document doc, IDocument idoc, int lineNumber) {
-		return getValidPosition(doc, idoc, lineNumber) != NO_VALID_CONTENT;
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.extensions.BreakpointProvider#setSourceEditingTextTools(com.ibm.sse.editor.extensions.SourceEditingTextTools)
-	 */
-	public void setSourceEditingTextTools(SourceEditingTextTools util) {
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.extensions.BreakpointProvider#getResource(org.eclipse.ui.IStorageEditorInput)
-	 */
-	public IResource getResource(IEditorInput input) {
-		return getEditorInputResource(input);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaScriptBreakpointProvider.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaScriptBreakpointProvider.java
deleted file mode 100644
index 54179b8..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaScriptBreakpointProvider.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.breakpointproviders;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.wst.sse.ui.extensions.breakpoint.SourceEditingTextTools;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-/**
- * A IBreakpointProvider supporting server-side JavaScript as a JSP language
- *
- */
-public class JavaScriptBreakpointProvider extends AbstractBreakpointProvider {
-	public boolean canAddBreakpoint(Document doc, IDocument idoc, IEditorInput input, Node node, int lineNumber, int offset) {
-		IResource res = getEditorInputResource(input);
-		return res != null && !isBreakpointExist(res, lineNumber) && isValidPosition(doc, idoc, lineNumber) && (getPageLanguage(doc) != JAVA);
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.extensions.breakpoint.IBreakpointProvider#addBreakpoint(org.w3c.dom.Document, org.eclipse.jface.text.IDocument, org.eclipse.ui.IEditorInput, org.w3c.dom.Node, int, int)
-	 */
-	public IStatus addBreakpoint(Document doc, IDocument idoc, IEditorInput input, Node node, int lineNumber, int offset) {
-		int pos = getValidPosition(doc, idoc, lineNumber);
-		if (pos != NO_VALID_CONTENT && canAddBreakpoint(doc, idoc, input, node, lineNumber, offset)) {
-			IResource res = getEditorInputResource(input);
-			if (res != null) {
-//				try {
-				new JavascriptLineBreakpoint(res, lineNumber, pos, pos);
-//				}
-//				catch(CoreException e) {
-//					return new Status(IStatus.ERROR, JSPUIPlugin.ID, IStatus.ERROR, "Problem adding Java breakpoint", e);
-//				}
-			}
-		}
-		return new Status(IStatus.OK, JSPUIPlugin.ID, IStatus.OK, JSPUIPlugin.getResourceString("%OK"), null); //$NON-NLS-1$
-	}
-
-	/*
-	 * @param res
-	 * @param lineNumber
-	 * @return boolean
-	 */
-	private boolean isBreakpointExist(IResource res, int lineNumber) {
-		IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();
-		IBreakpoint[] breakpoints = manager.getBreakpoints();
-		for (int i = 0; i < breakpoints.length; i++) {
-			if (!(breakpoints[i] instanceof JavascriptLineBreakpoint))
-				continue;
-			JavascriptLineBreakpoint breakpoint = (JavascriptLineBreakpoint) breakpoints[i];
-			try {
-				if (breakpoint.getResource().equals(res) && breakpoint.getLineNumber() == lineNumber) {
-					return true;
-				}
-			}
-			catch (CoreException e) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	/*
-	 * @param doc
-	 * @param idoc
-	 * @param lineNumber
-	 * @return boolean
-	 */
-	private boolean isValidPosition(Document doc, IDocument idoc, int lineNumber) {
-		return getValidPosition(doc, idoc, lineNumber) != NO_VALID_CONTENT;
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.extensions.IBreakpointProvider#setSourceEditingTextTools(com.ibm.sse.editor.extensions.SourceEditingTextTools)
-	 */
-	public void setSourceEditingTextTools(SourceEditingTextTools util) {
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.extensions.IBreakpointProvider#getResource(org.eclipse.ui.IStorageEditorInput)
-	 */
-	public IResource getResource(IEditorInput input) {
-		return getEditorInputResource(input);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaStratumBreakpointProvider.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaStratumBreakpointProvider.java
deleted file mode 100644
index bbe098d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavaStratumBreakpointProvider.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.breakpointproviders;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExecutableExtension;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.jdt.debug.core.JDIDebugModel;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.wst.sse.ui.extensions.breakpoint.IBreakpointProvider;
-import org.eclipse.wst.sse.ui.extensions.breakpoint.SourceEditingTextTools;
-import org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModel;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-/**
- * A IBreakpointProvider supporting JSP breakpoints for a Non-Java Language
- * Source JSP page
- */
-public class JavaStratumBreakpointProvider implements IBreakpointProvider, IExecutableExtension {
-	private String fClassPattern = null; //$NON-NLS-1$ 
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.extensions.breakpoint.IBreakpointProvider#addBreakpoint(org.w3c.dom.Document,
-	 *      org.eclipse.jface.text.IDocument, org.eclipse.ui.IEditorInput,
-	 *      org.w3c.dom.Node, int, int)
-	 */
-	public IStatus addBreakpoint(Document doc, IDocument idoc, IEditorInput input, Node node, int editorLineNumber, int offset) throws CoreException {
-		// check if there is a valid position to set breakpoint
-		int pos = getValidPosition(idoc, editorLineNumber);
-		IStatus status = null;
-		if (pos >= 0) {
-			//SSE C3 behavior
-			//  JDIDebugModel.createStratumBreakpoint(res, "JSP",
-			// getTypeName(res), null, "*_jsp", lineNumber, -1, -1, 0, true,
-			// null); //$NON-NLS-1$ //$NON-NLS-2$
-			//Java Family Example 3.0
-			//  JDIDebugModel.createStratumBreakpoint(resource, null,
-			// resource.getName(), null, null, lineNumber, -1, -1, 0, true,
-			// null);
-			IResource res = getResourceFromInput(input);
-			if (res != null) {
-				IBreakpoint point = JDIDebugModel.createStratumBreakpoint(res, "JSP", res.getName(), null, getClassPattern(), editorLineNumber, pos, pos, 0, true, null); //$NON-NLS-1$ //$NON-NLS-2$
-				if (point == null) {
-					status = new Status(IStatus.ERROR, JSPUIPlugin.ID, IStatus.ERROR, "unsupported input type", null); //$NON-NLS-1$
-				}
-			}
-			else if (input instanceof IStorageEditorInput) {
-				// For non-resources, use the workspace root and a coordinated
-				// attribute that is used to
-				// prevent unwanted (breakpoint) markers from being loaded
-				// into the editors.
-				res = ResourcesPlugin.getWorkspace().getRoot();
-				String id = input.getName();
-				if (input instanceof IStorageEditorInput && ((IStorageEditorInput) input).getStorage() != null) {
-					id = ((IStorageEditorInput) input).getStorage().getFullPath().toString();
-				}
-				Map attributes = new HashMap();
-				attributes.put(StructuredResourceMarkerAnnotationModel.SECONDARY_ID_KEY, id);
-				IBreakpoint point = JDIDebugModel.createStratumBreakpoint(res, "JSP", input.getName(), null, getClassPattern(), editorLineNumber, pos, pos, 0, true, attributes); //$NON-NLS-1$ //$NON-NLS-2$
-				if (point == null) {
-					status = new Status(IStatus.ERROR, JSPUIPlugin.ID, IStatus.ERROR, "unsupported input type", null); //$NON-NLS-1$
-				}
-			}
-		}
-		if (status == null) {
-			status = new Status(IStatus.OK, JSPUIPlugin.ID, IStatus.OK, JSPUIPlugin.getResourceString("%OK"), null); //$NON-NLS-1$
-		}
-		return status;
-	}
-
-	private String getClassPattern() {
-		return fClassPattern;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.extensions.breakpoint.IBreakpointProvider#getResource(org.eclipse.ui.IStorageEditorInput)
-	 */
-	public IResource getResource(IEditorInput input) {
-		return getResourceFromInput(input);
-	}
-
-	private IResource getResourceFromInput(IEditorInput input) {
-		IResource resource = (IResource) input.getAdapter(IFile.class);
-		if (resource == null) {
-			resource = (IResource) input.getAdapter(IResource.class);
-		}
-		return resource;
-	}
-
-	/**
-	 * Finds a valid position somewhere on lineNumber in document, idoc, where
-	 * a breakpoint can be set and returns that position. -1 is returned if a
-	 * position could not be found.
-	 * 
-	 * @param idoc
-	 * @param editorLineNumber
-	 * @return position to set breakpoint or -1 if no position could be found
-	 */
-	private int getValidPosition(IDocument idoc, int editorLineNumber) {
-		int result = -1;
-		if (idoc != null) {
-
-			int startOffset = 0;
-			int endOffset = 0;
-			try {
-				IRegion line = idoc.getLineInformation(editorLineNumber - 1);
-				startOffset = line.getOffset();
-				endOffset = Math.max(line.getOffset(), line.getOffset() + line.getLength());
-
-				String lineText = idoc.get(startOffset, endOffset - startOffset).trim();
-
-				// blank lines or lines with only an open or close brace or
-				// scriptlet tag cannot have a breakpoint
-				if (lineText.equals("") || lineText.equals("{") || //$NON-NLS-2$//$NON-NLS-1$
-							lineText.equals("}") || lineText.equals("<%"))//$NON-NLS-2$//$NON-NLS-1$
-				{
-					result = -1;
-				}
-				else {
-					// get all partitions for current line
-					ITypedRegion[] partitions = null;
-
-					partitions = idoc.computePartitioning(startOffset, endOffset - startOffset);
-
-
-					for (int i = 0; i < partitions.length; ++i) {
-						String type = partitions[i].getType();
-						// if found jsp java content, jsp directive tags,
-						// custom
-						// tags,
-						// return that position
-						if (type == IJSPPartitions.JSP_CONTENT_JAVA || type == IJSPPartitions.JSP_DIRECTIVE) {
-							result = partitions[i].getOffset();
-						}
-					}
-				}
-			}
-			catch (BadLocationException e) {
-				result = -1;
-			}
-		}
-
-		return result;
-	}
-
-	/**
-	 * @see org.eclipse.core.runtime.IExecutableExtension#setInitializationData(org.eclipse.core.runtime.IConfigurationElement,
-	 *      java.lang.String, java.lang.Object)
-	 */
-	public void setInitializationData(IConfigurationElement config, String propertyName, Object data) throws CoreException {
-		if (data != null) {
-			if (data instanceof String && data.toString().length() > 0) {
-				fClassPattern = (String) data;
-			}
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.extensions.breakpoint.IBreakpointProvider#setSourceEditingTextTools(com.ibm.sse.editor.extensions.breakpoint.SourceEditingTextTools)
-	 */
-	public void setSourceEditingTextTools(SourceEditingTextTools util) {
-		// not used
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavascriptLineBreakpoint.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavascriptLineBreakpoint.java
deleted file mode 100644
index 8f77393..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/breakpointproviders/JavascriptLineBreakpoint.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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 Jul 20, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.jst.jsp.ui.internal.breakpointproviders;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * @author davidw
- *
- * To change the template for this generated type comment go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-public class JavascriptLineBreakpoint {
-
-	/**
-	 * @param res
-	 * @param lineNumber
-	 * @param pos
-	 * @param pos1
-	 */
-	public JavascriptLineBreakpoint(IResource res, int lineNumber, int pos, int pos1) {
-
-		// TODO Auto-generated constructor stub
-	}
-
-	/**
-	 * 
-	 */
-	public JavascriptLineBreakpoint() {
-		super();
-		// TODO Auto-generated constructor stub
-	}
-
-	/**
-	 * 
-	 */
-	public IResource getResource() throws CoreException {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 * @return
-	 */
-	public int getLineNumber() {
-		// TODO Auto-generated method stub
-		return 0;
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/BeanInfoProvider.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/BeanInfoProvider.java
deleted file mode 100644
index 2058669..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/BeanInfoProvider.java
+++ /dev/null
@@ -1,444 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import java.beans.Introspector;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.jdt.core.Flags;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IMethod;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.ITypeHierarchy;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-
-/**
- * Navigates the IJavaProject classpath (incl. source) on a given resource and infers bean properties
- * given a fully qualified beanname. Bean properties can be retrieved using:
- * <code>getRuntimeProperties(IResource baseResource, String typeName)</code>
- * 
- * @author pavery
- */
-public class BeanInfoProvider implements IBeanInfoProvider {
-
-	public class JavaPropertyDescriptor implements IJavaPropertyDescriptor {
-		String fType = null;
-		String fName = null;
-		boolean fReadable = true;
-		boolean fWritable = true;
-
-		public JavaPropertyDescriptor(String name, String type, boolean readable, boolean writable) {
-			fName = name;
-			fType = type;
-			fReadable = readable;
-			fWritable = writable;
-		}
-
-		public String getDeclaredType() {
-			return fType;
-		}
-
-		public String getDisplayName() {
-			return fName;
-		}
-
-		public String getName() {
-			return fName;
-		}
-
-		public boolean getReadable() {
-			return fReadable;
-		}
-
-		public boolean getWriteable() {
-			return fWritable;
-		}
-	}
-
-	// looks up encoded type (see Class.getName), and gives you a displayable string
-	private HashMap fEncodedTypeMap = null;
-	// to avoid repeat properties from showing up
-	private HashSet fRepeatMethods = null;
-
-	public BeanInfoProvider() {
-		fRepeatMethods = new HashSet();
-	}
-
-	/**
-	 * Returns the inferred properties of a bean based on the project from the baseResource,
-	 * and the fully qualified name of the bean.
-	 * 
-	 * @param baseResource the base resource where the bean is being used
-	 * @param typeName the <i>fully qualified</i> type name (eg. javax.swing.JButton) of the bean
-	 */
-	public IJavaPropertyDescriptor[] getRuntimeProperties(IResource baseResource, String typeName) {
-		IJavaProject javaProject = JavaCore.create(baseResource.getProject());
-		QualifiedName typeQualifiedName = getTypeQualifiedName(typeName);
-		List getMethodResults = new ArrayList();
-		List isMethodResults = new ArrayList();
-		List setMethodResults = new ArrayList();
-		List descriptorResults = new ArrayList();
-		try {
-			IType type = javaProject.findType(typeQualifiedName.getQualifier() + "." + typeQualifiedName.getLocalName()); //$NON-NLS-1$
-			// type must exist
-			if(type != null) {
-				ITypeHierarchy hierarchy = type.newTypeHierarchy(null);
-				IType[] supers = hierarchy.getAllSuperclasses(type);
-	
-				IMethod[] methods = type.getMethods();
-				// iterate the bean's methods
-				for (int i = 0; i < methods.length; i++)
-					acceptMethod(getMethodResults, isMethodResults, setMethodResults, methods[i]);
-				// the bean hierarchy's methods
-				for (int i = 0; i < supers.length; i++) {
-					methods = supers[i].getMethods();
-					for (int j = 0; j < methods.length; j++)
-						acceptMethod(getMethodResults, isMethodResults, setMethodResults, methods[j]);
-				}
-				adaptMethodsToPropertyDescriptors(getMethodResults, isMethodResults, setMethodResults, descriptorResults);
-			}
-		}
-		catch (JavaModelException jmex) {
-			Logger.logException("Problem navigating JavaProject in BeanInfoProvider", jmex); //$NON-NLS-1$
-		}
-
-		IJavaPropertyDescriptor[] finalResults = new IJavaPropertyDescriptor[descriptorResults.size()];
-		System.arraycopy(descriptorResults.toArray(), 0, finalResults, 0, descriptorResults.size());
-		return finalResults;
-	}
-
-	/**
-	 * Retrieves the necessary information from method declaration lists, creates and fills a list of JavaPropertyDescriptors.
-	 * @param getMethods
-	 * @param isMethods
-	 * @param setMethods
-	 * @param descriptorResults
-	 */
-	private void adaptMethodsToPropertyDescriptors(List getMethods, List isMethods, List setMethods, List descriptors) throws JavaModelException {
-		List readable = new ArrayList();
-		HashMap types = new HashMap();
-
-		// iterate through get* and is* methods, updating 'readable' list and 'types' map
-		filterGetMethods(getMethods, readable, types);
-		filterIsMethods(isMethods, readable, types);
-
-		// iterate set* methods, checking overlap w/ readable
-		Iterator it = setMethods.iterator();
-		IMethod temp = null;
-		String name = ""; //$NON-NLS-1$
-		String type = ""; //$NON-NLS-1$
-		String[] encodedParams = null;
-		String returnType = ""; //$NON-NLS-1$
-		String param0 = ""; //$NON-NLS-1$
-
-		while (it.hasNext()) {
-			temp = (IMethod) it.next();
-			name = createPropertyNameFromMethod(temp);
-			// invalid naming convention
-			if (name == null)
-				continue;
-
-			returnType = getDecodedTypeName(temp.getReturnType());
-			// setter should have no return type
-			if (!returnType.equals("void")) //$NON-NLS-1$
-				continue;
-
-			// need to get type from parameter
-			encodedParams = temp.getParameterTypes();
-			if (encodedParams != null && encodedParams.length > 0) {
-				if (encodedParams.length > 1) {
-					// multiple params
-					param0 = getDecodedTypeName(encodedParams[0]);
-					if (!param0.equals("int")) //$NON-NLS-1$
-						// not a valid indexed property
-						continue;
-					else
-						type = getDecodedTypeName(encodedParams[1]);
-				}
-				else {
-					// one param, regular setter
-					if (isArray(encodedParams[0]))
-						type = getDecodedTypeName(encodedParams[0]);
-				}
-			}
-
-			if (readable.contains(name)) {
-				// writable and readable
-				if (!fRepeatMethods.contains(name)) {
-					descriptors.add(new JavaPropertyDescriptor(name, (String) types.get(name), true, true));
-					readable.remove(name);
-					fRepeatMethods.add(name);
-				}
-			}
-			else {
-				// wasn't readable, just writable
-				String[] params = temp.getParameterTypes();
-				// can't be setProperty if no parameters
-				if (!(params.length > 0))
-					continue;
-				if (!fRepeatMethods.contains(name)) {
-					type = getDecodedTypeName(params[0]);
-					descriptors.add(new JavaPropertyDescriptor(name, type, false, true));
-					fRepeatMethods.add(name);
-				}
-			}
-		}
-		// add leftover from readable, get* and is* methods (readable = true, writable = false)
-		it = readable.iterator();
-		while (it.hasNext()) {
-			name = (String) it.next();
-			if (!fRepeatMethods.contains(name)) {
-				descriptors.add(new JavaPropertyDescriptor(name, (String) types.get(name), true, false));
-				fRepeatMethods.add(name);
-			}
-		}
-	}
-
-	private void filterGetMethods(List getMethods, List readable, HashMap types) throws JavaModelException {
-		IMethod temp;
-		String name;
-		String encodedReturnType;
-		String returnType;
-		Iterator it = getMethods.iterator();
-		String[] encodedParams;
-		String paramType;
-		// iterate get* methods
-		while (it.hasNext()) {
-			temp = (IMethod) it.next();
-			name = createPropertyNameFromMethod(temp);
-			// invalid bean naming convention
-			if (name == null)
-				continue;
-
-			encodedReturnType = temp.getReturnType();
-			returnType = getDecodedTypeName(encodedReturnType);
-
-			//  can't get be a getProperty if returns void
-			if (returnType.equals("void")) //$NON-NLS-1$
-				continue;
-
-			// check params in case it's indexed propety
-			encodedParams = temp.getParameterTypes();
-			if (encodedParams != null && encodedParams.length == 1) {
-				paramType = getDecodedTypeName(encodedParams[0]);
-				// syntax is > Type getter(int);
-				if (!paramType.equals("int")) { //$NON-NLS-1$
-					//it's not an indexed property
-					continue;
-				}
-				else {
-					// it is indexed, prop type is an ARRAY
-					returnType += "[]"; //$NON-NLS-1$
-				}
-			}
-
-			readable.add(name);
-			types.put(name, returnType);
-		}
-
-	}
-
-	private void filterIsMethods(List isMethodResults, List readable, HashMap types) throws JavaModelException {
-		IMethod temp;
-		String name;
-		String encodedReturnType;
-		String returnType;
-		String[] encodedParams;
-		String paramType;
-		// iterate is* methods
-		Iterator it = isMethodResults.iterator();
-		while (it.hasNext()) {
-			temp = (IMethod) it.next();
-			name = createPropertyNameFromMethod(temp);
-			// invalid bean naming convention
-			if (name == null)
-				continue;
-			encodedReturnType = temp.getReturnType();
-			returnType = getDecodedTypeName(encodedReturnType);
-
-			// isProperty only valid for boolean
-			if (!returnType.equals("boolean")) //$NON-NLS-1$
-				continue;
-
-			// check params in case it's indexed propety
-			encodedParams = temp.getParameterTypes();
-			if (encodedParams != null && encodedParams.length == 1) {
-				paramType = getDecodedTypeName(encodedParams[0]);
-				// syntax is > Type getter(int);
-				if (!paramType.equals("int")) { //$NON-NLS-1$
-					//it's not a valid indexed property
-					continue;
-				}
-			}
-
-			readable.add(name);
-			types.put(name, returnType);
-		}
-	}
-
-	/**
-	 * Pass in a get*|set*|is* method and it will return an inferred property name using <code>Introspector.decapitalize(String)</code>
-	 * @param temp
-	 * @return an inferred property name based on the IMethod name, null if the name is not valid according to bean spec
-	 */
-	private String createPropertyNameFromMethod(IMethod temp) {
-		String name = temp.getElementName();
-		if (name.startsWith("is")) //$NON-NLS-1$
-			name = Introspector.decapitalize(name.substring(2));
-		else
-			// must be get or set
-			name = Introspector.decapitalize(name.substring(3));
-		return name;
-	}
-
-	/**
-	 * Initial filtering of methods.  Checks prefix if it's valid length.  If the prefix is "get" the  method name 
-	 * is placed in the getMethodResults List.  If the prefix is "is", the name is added to the isMethodResults list.  If the
-	 * prefix is "set", it's added to the setMethodResultsList.
-	 * 
-	 * @param getMethodResults
-	 * @param isMethodResults
-	 * @param setMethodResults
-	 * @param method
-	 */
-	private void acceptMethod(List getMethodResults, List isMethodResults, List setMethodResults, IMethod method) throws JavaModelException {
-		if (!fRepeatMethods.contains(method.getElementName())) {
-			fRepeatMethods.add(method.getElementName());
-			int flags = method.getFlags();
-			String methodName = method.getElementName();
-			if (Flags.isPublic(flags)) {
-				if (methodName.length() > 3 && methodName.startsWith("get")) //$NON-NLS-1$
-					getMethodResults.add(method);
-				else if (methodName.length() > 2 && methodName.startsWith("is")) //$NON-NLS-1$
-					isMethodResults.add(method);
-				else if (methodName.length() > 3 && methodName.startsWith("set")) //$NON-NLS-1$
-					setMethodResults.add(method);
-			}
-		}
-	}
-
-	/**
-	 * @param typeName
-	 * @return a Qualified name with the package as the qualifier, and class name as LocalName
-	 */
-	private QualifiedName getTypeQualifiedName(String typeName) {
-		StringTokenizer st = new StringTokenizer(typeName, ".", false); //$NON-NLS-1$
-		int length = st.countTokens();
-		int count = 0;
-		StringBuffer root = new StringBuffer();
-		while (count++ < length - 1) {
-			root.append(st.nextToken());
-			if (count < length - 1)
-				root.append('.');
-		}
-		return new QualifiedName(root.toString(), st.nextToken());
-	}
-
-	/**
-	 * Checks if encodedTypeName is an array
-	 * @param encodedTypeName
-	 * @return true if encodedTypeName is an array, false otherwise.
-	 */
-	private boolean isArray(String encodedTypeName) {
-		if (encodedTypeName != null && encodedTypeName.length() > 0) {
-			if (encodedTypeName.charAt(0) == '[')
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Returns the decoded (displayable) name fo the type.
-	 * Either a primitive type (int, long, float...) Object (String)
-	 * @param type
-	 * @return decoded name for the encoded string
-	 */
-	private String getDecodedTypeName(String encoded) {
-		HashMap map = getEncodedTypeMap();
-
-		StringBuffer decoded = new StringBuffer();
-		char BRACKET = '[';
-		String BRACKETS = "[]"; //$NON-NLS-1$
-		char identifier = ' ';
-		int last = 0;
-		// count brackets
-		while (encoded.indexOf(BRACKET, last) != -1) {
-			last++;
-		}
-		identifier = encoded.charAt(last);
-		Object primitiveType = map.get(String.valueOf(identifier));
-		// L > binary type name, Q > source type name
-		if (identifier == 'L' || identifier == 'Q') {
-			// handle object
-			String classname = encoded.substring(last + 1, encoded.length() - 1);
-			decoded.append(classname);
-		}
-		else if (primitiveType != null) {
-			// handle primitive type (from IField.getSignature())
-			decoded.append((String) primitiveType);
-		}
-		else {
-			// handle primitive type (from Class.getName())
-			decoded.append(encoded);
-		}
-		// handle arrays
-		if (last > 0) {
-			for (int i = 0; i < last; i++) {
-				decoded.append(BRACKETS);
-			}
-		}
-		return decoded.toString();
-	}
-
-	/**
-	 *	from Class.getName() javadoc
-	 *	also see Signature in jdt.core api
-	 *<pre>
-	 *			B            byte
-	 *			C            char
-	 *			D            double
-	 *			F            float
-	 *			I            int
-	 *			J            long
-	 *			Lclassname;  class or interface
-	 *			Qsourcename; source
-	 *			S            short
-	 *			Z            boolean
-	 *			V	   		 void
-	 *</pre>
-	 *
-	 * @return the "encoding letter" to "type" map.
-	 */
-	private HashMap getEncodedTypeMap() {
-		if (fEncodedTypeMap == null) {
-			fEncodedTypeMap = new HashMap();
-			fEncodedTypeMap.put("B", "byte"); //$NON-NLS-1$ //$NON-NLS-2$
-			fEncodedTypeMap.put("C", "char"); //$NON-NLS-1$ //$NON-NLS-2$
-			fEncodedTypeMap.put("D", "double"); //$NON-NLS-1$ //$NON-NLS-2$
-			fEncodedTypeMap.put("F", "float"); //$NON-NLS-1$ //$NON-NLS-2$
-			fEncodedTypeMap.put("I", "int"); //$NON-NLS-1$ //$NON-NLS-2$
-			fEncodedTypeMap.put("J", "long"); //$NON-NLS-1$ //$NON-NLS-2$
-			fEncodedTypeMap.put("S", "short"); //$NON-NLS-1$ //$NON-NLS-2$
-			fEncodedTypeMap.put("Z", "boolean"); //$NON-NLS-1$ //$NON-NLS-2$
-			fEncodedTypeMap.put("V", "void"); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		return fEncodedTypeMap;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/CustomTemplateProposal.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/CustomTemplateProposal.java
deleted file mode 100644
index ee509fb..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/CustomTemplateProposal.java
+++ /dev/null
@@ -1,40 +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.jst.jsp.ui.internal.contentassist;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.jface.text.templates.TemplateProposal;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceCompletionProposal;
-
-/**
- * Purpose of this class is to make the additional proposal info into content
- * fit for an HTML viewer (by escaping characters)
- */
-class CustomTemplateProposal extends TemplateProposal implements IRelevanceCompletionProposal {
-	// copies of this class exist in:
-	// org.eclipse.jst.jsp.ui.internal.contentassist
-	// org.eclipse.wst.html.ui.internal.contentassist
-	// org.eclipse.wst.xml.ui.internal.contentassist
-
-	public CustomTemplateProposal(Template template, TemplateContext context, IRegion region, Image image, int relevance) {
-		super(template, context, region, image, relevance);
-	}
-
-	public String getAdditionalProposalInfo() {
-		String additionalInfo = super.getAdditionalProposalInfo();
-		return StringUtils.convertToHTMLContent(additionalInfo);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IBeanInfoProvider.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IBeanInfoProvider.java
deleted file mode 100644
index e35fc5a..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IBeanInfoProvider.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import org.eclipse.core.resources.IResource;
-
-public interface IBeanInfoProvider {
-	IJavaPropertyDescriptor[] getRuntimeProperties(IResource baseResource, String typeName);
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IJavaPropertyDescriptor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IJavaPropertyDescriptor.java
deleted file mode 100644
index 8bf83ab..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/IJavaPropertyDescriptor.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-public interface IJavaPropertyDescriptor {
-
-	String getDeclaredType();
-
-	String getDisplayName();
-
-	String getName();
-
-	boolean getReadable();
-
-	boolean getWriteable();
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionProcessor.java
deleted file mode 100644
index ef4b08a..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionProcessor.java
+++ /dev/null
@@ -1,326 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.ui.internal.IReleasable;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.IResourceDependentProcessor;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleException;
-
-/**
- * @author pavery
- */
-public class JSPCompletionProcessor implements IContentAssistProcessor, IReleasable, IResourceDependentProcessor {
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value = Platform.getDebugOption("org.eclipse.jst.jsp.core/debug/jsptranslation"); //$NON-NLS-1$
-		DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-
-	private static final String JDT_CORE_PLUGIN_ID = "org.eclipse.jdt.core"; //$NON-NLS-1$
-
-	protected int fJspSourcePosition, fJavaPosition;
-	protected IResource fResource;
-	protected JSPCompletionRequestor fCollector;
-	protected String fErrorMessage = null;
-	protected StructuredTextViewer fViewer = null;
-	private JSPTranslationAdapter fTranslationAdapter = null;
-
-	public JSPCompletionProcessor(IResource resource) {
-		fResource = resource;
-	}
-
-	/**
-	 * Returns a list of completion proposals based on the specified location
-	 * within the document that corresponds to the current cursor position
-	 * within the text viewer.
-	 * 
-	 * @param viewer
-	 *            the viewer whose document is used to compute the proposals
-	 * @param documentPosition
-	 *            an offset within the document for which completions should
-	 *            be computed
-	 * @return an array of completion proposals or <code>null</code> if no
-	 *         proposals are possible
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int pos) {
-		initialize(pos);
-		XMLModel xmlModel = null;
-		try {
-			if (viewer instanceof StructuredTextViewer)
-				fViewer = (StructuredTextViewer) viewer;
-
-			xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(fViewer.getDocument());
-
-			XMLDocument xmlDoc = xmlModel.getDocument();
-			if (fTranslationAdapter == null)
-				fTranslationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-			if (fTranslationAdapter != null) {
-
-				JSPTranslation translation = fTranslationAdapter.getJSPTranslation();
-				fJavaPosition = translation.getJavaOffset(getDocumentPosition());
-
-				fCollector.setCodeAssistOffset(fJavaPosition);
-				fCollector.setJavaToJSPOffset(fJspSourcePosition - fJavaPosition);
-				fCollector.setCursorInExpression(cursorInExpression());
-
-
-				if (DEBUG)
-					System.out.println(debug(translation));
-
-				try {
-
-					ICompilationUnit cu = translation.getCompilationUnit();
-					fCollector.setCompilationUnit(cu);
-
-					// can't get java proposals w/out a compilation unit
-					if (cu == null)
-						return new ICompletionProposal[0];
-
-					synchronized (cu) {
-						cu.codeComplete(fJavaPosition, fCollector, null);
-					}
-				}
-				catch (CoreException coreEx) {
-					// a possible Java Model Exception due to not being a Web
-					// (Java) Project
-					coreEx.printStackTrace();
-				}
-			}
-		}
-		catch (Exception exc) {
-			exc.printStackTrace();
-			// throw out exceptions on code assist.
-		}
-		finally {
-			if (xmlModel != null) {
-				xmlModel.releaseFromRead();
-			}
-		}
-		ICompletionProposal[] results = fCollector.getResults();
-		if (results == null || results.length < 1)
-			fErrorMessage = SSEUIPlugin.getResourceString("%Java_Content_Assist_is_not_UI_"); //$NON-NLS-1$ = "Java Content Assist is not available for the current cursor location"
-
-		return results;
-	}
-
-	/**
-	 * For debugging translation mapping only.
-	 * 
-	 * @param translation
-	 */
-	private String debug(JSPTranslation translation) {
-		StringBuffer debugString = new StringBuffer();
-		HashMap jsp2java = translation.getJsp2JavaMap();
-		String javaText = translation.getJavaText();
-		String jspText = fViewer.getDocument().get();
-		debugString.append("[jsp2JavaMap in JSPCompletionProcessor]\r\n"); //$NON-NLS-1$
-		debugString.append("jsp cursor position >> " + fViewer.getTextWidget().getCaretOffset() + "\n"); //$NON-NLS-1$ //$NON-NLS-2$
-		Iterator it = jsp2java.keySet().iterator();
-		while (it.hasNext()) {
-			try {
-				Position jspPos = (Position) it.next();
-				Position javaPos = (Position) jsp2java.get(jspPos);
-				debugString.append("jsp > " + jspPos.offset + ":" + jspPos.length + ":" + jspText.substring(jspPos.offset, jspPos.offset + jspPos.length) + ":\n"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-				debugString.append("java > " + javaPos.offset + ":" + javaPos.length + ":" + javaText.substring(javaPos.offset, javaPos.offset + javaPos.length) + ":\n"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-				debugString.append("-------------------------------------------------\n"); //$NON-NLS-1$
-			}
-			catch (Exception e) {
-				// eat exceptions, it's only for debug
-			}
-		}
-		return debugString.toString();
-	}
-
-	/**
-	 * @return whether the source cursor is in an expression
-	 */
-	private boolean cursorInExpression() {
-		boolean inExpression = false;
-		IStructuredDocumentRegion sdRegion = null;
-		XMLModel xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(fViewer.getDocument());
-		XMLNode xmlNode = null;
-		xmlModel.releaseFromRead();
-		xmlNode = (XMLNode) xmlModel.getIndexedRegion(fJspSourcePosition);
-		if (xmlNode != null) {
-			XMLNode parent = (XMLNode) xmlNode.getParentNode();
-			if (parent != null) {
-				sdRegion = parent.getFirstStructuredDocumentRegion();
-				inExpression = sdRegion != null && (sdRegion.getType() == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN || sdRegion.getType() == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN);
-			}
-		}
-		return inExpression;
-	}
-
-	/**
-	 * Returns information about possible contexts based on the specified
-	 * location within the document that corresponds to the current cursor
-	 * position within the text viewer.
-	 * 
-	 * @param viewer
-	 *            the viewer whose document is used to compute the possible
-	 *            contexts
-	 * @param documentPosition
-	 *            an offset within the document for which context information
-	 *            should be computed
-	 * @return an array of context information objects or <code>null</code>
-	 *         if no context could be found
-	 */
-	public org.eclipse.jface.text.contentassist.IContextInformation[] computeContextInformation(org.eclipse.jface.text.ITextViewer viewer, int documentOffset) {
-		return null;
-	}
-
-	/**
-	 * Returns a string of characters which when pressed should automatically
-	 * display content-assist proposals.
-	 * 
-	 * @return string of characters
-	 */
-	public java.lang.String getAutoProposalInvocationCharacters() {
-		return null;
-	}
-
-	/**
-	 * Returns a string of characters which when pressed should automatically
-	 * display a content-assist tip.
-	 * 
-	 * @return string of characters
-	 */
-	public java.lang.String getAutoTipInvocationCharacters() {
-		return null;
-	}
-
-	/**
-	 * Returns the characters which when entered by the user should
-	 * automatically trigger the presentation of possible completions.
-	 * 
-	 * @return the auto activation characters for completion proposal or
-	 *         <code>null</code> if no auto activation is desired
-	 */
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		return null;
-	}
-
-	/**
-	 * Returns the characters which when entered by the user should
-	 * automatically trigger the presentation of context information.
-	 * 
-	 * @return the auto activation characters for presenting context
-	 *         information or <code>null</code> if no auto activation is
-	 *         desired
-	 */
-	public char[] getContextInformationAutoActivationCharacters() {
-		return null;
-	}
-
-	/**
-	 * Returns a validator used to determine when displayed context
-	 * information should be dismissed. May only return <code>null</code> if
-	 * the processor is incapable of computing context information.
-	 * 
-	 * @return a context information validator, or <code>null</code> if the
-	 *         processor is incapable of computing context information
-	 */
-	public org.eclipse.jface.text.contentassist.IContextInformationValidator getContextInformationValidator() {
-		return null;
-	}
-
-	protected int getDocumentPosition() {
-		return fJspSourcePosition;
-	}
-
-	public String getErrorMessage() {
-		// TODO:
-		// if (fCollector.getErrorMessage() != null &&
-		// fCollector.getErrorMessage().length() > 0)
-		// return fCollector.getErrorMessage();
-		return fErrorMessage;
-	}
-
-	/**
-	 * Return the Java project for the to create completions within
-	 */
-	protected IJavaProject getJavaProject() {
-		if (fResource == null)
-			return null;
-		IProject proj = (fResource.getType() == IResource.PROJECT) ? (IProject) fResource : fResource.getProject();
-		IJavaProject javaProj = JavaCore.create(proj);
-		return javaProj;
-	}
-
-	/**
-	 * Initialize the code assist processor.
-	 */
-	protected void initialize(int pos) {
-		initializeJavaPlugins();
-
-		// fCollector = new JSPResultCollector();
-		fCollector = new JSPCompletionRequestor();
-		fJspSourcePosition = pos;
-		fErrorMessage = null;
-	}
-
-	/**
-	 * Initialize the Java Plugins that the JSP processor requires.
-	 */
-	protected void initializeJavaPlugins() {
-		try {
-			Bundle bundle = Platform.getBundle(JDT_CORE_PLUGIN_ID);
-			bundle.start();
-		}
-		catch (BundleException exc) {
-			Logger.logException("Could not initialize the JDT Plugins", exc);//$NON-NLS-1$
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.IReleasable#release()
-	 */
-	public void release() {
-		fTranslationAdapter = null;
-	}
-
-	/*
-	 * @see com.ibm.sse.editor.contentassist.IResourceDependent#initialize(org.eclipse.core.resources.IResource)
-	 */
-	public void initialize(IResource resource) {
-		fResource = resource;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionRequestor.java
deleted file mode 100644
index 02ea17d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPCompletionRequestor.java
+++ /dev/null
@@ -1,744 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.contentassist;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.CompletionProposal;
-import org.eclipse.jdt.core.CompletionRequestor;
-import org.eclipse.jdt.core.Flags;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.Signature;
-import org.eclipse.jdt.core.compiler.CharOperation;
-import org.eclipse.jdt.ui.JavaElementImageDescriptor;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ContextInformation;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jst.jsp.core.internal.java.JSP2ServletNameUtil;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImageHelper;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImages;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-
-/**
- * Most "accept" methods copied from JDT ResultCollector.
- * 
- * @author pavery
- */
-public class JSPCompletionRequestor extends CompletionRequestor {
-
-    // for debugging
-    private static final boolean DEBUG;
-    static {
-        String value = Platform.getDebugOption("org.eclipse.jst.jsp.ui/debug/jspcontentassist"); //$NON-NLS-1$
-        DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-    }
-
-     private final static char[] METHOD_WITH_ARGUMENTS_TRIGGERS = new char[] {'(', '-', ' ' };
-     private final static char[] METHOD_TRIGGERS = new char[] { ';', ',', '.','\t', '[', ' ' };
-     private final static char[] TYPE_TRIGGERS = new char[] { '.', '\t', '[','(', ' ' };
-     private final static char[] VAR_TRIGGER = new char[] { '\t', ' ', '=',';', '.' };
-
-    // private IJavaProject fJavaProject;
-
-    // set when imports can be added
-    private ICompilationUnit fCompilationUnit;
-
-    private int fCodeAssistOffset;
-
-    // private int fContextOffset;
-
-    protected ITextViewer fTextViewer;
-
-    private List fFields = new ArrayList();
-
-    private List fKeywords = new ArrayList();
-
-    private List fLabels = new ArrayList();
-
-    private List fMethods = new ArrayList();
-
-    private List fModifiers = new ArrayList();
-
-    private List fPackages = new ArrayList();
-
-    private List fTypes = new ArrayList();
-
-    private List fVariables = new ArrayList();
-
-    private boolean fCursorInExpression = false;
-
-    private int fJavaToJSPOffset;
-
-    private String fJspName;
-
-    private String fMangledName;
-
-    public boolean isCursorInExpression() {
-        return fCursorInExpression;
-    }
-
-    /**
-     * @param doFilter
-     *            The doFilter to set.
-     */
-    public void setCursorInExpression(boolean inExpression) {
-        fCursorInExpression = inExpression;
-    }
-
-    /**
-     * @return Returns the fJavaToJSPOffset.
-     */
-    public int getJavaToJSPOffset() {
-        return fJavaToJSPOffset;
-    }
-
-    /**
-     * @param javaToJSPOffset
-     *            The fJavaToJSPOffset to set.
-     */
-    public void setJavaToJSPOffset(int javaToJSPOffset) {
-        fJavaToJSPOffset = javaToJSPOffset;
-    }
-
-    /**
-     * Copied logic from CompletionRequestorWrapper
-     * 
-     * @see org.eclipse.jdt.core.CompletionRequestor#accept(org.eclipse.jdt.core.CompletionProposal)
-     */
-    public void accept(CompletionProposal proposal) {
-
-        switch (proposal.getKind()) {
-
-        case CompletionProposal.KEYWORD:
-            acceptKeyword(proposal.getName(), proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-            break;
-        case CompletionProposal.PACKAGE_REF:
-            acceptPackage(proposal.getDeclarationSignature(), proposal.getCompletion(), proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            break;
-        case CompletionProposal.TYPE_REF:
-            if ((proposal.getFlags() & Flags.AccEnum) != 0) {
-                // does not exist for old requestor
-            } else if ((proposal.getFlags() & Flags.AccInterface) != 0) {
-                acceptInterface(proposal.getDeclarationSignature(), Signature.getSignatureSimpleName(proposal.getSignature()), proposal.getCompletion(), proposal.getFlags() & ~Flags.AccInterface,
-                        proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            } else {
-                acceptClass(proposal.getDeclarationSignature(), Signature.getSignatureSimpleName(proposal.getSignature()), proposal.getCompletion(), proposal.getFlags(), proposal.getReplaceStart(),
-                        proposal.getReplaceEnd(), proposal.getRelevance());
-            }
-            break;
-        case CompletionProposal.FIELD_REF:
-            acceptField(Signature.getSignatureQualifier(proposal.getDeclarationSignature()), Signature.getSignatureSimpleName(proposal.getDeclarationSignature()), proposal.getName(), Signature
-                    .getSignatureQualifier(proposal.getSignature()), Signature.getSignatureSimpleName(proposal.getSignature()), proposal.getCompletion(), proposal.getFlags(), proposal
-                    .getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            break;
-        case CompletionProposal.METHOD_REF:
-            acceptMethod(Signature.getSignatureQualifier(proposal.getDeclarationSignature()), Signature.getSignatureSimpleName(proposal.getDeclarationSignature()), proposal.getName(),
-                    getParameterPackages(proposal.getSignature()), getParameterTypes(proposal.getSignature()), proposal.findParameterNames(null) == null ? CharOperation.NO_CHAR_CHAR : proposal
-                            .findParameterNames(null), Signature.getSignatureQualifier(Signature.getReturnType(proposal.getSignature())), Signature.getSignatureSimpleName(Signature
-                            .getReturnType(proposal.getSignature())), proposal.getCompletion(), proposal.getFlags(), proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            break;
-        case CompletionProposal.METHOD_DECLARATION:
-            acceptMethodDeclaration(Signature.getSignatureQualifier(proposal.getDeclarationSignature()), Signature.getSignatureSimpleName(proposal.getDeclarationSignature()), proposal.getName(),
-                    getParameterPackages(proposal.getSignature()), getParameterTypes(proposal.getSignature()), proposal.findParameterNames(null) == null ? CharOperation.NO_CHAR_CHAR : proposal
-                            .findParameterNames(null), Signature.getSignatureQualifier(Signature.getReturnType(proposal.getSignature())), Signature.getSignatureSimpleName(Signature
-                            .getReturnType(proposal.getSignature())), proposal.getCompletion(), proposal.getFlags(), proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            break;
-        case CompletionProposal.ANONYMOUS_CLASS_DECLARATION:
-            acceptAnonymousType(Signature.getSignatureQualifier(proposal.getDeclarationSignature()), Signature.getSignatureSimpleName(proposal.getDeclarationSignature()),
-                    getParameterPackages(proposal.getSignature()), getParameterTypes(proposal.getSignature()), proposal.findParameterNames(null) == null ? CharOperation.NO_CHAR_CHAR : proposal
-                            .findParameterNames(null), proposal.getCompletion(), proposal.getFlags(), proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            break;
-        case CompletionProposal.LABEL_REF:
-            acceptLabel(proposal.getCompletion(), proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-            break;
-        case CompletionProposal.LOCAL_VARIABLE_REF:
-            acceptLocalVariable(proposal.getCompletion(), Signature.getSignatureQualifier(proposal.getSignature()), Signature.getSignatureSimpleName(proposal.getSignature()), proposal.getFlags(),
-                    proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            break;
-        case CompletionProposal.VARIABLE_DECLARATION:
-            acceptLocalVariable(proposal.getCompletion(), Signature.getSignatureQualifier(proposal.getSignature()), Signature.getSignatureSimpleName(proposal.getSignature()), proposal.getFlags(),
-                    proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            break;
-        case CompletionProposal.POTENTIAL_METHOD_DECLARATION:
-            acceptPotentialMethodDeclaration(Signature.getSignatureQualifier(proposal.getDeclarationSignature()), Signature.getSignatureSimpleName(proposal.getDeclarationSignature()), proposal
-                    .getName(), proposal.getReplaceStart(), proposal.getReplaceEnd(), proposal.getRelevance());
-
-            break;
-        }
-    }
-
-    private void acceptPotentialMethodDeclaration(char[] declaringTypePackageName, char[] declaringTypeName, char[] selector, int completionStart, int completionEnd, int relevance) {
-        if (DEBUG)
-            System.out.println("TODO: implement acceptPotentialMethodDeclaration");
-        // if (fCompilationUnit == null) {
-        // return;
-        // }
-        // String prefix= new String(selector);
-        //    
-        // try {
-        // IJavaElement element=
-        // getCompilationUnit().getElementAt(getCodeAssistOffset());
-        // if (element != null) {
-        // IType type= (IType) element.getAncestor(IJavaElement.TYPE);
-        // if (type != null) {
-        // GetterSetterCompletionProposal.evaluateProposals(type, prefix,
-        // completionStart, completionEnd - completionStart, relevance + 100,
-        // fSuggestedMethodNames, fMethods);
-        // MethodCompletionProposal.evaluateProposals(type, prefix,
-        // completionStart, completionEnd - completionStart, relevance + 99,
-        // fSuggestedMethodNames, fMethods);
-        // }
-        // }
-        // } catch (CoreException e) {
-        //            
-        // }
-    }
-
-    private void acceptLocalVariable(char[] name, char[] typePackageName, char[] typeName, int modifiers, int start, int end, int relevance) {
-
-        String completionString = new String(name);
-        int offset = start + getJavaToJSPOffset();
-        int length = end - start;
-        Image image = JSPEditorPluginImageHelper.getInstance().getImage(JSPEditorPluginImages.LOCAL_VARIABLE_OBJ);
-
-        StringBuffer buf = new StringBuffer();
-        buf.append(name);
-        if (typeName != null) {
-            buf.append("    "); //$NON-NLS-1$
-            buf.append(fixupTypeName(typeName));
-        }
-        String displayString = buf.toString();
-        
-        CustomCompletionProposal proposal = new CustomCompletionProposal(completionString, offset, length, completionString.length(), image, displayString, null, null, relevance);
-       proposal.setTriggerCharacters(VAR_TRIGGER);
-        fVariables.add(proposal);
-    }
-
-    private void acceptLabel(char[] completion, int replaceStart, int replaceEnd, int relevance) {
-        if (DEBUG)
-            System.out.println("implement acceptLabel");
-    }
-
-    private void acceptAnonymousType(char[] signatureQualifier, char[] signatureSimpleName, char[][] parameterPackages, char[][] parameterTypes, char[][] cs, char[] completion, int flags,
-            int replaceStart, int replaceEnd, int relevance) {
-        if (DEBUG)
-            System.out.println("implement acceptAnonymousType");
-    }
-
-    private void acceptMethodDeclaration(char[] declaringTypePackageName, char[] declaringTypeName, char[] name, char[][] parameterPackageNames, char[][] parameterTypeNames, char[][] parameterNames,
-            char[] returnTypePackageName, char[] returnTypeName, char[] completionName, int modifiers, int start, int end, int relevance) {
-
-        if (!isCursorInExpression())
-            return;
-        
-        StringBuffer displayString = getMethodDisplayString(null, name, parameterTypeNames, parameterNames, returnTypeName);
-        displayString.append(" - "); //$NON-NLS-1$
-        displayString.append("Override method in '" + new String(declaringTypeName) + "'");
-
-        StringBuffer typeName = new StringBuffer();
-        if (declaringTypePackageName.length > 0) {
-            typeName.append(declaringTypePackageName);
-            typeName.append('.');
-        }
-        typeName.append(declaringTypeName);
-
-        String[] paramTypes = new String[parameterTypeNames.length];
-        for (int i = 0; i < parameterTypeNames.length; i++) {
-            paramTypes[i] = Signature.createTypeSignature(parameterTypeNames[i], true);
-        }
-
-        // JavaCompletionProposal proposal= new
-        // OverrideCompletionProposal(fJavaProject, fCompilationUnit,
-        // typeName.toString(), new String(name), paramTypes, start,
-        // getLength(start, end), displayString.toString(), new
-        // String(completionName));
-        // proposal.setImage(getImage(getMemberDescriptor(modifiers)));
-        // proposal.setProposalInfo(new ProposalInfo(fJavaProject,
-        // declaringTypePackageName, declaringTypeName, name,
-        // parameterPackageNames, parameterTypeNames, returnTypeName.length ==
-        // 0));
-
-        String completionString = new String(completionName);
-        int offset = start + getJavaToJSPOffset();
-        int length = end - start;
-        Image image = createMethodImage(modifiers);
-
-        CustomCompletionProposal proposal = new CustomCompletionProposal(completionString, offset, length, completionString.length(), image, displayString.toString(), null, null, relevance + 100);
-        // proposal.setRelevance(relevance + 100);
-        fMethods.add(proposal);
-        // fSuggestedMethodNames.add(new String(name));
-    }
-
-    private void acceptMethod(char[] declaringTypePackageName, char[] declaringTypeName, char[] name, char[][] parameterPackageNames, char[][] parameterTypeNames, char[][] parameterNames,
-            char[] returnTypePackageName, char[] returnTypeName, char[] completionName, int modifiers, int start, int end, int relevance) {
-
-        if (completionName == null)
-            return;
-
-        if (!isCursorInExpression())
-            return;
-
-        // if (TypeFilter.isFiltered(declaringTypePackageName,
-        // declaringTypeName)) {
-        // return;
-        // }
-
-        String completionString = new String(completionName);
-        String displayString = getMethodDisplayString(declaringTypeName, name, parameterTypeNames, parameterNames, returnTypeName).toString();
-        int offset = start + getJavaToJSPOffset();
-        int length = end - start;
-        Image image = createMethodImage(modifiers);
-
-        boolean hasOpeningBracket = completionName.length == 0 || (completionName.length > 0 && completionName[completionName.length - 1] == ')');
-        ContextInformation contextInformation = null;
-        if (hasOpeningBracket && parameterTypeNames.length > 0) {
-           contextInformation = new ContextInformation(image, displayString, getParameterSignature(parameterTypeNames, parameterNames));
-       
-//           int position = (completionName.length == 0) ? fContextOffset : -1;
-           //contextInformation.setContextInformationPosition(position);
-       }
-        boolean userMustCompleteParameters = (contextInformation != null && completionName.length > 0);
-        char[] triggers = userMustCompleteParameters ? METHOD_WITH_ARGUMENTS_TRIGGERS : METHOD_TRIGGERS;
-        int cursorPosition = completionString.length();
-        if (userMustCompleteParameters) {
-            // set the cursor before the closing bracket
-            //proposal.setCursorPosition(completionName.length - 1);
-            cursorPosition--;
-        }
-        
-        CustomCompletionProposal proposal = new CustomCompletionProposal(completionString, offset, length, cursorPosition, image, displayString, contextInformation, null, relevance);
-        proposal.setTriggerCharacters(triggers);
-        
-
-        
-//         boolean isConstructor= returnTypeName == null ? true :
-//         returnTypeName.length == 0;
-//         proposal.setProposalInfo(new ProposalInfo(fJavaProject,
-//         declaringTypePackageName, declaringTypeName, name,
-//         parameterPackageNames, parameterTypeNames, isConstructor));
-
-        fMethods.add(proposal);
-    }
-
-    private StringBuffer getMethodDisplayString(char[] declaringTypeName, char[] name, char[][] parameterTypeNames, char[][] parameterNames, char[] returnTypeName) {
-        StringBuffer nameBuffer = new StringBuffer();
-        nameBuffer.append(name);
-        nameBuffer.append('(');
-        if (parameterTypeNames != null && parameterTypeNames.length > 0) {
-            nameBuffer.append(getParameterSignature(parameterTypeNames, parameterNames));
-        }
-        nameBuffer.append(')');
-        if (returnTypeName != null && returnTypeName.length > 0) {
-            nameBuffer.append("  "); //$NON-NLS-1$
-            nameBuffer.append(returnTypeName);
-        }
-        // if declaring type is mangled, unmangle
-        if (declaringTypeName != null && declaringTypeName.length > 0) {
-            nameBuffer.append(" - "); //$NON-NLS-1$
-            nameBuffer.append(fixupTypeName(declaringTypeName));
-        }
-        return nameBuffer;
-    }
-
-    protected String getParameterSignature(char[][] parameterTypeNames, char[][] parameterNames) {
-        StringBuffer buf = new StringBuffer();
-        if (parameterTypeNames != null) {
-            for (int i = 0; i < parameterTypeNames.length; i++) {
-                if (i > 0) {
-                    buf.append(',');
-                    buf.append(' ');
-                }
-                buf.append(parameterTypeNames[i]);
-                if (parameterNames != null && parameterNames[i] != null) {
-                    buf.append(' ');
-                    buf.append(parameterNames[i]);
-                }
-            }
-        }
-        return buf.toString();
-    }
-
-    /**
-     * @param flags
-     * @return
-     */
-    private Image createMethodImage(int flags) {
-        ImageDescriptor imageDescriptor = null;
-        if ((flags & Flags.AccDefault) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.DEFAULT_CO);
-        } else if ((flags & Flags.AccPrivate) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.PRIVATE_CO);
-        } else if ((flags & Flags.AccProtected) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.PROTECTED_CO);
-        } else if ((flags & Flags.AccPublic) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.PUBLIC_CO);
-        } else {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.PUBLIC_CO);
-        }
-        Image image = JSPEditorPluginImageHelper.getInstance().getImage(decorateImage(imageDescriptor, flags));
-        return image;
-    }
-
-    private ImageDescriptor decorateImage(ImageDescriptor base, int modifiers) {
-
-        int adornments = 0;
-        if (Flags.isDeprecated(modifiers))
-            adornments = adornments | JavaElementImageDescriptor.DEPRECATED;
-        if (Flags.isStatic(modifiers))
-            adornments = adornments | JavaElementImageDescriptor.STATIC;
-
-        JavaElementImageDescriptor javaDescriptor = new JavaElementImageDescriptor(base, adornments, new Point(16, 16));
-
-        return javaDescriptor;
-    }
-
-    private void acceptField(char[] declaringTypePackageName, char[] declaringTypeName, char[] name, char[] typePackageName, char[] typeName, char[] completionName, int modifiers, int start, int end,
-            int relevance) {
-
-        // if (TypeFilter.isFiltered(declaringTypePackageName,
-        // declaringTypeName)) {
-        // return;
-        // }
-
-        String completionNameString = new String(completionName);
-        int offset = start + getJavaToJSPOffset();
-        int length = end - start;
-
-        Image image = createFieldImage(modifiers);
-
-        StringBuffer nameBuffer = new StringBuffer();
-        nameBuffer.append(name);
-        if (typeName.length > 0) {
-            nameBuffer.append("   "); //$NON-NLS-1$
-            nameBuffer.append(typeName);
-        }
-        // also fix up name if it's the servlet class
-        // (since it's that ugly mangled string)
-        if (declaringTypeName != null && declaringTypeName.length > 0) {
-            nameBuffer.append(" - "); //$NON-NLS-1$
-            nameBuffer.append(fixupTypeName(declaringTypeName));
-        }
-
-        // JavaCompletionProposal proposal= createCompletion(start, end, new
-        // String(completionName), descriptor, nameBuffer.toString(),
-        // relevance);
-        CustomCompletionProposal proposal = new CustomCompletionProposal(completionNameString, offset, length, completionNameString.length(), image, nameBuffer.toString(), null, null, relevance);
-        proposal.setTriggerCharacters(VAR_TRIGGER);
-        fFields.add(proposal);
-        // proposal.setProposalInfo(new ProposalInfo(fJavaProject,
-        // declaringTypePackageName, declaringTypeName, name));
-        
-    }
-
-    /**
-     * @param flags
-     * @return
-     */
-    private Image createFieldImage(int flags) {
-        ImageDescriptor imageDescriptor = null;
-        if ((flags & Flags.AccDefault) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.FIELD_DEFAULT_OBJ);
-        } else if ((flags & Flags.AccPrivate) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.FIELD_PRIVATE_OBJ);
-        } else if ((flags & Flags.AccProtected) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.FIELD_PROTECTED_OBJ);
-        } else if ((flags & Flags.AccPublic) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.FIELD_PUBLIC_OBJ);
-        } else {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.FIELD_DEFAULT_OBJ);
-        }
-        Image image = JSPEditorPluginImageHelper.getInstance().getImage(decorateImage(imageDescriptor, flags));
-        return image;
-    }
-
-    protected void acceptClass(char[] packageName, char[] typeName, char[] completionName, int modifiers, int start, int end, int relevance) {
-
-        // if (TypeFilter.isFiltered(packageName, typeName)) {
-        // return;
-        // }
-
-        // ProposalInfo info= new ProposalInfo(fJavaProject, packageName,
-        // typeName);
-
-        int offset = start + getJavaToJSPOffset();
-        int length = end - start;
-        Image image = createClassImage(modifiers);
-
-        String completionNameString = new String(completionName);
-        
-        String containerNameString = new String(packageName);
-        String typeNameString = fixupTypeName(typeName);
-        if (typeNameString == getJspName())
-            return;
-        // containername can be null
-        String fullName = concatenateName(containerNameString, typeNameString);
-
-        String simpleName = Signature.getSimpleName(fullName);
-        StringBuffer buf = new StringBuffer(simpleName);
-        String typeQualifier = Signature.getQualifier(fullName);
-        if (typeQualifier.length() > 0) {
-            buf.append(" - "); //$NON-NLS-1$
-            buf.append(fixupTypeName(typeQualifier));
-        }
-        String name = buf.toString();
-
-        // ICompilationUnit cu= null;
-        // if (containerNameString != null && fCompilationUnit != null) {
-        // if (completionNameString.equals(fullName)) {
-        // cu= fCompilationUnit;
-        // }
-        // }
-
-        //CustomCompletionProposal proposal = new CustomCompletionProposal(completionNameString, offset, length, completionNameString.length(), image, name, null, null, relevance);
-        JavaTypeCompletionProposal proposal = new JavaTypeCompletionProposal(completionNameString, offset, length, fullName, image, typeNameString, typeQualifier, relevance, true);
-        proposal.setTriggerCharacters(TYPE_TRIGGERS);
-        fTypes.add(proposal);
-
-        // JavaCompletionProposal proposal= new
-        // JavaTypeCompletionProposal(completion, cu, start, getLength(start,
-        // end), getImage(descriptor), name, relevance, typeName,
-        // containerName);
-        // proposal.setProposalInfo(proposalInfo);     
-        // fTypes.add(createTypeCompletion(start, end, new
-        // String(completionName), descriptor, new String(typeName), new
-        // String(packageName), info, relevance));
-    }
-
-    /**
-     * @param modifiers
-     */
-    private Image createClassImage(int modifiers) {
-     
-        ImageDescriptor descriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.IMG_OBJ_CLASS_OBJ);
-        if ((modifiers & Flags.AccDefault) != 0) {
-            descriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERCLASS_DEFAULT_OBJ);
-        } else if ((modifiers & Flags.AccPrivate) != 0) {
-            descriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERCLASS_PRIVATE_OBJ);
-        } else if ((modifiers & Flags.AccProtected) != 0) {
-            descriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERCLASS_PROTECTED_OBJ);
-        } else if ((modifiers & Flags.AccPublic) != 0) {
-            descriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.IMG_OBJ_CLASS_OBJ);
-        } else {
-            descriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERCLASS_DEFAULT_OBJ);
-        }
-        Image image = JSPEditorPluginImageHelper.getInstance().getImage(decorateImage(descriptor, modifiers));
-        return image;
-    }
-
-    /**
-     * Concatenates two names. Uses a dot for separation. Both strings can be
-     * empty or <code>null</code>.
-     */
-    public String concatenateName(String name1, String name2) {
-        StringBuffer buf = new StringBuffer();
-        if (name1 != null && name1.length() > 0) {
-            buf.append(name1);
-        }
-        if (name2 != null && name2.length() > 0) {
-            if (buf.length() > 0) {
-                buf.append('.');
-            }
-            buf.append(name2);
-        }
-        return buf.toString();
-    }
-
-    protected void acceptInterface(char[] packageName, char[] typeName, char[] completionName, int modifiers, int start, int end, int relevance) {
-        // if (TypeFilter.isFiltered(packageName, typeName)) {
-        // return;
-        // }
-
-        String completionNameString = new String(completionName);
-
-        int offset = start + getJavaToJSPOffset();
-        int length = end - start;
-        Image image = createInterfaceImage(modifiers);
-
-        String containerNameString = new String(packageName);
-        String typeNameString = fixupTypeName(new String(typeName));
-        if (typeNameString == getJspName())
-            return;
-
-        // container name can be null
-        String fullName = concatenateName(containerNameString, typeNameString);
-
-        StringBuffer buf = new StringBuffer(Signature.getSimpleName(fullName));
-        String typeQualifier = Signature.getQualifier(fullName);
-        if (typeQualifier.length() > 0) {
-            buf.append(" - "); //$NON-NLS-1$
-            buf.append(fixupTypeName(typeQualifier));
-        }
-        String name = buf.toString();
-
-        CustomCompletionProposal proposal = new CustomCompletionProposal(completionNameString, offset, length, completionNameString.length(), image, name, null, null, relevance);
-        fTypes.add(proposal);
-        // ProposalInfo info= new ProposalInfo(fJavaProject, packageName,
-        // typeName);
-        // fTypes.add(createTypeCompletion(start, end, new
-        // String(completionName), descriptor, new String(typeName), new
-        // String(packageName), info, relevance));
-    }
-
-    /**
-     * @param modifiers
-     * @return
-     */
-    private Image createInterfaceImage(int modifiers) {
-        ImageDescriptor imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERINTERFACE_PUBLIC_OBJ);
-        if ((modifiers & Flags.AccDefault) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERINTERFACE_DEFAULT_OBJ);
-        } else if ((modifiers & Flags.AccPrivate) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERINTERFACE_PRIVATE_OBJ);
-        } else if ((modifiers & Flags.AccProtected) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERINTERFACE_PROTECTED_OBJ);
-        } else if ((modifiers & Flags.AccPublic) != 0) {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERINTERFACE_PUBLIC_OBJ);
-        } else {
-            imageDescriptor = JSPEditorPluginImageHelper.getInstance().getImageDescriptor(JSPEditorPluginImages.INNERINTERFACE_DEFAULT_OBJ);
-        }
-        Image image = JSPEditorPluginImageHelper.getInstance().getImage(decorateImage(imageDescriptor, modifiers));
-        return image;
-    }
-
-    private void acceptPackage(char[] packageName, char[] completionName, int start, int end, int relevance) {
-//        if (TypeFilter.isFiltered(new String(packageName))) {
-//            return;
-//        }
-        
-        String packageNameString = new String(packageName);
-        String completionNameString = new String(completionName);
-        
-        int offset = start + getJavaToJSPOffset();
-        int length = end - start;
-        
-        Image image = JSPEditorPluginImageHelper.getInstance().getImage(JSPEditorPluginImages.PACKAGE_OBJ);
-        CustomCompletionProposal proposal = new CustomCompletionProposal(packageNameString, offset, length, packageNameString.length(), image, completionNameString, null, null, relevance);
-       
-        fPackages.add(proposal);
-    }
-
-    private void acceptKeyword(char[] name, int replaceStart, int replaceEnd, int relevance) {
-        if(DEBUG)
-            System.out.println("TODO: implement accept keyword");
-    }
-
-    private char[][] getParameterPackages(char[] methodSignature) {
-        char[][] parameterQualifiedTypes = Signature.getParameterTypes(methodSignature);
-        int length = parameterQualifiedTypes == null ? 0 : parameterQualifiedTypes.length;
-        char[][] parameterPackages = new char[length][];
-        for (int i = 0; i < length; i++) {
-            parameterPackages[i] = Signature.getSignatureQualifier(parameterQualifiedTypes[i]);
-        }
-
-        return parameterPackages;
-    }
-
-    private char[][] getParameterTypes(char[] methodSignature) {
-        char[][] parameterQualifiedTypes = Signature.getParameterTypes(methodSignature);
-        int length = parameterQualifiedTypes == null ? 0 : parameterQualifiedTypes.length;
-        char[][] parameterPackages = new char[length][];
-        for (int i = 0; i < length; i++) {
-            parameterPackages[i] = Signature.getSignatureSimpleName(parameterQualifiedTypes[i]);
-        }
-
-        return parameterPackages;
-    }
-
-    public ICompletionProposal[] getResults() {
-
-        // TODO: eventually do better custom sorting here..
-        List results = new ArrayList();
-        results.addAll(fFields);
-        results.addAll(fKeywords);
-        results.addAll(fLabels);
-        results.addAll(fMethods);
-        results.addAll(fModifiers);
-        results.addAll(fPackages);
-        results.addAll(fTypes);
-        results.addAll(fVariables);
-        return (ICompletionProposal[]) results.toArray(new ICompletionProposal[results.size()]);
-    }
-
-    /**
-     * @param compilationUnit
-     *            The fCompilationUnit to set.
-     */
-    public void setCompilationUnit(ICompilationUnit compilationUnit) {
-        fCompilationUnit = compilationUnit;
-
-        // set some names for fixing up mangled name
-        // in proposals later
-        String cuName = getCompilationUnit().getPath().lastSegment();
-        setMangledName(cuName.substring(0, cuName.lastIndexOf('.')));
-
-        String unmangled = JSP2ServletNameUtil.unmangle(cuName);
-        setJspName(unmangled.substring(unmangled.lastIndexOf('/') + 1));
-    }
-
-    /**
-     * @return Returns the fCompilationUnit.
-     */
-    public ICompilationUnit getCompilationUnit() {
-        return fCompilationUnit;
-    }
-
-    private String fixupTypeName(char[] typeNameChars) {
-        String typeName = new String(typeNameChars);
-        return fixupTypeName(typeName);
-    }
-
-    /**
-     * Changes mangled type name to the name of the jsp file Or if it's an inner
-     * type, returns the name of the inner type (minus the mangled parent type
-     * name)
-     * 
-     * @param typeNameChars
-     * @return
-     */
-    private String fixupTypeName(String typeName) {
-        String mangledName = getMangledName();
-        // can be null if no CU was ever set
-        if(mangledName != null) {
-            if (typeName.equals(mangledName))
-                return getJspName();
-            else if (typeName.startsWith(mangledName))
-                return typeName.substring(typeName.lastIndexOf('.')+1);
-        }
-        return typeName;
-    }
-
-    private String getMangledName() {
-        return fMangledName;
-    }
-
-    private void setMangledName(String mangledName) {
-        fMangledName = mangledName;
-    }
-
-    private String getJspName() {
-        return fJspName;
-    }
-
-    private void setJspName(String jspName) {
-        fJspName = jspName;
-    }
-
-    public int getCodeAssistOffset() {
-        return fCodeAssistOffset;
-    }
-
-    public void setCodeAssistOffset(int offset) {
-        fCodeAssistOffset = offset;
-    }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPContentAssistProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPContentAssistProcessor.java
deleted file mode 100644
index b9bf9cc..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPContentAssistProcessor.java
+++ /dev/null
@@ -1,1258 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.core.JSP12Namespace;
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.jst.jsp.core.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibController;
-import org.eclipse.jst.jsp.core.internal.contentmodel.tld.TLDCMDocumentManager;
-import org.eclipse.jst.jsp.core.internal.document.PageDirectiveAdapterFactory;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImageHelper;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImages;
-import org.eclipse.jst.jsp.ui.internal.preferences.JSPUIPreferenceNames;
-import org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeIdsJSP;
-import org.eclipse.wst.css.ui.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.html.core.HTMLCMProperties;
-import org.eclipse.wst.html.core.contentmodel.HTMLCMDocumentFactory;
-import org.eclipse.wst.html.core.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.contentmodel.JSPCMDocument;
-import org.eclipse.wst.html.core.text.IHTMLPartitions;
-import org.eclipse.wst.html.ui.internal.contentassist.HTMLContentAssistProcessor;
-import org.eclipse.wst.javascript.common.ui.internal.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.parser.BlockMarker;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceCompletionProposal;
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceConstants;
-import org.eclipse.wst.sse.ui.internal.contentassist.IResourceDependentProcessor;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.xml.core.contentmodel.CMDocType;
-import org.eclipse.wst.xml.core.contentmodel.CMDocumentTracker;
-import org.eclipse.wst.xml.core.contentmodel.CMNodeWrapper;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryAction;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.internal.parser.XMLSourceParser;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-import org.eclipse.wst.xml.ui.contentassist.AbstractContentAssistProcessor;
-import org.eclipse.wst.xml.ui.contentassist.ContentAssistRequest;
-import org.eclipse.wst.xml.ui.contentassist.NonValidatingModelQueryAction;
-import org.eclipse.wst.xml.ui.contentassist.ProposalComparator;
-import org.eclipse.wst.xml.ui.contentassist.XMLContentAssistProcessor;
-import org.eclipse.wst.xml.ui.contentassist.XMLContentAssistUtilities;
-import org.eclipse.wst.xml.ui.contentassist.XMLRelevanceConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * Adds proposals not normally covered by the generic behavior with the
- * content model
- */
-public class JSPContentAssistProcessor extends AbstractContentAssistProcessor implements IResourceDependentProcessor {
-
-	protected int depthCount = 0;
-	protected ITextViewer fViewer = null;
-	protected boolean useEmbeddedResults = true;
-	protected boolean isInternalAdapter = false;
-	protected HashMap fNameToProcessorMap = null;
-	protected HashMap fPartitionToProcessorMap = null;
-	private final ICompletionProposal[] EMPTY_PROPOSAL_SET = new ICompletionProposal[0];
-	protected IResource fResource = null;
-	private JSPTemplateCompletionProcessor fTemplateProcessor = null;
-	private List fTemplateContexts = new ArrayList();
-
-	public JSPContentAssistProcessor() {
-		super();
-		initNameToProcessorMap();
-		initPartitionToProcessorMap();
-	}
-
-	/**
-	 * init map for extra content assist processors (useBean,
-	 * get/setProperty). points [tagname > processor]
-	 */
-	protected void initNameToProcessorMap() {
-		fNameToProcessorMap = new HashMap();
-		JSPPropertyContentAssistProcessor jspPropertyCAP = new JSPPropertyContentAssistProcessor();
-		fNameToProcessorMap.put(JSP11Namespace.ElementName.SETPROPERTY, jspPropertyCAP);
-		fNameToProcessorMap.put(JSP11Namespace.ElementName.GETPROPERTY, jspPropertyCAP);
-		fNameToProcessorMap.put(JSP11Namespace.ElementName.USEBEAN, new JSPUseBeanContentAssistProcessor());
-	}
-
-	/**
-	 * int map that points [partition > processor]. This takes place of
-	 * embedded adapters for now.
-	 */
-	protected void initPartitionToProcessorMap() {
-		fPartitionToProcessorMap = new HashMap();
-		HTMLContentAssistProcessor htmlProcessor = new HTMLContentAssistProcessor();
-		JSPJavaContentAssistProcessor jspJavaProcessor = new JSPJavaContentAssistProcessor();
-		XMLContentAssistProcessor xmlProcessor = new XMLContentAssistProcessor();
-		JavaScriptContentAssistProcessor javascriptProcessor = new JavaScriptContentAssistProcessor();
-
-		fPartitionToProcessorMap.put(IHTMLPartitions.HTML_DEFAULT, htmlProcessor);
-		fPartitionToProcessorMap.put(IXMLPartitions.XML_DEFAULT, xmlProcessor);
-		fPartitionToProcessorMap.put(IStructuredPartitions.DEFAULT_PARTITION, htmlProcessor);
-		fPartitionToProcessorMap.put(IJSPPartitions.JSP_DEFAULT, jspJavaProcessor);
-		fPartitionToProcessorMap.put(IJSPPartitions.JSP_DIRECTIVE, xmlProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitions.HTML_COMMENT, htmlProcessor);
-		fPartitionToProcessorMap.put(IJSPPartitions.JSP_CONTENT_JAVASCRIPT, javascriptProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitions.SCRIPT, javascriptProcessor); // default
-		// to
-		// javascript
-		// for
-		// all
-		// script
-	}
-
-	protected void addCommentProposal(ContentAssistRequest contentAssistRequest) {
-		// do nothing
-	}
-
-	protected void addDocTypeProposal(ContentAssistRequest contentAssistRequest) {
-		// do nothing
-	}
-
-	protected void addEmptyDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsJSP.NEW);
-
-		super.addEmptyDocumentProposals(contentAssistRequest);
-		addTagInsertionProposals(contentAssistRequest, 0);
-	}
-
-	protected void addEndTagNameProposals(ContentAssistRequest contentAssistRequest) {
-		// do nothing
-	}
-
-	protected void addPCDATAProposal(String nodeName, ContentAssistRequest contentAssistRequest) {
-		// do nothing
-	}
-
-	protected void addStartDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		// do nothing
-	}
-
-	protected void addTagCloseProposals(ContentAssistRequest contentAssistRequest) {
-		// do nothing
-	}
-
-	protected void addXMLProposal(ContentAssistRequest contentAssistRequest) {
-		// do nothing
-	}
-
-	protected void addEndTagProposals(ContentAssistRequest contentAssistRequest) {
-		// do nothing
-	}
-
-	protected void addAttributeNameProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsJSP.ATTRIBUTE);
-
-		// specific fix for CMVC 274033
-		// no attribute proposals for <jsp:useBean />
-		String nodeName = contentAssistRequest.getNode().getNodeName();
-		if (nodeName.indexOf(':') != -1) { //$NON-NLS-1$
-			super.addAttributeNameProposals(contentAssistRequest);
-		}
-	}
-
-	/**
-	 * add proposals for tags in attribute values
-	 */
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsJSP.ATTRIBUTE_VALUE);
-
-		XMLNode node = (XMLNode) contentAssistRequest.getNode();
-
-		// add JSP extra proposals from JSPBeanInfoContentAssistProcessor
-		// JSPPropertyContentAssistProcessor
-
-		// 2.1
-		// get results from JSPUseBean and JSPProperty here
-		// (look up processor in a map based on node name)
-		JSPDummyContentAssistProcessor extraProcessor = (JSPDummyContentAssistProcessor) fNameToProcessorMap.get(node.getNodeName());
-		if (extraProcessor != null && contentAssistRequest != null) {
-			extraProcessor.initialize(fResource);
-			extraProcessor.addAttributeValueProposals(contentAssistRequest);
-		}
-
-		ModelQuery mq = ModelQueryUtil.getModelQuery(node.getOwnerDocument());
-		if (mq != null) {
-			CMDocument doc = mq.getCorrespondingCMDocument(node);
-			// this shouldn't have to have the prefix coded in
-			if (doc instanceof JSPCMDocument || doc instanceof CMNodeWrapper || node.getNodeName().startsWith("jsp:")) //$NON-NLS-1$
-				return;
-		}
-
-		// Find the attribute name for which this position should have a value
-		IStructuredDocumentRegion open = node.getFirstStructuredDocumentRegion();
-		ITextRegionList openRegions = open.getRegions();
-		int i = openRegions.indexOf(contentAssistRequest.getRegion());
-		if (i < 0)
-			return;
-		ITextRegion nameRegion = null;
-		while (i >= 0) {
-			nameRegion = openRegions.get(i--);
-			if (nameRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)
-				break;
-		}
-
-		String attributeName = null;
-		if (nameRegion != null)
-			attributeName = open.getText(nameRegion);
-		String currentValue = null;
-		if (attributeName != null)
-			currentValue = node.getAttributes().getNamedItem(attributeName).getNodeValue();
-
-		// on an empty value, add all the JSP and taglib tags
-		if ((contentAssistRequest.getRegion().getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS && contentAssistRequest.getReplacementLength() == 0) || (contentAssistRequest.getRegion().getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE && (currentValue == null || currentValue.length() == 0))) {
-			List rejectElements = new ArrayList();
-			rejectElements.add(JSP12Namespace.ElementName.SCRIPTLET);
-			rejectElements.add(JSP12Namespace.ElementName.EXPRESSION);
-			rejectElements.add(JSP12Namespace.ElementName.DECLARATION);
-			rejectElements.add(JSP12Namespace.ElementName.DIRECTIVE_INCLUDE);
-			rejectElements.add(JSP12Namespace.ElementName.DIRECTIVE_PAGE);
-			rejectElements.add(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-			rejectElements.add(JSP12Namespace.ElementName.FALLBACK);
-			rejectElements.add(JSP12Namespace.ElementName.USEBEAN);
-			rejectElements.add(JSP12Namespace.ElementName.SETPROPERTY);
-			rejectElements.add(JSP12Namespace.ElementName.FORWARD);
-			rejectElements.add(JSP12Namespace.ElementName.PLUGIN);
-			rejectElements.add(JSP12Namespace.ElementName.FALLBACK);
-			rejectElements.add(JSP12Namespace.ElementName.PARAMS);
-
-			List additionalElements = getAdditionalChildren(new ArrayList(), node, -1);
-			for (i = 0; i < additionalElements.size(); i++) {
-				CMElementDeclaration ed = (CMElementDeclaration) additionalElements.get(i);
-				if (rejectElements.contains(ed.getNodeName()))
-					continue;
-				String tagname = getContentGenerator().getRequiredName(node, ed);
-				StringBuffer contents = new StringBuffer("\""); //$NON-NLS-1$
-				getContentGenerator().generateTag(node, ed, contents);
-				contents.append('"');
-				CustomCompletionProposal proposal = new CustomCompletionProposal(contents.toString(), contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), contents.length(), JSPEditorPluginImageHelper.getInstance().getImage(JSPEditorPluginImages.IMG_OBJ_TAG_GENERIC), tagname, null, null, XMLRelevanceConstants.R_JSP_ATTRIBUTE_VALUE);
-				contentAssistRequest.addProposal(proposal);
-
-				addTemplates(contentAssistRequest, TemplateContextTypeIdsJSP.TAG);
-				addTemplates(contentAssistRequest, TemplateContextTypeIdsJSP.ALL);
-			}
-		}
-
-		else if (contentAssistRequest.getRegion().getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-			try {
-				// Create a new model for Content Assist to operate on. This
-				// will simulate
-				// a full Document and then adjust the offset numbers in the
-				// list of results.
-				IStructuredModel internalModel = null;
-				IModelManager mmanager = StructuredModelManager.getModelManager();
-				internalModel = mmanager.createUnManagedStructuredModelFor(ContentTypeIdForJSP.ContentTypeID_JSP);
-				XMLNode xmlNode = null;
-				XMLModel xmlOuterModel = null;
-				if (contentAssistRequest.getNode() instanceof XMLNode) {
-					xmlNode = (XMLNode) contentAssistRequest.getNode();
-					xmlOuterModel = xmlNode.getModel();
-					internalModel.setResolver(xmlOuterModel.getResolver());
-					internalModel.setBaseLocation(xmlOuterModel.getBaseLocation());
-				}
-				String contents = StringUtils.strip(contentAssistRequest.getText());
-				if (xmlNode != null && contents != null) {
-					int additionalShifts = 0;
-					// Be sure that custom tags from taglibs also show up
-					// by
-					// adding taglib declarations to the internal model.
-					TLDCMDocumentManager mgr = TaglibController.getTLDCMDocumentManager(xmlOuterModel.getStructuredDocument());
-					if (mgr != null) {
-						List trackers = mgr.getCMDocumentTrackers(contentAssistRequest.getReplacementBeginPosition());
-						if (trackers != null) {
-							for (i = 0; i < trackers.size(); i++) {
-								CMDocumentTracker tracker = (CMDocumentTracker) trackers.get(i);
-								String declaration = tracker.getStructuredDocumentRegion().getText();
-								if (declaration != null) {
-									contents = declaration + contents;
-									additionalShifts += declaration.length();
-								}
-							}
-						}
-					}
-					// Also copy any jsp:useBean tags so that
-					// jsp:[gs]etProperty will function
-					Document doc = null;
-					if (contentAssistRequest.getNode().getNodeType() == Node.DOCUMENT_NODE)
-						doc = (Document) node;
-					else
-						doc = node.getOwnerDocument();
-					NodeList useBeans = doc.getElementsByTagName(JSP12Namespace.ElementName.USEBEAN);
-					for (int k = 0; k < useBeans.getLength(); k++) {
-						XMLNode useBean = (XMLNode) useBeans.item(k);
-						if (useBean.getStartOffset() < contentAssistRequest.getReplacementBeginPosition()) {
-							StringBuffer useBeanText = new StringBuffer("<jsp:useBean"); //$NON-NLS-1$
-							for (int j = 0; j < useBean.getAttributes().getLength(); j++) {
-								Attr attr = (Attr) useBean.getAttributes().item(j);
-								useBeanText.append(' ');
-								useBeanText.append(attr.getName());
-								useBeanText.append("=\""); //$NON-NLS-1$
-								useBeanText.append(attr.getValue());
-								useBeanText.append('"');
-							}
-							useBeanText.append("/>"); //$NON-NLS-1$
-							additionalShifts += useBeanText.length();
-							contents = useBeanText.toString() + contents;
-						}
-					}
-					internalModel.getStructuredDocument().set(contents);
-					int internalOffset = 0;
-					boolean quoted = false;
-					// if quoted, use position inside and shift by one
-					if (contentAssistRequest.getMatchString().length() > 0 && (contentAssistRequest.getMatchString().charAt(0) == '\'' || contentAssistRequest.getMatchString().charAt(0) == '"')) {
-						internalOffset = contentAssistRequest.getMatchString().length() - 1 + additionalShifts;
-						quoted = true;
-					}
-					// if unquoted, use position inside
-					else if (contentAssistRequest.getMatchString().length() > 0 && contentAssistRequest.getMatchString().charAt(0) == '<')
-						internalOffset = contentAssistRequest.getMatchString().length() + additionalShifts;
-					else
-						internalOffset = contentAssistRequest.getReplacementBeginPosition() - contentAssistRequest.getStartOffset() + additionalShifts;
-					depthCount++;
-					IndexedRegion internalNode = null;
-					int tmpOffset = internalOffset;
-					while (internalNode == null && tmpOffset >= 0)
-						internalNode = internalModel.getIndexedRegion(tmpOffset--);
-
-					if (internalModel.getFactoryRegistry() != null) {
-						// set up the internal model
-						if (internalModel.getFactoryRegistry().getFactoryFor(PageDirectiveAdapter.class) == null) {
-							internalModel.getFactoryRegistry().addFactory(new PageDirectiveAdapterFactory());
-						}
-						PageDirectiveAdapter outerEmbeddedTypeAdapter = (PageDirectiveAdapter) xmlOuterModel.getDocument().getAdapterFor(PageDirectiveAdapter.class);
-						PageDirectiveAdapter internalEmbeddedTypeAdapter = (PageDirectiveAdapter) ((INodeNotifier) ((Node) internalNode).getOwnerDocument()).getAdapterFor(PageDirectiveAdapter.class);
-						internalEmbeddedTypeAdapter.setEmbeddedType(outerEmbeddedTypeAdapter.getEmbeddedType());
-					}
-
-					AdapterFactoryRegistry adapterRegistry = JSPUIPlugin.getDefault().getAdapterFactoryRegistry();
-					Iterator adapterList = adapterRegistry.getAdapterFactories();
-					// And all those appropriate for this particular type
-					// of content
-					while (adapterList.hasNext()) {
-						try {
-							AdapterFactoryProvider provider = (AdapterFactoryProvider) adapterList.next();
-							if (provider.isFor(internalModel.getModelHandler())) {
-								provider.addAdapterFactories(internalModel);
-							}
-						} catch (Exception e) {
-							Logger.logException(e);
-						}
-					}
-
-					/**
-					 * the internal adapter does all the real work of using
-					 * the JSP content model to form proposals
-					 */
-					ICompletionProposal[] results = null;
-					depthCount--;
-					if (results != null) {
-						for (i = 0; i < results.length; i++) {
-							contentAssistRequest.addProposal(new CustomCompletionProposal(((CustomCompletionProposal) results[i]).getReplacementString(), ((CustomCompletionProposal) results[i]).getReplacementOffset() - additionalShifts + contentAssistRequest.getStartOffset() + (quoted ? 1 : 0), ((CustomCompletionProposal) results[i]).getReplacementLength(), ((CustomCompletionProposal) results[i]).getCursorPosition(), results[i].getImage(), results[i].getDisplayString(), ((CustomCompletionProposal) results[i]).getContextInformation(), ((CustomCompletionProposal) results[i]).getAdditionalProposalInfo(), (results[i] instanceof IRelevanceCompletionProposal) ? ((IRelevanceCompletionProposal) results[i]).getRelevance() : IRelevanceConstants.R_NONE));
-						}
-					}
-				}
-			} catch (Exception e) {
-				Logger.logException("Error in embedded JSP Content Assist", e); //$NON-NLS-1$
-			}
-		}
-
-
-	}
-
-	private List getAdditionalChildren(List elementDecls, Node node, int childIndex) {
-		if (node instanceof XMLNode) {
-			/*
-			 * find the location of the intended insertion as it will give us
-			 * the correct offset for checking position dependent CMDocuments
-			 */
-			int textInsertionOffset = 0;
-			NodeList children = node.getChildNodes();
-			if (children.getLength() >= childIndex && childIndex >= 0) {
-				Node nodeAlreadyAtIndex = children.item(childIndex);
-				if (nodeAlreadyAtIndex instanceof XMLNode)
-					textInsertionOffset = ((XMLNode) nodeAlreadyAtIndex).getEndOffset();
-			} else {
-				textInsertionOffset = ((XMLNode) node).getStartOffset();
-			}
-			TLDCMDocumentManager mgr = TaglibController.getTLDCMDocumentManager(((XMLNode) node).getStructuredDocument());
-			if (mgr != null) {
-				List moreCMDocuments = mgr.getCMDocumentTrackers(textInsertionOffset);
-				if (moreCMDocuments != null) {
-					for (int i = 0; i < moreCMDocuments.size(); i++) {
-						CMDocument doc = (CMDocument) moreCMDocuments.get(i);
-						CMNamedNodeMap elements = doc.getElements();
-						if (elements != null) {
-							for (int j = 0; j < elements.getLength(); j++) {
-								CMElementDeclaration ed = (CMElementDeclaration) elements.item(j);
-								elementDecls.add(ed);
-							}
-						}
-					}
-				}
-			}
-
-			// get position dependent CMDocuments and insert their tags as
-			// proposals
-
-			ModelQueryAdapter mqAdapter = null;
-			if (node.getNodeType() == Node.DOCUMENT_NODE)
-				mqAdapter = (ModelQueryAdapter) ((XMLNode) node).getAdapterFor(ModelQueryAdapter.class);
-			else
-				mqAdapter = (ModelQueryAdapter) ((XMLNode) node.getOwnerDocument()).getAdapterFor(ModelQueryAdapter.class);
-
-			if (mqAdapter != null) {
-				CMDocument doc = mqAdapter.getModelQuery().getCorrespondingCMDocument(node);
-				// this shouldn't have to have the prefix coded in
-				if (!(doc != null && (doc instanceof JSPCMDocument || doc instanceof CMNodeWrapper || node.getNodeName().startsWith("jsp:")))) { //$NON-NLS-1$
-					// get jsp namespace elements and insert their contents
-					CMDocument JCMDoc = HTMLCMDocumentFactory.getCMDocument(CMDocType.JSP11_DOC_TYPE);
-					CMNamedNodeMap jspelements = JCMDoc.getElements();
-
-					if (jspelements != null) {
-						List rejectElements = new ArrayList();
-
-						// determine if the document is in XML form
-						Document domDoc = null;
-						if (node.getNodeType() == Node.DOCUMENT_NODE)
-							domDoc = (Document) node;
-						else
-							domDoc = node.getOwnerDocument();
-						// Show XML tag forms of JSP markers if jsp:root is
-						// the document element OR it's HTML but
-						// isn't really in the text.
-						// If the document isn't strictly XML, pull out the
-						// XML tag forms
-						if (!isXMLFormat(domDoc)) {
-							rejectElements.add(JSP12Namespace.ElementName.SCRIPTLET);
-							rejectElements.add(JSP12Namespace.ElementName.EXPRESSION);
-							rejectElements.add(JSP12Namespace.ElementName.DECLARATION);
-							rejectElements.add(JSP12Namespace.ElementName.DIRECTIVE_INCLUDE);
-							rejectElements.add(JSP12Namespace.ElementName.DIRECTIVE_PAGE);
-							rejectElements.add(JSP12Namespace.ElementName.TEXT);
-						}
-						// always exclude jsp:directive.taglib
-						if (isInternalAdapter) {
-							rejectElements.add(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-							rejectElements.add(JSP12Namespace.ElementName.DIRECTIVE_TAGLIB);
-							rejectElements.add(JSP12Namespace.ElementName.FALLBACK);
-							rejectElements.add(JSP12Namespace.ElementName.USEBEAN);
-							rejectElements.add(JSP12Namespace.ElementName.SETPROPERTY);
-							rejectElements.add(JSP12Namespace.ElementName.FORWARD);
-							rejectElements.add(JSP12Namespace.ElementName.PLUGIN);
-							rejectElements.add(JSP12Namespace.ElementName.FALLBACK);
-							rejectElements.add(JSP12Namespace.ElementName.PARAMS);
-						}
-
-						// don't show jsp:root if a document element already
-						// exists
-						Element docElement = domDoc.getDocumentElement();
-						if (docElement != null && ((docElement.getNodeName().equals("jsp:root")) || ((((XMLNode) docElement).getStartStructuredDocumentRegion() != null || ((XMLNode) docElement).getEndStructuredDocumentRegion() != null)))) //$NON-NLS-1$
-							rejectElements.add(JSP12Namespace.ElementName.ROOT);
-
-						for (int j = 0; j < jspelements.getLength(); j++) {
-							CMElementDeclaration ed = (CMElementDeclaration) jspelements.item(j);
-							if (rejectElements.contains(ed.getNodeName()))
-								continue;
-							else
-								elementDecls.add(ed);
-						}
-					}
-				}
-			}
-		}
-		return elementDecls;
-	}
-
-	protected List getAvailableChildrenAtIndex(Element parent, int index) {
-		List list = new ArrayList();
-		List additionalElements = getAdditionalChildren(new ArrayList(), parent, index);
-		for (int i = 0; i < additionalElements.size(); i++) {
-			ModelQueryAction insertAction = new NonValidatingModelQueryAction((CMElementDeclaration) additionalElements.get(i), ModelQueryAction.INSERT, 0, parent.getChildNodes().getLength(), null);
-			list.add(insertAction);
-		}
-
-		// add allowed children of implicit tags that don't already exist
-		NodeList children = parent.getChildNodes();
-		List childNames = new ArrayList();
-		if (children != null) {
-			for (int i = 0; i < children.getLength(); i++) {
-				Node child = children.item(i);
-				if (child.getNodeType() == Node.ELEMENT_NODE)
-					childNames.add(child.getNodeName().toLowerCase());
-			}
-		}
-		List allActions = new ArrayList();
-		Iterator iterator = list.iterator();
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(parent.getOwnerDocument());
-		while (iterator.hasNext()) {
-			ModelQueryAction action = (ModelQueryAction) iterator.next();
-			allActions.add(action);
-			if (action.getCMNode() instanceof HTMLElementDeclaration) {
-				HTMLElementDeclaration ed = (HTMLElementDeclaration) action.getCMNode();
-				String ommission = (String) ed.getProperty(HTMLCMProperties.OMIT_TYPE);
-				if (!childNames.contains(ed.getNodeName().toLowerCase()) && ((ommission != null) && (ommission.equals(HTMLCMProperties.Values.OMIT_BOTH)))) {
-					List implicitValidActions = new ArrayList();
-					modelQuery.getInsertActions(parent, ed, 0, ModelQuery.INCLUDE_CHILD_NODES, ModelQuery.VALIDITY_NONE, implicitValidActions);
-					if (implicitValidActions != null) {
-						Iterator implicitValidActionsIterator = implicitValidActions.iterator();
-						while (implicitValidActionsIterator.hasNext()) {
-							ModelQueryAction insertAction = new NonValidatingModelQueryAction(((ModelQueryAction) implicitValidActionsIterator.next()).getCMNode(), ModelQueryAction.INSERT, 0, parent.getChildNodes().getLength(), null);
-							allActions.add(insertAction);
-						}
-					}
-				}
-			}
-		}
-		return allActions;
-	}
-
-	protected List getAvailableRootChildren(Document document, int childIndex) {
-		List list = new ArrayList();
-		if (!isXMLFormat(document))
-			getAdditionalChildren(list, document, childIndex);
-		return list;
-	}
-
-	protected void init() {
-		super.init();
-	}
-
-	public void setErrorMessage(String errorMessage) {
-		if (depthCount == 0)
-			fErrorMessage = errorMessage;
-	}
-
-	/**
-	 * This method is acting as a "catch all" for pulling together content
-	 * assist proposals from different Processors when document partitioning
-	 * alone couldn't determine definitively what content assist should show
-	 * up at that particular position in the document
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#computeCompletionProposals(ITextViewer,
-	 *      int)
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int documentPosition) {
-		fTemplateContexts.clear();
-		
-		IStructuredDocumentRegion sdRegion = ContentAssistUtils.getStructuredDocumentRegion((StructuredTextViewer) viewer, documentPosition);
-		fViewer = viewer;
-		ICompletionProposal[] jspResults = EMPTY_PROPOSAL_SET;
-		ICompletionProposal[] embeddedResults = EMPTY_PROPOSAL_SET;
-
-		// check the actual partition type
-		String partitionType = getPartitionType((StructuredTextViewer) viewer, documentPosition);
-		IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(viewer.getDocument());
-		IStructuredDocument structuredDocument = sModel.getStructuredDocument();
-		sModel.releaseFromRead();
-
-		IStructuredDocumentRegion fn = structuredDocument.getRegionAtCharacterOffset(documentPosition);
-
-		// ////////////////////////////////////////////////////////////////////////////
-		// ANOTHER WORKAROUND UNTIL PARTITIONING TAKES CARE OF THIS
-		// check for xml-jsp tags...
-		// CMVC 243657
-		if (partitionType == IJSPPartitions.JSP_DIRECTIVE && fn != null) {
-			IStructuredDocumentRegion possibleXMLJSP = ((fn.getType() == XMLRegionContext.XML_CONTENT) && fn.getPrevious() != null) ? fn.getPrevious() : fn;
-			ITextRegionList regions = possibleXMLJSP.getRegions();
-			if (regions.size() > 1) {
-				// check bounds cases
-				ITextRegion xmlOpenOrClose = regions.get(0);
-				if (xmlOpenOrClose.getType() == XMLRegionContext.XML_TAG_OPEN && documentPosition == possibleXMLJSP.getStartOffset()) {
-					// do regular jsp content assist
-				} else if (xmlOpenOrClose.getType() == XMLRegionContext.XML_END_TAG_OPEN && documentPosition > possibleXMLJSP.getStartOffset()) {
-					// do regular jsp content assist
-				} else {
-					// possible xml-jsp
-					ITextRegion nameRegion = regions.get(1);
-					String name = possibleXMLJSP.getText(nameRegion);
-					if (name.equals("jsp:scriptlet") || name.equals("jsp:expression") || name.equals("jsp:declaration")) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-						return getJSPJavaCompletionProposals(viewer, documentPosition);
-					}
-				}
-			}
-		}
-
-		// ////////////////////////////////////////////////////////////////////////////
-		// ** THIS IS A TEMP FIX UNTIL PARTITIONING TAKES CARE OF THIS...
-		// CMVC 241882
-		// check for XML-JSP in a <script> region
-		if (partitionType == IJSPPartitions.JSP_CONTENT_JAVASCRIPT || partitionType == IHTMLPartitions.SCRIPT) {
-			// fn should be block text
-			IStructuredDocumentRegion decodedSDRegion = decodeScriptBlock(fn.getFullText());
-			// System.out.println("decoded > " +
-			// blockOfText.substring(decodedSDRegion.getStartOffset(),
-			// decodedSDRegion.getEndOffset()));
-			if (decodedSDRegion != null) {
-				IStructuredDocumentRegion sdr = decodedSDRegion;
-				while (sdr != null) {
-					// System.out.println("sdr " + sdr.getType());
-					// System.out.println("sdr > " +
-					// blockOfText.substring(sdr.getStartOffset(),
-					// sdr.getEndOffset()));
-					if (sdr.getType() == DOMJSPRegionContexts.JSP_CONTENT) {
-						if (documentPosition >= fn.getStartOffset() + sdr.getStartOffset() && documentPosition <= fn.getStartOffset() + sdr.getEndOffset()) {
-							return getJSPJavaCompletionProposals(viewer, documentPosition);
-						}
-					} else if (sdr.getType() == XMLRegionContext.XML_TAG_NAME) {
-						if (documentPosition > fn.getStartOffset() + sdr.getStartOffset() && documentPosition < fn.getStartOffset() + sdr.getEndOffset()) {
-							return EMPTY_PROPOSAL_SET;
-						} else if (documentPosition == fn.getStartOffset() + sdr.getEndOffset() && sdr.getNext() != null && sdr.getNext().getType() == DOMJSPRegionContexts.JSP_CONTENT) {
-							// the end of an open tag <script>
-							// <jsp:scriptlet>| blah </jsp:scriptlet>
-							return getJSPJavaCompletionProposals(viewer, documentPosition);
-						} else if (documentPosition == fn.getStartOffset() + sdr.getStartOffset() && sdr.getPrevious() != null && sdr.getPrevious().getType() == XMLRegionContext.XML_TAG_NAME) {
-							return getJSPJavaCompletionProposals(viewer, documentPosition);
-						}
-					}
-					sdr = sdr.getNext();
-				}
-			}
-		}
-		// /////////////////////////////////////////////////////////////////////////
-
-		// check special JSP delimiter cases
-		if (fn != null && partitionType == IJSPPartitions.JSP_CONTENT_DELIMITER) {
-			IStructuredDocumentRegion fnDelim = fn;
-
-			// if it's a nested JSP region, need to get the correct
-			// StructuredDocumentRegion
-			// not sure why this check was there...
-			// if (fnDelim.getType() == XMLRegionContext.BLOCK_TEXT) {
-			Iterator blockRegions = fnDelim.getRegions().iterator();
-			ITextRegion temp = null;
-			ITextRegionContainer trc;
-			while (blockRegions.hasNext()) {
-				temp = (ITextRegion) blockRegions.next();
-				// we hit a nested
-				if (temp instanceof ITextRegionContainer) {
-					trc = (ITextRegionContainer) temp;
-					// it's in this region
-					if (documentPosition >= trc.getStartOffset() && documentPosition < trc.getEndOffset()) {
-						Iterator nestedJSPRegions = trc.getRegions().iterator();
-						while (nestedJSPRegions.hasNext()) {
-							temp = (ITextRegion) nestedJSPRegions.next();
-							if (XMLContentAssistUtilities.isJSPOpenDelimiter(temp.getType()) && documentPosition == trc.getStartOffset(temp)) {
-								// HTML content assist
-								// we actually want content assist for the
-								// previous type of region,
-								// well get those proposals from the embedded
-								// adapter
-								if (documentPosition > 0) {
-									partitionType = getPartitionType((StructuredTextViewer) viewer, documentPosition - 1);
-									break;
-								}
-							} else if (XMLContentAssistUtilities.isJSPCloseDelimiter(temp.getType()) && documentPosition == trc.getStartOffset(temp)) {
-								// JSP content assist
-								return getJSPJavaCompletionProposals(viewer, documentPosition);
-							}
-						}
-					}
-				}
-				// }
-			}
-
-			// take care of XML-JSP delimter cases
-			if (XMLContentAssistUtilities.isXMLJSPDelimiter(fnDelim)) {
-				// since it's a delimiter, we know it's a ITextRegionContainer
-				ITextRegion firstRegion = fnDelim.getRegions().get(0);
-				if (fnDelim.getStartOffset() == documentPosition && (firstRegion.getType() == XMLRegionContext.XML_TAG_OPEN)) {
-					// |<jsp:scriptlet> </jsp:scriptlet>
-					// (pa) commented out so that we get regular behavior JSP
-					// macros etc...
-					// return getHTMLCompletionProposals(viewer,
-					// documentPosition);
-				} else if (fnDelim.getStartOffset() == documentPosition && (firstRegion.getType() == XMLRegionContext.XML_END_TAG_OPEN)) {
-					// <jsp:scriptlet> |</jsp:scriptlet>
-					// check previous partition type to see if it's JAVASCRIPT
-					// if it is, we're just gonna let the embedded JAVASCRIPT
-					// adapter get the proposals
-					if (documentPosition > 0) {
-						String checkType = getPartitionType((StructuredTextViewer) viewer, documentPosition - 1);
-						if (checkType != IJSPPartitions.JSP_CONTENT_JAVASCRIPT) { // this
-							// check
-							// is
-							// failing
-							// for
-							// XML-JSP
-							// (region
-							// is
-							// not
-							// javascript...)
-							return getJSPJavaCompletionProposals(viewer, documentPosition);
-						} else {
-							partitionType = IJSPPartitions.JSP_CONTENT_JAVASCRIPT;
-						}
-					}
-				} else if ((firstRegion.getType() == XMLRegionContext.XML_TAG_OPEN) && documentPosition >= fnDelim.getEndOffset()) {
-					// anything else inbetween
-					return getJSPJavaCompletionProposals(viewer, documentPosition);
-				}
-			} else if (XMLContentAssistUtilities.isJSPDelimiter(fnDelim)) {
-				// the delimiter <%, <%=, <%!, ...
-				if (XMLContentAssistUtilities.isJSPCloseDelimiter(fnDelim)) {
-					if (documentPosition == fnDelim.getStartOffset()) {
-						// check previous partition type to see if it's
-						// JAVASCRIPT
-						// if it is, we're just gonna let the embedded
-						// JAVASCRIPT adapter get the proposals
-						if (documentPosition > 0) {
-							String checkType = getPartitionType((StructuredTextViewer) viewer, documentPosition - 1);
-							if (checkType != IJSPPartitions.JSP_CONTENT_JAVASCRIPT) {
-								return getJSPJavaCompletionProposals(viewer, documentPosition);
-							} else {
-								partitionType = IJSPPartitions.JSP_CONTENT_JAVASCRIPT;
-							}
-						}
-					}
-				} else if (XMLContentAssistUtilities.isJSPOpenDelimiter(fnDelim)) {
-					// if it's the first position of open delimiter
-					// use embedded HTML results
-					if (documentPosition == fnDelim.getStartOffset()) {
-						embeddedResults = getHTMLCompletionProposals(viewer, documentPosition);
-					} else if (documentPosition == fnDelim.getEndOffset()) {
-						// it's at the EOF <%|
-						return getJSPJavaCompletionProposals(viewer, documentPosition);
-					}
-				}
-			}
-		}
-
-		// need to check if it's JSP region inside of CDATA w/ no region
-		// <![CDATA[ <%|%> ]]>
-		// or a comment region
-		// <!-- <% |%> -->
-		if (fn != null && (fn.getType() == XMLRegionContext.XML_CDATA_TEXT || fn.getType() == XMLRegionContext.XML_COMMENT_TEXT)) {
-			if (fn instanceof ITextRegionContainer) {
-				Object[] cdataRegions = fn.getRegions().toArray();
-				ITextRegion r = null;
-				ITextRegion jspRegion = null;
-				for (int i = 0; i < cdataRegions.length; i++) {
-					r = (ITextRegion) cdataRegions[i];
-					if (r instanceof ITextRegionContainer) {
-						// CDATA embedded container, or comment container
-						Object[] jspRegions = ((ITextRegionContainer) r).getRegions().toArray();
-						for (int j = 0; j < jspRegions.length; j++) {
-							jspRegion = (ITextRegion) jspRegions[j];
-							if (jspRegion.getType() == DOMJSPRegionContexts.JSP_CLOSE) {
-								if (sdRegion.getStartOffset(jspRegion) == documentPosition)
-									return getJSPJavaCompletionProposals(viewer, documentPosition);
-							}
-						}
-					}
-				}
-
-			}
-		}
-
-		// check if it's in an attribute value, if so, don't add CDATA
-		// proposal
-		ITextRegion attrContainer = (fn != null) ? fn.getRegionAtCharacterOffset(documentPosition) : null;
-		if (attrContainer != null && attrContainer instanceof ITextRegionContainer) {
-			if (attrContainer.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				// test location of the cursor
-				// return null if it's in the middle of an open/close
-				// delimeter
-				Iterator attrRegions = ((ITextRegionContainer) attrContainer).getRegions().iterator();
-				ITextRegion testRegion = null;
-				while (attrRegions.hasNext()) {
-					testRegion = (ITextRegion) attrRegions.next();
-					// need to check for other valid attribute regions
-					if (XMLContentAssistUtilities.isJSPOpenDelimiter(testRegion.getType())) {
-						if (!(((ITextRegionContainer) attrContainer).getEndOffset(testRegion) <= documentPosition))
-							return EMPTY_PROPOSAL_SET;
-					} else if (XMLContentAssistUtilities.isJSPCloseDelimiter(testRegion.getType())) {
-						if (!(((ITextRegionContainer) attrContainer).getStartOffset(testRegion) >= documentPosition))
-							return EMPTY_PROPOSAL_SET;
-					}
-				}
-				// TODO: handle non-Java code such as nested tags
-				if (testRegion.getType().equals(DOMJSPRegionContexts.JSP_CONTENT))
-					return getJSPJavaCompletionProposals(viewer, documentPosition);
-				else
-					return EMPTY_PROPOSAL_SET;
-			}
-		}
-
-		IContentAssistProcessor p = (IContentAssistProcessor) fPartitionToProcessorMap.get(partitionType);
-		if (p != null) {
-			embeddedResults = p.computeCompletionProposals(viewer, documentPosition);
-			// get bean methods, objects, and constants if there are any...
-			if (partitionType == IJSPPartitions.JSP_CONTENT_JAVASCRIPT || partitionType == IHTMLPartitions.SCRIPT) {
-				ICompletionProposal[] beanResults = getJSPJavaBeanProposals(viewer, documentPosition);
-				if (beanResults != null && beanResults.length > 0) {
-					ICompletionProposal[] added = new ICompletionProposal[beanResults.length + embeddedResults.length];
-					System.arraycopy(beanResults, 0, added, 0, beanResults.length);
-					System.arraycopy(embeddedResults, 0, added, beanResults.length, embeddedResults.length);
-					embeddedResults = added;
-				}
-			}
-		} else {
-			// the partition type is probably not mapped
-		}
-
-		// fix for CMVC 253000
-		if (!(p instanceof JavaScriptContentAssistProcessor || p instanceof CSSContentAssistProcessor)) {
-			fTemplateContexts.clear();
-			jspResults = super.computeCompletionProposals(viewer, documentPosition);
-		}
-		if (useEmbeddedResults) {
-			if (embeddedResults != null && embeddedResults.length > 0) {
-				List results = new ArrayList();
-				for (int i = 0; i < embeddedResults.length; i++)
-					results.add(embeddedResults[i]);
-				if (jspResults != null) {
-					for (int i = 0; i < jspResults.length; i++)
-						results.add(jspResults[i]);
-				}
-				jspResults = new ICompletionProposal[results.size()];
-				Collections.sort(results, new ProposalComparator());
-				for (int i = 0; i < results.size(); i++)
-					jspResults[i] = (ICompletionProposal) results.get(i);
-
-			}
-		}
-		if (jspResults == null)
-			jspResults = EMPTY_PROPOSAL_SET;
-		setErrorMessage(jspResults.length == 0 ? UNKNOWN_CONTEXT : null);
-
-		// CMVC 269718
-		// check for |<%-- --%> first position of jsp comment
-		if (partitionType == IJSPPartitions.JSP_COMMENT) {
-			if (sdRegion.getStartOffset() == documentPosition) {
-				ICompletionProposal[] htmlResults = getHTMLCompletionProposals(viewer, documentPosition);
-				jspResults = merge(jspResults, htmlResults);
-			}
-		}
-		return jspResults;
-	}
-
-	/**
-	 * Adds 2 arrays of ICompletionProposals and sorts them with a
-	 * ProposalComparator.
-	 * 
-	 * @param jspResults
-	 * @param htmlResults
-	 * @return
-	 */
-	private ICompletionProposal[] merge(ICompletionProposal[] jspResults, ICompletionProposal[] htmlResults) {
-		List results = new ArrayList();
-		List jsps = Arrays.asList(jspResults);
-		List htmls = Arrays.asList(htmlResults);
-
-		results.addAll(jsps);
-		results.addAll(htmls);
-
-		Collections.sort(results, new ProposalComparator());
-		return (ICompletionProposal[]) results.toArray(new ICompletionProposal[results.size()]);
-	}
-
-	/*
-	 * This method will return JSPJava Proposals that are relevant to any java
-	 * beans that in scope at the documentPosition
-	 * 
-	 * TODO (pa) are taglib vars getting filtered?
-	 * 
-	 * @param viewer @param documentPosition @return ICompletionProposal[]
-	 */
-	private ICompletionProposal[] getJSPJavaBeanProposals(ITextViewer viewer, int documentPosition) {
-		ICompletionProposal[] regularJSPResults = getJSPJavaCompletionProposals(viewer, documentPosition);
-		Vector filteredProposals = new Vector();
-		ICompletionProposal[] finalResults = EMPTY_PROPOSAL_SET;
-		for (int i = 0; i < regularJSPResults.length; i++) {
-			ICompletionProposal test = regularJSPResults[i];
-
-			System.out.println("proposal > " + test.getDisplayString());
-			System.out.println("relevance > " + ((CustomCompletionProposal) test).getRelevance());
-
-			if (isRelevanceAllowed(((CustomCompletionProposal) test).getRelevance())) {
-				filteredProposals.add(test);
-			}
-		}
-		if (filteredProposals.size() > 0) {
-			finalResults = new ICompletionProposal[filteredProposals.size()];
-			Iterator it = filteredProposals.iterator();
-			int j = 0;
-			while (it.hasNext()) {
-				finalResults[j++] = (ICompletionProposal) it.next();
-			}
-		}
-		return finalResults;
-	}
-
-	// These are the only things I'm allowing for use bean if the language is
-	// JAVASCRIPT
-	// I'm filtering based on JavaContentAssistProposal relevance
-	//
-	// 485 > method that belongs to the bean
-	// 486 > bean object
-	// 386 > bean CONSTANT
-	private boolean isRelevanceAllowed(int relevance) {
-		return (relevance == 485 || relevance == 486 || relevance == 326);
-	}
-
-
-	/**
-	 * 
-	 * @param viewer
-	 * @param documentPosition
-	 * @return ICompletionProposal[]
-	 */
-	private ICompletionProposal[] getHTMLCompletionProposals(ITextViewer viewer, int documentPosition) {
-
-		IContentAssistProcessor p = (IContentAssistProcessor) fPartitionToProcessorMap.get(IHTMLPartitions.HTML_DEFAULT);
-		return p.computeCompletionProposals(viewer, documentPosition);
-	}
-
-	/**
-	 * 
-	 * @param viewer
-	 * @param documentPosition
-	 * @return ICompletionProposal[]
-	 */
-	protected ICompletionProposal[] getJSPJavaCompletionProposals(ITextViewer viewer, int documentPosition) {
-		JSPJavaContentAssistProcessor p = (JSPJavaContentAssistProcessor) fPartitionToProcessorMap.get(IJSPPartitions.JSP_DEFAULT);
-		p.initialize(fResource);
-		return p.computeCompletionProposals(viewer, documentPosition);
-	}
-
-	/**
-	 * @param viewer
-	 * @param documentPosition
-	 * @return String
-	 */
-	protected String getPartitionType(StructuredTextViewer viewer, int documentPosition) {
-		String partitionType = null;
-		try {
-			partitionType = TextUtilities.getContentType(viewer.getDocument(), IStructuredDocument.DEFAULT_STRUCTURED_PARTITIONING, viewer.modelOffset2WidgetOffset(documentPosition), false);
-		} catch (BadLocationException e) {
-			partitionType = IDocument.DEFAULT_CONTENT_TYPE;
-		}
-		return partitionType;
-	}
-
-	/*
-	 * ** TEMP WORKAROUND FOR CMVC 241882 Takes a String and blocks out
-	 * jsp:scriptlet, jsp:expression, and jsp:declaration @param blockText
-	 * @return
-	 */
-	private IStructuredDocumentRegion decodeScriptBlock(String blockText) {
-		XMLSourceParser parser = new XMLSourceParser();
-		// use JSP_CONTENT for region type
-		parser.addBlockMarker(new BlockMarker("jsp:scriptlet", null, DOMJSPRegionContexts.JSP_CONTENT, false, false)); //$NON-NLS-1$
-		parser.addBlockMarker(new BlockMarker("jsp:expression", null, DOMJSPRegionContexts.JSP_CONTENT, false, false)); //$NON-NLS-1$
-		parser.addBlockMarker(new BlockMarker("jsp:declaration", null, DOMJSPRegionContexts.JSP_CONTENT, false, false)); //$NON-NLS-1$
-		parser.reset(blockText);
-		return parser.getDocumentRegions();
-	}
-
-	/*
-	 * @see ContentAssistAdapter#computeContextInformation(ITextViewer, int,
-	 *      IndexedRegion)
-	 */
-	public IContextInformation[] computeContextInformation(ITextViewer viewer, int documentOffset, IndexedRegion indexedNode) {
-		return super.computeContextInformation(viewer, documentOffset);
-	}
-
-	/*
-	 * @see ContentAssistAdapter#getContextInformationAutoActivationCharacters()
-	 */
-	public char[] getContextInformationAutoActivationCharacters() {
-		return super.getContextInformationAutoActivationCharacters();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getCompletionProposalAutoActivationCharacters()
-	 */
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		// CMVC 260546
-		// return from HTML preference,
-		// since we know that we are inhereiting the preference for auto
-		// activation from HTML
-		// AbstractUIPlugin htmlPlugin = (AbstractUIPlugin)
-		// Platform.getPlugin(HTMLEditorPlugin.ID);
-		IPreferenceStore store = JSPUIPlugin.getDefault().getPreferenceStore();
-		String key = JSPUIPreferenceNames.AUTO_PROPOSE_CODE;
-
-		String chars = store.getString(key);
-		return (chars != null) ? chars.toCharArray() : new char[0];
-	}
-
-	/*
-	 * @see ContentAssistAdapter#getContextInformationValidator()
-	 */
-	public IContextInformationValidator getContextInformationValidator() {
-		return super.getContextInformationValidator();
-	}
-
-	/*
-	 * @see ContentAssistAdapter#initialize(IResource)
-	 */
-	public void initialize(IResource resourceToInit) {
-		fResource = resourceToInit;
-		if (fNameToProcessorMap != null) {
-
-			if (fNameToProcessorMap.isEmpty())
-				initNameToProcessorMap();
-
-			// init some embedded processors
-			JSPUseBeanContentAssistProcessor useBeanProcessor = (JSPUseBeanContentAssistProcessor) fNameToProcessorMap.get(JSP11Namespace.ElementName.USEBEAN);
-			JSPPropertyContentAssistProcessor propProcessor = (JSPPropertyContentAssistProcessor) fNameToProcessorMap.get(JSP11Namespace.ElementName.SETPROPERTY);
-			useBeanProcessor.initialize(resourceToInit);
-			propProcessor.initialize(resourceToInit);
-		}
-		if (fPartitionToProcessorMap != null) {
-			if (fPartitionToProcessorMap.isEmpty())
-				initPartitionToProcessorMap();
-		}
-	}
-
-	protected boolean isXMLFormat(Document doc) {
-		if (doc == null)
-			return false;
-		Element docElement = doc.getDocumentElement();
-		return docElement != null && ((docElement.getNodeName().equals("jsp:root")) || ((((XMLNode) docElement).getStartStructuredDocumentRegion() == null && ((XMLNode) docElement).getEndStructuredDocumentRegion() == null))); //$NON-NLS-1$
-	}
-
-	/*
-	 * @see ContentAssistAdapter#release()
-	 */
-	public void release() {
-		super.release();
-		// release *ContentAssistProcessors in maps
-		// CMVC 254023
-		releasePartitionToProcessorMap();
-		releaseNameToProcessorMap();
-	}
-
-	protected void releasePartitionToProcessorMap() {
-		releaseMap(fPartitionToProcessorMap);
-	}
-
-	protected void releaseNameToProcessorMap() {
-		releaseMap(fNameToProcessorMap);
-	}
-
-	protected void releaseMap(HashMap map) {
-		if (map != null) {
-			if (!map.isEmpty()) {
-				Iterator it = map.keySet().iterator();
-				Object key = null;
-				while (it.hasNext()) {
-					key = it.next();
-					// TODO (pa) need to make sure processors w/ release()
-					// implement releasable
-					if (map.get(key) instanceof AbstractContentAssistProcessor) {
-						((AbstractContentAssistProcessor) map.get(key)).release();
-					}
-				}
-			}
-			map.clear();
-			map = null;
-		}
-	}
-
-	/**
-	 * @see AbstractContentAssistProcessor#computeCompletionProposals(int,
-	 *      String, ITextRegion, XMLNode, XMLNode)
-	 */
-	protected ContentAssistRequest computeCompletionProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode treeNode, XMLNode xmlnode) {
-
-		ContentAssistRequest request = super.computeCompletionProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-		IStructuredDocumentRegion sdRegion = ContentAssistUtils.getStructuredDocumentRegion((StructuredTextViewer) fTextViewer, documentPosition);
-
-		Document doc = null;
-		if (xmlnode != null) {
-			if (xmlnode.getNodeType() == Node.DOCUMENT_NODE)
-				doc = (Document) xmlnode;
-			else
-				doc = xmlnode.getOwnerDocument();
-		}
-		String[] directiveNames = {"page", "include", "taglib"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		// suggest JSP Expression inside of XML comments
-		if (completionRegion.getType() == XMLRegionContext.XML_COMMENT_TEXT && !isXMLFormat(doc)) {
-			if (request == null)
-				request = newContentAssistRequest(treeNode, xmlnode, sdRegion, completionRegion, documentPosition, 0, ""); //$NON-NLS-1$
-			request.addProposal(new CustomCompletionProposal("<%=  %>", documentPosition, 0, 4, JSPEditorPluginImageHelper.getInstance().getImage(JSPEditorPluginImages.IMG_OBJ_TAG_GENERIC), "jsp:expression", null, "&lt;%= %&gt;", XMLRelevanceConstants.R_JSP)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-		}
-		// handle proposals in and around JSP_DIRECTIVE_OPEN and
-		// JSP_DIRECTIVE_NAME
-		else if ((completionRegion.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN && documentPosition >= sdRegion.getTextEndOffset(completionRegion)) || (completionRegion.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME && documentPosition <= sdRegion.getTextEndOffset(completionRegion))) {
-			if (completionRegion.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN) {
-				if (request == null)
-					request = newContentAssistRequest(xmlnode, xmlnode, sdRegion, completionRegion, documentPosition, 0, matchString);
-				Iterator regions = sdRegion.getRegions().iterator();
-				String nameString = null;
-				int begin = request.getReplacementBeginPosition();
-				int length = request.getReplacementLength();
-				while (regions.hasNext()) {
-					ITextRegion region = (ITextRegion) regions.next();
-					if (region.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-						nameString = sdRegion.getText(region);
-						begin = sdRegion.getStartOffset(region);
-						length = region.getTextLength();
-						break;
-					}
-				}
-				if (nameString == null)
-					nameString = ""; //$NON-NLS-1$
-				for (int i = 0; i < directiveNames.length; i++) {
-					if (directiveNames[i].startsWith(nameString) || documentPosition <= begin)
-						request.addProposal(new CustomCompletionProposal(directiveNames[i], begin, length, directiveNames[i].length(), JSPEditorPluginImageHelper.getInstance().getImage(JSPEditorPluginImages.IMG_OBJ_TAG_GENERIC), directiveNames[i], null, null, XMLRelevanceConstants.R_JSP));
-				}
-			} else { // by default, JSP_DIRECTIVE_NAME
-				if (request == null)
-					request = newContentAssistRequest(xmlnode, xmlnode, sdRegion, completionRegion, sdRegion.getStartOffset(completionRegion), completionRegion.getTextLength(), matchString);
-				for (int i = 0; i < directiveNames.length; i++) {
-					if (directiveNames[i].startsWith(matchString))
-						request.addProposal(new CustomCompletionProposal(directiveNames[i], request.getReplacementBeginPosition(), request.getReplacementLength(), directiveNames[i].length(), JSPEditorPluginImageHelper.getInstance().getImage(JSPEditorPluginImages.IMG_OBJ_TAG_GENERIC), directiveNames[i], null, null, XMLRelevanceConstants.R_JSP));
-				}
-			}
-		} else if ((completionRegion.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME && documentPosition > sdRegion.getTextEndOffset(completionRegion)) || (completionRegion.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE && documentPosition <= sdRegion.getStartOffset(completionRegion))) {
-			if (request == null)
-				request = computeAttributeProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			super.addTagCloseProposals(request);
-			// CMVC 274033, this is being added for all <jsp:* tags
-			// in addAttributeNameProposals(contentAssistRequest)
-			// super.addAttributeNameProposals(request);
-		}
-		// no name?: <%@ %>
-		else if (completionRegion.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE && documentPosition <= sdRegion.getStartOffset(completionRegion)) {
-			if (request != null)
-				request = computeAttributeProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			Iterator regions = sdRegion.getRegions().iterator();
-			String nameString = null;
-			while (regions.hasNext()) {
-				ITextRegion region = (ITextRegion) regions.next();
-				if (region.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-					nameString = sdRegion.getText(region);
-					break;
-				}
-			}
-			if (nameString == null) {
-				for (int i = 0; i < directiveNames.length; i++) {
-					request.addProposal(new CustomCompletionProposal(directiveNames[i], request.getReplacementBeginPosition(), request.getReplacementLength(), directiveNames[i].length(), JSPEditorPluginImageHelper.getInstance().getImage(JSPEditorPluginImages.IMG_OBJ_TAG_GENERIC), directiveNames[i], null, null, XMLRelevanceConstants.R_JSP));
-				}
-			}
-		}
-		
-		addTemplates(request, TemplateContextTypeIdsJSP.ALL);
-		return request;
-	}
-
-	private JSPTemplateCompletionProcessor getTemplateCompletionProcessor() {
-		if (fTemplateProcessor == null) {
-			fTemplateProcessor = new JSPTemplateCompletionProcessor();
-		}
-		return fTemplateProcessor;
-	}
-
-	/**
-	 * Adds templates to the list of proposals
-	 * 
-	 * @param contentAssistRequest
-	 * @param context
-	 */
-	private void addTemplates(ContentAssistRequest contentAssistRequest, String context) {
-		if (contentAssistRequest == null)
-			return;
-		
-		// if already adding template proposals for a certain context type, do
-		// not add again
-		if (!fTemplateContexts.contains(context)) {
-			fTemplateContexts.add(context);
-			boolean useProposalList = !contentAssistRequest.shouldSeparate();
-
-			if (getTemplateCompletionProcessor() != null) {
-				getTemplateCompletionProcessor().setContextType(context);
-				ICompletionProposal[] proposals = getTemplateCompletionProcessor().computeCompletionProposals(fTextViewer, contentAssistRequest.getReplacementBeginPosition());
-				for (int i = 0; i < proposals.length; ++i) {
-					if (useProposalList)
-						contentAssistRequest.addProposal(proposals[i]);
-					else
-						contentAssistRequest.addMacro(proposals[i]);
-				}
-			}
-		}
-	}
-
-	/**
-	 * @see com.ibm.sed.contentassist.old.xml.AbstractContentAssistProcessor#addEntityProposals(ContentAssistRequest,
-	 *      int, ITextRegion, XMLNode)
-	 */
-	protected void addEntityProposals(ContentAssistRequest contentAssistRequest, int documentPosition, ITextRegion completionRegion, XMLNode treeNode) {
-	}
-
-	/**
-	 * @see com.ibm.sed.contentassist.old.xml.AbstractContentAssistProcessor#addTagInsertionProposals(ContentAssistRequest,
-	 *      int)
-	 */
-	protected void addTagInsertionProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsJSP.TAG);
-
-		super.addTagInsertionProposals(contentAssistRequest, childPosition);
-		if (isInternalAdapter)
-			useEmbeddedResults = false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPDummyContentAssistProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPDummyContentAssistProcessor.java
deleted file mode 100644
index 3904143..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPDummyContentAssistProcessor.java
+++ /dev/null
@@ -1,483 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-
-
-import java.util.List;
-import java.util.Properties;
-import java.util.Vector;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.contentassist.IResourceDependentProcessor;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.ui.contentassist.AbstractContentAssistProcessor;
-import org.eclipse.wst.xml.ui.contentassist.ContentAssistRequest;
-import org.eclipse.wst.xml.ui.contentassist.XMLContentModelGenerator;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * @author pavery
- *
- * This class is a "null" version of AbstractContentAssistProcessor
- */
-public class JSPDummyContentAssistProcessor extends AbstractContentAssistProcessor implements IResourceDependentProcessor {
-
-	IResource fResource = null;
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addAttributeNameProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addAttributeNameProposals(ContentAssistRequest contentAssistRequest) {
-		super.addAttributeNameProposals(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addAttributeValueProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-		super.addAttributeValueProposals(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addCommentProposal(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addCommentProposal(ContentAssistRequest contentAssistRequest) {
-		super.addCommentProposal(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addContent(java.util.List, org.eclipse.wst.xml.core.internal.contentmodel.CMContent)
-	 */
-	protected void addContent(List contentList, CMContent content) {
-		super.addContent(contentList, content);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addDocTypeProposal(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addDocTypeProposal(ContentAssistRequest contentAssistRequest) {
-		super.addDocTypeProposal(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addEmptyDocumentProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addEmptyDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		super.addEmptyDocumentProposals(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addEndTagNameProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addEndTagNameProposals(ContentAssistRequest contentAssistRequest) {
-		super.addEndTagNameProposals(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addEndTagProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addEndTagProposals(ContentAssistRequest contentAssistRequest) {
-		super.addEndTagProposals(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addEntityProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest, int, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected void addEntityProposals(ContentAssistRequest contentAssistRequest, int documentPosition, ITextRegion completionRegion, XMLNode treeNode) {
-		super.addEntityProposals(contentAssistRequest, documentPosition, completionRegion, treeNode);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addEntityProposals(java.util.Vector, java.util.Properties, java.lang.String, int, com.ibm.sed.structuredDocument.ITextRegion)
-	 */
-	protected void addEntityProposals(Vector proposals, Properties map, String key, int nodeOffset, IStructuredDocumentRegion parent, ITextRegion completionRegion) {
-		super.addEntityProposals(proposals, map, key, nodeOffset, parent, completionRegion);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addPCDATAProposal(java.lang.String, com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addPCDATAProposal(String nodeName, ContentAssistRequest contentAssistRequest) {
-		super.addPCDATAProposal(nodeName, contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addStartDocumentProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addStartDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		super.addStartDocumentProposals(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addTagCloseProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addTagCloseProposals(ContentAssistRequest contentAssistRequest) {
-		super.addTagCloseProposals(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addTagInsertionProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest, int)
-	 */
-	protected void addTagInsertionProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		super.addTagInsertionProposals(contentAssistRequest, childPosition);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addTagNameProposals(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest, int)
-	 */
-	protected void addTagNameProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		super.addTagNameProposals(contentAssistRequest, childPosition);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#addXMLProposal(com.ibm.sed.structured.contentassist.xml.ContentAssistRequest)
-	 */
-	protected void addXMLProposal(ContentAssistRequest contentAssistRequest) {
-		super.addXMLProposal(contentAssistRequest);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#attributeInList(com.ibm.sed.model.xml.XMLNode, org.w3c.dom.Node, org.eclipse.wst.xml.core.internal.contentmodel.CMNode)
-	 */
-	protected boolean attributeInList(XMLNode node, Node parent, CMNode cmnode) {
-		return super.attributeInList(node, parent, cmnode);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#beginsWith(java.lang.String, java.lang.String)
-	 */
-	protected boolean beginsWith(String aString, String prefix) {
-		return super.beginsWith(aString, prefix);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeAttributeProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeAttributeProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeAttributeProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeAttributeValueProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeAttributeValueProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeAttributeValueProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeCompletionProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeCompletionProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode treeNode, XMLNode xmlnode) {
-		return super.computeCompletionProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#computeCompletionProposals(org.eclipse.jface.text.ITextViewer, int)
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int documentOffset) {
-		return super.computeCompletionProposals(viewer, documentOffset);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeContentProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeContentProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeContentProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#computeContextInformation(org.eclipse.jface.text.ITextViewer, int)
-	 */
-	public IContextInformation[] computeContextInformation(ITextViewer viewer, int documentOffset) {
-		return super.computeContextInformation(viewer, documentOffset);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeEndTagOpenProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeEndTagOpenProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeEndTagOpenProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeEntityReferenceProposals(int, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ICompletionProposal[] computeEntityReferenceProposals(int documentPosition, ITextRegion completionRegion, XMLNode treeNode) {
-		return super.computeEntityReferenceProposals(documentPosition, completionRegion, treeNode);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeEqualsProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeEqualsProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeEqualsProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeStartDocumentProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeStartDocumentProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeStartDocumentProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeTagCloseProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeTagCloseProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeTagCloseProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeTagNameProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeTagNameProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeTagNameProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#computeTagOpenProposals(int, java.lang.String, com.ibm.sed.structuredDocument.ITextRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.model.xml.XMLNode)
-	 */
-	protected ContentAssistRequest computeTagOpenProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		return super.computeTagOpenProposals(documentPosition, matchString, completionRegion, nodeAtOffset, node);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getAdditionalInfo(org.eclipse.wst.xml.core.internal.contentmodel.CMNode, org.eclipse.wst.xml.core.internal.contentmodel.CMNode)
-	 */
-	protected String getAdditionalInfo(CMNode parentOrOwner, CMNode cmnode) {
-		return super.getAdditionalInfo(parentOrOwner, cmnode);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getAvailableChildrenAtIndex(org.w3c.dom.Element, int)
-	 */
-	protected List getAvailableChildrenAtIndex(Element parent, int index) {
-		return super.getAvailableChildrenAtIndex(parent, index);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getAvailableRootChildren(org.w3c.dom.Document, int)
-	 */
-	protected List getAvailableRootChildren(Document document, int childIndex) {
-		return super.getAvailableRootChildren(document, childIndex);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getCMElementDeclaration(org.w3c.dom.Node)
-	 */
-	protected CMElementDeclaration getCMElementDeclaration(Node node) {
-		return super.getCMElementDeclaration(node);
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getCompletionProposalAutoActivationCharacters()
-	 */
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		return super.getCompletionProposalAutoActivationCharacters();
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getCompletionRegion(int, com.ibm.sed.structuredDocument.core.IStructuredDocumentRegion)
-	 */
-	protected ITextRegion getCompletionRegion(int offset, IStructuredDocumentRegion flatNode) {
-		return super.getCompletionRegion(offset, flatNode);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getCompletionRegion(int, org.w3c.dom.Node)
-	 */
-	protected ITextRegion getCompletionRegion(int documentPosition, Node domnode) {
-		return super.getCompletionRegion(documentPosition, domnode);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getContentGenerator()
-	 */
-	public XMLContentModelGenerator getContentGenerator() {
-		return super.getContentGenerator();
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getContextInformationAutoActivationCharacters()
-	 */
-	public char[] getContextInformationAutoActivationCharacters() {
-		return super.getContextInformationAutoActivationCharacters();
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getContextInformationValidator()
-	 */
-	public IContextInformationValidator getContextInformationValidator() {
-		return super.getContextInformationValidator();
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getElementPosition(org.w3c.dom.Node)
-	 */
-	protected int getElementPosition(Node child) {
-		return super.getElementPosition(child);
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getErrorMessage()
-	 */
-	public String getErrorMessage() {
-		return super.getErrorMessage();
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getMatchString(com.ibm.sed.structuredDocument.ITextRegion, int)
-	 */
-	protected String getMatchString(IStructuredDocumentRegion parent, ITextRegion aRegion, int offset) {
-		return super.getMatchString(parent, aRegion, offset);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getNameRegion(com.ibm.sed.structuredDocument.IStructuredDocumentRegion)
-	 */
-	protected ITextRegion getNameRegion(IStructuredDocumentRegion flatNode) {
-		return super.getNameRegion(flatNode);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getPossibleDataTypeValues(org.w3c.dom.Node, org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration)
-	 */
-	protected List getPossibleDataTypeValues(Node node, CMAttributeDeclaration ad) {
-		return super.getPossibleDataTypeValues(node, ad);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getRequiredName(org.w3c.dom.Node, org.eclipse.wst.xml.core.internal.contentmodel.CMNode)
-	 */
-	protected String getRequiredName(Node parentOrOwner, CMNode cmnode) {
-		return super.getRequiredName(parentOrOwner, cmnode);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getRequiredText(org.w3c.dom.Node, org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration)
-	 */
-	protected String getRequiredText(Node parentOrOwner, CMAttributeDeclaration attrDecl) {
-		return super.getRequiredText(parentOrOwner, attrDecl);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getRequiredText(org.w3c.dom.Node, org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration)
-	 */
-	protected String getRequiredText(Node parentOrOwner, CMElementDeclaration elementDecl) {
-		return super.getRequiredText(parentOrOwner, elementDecl);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#getValidCMNodes(int, int, java.util.List)
-	 */
-	protected List getValidCMNodes(int childPosition, int kindOfAction, List modelQueryActions) {
-		return super.getValidCMNodes(childPosition, kindOfAction, modelQueryActions);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#init()
-	 */
-	protected void init() {
-		super.init();
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#initialize(org.eclipse.core.resources.IResource)
-	 */
-	public void initialize(IResource iResource) {
-		fResource = iResource;
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#isCloseRegion(com.ibm.sed.structuredDocument.ITextRegion)
-	 */
-	protected boolean isCloseRegion(ITextRegion region) {
-		return super.isCloseRegion(region);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#isNameRegion(com.ibm.sed.structuredDocument.ITextRegion)
-	 */
-	protected boolean isNameRegion(ITextRegion region) {
-		return super.isNameRegion(region);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#isQuote(java.lang.String)
-	 */
-	protected boolean isQuote(String string) {
-		return super.isQuote(string);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#mapToProperties(org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap)
-	 */
-	protected Properties mapToProperties(CMNamedNodeMap map) {
-		return super.mapToProperties(map);
-	}
-
-	//	/**
-	//	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#newContentAssistRequest(org.w3c.dom.Node, org.w3c.dom.Node, com.ibm.sed.structuredDocument.ITextRegion, int, int, java.lang.String)
-	//	 */
-	//	protected ContentAssistRequest newContentAssistRequest(Node node, Node possibleParent, ITextRegion completionRegion, int begin, int length, String filter) {
-	//		return super.newContentAssistRequest(node, possibleParent, completionRegion, begin, length, filter);
-	//	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#release()
-	 */
-	public void release() {
-		super.release();
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#setErrorMessage(java.lang.String, java.lang.String, java.lang.String)
-	 */
-	protected void setErrorMessage(String errorMessage, String prepend, String append) {
-		super.setErrorMessage(errorMessage, prepend, append);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#setErrorMessage(java.lang.String, java.lang.String)
-	 */
-	protected void setErrorMessage(String errorMessage, String append) {
-		super.setErrorMessage(errorMessage, append);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#setErrorMessage(java.lang.String)
-	 */
-	public void setErrorMessage(String errorMessage) {
-		super.setErrorMessage(errorMessage);
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.xml.AbstractContentAssistProcessor#stringsEqual(java.lang.String, java.lang.String)
-	 */
-	protected boolean stringsEqual(String a, String b) {
-		return super.stringsEqual(a, b);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPJavaContentAssistProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPJavaContentAssistProcessor.java
deleted file mode 100644
index 1313ef7..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPJavaContentAssistProcessor.java
+++ /dev/null
@@ -1,332 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.ui.internal.IReleasable;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.sse.ui.internal.contentassist.IResourceDependentProcessor;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.contentassist.XMLRelevanceConstants;
-import org.eclipse.wst.xml.ui.util.SharedXMLEditorPluginImageHelper;
-
-public class JSPJavaContentAssistProcessor implements IContentAssistProcessor, IResourceDependentProcessor, IReleasable {
-	protected IResource fResource;
-	protected char completionProposalAutoActivationCharacters[] = new char[]{'.'};
-	protected char contextInformationAutoActivationCharacters[] = null;
-	protected static final String UNKNOWN_CONTEXT = SSEUIPlugin.getResourceString("%Content_Assist_not_availab_UI_"); //$NON-NLS-1$ = "Content Assist not available at the current location "
-	protected String fErrorMessage = null;
-	private JSPCompletionProcessor fJspCompletionProcessor = null;
-
-	public JSPJavaContentAssistProcessor() {
-		super();
-	}
-
-	public JSPJavaContentAssistProcessor(IResource file) {
-		super();
-		fResource = file;
-	}
-
-	public static void main(String[] args) {
-		JSPJavaContentAssistProcessor instance = new JSPJavaContentAssistProcessor();
-		// unit test for 'reverse' function
-		instance._unitTest0();
-		instance._unitTestNormal1();
-		instance._unitTestNormal2();
-		instance._unitTestNormal3();
-		instance._unitTestNormal4();
-		instance._unitTestNormal5();
-	}
-
-	private void _printList(Object[] list) {
-		for (int i = 0; i < list.length; i++) {
-			System.out.print(list[i] + " "); //$NON-NLS-1$
-		}
-		System.out.println();
-
-	}
-
-	private void _unitTest0() {
-		Object[] listOfObjects = new Object[0];
-		_printList(listOfObjects);
-		reverse(listOfObjects);
-		_printList(listOfObjects);
-	}
-
-	private void _unitTestNormal1() {
-		Object[] listOfObjects = new Object[1];
-		listOfObjects[0] = "one"; //$NON-NLS-1$
-		_printList(listOfObjects);
-		reverse(listOfObjects);
-		_printList(listOfObjects);
-	}
-
-	private void _unitTestNormal2() {
-		Object[] listOfObjects = new Object[2];
-		listOfObjects[0] = "one"; //$NON-NLS-1$
-		listOfObjects[1] = "two"; //$NON-NLS-1$
-		_printList(listOfObjects);
-		reverse(listOfObjects);
-		_printList(listOfObjects);
-	}
-
-	private void _unitTestNormal3() {
-		Object[] listOfObjects = new Object[3];
-		listOfObjects[0] = "one"; //$NON-NLS-1$
-		listOfObjects[1] = "two"; //$NON-NLS-1$
-		listOfObjects[2] = "three"; //$NON-NLS-1$
-		_printList(listOfObjects);
-		reverse(listOfObjects);
-		_printList(listOfObjects);
-	}
-
-	private void _unitTestNormal4() {
-		Object[] listOfObjects = new Object[4];
-		listOfObjects[0] = "one"; //$NON-NLS-1$
-		listOfObjects[1] = "two"; //$NON-NLS-1$
-		listOfObjects[2] = "three"; //$NON-NLS-1$
-		listOfObjects[3] = "four"; //$NON-NLS-1$
-		_printList(listOfObjects);
-		reverse(listOfObjects);
-		_printList(listOfObjects);
-	}
-
-	private void _unitTestNormal5() {
-		Object[] listOfObjects = new Object[5];
-		listOfObjects[0] = "one"; //$NON-NLS-1$
-		listOfObjects[1] = "two"; //$NON-NLS-1$
-		listOfObjects[2] = "three"; //$NON-NLS-1$
-		listOfObjects[3] = "four"; //$NON-NLS-1$
-		listOfObjects[4] = "five"; //$NON-NLS-1$
-		_printList(listOfObjects);
-		reverse(listOfObjects);
-		_printList(listOfObjects);
-	}
-
-	/**
-	 * Return a list of proposed code completions based on the
-	 * specified location within the document that corresponds
-	 * to the current cursor position within the text-editor control.
-	 *
-	 * @param documentPosition a location within the document
-	 * @return an array of code-assist items 
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int documentPosition) {
-
-		IndexedRegion treeNode = ContentAssistUtils.getNodeAt((StructuredTextViewer) viewer, documentPosition);
-
-		// get results from JSP completion processor	
-		fJspCompletionProcessor = getJspCompletionProcessor();
-		ICompletionProposal[] results = fJspCompletionProcessor.computeCompletionProposals(viewer, documentPosition);
-		fErrorMessage = fJspCompletionProcessor.getErrorMessage();
-		if (results.length == 0 && (fErrorMessage == null || fErrorMessage.length() == 0)) {
-			fErrorMessage = UNKNOWN_CONTEXT;
-		}
-
-		XMLNode xNode = null;
-		IStructuredDocumentRegion flat = null;
-		if (treeNode instanceof XMLNode) {
-			xNode = (XMLNode) treeNode;
-			flat = xNode.getFirstStructuredDocumentRegion();
-			if (flat != null && flat.getType() == DOMJSPRegionContexts.JSP_CONTENT) {
-				flat = flat.getPrevious();
-			}
-		}
-
-		// this is in case it's a <%@, it will be a region container...
-		ITextRegion openRegion = null;
-		if (flat != null && flat instanceof ITextRegionContainer) {
-			ITextRegionList v = ((ITextRegionContainer) flat).getRegions();
-			if (v.size() > 0)
-				openRegion = v.get(0);
-		}
-
-		// ADD CDATA PROPOSAL IF IT'S AN XML-JSP TAG  
-		if (flat != null && flat.getType() != DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN && flat.getType() != DOMJSPRegionContexts.JSP_DECLARATION_OPEN && flat.getType() != DOMJSPRegionContexts.JSP_EXPRESSION_OPEN && flat.getType() != XMLRegionContext.BLOCK_TEXT && (openRegion != null && openRegion.getType() != DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN) && !inAttributeRegion(flat, documentPosition)) {
-
-			// determine if cursor is before or after selected range
-			int adjustedDocPosition = documentPosition;
-			int realCaretPosition = viewer.getTextWidget().getCaretOffset();
-			int selectionLength = viewer.getSelectedRange().y;
-			if (documentPosition > realCaretPosition) {
-				adjustedDocPosition -= selectionLength;
-			}
-
-			CustomCompletionProposal cdataProposal = createCDATAProposal(adjustedDocPosition, selectionLength);
-			ICompletionProposal[] newResults = new ICompletionProposal[results.length + 1];
-			System.arraycopy(results, 0, newResults, 0, results.length);
-			newResults[results.length] = cdataProposal;
-			results = newResults;
-		}
-
-		// (pa) ** this is code in progress...
-		// add ending %> proposal for non closed JSP tags
-		//		String tagText = flat.getText();
-		//		// TODO need a much better compare (using constants?)
-		//		if(tagText.equals("<%") || tagText.equals("<%=") || tagText.equals("<%!"));
-		//		{
-		//			ICompletionProposal testah = ContentAssistUtils.computeJSPEndTagProposal(viewer,documentPosition, treeNode, "<%" , SharedXMLEditorPluginImageHelper.IMG_OBJ_TAG_GENERIC);
-		//			if(testah != null)
-		//			{
-		//				ICompletionProposal[] newResults = new ICompletionProposal[results.length + 1];
-		//				System.arraycopy( results, 0, newResults, 0, results.length);
-		//				newResults[results.length] = testah;
-		//				results = newResults;
-		//			}
-		//		}
-
-		reverse(results); // so variables show up first	
-		return results;
-	}
-
-	// reverses an array of objects 
-	public void reverse(Object[] array) {
-		Object temp = null;
-		//DMW: 8/16/2002 this was <=, but was thrown out of bounds occasionally
-		for (int i = 0; i < (array.length / 2); i++) {
-			temp = array[i];
-			array[i] = array[(array.length - 1) - i];
-			array[(array.length - 1) - i] = temp;
-		}
-	}
-
-	private CustomCompletionProposal createCDATAProposal(int adjustedDocPosition, int selectionLength) {
-		return new CustomCompletionProposal("<![CDATA[]]>", //$NON-NLS-1$
-					adjustedDocPosition, selectionLength, // should be the selection length
-					9, SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_CDATASECTION), 
-					"CDATA Section", //$NON-NLS-1$
-					null, null, XMLRelevanceConstants.R_CDATA);
-	}
-
-	private boolean inAttributeRegion(IStructuredDocumentRegion flat, int documentPosition) {
-		ITextRegion attrContainer = flat.getRegionAtCharacterOffset(documentPosition);
-		if (attrContainer != null && attrContainer instanceof ITextRegionContainer) {
-			if (attrContainer.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Returns the characters which when entered by the user should
-	 * automatically trigger the presentation of possible completions.
-	 *
-	 * @return the auto activation characters for completion proposal or <code>null</code>
-	 *		if no auto activation is desired
-	 */
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		return completionProposalAutoActivationCharacters;
-	}
-
-	/**
-	 * Returns the characters which when entered by the user should
-	 * automatically trigger the presentation of context information.
-	 *
-	 * @return the auto activation characters for presenting context information
-	 *		or <code>null</code> if no auto activation is desired
-	 */
-	public char[] getContextInformationAutoActivationCharacters() {
-		return contextInformationAutoActivationCharacters;
-	}
-
-	/**
-	 * Return the reason why computeProposals was not able to find any completions.
-	 *
-	 * @return an error message
-	 *   or null if no error occurred
-	 */
-	public String getErrorMessage() {
-		return fErrorMessage;
-	}
-
-	/**
-	 * @see ContentAssistAdapter#release()
-	 */
-	public void release() {
-		if (fJspCompletionProcessor != null) {
-			fJspCompletionProcessor.release();
-			fJspCompletionProcessor = null;
-		}
-		fResource = null;
-	}
-
-	/**
-	 * @see ContentAssistAdapter#initialize(IResource)
-	 */
-	public void initialize(IResource resource) {
-		fResource = resource;
-		getJspCompletionProcessor().initialize(resource);
-	}
-
-	/**
-	 * 
-	 */
-	private JSPCompletionProcessor getJspCompletionProcessor() {
-		if (fJspCompletionProcessor == null) {
-			fJspCompletionProcessor = new JSPCompletionProcessor(fResource);
-			fJspCompletionProcessor.initialize(fResource);
-		}
-		return fJspCompletionProcessor;
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#computeContextInformation(org.eclipse.jface.text.ITextViewer, int)
-	 */
-	public IContextInformation[] computeContextInformation(ITextViewer viewer, int documentOffset) {
-		List results = new ArrayList();
-		// need to compute context info here, if it's JSP, call java computer
-		IDocumentPartitioner dp = viewer.getDocument().getDocumentPartitioner();
-		String type = dp.getPartition(documentOffset).getType();
-		if (type == IJSPPartitions.JSP_DEFAULT || type == IJSPPartitions.JSP_CONTENT_JAVA) {
-			// get context info from completion results...
-			ICompletionProposal[] proposals = computeCompletionProposals(viewer, documentOffset);
-			for (int i = 0; i < proposals.length; i++) {
-				IContextInformation ci = proposals[i].getContextInformation();
-				if (ci != null)
-					results.add(ci);
-			}
-		}
-		return (IContextInformation[]) results.toArray(new IContextInformation[results.size()]);
-	}
-
-	/**
-	 * Returns a validator used to determine when displayed context information
-	 * should be dismissed. May only return <code>null</code> if the processor is
-	 * incapable of computing context information.
-	 *
-	 * @return a context information validator, or <code>null</code> if the processor
-	 * 			is incapable of computing context information
-	 */
-	public IContextInformationValidator getContextInformationValidator() {
-		return new JavaParameterListValidator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPPropertyContentAssistProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPPropertyContentAssistProcessor.java
deleted file mode 100644
index 51965fc..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPPropertyContentAssistProcessor.java
+++ /dev/null
@@ -1,224 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImageHelper;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImages;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.contentassist.ContentAssistRequest;
-import org.eclipse.wst.xml.ui.contentassist.XMLRelevanceConstants;
-import org.eclipse.wst.xml.ui.util.SharedXMLEditorPluginImageHelper;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * This class computes attribute value completion proposals for &lt;jsp:[gs]etProperty&gt; tags.
- *
- */
-public class JSPPropertyContentAssistProcessor extends JSPDummyContentAssistProcessor {
-
-	IBeanInfoProvider provider = null;
-	protected IResource resource = null;
-
-	public JSPPropertyContentAssistProcessor() {
-		super();
-	}
-
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-		XMLNode node = (XMLNode) contentAssistRequest.getNode();
-
-		// Find the attribute name for which this position should have a value
-		IStructuredDocumentRegion open = node.getFirstStructuredDocumentRegion();
-		ITextRegionList openRegions = open.getRegions();
-		int i = openRegions.indexOf(contentAssistRequest.getRegion());
-		if (i < 0)
-			return;
-
-		// get the attribute in question (first attr name to the left of the cursor)
-		ITextRegion attrNameRegion = null;
-		String attributeName = null;
-		while (i >= 0) {
-			attrNameRegion = openRegions.get(i--);
-			if (attrNameRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)
-				break;
-		}
-		if (attrNameRegion != null)
-			attributeName = open.getText(attrNameRegion);
-
-		// determine get or set
-		ITextRegion tagNameRegion = null;
-		boolean isGetProperty = true;
-		for (int j = 0; j < openRegions.size(); j++) {
-			tagNameRegion = openRegions.get(j);
-			if (tagNameRegion.getType() == XMLRegionContext.XML_TAG_NAME && open.getText(tagNameRegion).trim().equals("jsp:setProperty")) { //$NON-NLS-1$
-				isGetProperty = false;
-				break;
-			}
-		}
-
-		String currentValue = null;
-		if (contentAssistRequest.getRegion().getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-			currentValue = contentAssistRequest.getText();
-		else
-			currentValue = ""; //$NON-NLS-1$
-		String matchString = null;
-		// fixups since the matchString computations don't care if there are quotes around the value
-		if (currentValue.length() > StringUtils.strip(currentValue).length() && (currentValue.startsWith("\"") || currentValue.startsWith("'")) && contentAssistRequest.getMatchString().length() > 0) //$NON-NLS-1$ //$NON-NLS-2$
-			matchString = currentValue.substring(1, contentAssistRequest.getMatchString().length());
-		else
-			matchString = currentValue.substring(0, contentAssistRequest.getMatchString().length());
-
-		// for now we ignore complicated values such as jsp embedded in an attribute
-		boolean existingComplicatedValue = contentAssistRequest.getRegion() != null && contentAssistRequest.getRegion() instanceof ITextRegionContainer;
-		if (existingComplicatedValue) {
-			contentAssistRequest.getProposals().clear();
-			contentAssistRequest.getMacros().clear();
-		}
-		else {
-			if (attributeName.equals(JSP11Namespace.ATTR_NAME_NAME)) {
-				addBeanNameProposals(contentAssistRequest, node, matchString);
-			}
-			else if (attributeName.equals(JSP11Namespace.ATTR_NAME_PROPERTY)) {
-				addBeanPropertyProposals(contentAssistRequest, node, isGetProperty, matchString);
-			}
-		}
-	}
-
-	private void addBeanPropertyProposals(ContentAssistRequest contentAssistRequest, XMLNode node, boolean isGetProperty, String matchString) {
-		// assumes that the node is the [gs]etProperty tag
-		String useBeanName = ((Element) node).getAttribute(JSP11Namespace.ATTR_NAME_NAME);
-		// properties can only be provided if a class/type/beanName has been declared
-		if (useBeanName != null && useBeanName.length() > 0) {
-			NodeList useBeans = node.getOwnerDocument().getElementsByTagName(JSP11Namespace.ElementName.USEBEAN);
-			if (useBeans != null) {
-				String typeName = null;
-				for (int j = 0; j < useBeans.getLength(); j++) {
-					if (useBeans.item(j).getNodeType() != Node.ELEMENT_NODE)
-						continue;
-					Element useBean = (Element) useBeans.item(j);
-					if (useBean instanceof IndexedRegion && ((IndexedRegion) useBean).getStartOffset() < node.getStartOffset()) {
-						if (useBean.getAttribute(JSP11Namespace.ATTR_NAME_ID).equals(useBeanName)) {
-							typeName = useBean.getAttribute(JSP11Namespace.ATTR_NAME_CLASS);
-							if (typeName == null || typeName.length() < 1) {
-								typeName = useBean.getAttribute(JSP11Namespace.ATTR_NAME_TYPE);
-							}
-							if (typeName == null || typeName.length() < 1) {
-								typeName = useBean.getAttribute(JSP11Namespace.ATTR_NAME_BEAN_NAME);
-							}
-						}
-					}
-				}
-				if (typeName != null && typeName.length() > 0) {
-					// find the class/type/beanName definition and obtain the list of properties
-					BeanInfoProvider provider = new BeanInfoProvider();
-					IJavaPropertyDescriptor[] descriptors = provider.getRuntimeProperties(resource, typeName);
-					CustomCompletionProposal proposal = null;
-					String displayString = ""; //$NON-NLS-1$
-					for (int j = 0; j < descriptors.length; j++) {
-						IJavaPropertyDescriptor pd = descriptors[j];
-						// check whether it's get or set kinda property
-						if (pd.getReadable() && isGetProperty || pd.getWriteable() && !isGetProperty) {
-							// filter attr value name
-							if (matchString.length() == 0 || pd.getName().toLowerCase().startsWith(matchString.toLowerCase())) {
-								displayString = pd.getDisplayName();
-								if (pd.getDeclaredType() != null && pd.getDeclaredType().length() > 0)
-									displayString += " - " + pd.getDeclaredType(); //$NON-NLS-1$
-								proposal = new CustomCompletionProposal("\"" + pd.getName() + "\"", //$NON-NLS-1$ //$NON-NLS-2$
-											contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), pd.getName().length() + 2, SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_ATTRIBUTE),
-											displayString, null, pd.getDeclaredType(), XMLRelevanceConstants.R_XML_ATTRIBUTE_VALUE);
-								contentAssistRequest.addProposal(proposal);
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-
-	private void addBeanNameProposals(ContentAssistRequest contentAssistRequest, XMLNode node, String matchString) {
-		// will not catch useBeans specified using other than actual DOM Nodes
-		NodeList useBeans = node.getOwnerDocument().getElementsByTagName(JSP11Namespace.ElementName.USEBEAN);
-		if (useBeans != null) {
-			String id = ""; //$NON-NLS-1$
-			String displayString = null;
-			String classOrType = null;
-			String imageName = JSPEditorPluginImages.IMG_OBJ_CLASS_OBJ;
-			for (int j = 0; j < useBeans.getLength(); j++) {
-				if (useBeans.item(j).getNodeType() != Node.ELEMENT_NODE)
-					continue;
-				Element useBean = (Element) useBeans.item(j);
-				if (useBean instanceof IndexedRegion && ((IndexedRegion) useBean).getStartOffset() < node.getStartOffset()) {
-					id = StringUtils.strip(useBean.getAttribute(JSP11Namespace.ATTR_NAME_ID));
-					displayString = null;
-					classOrType = null;
-					imageName = JSPEditorPluginImages.IMG_OBJ_CLASS_OBJ;
-					// set the Image based on whether the class, type, or beanName attribute is present
-					classOrType = useBean.getAttribute(JSP11Namespace.ATTR_NAME_CLASS);
-					if (classOrType == null || classOrType.length() < 1) {
-						classOrType = useBean.getAttribute(JSP11Namespace.ATTR_NAME_TYPE);
-						imageName = JSPEditorPluginImages.IMG_OBJ_PUBLIC;
-					}
-					if (classOrType == null || classOrType.length() < 1) {
-						classOrType = useBean.getAttribute(JSP11Namespace.ATTR_NAME_BEAN_NAME);
-						imageName = JSPEditorPluginImages.IMG_OBJ_PUBLIC;
-					}
-					if (classOrType != null && classOrType.length() > 0)
-						displayString = id + " - " + classOrType; //$NON-NLS-1$
-					else
-						displayString = id;
-
-					// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=2341
-					if(id != null) {
-					    // filter
-						if (matchString.length() == 0 || id.startsWith(matchString)) {
-							CustomCompletionProposal proposal = new CustomCompletionProposal("\"" + id + "\"", //$NON-NLS-1$ //$NON-NLS-2$
-										contentAssistRequest.getReplacementBeginPosition(), 
-                                        contentAssistRequest.getReplacementLength(), 
-                                        id.length() + 2, 
-                                        JSPEditorPluginImageHelper.getInstance().getImage(imageName), 
-                                        displayString, 
-                                        null, 
-                                        null, 
-                                        XMLRelevanceConstants.R_XML_ATTRIBUTE_VALUE);
-							contentAssistRequest.addProposal(proposal);
-						}
-					}
-				}
-			}
-		}
-	}
-
-	public void release() {
-		resource = null;
-		provider = null;
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.IContentAssistProcessor#initialize(org.eclipse.core.resources.IResource)
-	 */
-	public void initialize(IResource iResource) {
-		this.resource = iResource;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPResultCollector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPResultCollector.java
deleted file mode 100644
index d1b2d40..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPResultCollector.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import java.util.Arrays;
-
-import org.eclipse.jdt.internal.ui.text.java.JavaCompletionProposal;
-import org.eclipse.jdt.internal.ui.text.java.ResultCollector;
-
-/**
- * 
- * @author pavery
- * @deprecated getting rid of JDT internal. Use JSPCompletionRequestor
- */
-public class JSPResultCollector extends ResultCollector {
-
-	int fJavaToJSPOffset;
-	boolean doFilter = false;
-
-	char[] translatorInternalIgnoreClass = "JspWriter".toCharArray(); //$NON-NLS-1$
-	char[] translatorInternalIgnorePackage = "javax.servlet.jsp".toCharArray(); //$NON-NLS-1$
-	String translatorInternalIgnoreMethodstarter = "print"; //$NON-NLS-1$
-
-	public int getJavaToJSPOffset() {
-		return fJavaToJSPOffset;
-	}
-
-	/**
-	 * @param newJavaToJSPOffset int
-	 */
-	public void setJavaToJSPOffset(int newJavaToJSPOffset) {
-		fJavaToJSPOffset = newJavaToJSPOffset;
-	}
-
-	public JavaCompletionProposal[] getResults() {
-		JavaCompletionProposal[] javaDocumentResults = super.getResults();
-		for (int i = 0; i < javaDocumentResults.length; i++)
-			javaDocumentResults[i].setReplacementOffset(javaDocumentResults[i].getReplacementOffset() + fJavaToJSPOffset);
-		return javaDocumentResults;
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.ICompletionRequestor#acceptMethod(char[], char[], char[], char[][], char[][], char[][], char[], char[], char[], int, int, int, int)
-	 */
-	public void acceptMethod(char[] declaringTypePackageName, char[] declaringTypeName, char[] selector, char[][] parameterPackageNames, char[][] parameterTypeNames, char[][] parameterNames, char[] returnTypePackageName, char[] returnTypeName, char[] completionName, int modifiers, int completionStart, int completionEnd, int relevance) {
-		// if this method is the exact package and type name and starts with the same method name, don't suggest it
-		if (!doFilter || !(Arrays.equals(translatorInternalIgnorePackage, declaringTypePackageName) && Arrays.equals(translatorInternalIgnoreClass, declaringTypeName) && selector != null && new String(selector).startsWith(translatorInternalIgnoreMethodstarter))) {
-			//super.acceptMethod(declaringTypePackageName, declaringTypeName, selector, parameterPackageNames, parameterTypeNames, parameterNames, returnTypePackageName, returnTypeName, completionName, modifiers, completionStart, completionEnd, relevance);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTemplateCompletionProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTemplateCompletionProcessor.java
deleted file mode 100644
index bbfaade..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTemplateCompletionProcessor.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.templates.ContextTypeRegistry;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateCompletionProcessor;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.jface.text.templates.TemplateContextType;
-import org.eclipse.jface.text.templates.persistence.TemplateStore;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImageHelper;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImages;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * Completion processor for JSP Templates. Most of the work is already done by
- * the JSP Content Assist processor, so by the time the
- * JSPTemplateCompletionProcessor is asked for content assist proposals, the
- * jsp content assist processor has already set the context type for
- * templates.
- */
-class JSPTemplateCompletionProcessor extends TemplateCompletionProcessor {
-	private String fContextTypeId = null;
-
-	protected ICompletionProposal createProposal(Template template, TemplateContext context, IRegion region, int relevance) {
-		return new CustomTemplateProposal(template, context, region, getImage(template), relevance);
-	}
-
-	protected TemplateContextType getContextType(ITextViewer viewer, IRegion region) {
-		TemplateContextType type = null;
-
-		ContextTypeRegistry registry = getTemplateContextRegistry();
-		if (registry != null)
-			type = registry.getContextType(fContextTypeId);
-
-		return type;
-	}
-
-	protected Image getImage(Template template) {
-		// just return the same image for now
-		return JSPEditorPluginImageHelper.getInstance().getImage(JSPEditorPluginImages.IMG_OBJ_TAG_JSP);
-	}
-
-	private ContextTypeRegistry getTemplateContextRegistry() {
-		return JSPUIPlugin.getDefault().getTemplateContextRegistry();
-	}
-
-	protected Template[] getTemplates(String contextTypeId) {
-		Template templates[] = null;
-
-		TemplateStore store = getTemplateStore();
-		if (store != null)
-			templates = store.getTemplates(contextTypeId);
-
-		return templates;
-	}
-
-	private TemplateStore getTemplateStore() {
-		return JSPUIPlugin.getDefault().getTemplateStore();
-	}
-
-	void setContextType(String contextTypeId) {
-		fContextTypeId = contextTypeId;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPUseBeanContentAssistProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPUseBeanContentAssistProcessor.java
deleted file mode 100644
index 6a9bcf6..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPUseBeanContentAssistProcessor.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-
-
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.contentassist.ContentAssistRequest;
-
-public class JSPUseBeanContentAssistProcessor extends JSPDummyContentAssistProcessor {
-
-	public JSPUseBeanContentAssistProcessor() {
-		super();
-	}
-
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-
-		XMLNode node = (XMLNode) contentAssistRequest.getNode();
-
-		// Find the attribute name for which this position should have a value
-		IStructuredDocumentRegion open = node.getFirstStructuredDocumentRegion();
-		ITextRegionList openRegions = open.getRegions();
-		int i = openRegions.indexOf(contentAssistRequest.getRegion());
-		if (i < 0)
-			return;
-		ITextRegion nameRegion = null;
-		while (i >= 0) {
-			nameRegion = openRegions.get(i--);
-			if (nameRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)
-				break;
-		}
-
-		String attributeName = null;
-		if (nameRegion != null)
-			attributeName = open.getText(nameRegion);
-
-		String currentValue = null;
-		if (contentAssistRequest.getRegion().getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-			currentValue = contentAssistRequest.getText();
-		else
-			currentValue = ""; //$NON-NLS-1$
-		String matchString = null;
-		// fixups
-        int start = contentAssistRequest.getReplacementBeginPosition();
-        int length = contentAssistRequest.getReplacementLength();
-		if (currentValue.length() > StringUtils.strip(currentValue).length() 
-                && (currentValue.startsWith("\"") || currentValue.startsWith("'")) //$NON-NLS-1$ //$NON-NLS-2$
-                && contentAssistRequest.getMatchString().length() > 0) {
-			matchString = currentValue.substring(1, contentAssistRequest.getMatchString().length());
-            start++;
-            length = matchString.length();            
-        }
-		else
-			matchString = currentValue.substring(0, contentAssistRequest.getMatchString().length());
-		boolean existingComplicatedValue = contentAssistRequest.getRegion() != null && contentAssistRequest.getRegion() instanceof ITextRegionContainer;
-		if (existingComplicatedValue) {
-			contentAssistRequest.getProposals().clear();
-			contentAssistRequest.getMacros().clear();
-		}
-		else {
-			if (attributeName.equals(JSP11Namespace.ATTR_NAME_CLASS)) {
-				ICompletionProposal[] classProposals = JavaTypeFinder.getClassProposals(fResource, start, length);
-				if (classProposals != null) {
-					for (int j = 0; j < classProposals.length; j++) {
-                        JavaTypeCompletionProposal proposal = (JavaTypeCompletionProposal) classProposals[j];
-						if (matchString.length() == 0 || proposal.getQualifiedName().toLowerCase().startsWith(matchString.toLowerCase()) || proposal.getShortName().toLowerCase().startsWith(matchString.toLowerCase()))
-							contentAssistRequest.addProposal(proposal);
-					}
-				}
-			}
-			else if (attributeName.equals(JSP11Namespace.ATTR_NAME_TYPE)) {
-				ICompletionProposal[] typeProposals = JavaTypeFinder.getTypeProposals(fResource, start, length);
-				if (typeProposals != null) {
-					for (int j = 0; j < typeProposals.length; j++) {
-                        JavaTypeCompletionProposal proposal = (JavaTypeCompletionProposal) typeProposals[j];
-						if (matchString.length() == 0 || proposal.getQualifiedName().toLowerCase().startsWith(matchString.toLowerCase()) || proposal.getShortName().toLowerCase().startsWith(matchString.toLowerCase()))
-							contentAssistRequest.addProposal(proposal);
-					}
-				}
-			}
-			else if (attributeName.equals(JSP11Namespace.ATTR_NAME_BEAN_NAME)) {
-				ICompletionProposal[] beanNameProposals = JavaTypeFinder.getBeanProposals(fResource, start, length);
-				if (beanNameProposals != null) {
-					for (int j = 0; j < beanNameProposals.length; j++) {
-						if (beanNameProposals[j] instanceof CustomCompletionProposal) {
-                            JavaTypeCompletionProposal proposal = (JavaTypeCompletionProposal) beanNameProposals[j];
-							if (matchString.length() == 0 || proposal.getDisplayString().toLowerCase().startsWith(matchString.toLowerCase()))
-								contentAssistRequest.addProposal(proposal);
-						}
-						else if (beanNameProposals[j] instanceof JavaTypeCompletionProposal) {
-                            JavaTypeCompletionProposal proposal = (JavaTypeCompletionProposal) beanNameProposals[j];
-							if (matchString.length() == 0 || proposal.getQualifiedName().toLowerCase().startsWith(matchString.toLowerCase()) || proposal.getShortName().toLowerCase().startsWith(matchString.toLowerCase()))
-								contentAssistRequest.addProposal(proposal);
-						}
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * @see com.ibm.sed.structured.contentassist.IContentAssistProcessorExtension#release()
-	 */
-	public void release() {
-		fResource = null;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaParameterListValidator.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaParameterListValidator.java
deleted file mode 100644
index 07f0182..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaParameterListValidator.java
+++ /dev/null
@@ -1,222 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import org.eclipse.jface.text.Assert;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.TextPresentation;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformationPresenter;
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyleRange;
-
-
-/**
- * 
- * @author pavery
- */
-public class JavaParameterListValidator implements IContextInformationValidator, IContextInformationPresenter {
-    
-    private int fPosition;
-    private ITextViewer fViewer;
-    private IContextInformation fInformation;
-    
-    private int fCurrentParameter;
-    
-    
-    
-    public JavaParameterListValidator() {
-    }
-    
-    /**
-     * @see IContextInformationValidator#install(IContextInformation, ITextViewer, int)
-     * @see IContextInformationPresenter#install(IContextInformation, ITextViewer, int)
-     */
-    public void install(IContextInformation info, ITextViewer viewer, int documentPosition) {
-        fPosition= documentPosition;
-        fViewer= viewer;
-        fInformation= info;
-        
-        fCurrentParameter= -1;
-    }
-    
-    private int getCommentEnd(IDocument d, int pos, int end) throws BadLocationException {
-        while (pos < end) {
-            char curr= d.getChar(pos);
-            pos++;
-            if (curr == '*') {
-                if (pos < end && d.getChar(pos) == '/') {
-                    return pos + 1;
-                }
-            }
-        }
-        return end;
-    }
-
-    private int getStringEnd(IDocument d, int pos, int end, char ch) throws BadLocationException {
-        while (pos < end) {
-            char curr= d.getChar(pos);
-            pos++;
-            if (curr == '\\') {
-                // ignore escaped characters
-                pos++;
-            } else if (curr == ch) {
-                return pos;
-            }
-        }
-        return end;
-    }
-    
-    private int getCharCount(IDocument document, int start, int end, char increment, char decrement, boolean considerNesting) throws BadLocationException {
-        
-        Assert.isTrue((increment != 0 || decrement != 0) && increment != decrement);
-        
-        int nestingLevel= 0;
-        int charCount= 0;
-        while (start < end) {
-            char curr= document.getChar(start++);
-            switch (curr) {
-                case '/':
-                    if (start < end) {
-                        char next= document.getChar(start);
-                        if (next == '*') {
-                            // a comment starts, advance to the comment end
-                            start= getCommentEnd(document, start + 1, end);
-                        } else if (next == '/') {
-                            // '//'-comment: nothing to do anymore on this line 
-                            start= end;
-                        }
-                    }
-                    break;
-                case '*':
-                    if (start < end) {
-                        char next= document.getChar(start);
-                        if (next == '/') {
-                            // we have been in a comment: forget what we read before
-                            charCount= 0;
-                            ++ start;
-                        }
-                    }
-                    break;
-                case '"':
-                case '\'':
-                    start= getStringEnd(document, start, end, curr);
-                    break;
-                default:
-                    
-                    if (considerNesting) {
-                        
-                        if ('(' == curr)
-                            ++ nestingLevel;
-                        else if (')' == curr)
-                            -- nestingLevel;
-                            
-                        if (nestingLevel != 0)
-                            break;
-                    }
-                    
-                    if (increment != 0) {
-                        if (curr == increment)
-                            ++ charCount;
-                    }
-                    
-                    if (decrement != 0) {
-                        if (curr == decrement)
-                            -- charCount;
-                    }
-            }
-        }
-        
-        return charCount;
-    }
-    
-    /**
-     * @see IContextInformationValidator#isContextInformationValid(int)
-     */
-    public boolean isContextInformationValid(int position) {        
-        
-        try {
-            if (position < fPosition)
-                return false;
-                
-            IDocument document= fViewer.getDocument();
-            IRegion line= document.getLineInformationOfOffset(fPosition);
-            
-            if (position < line.getOffset() || position >= document.getLength())
-                return false;
-                
-            return (getCharCount(document, fPosition, position, '(', ')', false) >= 0);
-            
-        } catch (BadLocationException x) {
-            return false;
-        }
-    }
-    
-    /**
-     * @see IContextInformationPresenter#updatePresentation(int, TextPresentation)
-     */
-    public boolean updatePresentation(int position, TextPresentation presentation) {
-        
-        int currentParameter= -1;
-        
-        try {
-            currentParameter= getCharCount(fViewer.getDocument(), fPosition, position, ',', (char) 0, true);
-        } catch (BadLocationException x) {
-            return false;
-        }
-        
-        if (fCurrentParameter != -1) {
-            if (currentParameter == fCurrentParameter)
-                return false;
-        }
-        
-        presentation.clear();
-        fCurrentParameter= currentParameter;
-        
-        String s= fInformation.getInformationDisplayString();
-        int start= 0;
-        int occurrences= 0;
-        while (occurrences < fCurrentParameter) {
-            int found= s.indexOf(',', start);
-            if (found == -1)
-                break;
-            start= found + 1;
-            ++ occurrences;
-        }
-        
-        if (occurrences < fCurrentParameter) {
-            presentation.addStyleRange(new StyleRange(0, s.length(), null, null, SWT.NORMAL));
-            return true;
-        }
-        
-        if (start == -1)
-            start= 0;
-        
-        int end= s.indexOf(',', start);
-        if (end == -1)
-            end= s.length();
-            
-        if (start > 0)  
-            presentation.addStyleRange(new StyleRange(0, start, null, null, SWT.NORMAL));
-        
-        if (end > start)
-            presentation.addStyleRange(new StyleRange(start, end - start, null, null, SWT.BOLD));
-        
-        if (end < s.length())
-            presentation.addStyleRange(new StyleRange(end, s.length() - end, null, null, SWT.NORMAL));
-            
-        return true;
-    }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeCompletionProposal.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeCompletionProposal.java
deleted file mode 100644
index c733f43..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeCompletionProposal.java
+++ /dev/null
@@ -1,307 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.core.JSP12Namespace;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceCompletionProposal;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-/**
- * An implementation of ICompletionProposal whose values can be
- * read after creation.
- */
-public class JavaTypeCompletionProposal extends CustomCompletionProposal implements IRelevanceCompletionProposal {
-
-	private int fCursorPosition = 0;
-	private String fLocalDisplayString;
-	private String fShortName;
-	private String fQualifiedName;
-	private String fContainerName;
-
-	public JavaTypeCompletionProposal(String replacementString, int replacementOffset, int replacementLength, String qualifiedName, Image image, String typeName, String containerName,  int relevence,  boolean updateReplacementLengthOnValidate) {
-		super(replacementString, replacementOffset, replacementLength, qualifiedName.length() + 2, image, 
-                (containerName != null && containerName.length() > 0) ? typeName + " - " + containerName : typeName, null, null, relevence, true); //$NON-NLS-1$
-		// CMVC 243817, superclass was comparing incorrect display string in validate method...
-		//super(replacementString, replacementOffset, replacementLength, image, (containerName != null && containerName.length() > 0)? typeName + " - " + containerName:typeName/*qualifiedName*/, relevence);
-		fShortName = typeName;
-		fQualifiedName = qualifiedName;
-		fContainerName = containerName;
-		fCursorPosition = fQualifiedName.length() + 2;
-		//fProposalInfo = proposalInfo;
-		if (containerName != null && containerName.length() > 0)
-			fLocalDisplayString = typeName + " - " + containerName; //$NON-NLS-1$
-		else
-			fLocalDisplayString = typeName;
-	}
-
-	public String getDisplayString() {
-		return fLocalDisplayString;
-	}
-
-	public int getCursorPosition() {
-		return fCursorPosition;
-	}
-
-	public void setCursorPosition(int cursorPosition) {
-		super.setCursorPosition(cursorPosition);
-		fCursorPosition = cursorPosition;
-	}
-
-	public String getQualifiedName() {
-		return fQualifiedName;
-	}
-
-	public String getAdditionalProposalInfo() {
-		//		String info = super.getAdditionalProposalInfo();
-		//		if (info == null || info.length() == 0 && fProposalInfo != null)
-		//			return fProposalInfo.getInfo();
-		//		return info;
-		return null; // unexplained NPE
-	}
-
-	public String getShortName() {
-		return fShortName;
-	}
-
-	protected String getImport(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		String importSpec = null;
-		boolean isImport = false;
-		for (int i = 0; i < regions.size(); i++) {
-			ITextRegion region = regions.get(i);
-			if (region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				if (flatNode.getText(region).equals(JSP11Namespace.ATTR_NAME_IMPORT)) {
-					isImport = true;
-				}
-				else {
-					isImport = false;
-				}
-			}
-			else if (isImport && region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				importSpec = flatNode.getText(region);
-			}
-		}
-		return importSpec;
-	}
-
-	/**
-	 * Add an import page directive for the current type name
-	 */
-	protected int applyImport(IStructuredDocument model) {
-		// if the type is in the default package or java.lang, skip it
-		if (fContainerName == null || fContainerName.length() == 0 || fContainerName.equals("java.lang")) //$NON-NLS-1$
-			return 0;
-		// collect page directives and store their import values
-		List imports = new ArrayList();
-		IStructuredDocumentRegion node = model.getFirstStructuredDocumentRegion();
-
-		// use the last position of a page directive as a hint as to where to add
-		// a new one
-		int hint = 0;
-		// watch for jsp:root so that we use the right XML/JSP format for the directive
-		boolean useXML = false;
-
-		while (node != null) {
-			// Can't just look for all StructuredDocumentRegions starting with JSP_DIRECTIVE_OPEN
-			// since the XML form is required, too
-			ITextRegionList regions = node.getRegions();
-			if (regions.size() > 1) {
-				ITextRegion name = regions.get(1);
-				// verify that this is a JSP directive
-				if (name.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-					// verify that this is a *page* directive
-					if (node.getText(name).equals(JSP11Namespace.ATTR_NAME_PAGE) || node.getText(name).equals(JSP12Namespace.ElementName.DIRECTIVE_PAGE)) {
-						if (node.getEndOffset() < getReplacementOffset())
-							hint = node.getEndOffset();
-						String importSpec = getImport(node);
-						if (importSpec != null) {
-							imports.add(importSpec);
-						}
-					}
-				}
-				else {
-					// if this is a jsp:root tag, use the XML form
-					useXML = useXML || name.getType() == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME;
-				}
-			}
-			node = node.getNext();
-		}
-
-		// evaluate requirements for a "new" import directive
-		boolean needsImport = !importHandles(fQualifiedName, imports);
-		int adjustmentLength = 0;
-		// insert "new" import directive
-		if (needsImport) {
-			String directive = null;
-
-			// vary the XML behavior
-			if (useXML) {
-				directive = "<jsp:directive.page import=\"" + fQualifiedName + "\"/>"; //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			else {
-				directive = "<%@ page import=\"" + fQualifiedName + "\" %>"; //$NON-NLS-1$ //$NON-NLS-2$
-			}
-
-			try {
-				IRegion line = model.getLineInformationOfOffset(hint);
-				boolean prependNewLine = line.getOffset() + line.getLength() == hint;
-				boolean appendNewLine = hint == 0;
-				if (prependNewLine)
-					directive = model.getLineDelimiter() + directive;
-				if (appendNewLine)
-					directive = directive + model.getLineDelimiter();
-				adjustmentLength = directive.length();
-			}
-			catch (BadLocationException e) {
-			}
-
-			try {
-				model.replace(hint, 0, directive);
-
-			}
-			catch (BadLocationException e) {
-				// Not that we should ever get a BLE, but if so, our
-				// replacement offset from the Content Assist call should
-				// work
-				try {
-					model.replace(getReplacementOffset(), 0, directive);
-					adjustmentLength = directive.length();
-				}
-				catch (BadLocationException e2) {
-					// now what?
-				}
-			}
-		}
-		return adjustmentLength;
-	}
-
-	/**
-	 * See if the import specification is a wildcard import, and if so, that
-	 * it applies to the given type.
-	 */
-	protected boolean isWildcardMatch(String importSpec, String type) {
-		int specLength = importSpec.length();
-		if (importSpec.endsWith("*") && specLength > 2 && type.length() >= specLength) { //$NON-NLS-1$
-			// pull out the package name including the final '.'
-			String container = importSpec.substring(0, specLength - 1);
-			// verify that the type is in the container's hierarchy and that
-			// there are no other package separators afterwards
-			if (type.startsWith(container) && type.indexOf('.', specLength - 1) < 0) {
-				// container matches
-				return true;
-			}
-		}
-		return false;
-	}
-
-	protected boolean importHandles(String type, List listOfImports) {
-		Iterator imports = listOfImports.iterator();
-		while (imports.hasNext()) {
-			String importSpec = StringUtils.strip(imports.next().toString());
-			if (importSpec.equals(type) || isWildcardMatch(importSpec, type))
-				return true;
-		}
-		return false;
-	}
-
-	public void apply(IDocument document, char trigger, int offset) {
-		// If we have a parsed IStructuredDocument, insert the short name instead of the
-		// fully qualified name and a import page directive if
-		// needed.  Do the import first so the cursor goes to the right location
-		// and we don't surprise the user.
-
-		boolean addShortForm = false; //document instanceof IStructuredDocument && fContainerName != null && fContainerName.length() > 0;
-		if (addShortForm) {
-			setReplacementString('"' + fShortName + '"');
-			int importLength = applyImport((IStructuredDocument) document);
-			setReplacementOffset(getReplacementOffset() + importLength);
-		}
-
-		setCursorPosition(getReplacementString().length());
-		super.apply(document, trigger, offset);
-
-	}
-
-	/*
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension1#apply(org.eclipse.jface.text.ITextViewer, char, int, int)
-	 */
-	public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {
-		// CMVC 243815
-		// (pa) this is overridden to get around replacement length modification
-		// which is done in the super (since eclipse 2.1)
-		apply(viewer.getDocument(), trigger, offset);
-	}
-
-	/**
-	 * borrowed from JavaCompletionProposal
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#validate(org.eclipse.jface.text.IDocument, int, org.eclipse.jface.text.DocumentEvent)
-	 */
-//	public boolean validate(IDocument document, int offset, DocumentEvent event) {
-//		if (offset < getReplacementOffset())
-//			return false;
-//		boolean validated = startsWith(document, offset, getDisplayString());
-//		return validated;
-//	}
-
-	// code is borrowed from JavaCompletionProposal
-	protected boolean startsWith(IDocument document, int offset, String word) {
-		int wordLength = word == null ? 0 : word.length();
-		if (offset > getReplacementOffset() + wordLength)
-			return false;
-
-		try {
-			int length = offset - getReplacementOffset();
-			// CMVC 243817
-			// slightly modified to be a little more flexible for attribute value string matching..
-			String start = StringUtils.stripQuotes(document.get(getReplacementOffset(), length));
-			return word.toLowerCase().startsWith(start.toLowerCase()) || fQualifiedName.toLowerCase().startsWith(start.toLowerCase());
-			//return word.substring(0, length).equalsIgnoreCase(start);
-		}
-		catch (BadLocationException x) {
-		}
-
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.text.java.JavaCompletionProposal#validate(org.eclipse.jface.text.IDocument, int, org.eclipse.jface.text.DocumentEvent)
-	 //	 */
-	//	public boolean validate(IDocument document, int offset, org.eclipse.jface.text.DocumentEvent event) {
-	//		return super.validate(document, offset, event);
-	//	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.text.java.JavaCompletionProposal#selected(org.eclipse.jface.text.ITextViewer, boolean)
-	 */
-	public void selected(ITextViewer viewer, boolean smartToggle) {
-		// (pa) we currently don't use smart toggle...
-		super.selected(viewer, false);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeFinder.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeFinder.java
deleted file mode 100644
index 73b2574..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeFinder.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-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.jdt.core.Flags;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.search.IJavaSearchConstants;
-import org.eclipse.jdt.core.search.IJavaSearchScope;
-import org.eclipse.jdt.core.search.ITypeNameRequestor;
-import org.eclipse.jdt.core.search.SearchEngine;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceConstants;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-/**
- *
- */
-public class JavaTypeFinder {
-	// COPIED TO REMOVE INTERNAL DEPENDENCY FOR NOW...
-	// org.eclipse.jdt.internal.codeassist.R_DEFAULT
-	static int R_DEFAULT = 0;
-
-	protected static class JavaTypeNameRequestor implements ITypeNameRequestor {
-
-		private JavaTypeResultCollector collector = null;
-		private StringBuffer s = null;
-		private boolean allowInterfaces = true;
-
-		public JavaTypeNameRequestor(boolean allowInterfaces) {
-			super();
-			this.allowInterfaces = allowInterfaces;
-			collector = new JavaTypeResultCollector(allowInterfaces);
-			s = new StringBuffer();
-		}
-
-		private char[] getCompletionName(char[] packageName, char[][] enclosingTypeNames, char[] simpleTypeName) {
-			s.delete(0, s.length());
-			if (packageName != null && packageName.length > 0) {
-				s.append(packageName);
-				s.append('.');
-			}
-			if (enclosingTypeNames != null) {
-				for (int i = 0; i < enclosingTypeNames.length; i++) {
-					if (enclosingTypeNames[i].length > 0) {
-						s.append(enclosingTypeNames[i]);
-						s.append('.');
-					}
-				}
-			}
-			s.append(simpleTypeName);
-			return s.toString().toCharArray();
-		}
-
-		public void acceptClass(char[] packageName, char[] simpleTypeName, char[][] enclosingTypeNames, String path) {
-			// forbid inner classes as they don't work [yet]
-			if (enclosingTypeNames == null || enclosingTypeNames.length == 0)
-				collector.acceptClass(packageName, simpleTypeName, getCompletionName(packageName, enclosingTypeNames, simpleTypeName), Flags.AccPublic, 0, 0, R_DEFAULT);
-		}
-
-		public void acceptInterface(char[] packageName, char[] simpleTypeName, char[][] enclosingTypeNames, String path) {
-			// forbid inner classes as they don't work [yet]
-			if (this.allowInterfaces && (enclosingTypeNames == null || enclosingTypeNames.length == 0))
-				collector.acceptInterface(packageName, simpleTypeName, getCompletionName(packageName, enclosingTypeNames, simpleTypeName), Flags.AccPublic, 0, 0, R_DEFAULT);
-		}
-
-		public JavaTypeResultCollector getCollector() {
-			return collector;
-		}
-	}
-
-	public static ICompletionProposal[] getBeanProposals(IResource resource, int replacementStart, int replacementLength) {
-		ICompletionProposal[] typeProposals = getTypeProposals(resource, replacementStart, replacementLength);
-		ICompletionProposal[] serialProposals = getSerializedProposals(resource, replacementStart, replacementLength);
-		ICompletionProposal[] beanProposals = new ICompletionProposal[typeProposals.length + serialProposals.length];
-
-		int i;
-		for (i = 0; i < serialProposals.length; i++) {
-			beanProposals[i] = serialProposals[i];
-		}
-		for (i = serialProposals.length; i < serialProposals.length + typeProposals.length; i++) {
-			beanProposals[i] = typeProposals[i - serialProposals.length];
-		}
-		return beanProposals;
-	}
-
-	private static void getMembers(IContainer container, List membersList) {
-		try {
-			IResource[] members = container.members(true);
-			if (members != null) {
-				for (int i = 0; i < members.length; i++) {
-					if (members[i].getType() == IResource.FILE)
-						membersList.add(members[i]);
-					else if (members[i].getType() == IResource.FOLDER)
-						getMembers((IContainer) members[i], membersList);
-				}
-			}
-		}
-		catch (CoreException e) {
-			// do nothing
-		}
-	}
-
-	protected static ICompletionProposal[] getSerializedProposals(IResource resource, int replacementStart, int replacementLength) {
-		List names = new ArrayList();
-		List resources = new ArrayList();
-		getMembers(resource.getProject(), resources);
-		IResource memberResource = null;
-		for (int i = 0; i < resources.size(); i++) {
-			memberResource = (IResource) resources.get(i);
-			if (memberResource.getType() == IResource.FILE && memberResource.getName().endsWith(".ser")) { //$NON-NLS-1$
-				String path = URIHelper.normalize(memberResource.getFullPath().toString(), resource.getFullPath().toString(), resource.getProject().getFullPath().toString());
-				if (path != null) {
-					names.add(new CustomCompletionProposal("\"" + path + "\"", //$NON-NLS-1$ //$NON-NLS-2$
-								replacementStart, replacementLength, path.length() + 2, null, path, null, null, IRelevanceConstants.R_NONE));
-				}
-			}
-		}
-		return (ICompletionProposal[]) names.toArray(new ICompletionProposal[names.size()]);
-	}
-
-	protected static ICompletionProposal[] findTypeProposals(IResource resource, int replacementStart, int replacementLength, boolean allowInterfaces) {
-
-		JavaTypeNameRequestor requestor = new JavaTypeNameRequestor(allowInterfaces);
-		requestor.getCollector().setReplacementStart(replacementStart);
-		requestor.getCollector().setReplacementLength(replacementLength);
-
-		try {
-			IJavaElement[] elements = new IJavaElement[]{getJavaProject(resource)};
-			IJavaSearchScope scope = SearchEngine.createJavaSearchScope(elements);
-			new SearchEngine().searchAllTypeNames(ResourcesPlugin.getWorkspace(), null, null, IJavaSearchConstants.PATTERN_MATCH, IJavaSearchConstants.CASE_INSENSITIVE, IJavaSearchConstants.TYPE, scope, requestor, IJavaSearchConstants.WAIT_UNTIL_READY_TO_SEARCH, null);
-		}
-		catch (CoreException exc) {
-			Logger.logException(exc);
-		}
-		catch (Exception exc) { // JavaModel
-			Logger.logException(exc);
-		}
-		return requestor.getCollector().getResults();
-	}
-
-	public static ICompletionProposal[] getClassProposals(IResource resource, int replacementStart, int replacementLength) {
-		return findTypeProposals(resource, replacementStart, replacementLength, false);
-	}
-
-	public static ICompletionProposal[] getTypeProposals(IResource resource, int replacementStart, int replacementLength) {
-		return findTypeProposals(resource, replacementStart, replacementLength, true);
-	}
-
-	public static IJavaProject getJavaProject(IResource resource) {
-		IProject proj = resource.getProject();
-		IJavaProject javaProject = JavaCore.create(proj);
-		return javaProject;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeResultCollector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeResultCollector.java
deleted file mode 100644
index 3e1bb99..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JavaTypeResultCollector.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jst.jsp.ui.internal.editor.JSPEditorPluginImageHelper;
-import org.eclipse.swt.graphics.Image;
-
-
-
-public class JavaTypeResultCollector extends JSPCompletionRequestor {
-
-	protected final boolean fShowClasses = true;
-	protected boolean fShowInterfaces = true;
-
-	protected int fReplacementStart = 0;
-	protected int fReplacementLength = 0;
-
-//	protected ImageDescriptorRegistry fRegistry = JavaPlugin.getImageDescriptorRegistry();
-
-	public JavaTypeResultCollector() {
-		super();
-	}
-
-	public JavaTypeResultCollector(boolean showInterfaces) {
-		super();
-		fShowInterfaces = showInterfaces;
-	}
-
-	protected boolean getShowClasses() {
-		return fShowClasses;
-	}
-
-	protected void setShowClasses(boolean showClasses) {
-	}
-
-	protected boolean getShowInterfaces() {
-		return fShowInterfaces;
-	}
-
-	protected void setShowInterfaces(boolean showInterfaces) {
-		fShowInterfaces = showInterfaces;
-	}
-
-	public int getReplacementLength() {
-		return fReplacementLength;
-	}
-
-	public void setReplacementLength(int replacementLength) {
-		fReplacementLength = replacementLength;
-	}
-
-	public int getReplacementStart() {
-		return fReplacementStart;
-	}
-
-	public void setReplacementStart(int replacementStart) {
-		fReplacementStart = replacementStart;
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.ICompletionRequestor#acceptClass(char[],
-	 *      char[], char[], int, int, int, int)
-	 */
-	public void acceptClass(char[] packageName, char[] className, char[] completionName, int modifiers, int completionStart, int completionEnd, int relevance) {
-		if (fShowClasses) {
-            completionStart = getReplacementStart();
-            completionEnd = completionStart + getReplacementLength();
-			super.acceptClass(packageName, className, completionName, modifiers, completionStart, completionEnd, relevance);
-        }
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.ICompletionRequestor#acceptInterface(char[], char[], char[], int,
-	 *      int, int, int)
-	 */
-	public void acceptInterface(char[] packageName, char[] interfaceName, char[] completionName, int modifiers, int completionStart, int completionEnd, int relevance) {
-		if (fShowInterfaces) {
-            completionStart = getReplacementStart();
-            completionEnd = completionStart + getReplacementLength();
-			super.acceptInterface(packageName, interfaceName, completionName, modifiers, completionStart, completionEnd, relevance);
-        }
-	}
-
-	protected JavaTypeCompletionProposal createTypeCompletion(int start, int end, String completion, ImageDescriptor descriptor, String typeName, String containerName, int relevance) {
-		String qualifiedName = null;
-		if (containerName != null && containerName.length() > 0)
-			qualifiedName = containerName + "." + typeName; //$NON-NLS-1$
-		else
-			qualifiedName = typeName;
-		Image image = null;
-		if (descriptor != null)
-			image = JSPEditorPluginImageHelper.getInstance().getImage(descriptor);
-		return new JavaTypeCompletionProposal("\"" + qualifiedName + "\"", fReplacementStart, fReplacementLength, qualifiedName, image, typeName, containerName, relevance, true); //$NON-NLS-1$ //$NON-NLS-2$
-		//	return super.createTypeCompletion(start, end, completion,
-		// descriptor, typeName, containerName, proposalInfo, relevance);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/NoRegionContentAssistProcessorForJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/NoRegionContentAssistProcessorForJSP.java
deleted file mode 100644
index f2ad51f..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/NoRegionContentAssistProcessorForJSP.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.contentassist;
-
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.wst.html.core.text.IHTMLPartitions;
-import org.eclipse.wst.html.ui.internal.contentassist.NoRegionContentAssistProcessorForHTML;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-
-/**
- * 
- * @author pavery
- */
-public class NoRegionContentAssistProcessorForJSP extends NoRegionContentAssistProcessorForHTML {
-
-	private String[] fJSPContexts = null;
-
-	public NoRegionContentAssistProcessorForJSP() {
-		super();
-		initJSPContexts();
-	}
-
-	/* 
-	 * @see org.eclipse.wst.html.ui.internal.contentassist.NoRegionContentAssistProcessorForHTML#initPartitionToProcessorMap()
-	 */
-	protected void initPartitionToProcessorMap() {
-		super.initPartitionToProcessorMap();
-		IContentAssistProcessor jspContentAssistProcessor = new JSPContentAssistProcessor();
-		// JSP
-		fPartitionToProcessorMap.put(IStructuredPartitions.DEFAULT_PARTITION, jspContentAssistProcessor);
-		fPartitionToProcessorMap.put(IXMLPartitions.XML_DEFAULT, jspContentAssistProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitions.HTML_DEFAULT, jspContentAssistProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitions.HTML_COMMENT, jspContentAssistProcessor);
-		fPartitionToProcessorMap.put(IJSPPartitions.JSP_DEFAULT, jspContentAssistProcessor);
-		// JSP directives
-		fPartitionToProcessorMap.put(IJSPPartitions.JSP_DIRECTIVE, jspContentAssistProcessor);
-		// JSP delimiters
-		fPartitionToProcessorMap.put(IJSPPartitions.JSP_CONTENT_DELIMITER, jspContentAssistProcessor);
-		// JSP JavaScript
-		fPartitionToProcessorMap.put(IJSPPartitions.JSP_CONTENT_JAVASCRIPT, jspContentAssistProcessor);
-
-		IContentAssistProcessor jspJavaContentAssistProcessor = new JSPJavaContentAssistProcessor();
-		// JSP Java
-		fPartitionToProcessorMap.put(IJSPPartitions.JSP_CONTENT_JAVA, jspJavaContentAssistProcessor);
-	}
-
-	/* 
-	 * @see com.ibm.sse.editor.xml.contentassist.NoRegionContentAssistProcessor#initNameToProcessorMap()
-	 */
-	protected void initNameToProcessorMap() {
-		super.initNameToProcessorMap();
-		JSPPropertyContentAssistProcessor jspPropertyCAP = new JSPPropertyContentAssistProcessor();
-		fNameToProcessorMap.put(JSP11Namespace.ElementName.SETPROPERTY, jspPropertyCAP);
-		fNameToProcessorMap.put(JSP11Namespace.ElementName.GETPROPERTY, jspPropertyCAP);
-		fNameToProcessorMap.put(JSP11Namespace.ElementName.USEBEAN, new JSPUseBeanContentAssistProcessor());
-	}
-
-	private void initJSPContexts() {
-		fJSPContexts = new String[]{DOMJSPRegionContexts.JSP_CLOSE, DOMJSPRegionContexts.JSP_CONTENT, DOMJSPRegionContexts.JSP_DECLARATION_OPEN, DOMJSPRegionContexts.JSP_EXPRESSION_OPEN, DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN};
-	}
-
-	/**
-	 * Quick check to see if context (String) should map to JSPContentAssistProcessor.
-	 * @param context
-	 * @return if it's a JSP Region (for which we need JSP Content assist)
-	 */
-	private boolean isJSPRegion(IStructuredDocumentRegion sdRegion) {
-		String context = sdRegion.getType();
-		for (int i = 0; i < fJSPContexts.length; i++) {
-			if (context == fJSPContexts[i])
-				return true;
-		}
-		return false;
-	}
-
-	/*
-	 * @see com.ibm.sse.editor.xml.contentassist.NoRegionContentAssistProcessor#guessContentAssistProcessor(org.eclipse.jface.text.ITextViewer, int)
-	 */
-	protected IContentAssistProcessor guessContentAssistProcessor(ITextViewer viewer, int documentOffset) {
-		IContentAssistProcessor p = super.guessContentAssistProcessor(viewer, documentOffset);
-		if (p == null) {
-			IStructuredDocumentRegion sdRegion = ((IStructuredDocument) viewer.getDocument()).getRegionAtCharacterOffset(documentOffset);
-			if (isJSPRegion(sdRegion))
-				p = (IContentAssistProcessor) fPartitionToProcessorMap.get(IJSPPartitions.JSP_CONTENT_JAVA);
-		}
-		return p;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/ASTRewriteCorrectionProposalJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/ASTRewriteCorrectionProposalJSP.java
deleted file mode 100644
index c35b662..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/ASTRewriteCorrectionProposalJSP.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.correction;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.dom.rewrite.ASTRewrite;
-import org.eclipse.jdt.internal.ui.text.correction.ASTRewriteCorrectionProposal;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationUtil;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.DocumentChange;
-import org.eclipse.ltk.core.refactoring.TextChange;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.text.edits.MalformedTreeException;
-import org.eclipse.text.edits.TextEdit;
-
-public class ASTRewriteCorrectionProposalJSP extends ASTRewriteCorrectionProposal {
-
-	public ASTRewriteCorrectionProposalJSP(String name, ICompilationUnit cu, ASTRewrite rewrite, int relevance, Image image) {
-		super(name, cu, rewrite, relevance, image);
-	}
-
-	public void apply(IDocument document) {
-		Change change = getChange();
-		if (change instanceof DocumentChange) {
-			try {
-				getPreviewContent();
-				JSPTranslationUtil translationUtil = new JSPTranslationUtil(document);
-				TextEdit textEdit = ((TextChange) change).getEdit();
-				TextEdit translatedTextEdit = translationUtil.translateTextEdit(textEdit);
-				if (translatedTextEdit != null)
-					translatedTextEdit.apply(document);
-			}
-			catch (MalformedTreeException e) {
-				Logger.logException(e);
-			}
-			catch (BadLocationException e) {
-				Logger.logException(e);
-			}
-			catch (CoreException e) {
-				Logger.logException(e);
-			}
-		}
-		else
-			super.apply(document);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/CorrectionProcessorJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/CorrectionProcessorJSP.java
deleted file mode 100644
index a4c32c6..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/CorrectionProcessorJSP.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.correction;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.compiler.IProblem;
-import org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation;
-import org.eclipse.jdt.internal.ui.text.correction.AssistContext;
-import org.eclipse.jdt.internal.ui.text.correction.ProblemLocation;
-import org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor;
-import org.eclipse.jdt.ui.text.java.IJavaCompletionProposal;
-import org.eclipse.jdt.ui.text.java.IProblemLocation;
-import org.eclipse.jdt.ui.text.java.IQuickAssistProcessor;
-import org.eclipse.jdt.ui.text.java.IQuickFixProcessor;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.correction.StructuredCorrectionProcessor;
-import org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-
-public class CorrectionProcessorJSP extends StructuredCorrectionProcessor {
-	protected IQuickFixProcessor fQuickFixProcessor;
-	protected IQuickAssistProcessor fQuickAssistProcessor;
-
-	public CorrectionProcessorJSP(ITextEditor editor) {
-		super(editor);
-	}
-
-	protected IQuickFixProcessor getQuickFixProcessorJSP() {
-		if (fQuickFixProcessor == null)
-			fQuickFixProcessor = new QuickFixProcessor();
-
-		return fQuickFixProcessor;
-	}
-
-	protected IQuickAssistProcessor getQuickAssistProcessorJSP() {
-		if (fQuickAssistProcessor == null)
-			fQuickAssistProcessor = new QuickAssistProcessorJSP();
-
-		return fQuickAssistProcessor;
-	}
-
-	protected void addQuickFixProposals(StructuredTextViewer viewer, ArrayList proposals, int documentOffset) {
-		ArrayList problems = new ArrayList();
-		Iterator iter = fAnnotationModel.getAnnotationIterator();
-		while (iter.hasNext()) {
-			Annotation annotation = (Annotation) iter.next();
-			Position pos = fAnnotationModel.getPosition(annotation);
-			if (documentOffset >= pos.offset && documentOffset <= pos.offset + pos.length) {
-				IQuickFixProcessor processor = getQuickFixProcessorJSP();
-
-				XMLModel xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(viewer.getDocument());
-				XMLDocument xmlDoc = xmlModel.getDocument();
-				xmlModel.releaseFromRead();
-				JSPTranslationAdapter translationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-				if (translationAdapter != null) {
-					JSPTranslation translation = translationAdapter.getJSPTranslation();
-
-					ICompilationUnit cu = translation.getCompilationUnit();
-					int problemID = -1;
-					if (annotation instanceof TemporaryAnnotation) {
-						problemID = ((TemporaryAnnotation) annotation).getProblemID();
-						if (problemID != -1) {
-							IJavaAnnotation javaAnnotation = new ProblemAnnotation((IProblem) ((TemporaryAnnotation) annotation).getAdditionalFixInfo(), cu);
-							problems.add(new ProblemLocation(translation.getJavaOffset(pos.offset), pos.getLength(), javaAnnotation));
-						}
-					}
-
-					int length = viewer != null ? viewer.getSelectedRange().y : 0;
-					AssistContext context = new AssistContext(cu, translation.getJavaOffset(documentOffset), length);
-
-					if (processor != null && processor.hasCorrections(cu, problemID)) {
-						try {
-							IProblemLocation[] problemLocations = (IProblemLocation[]) problems.toArray(new IProblemLocation[problems.size()]);
-							IJavaCompletionProposal[] res = ((QuickFixProcessor) processor).getCorrections(context, problemLocations);
-							if (res != null) {
-								for (int k = 0; k < res.length; k++) {
-									//proposals.add(res[k]);
-								}
-							}
-						}
-						catch (CoreException e) {
-							throw new SourceEditingRuntimeException();
-						}
-					}
-				}
-			}
-		}
-	}
-
-	protected void addQuickAssistProposals(StructuredTextViewer viewer, ArrayList proposals, int documentOffset) {
-		try {
-			IQuickAssistProcessor processor = getQuickAssistProcessorJSP();
-
-			XMLModel xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(viewer.getDocument());
-			XMLDocument xmlDoc = xmlModel.getDocument();
-			xmlModel.releaseFromRead();
-			JSPTranslationAdapter translationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-			if (translationAdapter != null) {
-				JSPTranslation translation = translationAdapter.getJSPTranslation();
-				ICompilationUnit cu = translation.getCompilationUnit();
-
-				if (cu != null) {
-					synchronized(cu) {
-						if (processor instanceof QuickAssistProcessorJSP)
-							((QuickAssistProcessorJSP) processor).setJSPDocument(viewer.getDocument());
-	
-						int length = viewer != null ? viewer.getSelectedRange().y : 0;
-						AssistContext context = new AssistContext(cu, translation.getJavaOffset(documentOffset), length);
-	
-						if (processor != null) {
-							ICompletionProposal[] res = processor.getAssists(context, null);
-							if (res != null) {
-								for (int k = 0; k < res.length; k++) {
-									proposals.add(res[k]);
-								}
-							}
-						}
-					}
-				}
-			}
-		}
-		catch (Exception e) {
-			throw new SourceEditingRuntimeException();
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/LocalRenameQuickAssistProposalJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/LocalRenameQuickAssistProposalJSP.java
deleted file mode 100644
index d8e1f0d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/LocalRenameQuickAssistProposalJSP.java
+++ /dev/null
@@ -1,212 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.correction;
-
-import java.util.Arrays;
-import java.util.Comparator;
-
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.dom.ASTNode;
-import org.eclipse.jdt.core.dom.CompilationUnit;
-import org.eclipse.jdt.core.dom.SimpleName;
-import org.eclipse.jdt.internal.corext.dom.LinkedNodeFinder;
-import org.eclipse.jdt.internal.corext.dom.NodeFinder;
-import org.eclipse.jdt.internal.ui.JavaPlugin;
-import org.eclipse.jdt.internal.ui.JavaPluginImages;
-import org.eclipse.jdt.internal.ui.text.correction.CorrectionMessages;
-import org.eclipse.jdt.ui.text.java.IJavaCompletionProposal;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.link.LinkedModeModel;
-import org.eclipse.jface.text.link.LinkedModeUI;
-import org.eclipse.jface.text.link.LinkedPosition;
-import org.eclipse.jface.text.link.LinkedPositionGroup;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationUtil;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.texteditor.link.EditorLinkedModeUI;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-
-/**
- * This is a copy of
- * org.eclipse.jdt.internal.ui.text.correction.LinkedNamesAssistProposal with
- * the following modifications:
- * - set viewer redraw to true before apply to work around a repaint problem
- * - translate AST element offsets to JSP document offsets
- */
-public class LocalRenameQuickAssistProposalJSP implements IJavaCompletionProposal, ICompletionProposalExtension2 {
-	private SimpleName fNode;
-	private IRegion fSelectedRegion; // initialized by apply()
-	private ICompilationUnit fCompilationUnit;
-
-	public LocalRenameQuickAssistProposalJSP(ICompilationUnit cu, SimpleName node) {
-		fNode = node;
-		fCompilationUnit = cu;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,
-	 *      char, int, int)
-	 */
-	public void apply(ITextViewer viewer, char trigger, int stateMask, final int offset) {
-		try {
-			// get full ast
-			CompilationUnit root = JavaPlugin.getDefault().getASTProvider().getAST(fCompilationUnit, true, null);
-
-			ASTNode nameNode = NodeFinder.perform(root, fNode.getStartPosition(), fNode.getLength());
-			final int pos = fNode.getStartPosition();
-
-			ASTNode[] sameNodes;
-			if (nameNode instanceof SimpleName) {
-				sameNodes = LinkedNodeFinder.findByNode(root, (SimpleName) nameNode);
-			}
-			else {
-				sameNodes = new ASTNode[]{nameNode};
-			}
-
-			// sort for iteration order, starting with the node @ offset
-			Arrays.sort(sameNodes, new Comparator() {
-
-				public int compare(Object o1, Object o2) {
-					return rank((ASTNode) o1) - rank((ASTNode) o2);
-				}
-
-				/**
-				 * Returns the absolute rank of an <code>ASTNode</code>.
-				 * Nodes preceding <code>offset</code> are ranked last.
-				 * 
-				 * @param node
-				 *            the node to compute the rank for
-				 * @return the rank of the node with respect to the invocation
-				 *         offset
-				 */
-				private int rank(ASTNode node) {
-					int relativeRank = node.getStartPosition() + node.getLength() - pos;
-					if (relativeRank < 0)
-						return Integer.MAX_VALUE + relativeRank;
-					else
-						return relativeRank;
-				}
-
-			});
-
-			// TODO CompletionProposalPopup#insertProposal() calls
-			// IRewriteTarget.beginCompoundChange()
-			//      which disables redraw in ITextViewer. Workaround for now.
-			((StructuredTextViewer) viewer).setRedraw(true);
-
-			IDocument document = viewer.getDocument();
-			LinkedPositionGroup group = new LinkedPositionGroup();
-			JSPTranslationUtil translationUtil = new JSPTranslationUtil(document);
-			for (int i = 0; i < sameNodes.length; i++) {
-				ASTNode elem = sameNodes[i];
-				group.addPosition(new LinkedPosition(document, translationUtil.getTranslation().getJspOffset(elem.getStartPosition()), elem.getLength(), i));
-			}
-
-			LinkedModeModel linkedModeModel = new LinkedModeModel();
-			linkedModeModel.addGroup(group);
-			linkedModeModel.forceInstall();
-
-			LinkedModeUI ui= new EditorLinkedModeUI(linkedModeModel, viewer);
-			ui.setExitPosition(viewer, offset, 0, LinkedPositionGroup.NO_STOP);
-			ui.enter();
-
-			fSelectedRegion = ui.getSelectedRegion();
-		}
-		catch (BadLocationException e) {
-			JavaPlugin.log(e);
-		}
-	}
-
-	/*
-	 * @see ICompletionProposal#apply(IDocument)
-	 */
-	public void apply(IDocument document) {
-		// can't do anything
-	}
-
-	/*
-	 * @see ICompletionProposal#getSelection(IDocument)
-	 */
-	public Point getSelection(IDocument document) {
-		return new Point(fSelectedRegion.getOffset(), fSelectedRegion.getLength());
-	}
-
-	/*
-	 * @see ICompletionProposal#getAdditionalProposalInfo()
-	 */
-	public String getAdditionalProposalInfo() {
-		return CorrectionMessages.getString("LinkedNamesAssistProposal.proposalinfo"); //$NON-NLS-1$
-	}
-
-	/*
-	 * @see ICompletionProposal#getDisplayString()
-	 */
-	public String getDisplayString() {
-		return CorrectionMessages.getString("LinkedNamesAssistProposal.description"); //$NON-NLS-1$
-	}
-
-	/*
-	 * @see ICompletionProposal#getImage()
-	 */
-	public Image getImage() {
-		return JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);
-	}
-
-	/*
-	 * @see ICompletionProposal#getContextInformation()
-	 */
-	public IContextInformation getContextInformation() {
-		return null;
-	}
-
-	/*
-	 * @see IJavaCompletionProposal#getRelevance()
-	 */
-	public int getRelevance() {
-		return 1;
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#selected(org.eclipse.jface.text.ITextViewer,
-	 *      boolean)
-	 */
-	public void selected(ITextViewer textViewer, boolean smartToggle) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#unselected(org.eclipse.jface.text.ITextViewer)
-	 */
-	public void unselected(ITextViewer textViewer) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#validate(org.eclipse.jface.text.IDocument,
-	 *      int, org.eclipse.jface.text.DocumentEvent)
-	 */
-	public boolean validate(IDocument document, int offset, DocumentEvent event) {
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/ProblemAnnotation.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/ProblemAnnotation.java
deleted file mode 100644
index ad88bce..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/ProblemAnnotation.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.correction;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.compiler.IProblem;
-import org.eclipse.jdt.internal.ui.JavaPluginImages;
-import org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation;
-import org.eclipse.jdt.internal.ui.javaeditor.JavaMarkerAnnotation;
-import org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor;
-import org.eclipse.jdt.ui.PreferenceConstants;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Display;
-
-public class ProblemAnnotation extends Annotation implements IJavaAnnotation {
-	private static Image fgQuickFixImage;
-	private static Image fgQuickFixErrorImage;
-	private static boolean fgQuickFixImagesInitialized = false;
-
-	private ICompilationUnit fCompilationUnit;
-	private List fOverlaids;
-	private IProblem fProblem;
-	private Image fImage;
-	private boolean fQuickFixImagesInitialized = false;
-
-	public ProblemAnnotation(IProblem problem, ICompilationUnit cu) {
-
-		fProblem = problem;
-		fCompilationUnit = cu;
-
-
-		
-		if (IProblem.Task == fProblem.getID()) {
-			setType(JavaMarkerAnnotation.TASK_ANNOTATION_TYPE);
-			//fLayer = TASK_LAYER;
-		}
-		else if (fProblem.isWarning()) {
-			setType(JavaMarkerAnnotation.WARNING_ANNOTATION_TYPE);
-			//fLayer = WARNING_LAYER;
-		}
-		else if (fProblem.isError()) {
-			setType(JavaMarkerAnnotation.ERROR_ANNOTATION_TYPE);
-			//fLayer = ERROR_LAYER;
-		}
-		else {
-			setType(JavaMarkerAnnotation.INFO_ANNOTATION_TYPE);
-			//fLayer = INFO_LAYER;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#hasOverlay()
-	 */
-	public boolean hasOverlay() {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#getOverlay()
-	 */
-	public IJavaAnnotation getOverlay() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#getOverlaidIterator()
-	 */
-	public Iterator getOverlaidIterator() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#addOverlaid(org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation)
-	 */
-	public void addOverlaid(IJavaAnnotation annotation) {
-		if (fOverlaids == null)
-			fOverlaids = new ArrayList(1);
-		fOverlaids.add(annotation);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#removeOverlaid(org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation)
-	 */
-	public void removeOverlaid(IJavaAnnotation annotation) {
-		// TODO Auto-generated method stub
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#isProblem()
-	 */
-	public boolean isProblem() {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#getCompilationUnit()
-	 */
-	public ICompilationUnit getCompilationUnit() {
-		return fCompilationUnit;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#getArguments()
-	 */
-	public String[] getArguments() {
-		return isProblem() ? fProblem.getArguments() : null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#getId()
-	 */
-	public int getId() {
-		return fProblem.getID();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.ui.javaeditor.IJavaAnnotation#getImage(org.eclipse.swt.widgets.Display)
-	 */
-	public Image getImage(Display display) {
-		initializeImages();
-		return fImage;
-	}
-
-	private void initializeImages() {
-		// http://bugs.eclipse.org/bugs/show_bug.cgi?id=18936
-		if (!fQuickFixImagesInitialized) {
-			if (isProblem() && indicateQuixFixableProblems() && JavaCorrectionProcessor.hasCorrections(this)) { // no light bulb for tasks
-				if (!fgQuickFixImagesInitialized) {
-					fgQuickFixImage = JavaPluginImages.get(JavaPluginImages.IMG_OBJS_FIXABLE_PROBLEM);
-					fgQuickFixErrorImage = JavaPluginImages.get(JavaPluginImages.IMG_OBJS_FIXABLE_ERROR);
-					fgQuickFixImagesInitialized = true;
-				}
-				if (JavaMarkerAnnotation.ERROR_ANNOTATION_TYPE.equals(getType()))
-					fImage = fgQuickFixErrorImage;
-				else
-					fImage = fgQuickFixImage;
-			}
-			fQuickFixImagesInitialized = true;
-		}
-	}
-
-	private boolean indicateQuixFixableProblems() {
-		return PreferenceConstants.getPreferenceStore().getBoolean(PreferenceConstants.EDITOR_CORRECTION_INDICATION);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/QuickAssistProcessorJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/QuickAssistProcessorJSP.java
deleted file mode 100644
index bc0da52..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/correction/QuickAssistProcessorJSP.java
+++ /dev/null
@@ -1,859 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.correction;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.compiler.IProblem;
-import org.eclipse.jdt.core.dom.AST;
-import org.eclipse.jdt.core.dom.ASTNode;
-import org.eclipse.jdt.core.dom.AnonymousClassDeclaration;
-import org.eclipse.jdt.core.dom.Assignment;
-import org.eclipse.jdt.core.dom.Block;
-import org.eclipse.jdt.core.dom.BodyDeclaration;
-import org.eclipse.jdt.core.dom.CastExpression;
-import org.eclipse.jdt.core.dom.CatchClause;
-import org.eclipse.jdt.core.dom.ChildListPropertyDescriptor;
-import org.eclipse.jdt.core.dom.ConditionalExpression;
-import org.eclipse.jdt.core.dom.DoStatement;
-import org.eclipse.jdt.core.dom.Expression;
-import org.eclipse.jdt.core.dom.ExpressionStatement;
-import org.eclipse.jdt.core.dom.ForStatement;
-import org.eclipse.jdt.core.dom.IBinding;
-import org.eclipse.jdt.core.dom.ITypeBinding;
-import org.eclipse.jdt.core.dom.IVariableBinding;
-import org.eclipse.jdt.core.dom.IfStatement;
-import org.eclipse.jdt.core.dom.InfixExpression;
-import org.eclipse.jdt.core.dom.MethodDeclaration;
-import org.eclipse.jdt.core.dom.MethodInvocation;
-import org.eclipse.jdt.core.dom.Modifier;
-import org.eclipse.jdt.core.dom.Name;
-import org.eclipse.jdt.core.dom.ParenthesizedExpression;
-import org.eclipse.jdt.core.dom.SimpleName;
-import org.eclipse.jdt.core.dom.SimpleType;
-import org.eclipse.jdt.core.dom.SingleVariableDeclaration;
-import org.eclipse.jdt.core.dom.Statement;
-import org.eclipse.jdt.core.dom.StructuralPropertyDescriptor;
-import org.eclipse.jdt.core.dom.ThisExpression;
-import org.eclipse.jdt.core.dom.TryStatement;
-import org.eclipse.jdt.core.dom.Type;
-import org.eclipse.jdt.core.dom.TypeDeclaration;
-import org.eclipse.jdt.core.dom.VariableDeclarationExpression;
-import org.eclipse.jdt.core.dom.VariableDeclarationFragment;
-import org.eclipse.jdt.core.dom.VariableDeclarationStatement;
-import org.eclipse.jdt.core.dom.WhileStatement;
-import org.eclipse.jdt.core.dom.rewrite.ASTRewrite;
-import org.eclipse.jdt.core.dom.rewrite.ListRewrite;
-import org.eclipse.jdt.internal.corext.dom.Bindings;
-import org.eclipse.jdt.internal.corext.dom.LinkedNodeFinder;
-import org.eclipse.jdt.internal.corext.dom.NodeFinder;
-import org.eclipse.jdt.internal.ui.JavaPluginImages;
-import org.eclipse.jdt.internal.ui.text.correction.ASTResolving;
-import org.eclipse.jdt.internal.ui.text.correction.AssignToVariableAssistProposal;
-import org.eclipse.jdt.internal.ui.text.correction.CorrectionMessages;
-import org.eclipse.jdt.internal.ui.text.correction.LinkedCorrectionProposal;
-import org.eclipse.jdt.ui.text.java.IInvocationContext;
-import org.eclipse.jdt.ui.text.java.IJavaCompletionProposal;
-import org.eclipse.jdt.ui.text.java.IProblemLocation;
-import org.eclipse.jdt.ui.text.java.IQuickAssistProcessor;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationUtil;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * This is a copy of
- * org.eclipse.jdt.internal.ui.text.correction.QuickAssistProcessor with the
- * following modifications: - replaced LocalRenameQuickAssistProposal with
- * LocalRenameQuickAssistProposalJSP - replace ASTRewriteCorrectionProposal
- * with ASTRewriteCorrectionProposalJSP
- */
-public class QuickAssistProcessorJSP implements IQuickAssistProcessor {
-	private IDocument fDocument;
-
-	public void setJSPDocument(IDocument document) {
-		fDocument = document;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jdt.internal.ui.text.correction.IAssistProcessor#hasAssists(org.eclipse.jdt.internal.ui.text.correction.IAssistContext)
-	 */
-	public boolean hasAssists(IInvocationContext context) throws CoreException {
-		ASTNode coveringNode = getCoveringNode(context);
-		if (coveringNode != null) {
-			return getCatchClauseToThrowsProposals(context, coveringNode, null) || getRenameLocalProposals(context, coveringNode, null, null) || getAssignToVariableProposals(context, coveringNode, null) || getUnWrapProposals(context, coveringNode, null) || getAssignParamToFieldProposals(context, coveringNode, null) || getJoinVariableProposals(context, coveringNode, null) || getAddFinallyProposals(context, coveringNode, null) || getAddElseProposals(context, coveringNode, null) || getSplitVariableProposals(context, coveringNode, null) || getAddBlockProposals(context, coveringNode, null) || getInvertEqualsProposal(context, coveringNode, null);
-		}
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jdt.internal.ui.text.correction.IAssistProcessor#getAssists(org.eclipse.jdt.internal.ui.text.correction.IAssistContext,
-	 *      org.eclipse.jdt.internal.ui.text.correction.IProblemLocation[])
-	 */
-	public IJavaCompletionProposal[] getAssists(IInvocationContext context, IProblemLocation[] locations) throws CoreException {
-		ASTNode coveringNode = getCoveringNode(context);
-		if (coveringNode != null) {
-			ArrayList resultingCollections = new ArrayList();
-			// quick assists that show up also if there is an error/warning
-			getRenameLocalProposals(context, coveringNode, locations, resultingCollections);
-
-			if (noErrorsAtLocation(locations)) {
-				getCatchClauseToThrowsProposals(context, coveringNode, resultingCollections);
-				getAssignToVariableProposals(context, coveringNode, resultingCollections);
-				getAssignParamToFieldProposals(context, coveringNode, resultingCollections);
-				getUnWrapProposals(context, coveringNode, resultingCollections);
-				getSplitVariableProposals(context, coveringNode, resultingCollections);
-				getJoinVariableProposals(context, coveringNode, resultingCollections);
-				getAddFinallyProposals(context, coveringNode, resultingCollections);
-				getAddElseProposals(context, coveringNode, resultingCollections);
-				getAddBlockProposals(context, coveringNode, resultingCollections);
-				getInvertEqualsProposal(context, coveringNode, resultingCollections);
-			}
-			return (IJavaCompletionProposal[]) resultingCollections.toArray(new IJavaCompletionProposal[resultingCollections.size()]);
-		}
-		return null;
-	}
-
-	private boolean noErrorsAtLocation(IProblemLocation[] locations) {
-		if (locations != null) {
-			for (int i = 0; i < locations.length; i++) {
-				if (locations[i].isError()) {
-					return false;
-				}
-			}
-		}
-		return true;
-	}
-
-	private boolean getJoinVariableProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		ASTNode parent = node.getParent();
-		if (!(parent instanceof VariableDeclarationFragment)) {
-			return false;
-		}
-		VariableDeclarationFragment fragment = (VariableDeclarationFragment) parent;
-
-		IVariableBinding binding = fragment.resolveBinding();
-		if (fragment.getInitializer() != null || binding == null || binding.isField()) {
-			return false;
-		}
-
-		if (!(fragment.getParent() instanceof VariableDeclarationStatement)) {
-			return false;
-		}
-		VariableDeclarationStatement statement = (VariableDeclarationStatement) fragment.getParent();
-
-		SimpleName[] names = LinkedNodeFinder.findByBinding(statement.getParent(), binding);
-		if (names.length <= 1 || names[0] != fragment.getName()) {
-			return false;
-		}
-
-		SimpleName firstAccess = names[1];
-		if (!(firstAccess.getParent() instanceof Assignment)) {
-			return false;
-		}
-		Assignment assignment = (Assignment) firstAccess.getParent();
-		if (assignment.getLeftHandSide() != firstAccess) {
-			return false;
-		}
-
-		ASTNode assignParent = assignment.getParent();
-		if (!(assignParent instanceof ExpressionStatement || assignParent instanceof ForStatement && ((ForStatement) assignParent).initializers().contains(assignment))) {
-			return false;
-		}
-
-		if (resultingCollections == null) {
-			return true;
-		}
-
-		AST ast = statement.getAST();
-		ASTRewrite rewrite = ASTRewrite.create(ast);
-
-		String label = CorrectionMessages.getString("QuickAssistProcessor.joindeclaration.description"); //$NON-NLS-1$
-		Image image = JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);
-		LinkedCorrectionProposal proposal = new LinkedCorrectionProposal(label, context.getCompilationUnit(), rewrite, 1, image);
-
-		Expression placeholder = (Expression) rewrite.createMoveTarget(assignment.getRightHandSide());
-		rewrite.set(fragment, VariableDeclarationFragment.INITIALIZER_PROPERTY, placeholder, null);
-
-		if (assignParent instanceof ExpressionStatement) {
-			int statementParent = assignParent.getParent().getNodeType();
-			if (statementParent == ASTNode.IF_STATEMENT || statementParent == ASTNode.WHILE_STATEMENT || statementParent == ASTNode.DO_STATEMENT || statementParent == ASTNode.FOR_STATEMENT) {
-
-				Block block = ast.newBlock();
-				rewrite.replace(assignParent, block, null);
-			}
-			else {
-				rewrite.remove(assignParent, null);
-			}
-		}
-		else {
-			rewrite.remove(assignment, null);
-		}
-
-		proposal.setEndPosition(rewrite.track(fragment.getName()));
-		resultingCollections.add(proposal);
-		return true;
-
-	}
-
-	private boolean getSplitVariableProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		ASTNode parent = node.getParent();
-		if (!(parent instanceof VariableDeclarationFragment)) {
-			return false;
-		}
-		VariableDeclarationFragment fragment = (VariableDeclarationFragment) parent;
-
-		if (fragment.getInitializer() == null) {
-			return false;
-		}
-
-		Statement statement;
-		ASTNode fragParent = fragment.getParent();
-		if (fragParent instanceof VariableDeclarationStatement) {
-			statement = (VariableDeclarationStatement) fragParent;
-		}
-		else if (fragParent instanceof VariableDeclarationExpression) {
-			statement = (Statement) fragParent.getParent();
-		}
-		else {
-			return false;
-		}
-		// statement is ForStatement or VariableDeclarationStatement
-
-		ASTNode statementParent = statement.getParent();
-		StructuralPropertyDescriptor property = statement.getLocationInParent();
-		if (!property.isChildListProperty()) {
-			return false;
-		}
-
-		List list = (List) statementParent.getStructuralProperty(property);
-
-		if (resultingCollections == null) {
-			return true;
-		}
-
-		AST ast = statement.getAST();
-		ASTRewrite rewrite = ASTRewrite.create(ast);
-
-		String label = CorrectionMessages.getString("QuickAssistProcessor.splitdeclaration.description"); //$NON-NLS-1$
-		Image image = JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);
-		ASTRewriteCorrectionProposalJSP proposal = new ASTRewriteCorrectionProposalJSP(label, context.getCompilationUnit(), rewrite, 1, image);
-
-		Statement newStatement;
-		int insertIndex = list.indexOf(statement);
-
-		Expression placeholder = (Expression) rewrite.createMoveTarget(fragment.getInitializer());
-		Assignment assignment = ast.newAssignment();
-		assignment.setRightHandSide(placeholder);
-		assignment.setLeftHandSide(ast.newSimpleName(fragment.getName().getIdentifier()));
-
-		if (statement instanceof VariableDeclarationStatement) {
-			newStatement = ast.newExpressionStatement(assignment);
-			insertIndex += 1; // add after declaration
-
-			int modifiers = ((VariableDeclarationStatement) statement).getModifiers();
-			if (Modifier.isFinal(modifiers)) {
-				rewrite.set(statement, VariableDeclarationStatement.MODIFIERS_PROPERTY, new Integer(modifiers & ~Modifier.FINAL), null);
-			}
-		}
-		else {
-			rewrite.replace(fragment.getParent(), assignment, null);
-			VariableDeclarationFragment newFrag = ast.newVariableDeclarationFragment();
-			newFrag.setName(ast.newSimpleName(fragment.getName().getIdentifier()));
-			newFrag.setExtraDimensions(fragment.getExtraDimensions());
-
-			VariableDeclarationExpression oldVarDecl = (VariableDeclarationExpression) fragParent;
-
-			VariableDeclarationStatement newVarDec = ast.newVariableDeclarationStatement(newFrag);
-			newVarDec.setType((Type) ASTNode.copySubtree(ast, oldVarDecl.getType()));
-			newVarDec.setModifiers(oldVarDecl.getModifiers() & ~Modifier.FINAL);
-			newStatement = newVarDec;
-		}
-
-		ListRewrite listRewriter = rewrite.getListRewrite(statementParent, (ChildListPropertyDescriptor) property);
-		listRewriter.insertAt(newStatement, insertIndex, null);
-
-		resultingCollections.add(proposal);
-		return true;
-	}
-
-	private ASTNode getCoveringNode(IInvocationContext context) {
-		NodeFinder finder = new NodeFinder(context.getSelectionOffset(), context.getSelectionLength());
-		context.getASTRoot().accept(finder);
-		return finder.getCoveringNode();
-	}
-
-
-	private boolean getAssignToVariableProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		Statement statement = ASTResolving.findParentStatement(node);
-		if (!(statement instanceof ExpressionStatement)) {
-			return false;
-		}
-		ExpressionStatement expressionStatement = (ExpressionStatement) statement;
-
-		Expression expression = expressionStatement.getExpression();
-		if (expression.getNodeType() == ASTNode.ASSIGNMENT) {
-			return false; // too confusing and not helpful
-		}
-
-		ITypeBinding typeBinding = expression.resolveTypeBinding();
-		typeBinding = Bindings.normalizeTypeBinding(typeBinding);
-		if (typeBinding == null) {
-			return false;
-		}
-		if (resultingCollections == null) {
-			return true;
-		}
-
-		ICompilationUnit cu = context.getCompilationUnit();
-
-		AssignToVariableAssistProposal localProposal = new AssignToVariableAssistProposal(cu, AssignToVariableAssistProposal.LOCAL, expressionStatement, typeBinding, 2);
-		resultingCollections.add(localProposal);
-
-		ASTNode type = ASTResolving.findParentType(expression);
-		if (type != null) {
-			AssignToVariableAssistProposal fieldProposal = new AssignToVariableAssistProposal(cu, AssignToVariableAssistProposal.FIELD, expressionStatement, typeBinding, 1);
-			resultingCollections.add(fieldProposal);
-		}
-		return false;
-
-	}
-
-	private boolean getAssignParamToFieldProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		ASTNode parent = node.getParent();
-		if (!(parent instanceof SingleVariableDeclaration) || !(parent.getParent() instanceof MethodDeclaration)) {
-			return false;
-		}
-		SingleVariableDeclaration paramDecl = (SingleVariableDeclaration) parent;
-		IVariableBinding binding = paramDecl.resolveBinding();
-
-		MethodDeclaration methodDecl = (MethodDeclaration) parent.getParent();
-		if (binding == null || methodDecl.getBody() == null) {
-			return false;
-		}
-		ITypeBinding typeBinding = binding.getType();
-		if (typeBinding == null) {
-			return false;
-		}
-
-		if (resultingCollections != null) {
-			AssignToVariableAssistProposal fieldProposal = new AssignToVariableAssistProposal(context.getCompilationUnit(), paramDecl, typeBinding, 1);
-			resultingCollections.add(fieldProposal);
-		}
-		return true;
-	}
-
-	private boolean getAddFinallyProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		TryStatement tryStatement = ASTResolving.findParentTryStatement(node);
-		if (tryStatement == null || tryStatement.getFinally() != null) {
-			return false;
-		}
-		Statement statement = ASTResolving.findParentStatement(node);
-		if (tryStatement != statement && tryStatement.getBody() != statement) {
-			return false; // an node inside a catch or finally block
-		}
-
-		if (resultingCollections == null) {
-			return true;
-		}
-
-		AST ast = tryStatement.getAST();
-		ASTRewrite rewrite = ASTRewrite.create(ast);
-		Block finallyBody = ast.newBlock();
-
-		rewrite.set(tryStatement, TryStatement.FINALLY_PROPERTY, finallyBody, null);
-
-		String label = CorrectionMessages.getString("QuickAssistProcessor.addfinallyblock.description"); //$NON-NLS-1$
-		Image image = JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_ADD);
-		ASTRewriteCorrectionProposalJSP proposal = new ASTRewriteCorrectionProposalJSP(label, context.getCompilationUnit(), rewrite, 1, image);
-		resultingCollections.add(proposal);
-		return true;
-	}
-
-	private boolean getAddElseProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		Statement statement = ASTResolving.findParentStatement(node);
-		if (!(statement instanceof IfStatement)) {
-			return false;
-		}
-		IfStatement ifStatement = (IfStatement) statement;
-		if (ifStatement.getElseStatement() != null) {
-			return false;
-		}
-
-		if (resultingCollections == null) {
-			return true;
-		}
-
-		AST ast = statement.getAST();
-		ASTRewrite rewrite = ASTRewrite.create(ast);
-		Block body = ast.newBlock();
-
-		rewrite.set(ifStatement, IfStatement.ELSE_STATEMENT_PROPERTY, body, null);
-
-		String label = CorrectionMessages.getString("QuickAssistProcessor.addelseblock.description"); //$NON-NLS-1$
-		Image image = JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_ADD);
-		ASTRewriteCorrectionProposalJSP proposal = new ASTRewriteCorrectionProposalJSP(label, context.getCompilationUnit(), rewrite, 1, image);
-		resultingCollections.add(proposal);
-		return true;
-	}
-
-	public static boolean getCatchClauseToThrowsProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		CatchClause catchClause = (CatchClause) ASTResolving.findAncestor(node, ASTNode.CATCH_CLAUSE);
-		if (catchClause == null) {
-			return false;
-		}
-
-		Statement statement = ASTResolving.findParentStatement(node);
-		if (statement != catchClause.getParent() && statement != catchClause.getBody()) {
-			return false; // selection is in a statement inside the body
-		}
-
-		Type type = catchClause.getException().getType();
-		if (!type.isSimpleType()) {
-			return false;
-		}
-
-		BodyDeclaration bodyDeclaration = ASTResolving.findParentBodyDeclaration(catchClause);
-		if (!(bodyDeclaration instanceof MethodDeclaration)) {
-			return false;
-		}
-
-		if (resultingCollections == null) {
-			return true;
-		}
-
-		AST ast = bodyDeclaration.getAST();
-		MethodDeclaration methodDeclaration = (MethodDeclaration) bodyDeclaration;
-		{
-			ASTRewrite rewrite = ASTRewrite.create(ast);
-
-			removeCatchBlock(rewrite, methodDeclaration, catchClause);
-
-			ITypeBinding binding = type.resolveBinding();
-			if (binding == null || isNotYetThrown(binding, methodDeclaration.thrownExceptions())) {
-				Name name = ((SimpleType) type).getName();
-				Name newName = (Name) ASTNode.copySubtree(catchClause.getAST(), name);
-
-				ListRewrite listRewriter = rewrite.getListRewrite(methodDeclaration, MethodDeclaration.THROWN_EXCEPTIONS_PROPERTY);
-				listRewriter.insertLast(newName, null);
-			}
-
-			String label = CorrectionMessages.getString("QuickAssistProcessor.catchclausetothrows.description"); //$NON-NLS-1$
-			Image image = JavaPluginImages.get(JavaPluginImages.IMG_OBJS_EXCEPTION);
-			ASTRewriteCorrectionProposalJSP proposal = new ASTRewriteCorrectionProposalJSP(label, context.getCompilationUnit(), rewrite, 4, image);
-			resultingCollections.add(proposal);
-		}
-		{
-			ASTRewrite rewrite = ASTRewrite.create(ast);
-
-			removeCatchBlock(rewrite, methodDeclaration, catchClause);
-			String label = CorrectionMessages.getString("QuickAssistProcessor.removecatchclause.description"); //$NON-NLS-1$
-			Image image = JavaPluginImages.get(JavaPluginImages.IMG_OBJS_EXCEPTION);
-			ASTRewriteCorrectionProposalJSP proposal = new ASTRewriteCorrectionProposalJSP(label, context.getCompilationUnit(), rewrite, 5, image);
-			resultingCollections.add(proposal);
-		}
-
-		return true;
-	}
-
-	private static void removeCatchBlock(ASTRewrite rewrite, MethodDeclaration methodDeclaration, CatchClause catchClause) {
-		TryStatement tryStatement = (TryStatement) catchClause.getParent();
-		if (tryStatement.catchClauses().size() > 1 || tryStatement.getFinally() != null) {
-			rewrite.remove(catchClause, null);
-		}
-		else {
-			Block block = tryStatement.getBody();
-			List statements = block.statements();
-			if (statements.size() > 0) {
-				ListRewrite listRewrite = rewrite.getListRewrite(block, Block.STATEMENTS_PROPERTY);
-				ASTNode first = (ASTNode) statements.get(0);
-				ASTNode last = (ASTNode) statements.get(statements.size() - 1);
-				ASTNode placeholder = listRewrite.createCopyTarget(first, last);
-				rewrite.replace(tryStatement, placeholder, null);
-			}
-			else {
-				rewrite.remove(tryStatement, null);
-			}
-		}
-	}
-
-	private static boolean isNotYetThrown(ITypeBinding binding, List thrownExcpetions) {
-		for (int i = 0; i < thrownExcpetions.size(); i++) {
-			Name name = (Name) thrownExcpetions.get(i);
-			ITypeBinding elem = (ITypeBinding) name.resolveBinding();
-			if (elem != null) {
-				if (Bindings.isSuperType(elem, binding)) { // existing
-														   // exception is
-														   // base class of
-														   // new
-					return false;
-				}
-			}
-		}
-		return true;
-	}
-
-
-	private boolean getRenameLocalProposals(IInvocationContext context, ASTNode node, IProblemLocation[] locations, Collection resultingCollections) {
-		if (!(node instanceof SimpleName)) {
-			return false;
-		}
-		SimpleName name = (SimpleName) node;
-		IBinding binding = name.resolveBinding();
-		if (binding != null && binding.getKind() == IBinding.PACKAGE) {
-			return false;
-		}
-
-		if (locations != null) {
-			for (int i = 0; i < locations.length; i++) {
-				switch (locations[i].getProblemId()) {
-					case IProblem.LocalVariableHidingLocalVariable :
-					case IProblem.LocalVariableHidingField :
-					case IProblem.FieldHidingLocalVariable :
-					case IProblem.FieldHidingField :
-					case IProblem.ArgumentHidingLocalVariable :
-					case IProblem.ArgumentHidingField :
-						return false;
-				}
-			}
-		}
-
-		if (resultingCollections == null) {
-			return true;
-		}
-
-		LocalRenameQuickAssistProposalJSP proposal = new LocalRenameQuickAssistProposalJSP(context.getCompilationUnit(), name);
-		resultingCollections.add(proposal);
-		return true;
-	}
-
-	private ASTNode getCopyOfInner(ASTRewrite rewrite, ASTNode statement) {
-		if (statement.getNodeType() == ASTNode.BLOCK) {
-			Block block = (Block) statement;
-			List innerStatements = block.statements();
-			int nStatements = innerStatements.size();
-			if (nStatements == 1) {
-				return rewrite.createCopyTarget(((ASTNode) innerStatements.get(0)));
-			}
-			else if (nStatements > 1) {
-				ListRewrite listRewrite = rewrite.getListRewrite(block, Block.STATEMENTS_PROPERTY);
-				ASTNode first = (ASTNode) innerStatements.get(0);
-				ASTNode last = (ASTNode) innerStatements.get(nStatements - 1);
-				return listRewrite.createCopyTarget(first, last);
-			}
-			return null;
-		}
-		else {
-			return rewrite.createCopyTarget(statement);
-		}
-	}
-
-
-	private boolean getUnWrapProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		ASTNode outer = node;
-
-		Block block = null;
-		if (outer.getNodeType() == ASTNode.BLOCK) {
-			block = (Block) outer;
-			outer = block.getParent();
-		}
-
-		ASTNode body = null;
-		String label = null;
-		if (outer instanceof IfStatement) {
-			IfStatement ifStatement = (IfStatement) outer;
-			Statement elseBlock = ifStatement.getElseStatement();
-			if (elseBlock == null || ((elseBlock instanceof Block) && ((Block) elseBlock).statements().isEmpty())) {
-				body = ifStatement.getThenStatement();
-			}
-			label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.ifstatement"); //$NON-NLS-1$
-		}
-		else if (outer instanceof WhileStatement) {
-			body = ((WhileStatement) outer).getBody();
-			label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.whilestatement"); //$NON-NLS-1$
-		}
-		else if (outer instanceof ForStatement) {
-			body = ((ForStatement) outer).getBody();
-			label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.forstatement"); //$NON-NLS-1$
-		}
-		else if (outer instanceof DoStatement) {
-			body = ((DoStatement) outer).getBody();
-			label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.dostatement"); //$NON-NLS-1$
-		}
-		else if (outer instanceof TryStatement) {
-			TryStatement tryStatement = (TryStatement) outer;
-			if (tryStatement.catchClauses().isEmpty()) {
-				body = tryStatement.getBody();
-			}
-			label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.trystatement"); //$NON-NLS-1$
-		}
-		else if (outer instanceof AnonymousClassDeclaration) {
-			List decls = ((AnonymousClassDeclaration) outer).bodyDeclarations();
-			for (int i = 0; i < decls.size(); i++) {
-				ASTNode elem = (ASTNode) decls.get(i);
-				if (elem instanceof MethodDeclaration) {
-					Block curr = ((MethodDeclaration) elem).getBody();
-					if (curr != null && !curr.statements().isEmpty()) {
-						if (body != null) {
-							return false;
-						}
-						body = curr;
-					}
-				}
-				else if (elem instanceof TypeDeclaration) {
-					return false;
-				}
-			}
-			label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.anonymous"); //$NON-NLS-1$
-			outer = ASTResolving.findParentStatement(outer);
-		}
-		else if (outer instanceof Block) {
-			//	-> a block in a block
-			body = block;
-			outer = block;
-			label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.block"); //$NON-NLS-1$
-		}
-		else if (outer instanceof ParenthesizedExpression) {
-			ParenthesizedExpression expression = (ParenthesizedExpression) outer;
-			body = expression.getExpression();
-			label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.parenthesis"); //$NON-NLS-1$
-		}
-		else if (outer instanceof MethodInvocation) {
-			MethodInvocation invocation = (MethodInvocation) outer;
-			if (invocation.arguments().size() == 1) {
-				body = (ASTNode) invocation.arguments().get(0);
-				if (invocation.getParent().getNodeType() == ASTNode.EXPRESSION_STATEMENT) {
-					int kind = body.getNodeType();
-					if (kind != ASTNode.ASSIGNMENT && kind != ASTNode.PREFIX_EXPRESSION && kind != ASTNode.POSTFIX_EXPRESSION && kind != ASTNode.METHOD_INVOCATION && kind != ASTNode.SUPER_METHOD_INVOCATION) {
-						body = null;
-					}
-				}
-				label = CorrectionMessages.getString("QuickAssistProcessor.unwrap.methodinvocation"); //$NON-NLS-1$
-			}
-		}
-		if (body == null) {
-			return false;
-		}
-		ASTRewrite rewrite = ASTRewrite.create(outer.getAST());
-		ASTNode inner = getCopyOfInner(rewrite, body);
-		if (inner == null) {
-			return false;
-		}
-		if (resultingCollections == null) {
-			return true;
-		}
-
-		JSPTranslationUtil translationUtil = new JSPTranslationUtil(fDocument);
-		if (!translationUtil.getTranslation().javaSpansMultipleJspPartitions(outer.getStartPosition(), outer.getLength())) {
-			rewrite.replace(outer, inner, null);
-			Image image = JavaPluginImages.get(JavaPluginImages.IMG_OBJS_EXCEPTION);
-			ASTRewriteCorrectionProposalJSP proposal = new ASTRewriteCorrectionProposalJSP(label, context.getCompilationUnit(), rewrite, 1, image);
-			resultingCollections.add(proposal);
-			return true;
-		}
-		else
-			return false;
-	}
-
-	private static boolean isControlStatementWithBlock(ASTNode node) {
-		switch (node.getNodeType()) {
-			case ASTNode.IF_STATEMENT :
-			case ASTNode.WHILE_STATEMENT :
-			case ASTNode.FOR_STATEMENT :
-			case ASTNode.DO_STATEMENT :
-				return true;
-			default :
-				return false;
-		}
-	}
-
-
-	private boolean getAddBlockProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		Statement statement = ASTResolving.findParentStatement(node);
-		if (statement == null) {
-			return false;
-		}
-
-		if (!isControlStatementWithBlock(statement)) {
-			if (!isControlStatementWithBlock(statement.getParent())) {
-				return false;
-			}
-			int statementStart = statement.getStartPosition();
-			int statementEnd = statementStart + statement.getLength();
-
-			int offset = context.getSelectionOffset();
-			int length = context.getSelectionLength();
-			if (length == 0) {
-				if (offset != statementEnd) { // cursor at end
-					return false;
-				}
-			}
-			else {
-				if (offset > statementStart || offset + length < statementEnd) { // statement
-																				 // selected
-					return false;
-				}
-			}
-			statement = (Statement) statement.getParent();
-		}
-
-		StructuralPropertyDescriptor childProperty = null;
-		ASTNode child = null;
-		switch (statement.getNodeType()) {
-			case ASTNode.IF_STATEMENT :
-				int selectionStart = context.getSelectionOffset();
-				int selectionEnd = context.getSelectionOffset() + context.getSelectionLength();
-				ASTNode then = ((IfStatement) statement).getThenStatement();
-				if (selectionEnd <= then.getStartPosition() + then.getLength()) {
-					if (!(then instanceof Block)) {
-						childProperty = IfStatement.THEN_STATEMENT_PROPERTY;
-						child = then;
-					}
-				}
-				else if (selectionStart >= then.getStartPosition() + then.getLength()) {
-					ASTNode elseStatement = ((IfStatement) statement).getElseStatement();
-					if (!(elseStatement instanceof Block)) {
-						childProperty = IfStatement.ELSE_STATEMENT_PROPERTY;
-						child = elseStatement;
-					}
-				}
-				break;
-			case ASTNode.WHILE_STATEMENT :
-				ASTNode whileBody = ((WhileStatement) statement).getBody();
-				if (!(whileBody instanceof Block)) {
-					childProperty = WhileStatement.BODY_PROPERTY;
-					child = whileBody;
-				}
-				break;
-			case ASTNode.FOR_STATEMENT :
-				ASTNode forBody = ((ForStatement) statement).getBody();
-				if (!(forBody instanceof Block)) {
-					childProperty = ForStatement.BODY_PROPERTY;
-					child = forBody;
-				}
-				break;
-			case ASTNode.DO_STATEMENT :
-				ASTNode doBody = ((DoStatement) statement).getBody();
-				if (!(doBody instanceof Block)) {
-					childProperty = DoStatement.BODY_PROPERTY;
-					child = doBody;
-				}
-				break;
-			default :
-		}
-		if (child == null) {
-			return false;
-		}
-
-		if (resultingCollections == null) {
-			return true;
-		}
-		AST ast = statement.getAST();
-		ASTRewrite rewrite = ASTRewrite.create(ast);
-
-		ASTNode childPlaceholder = rewrite.createMoveTarget(child);
-		Block replacingBody = ast.newBlock();
-		replacingBody.statements().add(childPlaceholder);
-		rewrite.set(statement, childProperty, replacingBody, null);
-
-		String label;
-		if (childProperty == IfStatement.THEN_STATEMENT_PROPERTY) {
-			label = CorrectionMessages.getString("QuickAssistProcessor.replacethenwithblock.description");//$NON-NLS-1$
-		}
-		else if (childProperty == IfStatement.ELSE_STATEMENT_PROPERTY) {
-			label = CorrectionMessages.getString("QuickAssistProcessor.replaceelsewithblock.description");//$NON-NLS-1$
-		}
-		else {
-			label = CorrectionMessages.getString("QuickAssistProcessor.replacebodywithblock.description");//$NON-NLS-1$
-		}
-
-		Image image = JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE);
-		LinkedCorrectionProposal proposal = new LinkedCorrectionProposal(label, context.getCompilationUnit(), rewrite, 10, image);
-		proposal.setEndPosition(rewrite.track(child));
-		resultingCollections.add(proposal);
-		return true;
-	}
-
-	private boolean getInvertEqualsProposal(IInvocationContext context, ASTNode node, Collection resultingCollections) {
-		ASTNode parent = node.getParent();
-		if (!(parent instanceof MethodInvocation)) {
-			return false;
-		}
-		MethodInvocation method = (MethodInvocation) parent;
-		if (!"equals".equals(method.getName().getIdentifier())) { //$NON-NLS-1$
-			return false;
-		}
-		List arguments = method.arguments();
-		if (arguments.size() != 1) { //overloaded equals w/ more than 1 arg
-			return false;
-		}
-		Expression right = (Expression) arguments.get(0);
-		ITypeBinding binding = right.resolveTypeBinding();
-		if (!(binding.isClass() || binding.isInterface())) { //overloaded
-															 // equals w/
-															 // non-class/interface
-															 // arg or null
-			return false;
-		}
-		Expression left = method.getExpression();
-
-		AST ast = method.getAST();
-		ASTRewrite rewrite;
-		if (left == null) { // equals(x) -> x.equals(this)
-			rewrite = ASTRewrite.create(ast);
-			MethodInvocation replacement = ast.newMethodInvocation();
-			replacement.setName((SimpleName) rewrite.createCopyTarget(method.getName()));
-			replacement.arguments().add(ast.newThisExpression());
-			replacement.setExpression((Expression) rewrite.createCopyTarget(right));
-			rewrite.replace(method, replacement, null);
-		}
-		else if (right instanceof ThisExpression) { // x.equals(this) ->
-													// equals(x)
-			rewrite = ASTRewrite.create(ast);
-			MethodInvocation replacement = rewrite.getAST().newMethodInvocation();
-			replacement.setName((SimpleName) rewrite.createCopyTarget(method.getName()));
-			replacement.arguments().add(rewrite.createCopyTarget(left));
-			rewrite.replace(method, replacement, null);
-		}
-		else {
-			rewrite = ASTRewrite.create(ast);
-			if (left instanceof ParenthesizedExpression) {
-				Expression ex = ((ParenthesizedExpression) left).getExpression();
-				rewrite.replace(right, rewrite.createCopyTarget(ex), null);
-			}
-			else {
-				rewrite.replace(right, rewrite.createCopyTarget(left), null);
-			}
-			if ((right instanceof CastExpression) || (right instanceof Assignment) || (right instanceof ConditionalExpression) || (right instanceof InfixExpression)) {
-				ParenthesizedExpression paren = rewrite.getAST().newParenthesizedExpression();
-				paren.setExpression((Expression) rewrite.createCopyTarget(right));
-				rewrite.replace(left, paren, null);
-			}
-			else {
-				rewrite.replace(left, rewrite.createCopyTarget(right), null);
-			}
-		}
-
-		String label = CorrectionMessages.getString("QuickAssistProcessor.invertequals.description"); //$NON-NLS-1$
-		Image image = JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE);
-
-		LinkedCorrectionProposal proposal = new LinkedCorrectionProposal(label, context.getCompilationUnit(), rewrite, 1, image);
-		resultingCollections.add(proposal);
-		return true;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/ActionContributorJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/ActionContributorJSP.java
deleted file mode 100644
index c68be58..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/ActionContributorJSP.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.editor;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jdt.ui.actions.RefactorActionGroup;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jst.jsp.ui.internal.IActionConstantsJSP;
-import org.eclipse.jst.jsp.ui.internal.IActionDefinitionIdsJSP;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.texteditor.RetargetTextEditorAction;
-import org.eclipse.wst.html.ui.edit.ui.ActionContributorHTML;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-
-/**
- * ActionContributorJSP
- * 
- * This class should not be used inside multi page editor's ActionBarContributor,
- * since cascaded init() call from the ActionBarContributor
- * will causes exception and it leads to lose whole toolbars. 
- *
- * Instead, use SourcePageActionContributor for source page contributor
- * of multi page editor.
- * 
- * Note that this class is still valid for single page editor.
- */
-public class ActionContributorJSP extends ActionContributorHTML {
-	
-	private RetargetTextEditorAction renameElementAction = null;
-	private RetargetTextEditorAction moveElementAction = null;
-	private IMenuManager refactorMenu = null;
-	
-	private static final String[] EDITOR_IDS = {"org.eclipse.jst.jsp.ui.StructuredTextEditorJSP", "org.eclipse.wst.sse.ui.StructuredTextEditor"}; //$NON-NLS-1$ //$NON-NLS-2$
-
-	public ActionContributorJSP() {
-		super();
-
-		ResourceBundle bundle = JSPUIPlugin.getDefault().getResourceBundle();
-		this.renameElementAction = new RetargetTextEditorAction(bundle, IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT + StructuredTextEditorActionConstants.DOT);
-		this.renameElementAction.setActionDefinitionId(IActionDefinitionIdsJSP.RENAME_ELEMENT);
-		
-		this.moveElementAction = new RetargetTextEditorAction(bundle, IActionConstantsJSP.ACTION_NAME_MOVE_ELEMENT + StructuredTextEditorActionConstants.DOT);
-		this.moveElementAction.setActionDefinitionId(IActionDefinitionIdsJSP.MOVE_ELEMENT);
-		
-		// the refactor menu, add the menu itself to add all refactor actions
-		this.refactorMenu = new MenuManager(JSPUIPlugin.getResourceString("%ActionContributorJSP.0"), RefactorActionGroup.MENU_ID); //$NON-NLS-1$
-		refactorMenu.add(this.renameElementAction);
-		refactorMenu.add(this.moveElementAction);
-	}
-	
-	/**
-	 * @see com.ibm.sse.editor.ui.ActionContributor#getExtensionIDs()
-	 */
-	protected String[] getExtensionIDs() {
-		return EDITOR_IDS;
-	}
-	
-	/**
-	 * @see com.ibm.sse.editor.xml.ui.actions.ActionContributorXML#addToMenu(org.eclipse.jface.action.IMenuManager)
-	 */
-	protected void addToMenu(IMenuManager menu) {
-		super.addToMenu(menu);
-
-		menu.insertAfter(IWorkbenchActionConstants.M_EDIT, this.refactorMenu);
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.ui.actions.ActionContributorXML#setActiveEditor(org.eclipse.ui.IEditorPart)
-	 */
-	public void setActiveEditor(IEditorPart activeEditor) {
-		
-		super.setActiveEditor(activeEditor);
-		this.renameElementAction.setAction(getAction(getTextEditor(getActiveEditorPart()), IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT));
-		this.moveElementAction.setAction(getAction(getTextEditor(getActiveEditorPart()), IActionConstantsJSP.ACTION_NAME_MOVE_ELEMENT));
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.ui.actions.ActionContributorXML#setViewerSpecificContributionsEnabled(boolean)
-	 */
-	public void setViewerSpecificContributionsEnabled(boolean enabled) {
-		
-		super.setViewerSpecificContributionsEnabled(enabled);
-		this.renameElementAction.setEnabled(enabled);
-		this.moveElementAction.setEnabled(enabled);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/IHelpContextIds.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/IHelpContextIds.java
deleted file mode 100644
index ddb3871..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/IHelpContextIds.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.editor;
-
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-
-/**
- * Help context ids for the JSP Source Editor.
- * <p>
- * This interface contains constants only; it is not intended to be implemented.
- * </p>
- * 
- */
-public interface IHelpContextIds {
-	// org.eclipse.jst.jsp.ui.
-	public static final String PREFIX = JSPUIPlugin.ID + "."; //$NON-NLS-1$
-	
-	// JSP Source page editor
-	public static final String JSP_SOURCEVIEW_HELPID = PREFIX + "ejsp0000"; //$NON-NLS-1$
-	
-	// JSP Files Preference page
-	public static final String JSP_PREFWEBX_FILES_HELPID = PREFIX + "webx0050"; //$NON-NLS-1$
-	// JSP Styles Preference page
-	public static final String JSP_PREFWEBX_STYLES_HELPID = PREFIX + "webx0051"; //$NON-NLS-1$
-	// JSP Templates Preference page
-	public static final String JSP_PREFWEBX_TEMPLATES_HELPID = PREFIX + "webx0052"; //$NON-NLS-1$
-			
-	// JSP Fragment Property Page
-	public static final String JSP_FRAGMENT_HELPID = PREFIX + "jspf1000"; //$NON-NLS-1$
-	
-	// JSP Source Editor Context Menu
-	// Refactor Rename TODO infopop needed
-	// Refactor Move TODO infopop needed
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPEditorPluginImageHelper.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPEditorPluginImageHelper.java
deleted file mode 100644
index b659b9b..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPEditorPluginImageHelper.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.editor;
-
-import java.util.HashMap;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-
-/**
- * Helper class to handle images provided by this plug-in.
- * 
- * NOTE: For internal use only. For images used externally, please use the
- * Shared***ImageHelper class instead.
- * 
- * @author amywu
- */
-public class JSPEditorPluginImageHelper {
-	private final String PLUGINID = JSPUIPlugin.ID;
-	private static JSPEditorPluginImageHelper instance = null;
-
-	//	 save a descriptor for each image
-	private HashMap fImageDescRegistry = null;
-
-	/**
-	 * Gets the instance.
-	 * 
-	 * @return Returns a JSPEditorPluginImageHelper
-	 */
-	public synchronized static JSPEditorPluginImageHelper getInstance() {
-		if (instance == null)
-			instance = new JSPEditorPluginImageHelper();
-		return instance;
-	}
-
-	/**
-	 * Retrieves the image associated with resource from the image registry.
-	 * If the image cannot be retrieved, attempt to find and load the image at
-	 * the location specified in resource.
-	 * 
-	 * @param resource
-	 *            the image to retrieve
-	 * @return Image the image associated with resource or null if one could
-	 *         not be found
-	 */
-	public Image getImage(String resource) {
-		Image image = getImageRegistry().get(resource);
-		if (image == null) {
-			// create an image
-			image = createImage(resource);
-		}
-		return image;
-	}
-   
-    /**
-     * Retrieves the Image associated with ImageDescriptor from the image
-     * descriptor registry. If the Image cannot be retrieved, it is created
-     * from the ImageDescriptor
-     * 
-     * @param resource
-     *            the image descriptor to retrieve
-     * @return Image the associated with the ImageDescriptor or
-     *         the default "missing" image descriptor if one could not be
-     *         found
-     */
-    public Image getImage(ImageDescriptor descriptor) {
-        if (descriptor == null)
-            descriptor= ImageDescriptor.getMissingImageDescriptor();
-            
-        Image result= (Image)getImageDescriptorRegistry().get(descriptor);
-        if (result != null)
-            return result;
-        
-        result= descriptor.createImage();
-        if (result != null)
-            getImageDescriptorRegistry().put(descriptor, result);
-        return result;
-    }
-
-	/**
-	 * Retrieves the image descriptor associated with resource from the image
-	 * descriptor registry. If the image descriptor cannot be retrieved,
-	 * attempt to find and load the image descriptor at the location specified
-	 * in resource.
-	 * 
-	 * @param resource
-	 *            the image descriptor to retrieve
-	 * @return ImageDescriptor the image descriptor assocated with resource or
-	 *         the default "missing" image descriptor if one could not be
-	 *         found
-	 */
-	public ImageDescriptor getImageDescriptor(String resource) {
-		ImageDescriptor imageDescriptor = null;
-		Object o = getImageDescriptorRegistry().get(resource);
-		if (o == null) {
-			//create a descriptor
-			imageDescriptor = createImageDescriptor(resource);
-		}
-		else {
-			imageDescriptor = (ImageDescriptor) o;
-		}
-		return imageDescriptor;
-	}
-
-	/**
-	 * Returns the image descriptor registry for this plugin.
-	 * 
-	 * @return HashMap - image descriptor registry for this plugin
-	 */
-	private HashMap getImageDescriptorRegistry() {
-		if (fImageDescRegistry == null)
-			fImageDescRegistry = new HashMap();
-		return fImageDescRegistry;
-	}
-
-	/**
-	 * Returns the image registry for this plugin.
-	 * 
-	 * @return ImageRegistry - image registry for this plugin
-	 */
-	private ImageRegistry getImageRegistry() {
-		return JFaceResources.getImageRegistry();
-	}
-
-	/**
-	 * Creates an image from the given resource and adds the image to the
-	 * image registry.
-	 * 
-	 * @param resource
-	 * @return Image
-	 */
-	private Image createImage(String resource) {
-		ImageDescriptor desc = getImageDescriptor(resource);
-		Image image = null;
-		
-		if (desc != null) {
-			image = desc.createImage();
-			// dont add the missing image descriptor image to the image registry
-			if (!desc.equals(ImageDescriptor.getMissingImageDescriptor()))
-				getImageRegistry().put(resource, image);
-		}
-		return image;
-	}
-
-	/**
-	 * Creates an image descriptor from the given imageFilePath and adds the
-	 * image descriptor to the image descriptor registry. If an image
-	 * descriptor could not be created, the default "missing" image descriptor
-	 * is returned but not added to the image descriptor registry.
-	 * 
-	 * @param imageFilePath
-	 * @return ImageDescriptor image descriptor for imageFilePath or default
-	 *         "missing" image descriptor if resource could not be found
-	 */
-	private ImageDescriptor createImageDescriptor(String imageFilePath) {
-		ImageDescriptor imageDescriptor = AbstractUIPlugin.imageDescriptorFromPlugin(PLUGINID, imageFilePath);
-		if (imageDescriptor != null) {
-			getImageDescriptorRegistry().put(imageFilePath, imageDescriptor);
-		}
-		else {
-			imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
-		}
-
-		return imageDescriptor;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPEditorPluginImages.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPEditorPluginImages.java
deleted file mode 100644
index a60e6a8..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPEditorPluginImages.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.editor;
-
-/**
- * Bundle of most images used by the JSP Editor plug-in.
- */
-public class JSPEditorPluginImages { 	
-	public static final String IMG_OBJ_CLASS_OBJ = "icons/full/obj16/class_obj.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_GENERIC = "icons/full/obj16/tag-generic.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_JSP = "icons/full/obj16/tag-jsp.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_TEMPLATE = "icons/full/obj16/tag-template.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_PUBLIC = "icons/full/obj16/public.gif";			//$NON-NLS-1$
-    
-    public static final String FIELD_PROTECTED_OBJ = "icons/full/obj16/field_protected_obj.gif"; //$NON-NLS-1$
-    public static final String FIELD_PUBLIC_OBJ = "icons/full/obj16/field_public_obj.gif"; //$NON-NLS-1$
-    public static final String FIELD_DEFAULT_OBJ= "icons/full/obj16/field_default_obj.gif"; //$NON-NLS-1$
-    public static final String FIELD_PRIVATE_OBJ = "icons/full/obj16/field_private_obj.gif"; //$NON-NLS-1$
-    
-    public static final String DEFAULT_CO = "icons/full/obj16/default_co.gif"; //$NON-NLS-1$
-    public static final String PROTECTED_CO = "icons/full/obj16/protected_co.gif"; //$NON-NLS-1$
-    public static final String PUBLIC_CO = "icons/full/obj16/public_co.gif"; //$NON-NLS-1$
-    public static final String PRIVATE_CO = "icons/full/obj16/private_co.gif"; //$NON-NLS-1$
-    
-    public static final String INNERCLASS_DEFAULT_OBJ= "icons/full/obj16/innerclass_default_obj.gif"; //$NON-NLS-1$
-    public static final String INNERCLASS_PRIVATE_OBJ = "icons/full/obj16/innerclass_private_obj.gif"; //$NON-NLS-1$
-    public static final String INNERCLASS_PROTECTED_OBJ = "icons/full/obj16/innerclass_protected_obj.gif"; //$NON-NLS-1$
-    public static final String INNERCLASS_PUBLIC_OBJ = "icons/full/obj16/innerclass_public_obj.gif"; //$NON-NLS-1$
-    
-    public static final String INNERINTERFACE_DEFAULT_OBJ = "icons/full/obj16/innerinterface_default_obj.gif"; //$NON-NLS-1$
-    public static final String INNERINTERFACE_PRIVATE_OBJ = "icons/full/obj16/innerinterface_private_obj.gif"; //$NON-NLS-1$
-    public static final String INNERINTERFACE_PROTECTED_OBJ = "icons/full/obj16/innerinterface_protected_obj.gif"; //$NON-NLS-1$
-    public static final String INNERINTERFACE_PUBLIC_OBJ = "icons/full/obj16/innerinterface_public_obj.gif"; //$NON-NLS-1$
-    
-    public static final String PACKAGE_OBJ = "icons/full/obj16/package_obj.gif"; //$NON-NLS-1$
-    
-    public static final String LOCAL_VARIABLE_OBJ = "icons/full/obj16/localvariable_obj.gif"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPSourceEditingTextTools.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPSourceEditingTextTools.java
deleted file mode 100644
index 0d5334e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/JSPSourceEditingTextTools.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.editor;
-
-
-
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.core.JSP12Namespace;
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.ui.extensions.XMLSourceEditingTextTools;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * Implements SourceEditingTextTools interface
- */
-public class JSPSourceEditingTextTools extends XMLSourceEditingTextTools {
-
-	public String getPageLanguage(Node node) {
-		String language = null;
-		Document doc = null;
-		if (node.getNodeType() == Node.DOCUMENT_NODE) {
-			doc = (Document) node;
-		}
-		else {
-			doc = node.getOwnerDocument();
-		}
-		if (doc != null) {
-			if (doc instanceof XMLDocument) {
-				PageDirectiveAdapter adapter = (PageDirectiveAdapter) ((XMLDocument) doc).getAdapterFor(PageDirectiveAdapter.class);
-				if (adapter != null)
-					language = adapter.getLanguage();
-			}
-			else {
-				// iterate through all of the page directives
-				NodeList pageDirectives = doc.getElementsByTagName(JSP12Namespace.ElementName.DIRECTIVE_PAGE);
-				for (int i = 0; i < pageDirectives.getLength(); i++) {
-					Element pageDirective = (Element) pageDirectives.item(i);
-					String langValue = pageDirective.getAttribute(JSP11Namespace.ATTR_NAME_LANGUAGE);
-					// last one to declare a language wins
-					if (langValue != null)
-						language = langValue;
-				}
-			}
-		}
-		// if no language was specified anywhere, assume Java
-		if (language == null)
-			language = JSP11Namespace.ATTR_VALUE_JAVA;
-		return language;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/StructuredTextEditorJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/StructuredTextEditorJSP.java
deleted file mode 100644
index 2f3a068..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/editor/StructuredTextEditorJSP.java
+++ /dev/null
@@ -1,138 +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.jst.jsp.ui.internal.editor;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.GroupMarker;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.jst.jsp.ui.internal.IActionConstantsJSP;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPMoveElementAction;
-import org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPRenameElementAction;
-import org.eclipse.jst.jsp.ui.internal.java.search.JSPFindOccurrencesAction;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.texteditor.ITextEditorActionConstants;
-import org.eclipse.wst.html.ui.edit.ui.CleanupActionHTML;
-import org.eclipse.wst.html.ui.internal.search.HTMLFindOccurrencesAction;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.actions.ActionDefinitionIds;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-import org.eclipse.wst.sse.ui.internal.search.FindOccurrencesActionProvider;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.ui.actions.AddBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.actions.RemoveBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.actions.ToggleCommentActionXML;
-
-public class StructuredTextEditorJSP extends StructuredTextEditor {
-
-	protected void createActions() {
-		super.createActions();
-
-		ResourceBundle resourceBundle = SSEUIPlugin.getDefault().getResourceBundle();
-
-		Action action = new CleanupActionHTML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT, action);
-
-		action = new ToggleCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.TOGGLE_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT, action);
-
-		action = new AddBlockCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.ADD_BLOCK_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT, action);
-
-		action = new RemoveBlockCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.REMOVE_BLOCK_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT, action);
-
-		FindOccurrencesActionProvider foAction = new FindOccurrencesActionProvider(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES + DOT, this);
-		foAction.addAction(new HTMLFindOccurrencesAction(resourceBundle, "", this)); //$NON-NLS-1$
-		foAction.addAction(new JSPFindOccurrencesAction(resourceBundle, "", this)); //$NON-NLS-1$
-		foAction.setActionDefinitionId(ActionDefinitionIds.FIND_OCCURRENCES);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES, foAction);
-		markAsSelectionDependentAction(StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES, true);
-
-		JSPRenameElementAction renameAction = new JSPRenameElementAction(JSPUIPlugin.getDefault().getResourceBundle(), IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT + DOT, this);
-		setAction(IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT, renameAction);
-		markAsSelectionDependentAction(IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT, true);
-
-		JSPMoveElementAction moveAction = new JSPMoveElementAction(JSPUIPlugin.getDefault().getResourceBundle(), IActionConstantsJSP.ACTION_NAME_MOVE_ELEMENT + DOT, this);
-		setAction(IActionConstantsJSP.ACTION_NAME_MOVE_ELEMENT, moveAction);
-		markAsSelectionDependentAction(IActionConstantsJSP.ACTION_NAME_MOVE_ELEMENT, true);
-	}
-
-	/**
-	 * Uses the input's JSPTranslation to get currently selected Java
-	 * elements.
-	 * 
-	 * @return currently selected IJavaElements *
-	 * @deprecated - to be refactored and made to use the editor's selection
-	 *             provider
-	 */
-	public IJavaElement[] getJavaElementsForCurrentSelection() {
-
-		IJavaElement[] elements = new IJavaElement[0];
-		// get JSP translation object for this viewer's document
-		XMLModel xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());
-		try {
-			if (xmlModel != null) {
-				XMLDocument xmlDoc = xmlModel.getDocument();
-
-				JSPTranslationAdapter adapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-				if (adapter != null) {
-					JSPTranslation translation = adapter.getJSPTranslation();
-					Point selected = getSelectionRange();
-					elements = translation.getElementsFromJspRange(selected.x, selected.x + selected.y);
-				}
-			}
-		}
-		finally {
-			if (xmlModel != null)
-				xmlModel.releaseFromRead();
-		}
-		return elements;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.StructuredTextEditor#addContextMenuActions(org.eclipse.jface.action.IMenuManager)
-	 */
-	protected void addContextMenuActions(IMenuManager menu) {
-
-		super.addContextMenuActions(menu);
-
-		if (getSourceViewer().isEditable()) {
-			String label = JSPUIPlugin.getResourceString("%Refactor.label"); //$NON-NLS-1$ = "Format"
-			MenuManager subMenu = new MenuManager(label, "Refactor"); //$NON-NLS-1$
-			addAction(subMenu, IActionConstantsJSP.ACTION_NAME_RENAME_ELEMENT);
-			addAction(subMenu, IActionConstantsJSP.ACTION_NAME_MOVE_ELEMENT);
-			subMenu.add(new GroupMarker(GROUP_NAME_ADDITIONS));
-			menu.appendToGroup(ITextEditorActionConstants.GROUP_EDIT, subMenu);
-		}
-	}
-
-	protected void initializeEditor() {
-		super.initializeEditor();
-		setHelpContextId(IHelpContextIds.JSP_SOURCEVIEW_HELPID);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/format/FormattingStrategyJSPJava.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/format/FormattingStrategyJSPJava.java
deleted file mode 100644
index 2c9b02d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/format/FormattingStrategyJSPJava.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.format;
-
-import java.util.LinkedList;
-import java.util.Map;
-
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.ToolFactory;
-import org.eclipse.jdt.core.formatter.CodeFormatter;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.jface.text.TypedPosition;
-import org.eclipse.jface.text.formatter.ContextBasedFormattingStrategy;
-import org.eclipse.jface.text.formatter.FormattingContextProperties;
-import org.eclipse.jface.text.formatter.IFormattingContext;
-import org.eclipse.jst.jsp.core.internal.Logger;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationUtil;
-import org.eclipse.text.edits.MalformedTreeException;
-import org.eclipse.text.edits.TextEdit;
-
-
-public class FormattingStrategyJSPJava extends ContextBasedFormattingStrategy {
-
-	/** Documents to be formatted by this strategy */
-	private final LinkedList fDocuments = new LinkedList();
-	/** Partitions to be formatted by this strategy */
-	private final LinkedList fPartitions = new LinkedList();
-	JSPTranslation translation = null;
-
-	/**
-	 * Creates a new java formatting strategy.
-	 */
-	public FormattingStrategyJSPJava() {
-		super();
-	}
-
-	/*
-	 * @see org.eclipse.jface.text.formatter.ContextBasedFormattingStrategy#format()
-	 */
-	public void format() {
-		super.format();
-
-		final IDocument document = (IDocument) fDocuments.removeFirst();
-		final TypedPosition partition = (TypedPosition) fPartitions.removeFirst();
-
-		if (document != null && partition != null) {
-			try {
-
-				JSPTranslationUtil translationUtil = new JSPTranslationUtil(document);
-				ICompilationUnit cu = translationUtil.getCompilationUnit();
-				if (cu != null) {
-					String cuSource = cu.getSource();
-					TextEdit textEdit = formatString(CodeFormatter.K_COMPILATION_UNIT, cuSource, 0, TextUtilities.getDefaultLineDelimiter(document), getPreferences());
-
-					TextEdit jspEdit = translationUtil.getTranslation().getJspEdit(textEdit);
-					if (jspEdit != null && jspEdit.hasChildren())
-						jspEdit.apply(document);
-				}
-
-			}
-			catch (MalformedTreeException exception) {
-				Logger.logException(exception);
-			}
-			catch (BadLocationException exception) {
-				// Can only happen on concurrent document modification - log
-				// and bail out
-				Logger.logException(exception);
-			}
-			catch (JavaModelException exception) {
-				Logger.logException(exception);
-			}
-		}
-	}
-
-	/*
-	 * @see org.eclipse.jface.text.formatter.ContextBasedFormattingStrategy#formatterStarts(org.eclipse.jface.text.formatter.IFormattingContext)
-	 */
-	public void formatterStarts(final IFormattingContext context) {
-		super.formatterStarts(context);
-
-		fPartitions.addLast(context.getProperty(FormattingContextProperties.CONTEXT_PARTITION));
-		fDocuments.addLast(context.getProperty(FormattingContextProperties.CONTEXT_MEDIUM));
-	}
-
-	/*
-	 * @see org.eclipse.jface.text.formatter.ContextBasedFormattingStrategy#formatterStops()
-	 */
-	public void formatterStops() {
-		super.formatterStops();
-
-		fPartitions.clear();
-		fDocuments.clear();
-	}
-
-	public TextEdit formatString(int kind, String string, int indentationLevel, String lineSeparator, Map options) {
-		return ToolFactory.createCodeFormatter(options).format(kind, string, 0, string.length(), indentationLevel, lineSeparator);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/ExternalFileEditorInput.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/ExternalFileEditorInput.java
deleted file mode 100644
index ccb0734..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/ExternalFileEditorInput.java
+++ /dev/null
@@ -1,146 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import java.io.File;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-import org.eclipse.ui.editors.text.ILocationProvider;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * EditorInput for external files. Copied from
- * org.eclipse.ui.internal.editors.text.JavaFileEditorInput
- */
-class ExternalFileEditorInput implements IEditorInput, ILocationProvider {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-	
-	/**
-	 * The workbench adapter which simply provides the label.
-	 * 
-	 * @since 3.1
-	 */
-	private class WorkbenchAdapter implements IWorkbenchAdapter {
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-		 */
-		public Object[] getChildren(Object o) {
-			return null;
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-		 */
-		public ImageDescriptor getImageDescriptor(Object object) {
-			return null;
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-		 */
-		public String getLabel(Object o) {
-			return ((ExternalFileEditorInput) o).getName();
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-		 */
-		public Object getParent(Object o) {
-			return null;
-		}
-	}
-
-	private File fFile;
-	private WorkbenchAdapter fWorkbenchAdapter = new WorkbenchAdapter();
-
-	public ExternalFileEditorInput(File file) {
-		super();
-		fFile = file;
-		fWorkbenchAdapter = new WorkbenchAdapter();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#exists()
-	 */
-	public boolean exists() {
-		return fFile.exists();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		return null;
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getName()
-	 */
-	public String getName() {
-		return fFile.getName();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getPersistable()
-	 */
-	public IPersistableElement getPersistable() {
-		return null;
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getToolTipText()
-	 */
-	public String getToolTipText() {
-		return fFile.getAbsolutePath();
-	}
-
-	/*
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		if (ILocationProvider.class.equals(adapter))
-			return this;
-		if (IWorkbenchAdapter.class.equals(adapter))
-			return fWorkbenchAdapter;
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-
-	/*
-	 * @see org.eclipse.ui.editors.text.ILocationProvider#getPath(java.lang.Object)
-	 */
-	public IPath getPath(Object element) {
-		if (element instanceof ExternalFileEditorInput) {
-			ExternalFileEditorInput input = (ExternalFileEditorInput) element;
-			return Path.fromOSString(input.fFile.getAbsolutePath());
-		}
-		return null;
-	}
-
-	/*
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object o) {
-		if (o == this)
-			return true;
-
-		if (o instanceof ExternalFileEditorInput) {
-			ExternalFileEditorInput input = (ExternalFileEditorInput) o;
-			return fFile.equals(input.fFile);
-		}
-
-		return false;
-	}
-
-	/*
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return fFile.hashCode();
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/ExternalFileHyperlink.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/ExternalFileHyperlink.java
deleted file mode 100644
index 61d6be1..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/ExternalFileHyperlink.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import java.io.File;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IDE;
-
-/**
- * Hyperlink for external files.
- */
-class ExternalFileHyperlink implements IHyperlink {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-	
-	private IRegion fHyperlinkRegion;
-	private File fHyperlinkFile;
-
-	public ExternalFileHyperlink(IRegion region, File file) {
-		fHyperlinkFile = file;
-		fHyperlinkRegion = region;
-	}
-	
-	public IRegion getHyperlinkRegion() {
-		return fHyperlinkRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public void open() {
-		if (fHyperlinkFile != null) {
-			IEditorInput input = new ExternalFileEditorInput(fHyperlinkFile);
-			IEditorDescriptor descriptor;
-			try {
-				descriptor = IDE.getEditorDescriptor(input.getName());
-				if (descriptor != null) {
-					IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-					IDE.openEditor(page, input, descriptor.getId(), true);
-				}
-			}
-			catch (PartInitException e) {
-				Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/JSPJavaHyperlink.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/JSPJavaHyperlink.java
deleted file mode 100644
index 539f959..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/JSPJavaHyperlink.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.ui.JavaUI;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ui.IEditorPart;
-
-/**
- * Hyperlink for JSP Java elements
- */
-class JSPJavaHyperlink implements IHyperlink {
-	private IRegion fRegion;
-	private IJavaElement fElement;
-
-	public JSPJavaHyperlink(IRegion region, IJavaElement element) {
-		fRegion = region;
-		fElement = element;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkRegion()
-	 */
-	public IRegion getHyperlinkRegion() {
-		return fRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#open()
-	 */
-	public void open() {
-		try {
-			IEditorPart editor = JavaUI.openInEditor(fElement);
-			if (editor != null) {
-				JavaUI.revealInEditor(editor, fElement);
-			}
-		}
-		catch (Exception e) {
-			Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/JSPJavaHyperlinkDetector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/JSPJavaHyperlinkDetector.java
deleted file mode 100644
index f7a963c..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/JSPJavaHyperlinkDetector.java
+++ /dev/null
@@ -1,237 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IField;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.ILocalVariable;
-import org.eclipse.jdt.core.IMethod;
-import org.eclipse.jdt.core.ISourceRange;
-import org.eclipse.jdt.core.ISourceReference;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-
-/**
- * Detects hyperlinks in JSP Java content
- */
-public class JSPJavaHyperlinkDetector implements IHyperlinkDetector {
-
-	private IHyperlink createHyperlink(IJavaElement element, IRegion region, IDocument document) {
-		IHyperlink link = null;
-		if (region != null) {
-			// open local variable in the JSP file...
-			if (element instanceof ISourceReference) {
-				IFile file = null;
-				int jspOffset = 0;
-				IStructuredModel sModel = null;
-
-				// try to locate the file in the workspace
-				try {
-					sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-					if (sModel != null) {
-						String uriString = sModel.getResolver().getFileBaseLocation();
-						file = getFile(uriString);
-					}
-				}
-				finally {
-					if (sModel != null)
-						sModel.releaseFromRead();
-				}
-
-				// get Java range, translate coordinate to JSP
-
-				try {
-					ISourceRange range = null;
-					IJSPTranslation jspTranslation = getJSPTranslation(document);
-					if (jspTranslation != null) {
-						// link to local variable definitions
-						if (element instanceof ILocalVariable) {
-							range = ((ILocalVariable) element).getNameRange();
-						}
-						// linking to fields of the same compilation unit
-						else if (element.getElementType() == IJavaElement.FIELD) {
-							Object cu = ((IField) element).getCompilationUnit();
-							if (cu != null && cu.equals(jspTranslation.getCompilationUnit()))
-								range = ((ISourceReference) element).getSourceRange();
-						}
-						// linking to methods of the same compilation unit
-						else if (element.getElementType() == IJavaElement.METHOD) {
-							Object cu = ((IMethod) element).getCompilationUnit();
-							if (cu != null && cu.equals(jspTranslation.getCompilationUnit()))
-								range = ((ISourceReference) element).getSourceRange();
-						}
-					}
-
-					if (range != null && file != null && file.exists()) {
-						jspOffset = jspTranslation.getJspOffset(range.getOffset());
-						if (jspOffset >= 0) {
-							link = new WorkspaceFileHyperlink(region, file, new Region(jspOffset, range.getLength()));
-						}
-					}
-				}
-				catch (JavaModelException jme) {
-					Logger.log(Logger.WARNING_DEBUG, jme.getMessage(), jme);
-				}
-			}
-			if (link == null) {
-				link = new JSPJavaHyperlink(region, element);
-			}
-		}
-		return link;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlinkDetector#detectHyperlinks(org.eclipse.jface.text.ITextViewer,
-	 *      org.eclipse.jface.text.IRegion, boolean)
-	 */
-	public IHyperlink[] detectHyperlinks(ITextViewer textViewer, IRegion region, boolean canShowMultipleHyperlinks) {
-		List hyperlinks = new ArrayList(0);
-
-		if (region != null && textViewer != null) {
-			IDocument document = textViewer.getDocument();
-
-			// check and make sure this is a valid Java type
-			JSPTranslation jspTranslation = getJSPTranslation(document);
-			if (jspTranslation != null) {
-				// check if we are in JSP Java content
-				int javaOffset = jspTranslation.getJavaOffset(region.getOffset());
-				if (javaOffset > -1) {
-					// check that we are not in indirect Java content (like
-					// included files)
-					if (!jspTranslation.isIndirect(javaOffset)) {
-						// get Java elements
-						IJavaElement[] elements = jspTranslation.getElementsFromJspRange(region.getOffset(), region.getOffset() + region.getLength());
-						if (elements != null && elements.length > 0) {
-							// create a JSPJavaHyperlink for each Java element
-							for (int i = 0; i < elements.length; ++i) {
-								IJavaElement element = elements[i];
-
-								// find hyperlink range for Java element
-								IRegion hyperlinkRegion = selectWord(document, region.getOffset());
-								IHyperlink link = createHyperlink(element, hyperlinkRegion, document);
-								if (link != null) {
-									hyperlinks.add(link);
-								}
-							}
-						}
-					}
-				}
-			}
-		}
-
-		if (hyperlinks.size() == 0)
-			return null;
-		return (IHyperlink[]) hyperlinks.toArray(new IHyperlink[0]);
-	}
-
-	/**
-	 * Returns an IFile from the given uri if possible, null if cannot find
-	 * file from uri.
-	 * 
-	 * @param fileString
-	 *            file system path
-	 * @return returns IFile if fileString exists in the workspace
-	 */
-	private IFile getFile(String fileString) {
-		IFile file = null;
-
-		if (fileString != null) {
-			IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(fileString));
-			for (int i = 0; i < files.length && file == null; i++)
-				if (files[i].exists())
-					file = files[i];
-		}
-
-		return file;
-	}
-	/**
-	 * Get JSP translation object
-	 * 
-	 * @return JSPTranslation if one exists, null otherwise
-	 */
-	private JSPTranslation getJSPTranslation(IDocument document) {
-		JSPTranslation translation = null;
-
-		XMLModel xmlModel = null;
-		try {
-			xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			if (xmlModel != null) {
-				XMLDocument xmlDoc = xmlModel.getDocument();
-				JSPTranslationAdapter adapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-				if (adapter != null) {
-					translation = adapter.getJSPTranslation();
-				}
-			}
-		}
-		finally {
-			if (xmlModel != null)
-				xmlModel.releaseFromRead();
-		}
-		return translation;
-	}
-
-	/**
-	 * Java always selects word when defining region
-	 * 
-	 * @param document
-	 * @param anchor
-	 * @return IRegion
-	 */
-	private IRegion selectWord(IDocument document, int anchor) {
-
-		try {
-			int offset = anchor;
-			char c;
-
-			while (offset >= 0) {
-				c = document.getChar(offset);
-				if (!Character.isJavaIdentifierPart(c))
-					break;
-				--offset;
-			}
-
-			int start = offset;
-
-			offset = anchor;
-			int length = document.getLength();
-
-			while (offset < length) {
-				c = document.getChar(offset);
-				if (!Character.isJavaIdentifierPart(c))
-					break;
-				++offset;
-			}
-
-			int end = offset;
-
-			if (start == end)
-				return new Region(start, 0);
-
-			return new Region(start + 1, end - start - 1);
-
-		}
-		catch (BadLocationException x) {
-			return null;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibHyperlinkDetector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibHyperlinkDetector.java
deleted file mode 100644
index 9a814d3..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibHyperlinkDetector.java
+++ /dev/null
@@ -1,223 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import java.io.File;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
-import org.eclipse.jface.text.hyperlink.URLHyperlink;
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.jst.jsp.core.internal.contentmodel.ITaglibRecord;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TLDRecord;
-import org.eclipse.jst.jsp.core.internal.contentmodel.TaglibIndex;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * Detects hyperlinks for taglibs.
- */
-public class TaglibHyperlinkDetector implements IHyperlinkDetector {
-	private final String HTTP_PROTOCOL = "http://";//$NON-NLS-1$
-
-	public IHyperlink[] detectHyperlinks(ITextViewer textViewer, IRegion region, boolean canShowMultipleHyperlinks) {
-		IHyperlink hyperlink = null;
-
-		if (textViewer != null && region != null) {
-			IDocument doc = textViewer.getDocument();
-			if (doc != null) {
-				try {
-					// check if jsp tag/directive first
-					ITypedRegion partition = TextUtilities.getPartition(doc, IStructuredDocument.DEFAULT_STRUCTURED_PARTITIONING, region.getOffset(), false);
-					if (partition != null && partition.getType() == IJSPPartitions.JSP_DIRECTIVE) {
-						// check if jsp taglib directive
-						Node currentNode = getCurrentNode(doc, region.getOffset());
-						if (currentNode != null && currentNode.getNodeType() == Node.ELEMENT_NODE && JSP11Namespace.ElementName.DIRECTIVE_TAGLIB.equalsIgnoreCase(currentNode.getNodeName())) {
-							// get the uri attribute
-							Attr taglibNode = ((Element) currentNode).getAttributeNode(JSP11Namespace.ATTR_NAME_URI);
-							ITaglibRecord reference = TaglibIndex.resolve(getBaseLocationForTaglib(doc), taglibNode.getValue(), false);
-							if (reference != null) {
-								// handle taglibs
-								switch (reference.getRecordType()) {
-									case (ITaglibRecord.TLD) : {
-										TLDRecord record = (TLDRecord) reference;
-										String uriString = record.getLocation().toString();
-										IRegion hyperlinkRegion = getHyperlinkRegion(taglibNode);
-										hyperlink = createHyperlink(uriString, hyperlinkRegion, doc, taglibNode);
-									}
-										break;
-									case (ITaglibRecord.JAR) :
-									case (ITaglibRecord.URL) : {
-										IRegion hyperlinkRegion = getHyperlinkRegion(taglibNode);
-										hyperlink = new TaglibJarUriHyperlink(hyperlinkRegion, reference);
-									}
-								}
-							}
-						}
-					}
-				}
-				catch (BadLocationException e) {
-					Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-				}
-			}
-		}
-		if (hyperlink != null)
-			return new IHyperlink[]{hyperlink};
-		return null;
-	}
-
-	/**
-	 * Get the base location from the current model (if within workspace,
-	 * location is relative to workspace, otherwise, file system path)
-	 */
-	private String getBaseLocationForTaglib(IDocument document) {
-		String baseLoc = null;
-
-		// get the base location from the current model
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			if (sModel != null) {
-				baseLoc = sModel.getBaseLocation();
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-		return baseLoc;
-	}
-
-	// the below methods were copied from URIHyperlinkDetector
-
-	private IRegion getHyperlinkRegion(Node node) {
-		IRegion hyperRegion = null;
-
-		if (node != null) {
-			short nodeType = node.getNodeType();
-			if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-				// handle doc type node
-				XMLNode docNode = (XMLNode) node;
-				hyperRegion = new Region(docNode.getStartOffset(), docNode.getEndOffset() - docNode.getStartOffset());
-			}
-			else if (nodeType == Node.ATTRIBUTE_NODE) {
-				// handle attribute nodes
-				XMLAttr att = (XMLAttr) node;
-				// do not include quotes in attribute value region
-				int regOffset = att.getValueRegionStartOffset();
-				int regLength = att.getValueRegion().getTextLength();
-				String attValue = att.getValueRegionText();
-				if (StringUtils.isQuoted(attValue)) {
-					regOffset = ++regOffset;
-					regLength = regLength - 2;
-				}
-				hyperRegion = new Region(regOffset, regLength);
-			}
-		}
-		return hyperRegion;
-	}
-
-	/**
-	 * Returns an IFile from the given uri if possible, null if cannot find
-	 * file from uri.
-	 * 
-	 * @param fileString
-	 *            file system path
-	 * @return returns IFile if fileString exists in the workspace
-	 */
-	private IFile getFile(String fileString) {
-		IFile file = null;
-
-		if (fileString != null) {
-			IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(fileString));
-			for (int i = 0; i < files.length && file == null; i++)
-				if (files[i].exists())
-					file = files[i];
-		}
-
-		return file;
-	}
-
-	/**
-	 * Create the appropriate hyperlink
-	 * 
-	 * @param uriString
-	 * @param hyperlinkRegion
-	 * @return IHyperlink
-	 */
-	private IHyperlink createHyperlink(String uriString, IRegion hyperlinkRegion, IDocument document, Node node) {
-		IHyperlink link = null;
-
-		if (uriString != null) {
-			String temp = uriString.toLowerCase();
-			if (temp.startsWith(HTTP_PROTOCOL)) {
-				// this is a URLHyperlink since this is a web address
-				link = new URLHyperlink(hyperlinkRegion, uriString);
-			}
-
-			// try to locate the file in the workspace
-			IFile file = getFile(uriString);
-			if (file != null && file.exists()) {
-				// this is a WorkspaceFileHyperlink since file exists in
-				// workspace
-				link = new WorkspaceFileHyperlink(hyperlinkRegion, file);
-			}
-			else {
-				// this is an ExternalFileHyperlink since file does not exist
-				// in workspace
-				File externalFile = new File(uriString);
-				link = new ExternalFileHyperlink(hyperlinkRegion, externalFile);
-			}
-		}
-
-		return link;
-	}
-
-	/**
-	 * Returns the node the cursor is currently on in the document. null if no
-	 * node is selected
-	 * 
-	 * @param offset
-	 * @return Node either element, doctype, text, or null
-	 */
-	private Node getCurrentNode(IDocument document, int offset) {
-		// get the current node at the offset (returns either: element,
-		// doctype, text)
-		IndexedRegion inode = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			inode = sModel.getIndexedRegion(offset);
-			if (inode == null)
-				inode = sModel.getIndexedRegion(offset - 1);
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-
-		if (inode instanceof Node) {
-			return (Node) inode;
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibJarHyperlink.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibJarHyperlink.java
deleted file mode 100644
index f612725..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibJarHyperlink.java
+++ /dev/null
@@ -1,114 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import java.io.File;
-import java.io.InputStream;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipFile;
-
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IDE;
-
-/**
- * Hyperlink for taglib files in jars.
- */
-class TaglibJarHyperlink implements IHyperlink {
-	static class ZipStorage implements IStorage {
-		File fFile = null;
-		String fEntryName = null;
-
-		ZipStorage(File file, String entryName) {
-			fFile = file;
-			fEntryName = entryName;
-		}
-
-		public InputStream getContents() throws CoreException {
-			InputStream stream = null;
-			try {
-				ZipFile file = new ZipFile(fFile);
-				ZipEntry entry = file.getEntry(fEntryName);
-				stream = file.getInputStream(entry);
-			}
-			catch (Exception e) {
-				throw new CoreException(new Status(IStatus.ERROR, JSPUIPlugin.getDefault().getBundle().getSymbolicName(), IStatus.ERROR, getFullPath().toString(), e));
-			}
-			return stream;
-		}
-
-		public IPath getFullPath() {
-			return new Path(fFile.getAbsolutePath() + IPath.SEPARATOR + fEntryName);
-		}
-
-		public String getName() {
-			return fEntryName;
-		}
-
-		public boolean isReadOnly() {
-			return true;
-		}
-
-		public Object getAdapter(Class adapter) {
-			return null;
-		}
-	}
-
-	private IRegion fRegion;
-	private IPath fZipFilePath;
-
-	public TaglibJarHyperlink(IRegion region, IPath zipFilePath) {
-		fRegion = region;
-		fZipFilePath = zipFilePath;
-	}
-
-	public IRegion getHyperlinkRegion() {
-		return fRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public void open() {
-		IEditorInput input = new URLFileHyperlink.StorageEditorInput(new ZipStorage(fZipFilePath.toFile(), "META-INF/taglib.tld"));
-		IEditorDescriptor descriptor;
-		try {
-			descriptor = IDE.getEditorDescriptor(input.getName());
-			if (descriptor != null) {
-				IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-				IDE.openEditor(page, input, descriptor.getId(), true);
-			}
-		}
-		catch (PartInitException e) {
-			Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibJarUriHyperlink.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibJarUriHyperlink.java
deleted file mode 100644
index aab8f40..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/TaglibJarUriHyperlink.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jst.jsp.core.internal.contentmodel.ITaglibRecord;
-import org.eclipse.jst.jsp.core.internal.contentmodel.JarRecord;
-import org.eclipse.jst.jsp.core.internal.contentmodel.URLRecord;
-
-/**
- * Hyperlink for taglib files in jars or specified by urls.
- */
-class TaglibJarUriHyperlink implements IHyperlink {
-	private IRegion fRegion;
-	private ITaglibRecord fTaglibRecord;
-	private IHyperlink fHyperlink;
-
-	public TaglibJarUriHyperlink(IRegion region, ITaglibRecord record) {
-		fRegion = region;
-		fTaglibRecord = record;
-	}
-
-	private IHyperlink getHyperlink() {
-		if (fHyperlink == null && fTaglibRecord != null) {
-			switch (fTaglibRecord.getRecordType()) {
-				case (ITaglibRecord.JAR) : {
-					JarRecord record = (JarRecord) fTaglibRecord;
-					fHyperlink = new TaglibJarHyperlink(fRegion, record.getLocation());
-				}
-					break;
-				case (ITaglibRecord.URL) : {
-					URLRecord record = (URLRecord) fTaglibRecord;
-					fHyperlink = new URLFileHyperlink(fRegion, record.getURL());
-				}
-			}
-		}
-		return fHyperlink;
-	}
-
-	public IRegion getHyperlinkRegion() {
-		IRegion region = null;
-
-		IHyperlink link = getHyperlink();
-		if (link != null) {
-			region = link.getHyperlinkRegion();
-		}
-		return region;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public void open() {
-		IHyperlink link = getHyperlink();
-		if (link != null) {
-			link.open();
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/URIHyperlinkDetector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/URIHyperlinkDetector.java
deleted file mode 100644
index 15bbfb0..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/URIHyperlinkDetector.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.core.util.URIResolver;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Node;
-
-/**
- * Detects hyperlinks in tags. Includes detection in DOCTYPE and attribute
- * values. Resolves references to schemas, dtds, href, file, src, etc using the
- * Web Project Resolver.
- * 
- */
-public class URIHyperlinkDetector extends XMLHyperlinkDetector {
-	// copies of this class exist in:
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-
-	private final String SCHEMA_LOCATION = "schemaLocation"; //$NON-NLS-1$
-	private final String XMLNS = "xmlns"; //$NON-NLS-1$
-	private final String XSI_NAMESPACE_URI = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$
-
-	protected String getURIString(Node node, IDocument document) {
-		if (isXMLHandled(node))
-			return super.getURIString(node, document);
-		
-		String resolvedURI = null;
-		if (node.getNodeType() == Node.ATTRIBUTE_NODE) {
-			// handle attribute node
-			Attr attrNode = (Attr) node;
-			String attrValue = attrNode.getValue();
-			attrValue = StringUtils.strip(attrValue);
-
-			if (attrValue != null && attrValue.length() > 0) {
-				// currently using model's URI resolver until a better resolver is
-				// extended to common extensible URI resolver
-				// future_TODO: should use the new common extensible URI resolver
-				// when
-				// clients start implementing it
-				IStructuredModel sModel = null;
-				try {
-					sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-					if (sModel != null) {
-						URIResolver resolver = sModel.getResolver();
-						resolvedURI = resolver != null ? resolver.getLocationByURI(attrValue, true) : attrValue;
-					}
-				}
-				catch (Exception e) {
-					Logger.logException(e);
-				}
-				finally {
-					if (sModel != null)
-						sModel.releaseFromRead();
-				}
-			}
-		}
-		return resolvedURI;
-	}
-	
-	/**
-	 * Check if this is an xml-related node (schema location, doctype).
-	 * @param node
-	 * @return
-	 */
-	private boolean isXMLHandled(Node node) {
-		short nodeType = node.getNodeType();
-		if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-			return true;
-		} else if (nodeType == Node.ATTRIBUTE_NODE) {
-			Attr attrNode = (Attr) node;
-			String attrName = attrNode.getName();
-
-			// handle schemaLocation attribute
-			String prefix = DOMNamespaceHelper.getPrefix(attrName);
-			String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-			if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName))) {
-				return true;
-			} else if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attrNode))) && (SCHEMA_LOCATION.equals(unprefixedName))) {
-				return true;
-			}
-		}
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/URLFileHyperlink.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/URLFileHyperlink.java
deleted file mode 100644
index 092f6bd..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/URLFileHyperlink.java
+++ /dev/null
@@ -1,161 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import java.io.InputStream;
-import java.net.URL;
-
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IDE;
-
-/**
- * Hyperlink for URLs (opens in read-only mode)
- */
-class URLFileHyperlink implements IHyperlink {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-
-	static class StorageEditorInput implements IStorageEditorInput {
-		IStorage fStorage = null;
-
-		StorageEditorInput(IStorage storage) {
-			fStorage = storage;
-		}
-
-		public IStorage getStorage() throws CoreException {
-			return fStorage;
-		}
-
-		public boolean exists() {
-			return fStorage != null;
-		}
-
-		public ImageDescriptor getImageDescriptor() {
-			return null;
-		}
-
-		public String getName() {
-			return fStorage.getName();
-		}
-
-		public IPersistableElement getPersistable() {
-			return null;
-		}
-
-		public String getToolTipText() {
-			return fStorage.getFullPath().toString();
-		}
-
-		public Object getAdapter(Class adapter) {
-			return null;
-		}
-	}
-	
-	static class URLStorage implements IStorage {
-		URL fURL = null;
-
-		URLStorage(URL url) {
-			fURL = url;
-		}
-
-		public InputStream getContents() throws CoreException {
-			InputStream stream = null;
-			try {
-				stream = fURL.openStream();
-			}
-			catch (Exception e) {
-				throw new CoreException(new Status(IStatus.ERROR, JSPUIPlugin.getDefault().getBundle().getSymbolicName(), IStatus.ERROR, fURL.toString(), e));
-			}
-			return stream;
-		}
-
-		public IPath getFullPath() {
-			return new Path(fURL.toString());
-		}
-
-		public String getName() {
-			return new Path(fURL.getFile()).lastSegment();
-		}
-
-		public boolean isReadOnly() {
-			return true;
-		}
-
-		public Object getAdapter(Class adapter) {
-			return null;
-		}
-
-	}
-
-	private IRegion fRegion;
-	private URL fURL;
-
-	public URLFileHyperlink(IRegion region, URL url) {
-		fRegion = region;
-		fURL = url;
-	}
-
-	public IRegion getHyperlinkRegion() {
-		return fRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#open()
-	 */
-	public void open() {
-		if (fURL != null) {
-			IEditorInput input = new StorageEditorInput(new URLStorage(fURL));
-			IEditorDescriptor descriptor;
-			try {
-				descriptor = IDE.getEditorDescriptor(input.getName());
-				if (descriptor != null) {
-					IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-					IDE.openEditor(page, input, descriptor.getId(), true);
-				}
-			}
-			catch (PartInitException e) {
-				Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-			}
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/WorkspaceFileHyperlink.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/WorkspaceFileHyperlink.java
deleted file mode 100644
index 66c1725..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/WorkspaceFileHyperlink.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-
-/**
- * Hyperlink for files within the workspace. (As long as there is an IFile,
- * this can be used) Opens the default editor for the file.
- */
-class WorkspaceFileHyperlink implements IHyperlink {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-
-	private IRegion fRegion;
-	private IFile fFile;
-	private IRegion fHighlightRange;
-
-	public WorkspaceFileHyperlink(IRegion region, IFile file) {
-		fRegion = region;
-		fFile = file;
-	}
-
-	public WorkspaceFileHyperlink(IRegion region, IFile file, IRegion range) {
-		fRegion = region;
-		fFile = file;
-		fHighlightRange = range;
-	}
-
-	public IRegion getHyperlinkRegion() {
-		return fRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public void open() {
-		if (fFile != null && fFile.exists()) {
-			try {
-				IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-				IEditorPart editor = IDE.openEditor(page, fFile, true);
-				// highlight range in editor if possible
-				if (fHighlightRange != null && editor instanceof ITextEditor) {
-					((ITextEditor) editor).setHighlightRange(fHighlightRange.getOffset(), fHighlightRange.getLength(), true);
-				}
-			}
-			catch (PartInitException pie) {
-				Logger.log(Logger.WARNING_DEBUG, pie.getMessage(), pie);
-			}
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/XMLHyperlinkDetector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/XMLHyperlinkDetector.java
deleted file mode 100644
index c7cc7f7..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/hyperlink/XMLHyperlinkDetector.java
+++ /dev/null
@@ -1,472 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.hyperlink;
-
-import java.io.File;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
-import org.eclipse.jface.text.hyperlink.URLHyperlink;
-import org.eclipse.wst.common.uriresolver.URIResolverPlugin;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-/**
- * Detects hyperlinks in XML tags. Includes detection in DOCTYPE and attribute
- * values. Resolves references to schemas, dtds, etc using the Common URI
- * Resolver.
- * 
- */
-class XMLHyperlinkDetector implements IHyperlinkDetector {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-	
-	private final String NO_NAMESPACE_SCHEMA_LOCATION = "noNamespaceSchemaLocation"; //$NON-NLS-1$
-	private final String SCHEMA_LOCATION = "schemaLocation"; //$NON-NLS-1$
-	private final String XMLNS = "xmlns"; //$NON-NLS-1$
-	private final String XSI_NAMESPACE_URI = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$
-	private final String HTTP_PROTOCOL = "http://";//$NON-NLS-1$
-
-	public IHyperlink[] detectHyperlinks(ITextViewer textViewer, IRegion region, boolean canShowMultipleHyperlinks) {
-		// for now, only capable of creating 1 hyperlink
-		List hyperlinks = new ArrayList(0);
-
-		if (region != null && textViewer != null) {
-			IDocument document = textViewer.getDocument();
-			Node currentNode = getCurrentNode(document, region.getOffset());
-			if (currentNode != null) {
-				String uriString = null;
-				if (currentNode.getNodeType() == Node.DOCUMENT_TYPE_NODE) {
-					// doctype nodes
-					uriString = getURIString(currentNode, document);
-				}
-				else if (currentNode.getNodeType() == Node.ELEMENT_NODE) {
-					// element nodes
-					Attr currentAttr = getCurrentAttrNode(currentNode, region.getOffset());
-					if (currentAttr != null) {
-						// try to find link for current attribute
-						// resolve attribute value
-						uriString = getURIString(currentAttr, document);
-						// verify validity of uri string
-						if (!isValidURI(uriString))
-							// reset current attribute
-							currentAttr = null;
-					}
-					if (currentAttr == null) {
-						// try to find a linkable attribute within element
-						currentAttr = getLinkableAttr((Element) currentNode);
-						if (currentAttr != null) {
-							uriString = getURIString(currentAttr, document);
-						}
-					}
-					currentNode = currentAttr;
-				}
-				// try to create hyperlink from information gathered
-				if (uriString != null && currentNode != null && isValidURI(uriString)) {
-					IRegion hyperlinkRegion = getHyperlinkRegion(currentNode);
-					IHyperlink hyperlink = createHyperlink(uriString, hyperlinkRegion, document, currentNode);
-					if (hyperlink != null) {
-						hyperlinks.add(hyperlink);
-					}
-				}
-			}
-		}
-		if (hyperlinks.size() == 0)
-			return null;
-		return (IHyperlink[]) hyperlinks.toArray(new IHyperlink[0]);
-	}
-
-	/**
-	 * Create the appropriate hyperlink
-	 * 
-	 * @param uriString
-	 * @param hyperlinkRegion
-	 * @return IHyperlink
-	 */
-	private IHyperlink createHyperlink(String uriString, IRegion hyperlinkRegion, IDocument document, Node node) {
-		IHyperlink link = null;
-
-		if (uriString != null) {
-			String temp = uriString.toLowerCase();
-			if (temp.startsWith(HTTP_PROTOCOL)) {
-				// this is a URLHyperlink since this is a web address
-				link = new URLHyperlink(hyperlinkRegion, uriString);
-			}
-			else {
-				// try to locate the file in the workspace
-				IFile file = getFile(uriString);
-				if (file != null && file.exists()) {
-					// this is a WorkspaceFileHyperlink since file exists in
-					// workspace
-					link = new WorkspaceFileHyperlink(hyperlinkRegion, file);
-				}
-				else {
-					// this is an ExternalFileHyperlink since file does not
-					// exist
-					// in workspace
-					File externalFile = new File(uriString);
-					link = new ExternalFileHyperlink(hyperlinkRegion, externalFile);
-				}
-			}
-		}
-
-		return link;
-	}
-
-	private IRegion getHyperlinkRegion(Node node) {
-		IRegion hyperRegion = null;
-
-		if (node != null) {
-			short nodeType = node.getNodeType();
-			if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-				// handle doc type node
-				XMLNode docNode = (XMLNode) node;
-				hyperRegion = new Region(docNode.getStartOffset(), docNode.getEndOffset() - docNode.getStartOffset());
-			}
-			else if (nodeType == Node.ATTRIBUTE_NODE) {
-				// handle attribute nodes
-				XMLAttr att = (XMLAttr) node;
-				// do not include quotes in attribute value region
-				int regOffset = att.getValueRegionStartOffset();
-				int regLength = att.getValueRegion().getTextLength();
-				String attValue = att.getValueRegionText();
-				if (StringUtils.isQuoted(attValue)) {
-					regOffset = ++regOffset;
-					regLength = regLength - 2;
-				}
-				hyperRegion = new Region(regOffset, regLength);
-			}
-		}
-		return hyperRegion;
-	}
-
-	/**
-	 * Returns the URI string
-	 * 
-	 * @param node -
-	 *            assumes not null
-	 */
-	protected String getURIString(Node node, IDocument document) {
-		String resolvedURI = null;
-		// need the base location, publicId, and systemId for URIResolver
-		String baseLoc = null;
-		String publicId = null;
-		String systemId = null;
-
-		short nodeType = node.getNodeType();
-		// handle doc type node
-		if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-			baseLoc = getBaseLocation(document);
-			publicId = ((DocumentType) node).getPublicId();
-			systemId = ((DocumentType) node).getSystemId();
-		}
-		else if (nodeType == Node.ATTRIBUTE_NODE) {
-			// handle attribute node
-			Attr attrNode = (Attr) node;
-			baseLoc = getBaseLocation(document);
-			String attrName = attrNode.getName();
-			String attrValue = attrNode.getValue();
-			attrValue = StringUtils.strip(attrValue);
-
-			// handle schemaLocation attribute
-			String prefix = DOMNamespaceHelper.getPrefix(attrName);
-			String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-			if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName))) {
-				publicId = attrValue;
-				systemId = getLocationHint(attrNode.getOwnerElement(), publicId);
-			}
-			else if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attrNode))) && (SCHEMA_LOCATION.equals(unprefixedName))) {
-				// for now just use the first pair
-				// need to look into being more precise
-				StringTokenizer st = new StringTokenizer(attrValue);
-				publicId = st.hasMoreTokens() ? st.nextToken() : null;
-				systemId = st.hasMoreTokens() ? st.nextToken() : null;
-				// else check if xmlns publicId = value
-			}
-			else {
-				systemId = attrValue;
-			}
-		}
-
-		resolvedURI = resolveURI(baseLoc, publicId, systemId);
-		return resolvedURI;
-	}
-
-	/**
-	 * Returns an IFile from the given uri if possible, null if cannot find
-	 * file from uri.
-	 * 
-	 * @param fileString
-	 *            file system path
-	 * @return returns IFile if fileString exists in the workspace
-	 */
-	private IFile getFile(String fileString) {
-		IFile file = null;
-
-		if (fileString != null) {
-			IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(fileString));
-			for (int i = 0; i < files.length && file == null; i++)
-				if (files[i].exists())
-					file = files[i];
-		}
-
-		return file;
-	}
-
-	/**
-	 * Checks to see if the given attribute is openable. Attribute is openable
-	 * if it is a namespace declaration attribute or if the attribute value is
-	 * of type URI.
-	 * 
-	 * @param attr
-	 *            cannot be null
-	 * @param cmElement
-	 *            CMElementDeclaration associated with the attribute (can be
-	 *            null)
-	 * @return true if this attribute is "openOn-able" false otherwise
-	 */
-	private boolean isLinkableAttr(Attr attr, CMElementDeclaration cmElement) {
-		String attrName = attr.getName();
-		String prefix = DOMNamespaceHelper.getPrefix(attrName);
-		String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-		// determine if attribute is namespace declaration
-		if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName)))
-			return true;
-
-		// determine if attribute contains schema location
-		if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attr))) && ((SCHEMA_LOCATION.equals(unprefixedName)) || (NO_NAMESPACE_SCHEMA_LOCATION.equals(unprefixedName))))
-			return true;
-
-		// determine if attribute value is of type URI
-		if (cmElement != null) {
-			CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) cmElement.getAttributes().getNamedItem(attrName);
-			if ((attrDecl != null) && (attrDecl.getAttrType() != null) && (CMDataType.URI.equals(attrDecl.getAttrType().getDataTypeName()))) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Attempts to find an attribute within element that is openable.
-	 * 
-	 * @param element -
-	 *            cannot be null
-	 * @return Attr attribute that can be used for open on, null if no
-	 *         attribute could be found
-	 */
-	private Attr getLinkableAttr(Element element) {
-		CMElementDeclaration ed = getCMElementDeclaration(element);
-		// get the list of attributes for this node
-		NamedNodeMap attrs = element.getAttributes();
-		for (int i = 0; i < attrs.getLength(); ++i) {
-			// check if this attribute is "openOn-able"
-			Attr att = (Attr) attrs.item(i);
-			if (isLinkableAttr(att, ed)) {
-				return att;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Get the CMElementDeclaration for an element
-	 * 
-	 * @param element
-	 * @return CMElementDeclaration
-	 */
-	private CMElementDeclaration getCMElementDeclaration(Element element) {
-		CMElementDeclaration ed = null;
-
-		ModelQuery mq = ModelQueryUtil.getModelQuery(element.getOwnerDocument());
-		if (mq != null) {
-			ed = mq.getCMElementDeclaration(element);
-		}
-		return ed;
-	}
-
-	/**
-	 * Returns the attribute node within node at offset
-	 * 
-	 * @param node
-	 * @param offset
-	 * @return Attr
-	 */
-	private Attr getCurrentAttrNode(Node node, int offset) {
-		if ((node instanceof IndexedRegion) && ((IndexedRegion) node).contains(offset) && (node.hasAttributes())) {
-			NamedNodeMap attrs = node.getAttributes();
-			// go through each attribute in node and if attribute contains
-			// offset, return that attribute
-			for (int i = 0; i < attrs.getLength(); ++i) {
-				// assumption that if parent node is of type IndexedRegion,
-				// then its attributes will also be of type IndexedRegion
-				IndexedRegion attRegion = (IndexedRegion) attrs.item(i);
-				if (attRegion.contains(offset)) {
-					return (Attr) attrs.item(i);
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the node the cursor is currently on in the document. null if no
-	 * node is selected
-	 * 
-	 * @param offset
-	 * @return Node either element, doctype, text, or null
-	 */
-	private Node getCurrentNode(IDocument document, int offset) {
-		// get the current node at the offset (returns either: element,
-		// doctype, text)
-		IndexedRegion inode = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			inode = sModel.getIndexedRegion(offset);
-			if (inode == null)
-				inode = sModel.getIndexedRegion(offset - 1);
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-
-		if (inode instanceof Node) {
-			return (Node) inode;
-		}
-		return null;
-	}
-
-	/**
-	 * Get the base location from the current model (local file system)
-	 */
-	private String getBaseLocation(IDocument document) {
-		String baseLoc = null;
-
-		// get the base location from the current model
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			if (sModel != null) {
-				IPath location = new Path(sModel.getBaseLocation());
-				if (location.toFile().exists()) {
-					baseLoc = location.toString();
-				}
-				else {
-					IPath basePath = new Path(sModel.getBaseLocation());
-					if(basePath.segmentCount() > 1)
-						baseLoc = ResourcesPlugin.getWorkspace().getRoot().getFile(basePath).getLocation().toString();
-					else
-						baseLoc = ResourcesPlugin.getWorkspace().getRoot().getLocation().append(basePath).toString();
-				}
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-		return baseLoc;
-	}
-
-	/**
-	 * Checks whether the given uriString is really pointing to a file
-	 * 
-	 * @param uriString
-	 * @return boolean
-	 */
-	private boolean isValidURI(String uriString) {
-		boolean isValid = false;
-
-		if (uriString != null) {
-			// first do a quick check to see if this is some sort of http://
-			String tempString = uriString.toLowerCase();
-			if (tempString.startsWith(HTTP_PROTOCOL))
-				isValid = true;
-			else {
-				File file = new File(uriString);
-				try {
-					URI uri = new URI(uriString);
-					file = new File(uri);
-				}
-				catch (URISyntaxException e) {
-					// it is okay that a uri could not be created out of
-					// uriString
-				}
-				catch (IllegalArgumentException e) {
-					// it is okay that file could not be created out of uri
-				}
-				isValid = file.exists();
-			}
-		}
-		return isValid;
-	}
-
-	/**
-	 * Resolves the given URI information
-	 * 
-	 * @param baseLocation
-	 * @param publicId
-	 * @param systemId
-	 * @return String resolved uri.
-	 */
-	private String resolveURI(String baseLocation, String publicId, String systemId) {
-		// dont resolve if there's nothing to resolve
-		if ((baseLocation == null) && (publicId == null) && (systemId == null))
-			return null;
-		return URIResolverPlugin.createResolver().resolve(baseLocation, publicId, systemId);
-	}
-
-	/**
-	 * Find the location hint for the given namespaceURI if it exists
-	 * 
-	 * @param elementNode -
-	 *            cannot be null
-	 * @param namespaceURI -
-	 *            cannot be null
-	 * @return location hint (systemId) if it was found, null otherwise
-	 */
-	private String getLocationHint(Element elementNode, String namespaceURI) {
-		Attr schemaLocNode = elementNode.getAttributeNodeNS(XSI_NAMESPACE_URI, SCHEMA_LOCATION);
-		if (schemaLocNode != null) {
-			StringTokenizer st = new StringTokenizer(schemaLocNode.getValue());
-			while (st.hasMoreTokens()) {
-				String publicId = st.hasMoreTokens() ? st.nextToken() : null;
-				String systemId = st.hasMoreTokens() ? st.nextToken() : null;
-				// found location hint
-				if (namespaceURI.equalsIgnoreCase(publicId))
-					return systemId;
-			}
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/BasicRefactorSearchRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/BasicRefactorSearchRequestor.java
deleted file mode 100644
index acb29b0..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/BasicRefactorSearchRequestor.java
+++ /dev/null
@@ -1,358 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-import java.lang.reflect.InvocationTargetException;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.search.SearchDocument;
-import org.eclipse.jdt.core.search.SearchMatch;
-import org.eclipse.jdt.core.search.SearchRequestor;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.jst.jsp.core.internal.java.search.JavaSearchDocumentDelegate;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.DocumentChange;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.text.edits.MalformedTreeException;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.text.edits.ReplaceEdit;
-import org.eclipse.text.edits.TextEdit;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorReference;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.WorkspaceModifyOperation;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.document.DocumentReader;
-import org.eclipse.wst.sse.core.internal.encoding.CodedStreamCreator;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-/**
- * Creates document change(s) for an IJavaElement rename.
- * Changes are created for every type "match" in the workspace
- * @author pavery
- */
-public class BasicRefactorSearchRequestor extends SearchRequestor {
-	
-	/**
-	 * Workspace operation to perform save on model for updated documents.
-	 * Should only be done on models not open in an editor.
-	 */
-	private class SaveJspFileOp extends WorkspaceModifyOperation {
-		
-		private IDocument fJSPDoc = null;
-		private IFile fJSPFile = null;
-		
-		public SaveJspFileOp(IFile jspFile, IDocument jspDoc) {
-			this.fJSPDoc = jspDoc;
-			this.fJSPFile = jspFile;
-		}
-		
-		protected void execute(IProgressMonitor monitor) throws CoreException, InvocationTargetException, InterruptedException {
-			
-			// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3765
-			// save file w/ no intermediate model creation
-			
-			CodedStreamCreator codedStreamCreator = new CodedStreamCreator();
-			Reader reader = new DocumentReader(this.fJSPDoc);
-			codedStreamCreator.set(this.fJSPFile, reader);
-			
-			ByteArrayOutputStream codedByteStream = null;
-			InputStream codedStream = null;
-			try {
-				codedByteStream = codedStreamCreator.getCodedByteArrayOutputStream();
-				codedStream = new ByteArrayInputStream(codedByteStream.toByteArray());
-				if (this.fJSPFile.exists())
-					this.fJSPFile.setContents(codedStream, true, true, null);
-				else
-					this.fJSPFile.create(codedStream, false, null);
-				
-			} catch (CoreException e) {
-				Logger.logException(e);
-			} catch (IOException e) {
-				Logger.logException(e);
-			}
-			finally {
-				try {
-					if(codedByteStream != null)
-						codedByteStream.close();
-					if(codedStream != null)
-						codedStream.close();
-				}
-				catch (IOException e){
-					// unlikely
-				}
-			}
-		}
-	}
-	// end inner class SaveJspFileOp
-	
-	/**
-	 * Change class that wraps a text edit on the jsp document
-	 */
-	private class RenameChange extends DocumentChange {
-
-		private TextEdit fEdit = null;
-		private IFile fJSPFile = null;
-		private IDocument fJSPDoc = null;
-		private String fDescription = JSPUIPlugin.getResourceString("%BasicRefactorSearchRequestor.0"); //$NON-NLS-1$
-		
-		public RenameChange(IFile jspFile, IDocument jspDoc, TextEdit edit, String description) {
-			super("JSP Rename Change", jspDoc);
-			this.fEdit = edit;
-			this.fJSPFile = jspFile;
-			this.fJSPDoc = jspDoc;
-			this.fDescription = description;
-		}
-		
-		public RefactoringStatus isValid(IProgressMonitor pm)throws CoreException {
-			return new RefactoringStatus();
-		}
-		
-		public Change perform(IProgressMonitor pm) throws CoreException {
-			RenameChange undoChange = null;
-			try {
-				
-				if(!isOpenInEditor(this.fJSPDoc)) {
-					// apply edit to JSP doc AND save model
-					undoChange = new RenameChange(this.fJSPFile, this.fJSPDoc, this.fEdit.apply(fJSPDoc), this.fDescription);
-					saveFile(this.fJSPFile, this.fJSPDoc);
-				}
-				else {
-					// just apply edit to JSP document
-					undoChange = new RenameChange(this.fJSPFile, this.fJSPDoc, this.fEdit.apply(fJSPDoc), this.fDescription);
-				}
-				
-			} catch (MalformedTreeException e) {
-				Logger.logException(e);
-			} catch (BadLocationException e) {
-				Logger.logException(e);
-			}
-			return undoChange;
-		}
-		
-		/**
-		 * Performed in an operation since it modifies resources in the workspace
-		 * @param jspDoc
-		 * @throws CoreException
-		 */
-		private void saveFile(IFile jspFile, IDocument jspDoc) {
-			
-			SaveJspFileOp op  = new SaveJspFileOp(jspFile, jspDoc);
-			
-			try {
-				op.run(JSPSearchSupport.getInstance().getProgressMonitor());
-			} catch (InvocationTargetException e) {
-				Logger.logException(e);
-			} catch (InterruptedException e) {
-				Logger.logException(e);
-			}
-		}
-
-		/**
-		 * Checks if a document is open in an editor
-		 * @param jspDoc
-		 * @return
-		 */
-		private boolean isOpenInEditor(IDocument jspDoc) {
-			
-			IWorkbenchWindow[] windows = PlatformUI.getWorkbench().getWorkbenchWindows();
-			IWorkbenchWindow w = null;
-			for (int i = 0; i < windows.length; i++) {
-				
-				w = windows[i];
-				IWorkbenchPage page = w.getActivePage();
-				if(page != null) {
-					
-					IEditorReference[] references = page.getEditorReferences();
-					IEditorPart editor = null;
-					Object o = null;
-					IDocument doc = null;
-					for (int j = 0; j < references.length; j++) {
-						
-						editor = references[j].getEditor(true);
-						// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3764
-						// use adapter to get ITextEditor (for things like page designer)
-						o = editor.getAdapter(ITextEditor.class);
-						if(o != null && o instanceof StructuredTextEditor) {
-							
-							doc = ((StructuredTextEditor)o).getDocument();
-							if(doc != null && doc.equals(jspDoc)) {
-								return true;
-							}
-						}
-					}
-				}
-			}
-			return false;
-		}
-
-		public String getName() {
-			return this.fDescription;
-		}
-		
-		public Object getModifiedElement() {
-			return getElement();
-		}
-	}
-	// end inner class RenameChange
-	
-	
-	/** The type being renamed (the old type)*/
-	IJavaElement fElement = null;
-	/** The new name of the type being renamed*/
-	private String fNewName = ""; //$NON-NLS-1$
-	/** maps a JSPSearchDocument path -> MultiTextEdit for the java file*/
-	private HashMap fSearchDocPath2JavaEditMap = null;
-	
-	public BasicRefactorSearchRequestor(IJavaElement element, String newName) {
-		this.fNewName = newName;
-		this.fElement = element;
-		this.fSearchDocPath2JavaEditMap = new HashMap();
-	}
-	
-	public IJavaElement getElement() {
-		return this.fElement;
-	}
-
-	/**
-	 * @return the new name for the Type
-	 */
-	public String getNewName() {
-		return this.fNewName;
-	}
-	
-	/**
-	 * @see org.eclipse.jdt.core.search.SearchRequestor#acceptSearchMatch(org.eclipse.jdt.core.search.SearchMatch)
-	 */
-	public void acceptSearchMatch(SearchMatch javaMatch) throws CoreException {
-		
-		String matchDocumentPath = javaMatch.getResource().getFullPath().toString();
-		SearchDocument searchDoc = JSPSearchSupport.getInstance().getSearchDocument(matchDocumentPath);
-	
-		if (searchDoc != null && searchDoc instanceof JavaSearchDocumentDelegate) {
-	
-			String renameText = getRenameText((JavaSearchDocumentDelegate)searchDoc, javaMatch);
-			
-			// add it for the correct document
-			addJavaEdit(searchDoc.getPath(), new ReplaceEdit(javaMatch.getOffset(), javaMatch.getLength(), renameText));
-		}
-	}
-	
-	/**
-	 * @param searchDoc
-	 * @return
-	 */
-	protected String getRenameText(JavaSearchDocumentDelegate searchDoc, SearchMatch javaMatch) {
-		return getNewName();
-	}
-
-	/**
-	 * Adds to the multi edit for a give java document.
-	 * @param javaDocument
-	 * @param javaEdit
-	 */
-	private void addJavaEdit(String searchDocPath, ReplaceEdit javaEdit) {
-		
-		Object o = this.fSearchDocPath2JavaEditMap.get(searchDocPath);
-		if(o != null) {
-
-			MultiTextEdit multi = (MultiTextEdit)o;
-			multi.addChild(javaEdit);
-		}
-		else {
-			// use a multi edit so doc position offsets get updated automatically
-			// when adding multiple child edits
-			MultiTextEdit multi = new MultiTextEdit();
-			multi.addChild(javaEdit);
-			this.fSearchDocPath2JavaEditMap.put(searchDocPath, multi);
-		}
-	}
-	
-	/**
-	 * 
-	 * @return all JSP changes for the search matches for the given Type
-	 */
-	public Change[] getChanges() {
-		
-		JSPSearchSupport support = JSPSearchSupport.getInstance();
-		List changes = new ArrayList();
-		Iterator keys = fSearchDocPath2JavaEditMap.keySet().iterator();
-		String searchDocPath = null;
-		SearchDocument delegate = null;
-		
-		while(keys.hasNext()) {
-			// create on the fly
-			searchDocPath = (String)keys.next();
-			MultiTextEdit javaEdit = (MultiTextEdit)fSearchDocPath2JavaEditMap.get(searchDocPath);
-			delegate = support.getSearchDocument(searchDocPath);
-			
-			if(delegate != null && delegate instanceof JavaSearchDocumentDelegate) {
-				JavaSearchDocumentDelegate javaDelegate = (JavaSearchDocumentDelegate)delegate;
-				changes.add(createChange(javaDelegate, javaDelegate.getJspTranslation().getJspEdit(javaEdit)));
-			}
-		}
-		return (Change[])changes.toArray(new Change[changes.size()]);
-	}
-	
-	private Change createChange(JavaSearchDocumentDelegate searchDoc, TextEdit edit) {
-		
-		IDocument doc = searchDoc.getJspTranslation().getJspDocument();
-		String file = searchDoc.getFile().getName();
-		String description = getDescription();
-		try {
-			// document lines are 0 based
-			String lineNumber = Integer.toString(doc.getLineOfOffset(edit.getOffset()) + 1);
-			description += " " + MessageFormat.format(JSPUIPlugin.getResourceString("%BasicRefactorSearchRequestor.1"), new String[]{file, lineNumber}); //$NON-NLS-1$
-		} 
-		catch (BadLocationException e) {
-			Logger.logException(e);
-		}
-		return new RenameChange(searchDoc.getFile(), doc, edit, description);
-	}
-	
-	// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3205
-	// only relevant for IType refactorings
-	protected boolean isFullyQualified(String matchText) {
-		if(getElement() instanceof IType) {
-			String pkg = ((IType)getElement()).getPackageFragment().getElementName();
-			return matchText.startsWith(pkg);
-		}
-		return false;
-	}
-
-	/**
-	 * Subclasses should override to better describe the change.
-	 * @return
-	 */
-	protected String getDescription() {
-		return ""; //$NON-NLS-1$
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPJavaSelectionProvider.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPJavaSelectionProvider.java
deleted file mode 100644
index 9b32c35..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPJavaSelectionProvider.java
+++ /dev/null
@@ -1,58 +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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-
-class JSPJavaSelectionProvider {
-	static IJavaElement[] getSelection(ITextEditor textEditor) {
-		IJavaElement[] elements = null;
-
-		IDocument document = textEditor.getDocumentProvider().getDocument(textEditor.getEditorInput());
-		ISelection selection = textEditor.getSelectionProvider().getSelection();
-		if (selection instanceof ITextSelection) {
-			ITextSelection textSelection = (ITextSelection) selection;
-			// get the JSP translation object for this editor's document
-			XMLModel xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			try {
-				if (xmlModel != null) {
-					XMLDocument xmlDoc = xmlModel.getDocument();
-
-					JSPTranslationAdapter adapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-					if (adapter != null) {
-						JSPTranslation translation = adapter.getJSPTranslation();
-						elements = translation.getElementsFromJspRange(textSelection.getOffset(), textSelection.getOffset() + textSelection.getLength());
-					}
-				}
-			}
-			finally {
-				if (xmlModel != null)
-					xmlModel.releaseFromRead();
-			}
-		}
-		if (elements == null) {
-			elements = new IJavaElement[0];
-		}
-		return elements;
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameChange.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameChange.java
deleted file mode 100644
index ac0d947..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameChange.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IMethod;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchScope;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-
-/**
- * @author pavery
- */
-public class JSPMethodRenameChange extends Change {
-
-	public static Change[] createChangesFor(IMethod method, String newName) {
-		JSPSearchSupport support = JSPSearchSupport.getInstance();
-		
-		// should be handled by JSPIndexManager
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3036
-		// support.indexWorkspaceAndWait();
-		
-		BasicRefactorSearchRequestor requestor = new JSPMethodRenameRequestor(method, newName);
-		support.searchRunnable(method, new JSPSearchScope(), requestor);
-
-		return requestor.getChanges();
-	}
-
-	public String getName() {
-		return JSPUIPlugin.getResourceString("%JSP_changes"); //$NON-NLS-1$
-	}
-
-	public void initializeValidationData(IProgressMonitor pm) {
-		// pa_TODO implement
-		// must be implemented to decide correct value of isValid
-	}
-
-	public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException {
-		// pa_TODO implement
-		// This method must ensure that the change object is still valid.
-		// This is in particular interesting when performing an undo change
-		// since the workspace could have changed since the undo change has
-		// been created.
-		return new RefactoringStatus();
-	}
-
-	public Change perform(IProgressMonitor pm) throws CoreException {
-		// pa_TODO return the "undo" change here
-		return null;
-	}
-
-	public Object getModifiedElement() {
-		// pa_TODO Auto-generated method stub
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameParticipant.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameParticipant.java
deleted file mode 100644
index 600a74a..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameParticipant.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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 6, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IMethod;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.CompositeChange;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.ltk.core.refactoring.participants.RenameParticipant;
-
-/**
- * @author pavery
- */
-public class JSPMethodRenameParticipant extends RenameParticipant {
-	
-	private IMethod fMethod = null;
-	
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#initialize(java.lang.Object)
-	 */
-	protected boolean initialize(Object element) {
-		if(element instanceof IMethod) {
-			this.fMethod = (IMethod) element;
-			return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#getName()
-	 */
-	public String getName() {
-		String name = ""; //$NON-NLS-1$
-		if(this.fMethod != null) {
-			try {
-				name = this.fMethod.getSource();
-			} catch (JavaModelException e) {
-				Logger.logException(e);
-			}
-		}
-		return name;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#checkConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
-	 */
-	public RefactoringStatus checkConditions(IProgressMonitor pm, CheckConditionsContext context) {
-		// TODO Auto-generated method stub
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#createChange(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public Change createChange(IProgressMonitor pm) throws CoreException {
-		Change[] changes = JSPMethodRenameChange.createChangesFor(this.fMethod, getArguments().getNewName());
-		CompositeChange multiChange = null; 
-			if(changes.length > 0)
-				multiChange  = new CompositeChange(JSPUIPlugin.getResourceString("%JSP_changes"), changes); //$NON-NLS-1$
-		return multiChange;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameRequestor.java
deleted file mode 100644
index c417700..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMethodRenameRequestor.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import java.text.MessageFormat;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.search.SearchMatch;
-import org.eclipse.jst.jsp.core.internal.java.search.JavaSearchDocumentDelegate;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-
-/**
- * @author pavery
- */
-public class JSPMethodRenameRequestor extends BasicRefactorSearchRequestor {
-	
-	public JSPMethodRenameRequestor(IJavaElement element, String newName) {
-		super(element, newName);
-	}
-	
-	protected String getRenameText(JavaSearchDocumentDelegate searchDoc, SearchMatch javaMatch) {
-		
-		String javaText = searchDoc.getJspTranslation().getJavaText();
-		String methodText = javaText.substring(javaMatch.getOffset(), javaMatch.getOffset() + javaMatch.getLength());
-		String methodSuffix = methodText.substring(methodText.indexOf("(")); //$NON-NLS-1$
-		return getNewName() + methodSuffix;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.jsp.ui.internal.java.refactoring.BasicRefactorSearchRequestor#getDescription()
-	 */
-	protected String getDescription() {
-		
-		String methodName = getElement().getElementName();
-		String newName = getNewName();
-		String description = MessageFormat.format(JSPUIPlugin.getResourceString("%BasicRefactorSearchRequestor.3"), new String[]{methodName, newName}); //$NON-NLS-1$
-		return description;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMoveElementAction.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMoveElementAction.java
deleted file mode 100644
index ce2c101..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPMoveElementAction.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import java.util.ResourceBundle;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.internal.corext.codemanipulation.CodeGenerationSettings;
-import org.eclipse.jdt.internal.corext.refactoring.reorg.JavaMoveProcessor;
-import org.eclipse.jdt.internal.corext.util.CodeFormatterUtil;
-import org.eclipse.jdt.internal.ui.refactoring.RefactoringMessages;
-import org.eclipse.jdt.internal.ui.refactoring.actions.RefactoringStarter;
-import org.eclipse.jdt.internal.ui.refactoring.reorg.CreateTargetQueries;
-import org.eclipse.jdt.internal.ui.refactoring.reorg.ReorgMoveWizard;
-import org.eclipse.jdt.internal.ui.refactoring.reorg.ReorgQueries;
-import org.eclipse.jdt.ui.PreferenceConstants;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ltk.core.refactoring.participants.MoveRefactoring;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.TextEditorAction;
-import org.eclipse.wst.sse.ui.util.PlatformStatusLineUtil;
-
-/**
- * A TextEditorAction that launches JDT move element wizard
- * 
- * Still relies heavily on internal API
- * will change post 3.0 with public move support
- * https://bugs.eclipse.org/bugs/show_bug.cgi?id=61817 
- * @author pavery
- */
-public class JSPMoveElementAction extends TextEditorAction {
-
-	public JSPMoveElementAction(ResourceBundle bundle, String prefix, ITextEditor editor) {
-
-		super(bundle, prefix, editor);
-	}
-	
-	public boolean isEnabled() {
-		// always enabled, just print appropriate status to window
-		// if for some reason the action can't run (like multiple java elements selected)
-		
-		return true;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.TextEditorAction#update()
-	 */
-	public void update() {
-		super.update();
-		PlatformStatusLineUtil.clearStatusLine();
-	}
-	
-	private IJavaElement[] getSelectedElements() {
-		
-		IJavaElement[] elements = new IJavaElement[0];
-		if (getTextEditor() != null)
-			elements = JSPJavaSelectionProvider.getSelection(getTextEditor());
-		return elements;
-	}
-	
-	private IResource[] getResources(IJavaElement[] elements) {
-
-		IResource[] resources = new IResource[elements.length];
-		for (int i = 0; i < elements.length; i++) {
-			try {
-				resources[i] = elements[i].getPrimaryElement().getCorrespondingResource();//elements[i].getResource();
-			} catch (JavaModelException e) {
-				Logger.logException(e);
-			}
-		}
-		return resources;
-	}
-
-	/**
-	 * will change post 3.0 with public move support
-	 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=61817
-	 */
-	public void run() {
-		IJavaElement[] elements = getSelectedElements();
-		if(elements.length > 0) {	
-			
-			// need to check if it's movable
-			try {
-				JavaMoveProcessor processor= JavaMoveProcessor.create(getResources(elements), elements/*, getCodeGenerationSettings()*/);
-				Shell parent = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
-				
-				MoveRefactoring refactoring= new MoveRefactoring(processor);
-			
-				RefactoringWizard wizard= createWizard(refactoring);
-				
-				
-				/*
-				 * We want to get the shell from the refactoring dialog but it's not
-				 * known at this point, so we pass the wizard and then, once the dialog
-				 * is open, we will have access to its shell.
-				 */
-				
-				processor.setCreateTargetQueries(new CreateTargetQueries(wizard));
-				processor.setReorgQueries(new ReorgQueries(wizard));
-				
-				new RefactoringStarter().activate(refactoring, wizard, parent, 
-					RefactoringMessages.getString("OpenRefactoringWizardAction.refactoring"), //$NON-NLS-1$ 
-					true);
-				
-				PlatformStatusLineUtil.clearStatusLine();
-				
-			} catch (JavaModelException e) {
-				Logger.logException(e);
-			}
-		}
-		else  {
-			PlatformStatusLineUtil.displayErrorMessage(JSPUIPlugin.getResourceString("%JSPMoveElementAction.0")); //$NON-NLS-1$
-		}
-	}
-
-	// these methods are copied from internal JDT class org.eclipse.jdt.internal.ui.preferences.JavaPreferencesSettings
-	/**
-	 * will change post 3.0 with public move support
-	 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=61817
-	 */
-	public static CodeGenerationSettings getCodeGenerationSettings() {
-		
-		IPreferenceStore store= PreferenceConstants.getPreferenceStore();
-		
-		CodeGenerationSettings res= new CodeGenerationSettings();
-		res.createComments= store.getBoolean(PreferenceConstants.CODEGEN_ADD_COMMENTS);
-		res.useKeywordThis= store.getBoolean(PreferenceConstants.CODEGEN_KEYWORD_THIS);
-		res.importOrder= getImportOrderPreference(store);
-		res.importThreshold= getImportNumberThreshold(store);
-		res.tabWidth= CodeFormatterUtil.getTabWidth();
-		return res;
-	}
-
-	/**
-	 * will change post 3.0 with public move support
-	 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=61817
-	 */
-	public static int getImportNumberThreshold(IPreferenceStore prefs) {
-		int threshold= prefs.getInt(PreferenceConstants.ORGIMPORTS_ONDEMANDTHRESHOLD);
-		if (threshold < 0) {
-			threshold= Integer.MAX_VALUE;
-		}
-		return threshold;
-	}
-
-	/**
-	 * will change post 3.0 with public move support
-	 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=61817
-	 */
-	public static String[] getImportOrderPreference(IPreferenceStore prefs) {
-		String str= prefs.getString(PreferenceConstants.ORGIMPORTS_IMPORTORDER);
-		if (str != null) {
-			return unpackList(str, ";"); //$NON-NLS-1$
-		}
-		return new String[0];
-	}
-
-	/**
-	 * will change post 3.0 with public move support
-	 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=61817
-	 */
-	private static String[] unpackList(String str, String separator) {
-		StringTokenizer tok= new StringTokenizer(str, separator); //$NON-NLS-1$
-		int nTokens= tok.countTokens();
-		String[] res= new String[nTokens];
-		for (int i= 0; i < nTokens; i++) {
-			res[i]= tok.nextToken().trim();
-		}
-		return res;
-	}
-	
-	/**
-	 * will change post 3.0 with public move support
-	 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=61817
-	 */
-	private RefactoringWizard createWizard(MoveRefactoring refactoring) {
-		return new ReorgMoveWizard(refactoring);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameChange.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameChange.java
deleted file mode 100644
index cc81a7b..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameChange.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchScope;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-
-/**
- * @author pavery
- */
-public class JSPPackageRenameChange extends Change {
-
-	public static Change[] createChangesFor(IPackageFragment pkg, String newName) {
-		JSPSearchSupport support = JSPSearchSupport.getInstance();
-		
-		// should be handled by JSPIndexManager
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3036
-		//support.indexWorkspaceAndWait();
-		
-		BasicRefactorSearchRequestor requestor = new JSPPackageRenameRequestor(pkg, newName);
-		support.searchRunnable(pkg, new JSPSearchScope(), requestor);
-
-		return requestor.getChanges();
-	}
-
-	public String getName() {
-		return JSPUIPlugin.getResourceString("%JSP_changes"); //$NON-NLS-1$
-	}
-
-	public void initializeValidationData(IProgressMonitor pm) {
-		// pa_TODO implement
-		// must be implemented to decide correct value of isValid
-	}
-
-	public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException {
-		// pa_TODO implement
-		// This method must ensure that the change object is still valid.
-		// This is in particular interesting when performing an undo change
-		// since the workspace could have changed since the undo change has
-		// been created.
-		return new RefactoringStatus();
-	}
-
-	public Change perform(IProgressMonitor pm) throws CoreException {
-		// TODO return the "undo" change here
-		return null;
-	}
-
-	public Object getModifiedElement() {
-		
-		//return this.pkg;
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameParticipant.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameParticipant.java
deleted file mode 100644
index 719c3d7..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameParticipant.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.CompositeChange;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.ltk.core.refactoring.participants.RenameParticipant;
-
-/**
- * Remember to change the plugin.xml file if the name of this class changes.
- * 
- * @author pavery
- */
-public class JSPPackageRenameParticipant extends RenameParticipant {
-
-	private IPackageFragment fPkg = null;
-	
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#initialize(java.lang.Object)
-	 */
-	protected boolean initialize(Object element) {
-		if(element instanceof IPackageFragment) {
-			this.fPkg = (IPackageFragment) element;
-			return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#getName()
-	 */
-	public String getName() {
-		String name = ""; //$NON-NLS-1$
-		if(this.fPkg != null) {
-			name = this.fPkg.getElementName();
-		}
-		return name;
-	}
-
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#checkConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
-	 */
-	public RefactoringStatus checkConditions(IProgressMonitor pm, CheckConditionsContext context) {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#createChange(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public Change createChange(IProgressMonitor pm) throws CoreException {
-		 Change[] changes = JSPPackageRenameChange.createChangesFor(this.fPkg, getArguments().getNewName());
-		 CompositeChange multiChange = null;
-		 if(changes.length > 0)
-			multiChange = new CompositeChange(JSPUIPlugin.getResourceString("%JSP_changes"), changes); //$NON-NLS-1$
-	     return multiChange;
-	}
-	
-	
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameRequestor.java
deleted file mode 100644
index 3e79baa..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPPackageRenameRequestor.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-
-/**
- * Overrides get description
- * @author pavery
- */
-public class JSPPackageRenameRequestor extends BasicRefactorSearchRequestor {
-	
-	/**
-	 * Element is the old package.  newName is the new package name.
-	 * @param element
-	 * @param newName
-	 */
-	public JSPPackageRenameRequestor(IJavaElement element, String newName) {
-		super(element, newName);
-	}
-	
-	/*
-	 * @see org.eclipse.jst.jsp.ui.internal.java.refactoring.BasicRefactorSearchRequestor#getDescription()
-	 */
-	protected String getDescription() {
-		String packageName = getElement().getElementName();
-		String newName = getNewName();
-		String description = JSPUIPlugin.getResourceString("%BasicRefactorSearchRequestor.5", new String[]{packageName, newName}); //$NON-NLS-1$
-		return description;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPRenameElementAction.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPRenameElementAction.java
deleted file mode 100644
index e4c772d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPRenameElementAction.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IMethod;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.ui.refactoring.RenameSupport;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.TextEditorAction;
-import org.eclipse.wst.sse.ui.util.PlatformStatusLineUtil;
-
-/**
- * A TextEditorAction that launches JDT rename element wizard
- * 
- * @author pavery
- */
-public class JSPRenameElementAction extends TextEditorAction {
-
-	public JSPRenameElementAction(ResourceBundle bundle, String prefix, ITextEditor editor) {
-
-		super(bundle, prefix, editor);
-	}
-	
-	public boolean isEnabled() {
-		// always enabled, just print appropriate status to window
-		// if for some reason the action can't run (like multiple java elements selected)
-		return true;
-	}
-	
-	/**
-	 * @see org.eclipse.ui.texteditor.TextEditorAction#update()
-	 */
-	public void update() {
-		super.update();
-		PlatformStatusLineUtil.clearStatusLine();
-	}
-	
-	private IJavaElement getSelectedElement() {
-		IJavaElement element = null;
-		if (getTextEditor() != null) {
-			IJavaElement[] elements = JSPJavaSelectionProvider.getSelection(getTextEditor());
-			if (elements.length == 1)
-				element = elements[0];
-		}
-		return element;
-	}
-	
-	public void run() {
-		IJavaElement element = getSelectedElement();
-		if(element != null) {
-			RenameSupport renameSupport = null;
-			try {
-				switch(element.getElementType()) {
-					case IJavaElement.TYPE:
-						renameSupport= RenameSupport.create((IType)element, element.getElementName(), RenameSupport.UPDATE_REFERENCES);
-						break;
-					case IJavaElement.METHOD:
-						renameSupport= RenameSupport.create((IMethod)element, element.getElementName(), RenameSupport.UPDATE_REFERENCES);
-						break;
-					case IJavaElement.PACKAGE_FRAGMENT:
-						renameSupport= RenameSupport.create((IPackageFragment)element, element.getElementName(), RenameSupport.UPDATE_REFERENCES);
-						break;
-				}
-				if(renameSupport != null) {
-					renameSupport.openDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
-					PlatformStatusLineUtil.clearStatusLine();
-				}
-			}
-			catch (CoreException e) {
-				Logger.logException(e);
-			}
-		}
-		else  {
-			PlatformStatusLineUtil.displayErrorMessage(JSPUIPlugin.getResourceString("%JSPRenameElementAction.0")); //$NON-NLS-1$
-			PlatformStatusLineUtil.addOneTimeClearListener();
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveChange.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveChange.java
deleted file mode 100644
index dba8009..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveChange.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchScope;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-
-/**
- * @author pavery
- */
-public class JSPTypeMoveChange extends Change {
-
-	public static Change[] createChangesFor(IType type, String newName) {
-		
-		JSPSearchSupport support = JSPSearchSupport.getInstance();
-		// should be handled by JSPIndexManager
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3036
-		// support.indexWorkspaceAndWait();
-		
-		JSPTypeMoveRequestor requestor = new JSPTypeMoveRequestor(type, newName);
-		support.searchRunnable(type, new JSPSearchScope(), requestor);
-
-		return requestor.getChanges();
-	}
-
-	public String getName() {
-		return JSPUIPlugin.getResourceString("%JSP_changes"); //$NON-NLS-1$
-	}
-
-	public void initializeValidationData(IProgressMonitor pm) {
-		// pa_TODO implement
-		// must be implemented to decide correct value of isValid
-	}
-
-	public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException {
-		// pa_TODO implement
-		// This method must ensure that the change object is still valid.
-		// This is in particular interesting when performing an undo change
-		// since the workspace could have changed since the undo change has
-		// been created.
-		return new RefactoringStatus();
-	}
-
-	public Change perform(IProgressMonitor pm) throws CoreException {
-		// TODO return the "undo" change here
-		return null;
-	}
-
-	public Object getModifiedElement() {
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveParticipant.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveParticipant.java
deleted file mode 100644
index a3322c2..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveParticipant.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.CompositeChange;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.ltk.core.refactoring.participants.MoveParticipant;
-
-/**
- * @author pavery
- */
-public class JSPTypeMoveParticipant extends MoveParticipant {
-	
-	IType fType = null;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#initialize(java.lang.Object)
-	 */
-	protected boolean initialize(Object element) {
-		
-		if(element instanceof IType) {
-			this.fType = (IType)element;
-			return true;
-		}
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#getName()
-	 */
-	public String getName() {
-		
-		String name = ""; //$NON-NLS-1$
-		if(this.fType != null)
-			name = this.fType.getElementName();
-		return name;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#checkConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
-	 */
-	public RefactoringStatus checkConditions(IProgressMonitor pm, CheckConditionsContext context) {
-		// TODO Auto-generated method stub
-		return null;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#createChange(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public Change createChange(IProgressMonitor pm) throws CoreException {
-		
-		if(pm != null && pm.isCanceled())
-			return null;
-		
-		CompositeChange multiChange = null; 
-		Object dest = getArguments().getDestination();
-		Change[] changes = JSPTypeMoveChange.createChangesFor(fType, ((IPackageFragment)dest).getElementName());
-		
-		if(dest instanceof IPackageFragment && changes.length > 0)
-			multiChange = new CompositeChange(JSPUIPlugin.getResourceString("%JSP_changes"), changes); //$NON-NLS-1$
-		
-		return multiChange;
-	}
-	
-	
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveRequestor.java
deleted file mode 100644
index 01aaa31..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeMoveRequestor.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import java.text.MessageFormat;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.search.SearchMatch;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.search.JavaSearchDocumentDelegate;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-
-/**
- * @author pavery
- */
-public class JSPTypeMoveRequestor extends BasicRefactorSearchRequestor {
-
-	/**
-	 * @param element
-	 * @param newName
-	 */
-	public JSPTypeMoveRequestor(IJavaElement element, String newPackage) {
-		super(element, newPackage);
-	}
-	
-	protected String getRenameText(JavaSearchDocumentDelegate searchDoc, SearchMatch javaMatch) {
-		
-		String renameText = getElement().getElementName();
-
-		JSPTranslation trans = searchDoc.getJspTranslation();
-		String matchText = trans.getJavaText().substring(javaMatch.getOffset(), javaMatch.getOffset() + javaMatch.getLength());
-		
-		// if it's an import or jsp:useBean, we need to add the package name as well
-		if(trans.isImport(javaMatch.getOffset()) || trans.isUseBean(javaMatch.getOffset()) || isFullyQualified(matchText)) {
-			if(!getNewName().equals("")) //$NON-NLS-1$
-				// getNewName() is the pkg name
-				renameText = getNewName() + "." + renameText; //$NON-NLS-1$
-		}
-		return renameText;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.jsp.ui.internal.java.refactoring.BasicRefactorSearchRequestor#getDescription()
-	 */
-	protected String getDescription() {
-		
-		String typeName = getElement().getElementName();
-		String newName = getNewName();
-		String description = MessageFormat.format(JSPUIPlugin.getResourceString("%BasicRefactorSearchRequestor.2"), new String[]{typeName, newName}); //$NON-NLS-1$
-		return description;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameChange.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameChange.java
deleted file mode 100644
index 802acbf..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameChange.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchScope;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-
-
-/**
- * @author pavery
- */
-public class JSPTypeRenameChange extends Change {
-
-	public static Change[] createChangesFor(IType type, String newName) {
-		JSPSearchSupport support = JSPSearchSupport.getInstance();
-		
-		// should be handled by JSPIndexManager
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3036
-		// support.indexWorkspaceAndWait();
-	
-		
-		JSPTypeRenameRequestor requestor = new JSPTypeRenameRequestor(type, newName);
-		support.searchRunnable(type, new JSPSearchScope(), requestor);
-
-		return requestor.getChanges();
-	}
-
-	public String getName() {
-		return JSPUIPlugin.getResourceString("%JSP_changes"); //$NON-NLS-1$
-	}
-
-	public void initializeValidationData(IProgressMonitor pm) {
-		// pa_TODO implement
-		// must be implemented to decide correct value of isValid
-	}
-
-	public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException {
-		// pa_TODO implement
-		// This method must ensure that the change object is still valid.
-		// This is in particular interesting when performing an undo change
-		// since the workspace could have changed since the undo change has
-		// been created.
-		return new RefactoringStatus();
-	}
-
-	public Change perform(IProgressMonitor pm) throws CoreException {
-		// TODO return the "undo" change here
-		return null;
-	}
-
-	public Object getModifiedElement() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameParticipant.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameParticipant.java
deleted file mode 100644
index 409dd80..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameParticipant.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.CompositeChange;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.ltk.core.refactoring.participants.RenameParticipant;
-
-/**
- * Remember to change the plugin.xml file if the name of this class changes.
- * 
- * @author pavery
- */
-public class JSPTypeRenameParticipant extends RenameParticipant {
-
-	private IType fType = null;
-	
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#initialize(java.lang.Object)
-	 */
-	protected boolean initialize(Object element) {
-		if(element instanceof IType) {
-			this.fType = (IType) element;
-			return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#getName()
-	 */
-	public String getName() {
-		String name = ""; //$NON-NLS-1$
-		if(this.fType != null) {
-			try {
-				name = this.fType.getSource();
-			} catch (JavaModelException e) {
-				Logger.logException(e);
-			}
-		}
-		return name;
-	}
-
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#checkConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
-	 */
-	public RefactoringStatus checkConditions(IProgressMonitor pm, CheckConditionsContext context) {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#createChange(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public Change createChange(IProgressMonitor pm) throws CoreException {
-		Change[] changes =  JSPTypeRenameChange.createChangesFor(fType, getArguments().getNewName());
-		CompositeChange multiChange = null;
-		if(changes.length > 0)
-			multiChange = new CompositeChange(JSPUIPlugin.getResourceString("%JSP_changes"), changes); //$NON-NLS-1$
-		return multiChange;
-	}
-	
-	
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameRequestor.java
deleted file mode 100644
index e94ff7f..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/JSPTypeRenameRequestor.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.refactoring;
-
-import java.text.MessageFormat;
-
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.search.SearchMatch;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.search.JavaSearchDocumentDelegate;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-
-/**
- * Creates document change(s) for a type rename.
- * Changes are created for every type "match" in the workspace
- * @author pavery
- */
-public class JSPTypeRenameRequestor extends BasicRefactorSearchRequestor {
-
-	public JSPTypeRenameRequestor(IType type, String newName) {
-		super(type, newName);
-	}
-	
-	private IType getType() {
-		return (IType)getElement();
-	}
-	
-	protected String getRenameText(JavaSearchDocumentDelegate searchDoc, SearchMatch javaMatch) {
-		
-		String renameText = getNewName();
-		
-		String pkg = getType().getPackageFragment().getElementName();
-		JSPTranslation trans = searchDoc.getJspTranslation();
-		String matchText = trans.getJavaText().substring(javaMatch.getOffset(), javaMatch.getOffset() + javaMatch.getLength());
-		
-		// if it's an import or jsp:useBean or fully qualified type, we need to add the package name as well
-		if(trans.isImport(javaMatch.getOffset()) || /*trans.isUseBean(javaMatch.getOffset()) ||*/ isFullyQualified(matchText)) {
-			if(!pkg.equals("")) //$NON-NLS-1$
-				renameText = pkg + "." + renameText; //$NON-NLS-1$
-		}
-		return renameText;
-	}
-	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.jsp.ui.internal.java.refactoring.BasicRefactorSearchRequestor#getDescription()
-	 */
-	protected String getDescription() {
-		
-		String typeName = getElement().getElementName();
-		String newName = getNewName();
-		String description = MessageFormat.format(JSPUIPlugin.getResourceString("%BasicRefactorSearchRequestor.4"), new String[]{typeName, newName}); //$NON-NLS-1$
-		return description;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/RenameChange.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/RenameChange.java
deleted file mode 100644
index 3f873c9..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/refactoring/RenameChange.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.java.refactoring;
-
-public class RenameChange {
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/BasicJSPSearchRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/BasicJSPSearchRequestor.java
deleted file mode 100644
index 4744294..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/BasicJSPSearchRequestor.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.search;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.search.SearchDocument;
-import org.eclipse.jdt.core.search.SearchMatch;
-import org.eclipse.jdt.core.search.SearchParticipant;
-import org.eclipse.jdt.core.search.SearchRequestor;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.jst.jsp.core.internal.java.search.JavaSearchDocumentDelegate;
-
-/**
- * Accepts matches from JSPSearchSupport.search(...) request.
- * Adapts the results from java to JSP and displays in the SearchResultView.
- * 
- * @author pavery
- */
-public class BasicJSPSearchRequestor extends SearchRequestor {
-
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("com.ibm.sse.model.jsp/debug/jspsearch"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Maps java search coordinates to corresponding JSP coordinates.
-	 * Adds the matches to the Search Results view.
-	 * @see org.eclipse.jdt.core.search.SearchRequestor#acceptSearchMatch(org.eclipse.jdt.core.search.SearchMatch)
-	 */
-	public void acceptSearchMatch(SearchMatch match) throws CoreException {
-
-		if(JSPSearchSupport.getInstance().isCanceled())
-			return;
-				
-		String matchDocumentPath = match.getResource().getFullPath().toString();
-		SearchDocument searchDoc = JSPSearchSupport.getInstance().getSearchDocument(matchDocumentPath);
-		
-		if (searchDoc != null && searchDoc instanceof JavaSearchDocumentDelegate) {
-			JavaSearchDocumentDelegate javaSearchDoc = (JavaSearchDocumentDelegate)searchDoc;
-			int jspStart = javaSearchDoc.getJspOffset(match.getOffset());
-			int jspEnd = javaSearchDoc.getJspOffset(match.getOffset() + match.getLength());
-
-			JSPTranslation trans = javaSearchDoc.getJspTranslation();
-			String jspText = trans.getJspText();
-			String javaText = javaSearchDoc.getJavaText();
-
-			if (DEBUG) 
-				displayDebugInfo(match, jspStart, jspEnd, jspText, javaText);
-		
-			if (jspStart > -1 && jspEnd > -1)
-				addSearchMatch(new Document(trans.getJspText()), javaSearchDoc.getFile(), jspStart, jspEnd, jspText);
-		}
-	}
-
-	/**
-	 * @param searchDoc
-	 * @param jspStart
-	 * @param jspEnd
-	 * @param jspTranslation
-	 * @param jspText
-	 * @throws CoreException
-	 */
-	protected void addSearchMatch(IDocument jspDocument, IFile jspFile, int jspStart, int jspEnd, String jspText) {
-		// implement in subclass
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jdt.core.search.SearchRequestor#beginReporting()
-	 */
-	public void beginReporting() {
-
-		if (DEBUG)
-			System.out.println("JSP Search requestor: beginReporting()"); //$NON-NLS-1$
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.search.SearchRequestor#endReporting()
-	 */
-	public void endReporting() {
-
-		if (DEBUG)
-			System.out.println("JSP Search requestor: endReporting()"); //$NON-NLS-1$
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.search.SearchRequestor#enterParticipant(org.eclipse.jdt.core.search.SearchParticipant)
-	 */
-	public void enterParticipant(SearchParticipant participant) {
-
-		if (DEBUG)
-			System.out.println("JSP Search requestor: enterParticipant()"); //$NON-NLS-1$
-	}
-
-	/**
-	 * @see org.eclipse.jdt.core.search.SearchRequestor#exitParticipant(org.eclipse.jdt.core.search.SearchParticipant)
-	 */
-	public void exitParticipant(SearchParticipant participant) {
-
-		if (DEBUG)
-			System.out.println("JSP Search requestor: exitParticipant()"); //$NON-NLS-1$
-	}
-
-	/**
-	 * For debug.
-	 * @param origMatch
-	 * @param jspStart
-	 * @param jspEnd
-	 * @param jspText
-	 * @param javaText
-	 */
-	private void displayDebugInfo(SearchMatch origMatch, int jspStart, int jspEnd, String jspText, String javaText) {
-
-		if (origMatch == null || jspStart == -1 || jspEnd == -1 || jspEnd < jspStart || jspText == null || javaText == null)
-			return;
-
-		System.out.println("+-----------------------------------------+"); //$NON-NLS-1$
-		System.out.println("accept possible match [jspDoc: " + origMatch.getResource().getFullPath().toOSString() + " " + origMatch.getOffset() + ":" + origMatch.getOffset() + origMatch.getLength() + "]?"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-		System.out.println("match info:"); //$NON-NLS-1$
-		System.out.println("the java text is:" + javaText.substring(origMatch.getOffset(), origMatch.getOffset() + origMatch.getLength())); //$NON-NLS-1$
-		System.out.println("java search match translates to jsp coords [start: " + jspStart + " end:" + jspEnd + "]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		System.out.println(" the jsp text is:" + jspText.substring(jspStart, jspEnd)); //$NON-NLS-1$
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPFindOccurrencesAction.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPFindOccurrencesAction.java
deleted file mode 100644
index fc643b3..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPFindOccurrencesAction.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.search;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.search.IJavaSearchConstants;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.search.ui.ISearchQuery;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.search.BasicFindOccurrencesAction;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-/**
- * <p>
- * Finds occurrences of Java elements in a JSP file using JSPSearchSupport.
- * </p>
- * 
- * @author pavery
- */
-public class JSPFindOccurrencesAction extends BasicFindOccurrencesAction implements IJavaSearchConstants {
-
-	private IFile fJSPFile = null;
-
-	public JSPFindOccurrencesAction(ResourceBundle bundle, String prefix, ITextEditor editor) {
-
-		super(bundle, prefix, editor);
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.internal.search.BasicFindOccurrencesAction#getSearchQuery()
-	 */
-	public ISearchQuery getSearchQuery() {
-		return new JSPSearchQuery(getJspFile(), getJavaElement());
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.internal.search.BasicFindOccurrencesAction#update()
-	 */
-	public void update() {
-
-		super.update();
-
-		if (isEnabled()) {
-			// do java element check here...
-			// should already be in a jsp/java partition
-			IJavaElement[] elements = getJavaElementsForCurrentSelection();
-			// we can only find occurrences of one element
-			setEnabled(elements.length == 1);
-		}
-	}
-
-	/**
-	 * uses JSPTranslation to get currently selected Java elements.
-	 * 
-	 * @return currently selected IJavaElements
-	 */
-	public IJavaElement[] getJavaElementsForCurrentSelection() {
-
-		IJavaElement[] elements = new IJavaElement[0];
-		StructuredTextEditor editor = (StructuredTextEditor) getTextEditor();
-		// get JSP translation object for this viewer's document
-		IStructuredModel model = editor.getModel();
-		if (model != null && model instanceof XMLModel) {
-			XMLDocument xmlDoc = ((XMLModel) model).getDocument();
-			JSPTranslationAdapter adapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-			if (adapter != null) {
-				JSPTranslation translation = adapter.getJSPTranslation();
-				Point selected = editor.getSelectionRange();
-				elements = translation.getElementsFromJspRange(selected.x, selected.x + selected.y);
-			}
-		}
-		return elements;
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.internal.search.BasicFindOccurrencesAction#getPartitionTypes()
-	 */
-	public String[] getPartitionTypes() {
-		return new String[]{IJSPPartitions.JSP_DEFAULT, IJSPPartitions.JSP_CONTENT_JAVA};
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.internal.search.BasicFindOccurrencesAction#getRegionTypes()
-	 */
-	public String[] getRegionTypes() {
-		return new String[]{XMLRegionContext.BLOCK_TEXT, DOMJSPRegionContexts.JSP_CONTENT};
-	}
-
-	private IFile getJspFile() {
-		if (this.fJSPFile == null)
-			this.fJSPFile = ((StructuredTextEditor) getTextEditor()).getFileInEditor();
-		return this.fJSPFile;
-	}
-
-	private IJavaElement getJavaElement() {
-		IJavaElement[] elements = getJavaElementsForCurrentSelection();
-		return elements.length > 0 ? elements[0] : null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPOccurrencesSearchResult.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPOccurrencesSearchResult.java
deleted file mode 100644
index f1d4f8e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPOccurrencesSearchResult.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.search;
-
-import org.eclipse.search.ui.ISearchQuery;
-import org.eclipse.search.ui.text.Match;
-import org.eclipse.wst.sse.ui.internal.search.OccurrencesSearchResult;
-
-/**
- * @author pavery
- */
-public class JSPOccurrencesSearchResult extends OccurrencesSearchResult {
-	
-	public JSPOccurrencesSearchResult(ISearchQuery query) {
-		super(query);
-	}
-	
-	public Match[] getMatches() {
-		return ((JSPSearchQuery)getQuery()).getMatches();
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchQuery.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchQuery.java
deleted file mode 100644
index 55f0dce..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchQuery.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.search;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-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.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.search.SearchDocument;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchScope;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.search.ui.ISearchResult;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.search.BasicSearchQuery;
-
-/**
- * Implementation of <code>ISearchQuery</code> for <code>IJavaElement</code>s in JSP files.
- * 
- * @author pavery
- */
-public class JSPSearchQuery extends BasicSearchQuery {
-	
-	private class SingleFileSearch implements IWorkspaceRunnable {
-
-		public void run(IProgressMonitor monitor) throws CoreException {
-
-			if (getFile() != null && getJavaElement() != null) {
-				
-				JSPSearchSupport support = JSPSearchSupport.getInstance();
-				// index the file
-				SearchDocument delegate =  support.addJspFile(getFile());
-				String scopePath = delegate.getPath();
-				JSPSearchScope singleFileScope = new JSPSearchScope(new String[]{getFile().getFullPath().toString(), scopePath});
-				
-				// perform a search
-				// by passing in this jsp search query, requstor can add matches
-				support.searchRunnable(getJavaElement(), singleFileScope, new JSPSingleFileSearchRequestor(getInstance()));
-			}
-		}
-	}
-	
-	/** the IJavaElement we are searching for in the file **/
-	private IJavaElement fElement = null;
-	
-	public JSPSearchQuery(IFile file, IJavaElement element) {
-		super(file);
-		this.fElement = element;
-	}
-	
-	public IJavaElement getJavaElement() {
-		return this.fElement;
-	}
-	
-	// for access by inner class
-	public JSPSearchQuery getInstance() {
-		return this;
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.internal.search.BasicSearchQuery#getRunnable()
-	 */
-	protected IWorkspaceRunnable getRunnable() {
-		return new SingleFileSearch();
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.internal.search.BasicSearchQuery#doQuery()
-	 */
-	protected IStatus doQuery() {
-		
-		clearMatches();
-		
-		IStatus status = Status.OK_STATUS;
-		try {
-			JSPSearchSupport support = JSPSearchSupport.getInstance();
-			// index the file
-			SearchDocument delegate =  support.addJspFile(getFile());
-			String scopePath = delegate.getPath();
-			JSPSearchScope singleFileScope = new JSPSearchScope(new String[]{getFile().getFullPath().toString(), scopePath});
-			
-			// perform a searchs
-			// by passing in this jsp search query, requstor can add matches
-			support.searchRunnable(getJavaElement(), singleFileScope, new JSPSingleFileSearchRequestor(getInstance()));
-		}
-		catch (Exception e){
-			status = new Status(IStatus.ERROR, "org.eclipse.wst.sse.ui", IStatus.OK, "", null); //$NON-NLS-1$	//$NON-NLS-2$
-		}
-		return status;
-	}
-	
-	/**
-	 * @see org.eclipse.search.ui.ISearchQuery#getLabel()
-	 */
-	public String getLabel() {
-		String[] args = {getSearchText(), getOccurrencesCountText(), getFilename()};
-		return SSEUIPlugin.getResourceString("%OccurrencesSearchQuery.0", args);
-	}
-
-	private String getFilename() {
-		String filename = SSEUIPlugin.getResourceString("%OccurrencesSearchQuery.2"); //$NON-NLS-1$
-		if(getFile() != null)
-			filename = getFile().getName();
-		return filename;
-	}
-	
-	private String getOccurrencesCountText() {
-		String count = ""; //$NON-NLS-1$
-		// pa_TODO make dynamic
-		return count;
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.internal.search.BasicSearchQuery#getSearchText()
-	 */
-	protected String getSearchText() {
-		return this.fElement.getElementName();
-	}
-	
-	/**
-	 * @see org.eclipse.search.ui.ISearchQuery#canRerun()
-	 */
-	public boolean canRerun() {
-		
-		return false;
-	}
-
-	/**
-	 * @see org.eclipse.search.ui.ISearchQuery#canRunInBackground()
-	 */
-	public boolean canRunInBackground() {
-		return true;
-	}
-
-	/**
-	 * @see org.eclipse.search.ui.ISearchQuery#getSearchResult()
-	 */
-	public ISearchResult getSearchResult() {
-		
-		return new JSPOccurrencesSearchResult(this);
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchRequestor.java
deleted file mode 100644
index ddd296a..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSearchRequestor.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.search;
-
-import java.util.HashMap;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.ui.search.ISearchRequestor;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.search.ui.NewSearchUI;
-import org.eclipse.search.ui.text.Match;
-
-
-/**
- * @author pavery
- */
-public class JSPSearchRequestor extends BasicJSPSearchRequestor {
-	
-	private ISearchRequestor fJavaRequestor = null;
-	
-	public JSPSearchRequestor() {
-		super();
-	}
-	
-	public JSPSearchRequestor(ISearchRequestor javaRequestor) {
-		// need to report matches to javaRequestor
-		this.fJavaRequestor = javaRequestor;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.jsp.ui.internal.java.search.BasicJSPSearchRequestor#addSearchMatch(com.ibm.sse.model.text.IStructuredDocument, org.eclipse.core.resources.IFile, int, int, java.lang.String)
-	 */
-	protected void addSearchMatch(IDocument jspDocument, IFile jspFile, int jspStart, int jspEnd, String jspText) {
-		
-		if(!jspFile.exists())
-			return;
-
-		int lineNumber = -1;
-		try {
-			lineNumber = jspDocument.getLineOfOffset(jspStart);
-		} catch (BadLocationException e) {
-			Logger.logException(e);
-		}
-		createSearchMarker(jspFile, jspStart, jspEnd, lineNumber);
-		
-		if(this.fJavaRequestor != null) {
-			Match match = new Match(jspFile, jspStart, jspEnd - jspStart);
-			this.fJavaRequestor.reportMatch(match);
-		}
-	}
-
-	/**
-	 * @param jspFile
-	 * @param jspStart
-	 * @param jspEnd
-	 */
-	private void createSearchMarker(IFile jspFile, int jspStart, int jspEnd, int lineNumber) {
-		
-		try {
-			IMarker marker = jspFile.createMarker(NewSearchUI.SEARCH_MARKER);
-			HashMap attributes = new HashMap(4);
-			attributes.put(IMarker.CHAR_START, new Integer(jspStart));
-			attributes.put(IMarker.CHAR_END, new Integer(jspEnd));
-			attributes.put(IMarker.LINE_NUMBER, new Integer(lineNumber));
-			marker.setAttributes(attributes);
-			
-		} catch (CoreException e) {
-			Logger.logException(e);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSingleFileSearchRequestor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSingleFileSearchRequestor.java
deleted file mode 100644
index c058550..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/JSPSingleFileSearchRequestor.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.search;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.text.IDocument;
-
-
-/**
- * <p>
- * Special requestor that adds search results for single file search
- * (Used for JSPFindOccurrences action).
- * It groups each match as it's own result.
- * </p>
- * 
- * @author pavery
- */
-public class JSPSingleFileSearchRequestor extends BasicJSPSearchRequestor {
-
-	private JSPSearchQuery fQuery = null;
-	
-	public JSPSingleFileSearchRequestor(JSPSearchQuery query) {
-		this.fQuery = query;
-	}
-	
-	/**
-	 * @see org.eclipse.jst.jsp.ui.internal.java.search.BasicJSPSearchRequestor#addSearchMatch(com.ibm.sse.model.text.IStructuredDocument, org.eclipse.core.resources.IFile, int, int, java.lang.String)
-	 */
-	protected void addSearchMatch(IDocument jspDocument, IFile jspFile, int jspStart, int jspEnd, String jspText) {
-		// add match to JSP query...
-		this.fQuery.addMatch(jspDocument, jspStart, jspEnd);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/ui/JSPMatchPresentation.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/ui/JSPMatchPresentation.java
deleted file mode 100644
index 74b1a26..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/ui/JSPMatchPresentation.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.search.ui;
-
-import org.eclipse.jdt.ui.search.IMatchPresentation;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.search.ui.text.Match;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.wst.sse.ui.internal.search.BasicSearchLabelProvider;
-
-/**
- * @author pavery
- */
-public class JSPMatchPresentation implements IMatchPresentation {
-
-	/**
-	 * @see org.eclipse.jdt.ui.search.IMatchPresentation#createLabelProvider()
-	 */
-	public ILabelProvider createLabelProvider() {
-		return new BasicSearchLabelProvider();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.ui.search.IMatchPresentation#showMatch(org.eclipse.search.ui.text.Match, int, int, boolean)
-	 */
-	public void showMatch(Match match, int currentOffset, int currentLength, boolean activate) throws PartInitException {
-		// pa_TODO implement
-//		Object obj = match.getElement();
-		// show match in JSP editor
-		if(activate) {
-			// use show in target?
-		}
-		else {
-			// just select
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/ui/JSPQueryParticipant.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/ui/JSPQueryParticipant.java
deleted file mode 100644
index 853eae1..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/java/search/ui/JSPQueryParticipant.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.java.search.ui;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.search.SearchPattern;
-import org.eclipse.jdt.core.search.SearchRequestor;
-import org.eclipse.jdt.ui.search.ElementQuerySpecification;
-import org.eclipse.jdt.ui.search.IMatchPresentation;
-import org.eclipse.jdt.ui.search.IQueryParticipant;
-import org.eclipse.jdt.ui.search.ISearchRequestor;
-import org.eclipse.jdt.ui.search.PatternQuerySpecification;
-import org.eclipse.jdt.ui.search.QuerySpecification;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchScope;
-import org.eclipse.jst.jsp.core.internal.java.search.JSPSearchSupport;
-import org.eclipse.jst.jsp.ui.internal.java.search.JSPSearchRequestor;
-
-/**
- * @author pavery 
- */
-public class JSPQueryParticipant implements IQueryParticipant {
-
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value= Platform.getDebugOption("com.ibm.sse.model.jsp/debug/jspsearch"); //$NON-NLS-1$
-		DEBUG= value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	/**
-	 * @see org.eclipse.jdt.ui.search.IQueryParticipant#search(org.eclipse.jdt.ui.search.ISearchRequestor, org.eclipse.jdt.ui.search.QuerySpecification, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void search(ISearchRequestor requestor, QuerySpecification querySpecification, IProgressMonitor monitor) throws CoreException {
-		
-		//indexIfNeeded();
-		
-		// do search based on the particular Java query
-		if(querySpecification instanceof ElementQuerySpecification) {
-			// element search (eg. from global find references in Java file)
-			ElementQuerySpecification elementQuery = (ElementQuerySpecification)querySpecification;
-			IJavaElement element = elementQuery.getElement();
-			
-			if(DEBUG)
-				System.out.println("JSP Query Participant searching on ELEMENT: " + element); //$NON-NLS-1$
-			
-			SearchRequestor jspRequestor = new JSPSearchRequestor(requestor);
-			
-			// pa_TODO need to adapt JavaSearchScope to a JSPSearchScope
-			JSPSearchSupport.getInstance().search(element, new JSPSearchScope(), jspRequestor);
-			
-		}
-		else if(querySpecification instanceof PatternQuerySpecification) {
-			
-			// pattern search (eg. from Java search page)
-			PatternQuerySpecification patternQuery = (PatternQuerySpecification)querySpecification;
-			String pattern = patternQuery.getPattern();
-			
-			if(DEBUG)
-				System.out.println("JSP Query Participant searching on PATTERN: " + pattern); //$NON-NLS-1$
-			
-			SearchRequestor jspRequestor = new JSPSearchRequestor(requestor);
-			
-			JSPSearchSupport.getInstance().search(pattern, 
-													new JSPSearchScope(), 
-													patternQuery.getSearchFor(), 
-													patternQuery.getLimitTo(), 
-													SearchPattern.R_PATTERN_MATCH, 
-													false, 
-													jspRequestor);
-		}
-	}
-
-	/**
-	 * @see org.eclipse.jdt.ui.search.IQueryParticipant#estimateTicks(org.eclipse.jdt.ui.search.QuerySpecification)
-	 */
-	public int estimateTicks(QuerySpecification data) {
-		// pa_TODO use project file counter from JSPSearchSupport...
-		return 0;
-	}
-
-	/**
-	 * @see org.eclipse.jdt.ui.search.IQueryParticipant#getUIParticipant()
-	 */
-	public IMatchPresentation getUIParticipant() {
-		return new JSPMatchPresentation();
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceInitializer.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceInitializer.java
deleted file mode 100644
index 773efd2..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceInitializer.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.wst.html.ui.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.ui.preferences.ui.ColorHelper;
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-
-/**
- * Sets default values for JSP UI preferences
- */
-public class JSPUIPreferenceInitializer extends AbstractPreferenceInitializer {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
-	 */
-	public void initializeDefaultPreferences() {
-		IPreferenceStore store = JSPUIPlugin.getDefault().getPreferenceStore();
-		
-		// setting the same as HTML
-		store.setDefault(JSPUIPreferenceNames.AUTO_PROPOSE, true);
-		store.setDefault(JSPUIPreferenceNames.AUTO_PROPOSE_CODE, "<");//$NON-NLS-1$
-		
-		// JSP Style Preferences
-		String NOBACKGROUNDBOLD = " | null | false";   //$NON-NLS-1$
-		String styleValue = ColorHelper.getColorString(127, 0, 127) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_NAME, styleValue);
-		
-		styleValue = ColorHelper.getColorString(42, 0, 255)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE, styleValue);
-		
-		styleValue = "null" + NOBACKGROUNDBOLD;  //$NON-NLS-1$
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS, styleValue); // specified value is black; leaving as widget default
-		
-		styleValue = ColorHelper.getColorString(63, 95, 191)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.COMMENT_BORDER, styleValue);
-		store.setDefault(IStyleConstantsXML.COMMENT_TEXT, styleValue);
-		
-		styleValue = ColorHelper.getColorString(0, 128, 128)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_BORDER, styleValue);
-		
-		styleValue = ColorHelper.getColorString(63, 127, 127)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_NAME, styleValue);
-		
-		styleValue = ColorHelper.getColorString(191, 95, 63)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsHTML.SCRIPT_AREA_BORDER, styleValue);
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceNames.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceNames.java
deleted file mode 100644
index d2a38f2..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/JSPUIPreferenceNames.java
+++ /dev/null
@@ -1,55 +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.jst.jsp.ui.internal.preferences;
-
-/**
- * Preference keys for JSP UI
- */
-public class JSPUIPreferenceNames {
-	/**
-	 * A named preference that controls if code assist gets auto activated.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String AUTO_PROPOSE = getAutoProposeKey();
-
-	private static String getAutoProposeKey() {
-		return "autoPropose";//$NON-NLS-1$
-	}
-
-	/**
-	 * A named preference that holds the characters that auto activate code
-	 * assist.
-	 * <p>
-	 * Value is of type <code>String</code>. All characters that trigger
-	 * auto code assist.
-	 * </p>
-	 */
-	public static final String AUTO_PROPOSE_CODE = getAutoProposeCodeKey();
-
-	private static String getAutoProposeCodeKey() {
-		return "autoProposeCode";//$NON-NLS-1$
-	}
-
-	/**
-	 * The key to store customized templates.
-	 * <p>
-	 * Value is of type <code>String</code>.
-	 * </p>
-	 */
-	public static final String TEMPLATES_KEY = getTemplatesKey();
-
-	private static String getTemplatesKey() {
-		return "org.eclipse.wst.sse.ui.custom_templates"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPColorPage.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPColorPage.java
deleted file mode 100644
index 6386f86..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPColorPage.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.preferences.ui;
-
-import java.util.ArrayList;
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jst.jsp.core.contenttype.ContentTypeIdForJSP;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.editor.IHelpContextIds;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.ui.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore.OverlayKey;
-import org.eclipse.wst.sse.ui.preferences.ui.StyledTextColorPicker;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.preferences.XMLColorPage;
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-
-public class JSPColorPage extends XMLColorPage {
-
-	/**
-	 * Set up all the style preference keys in the overlay store
-	 */
-	protected OverlayKey[] createOverlayStoreKeys() {
-		ArrayList overlayKeys = new ArrayList();
-		
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-		Iterator i = styleList.iterator();
-		while (i.hasNext()) {
-			overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.STRING, (String)i.next()));	
-		}
-
-		OverlayPreferenceStore.OverlayKey[] keys = new OverlayPreferenceStore.OverlayKey[overlayKeys.size()];
-		overlayKeys.toArray(keys);
-		return keys;
-	}
-
-	public String getSampleText() {
-		return JSPUIPlugin.getResourceString("%Sample_JSP_doc"); //$NON-NLS-1$ = "<%@ page \n\tlanguage=\"java\" \n\tcontentType=\"text/html; charset=ISO-8859-1\"\n%>\n<jsp:include flush=\"true\" page=\"titleBar.jsp\"/>\n\n<%-- Use below tags ONLY for JSP 1.1 --%>\n<%\n\tSystem.out.println(\"Welcome!\");\n%>\n<%-- Use below tags ONLY for JSP 1.2 --%>\n<jsp:scriptlet>\n\tSystem.out.println(\"Welcome!\");\n</jsp:scriptlet>"
-	}
-
-	protected void initContextStyleMap(Dictionary contextStyleMap) {
-
-		initCommonContextStyleMap(contextStyleMap);
-		contextStyleMap.remove(XMLRegionContext.XML_CONTENT); // leave content between tags alone
-		contextStyleMap.remove(XMLRegionContext.XML_DECLARATION_OPEN); // xml/html specific
-		contextStyleMap.remove(XMLRegionContext.XML_DECLARATION_CLOSE); // xml/html specific
-		contextStyleMap.remove(XMLRegionContext.XML_ELEMENT_DECLARATION); // xml/html specific
-		contextStyleMap.remove(XMLRegionContext.XML_ELEMENT_DECL_CLOSE); // xml/html specific
-
-		//	contextStyleMap.put(XMLJSPRegionContexts.JSP_CONTENT, HTMLColorManager.SCRIPT_AREA);
-		//	contextStyleMap.put(XMLJSPRegionContexts.BLOCK_TEXT, HTMLColorManager.SCRIPT_AREA);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_DECLARATION_OPEN, IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN, IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_EXPRESSION_OPEN, IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN, IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE, IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_CLOSE, IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_DIRECTIVE_NAME, IStyleConstantsXML.TAG_NAME);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_ROOT_TAG_NAME, IStyleConstantsXML.TAG_NAME);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_COMMENT_OPEN, IStyleConstantsXML.COMMENT_BORDER);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_COMMENT_TEXT, IStyleConstantsXML.COMMENT_TEXT);
-		contextStyleMap.put(DOMJSPRegionContexts.JSP_COMMENT_CLOSE, IStyleConstantsXML.COMMENT_BORDER);
-
-		contextStyleMap.put(DOMJSPRegionContexts.XML_TAG_ATTRIBUTE_VALUE_DQUOTE, IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-		contextStyleMap.put(DOMJSPRegionContexts.XML_TAG_ATTRIBUTE_VALUE_SQUOTE, IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-	}
-
-	protected void initDescriptions(Dictionary descriptions) {
-		initCommonDescriptions(descriptions);
-		descriptions.remove(IStyleConstantsXML.XML_CONTENT); // leave content between tags alone
-		descriptions.remove(IStyleConstantsXML.DECL_BORDER); // xml/html specific
-		descriptions.put(IStyleConstantsHTML.SCRIPT_AREA_BORDER, JSPUIPlugin.getResourceString("%JSP_Delimiters_UI_")); //$NON-NLS-1$ = "JSP Delimiters"
-	}
-
-	protected void initStyleList(ArrayList list) {
-		initCommonStyleList(list);
-		list.remove(IStyleConstantsXML.XML_CONTENT); // leave content between tags alone
-		list.remove(IStyleConstantsXML.DECL_BORDER); // xml/html specific
-		list.add(IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-	}
-
-	protected void setupPicker(StyledTextColorPicker picker) {
-		IModelManager mmanager = StructuredModelManager.getModelManager();
-		picker.setParser(mmanager.createStructuredDocumentFor(ContentTypeIdForJSP.ContentTypeID_JSP).getParser());
-
-		// create descriptions for hilighting types
-		Dictionary descriptions = new Hashtable();
-		initDescriptions(descriptions);
-
-		// map region types to hilighting types
-		Dictionary contextStyleMap = new Hashtable();
-		initContextStyleMap(contextStyleMap);
-
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-
-		picker.setContextStyleMap(contextStyleMap);
-		picker.setDescriptions(descriptions);
-		picker.setStyleList(styleList);
-
-		//	updatePickerFont(picker);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Control c = super.createContents(parent);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.JSP_PREFWEBX_STYLES_HELPID);
-		return c;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return JSPUIPlugin.getDefault().getPreferenceStore();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.preferences.ui.AbstractColorPage#savePreferences()
-	 */
-	protected void savePreferences() {
-		JSPUIPlugin.getDefault().savePluginPreferences();
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPFilesPreferencePage.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPFilesPreferencePage.java
deleted file mode 100644
index a7d6b70..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPFilesPreferencePage.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.preferences.ui;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.editor.IHelpContextIds;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.ui.preferences.ui.HTMLFilesPreferencePage;
-
-public class JSPFilesPreferencePage extends HTMLFilesPreferencePage {
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.preferences.ui.AbstractPreferencePage#getModelPreferences()
-	 */
-	protected Preferences getModelPreferences() {
-		return JSPCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return JSPUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.preferences.ui.XMLFilesPreferencePage#doSavePreferenceStore()
-	 */
-	protected void doSavePreferenceStore() {
-		JSPCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Control c = super.createContents(parent);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.JSP_PREFWEBX_FILES_HELPID);
-		return c;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.html.ui.preferences.ui.HTMLFilesPreferencePage#createContentsForLoadingGroup(org.eclipse.swt.widgets.Composite)
-	 */
-	protected void createContentsForLoadingGroup(Composite parent) {
-		// no loading preferences
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.html.ui.preferences.ui.HTMLFilesPreferencePage#initializeValuesForLoadingGroup()
-	 */
-	protected void initializeValuesForLoadingGroup() {
-		// no loading preferences
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.html.ui.preferences.ui.HTMLFilesPreferencePage#performDefaultsForLoadingGroup()
-	 */
-	protected void performDefaultsForLoadingGroup() {
-		// no loading preferences
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.html.ui.preferences.ui.HTMLFilesPreferencePage#storeValuesForLoadingGroup()
-	 */
-	protected void storeValuesForLoadingGroup() {
-		// no loading preferences
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPTemplatePreferencePage.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPTemplatePreferencePage.java
deleted file mode 100644
index 3ce9d9e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/preferences/ui/JSPTemplatePreferencePage.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.preferences.ui;
-
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.editor.IHelpContextIds;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.ui.texteditor.templates.TemplatePreferencePage;
-
-
-/**
- * Preference page for JSP templates
- */
-public class JSPTemplatePreferencePage extends TemplatePreferencePage {
-
-	public JSPTemplatePreferencePage() {
-		JSPUIPlugin jspEditorPlugin = JSPUIPlugin.getDefault();
-		
-		setPreferenceStore(jspEditorPlugin.getPreferenceStore());
-		setTemplateStore(jspEditorPlugin.getTemplateStore());
-		setContextTypeRegistry(jspEditorPlugin.getTemplateContextRegistry());
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.IPreferencePage#performOk()
-	 */
-	public boolean performOk() {
-  	  boolean ok = super.performOk();
-  	  JSPUIPlugin.getDefault().savePluginPreferences();
-	  return ok;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.templates.TemplatePreferencePage#isShowFormatterSetting()
-	 */
-	protected boolean isShowFormatterSetting() {
-		// template formatting has not been implemented
-		return false;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite ancestor) {
-		Control c = super.createContents(ancestor);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.JSP_PREFWEBX_TEMPLATES_HELPID);
-		return c;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterFactoryHTML.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterFactoryHTML.java
deleted file mode 100644
index 4efab4e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterFactoryHTML.java
+++ /dev/null
@@ -1,97 +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.jst.jsp.ui.internal.projection;
-
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.html.core.HTML40Namespace;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.w3c.dom.Node;
-
-public class ProjectionModelNodeAdapterFactoryHTML extends AbstractAdapterFactory {
-	// copies of this class located in:
-	// org.eclipse.wst.html.ui.internal.projection
-	// org.eclipse.jst.jsp.ui.internal.projection
-
-	private ProjectionViewer fProjectionViewer;
-
-	public ProjectionModelNodeAdapterFactoryHTML() {
-		adapterKey = ProjectionModelNodeAdapterHTML.class;
-	}
-
-	/**
-	 * Actually creates an adapter for the parent of target if target is the
-	 * "adapt-able" node
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		if ((fProjectionViewer != null) && (target instanceof Node) && ((Node) target).getNodeType() == Node.ELEMENT_NODE) {
-			Node node = (Node) target;
-			if (isNodeProjectable(node)) {
-
-				// actually work with the parent node to listen for add,
-				// delete events
-				Node parent = node.getParentNode();
-				if (parent instanceof INodeNotifier) {
-					INodeNotifier parentNotifier = (INodeNotifier) parent;
-					ProjectionModelNodeAdapterHTML parentAdapter = (ProjectionModelNodeAdapterHTML) parentNotifier.getExistingAdapter(ProjectionModelNodeAdapterHTML.class);
-					if (parentAdapter == null) {
-						// create a new adapter for parent
-						parentAdapter = new ProjectionModelNodeAdapterHTML(this);
-						parentNotifier.addAdapter(parentAdapter);
-					}
-					// call update on parent because a new node has just been
-					// added
-					parentAdapter.updateAdapter(parent);
-				}
-			}
-		}
-
-		return null;
-	}
-
-	ProjectionViewer getProjectionViewer() {
-		return fProjectionViewer;
-	}
-
-	/**
-	 * Returns true if node is a node type able to fold
-	 * 
-	 * @param node
-	 * @return boolean true if node is projectable, false otherwise
-	 */
-	boolean isNodeProjectable(Node node) {
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			String tagName = node.getNodeName();
-			// node is only projectable if it is head, body, script, style,
-			// table tags
-			if (HTML40Namespace.ElementName.HEAD.equalsIgnoreCase(tagName) || HTML40Namespace.ElementName.BODY.equalsIgnoreCase(tagName) || HTML40Namespace.ElementName.SCRIPT.equalsIgnoreCase(tagName) || HTML40Namespace.ElementName.STYLE.equalsIgnoreCase(tagName) || HTML40Namespace.ElementName.TABLE.equalsIgnoreCase((tagName)))
-				return true;
-		}
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.AbstractAdapterFactory#release()
-	 */
-	public void release() {
-		fProjectionViewer = null;
-
-		super.release();
-	}
-
-	void setProjectionViewer(ProjectionViewer viewer) {
-		fProjectionViewer = viewer;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterFactoryJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterFactoryJSP.java
deleted file mode 100644
index bcaa7c0..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterFactoryJSP.java
+++ /dev/null
@@ -1,69 +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.jst.jsp.ui.internal.projection;
-
-import org.eclipse.jst.jsp.core.JSP11Namespace;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.w3c.dom.Node;
-
-public class ProjectionModelNodeAdapterFactoryJSP extends ProjectionModelNodeAdapterFactoryHTML {
-	public ProjectionModelNodeAdapterFactoryJSP() {
-		adapterKey = ProjectionModelNodeAdapterJSP.class;
-	}
-
-	/**
-	 * Actually creates an adapter for the parent of target if target is the
-	 * "adapt-able" node
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		if ((getProjectionViewer() != null) && (target instanceof Node) && ((Node) target).getNodeType() == Node.ELEMENT_NODE) {
-			Node node = (Node) target;
-			if (isNodeProjectable(node)) {
-
-				// actually work with the parent node to listen for add,
-				// delete events
-				Node parent = node.getParentNode();
-				if (parent instanceof INodeNotifier) {
-					INodeNotifier parentNotifier = (INodeNotifier) parent;
-					ProjectionModelNodeAdapterJSP parentAdapter = (ProjectionModelNodeAdapterJSP) parentNotifier.getExistingAdapter(ProjectionModelNodeAdapterJSP.class);
-					if (parentAdapter == null) {
-						// create a new adapter for parent
-						parentAdapter = new ProjectionModelNodeAdapterJSP(this);
-						parentNotifier.addAdapter(parentAdapter);
-					}
-					// call update on parent because a new node has just been
-					// added
-					parentAdapter.updateAdapter(parent);
-				}
-			}
-		}
-
-		return null;
-	}
-
-	/**
-	 * Returns true if node is a node type able to fold
-	 * 
-	 * @param node
-	 * @return boolean true if node is projectable, false otherwise
-	 */
-	boolean isNodeProjectable(Node node) {
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			String tagName = node.getNodeName();
-			// node is only projectable if it is jsp scriptlet tag
-			if (JSP11Namespace.ElementName.SCRIPTLET.equalsIgnoreCase(tagName))
-				return true;
-		}
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterHTML.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterHTML.java
deleted file mode 100644
index 60a9501..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterHTML.java
+++ /dev/null
@@ -1,263 +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.jst.jsp.ui.internal.projection;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotation;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotationModel;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.w3c.dom.Node;
-
-/**
- * Updates projection annotation model with projection annotations for this
- * adapter node's children
- */
-public class ProjectionModelNodeAdapterHTML implements INodeAdapter {
-
-	private class TagProjectionAnnotation extends ProjectionAnnotation {
-		private boolean fIsVisible = false; /* workaround for BUG85874 */
-		private Node fNode;
-
-		public TagProjectionAnnotation(Node node, boolean isCollapsed) {
-			super(isCollapsed);
-			fNode = node;
-		}
-
-		public Node getNode() {
-			return fNode;
-		}
-
-		public void setNode(Node node) {
-			fNode = node;
-		}
-
-		/**
-		 * Does not paint hidden annotations. Annotations are hidden when they
-		 * only span one line.
-		 * 
-		 * @see ProjectionAnnotation#paint(org.eclipse.swt.graphics.GC,
-		 *      org.eclipse.swt.widgets.Canvas,
-		 *      org.eclipse.swt.graphics.Rectangle)
-		 */
-		public void paint(GC gc, Canvas canvas, Rectangle rectangle) {
-			/* workaround for BUG85874 */
-			/*
-			 * only need to check annotations that are expanded because hidden
-			 * annotations should never have been given the chance to
-			 * collapse.
-			 */
-			if (!isCollapsed()) {
-				// working with rectangle, so need the styledtext line height
-				int lineHeight = fAdapterFactory.getProjectionViewer().getTextWidget().getLineHeight();
-
-				// do not draw annotations that only span one line and mark
-				// them as not visible
-				if ((rectangle.height / lineHeight) <= 1) {
-					fIsVisible = false;
-					return;
-				}
-			}
-			fIsVisible = true;
-			super.paint(gc, canvas, rectangle);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jface.text.source.projection.ProjectionAnnotation#markCollapsed()
-		 */
-		public void markCollapsed() {
-			/* workaround for BUG85874 */
-			// do not mark collapsed if annotation is not visible
-			if (fIsVisible)
-				super.markCollapsed();
-		}
-	}
-
-	// copies of this class located in:
-	// org.eclipse.wst.html.ui.internal.projection
-	// org.eclipse.jst.jsp.ui.internal.projection
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.wst.html.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	ProjectionModelNodeAdapterFactoryHTML fAdapterFactory;
-	private Map fTagAnnotations = new HashMap();
-
-	public ProjectionModelNodeAdapterHTML(ProjectionModelNodeAdapterFactoryHTML factory) {
-		fAdapterFactory = factory;
-	}
-
-	/**
-	 * Create a projection position from the given node. Able to get
-	 * projection position if node isNodeProjectable.
-	 * 
-	 * @param node
-	 * @return null if no projection position possible, a Position otherwise
-	 */
-	private Position createProjectionPosition(Node node) {
-		Position pos = null;
-		if (fAdapterFactory.isNodeProjectable(node) && node instanceof IndexedRegion) {
-			IDocument document = fAdapterFactory.getProjectionViewer().getDocument();
-			if (document != null) {
-				IndexedRegion inode = (IndexedRegion) node;
-				int start = inode.getStartOffset();
-				int end = inode.getEndOffset();
-				if (start >= 0 && start < end) {
-					try {
-//						// region-based
-//						// extra line when collapsed, but no region increase when add newline
-//						pos = new Position(start, end - start);
-						
-//						// line-based
-//						// extra line when collapsed, but no region increase when add newline
-//						IRegion startLineRegion = document.getLineInformationOfOffset(start);
-//						IRegion endLineRegion = document.getLineInformationOfOffset(end);
-//						int startOffset = startLineRegion.getOffset();
-//						int endOffset = endLineRegion.getOffset() + endLineRegion.getLength();
-//						if (endOffset > startOffset) {
-//							pos = new Position(startOffset, endOffset - startOffset);
-//						}
-						
-						// line-based
-						// no extra line when collapsed, but region increase when add newline
-						int startLine = document.getLineOfOffset(start);
-						int endLine = document.getLineOfOffset(end);
-						if (endLine + 1 < document.getNumberOfLines()) {
-							int offset = document.getLineOffset(startLine);
-							int endOffset = document.getLineOffset(endLine + 1);
-							pos = new Position(offset, endOffset - offset);
-						}
-					} catch (BadLocationException x) {
-						Logger.log(Logger.WARNING_DEBUG, null, x);
-					}
-				}
-			}
-		}
-		return pos;
-	}
-
-	/**
-	 * Find TagProjectionAnnotation for node in the current list of projection
-	 * annotations for this adapter
-	 * 
-	 * @param node
-	 * @return TagProjectionAnnotation
-	 */
-	private TagProjectionAnnotation getExistingAnnotation(Node node) {
-		TagProjectionAnnotation anno = null;
-
-		if ((node != null) && (!fTagAnnotations.isEmpty())) {
-			Iterator it = fTagAnnotations.keySet().iterator();
-			while (it.hasNext() && anno == null) {
-				TagProjectionAnnotation a = (TagProjectionAnnotation) it.next();
-				Node n = a.getNode();
-				if (node.equals(n)) {
-					anno = a;
-				}
-			}
-		}
-		return anno;
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return type == ProjectionModelNodeAdapterHTML.class;
-	}
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		// check if folding is even enabled, if not, just ignore notifyChanged
-		// events
-		if (fAdapterFactory.getProjectionViewer() == null) {
-			return;
-		}
-
-		if ((eventType == INodeNotifier.STRUCTURE_CHANGED) && (notifier instanceof Node)) {
-			updateAdapter((Node) notifier);
-		}
-	}
-
-	/**
-	 * Update the projection annotation of all the nodes that are children of
-	 * node
-	 * 
-	 * @param node
-	 */
-	void updateAdapter(Node node) {
-		long start = System.currentTimeMillis();
-
-		Map additions = new HashMap();
-		Map projectionAnnotations = new HashMap();
-
-		// go through immediate child nodes and figure out projection
-		// model annotations
-		if (node != null) {
-			Node childNode = node.getFirstChild();
-			while (childNode != null) {
-				Position newPos = createProjectionPosition(childNode);
-				if (newPos != null) {
-					TagProjectionAnnotation newAnnotation = new TagProjectionAnnotation(childNode, false);
-					TagProjectionAnnotation existing = getExistingAnnotation(childNode);
-					if (existing == null) {
-						// add to map containing all annotations for this
-						// adapter
-						projectionAnnotations.put(newAnnotation, newPos);
-						// add to map containing annotations to add
-						additions.put(newAnnotation, newPos);
-					} else {
-						// add to map containing all annotations for this
-						// adapter
-						projectionAnnotations.put(existing, newPos);
-						// remove from map containing annotations to delete
-						fTagAnnotations.remove(existing);
-					}
-				}
-				childNode = childNode.getNextSibling();
-			}
-
-			// in the end, want to delete anything leftover in old list, add
-			// everything in additions, and update everything in
-			// projectionAnnotations
-			ProjectionAnnotation[] oldList = null;
-			if (!fTagAnnotations.isEmpty()) {
-				oldList = (ProjectionAnnotation[]) fTagAnnotations.keySet().toArray(new ProjectionAnnotation[0]);
-			}
-			ProjectionAnnotation[] modifyList = null;
-			if (!projectionAnnotations.isEmpty()) {
-				modifyList = (ProjectionAnnotation[]) projectionAnnotations.keySet().toArray(new ProjectionAnnotation[0]);
-			}
-			ProjectionViewer viewer = fAdapterFactory.getProjectionViewer();
-			ProjectionAnnotationModel annotationModel = viewer.getProjectionAnnotationModel();
-			annotationModel.modifyAnnotations(oldList, additions, modifyList);
-		}
-
-		// save new list of annotations
-		fTagAnnotations = additions;
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf) {
-			String nodeName = node != null ? node.getNodeName() : "null";
-			System.out.println("ProjectionModelNodeAdapterHTML.updateAdapter (" + nodeName + "):" + (end - start));
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterJSP.java
deleted file mode 100644
index a195368..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/ProjectionModelNodeAdapterJSP.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.jst.jsp.ui.internal.projection;
-
-/**
- * Updates projection annotation model with projection annotations for this
- * adapter node's children
- */
-public class ProjectionModelNodeAdapterJSP extends ProjectionModelNodeAdapterHTML {
-	public ProjectionModelNodeAdapterJSP(ProjectionModelNodeAdapterFactoryJSP factory) {
-		super(factory);
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return type == ProjectionModelNodeAdapterJSP.class;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/StructuredTextFoldingProviderJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/StructuredTextFoldingProviderJSP.java
deleted file mode 100644
index c56d6b3..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/projection/StructuredTextFoldingProviderJSP.java
+++ /dev/null
@@ -1,275 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.projection;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.source.projection.IProjectionListener;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.ui.internal.projection.IStructuredTextFoldingProvider;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-/**
- * Updates the projection model of a structured model for JSP.
- */
-public class StructuredTextFoldingProviderJSP implements IStructuredTextFoldingProvider, IProjectionListener {
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.jst.jsp.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$
-	
-	private IDocument fDocument;
-	private ProjectionViewer fViewer;
-
-	/**
-	 * Adds an adapter to node and its children
-	 * 
-	 * @param node
-	 * @param level
-	 */
-	private void addAdapterToNodeAndChildren(Node node, int level) {
-		if (node instanceof INodeNotifier) {
-			INodeNotifier notifier = (INodeNotifier) node;
-
-			// try and get the adapter for the current node and update the
-			// adapter with projection information
-			ProjectionModelNodeAdapterJSP adapter = (ProjectionModelNodeAdapterJSP) notifier.getExistingAdapter(ProjectionModelNodeAdapterJSP.class);
-			if (adapter != null) {
-				adapter.updateAdapter(node);
-			}
-			else {
-				// just call getadapter so the adapter is created and
-				// automatically initialized
-				notifier.getAdapterFor(ProjectionModelNodeAdapterJSP.class);
-			}
-			ProjectionModelNodeAdapterHTML adapter2 = (ProjectionModelNodeAdapterHTML) notifier.getExistingAdapter(ProjectionModelNodeAdapterHTML.class);
-			if (adapter2 != null) {
-				adapter2.updateAdapter(node);
-			}
-			else {
-				// just call getadapter so the adapter is created and
-				// automatically initialized
-				notifier.getAdapterFor(ProjectionModelNodeAdapterHTML.class);
-			}
-
-			Node nextChild = node.getFirstChild();
-			while (nextChild != null) {
-				Node childNode = nextChild;
-				nextChild = childNode.getNextSibling();
-
-				addAdapterToNodeAndChildren(childNode, level + 1);
-			}
-		}
-	}
-
-	/**
-	 * Goes through every node and adds an adapter onto each for tracking
-	 * purposes
-	 */
-	private void addAllAdapters() {
-		long start = System.currentTimeMillis();
-		
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel != null) {
-				int startOffset = 0;
-				IndexedRegion startNode = sModel.getIndexedRegion(startOffset);
-				if (startNode instanceof Node) {
-					int level = 0;
-					Node nextSibling = (Node) startNode;
-					while (nextSibling != null) {
-						Node currentNode = nextSibling;
-						nextSibling = currentNode.getNextSibling();
-
-						addAdapterToNodeAndChildren(currentNode, level);
-					}
-				}
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderJSP.addAllAdapters: " + (end - start));
-	}
-
-	/**
-	 * Get the ProjectionModelNodeAdapterFactoryHTML to use with this
-	 * provider.
-	 * 
-	 * @return ProjectionModelNodeAdapterFactoryHTML
-	 */
-	private ProjectionModelNodeAdapterFactoryHTML getAdapterFactoryHTML(boolean createIfNeeded) {
-		long start = System.currentTimeMillis();
-		
-		ProjectionModelNodeAdapterFactoryHTML factory = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel != null) {
-				FactoryRegistry factoryRegistry = sModel.getFactoryRegistry();
-
-				// getting the projectionmodelnodeadapter for the first time
-				// so do some initializing
-				if (!factoryRegistry.contains(ProjectionModelNodeAdapterHTML.class) && createIfNeeded) {
-					ProjectionModelNodeAdapterFactoryHTML newFactory = new ProjectionModelNodeAdapterFactoryHTML();
-
-					// add factory to factory registry
-					factoryRegistry.addFactory(newFactory);
-
-					// add factory to propogating adapter
-					XMLModel domModel = (XMLModel) sModel;
-					Document document = domModel.getDocument();
-					PropagatingAdapter propagatingAdapter = (PropagatingAdapter) ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
-					if (propagatingAdapter != null) {
-						propagatingAdapter.addAdaptOnCreateFactory(newFactory);
-					}
-				}
-
-				// try and get the factory
-				factory = (ProjectionModelNodeAdapterFactoryHTML) factoryRegistry.getFactoryFor(ProjectionModelNodeAdapterHTML.class);
-			}
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-		
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderJSP.getAdapterFactoryHTML: " + (end - start));
-		return factory;
-	}
-
-	/**
-	 * Get the ProjectionModelNodeAdapterFactoryJSP to use with this provider.
-	 * 
-	 * @return ProjectionModelNodeAdapterFactoryJSP
-	 */
-	private ProjectionModelNodeAdapterFactoryJSP getAdapterFactoryJSP(boolean createIfNeeded) {
-		long start = System.currentTimeMillis();
-		
-		ProjectionModelNodeAdapterFactoryJSP factory = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel != null) {
-				FactoryRegistry factoryRegistry = sModel.getFactoryRegistry();
-
-				// getting the projectionmodelnodeadapter for the first time
-				// so do some initializing
-				if (!factoryRegistry.contains(ProjectionModelNodeAdapterJSP.class) && createIfNeeded) {
-					ProjectionModelNodeAdapterFactoryJSP newFactory = new ProjectionModelNodeAdapterFactoryJSP();
-
-					// add factory to factory registry
-					factoryRegistry.addFactory(newFactory);
-
-					// add factory to propogating adapter
-					XMLModel domModel = (XMLModel) sModel;
-					Document document = domModel.getDocument();
-					PropagatingAdapter propagatingAdapter = (PropagatingAdapter) ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
-					if (propagatingAdapter != null) {
-						propagatingAdapter.addAdaptOnCreateFactory(newFactory);
-					}
-				}
-
-				// try and get the factory
-				factory = (ProjectionModelNodeAdapterFactoryJSP) factoryRegistry.getFactoryFor(ProjectionModelNodeAdapterJSP.class);
-			}
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-		
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderJSP.getAdapterFactoryJSP: " + (end - start));
-		return factory;
-	}
-
-	/**
-	 * Initialize this provider with the correct document. Assumes projection
-	 * is enabled. (otherwise, only install would have been called)
-	 */
-	public void initialize() {
-		if (!isInstalled())
-			return;
-
-		// set projection viewer to null on old document's adapter factory
-		projectionDisabled();
-
-		// clear out all annotations
-		if (fViewer.getProjectionAnnotationModel() != null)
-			fViewer.getProjectionAnnotationModel().removeAllAnnotations();
-		fDocument = fViewer.getDocument();
-
-		if (fDocument != null) {
-			// set projection viewer on new document's adapter factory
-			ProjectionModelNodeAdapterFactoryJSP factory = getAdapterFactoryJSP(true);
-			if (factory != null) {
-				factory.setProjectionViewer(fViewer);
-			}
-			ProjectionModelNodeAdapterFactoryHTML factory2 = getAdapterFactoryHTML(true);
-			if (factory2 != null) {
-				factory2.setProjectionViewer(fViewer);
-			}
-
-			addAllAdapters();
-		}
-	}
-
-	/**
-	 * Associate a ProjectionViewer with this IStructuredTextFoldingProvider
-	 * 
-	 * @param viewer
-	 */
-	public void install(ProjectionViewer viewer) {
-		// uninstall before trying to install new viewer
-		if (isInstalled()) {
-			uninstall();
-		}
-		fViewer = viewer;
-		fViewer.addProjectionListener(this);
-	}
-
-	private boolean isInstalled() {
-		return fViewer != null;
-	}
-
-	public void projectionDisabled() {
-		ProjectionModelNodeAdapterFactoryJSP factory = getAdapterFactoryJSP(false);
-		if (factory != null) {
-			factory.setProjectionViewer(null);
-		}
-		ProjectionModelNodeAdapterFactoryHTML factory2 = getAdapterFactoryHTML(false);
-		if (factory2 != null) {
-			factory2.setProjectionViewer(null);
-		}
-
-		fDocument = null;
-	}
-
-	public void projectionEnabled() {
-		initialize();
-	}
-
-	/**
-	 * Disconnect this IStructuredTextFoldingProvider from projection viewer
-	 */
-	public void uninstall() {
-		if (isInstalled()) {
-			projectionDisabled();
-
-			fViewer.removeProjectionListener(this);
-			fViewer = null;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/JSPTranslationWrapper.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/JSPTranslationWrapper.java
deleted file mode 100644
index a119c2b..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/JSPTranslationWrapper.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.reconcile;
-
-import org.eclipse.jface.text.reconciler.IReconcilableModel;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationExtension;
-
-/**
- * Wrapper class to make a JSPTranslation into an IReconcilableModel.
- * Translation must be accessed via getTranslation()
- * 
- * @pavery
- */
-public class JSPTranslationWrapper implements IReconcilableModel {
-	private JSPTranslationExtension fTranslation = null;
-
-	public JSPTranslationWrapper(JSPTranslationExtension trans) {
-		fTranslation = trans;
-	}
-
-	public JSPTranslationExtension getTranslation() {
-		return fTranslation;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJava.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJava.java
deleted file mode 100644
index 3e5a868..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJava.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.reconcile;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.compiler.IProblem;
-import org.eclipse.jface.text.Assert;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.reconciler.DirtyRegion;
-import org.eclipse.jface.text.reconciler.IReconcilableModel;
-import org.eclipse.jface.text.reconciler.IReconcileResult;
-import org.eclipse.jface.text.reconciler.IReconcileStep;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationExtension;
-import org.eclipse.jst.jsp.core.text.IJSPPartitions;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.ui.internal.reconcile.ReconcileAnnotationKey;
-import org.eclipse.wst.sse.ui.internal.reconcile.StructuredReconcileStep;
-import org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation;
-
-/**
- * This reconcile step has a Java source document as input model and maintains
- * a Java working copy as its model.
- * 
- * @since 3.0
- */
-public class ReconcileStepForJava extends StructuredReconcileStep {
-
-	/**
-	 * Adapts an <code>ICompilationUnit</code> to the
-	 * <code>ITextModel</code> interface.
-	 */
-	private class CompilationUnitAdapter implements IReconcilableModel {
-
-		private ICompilationUnit fCompilationUnit;
-
-		CompilationUnitAdapter(ICompilationUnit cu) {
-			fCompilationUnit = cu;
-		}
-
-		private ICompilationUnit getCompilationUnit() {
-			return fCompilationUnit;
-		}
-	}
-
-	private JSPTranslation fJspTranslation;
-	private CompilationUnitAdapter fModel;
-	private IStructuredDocument fStructuredDocument = null;
-
-	/**
-	 * Creates the last reconcile step of the pipe.
-	 */
-	public ReconcileStepForJava(IFile jspFile) {
-		// should handle more gracefully
-		Assert.isNotNull(jspFile);
-		initStructuredDocument(jspFile);
-	}
-
-	/**
-	 * Creates an intermediate reconcile step which adds the given step to the
-	 * pipe.
-	 */
-	public ReconcileStepForJava(IReconcileStep step, IFile jspFile) {
-		super(step);
-		Assert.isNotNull(jspFile);
-		initStructuredDocument(jspFile);
-	}
-
-	/**
-	 * Structured Document used to create annotation removal keys
-	 * 
-	 * @param jspFile
-	 */
-	private void initStructuredDocument(IFile jspFile) {
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(jspFile);
-			if (sModel != null)
-				fStructuredDocument = sModel.getStructuredDocument();
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-	}
-
-	/*
-	 * @see AbstractReconcileStep#reconcileModel(DirtyRegion, IRegion)
-	 */
-	protected IReconcileResult[] reconcileModel(DirtyRegion dirtyRegion, IRegion subRegion) {
-		Assert.isTrue(getInputModel() instanceof JSPTranslationWrapper, "wrong model"); //$NON-NLS-1$
-		fJspTranslation = ((JSPTranslationWrapper) getInputModel()).getTranslation();
-		
-        if(DEBUG)
-            System.out.println("[trace reconciler] > reconciling model in JAVA step w/ dirty region: " + dirtyRegion.getText()); //$NON-NLS-1$
-
-		try {
-			fJspTranslation.setProblemCollectingActive(true);
-			fJspTranslation.reconcileCompilationUnit();
-		}
-		finally {
-			if (fJspTranslation != null)
-				fJspTranslation.setProblemCollectingActive(false);
-		}
-
-		List problems = null;
-		// I was frequently seeing null here, especially as editors closed, 
-		// so just gaurding against that. (Not sure why it was null). 
-		if (fJspTranslation != null) {
-			problems = fJspTranslation.getProblems();
-		}
-		IReconcileResult[] results = adaptProblemsToAnnotations(problems);
-		return results;
-	}
-
-	/**
-	 * @return
-	 */
-	private IReconcileResult[] adaptProblemsToAnnotations(List problems) {
-		if (problems == null)
-			return new IReconcileResult[0];
-
-		TemporaryAnnotation[] annotations = new TemporaryAnnotation[problems.size()];
-		IProblem p = null;
-		for (int i = 0; i < problems.size(); i++) {
-			p = (IProblem) problems.get(i);
-			annotations[i] = createTemporaryAnnotationFromProblem(p);
-		}
-		return annotations;
-	}
-
-	/**
-	 * Converts an IProblem to a TemporaryAnnotation.
-	 * 
-	 * @param problem
-	 * @return
-	 */
-	private TemporaryAnnotation createTemporaryAnnotationFromProblem(IProblem problem) {
-		String type = TemporaryAnnotation.ANNOT_ERROR;
-		if (problem.isWarning())
-			type = TemporaryAnnotation.ANNOT_WARNING;
-		Position pos = new Position(problem.getSourceStart(), problem.getSourceEnd() - problem.getSourceStart() + 1);
-		JSPTranslationExtension translation = ((JSPTranslationWrapper) getInputModel()).getTranslation();
-		int jspOffset = translation.getJspOffset(pos.offset);
-
-		ReconcileAnnotationKey key = null;
-		if (jspOffset != -1 && fStructuredDocument != null) {
-			key = createKey(fStructuredDocument.getRegionAtCharacterOffset(jspOffset), ReconcileAnnotationKey.TOTAL);
-		}
-		else {
-			key = createKey(IJSPPartitions.JSP_DEFAULT, ReconcileAnnotationKey.TOTAL);
-		}
-		TemporaryAnnotation annotation = new TemporaryAnnotation(pos, type, problem.getMessage(), key, problem.getID());
-		annotation.setAdditionalFixInfo(problem);
-
-		return annotation;
-	}
-
-	/*
-	 * @see AbstractReconcileStep#getModel()
-	 */
-	public IReconcilableModel getModel() {
-		if (fModel == null) {
-			fModel = new CompilationUnitAdapter(fJspTranslation.getCompilationUnit());
-		}
-		return fModel;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.reconciler.IReconcileStep#setInputModel(org.eclipse.jface.text.reconciler.IReconcilableModel)
-	 */
-	public void setInputModel(IReconcilableModel inputModel) {
-		super.setInputModel(inputModel);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJspTranslation.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJspTranslation.java
deleted file mode 100644
index 29c097d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJspTranslation.java
+++ /dev/null
@@ -1,332 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.reconcile;
-
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.reconciler.DirtyRegion;
-import org.eclipse.jface.text.reconciler.IReconcilableModel;
-import org.eclipse.jface.text.reconciler.IReconcileResult;
-import org.eclipse.jface.text.reconciler.IReconcileStep;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationExtension;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.reconcile.DocumentAdapter;
-import org.eclipse.wst.sse.ui.internal.reconcile.StructuredReconcileStep;
-import org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-/**
- * Creates a JSPTranslation for use w/ the JavaReconcileStep. Adapts Java
- * error positions to the JSP positions.
- * 
- * @author pavery
- */
-public class ReconcileStepForJspTranslation extends StructuredReconcileStep {
-
-	/**
-	 * This contains is the translated java document. We create this here,
-	 * then set it as the model on the next step, ReconcileStepForJava
-	 */
-	private JSPTranslationWrapper fModel = null;
-	private IReconcileResult[] EMPTY_RECONCILE_RESULT_SET = new IReconcileResult[0];
-	private JSPTranslationAdapter fTranslationAdapter = null;
-	private JSPTranslationExtension fJSPTranslation = null;
-	private static final boolean DEBUG = false;
-	
-	public ReconcileStepForJspTranslation(IReconcileStep step) {
-		super(step);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.reconciler.AbstractReconcileStep#reconcileModel(org.eclipse.jface.text.reconciler.DirtyRegion,
-	 *      org.eclipse.jface.text.IRegion)
-	 */
-	protected IReconcileResult[] reconcileModel(DirtyRegion dirtyRegion, IRegion subRegion) {
-
-		if(DEBUG)
-            System.out.println("[trace reconciler] > translating JSP in JSP TRANSLATE step"); //$NON-NLS-1$	
-
-		if (isCanceled() || dirtyRegion == null)
-			return EMPTY_RECONCILE_RESULT_SET;
-
-		// create java model for java reconcile
-		JSPTranslationAdapter adapter = getJSPTranslationAdapter();
-		fJSPTranslation = adapter.getJSPTranslation();
-		fModel = new JSPTranslationWrapper(fJSPTranslation);
-
-		if(DEBUG)
-            System.out.println("[trace reconciler] > JSP TRANSLATE step done"); //$NON-NLS-1$	
-
-		// this step doesn't actually produce results, only creates the java
-		// model
-		return EMPTY_RECONCILE_RESULT_SET;
-	}
-
-	/**
-	 * @return
-	 */
-	private JSPTranslationAdapter getJSPTranslationAdapter() {
-		if (fTranslationAdapter == null) {
-			IReconcilableModel reconcilableModel = getInputModel();
-			IDocument doc = null;
-
-			if (reconcilableModel instanceof DocumentAdapter)
-				doc = ((DocumentAdapter) reconcilableModel).getDocument();
-
-			if (doc != null) {
-				IStructuredModel model = null;
-				try {
-					model = StructuredModelManager.getModelManager().getExistingModelForRead(doc);
-					if (model != null) {
-						XMLDocument xmlDoc = ((XMLModel) model).getDocument();
-						fTranslationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-					}
-				}
-				finally {
-					if (model != null)
-						model.releaseFromRead();
-				}
-			}
-		}
-		return fTranslationAdapter;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.internal.ui.text.AbstractStructuredReconcileStep#getModel()
-	 */
-	public IReconcilableModel getModel() {
-		return fModel;
-	}
-
-	/*
-	 * @see org.eclipse.text.reconcilerpipe.AbstractReconcilePipeParticipant#convertToInputModel(org.eclipse.text.reconcilerpipe.IReconcileResult[])
-	 */
-	protected IReconcileResult[] convertToInputModel(IReconcileResult[] inputResults) {
-
-		if (inputResults == null)
-			return null;
-
-		HashMap java2jspRanges = fJSPTranslation.getJava2JspMap();
-		for (int i = 0; i < inputResults.length; i++) {
-			if (isCanceled())
-				return EMPTY_RECONCILE_RESULT_SET;
-			if (!(inputResults[i] instanceof TemporaryAnnotation))
-				continue;
-			TemporaryAnnotation result = (TemporaryAnnotation) inputResults[i];
-			adaptJava2JspPosition(result, java2jspRanges);
-		}
-
-		return inputResults;
-	}
-
-	/**
-	 * @param pos
-	 * @param java2jspRanges
-	 */
-	private void adaptJava2JspPosition(TemporaryAnnotation annotation, HashMap java2jspRanges) {
-		Position pos = annotation.getPosition();
-		int javaOffset = pos.offset;
-		int offsetInRange = 0;
-		Position jspPos, javaPos = null;
-		boolean found = false;
-
-		// iterate all mapped java ranges
-		Iterator it = java2jspRanges.keySet().iterator();
-		while (it.hasNext()) {
-			javaPos = (Position) it.next();
-			if (!javaPos.includes(javaOffset))
-				continue;
-
-			offsetInRange = javaOffset - javaPos.offset;
-			jspPos = (Position) java2jspRanges.get(javaPos);
-			if (jspPos != null) {
-				pos.offset = jspPos.offset + offsetInRange;
-				found = true;
-				additionalPositionAdjustment(annotation, jspPos);
-			}
-			break;
-		}
-		// hide unmapped errors
-		if (!found) {
-			pos.offset = -1;
-			pos.length = 0;
-		}
-	}
-
-	/**
-	 * Adjusts java position to JSP position for ranges that don't map
-	 * "exactly". eg. <%@include file=""%>, <jsp:useBean/>, <%@import
-	 * src=""%>...
-	 * 
-	 * @param pos
-	 * @param jspPos
-	 */
-	private void additionalPositionAdjustment(TemporaryAnnotation annotation, Position jspPos) {
-		Position pos = annotation.getPosition();
-		IStructuredDocument sDoc = null;
-		IStructuredDocumentRegion sdRegion = null;
-		// analyze the sdRegion to see if it's import, expression, include
-		ITextRegionList regions = null;
-		ITextRegion r = null;
-		String tagName = ""; //$NON-NLS-1$
-
-		sDoc = (IStructuredDocument) ((DocumentAdapter) getInputModel()).getDocument();
-		sdRegion = sDoc.getRegionAtCharacterOffset(jspPos.offset);
-		// analyze the sdRegion to see if it's import, expression, include,
-		// useBean...
-		regions = sdRegion.getRegions();
-		for (int i = 0; i < regions.size(); i++) {
-			r = regions.get(i);
-			if (r.getType() == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME || r.getType() == XMLRegionContext.XML_TAG_NAME) {
-				tagName = sdRegion.getText(r).trim();
-				if (tagName.equals("include")) { //$NON-NLS-1$
-					adjustForInclude(annotation, pos, sdRegion, regions, i);
-				}
-				else if (tagName.equals("page")) { //$NON-NLS-1$
-					adjustForPage(annotation, pos, sdRegion, regions, i);
-				}
-				else if (tagName.equals("jsp:useBean")) { //$NON-NLS-1$
-					//adjustForUseBean(pos, sdRegion, regions, i);
-					// do nothing for usebean for now...
-					break;
-				}
-                // this can actually cause the WRONG node to be underlined
-                // esp in the case of embedded attr regions
-//				else {
-//					// catch all for all other cases for now, at least we'll
-//					// get
-//					// the squiggle in the general area of the problem instead
-//					// of some random place
-//					pos.offset = sdRegion.getStartOffset(r);
-//					pos.length = 1;
-//					break;
-//				}
-			}
-		}
-	}
-
-	private void adjustForInclude(TemporaryAnnotation annotation, Position pos, IStructuredDocumentRegion sdRegion, ITextRegionList regions, int startingRegionNumber) {
-		ITextRegion r;
-		String tagName;
-		String noQuotes;
-		for (int j = startingRegionNumber; j < regions.size(); j++) {
-			r = regions.get(j);
-			if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME && !sdRegion.getText(r).trim().equals("file")) //$NON-NLS-1$
-				// there's only one attribute allowed for <@include
-				break;
-			else if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				tagName = sdRegion.getText(r).trim();
-				noQuotes = StringUtils.strip(tagName);
-				pos.offset = sdRegion.getStartOffset(r) + ((tagName.length() - noQuotes.length()) == 2 ? 1 : 0);
-				pos.length = noQuotes.length();
-				annotation.setText(annotation.getText() + " (in file: \"" + noQuotes + "\")"); //$NON-NLS-1$ //$NON-NLS-2$
-				break;
-			}
-		}
-	}
-
-	private void adjustForPage(TemporaryAnnotation annotation, Position pos, IStructuredDocumentRegion sdRegion, ITextRegionList regions, int startingRegionNumber) {
-		ITextRegion r;
-		String value;
-		int size = regions.size();
-
-		for (int j = startingRegionNumber; j < size; j++) {
-			r = regions.get(j);
-			if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME && sdRegion.getText(r).trim().equals("import")) { //$NON-NLS-1$
-				if (size > j + 2) {
-					r = regions.get(j + 2);
-					if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-						value = sdRegion.getText(r);
-						pos.offset = sdRegion.getStartOffset(r);
-						pos.length = value.trim().length();
-						annotation.setText(annotation.getText() + " (in file: \"" + StringUtils.stripQuotes(value) + "\")"); //$NON-NLS-1$ //$NON-NLS-2$
-						break;
-					}
-				}
-			}
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.xml.reconcile.StructuredReconcileStep#release()
-	 */
-	public void release() {
-		if (fTranslationAdapter != null) {
-			if(DEBUG) {
-				System.out.println("ReconcileStepForJSPTranslation ["+this+"] releasing JSPTranslationAdapter " + fTranslationAdapter);
-			}
-			fTranslationAdapter.release();
-		}
-		super.release();
-	}
-    
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.reconciler.IReconcileStep#setInputModel(org.eclipse.jface.text.reconciler.IReconcilableModel)
-	 */
-	public void setInputModel(IReconcilableModel inputModel) {
-		// force to rebuild translation
-		fTranslationAdapter = null;
-		if (DEBUG) {
-			System.out.println("======================================"); //$NON-NLS-1$
-			System.out.println("setting input model" + inputModel); //$NON-NLS-1$
-			System.out.println("======================================"); //$NON-NLS-1$
-		}
-		super.setInputModel(inputModel);
-		
-		reinitTranslationAdapter(inputModel);
-	}
-
-	/**
-	 * @param inputModel
-	 */
-	private void reinitTranslationAdapter(IReconcilableModel inputModel) {
-
-		IDocument doc = null;
-		if (inputModel instanceof DocumentAdapter)
-			doc = ((DocumentAdapter) inputModel).getDocument();
-
-		if (doc != null) {
-			IStructuredModel model = null;
-			try {
-				model = StructuredModelManager.getModelManager().getExistingModelForRead(doc);
-				if(getJSPTranslationAdapter() != null)
-					getJSPTranslationAdapter().setXMLModel((XMLModel) model);
-			}
-			finally {
-				if (model != null)
-					model.releaseFromRead();
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/StructuredTextReconcilingStrategyForJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/StructuredTextReconcilingStrategyForJSP.java
deleted file mode 100644
index 7c0d7e8..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/StructuredTextReconcilingStrategyForJSP.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.reconcile;
-
-import org.eclipse.jface.text.reconciler.IReconcileStep;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.ui.internal.reconcile.AbstractStructuredTextReconcilingStrategy;
-
-/**
- * 
- * @author pavery
- */
-public class StructuredTextReconcilingStrategyForJSP extends AbstractStructuredTextReconcilingStrategy {
-
-	public StructuredTextReconcilingStrategyForJSP(ITextEditor editor) {
-		super(editor);
-	}
-
-	public void createReconcileSteps() {
-
-		// the order is:
-		// 1. translation step
-		// 2. java step
-		if (getFile() != null) {
-			IReconcileStep javaStep = new ReconcileStepForJava(getFile());
-			fFirstStep = new ReconcileStepForJspTranslation(javaStep);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/registry/AdapterFactoryProviderForJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/registry/AdapterFactoryProviderForJSP.java
deleted file mode 100644
index e31a839..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/registry/AdapterFactoryProviderForJSP.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.registry;
-
-import java.util.Iterator;
-
-import org.eclipse.jst.jsp.core.PageDirectiveAdapter;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapterFactory;
-import org.eclipse.jst.jsp.core.modelhandler.ModelHandlerForJSP;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.html.ui.views.contentoutline.JFaceNodeAdapterFactoryForHTML;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.modelhandler.IDocumentTypeHandler;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.sse.ui.registry.embedded.EmbeddedAdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.util.Assert;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.ui.views.properties.XMLPropertySourceAdapterFactory;
-
-/**
- * @author pavery
- */
-public class AdapterFactoryProviderForJSP implements AdapterFactoryProvider {
-
-	/*
-	 * @see AdapterFactoryProvider#addAdapterFactories(IStructuredModel)
-	 */
-	public void addAdapterFactories(IStructuredModel structuredModel) {
-		// these are the main factories, on model's factory registry
-		addContentBasedFactories(structuredModel);
-		// -------
-		// Must update/add to propagating adapters here too
-		addPropagatingAdapters(structuredModel);
-		// -------
-		// Must update/add to "editor side" embedded adapters here too
-		addEmbeddedContentFactories(structuredModel);
-
-	}
-
-	protected void addContentBasedFactories(IStructuredModel structuredModel) {
-		FactoryRegistry factoryRegistry = structuredModel.getFactoryRegistry();
-		Assert.isNotNull(factoryRegistry, "Program Error: client caller must ensure model has factory registry"); //$NON-NLS-1$
-		IAdapterFactory factory = null;
-		// == this list came from the previous "HTML only" list
-		//        factory = factoryRegistry.getFactoryFor(ContentAssistAdapter.class);
-		//        if (factory == null) {
-		//            factory = new HTMLContentAssistAdapterFactory(ContentAssistAdapter.class, false);
-		//            factoryRegistry.addFactory(factory);
-		//        }
-		//		factory = factoryRegistry.getFactoryFor(ContentAssistAdapter.class);
-		//		if (factory == null) {
-		//			factory = new JSPContentAssistAdapterFactory();
-		//			factoryRegistry.addFactory(factory);
-		//		}
-		//		factory = factoryRegistry.getFactoryFor(DoubleClickAdapter.class);
-		//		if (factory == null) {
-		//			factory = new DoubleClickAdapterFactory(DoubleClickAdapter.class, true);
-		//			factoryRegistry.addFactory(factory);
-		//		}
-		//		// == New adapter factories for tagInfo
-		//		factory = factoryRegistry.getFactoryFor(HoverHelpAdapter.class);
-		//		if (factory == null) {
-		//			factory = new JSPHoverHelpAdapterFactory(HoverHelpAdapter.class, true);
-		//			factoryRegistry.addFactory(factory);
-		//		}
-		//		factory = factoryRegistry.getFactoryFor(TagInfoProviderAdapter.class);
-		//		if (factory == null) {
-		//			factory = new JSTagInfoProviderAdapterFactory(TagInfoProviderAdapter.class, true);
-		//			factoryRegistry.addFactory(factory);
-		//		}
-		// ==
-		// == this list came from the previous 'for both XML and HTML' list
-		factory = factoryRegistry.getFactoryFor(IPropertySource.class);
-		if (factory == null) {
-			factory = new XMLPropertySourceAdapterFactory();
-			factoryRegistry.addFactory(factory);
-		}
-		factory = factoryRegistry.getFactoryFor(IJFaceNodeAdapter.class);
-		if (factory == null) {
-			factory = new JFaceNodeAdapterFactoryForHTML(IJFaceNodeAdapter.class, true);
-			factoryRegistry.addFactory(factory);
-		}
-
-		factory = factoryRegistry.getFactoryFor(IJSPTranslation.class);
-		if (factory == null) {
-			factory = new JSPTranslationAdapterFactory();
-			factoryRegistry.addFactory(factory);
-		}
-	}
-
-	protected void addEmbeddedContentFactories(IStructuredModel structuredModel) {
-
-		if (structuredModel instanceof XMLModel) {
-			XMLModel xmlModel = (XMLModel) structuredModel;
-			XMLDocument document = xmlModel.getDocument();
-			PageDirectiveAdapter pageDirectiveAdapter = (PageDirectiveAdapter) document.getAdapterFor(PageDirectiveAdapter.class);
-			if (pageDirectiveAdapter != null) {
-				// made into registry mechanism
-				AdapterFactoryRegistry adapterRegistry = JSPUIPlugin.getDefault().getEmbeddedAdapterFactoryRegistry();
-				Iterator adapterList = adapterRegistry.getAdapterFactories();
-				// And all those appropriate for this particular type of content
-				while (adapterList.hasNext()) {
-					EmbeddedAdapterFactoryProvider provider = (EmbeddedAdapterFactoryProvider) adapterList.next();
-					if (provider.isFor(pageDirectiveAdapter.getEmbeddedType())) {
-						provider.addAdapterFactories(structuredModel);
-					}
-				}
-			}
-		}
-
-	}
-
-	protected void addPropagatingAdapters(IStructuredModel structuredModel) {
-		//		if (structuredModel instanceof XMLModel) {
-		//			IAdapterFactory factory = null;
-		//			XMLModel xmlModel = (XMLModel) structuredModel;
-		//			XMLDocument document = xmlModel.getDocument();
-		//			PropagatingAdapter propagatingAdapter = (PropagatingAdapter) document.getAdapterFor(PropagatingAdapter.class);
-		//			if (propagatingAdapter != null) {
-		// DMW: 8/16/2002 removed since this one was no longer needed for page directive 
-		// lanague. It might still be needed for script and meta languages?
-		// but even they were "commented out" in the JSPPageDirectiveLineStyleUpdaterFactory
-		// so not sure what the plan it there.	
-		//				factory = new JSPPageDirectiveLineStyleUpdaterFactory();
-		//				propagatingAdapter.addAdaptOnCreateFactory(factory);
-		//				propagatingAdapter.initializeForFactory(factory, document);
-		//			}
-		//		}
-
-		if (structuredModel instanceof XMLModel) {
-//			IAdapterFactory factory = null;
-			XMLModel xmlModel = (XMLModel) structuredModel;
-			XMLDocument document = xmlModel.getDocument();
-			PropagatingAdapter propagatingAdapter = (PropagatingAdapter) document.getAdapterFor(PropagatingAdapter.class);
-			if (propagatingAdapter != null) {
-				//	checking if we should bother adding this factory
-				// if the preference says not to check validity, we don't bother creating this factory
-				// to improve performance...
-				//if(structuredModel.getStructuredPreferenceStore().getPreferenceString(CommonPreferenceNames.EDITOR_VALIDATION_METHOD).equals(CommonPreferenceNames.EDITOR_VALIDATION_CONTENT_MODEL)) {
-				//factory = new ReconcilerAdapterFactoryForXML();
-				//propagatingAdapter.addAdaptOnCreateFactory(factory);
-				// (pa) perf:
-				//propagatingAdapter.initializeForFactory(factory, xmlModel.getDocument());
-				//}
-			}
-		}
-	}
-
-	/*
-	 * @see AdapterFactoryProvider#isFor(ContentTypeDescription)
-	 */
-	public boolean isFor(IDocumentTypeHandler contentTypeDescription) {
-		return (contentTypeDescription instanceof ModelHandlerForJSP);
-	}
-
-	public void reinitializeFactories(IStructuredModel structuredModel) {
-		// assuming the original ones have been removed already
-		// from the page directives registry. The original ones
-		// are removed when the embeddedContentType is set.
-		addEmbeddedContentFactories(structuredModel);
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/LineStyleProviderForJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/LineStyleProviderForJSP.java
deleted file mode 100644
index b9506c1..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/LineStyleProviderForJSP.java
+++ /dev/null
@@ -1,231 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.style;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.wst.html.ui.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-
-public class LineStyleProviderForJSP extends AbstractLineStyleProvider implements LineStyleProvider{
-
-	private String language = null;
-
-	//    private static final String JAVA = "java"; //$NON-NLS-1$
-	//    private static final String[] JAVASCRIPT_LANGUAGE_KEYS = new String[] {
-	// "javascript", "javascript1.0", "javascript1.1_3", "javascript1.2",
-	// "javascript1.3", "javascript1.4", "javascript1.5", "javascript1.6",
-	// "jscript", "sashscript" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	// //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ //$NON-NLS-7$ //$NON-NLS-8$
-	// //$NON-NLS-9$ //$NON-NLS-10$
-
-	public LineStyleProviderForJSP() {
-		super();
-		loadColorsForJSPTags();
-	}
-
-	protected void clearColors() {
-		getTextAttributes().clear();
-	}
-
-	protected TextAttribute getAttributeFor(ITextRegion region) {
-		/**
-		 * a method to centralize all the "sytle rules" for regions
-		 */
-		TextAttribute result = null;
-		// not sure why this is coming through null, but just to catch it
-		if (region == null) {
-			result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.CDATA_TEXT);
-		}
-		else {
-
-			if (result == null) {
-				String type = region.getType();
-				if ((type == DOMJSPRegionContexts.JSP_SCRIPTLET_OPEN) || (type == DOMJSPRegionContexts.JSP_DECLARATION_OPEN) || (type == DOMJSPRegionContexts.JSP_EXPRESSION_OPEN) || (type == DOMJSPRegionContexts.JSP_DIRECTIVE_OPEN) || (type == DOMJSPRegionContexts.JSP_DIRECTIVE_CLOSE) || (type == DOMJSPRegionContexts.JSP_CLOSE)) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-				}
-				else if (type == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME || type == DOMJSPRegionContexts.JSP_ROOT_TAG_NAME) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_NAME);
-				}
-				else if ((type == DOMJSPRegionContexts.JSP_COMMENT_OPEN) || (type == DOMJSPRegionContexts.JSP_COMMENT_CLOSE)) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.COMMENT_BORDER);
-				}
-				else if (type == DOMJSPRegionContexts.JSP_COMMENT_TEXT) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.COMMENT_TEXT);
-				}
-				// ============ These are in common with XML --- (for XML form
-				// of tags)
-				//              Note: this assume's this provider is only called for
-				//              true JSP Nodes. If its called for others, then this will
-				//              cause their tag names to be highlighted too!
-				//              Further checks could be done to prevent that, but doesn't
-				//              seem worth it, since if adpaters factories are working
-				// right,
-				//              then wouldn't be needed.
-				else if (type == XMLRegionContext.XML_TAG_NAME) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_NAME);
-				}
-				else if ((type == XMLRegionContext.XML_TAG_OPEN) || (type == XMLRegionContext.XML_END_TAG_OPEN) || (type == XMLRegionContext.XML_TAG_CLOSE) || (type == XMLRegionContext.XML_EMPTY_TAG_CLOSE)) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_BORDER);
-				}
-				else if (type == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_ATTRIBUTE_NAME);
-				}
-				else if ((type == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) || (type == DOMJSPRegionContexts.XML_TAG_ATTRIBUTE_VALUE_DQUOTE) || (type == DOMJSPRegionContexts.XML_TAG_ATTRIBUTE_VALUE_SQUOTE)) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-				}
-				else if (type == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS);
-				}
-
-				// DMW: added 9/1/2002 Undefined color may need addjustment :)
-				else if (type == XMLRegionContext.UNDEFINED)
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-
-				else if (type == XMLRegionContext.WHITE_SPACE)
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-				// DMW added 8/30/2002 -- should provide JSP specific
-				// preference for "custom tag content" (both tag dependent,
-				// BLOCKED_TEXT, and not, XML CONTENT)
-				else if (type == XMLRegionContext.XML_CONTENT)
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-				else if (type == XMLRegionContext.BLOCK_TEXT)
-					result = (TextAttribute) getTextAttributes().get(IStyleConstantsXML.CDATA_TEXT);
-			}
-		}
-		// default, return null to signal "not handled"
-		// in which case, other factories should be tried
-		return result;
-	}
-
-
-	protected IPreferenceStore getColorPreferences() {
-		return JSPUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	protected void loadColorsForJSPTags() {
-		clearColors();
-
-		addTextAttribute(IStyleConstantsXML.TAG_NAME);
-		addTextAttribute(IStyleConstantsXML.TAG_BORDER);
-		addTextAttribute(IStyleConstantsXML.TAG_ATTRIBUTE_NAME);
-		addTextAttribute(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-		addTextAttribute(IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS);
-		addTextAttribute(IStyleConstantsXML.COMMENT_BORDER);
-		addTextAttribute(IStyleConstantsXML.COMMENT_TEXT);
-		addTextAttribute(IStyleConstantsXML.CDATA_BORDER);
-		addTextAttribute(IStyleConstantsXML.CDATA_TEXT);
-		addTextAttribute(IStyleConstantsXML.DECL_BORDER);
-		addTextAttribute(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID);
-		addTextAttribute(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF);
-		addTextAttribute(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF);
-		addTextAttribute(IStyleConstantsXML.DOCTYPE_NAME);
-		addTextAttribute(IStyleConstantsXML.PI_CONTENT);
-		addTextAttribute(IStyleConstantsXML.PI_BORDER);
-		addTextAttribute(IStyleConstantsXML.XML_CONTENT);
-		addTextAttribute(IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-	}
-
-	protected void handlePropertyChange(PropertyChangeEvent event) {
-		String styleKey = null;
-
-		if (event != null) {
-			String prefKey = event.getProperty();
-			// check if preference changed is a style preference
-			if (IStyleConstantsXML.TAG_NAME.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_NAME;
-			}
-			else if (IStyleConstantsXML.TAG_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_BORDER;
-			}
-			else if (IStyleConstantsXML.TAG_ATTRIBUTE_NAME.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_ATTRIBUTE_NAME;
-			}
-			else if (IStyleConstantsXML.TAG_ATTRIBUTE_VALUE.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_ATTRIBUTE_VALUE;
-			}
-			else if (IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS;
-			}
-			else if (IStyleConstantsXML.COMMENT_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.COMMENT_BORDER;
-			}
-			else if (IStyleConstantsXML.COMMENT_TEXT.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.COMMENT_TEXT;
-			}
-			else if (IStyleConstantsXML.CDATA_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.CDATA_BORDER;
-			}
-			else if (IStyleConstantsXML.CDATA_TEXT.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.CDATA_TEXT;
-			}
-			else if (IStyleConstantsXML.DECL_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DECL_BORDER;
-			}
-			else if (IStyleConstantsXML.DOCTYPE_EXTERNAL_ID.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DOCTYPE_EXTERNAL_ID;
-			}
-			else if (IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF;
-			}
-			else if (IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF;
-			}
-			else if (IStyleConstantsXML.DOCTYPE_NAME.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DOCTYPE_NAME;
-			}
-			else if (IStyleConstantsXML.PI_CONTENT.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.PI_CONTENT;
-			}
-			else if (IStyleConstantsXML.PI_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.PI_BORDER;
-			}
-			else if (IStyleConstantsXML.XML_CONTENT.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.XML_CONTENT;
-			}
-			else if (IStyleConstantsHTML.SCRIPT_AREA_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsHTML.SCRIPT_AREA_BORDER;
-			}
-		}
-
-		if (styleKey != null) {
-			// overwrite style preference with new value
-			addTextAttribute(styleKey);
-			super.handlePropertyChange(event);
-		}
-	}
-
-	/**
-	 * Returns the language.
-	 * 
-	 * @return String
-	 */
-	public String getLanguage() {
-		return language;
-	}
-
-	/**
-	 * Sets the language.
-	 * 
-	 * @param language
-	 *            The language to set
-	 */
-	public void setLanguage(String language) {
-		this.language = language;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaCodeScanner.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaCodeScanner.java
deleted file mode 100644
index d4a02f5..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaCodeScanner.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.style.java;
-
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.rules.EndOfLineRule;
-import org.eclipse.jface.text.rules.IRule;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.MultiLineRule;
-import org.eclipse.jface.text.rules.SingleLineRule;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.jface.text.rules.WhitespaceRule;
-import org.eclipse.jface.text.rules.WordRule;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.wst.sse.ui.util.EditorUtility;
-
-/**
- * A Java code scanner.
- */
-public class JavaCodeScanner extends org.eclipse.jface.text.rules.RuleBasedScanner {
-
-	private static String[] fgKeywords = {"abstract", //$NON-NLS-1$
-				"break", //$NON-NLS-1$
-				"case", "catch", "class", "continue", //$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				"default", "do", //$NON-NLS-2$//$NON-NLS-1$
-				"else", "extends", //$NON-NLS-2$//$NON-NLS-1$
-				"final", "finally", "for", //$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				"if", "implements", "import", "instanceof", "interface", //$NON-NLS-5$//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				"native", "new", //$NON-NLS-2$//$NON-NLS-1$
-				"package", "private", "protected", "public", //$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				"return", //$NON-NLS-1$
-				"static", "super", "switch", "synchronized", //$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				"this", "throw", "throws", "transient", "try", //$NON-NLS-5$//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				"volatile", //$NON-NLS-1$
-				"while", //$NON-NLS-1$
-				"strictfp",//$NON-NLS-1$
-	};
-	private static String[] fgTypes = {"void", "boolean", "char", "byte", "short", "int", "long", "float", "double"};//$NON-NLS-9$//$NON-NLS-8$//$NON-NLS-7$//$NON-NLS-6$//$NON-NLS-5$//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-	private static String[] fgConstants = {"false", "null", "true"};//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-
-	/**
-	 * Creates a Java code scanner
-	 */
-	public JavaCodeScanner() {
-		// if we use null here, system default will be used
-		Color background = null; //provider.getColor(JavaColorProvider.EDITOR_BACKGROUND);
-		
-		JavaColorProvider.getInstance().loadJavaColors();
-		IToken keyword = new Token(new TextAttribute(EditorUtility.getColor(JavaColorProvider.KEYWORD), background, JavaColorProvider.KEYWORD_BOLD));
-		IToken type = new Token(new TextAttribute(EditorUtility.getColor(JavaColorProvider.TYPE), background, JavaColorProvider.TYPE_BOLD));
-		IToken string = new Token(new TextAttribute(EditorUtility.getColor(JavaColorProvider.STRING), background, JavaColorProvider.STRING_BOLD));
-		IToken comment = new Token(new TextAttribute(EditorUtility.getColor(JavaColorProvider.SINGLE_LINE_COMMENT), background, JavaColorProvider.SINGLE_LINE_COMMENT_BOLD));
-		IToken other = new Token(new TextAttribute(EditorUtility.getColor(JavaColorProvider.DEFAULT), background, JavaColorProvider.DEFAULT_BOLD));
-
-
-		List rules = new ArrayList();
-
-		// Add rule for multiple line comments.
-		rules.add(new MultiLineRule("/*", "*/", comment));//$NON-NLS-1$ //$NON-NLS-2$
-
-		// Add rule for single line comments.
-		rules.add(new EndOfLineRule("//", comment));//$NON-NLS-1$
-
-		// Add rule for strings and character constants.
-		rules.add(new SingleLineRule("\"", "\"", string, '\\'));//$NON-NLS-2$//$NON-NLS-1$
-		rules.add(new SingleLineRule("'", "'", string, '\\'));//$NON-NLS-2$//$NON-NLS-1$
-
-		// Add generic whitespace rule.
-		rules.add(new WhitespaceRule(new JavaWhitespaceDetector()));
-
-		// Add word rule for keywords, types, and constants.
-		WordRule wordRule = new WordRule(new JavaWordDetector(), other);
-		for (int i = 0; i < fgKeywords.length; i++)
-			wordRule.addWord(fgKeywords[i], keyword);
-		for (int i = 0; i < fgTypes.length; i++)
-			wordRule.addWord(fgTypes[i], type);
-		for (int i = 0; i < fgConstants.length; i++)
-			wordRule.addWord(fgConstants[i], type);
-		rules.add(wordRule);
-
-
-		IRule[] result = new IRule[rules.size()];
-		rules.toArray(result);
-		setRules(result);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaColorProvider.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaColorProvider.java
deleted file mode 100644
index 74927c7..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaColorProvider.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.style.java;
-
-import org.eclipse.jdt.ui.PreferenceConstants;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.PreferenceConverter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.RGB;
-
-/**
- * Colors used in the Java editor
- */
-public class JavaColorProvider {
-	
-	// people should not be setting these, even though they are currently not final
-	public static RGB MULTI_LINE_COMMENT = new RGB(128, 0, 0);
-	public static RGB SINGLE_LINE_COMMENT = new RGB(128, 128, 0);
-	public static RGB KEYWORD = new RGB(0, 0, 128);
-	public static RGB TYPE = new RGB(0, 0, 128);
-	public static RGB STRING = new RGB(0, 128, 0);
-	public static RGB DEFAULT = new RGB(0, 0, 0);
-	public static RGB JAVADOC_KEYWORD = new RGB(0, 128, 0);
-	public static RGB JAVADOC_TAG = new RGB(128, 128, 128);
-	public static RGB JAVADOC_LINK = new RGB(128, 128, 128);
-	public static RGB JAVADOC_DEFAULT = new RGB(0, 128, 128);
-	
-	public static int MULTI_LINE_COMMENT_BOLD = SWT.NORMAL;
-	public static int SINGLE_LINE_COMMENT_BOLD = SWT.NORMAL;
-	public static int KEYWORD_BOLD = SWT.BOLD;
-	public static int TYPE_BOLD = SWT.BOLD;
-	public static int STRING_BOLD = SWT.NORMAL;
-	public static int DEFAULT_BOLD = SWT.NORMAL;
-	public static int JAVADOC_KEYWORD_BOLD = SWT.BOLD;
-	public static int JAVADOC_TAG_BOLD = SWT.NORMAL;
-	public static int JAVADOC_LINK_BOLD = SWT.NORMAL;
-	public static int JAVADOC_DEFAULT_BOLD = SWT.NORMAL;
-	
-	/**
-	 * @deprecated all editors use same
-	 */
-	public static RGB EDITOR_BACKGROUND = new RGB(255, 255, 255);
-	/**
-	 * @deprecated all editors use same
-	 */
-	public static boolean EDITOR_CURRENT_LINE = true;
-	/**
-	 * @deprecated all editors use same
-	 */
-	public static RGB EDITOR_CURRENT_LINE_COLOR = new RGB(128, 128, 128);
-	
-	private static JavaColorProvider fInstance = null;
-	
-	public static JavaColorProvider getInstance() {
-		if (fInstance == null) {
-			fInstance = new JavaColorProvider();
-		}
-		return fInstance;
-	}
-	
-	/**
-	 * Use colors from JDT plugin
-	 */
-	public void loadJavaColors() {
-		
-		IPreferenceStore jdtStore = PreferenceConstants.getPreferenceStore();
-		MULTI_LINE_COMMENT = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_MULTI_LINE_COMMENT_COLOR);
-		SINGLE_LINE_COMMENT = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_SINGLE_LINE_COMMENT_COLOR);
-		KEYWORD = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_JAVA_KEYWORD_COLOR);
-		TYPE = KEYWORD;
-		STRING = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_STRING_COLOR);
-		DEFAULT = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_JAVA_DEFAULT_COLOR);
-		JAVADOC_KEYWORD = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_JAVADOC_KEYWORD_COLOR);
-		JAVADOC_TAG = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_JAVADOC_TAG_COLOR);
-		JAVADOC_LINK = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_JAVADOC_LINKS_COLOR);
-		JAVADOC_DEFAULT = PreferenceConverter.getColor(jdtStore, PreferenceConstants.EDITOR_JAVADOC_DEFAULT_COLOR);
-		
-		MULTI_LINE_COMMENT_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_MULTI_LINE_COMMENT_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		SINGLE_LINE_COMMENT_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_SINGLE_LINE_COMMENT_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		KEYWORD_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_JAVA_KEYWORD_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		TYPE_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_JAVA_KEYWORD_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		STRING_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_STRING_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		DEFAULT_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_JAVA_DEFAULT_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		JAVADOC_TAG_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_JAVADOC_TAG_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		JAVADOC_LINK_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_JAVADOC_LINKS_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		JAVADOC_DEFAULT_BOLD = jdtStore.getBoolean(PreferenceConstants.EDITOR_JAVADOC_DEFAULT_BOLD) ? SWT.BOLD : SWT.NORMAL;
-		
-//		EDITOR_BACKGROUND = new RGB(255, 255, 255);
-		
-//		IPreferenceStore sseStore = SSEUIPlugin.getDefault().getPreferenceStore();
-//		EDITOR_CURRENT_LINE = sseStore.getBoolean(AbstractDecoratedTextEditorPreferenceConstants.EDITOR_CURRENT_LINE);
-//		EDITOR_CURRENT_LINE_COLOR = PreferenceConverter.getColor(sseStore, AbstractDecoratedTextEditorPreferenceConstants.EDITOR_CURRENT_LINE_COLOR);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaWhitespaceDetector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaWhitespaceDetector.java
deleted file mode 100644
index 381893e..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaWhitespaceDetector.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.style.java;
-
-
-
-/**
- * A java aware white space detector.
- */
-public class JavaWhitespaceDetector implements org.eclipse.jface.text.rules.IWhitespaceDetector {
-
-	/**
-	 * @see org.eclipse.jface.text.rules.IWhitespaceDetector#isWhitespace
-	 */
-	public boolean isWhitespace(char c) {
-		return Character.isWhitespace(c);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaWordDetector.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaWordDetector.java
deleted file mode 100644
index 77fe762..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/JavaWordDetector.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.style.java;
-
-
-/**
- * A Java aware word detector.
- */
-public class JavaWordDetector implements org.eclipse.jface.text.rules.IWordDetector {
-
-	/**
-	 * @see org.eclipse.jface.text.rules.IWordDetector#isWordIdentifierPart
-	 */
-	public boolean isWordPart(char c) {
-		return Character.isJavaIdentifierPart(c);
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.rules.IWordDetector#isWordIdentifierStart
-	 */
-	public boolean isWordStart(char c) {
-		return Character.isJavaIdentifierStart(c);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/LineStyleProviderForJava.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/LineStyleProviderForJava.java
deleted file mode 100644
index 8621c28..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/style/java/LineStyleProviderForJava.java
+++ /dev/null
@@ -1,206 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.style.java;
-
-import java.util.Collection;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.RuleBasedScanner;
-import org.eclipse.jface.text.rules.Token;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.wst.html.ui.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.ui.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-import org.eclipse.wst.sse.ui.util.EditorUtility;
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-import org.w3c.dom.Node;
-
-// Note: many of the methods in this class were based on (or copied from) those
-// found in the example Java Editor
-public class LineStyleProviderForJava extends AbstractLineStyleProvider implements LineStyleProvider{
-
-	private IDocument fDocument;
-	/** The scanner it uses */
-	protected RuleBasedScanner fScanner;
-	/** The default text attribute if non is returned as data by the current token */
-	protected TextAttribute fDefaultTextAttribute;
-	protected Node targetNode;
-
-	public LineStyleProviderForJava() {
-		super();
-		loadColors();
-		fScanner = new JavaCodeScanner();
-		fDefaultTextAttribute = new TextAttribute(EditorUtility.getColor(JavaColorProvider.DEFAULT));
-
-	}
-
-	/**
-	 * Adds style information to the given text presentation.
-	 *
-	 * @param presentation the text presentation to be extended
-	 * @param offset the offset of the range to be styled
-	 * @param length the length of the range to be styled
-	 * @param attr the attribute describing the style of the range to be styled
-	 */
-	protected void addRange(Collection presentation, int offset, int length, TextAttribute attr) {
-		
-		Point range = getHighlighter().getTextViewer().getSelectedRange();
-		int caret = range.x;
-		int selection = range.y;
-		IDocument doc = getDocument();
-		Color bg = attr.getBackground();
-		// all editors use same background color
-//		// if current line highlight on, use line highlight color for background
-//		if(JavaColorProvider.EDITOR_CURRENT_LINE && selection == 1) {
-//			try {
-//				IRegion lineRegion = doc.getLineInformation(doc.getLineOfOffset(caret));
-//				if(lineRegion.getOffset()<=offset && offset<=lineRegion.getOffset()+lineRegion.getLength())
-//					bg = EditorUtility.getColor(JavaColorProvider.EDITOR_CURRENT_LINE_COLOR);
-//						
-//			} catch (BadLocationException e) {
-//				Logger.logException(e);
-//			}
-//		}
-		
-		presentation.add(new StyleRange(offset, length, attr.getForeground(), bg, attr.getStyle()));
-	}
-
-	protected void clearColors() {
-		getTextAttributes().clear();
-	}
-
-	/**
-	 * Returns a text attribute encoded in the given token. If the token's
-	 * data is not <code>null</code> and a text attribute it is assumed that
-	 * it is the encoded text attribute. It returns the default text attribute
-	 * if there is no encoded text attribute found.
-	 *
-	 * @param token the token whose text attribute is to be determined
-	 * @return the token's text attribute
-	 */
-	protected TextAttribute getTokenTextAttribute(IToken token) {
-		Object data = token.getData();
-		if (data instanceof TextAttribute)
-			return (TextAttribute) data;
-		return fDefaultTextAttribute;
-	}
-
-	protected void loadColors() {
-		clearColors();
-		
-		addTextAttribute(IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-		addTextAttribute(IStyleConstantsXML.TAG_ATTRIBUTE_NAME);
-		addTextAttribute(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-	}
-
-	protected void handlePropertyChange(PropertyChangeEvent event) {
-		String styleKey = null;
-
-		if (event != null) {
-			String prefKey = event.getProperty();
-			// check if preference changed is a style preference
-			if (IStyleConstantsHTML.SCRIPT_AREA_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsHTML.SCRIPT_AREA_BORDER;
-			}
-			else if (IStyleConstantsXML.TAG_ATTRIBUTE_NAME.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_ATTRIBUTE_NAME;
-			}
-			else if (IStyleConstantsXML.TAG_ATTRIBUTE_VALUE.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_ATTRIBUTE_VALUE;
-			}
-		}
-
-		if (styleKey != null) {
-			// overwrite style preference with new value
-			addTextAttribute(styleKey);
-			super.handlePropertyChange(event);
-		}
-	}
-
-	public boolean prepareRegions(ITypedRegion typedRegion, int ssssrequestedStart, int ssssrequestedLength, Collection holdResults) {
-		boolean result = true;
-		try {
-			// ideally, eventually, we'll have a "virtualDocument" we can 
-			// refer to, but for now ... we'll simple rescan the one region.
-			// use simple adjustment (since "sub-content" starts at 0
-			int offsetAdjustment = typedRegion.getOffset();
-			String content = super.getDocument().get(typedRegion.getOffset(), typedRegion.getLength());
-			IDocument document = new Document(content);
-			this.setDocument(document);
-
-			int lastStart = 0;
-			int length = 0;
-			IToken lastToken = Token.UNDEFINED;
-
-			int remainingLength = typedRegion.getLength();
-			fScanner.setRange(fDocument, lastStart, remainingLength);
-
-			while (true) {
-
-				IToken token = fScanner.nextToken();
-
-				if (token.isEOF()) {
-					if (!lastToken.isUndefined() && length != 0)
-						addRange(holdResults, lastStart + offsetAdjustment, length, getTokenTextAttribute(lastToken));
-					break;
-				}
-
-				if (token.isWhitespace()) {
-					length += fScanner.getTokenLength();
-					continue;
-				}
-
-				if (lastToken.isUndefined()) {
-					lastToken = token;
-					length += fScanner.getTokenLength();
-					continue;
-				}
-
-				if (token != lastToken) {
-					addRange(holdResults, lastStart + offsetAdjustment, length, getTokenTextAttribute(lastToken));
-					lastToken = token;
-					lastStart = fScanner.getTokenOffset();
-					length = fScanner.getTokenLength();
-					continue;
-				}
-
-				length += fScanner.getTokenLength();
-			}
-		}
-		catch (BadLocationException e) {
-			// shouldn't happen, but we don't want it to stop other highlighting, if it does.
-			result = false;
-		}
-		return result;
-	}
-	
-	protected IPreferenceStore getColorPreferences() {
-		return JSPUIPlugin.getDefault().getPreferenceStore();
-	}
-	
-	protected void setDocument(IDocument document) {
-		fDocument = document;
-	}
-
-	public void setTargetNode(org.w3c.dom.Node newTargetNode) {
-		targetNode = newTargetNode;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/HTMLPrinter.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/HTMLPrinter.java
deleted file mode 100644
index 149f08f..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/HTMLPrinter.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.taginfo;
-
-
-import java.io.IOException;
-import java.io.Reader;
-import java.net.URL;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.SWTError;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-
-/**
- * Provides a set of convenience methods for creating HTML pages.
- * Copied from org.eclipse.jdt.internal.ui.text.HTMLPrinter
- */
-class HTMLPrinter {
-	
-	private static RGB BG_COLOR_RGB= null;
-	
-	static {
-		final Display display= Display.getDefault();
-		if (display != null && !display.isDisposed()) {
-			try {
-				display.asyncExec(new Runnable() {
-					/*
-					 * @see java.lang.Runnable#run()
-					 */
-					public void run() {
-						BG_COLOR_RGB= display.getSystemColor(SWT.COLOR_INFO_BACKGROUND).getRGB();
-					}
-				});
-			} catch (SWTError err) {
-				// see: https://bugs.eclipse.org/bugs/show_bug.cgi?id=45294
-				if (err.code != SWT.ERROR_DEVICE_DISPOSED)
-					throw err;
-			}
-		}
-	}
-			
-	private HTMLPrinter() {
-	}
-	
-	private static String replace(String text, char c, String s) {
-				
-		int previous= 0;
-		int current= text.indexOf(c, previous);
-		
-		if (current == -1)
-			return text;
-		
-		StringBuffer buffer= new StringBuffer();	
-		while (current > -1) {
-			buffer.append(text.substring(previous, current));
-			buffer.append(s);
-			previous= current + 1;
-			current= text.indexOf(c, previous);
-		}
-		buffer.append(text.substring(previous));
-		
-		return buffer.toString();
-	}
-	
-	public static String convertToHTMLContent(String content) {
-		content= replace(content, '<', "&lt;"); //$NON-NLS-1$
-		return replace(content, '>', "&gt;"); //$NON-NLS-1$
-	}
-	
-	public static String read(Reader rd) {
-		
-		StringBuffer buffer= new StringBuffer();
-		char[] readBuffer= new char[2048];
-		
-		try {
-			int n= rd.read(readBuffer);
-			while (n > 0) {
-				buffer.append(readBuffer, 0, n);
-				n= rd.read(readBuffer);
-			}
-			return buffer.toString();
-		} catch (IOException x) {
-		}
-		
-		return null;
-	}
-
-	public static void insertPageProlog(StringBuffer buffer, int position, RGB bgRGB, URL styleSheetURL) {
-		
-		if (bgRGB == null)
-			insertPageProlog(buffer, position, styleSheetURL);
-		else {
-			StringBuffer pageProlog= new StringBuffer(300);
-			
-			pageProlog.append("<html>"); //$NON-NLS-1$
-			
-			appendStyleSheetLink(pageProlog, styleSheetURL);
-			
-			pageProlog.append("<body text=\"#000000\" bgcolor=\""); //$NON-NLS-1$
-			appendColor(pageProlog, bgRGB);
-			pageProlog.append("\"><font size=-1>"); //$NON-NLS-1$
-			
-			buffer.insert(position,  pageProlog.toString());
-		}
-	}
-	
-	public static void insertPageProlog(StringBuffer buffer, int position, RGB bgRGB) {
-		if (bgRGB == null)
-			insertPageProlog(buffer, position);
-		else {
-			StringBuffer pageProlog= new StringBuffer(60);
-			pageProlog.append("<html><body text=\"#000000\" bgcolor=\""); //$NON-NLS-1$
-			appendColor(pageProlog, bgRGB);
-			pageProlog.append("\"><font size=-1>"); //$NON-NLS-1$
-			buffer.insert(position,  pageProlog.toString());
-		}
-	}
-	
-	private static void appendStyleSheetLink(StringBuffer buffer, URL styleSheetURL) {
-		if (styleSheetURL == null)
-			return;
-
-		buffer.append("<head>"); //$NON-NLS-1$
-		
-		buffer.append("<LINK REL=\"stylesheet\" HREF= \""); //$NON-NLS-1$
-		buffer.append(styleSheetURL);
-		buffer.append("\" CHARSET=\"ISO-8859-1\" TYPE=\"text/css\">"); //$NON-NLS-1$
-
-		buffer.append("</head>"); //$NON-NLS-1$
-	}
-	
-	private static void appendColor(StringBuffer buffer, RGB rgb) {
-		buffer.append('#');
-		buffer.append(Integer.toHexString(rgb.red));
-		buffer.append(Integer.toHexString(rgb.green));
-		buffer.append(Integer.toHexString(rgb.blue));
-	}
-
-	public static void insertPageProlog(StringBuffer buffer, int position) {
-		insertPageProlog(buffer, position, getBgColor()); //$NON-NLS-1$
-	}
-	
-	public static void insertPageProlog(StringBuffer buffer, int position, URL styleSheetURL) {
-		insertPageProlog(buffer, position, getBgColor(), styleSheetURL); //$NON-NLS-1$
-	}
-	
-	private static RGB getBgColor() {
-		if (BG_COLOR_RGB != null)
-			return BG_COLOR_RGB;
-		else
-			return new RGB(255,255, 225); // RGB value of info bg color on WindowsXP
-		
-	}
-	
-	public static void addPageProlog(StringBuffer buffer) {
-		insertPageProlog(buffer, buffer.length());
-	}
-	
-	public static void addPageEpilog(StringBuffer buffer) {
-		buffer.append("</font></body></html>"); //$NON-NLS-1$
-	}
-	
-	public static void startBulletList(StringBuffer buffer) {
-		buffer.append("<ul>"); //$NON-NLS-1$
-	}
-	
-	public static void endBulletList(StringBuffer buffer) {
-		buffer.append("</ul>"); //$NON-NLS-1$
-	}
-	
-	public static void addBullet(StringBuffer buffer, String bullet) {
-		if (bullet != null) {
-			buffer.append("<li>"); //$NON-NLS-1$
-			buffer.append(bullet);
-			buffer.append("</li>"); //$NON-NLS-1$
-		}
-	}
-	
-	public static void addSmallHeader(StringBuffer buffer, String header) {
-		if (header != null) {
-			buffer.append("<h5>"); //$NON-NLS-1$
-			buffer.append(header);
-			buffer.append("</h5>"); //$NON-NLS-1$
-		}
-	}
-	
-	public static void addParagraph(StringBuffer buffer, String paragraph) {
-		if (paragraph != null) {
-			buffer.append("<p>"); //$NON-NLS-1$
-			buffer.append(paragraph);
-		}
-	}
-	
-	public static void addParagraph(StringBuffer buffer, Reader paragraphReader) {
-		if (paragraphReader != null)
-			addParagraph(buffer, read(paragraphReader));
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPBestMatchHoverProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPBestMatchHoverProcessor.java
deleted file mode 100644
index 35c828d..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPBestMatchHoverProcessor.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.taginfo.AbstractBestMatchHoverProcessor;
-
-/**
- * Provides the best jsp hover help documentation (by using other hover help processors)
- * Priority of hover help processors is:
- * AnnotationHoverProcessor, JSPTagInfoHoverProcessor
- */
-public class JSPBestMatchHoverProcessor extends AbstractBestMatchHoverProcessor {
-	JSPTagInfoHoverProcessor fTagInfoHover;
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.structured.taginfo.AbstractBestMatchHoverProcessor#getTagInfoHover()
-	 */
-	protected ITextHover getTagInfoHover() {
-		if (fTagInfoHover == null) {
-			fTagInfoHover = new JSPTagInfoHoverProcessor();
-		}
-		return fTagInfoHover;
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaBestMatchHoverProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaBestMatchHoverProcessor.java
deleted file mode 100644
index 2f288bf..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaBestMatchHoverProcessor.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.taginfo.AbstractBestMatchHoverProcessor;
-
-/**
- * Provides the best jsp java hover help documentation (by using other hover help processors)
- * Priority of hover help processors is:
- * AnnotationHoverProcessor, JSPJavaJavadocHover
- */
-public class JSPJavaBestMatchHoverProcessor extends AbstractBestMatchHoverProcessor {
-	private JSPJavaJavadocHoverProcessor fTagInfoHover;
-
-	protected ITextHover getTagInfoHover() {
-		if (fTagInfoHover == null) {
-			fTagInfoHover = new JSPJavaJavadocHoverProcessor();
-		}
-		return fTagInfoHover;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocHover.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocHover.java
deleted file mode 100644
index 2c7b29a..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocHover.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.taginfo;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-
-/**
- * Provides javadoc hover help documentation for java code inside JSPs
- * @deprecated use JSPJavaJavadocHoverProcessor instead
- */
-public class JSPJavaJavadocHover extends JavadocHover {
-	
-	public String getHoverInfo(ITextViewer textViewer, IRegion hoverRegion) {
-		// get JSP translation object for this viewer's document
-		XMLModel xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(textViewer.getDocument());
-		try {
-			if(xmlModel != null) {
-				XMLDocument xmlDoc = xmlModel.getDocument();
-				JSPTranslationAdapter adapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-				if (adapter != null) {
-					JSPTranslation translation = adapter.getJSPTranslation();
-					IJavaElement[] result = translation.getElementsFromJspRange(hoverRegion.getOffset(), hoverRegion.getOffset() + hoverRegion.getLength());
-					return getHoverInfo(result);
-				}
-			}
-		}
-		finally {
-			if(xmlModel != null) 
-				xmlModel.releaseFromRead();
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocHoverProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocHoverProcessor.java
deleted file mode 100644
index 3528afa..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPJavaJavadocHoverProcessor.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.taginfo;
-
-import java.io.Reader;
-
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IMember;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.ui.JavaElementLabels;
-import org.eclipse.jdt.ui.JavadocContentAccess;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jst.jsp.core.internal.java.IJSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslation;
-import org.eclipse.jst.jsp.core.internal.java.JSPTranslationAdapter;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-
-/**
- * Provides javadoc hover help documentation for java code inside JSPs
- */
-public class JSPJavaJavadocHoverProcessor implements ITextHover {
-	private final long LABEL_FLAGS=  JavaElementLabels.ALL_FULLY_QUALIFIED
-	| JavaElementLabels.M_PRE_RETURNTYPE | JavaElementLabels.M_PARAMETER_TYPES | JavaElementLabels.M_PARAMETER_NAMES | JavaElementLabels.M_EXCEPTIONS 
-	| JavaElementLabels.F_PRE_TYPE_SIGNATURE;
-	
-	private String getInfoText(IJavaElement member) {
-		String label= JavaElementLabels.getElementLabel(member, LABEL_FLAGS);
-		StringBuffer buf= new StringBuffer();
-		for (int i= 0; i < label.length(); i++) {
-			char ch= label.charAt(i);
-			if (ch == '<') {
-				buf.append("&lt;"); //$NON-NLS-1$
-			} else if (ch == '>') {
-				buf.append("&gt;"); //$NON-NLS-1$
-			} else {
-				buf.append(ch);
-			}
-		}
-		return buf.toString();
-	}
-	
-	private String getHoverInfo(IJavaElement[] result) {
-		StringBuffer buffer= new StringBuffer();
-		int nResults= result.length;
-		if (nResults == 0)
-			return null;
-		
-		if (nResults > 1) {
-			
-			for (int i= 0; i < result.length; i++) {
-				HTMLPrinter.startBulletList(buffer);
-				IJavaElement curr= result[i];
-				if (curr instanceof IMember || curr.getElementType() == IJavaElement.LOCAL_VARIABLE)
-					HTMLPrinter.addBullet(buffer, getInfoText(curr));
-				HTMLPrinter.endBulletList(buffer);
-			}
-			
-		} else {
-			
-			IJavaElement curr= result[0];
-			if (curr instanceof IMember) {
-				IMember member= (IMember) curr;
-				HTMLPrinter.addSmallHeader(buffer, getInfoText(member));
-				Reader reader;
-				try {
-					reader= JavadocContentAccess.getHTMLContentReader(member, true);
-				} catch (JavaModelException ex) {
-					return null;
-				}
-				if (reader != null) {
-					HTMLPrinter.addParagraph(buffer, reader);
-				}
-			} else if (curr.getElementType() == IJavaElement.LOCAL_VARIABLE)
-				HTMLPrinter.addSmallHeader(buffer, getInfoText(curr));
-		}
-		
-		if (buffer.length() > 0) {
-			HTMLPrinter.insertPageProlog(buffer, 0);
-			HTMLPrinter.addPageEpilog(buffer);
-			return buffer.toString();
-		}
-		
-		return null;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.ITextHover#getHoverInfo(org.eclipse.jface.text.ITextViewer, org.eclipse.jface.text.IRegion)
-	 */
-	public String getHoverInfo(ITextViewer textViewer, IRegion hoverRegion) {
-		// get JSP translation object for this viewer's document
-		XMLModel xmlModel = (XMLModel) StructuredModelManager.getModelManager().getExistingModelForRead(textViewer.getDocument());
-		try {
-			if(xmlModel != null) {
-				XMLDocument xmlDoc = xmlModel.getDocument();
-				JSPTranslationAdapter adapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
-				if (adapter != null) {
-					JSPTranslation translation = adapter.getJSPTranslation();
-					IJavaElement[] result = translation.getElementsFromJspRange(hoverRegion.getOffset(), hoverRegion.getOffset() + hoverRegion.getLength());
-					return getHoverInfo(result);
-				}
-			}
-		}
-		finally {
-			if(xmlModel != null) 
-				xmlModel.releaseFromRead();
-		}
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.ITextHover#getHoverRegion(org.eclipse.jface.text.ITextViewer, int)
-	 */
-	public IRegion getHoverRegion(ITextViewer textViewer, int offset) {
-		return JavaWordFinder.findWord(textViewer.getDocument(), offset);
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPTagInfoHoverProcessor.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPTagInfoHoverProcessor.java
deleted file mode 100644
index f64bed6..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JSPTagInfoHoverProcessor.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.taginfo;
-
-
-
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.html.ui.taginfo.HTMLTagInfoHoverProcessor;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.document.XMLNode;
-
-/**
- * Provides hover help documentation for JSP tags
- */
-public class JSPTagInfoHoverProcessor extends HTMLTagInfoHoverProcessor {
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sed.structured.taginfo.AbstractTextHoverProcessor#computeRegionHelp(com.ibm.sed.model.IndexedRegion, com.ibm.sed.model.xml.XMLNode, com.ibm.sed.structured.text.IStructuredDocumentRegion, com.ibm.sed.structured.text.ITextRegion)
-	 */
-	protected String computeRegionHelp(IndexedRegion treeNode, XMLNode parentNode, IStructuredDocumentRegion flatNode, ITextRegion region) {
-		String result = null;
-
-		if (region == null)
-			return null;
-
-		String regionType = region.getType();
-		if (regionType == DOMJSPRegionContexts.JSP_DIRECTIVE_NAME) {
-			result = computeJSPDirHelp((XMLNode) treeNode, parentNode, flatNode, region);
-		}
-		else
-			result = super.computeRegionHelp(treeNode, parentNode, flatNode, region);
-
-		return result;
-	}
-
-	/**
-	 * Computes the hover help for the jsp directive name
-	 * for now, treat jsp directives like any other tag name
-	 */
-	protected String computeJSPDirHelp(XMLNode xmlnode, XMLNode parentNode, IStructuredDocumentRegion flatNode, ITextRegion region) {
-		return computeTagNameHelp(xmlnode, parentNode, flatNode, region);
-	}
-
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JavaWordFinder.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JavaWordFinder.java
deleted file mode 100644
index d3c5b67..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/taginfo/JavaWordFinder.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.taginfo;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Region;
-
-/**
- * Copied from org.eclipse.jdt.internal.ui.text.JavaWordFinder
- */
-class JavaWordFinder {
-	
-	public static IRegion findWord(IDocument document, int offset) {
-		
-		int start= -1;
-		int end= -1;
-		
-		
-		try {
-			
-			int pos= offset;
-			char c;
-			
-			while (pos >= 0) {
-				c= document.getChar(pos);
-				if (!Character.isJavaIdentifierPart(c))
-					break;
-				--pos;
-			}
-			
-			start= pos;
-			
-			pos= offset;
-			int length= document.getLength();
-			
-			while (pos < length) {
-				c= document.getChar(pos);
-				if (!Character.isJavaIdentifierPart(c))
-					break;
-				++pos;
-			}
-			
-			end= pos;
-			
-		} catch (BadLocationException x) {
-		}
-		
-		if (start > -1 && end > -1) {
-			if (start == offset && end == offset)
-				return new Region(offset, 0);
-			else if (start == offset)
-				return new Region(start, end - start);
-			else
-				return new Region(start + 1, end - start - 1);
-		}
-		
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/EncodingTemplateVariableResolverJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/EncodingTemplateVariableResolverJSP.java
deleted file mode 100644
index 7e824a0..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/EncodingTemplateVariableResolverJSP.java
+++ /dev/null
@@ -1,37 +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.jst.jsp.ui.internal.templates;
-
-import org.eclipse.jface.text.templates.SimpleTemplateVariableResolver;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.jst.jsp.core.internal.JSPCorePlugin;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-
-
-public class EncodingTemplateVariableResolverJSP extends SimpleTemplateVariableResolver {
-	private static final String ENCODING_TYPE = getEncodingType();
-
-	private static String getEncodingType() {
-		return "encoding";
-	}
-
-	/**
-	 * Creates a new encoding variable
-	 */
-	public EncodingTemplateVariableResolverJSP() {
-		super(ENCODING_TYPE, "Creating files encoding preference");
-	}
-
-	protected String resolve(TemplateContext context) {
-		return JSPCorePlugin.getDefault().getPluginPreferences().getString(CommonEncodingPreferenceNames.OUTPUT_CODESET);
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/TemplateContextTypeIdsJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/TemplateContextTypeIdsJSP.java
deleted file mode 100644
index 8e5d9e3..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/TemplateContextTypeIdsJSP.java
+++ /dev/null
@@ -1,50 +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.jst.jsp.ui.internal.templates;
-
-
-public class TemplateContextTypeIdsJSP {
-
-	public static final String ALL = getAll();
-
-	public static final String ATTRIBUTE = getAttribute();
-
-	public static final String ATTRIBUTE_VALUE = getAttributeValue();
-
-	public static final String NEW = getNew();
-
-	public static final String TAG = getTag();
-
-	private static String getAll() {
-		return getPrefix() + "_all"; //$NON-NLS-1$
-	}
-
-	private static String getAttribute() {
-		return getPrefix() + "_attribute"; //$NON-NLS-1$
-	}
-
-	private static String getAttributeValue() {
-		return getPrefix() + "_attribute_value"; //$NON-NLS-1$
-	}
-
-	private static String getNew() {
-		return getPrefix() + "_new"; //$NON-NLS-1$
-	}
-
-	private static String getPrefix() {
-		return "jsp"; //$NON-NLS-1$
-	}
-
-	private static String getTag() {
-		return getPrefix() + "_tag"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/TemplateContextTypeJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/TemplateContextTypeJSP.java
deleted file mode 100644
index a907d25..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/templates/TemplateContextTypeJSP.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.templates;
-
-import org.eclipse.jface.text.templates.GlobalTemplateVariables;
-import org.eclipse.jface.text.templates.TemplateContextType;
-
-/**
- * Base class for JSP template context types. Templates of this context type
- * apply to any place within JSP content type.
- */
-public class TemplateContextTypeJSP extends TemplateContextType {
-	public TemplateContextTypeJSP() {
-		super();
-		addResolver(new GlobalTemplateVariables.Cursor());
-		addResolver(new GlobalTemplateVariables.Date());
-		addResolver(new GlobalTemplateVariables.Dollar());
-		addResolver(new GlobalTemplateVariables.LineSelection());
-		addResolver(new GlobalTemplateVariables.Time());
-		addResolver(new GlobalTemplateVariables.User());
-		addResolver(new GlobalTemplateVariables.WordSelection());
-		addResolver(new GlobalTemplateVariables.Year());
-		addResolver(new EncodingTemplateVariableResolverJSP());
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JSPDocumentRegionEdgeMatcher.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JSPDocumentRegionEdgeMatcher.java
deleted file mode 100644
index 240e4fc..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/text/JSPDocumentRegionEdgeMatcher.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.text;
-
-import org.eclipse.jdt.internal.ui.text.JavaPairMatcher;
-import org.eclipse.jst.jsp.core.model.parser.DOMJSPRegionContexts;
-import org.eclipse.wst.sse.ui.text.DocumentRegionEdgeMatcher;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-public class JSPDocumentRegionEdgeMatcher extends DocumentRegionEdgeMatcher {
-
-	protected final static char[] BRACKETS = {'{', '}', '(', ')', '[', ']'};
-
-	/**
-	 * @param validContexts
-	 * @param nextMatcher
-	 */
-	public JSPDocumentRegionEdgeMatcher() {
-		super(new String[]{XMLRegionContext.XML_TAG_NAME, XMLRegionContext.XML_COMMENT_TEXT, DOMJSPRegionContexts.JSP_COMMENT_TEXT, DOMJSPRegionContexts.JSP_DIRECTIVE_NAME, DOMJSPRegionContexts.JSP_ROOT_TAG_NAME, XMLRegionContext.XML_CDATA_TEXT, XMLRegionContext.XML_PI_OPEN, XMLRegionContext.XML_PI_CONTENT}, new JavaPairMatcher(BRACKETS));
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/views/contentoutline/JSPContentOutlineConfiguration.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/views/contentoutline/JSPContentOutlineConfiguration.java
deleted file mode 100644
index c643705..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/views/contentoutline/JSPContentOutlineConfiguration.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.jsp.ui.internal.views.contentoutline;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.wst.html.ui.views.contentoutline.HTMLContentOutlineConfiguration;
-
-//public class JSPContentOutlineConfiguration extends StructuredContentOutlineConfiguration {
-public class JSPContentOutlineConfiguration extends HTMLContentOutlineConfiguration {
-
-	//	private static final String ATT_CLASS = "class"; //$NON-NLS-1$
-
-	// TODO: Automate the loading of a real configuration based on the model type at
-	// creation time; clear on unConfigure so that a new embedded configuration can
-	// be used
-	//private StructuredContentOutlineConfiguration fEmbeddedConfiguration = null;
-
-	/**
-	 * @param editor
-	 */
-	public JSPContentOutlineConfiguration() {
-		super();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration#getPreferenceStore()
-	 */
-	protected IPreferenceStore getPreferenceStore() {
-		return JSPUIPlugin.getDefault().getPreferenceStore();
-	}
-}
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPWizard.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPWizard.java
deleted file mode 100644
index f8202ca..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/wizard/NewJSPWizard.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package org.eclipse.jst.jsp.ui.internal.wizard;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.jst.jsp.ui.internal.JSPUIPlugin;
-import org.eclipse.jst.jsp.ui.internal.Logger;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
-import org.eclipse.ui.ide.IDE;
-
-public class NewJSPWizard extends Wizard implements INewWizard {
-	static String PAGE_IMAGE = "/icons/full/wizban/newjspfile_wiz.gif";
-	private WizardNewFileCreationPage fNewFilePage;
-	private IStructuredSelection fSelection;
-	List fValidExtensions = new ArrayList(Arrays.asList(new String[]{"jsp", "jspf"}));
-
-	public void addPages() {
-		fNewFilePage = new WizardNewFileCreationPage("JSPWizardNewFileCreationPage", new StructuredSelection(IDE.computeSelectedResources(fSelection))) {
-			protected boolean validatePage() {
-				IPath handlePath = new Path(getFileName());
-				String extension = handlePath.getFileExtension();
-				if (extension == null || !fValidExtensions.contains(extension)) {
-					setErrorMessage(JSPUIPlugin.getResourceString("%_ERROR_FILENAME_MUST_END_JSP"));
-					return false;
-				}
-				setErrorMessage(null);
-				return super.validatePage();
-			}
-		};
-		fNewFilePage.setTitle(JSPUIPlugin.getResourceString("%_UI_WIZARD_NEW_HEADING"));
-		fNewFilePage.setDescription(JSPUIPlugin.getResourceString("%_UI_WIZARD_NEW_DESCRIPTION"));
-
-		addPage(fNewFilePage);
-	}
-
-	public void init(IWorkbench aWorkbench, IStructuredSelection aSelection) {
-		fSelection = aSelection;
-		setWindowTitle(JSPUIPlugin.getResourceString("%_UI_WIZARD_NEW_TITLE"));
-		if (PAGE_IMAGE != null) {
-			ImageDescriptor descriptor = JSPUIPlugin.getDefault().getImageRegistry().getDescriptor(PAGE_IMAGE);
-			if (descriptor == null) {
-				descriptor = ImageDescriptor.createFromURL(JSPUIPlugin.getDefault().getBundle().getEntry(PAGE_IMAGE));
-				JSPUIPlugin.getDefault().getImageRegistry().put(PAGE_IMAGE, descriptor);
-			}
-			setDefaultPageImageDescriptor(descriptor);
-		}
-	}
-
-	private void openEditor(final IFile file) {
-		if (file != null) {
-			getShell().getDisplay().asyncExec(new Runnable() {
-				public void run() {
-					try {
-						IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-						IDE.openEditor(page, file, true);
-					}
-					catch (PartInitException e) {
-						Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-					}
-				}
-			});
-		}
-	}
-
-	public boolean performFinish() {
-		IFile file = fNewFilePage.createNewFile();
-		openEditor(file);
-		return true;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates.properties
deleted file mode 100644
index e42dada..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates.properties
+++ /dev/null
@@ -1,40 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=JSP scriptlet
-Templates.jspscriptlet.desc=JSP scriptlet <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=JSP hidden comment
-Templates.jsphiddencomment.desc=JSP hidden comment <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=JSP declaration(s)
-Templates.jspdeclaration.desc=JSP declaration(s) <%!..%>
-Templates.jspdeclaration.content=<%! ${cursor} %>
-Templates.jspexpression.name=JSP expression
-Templates.jspexpression.desc=JSP expression <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=JSP include directive
-Templates.jspincludedirective.desc=JSP include directive
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=JSP page directive
-Templates.jsppagedirective.desc=JSP page directive
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" %>
-Templates.jsptaglibdirective.name=JSP taglib directive
-Templates.jsptaglibdirective.desc=JSP taglib directive
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jsphtml.name=JSP (html)
-Templates.jsphtml.desc=JSP with html markup
-Templates.jsphtml.content=<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">\n<html>\n<head>\n<%@ page language="java" contentType="text/html; charset=${encoding}"\n    pageEncoding="${encoding}"%>\n<meta http-equiv="Content-Type" content="text/html; charset=${encoding}">\n<title>Insert title here</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.jspxhtml.name=JSP (xhtml)
-Templates.jspxhtml.desc=JSP with xhtml markup
-Templates.jspxhtml.content=<?xml version="1.0" encoding="${encoding}" ?>\n<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml">\n<head>\n<%@ page language="java" contentType="text/html; charset=${encoding}"\n    pageEncoding="${encoding}"%>\n<meta http-equiv="Content-Type" content="text/html; charset=${encoding}" />\n<title>Insert title here</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.jspxhtmlxml.name=JSP (xhtml, xml syntax)
-Templates.jspxhtmlxml.desc=JSP with xhtml markup and xml style syntax
-Templates.jspxhtmlxml.content=<?xml version="1.0" encoding="${encoding}" ?>\n<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0">\n    <jsp:directive.page language="java"\n        contentType="text/html; charset=${encoding}" pageEncoding="${encoding}" />\n    <jsp:text>\n        <![CDATA[ <?xml version="1.0" encoding="${encoding}" ?> ]]>\n    </jsp:text>\n    <jsp:text>\n        <![CDATA[ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ]]>\n    </jsp:text>\n<html xmlns="http://www.w3.org/1999/xhtml">\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=${encoding}" />\n<title>Insert title here</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>\n</jsp:root>
\ No newline at end of file
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates.xml b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates.xml
deleted file mode 100644
index ce765c1..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<templates>
-
-<template name="%Templates.jspscriptlet.name" description="%Templates.jspscriptlet.desc" id="com.ibm.sse.editor.jsp.templates.jspscriptlet" context="jsp_tag" enabled="true">%Templates.jspscriptlet.content</template>
-
-<template name="%Templates.jsphiddencomment.name" description="%Templates.jsphiddencomment.desc" id="com.ibm.sse.editor.jsp.templates.jsphiddencomment" context="jsp_tag" enabled="true">%Templates.jsphiddencomment.content</template>
-
-<template name="%Templates.jspdeclaration.name" description="%Templates.jspdeclaration.desc" id="com.ibm.sse.editor.jsp.templates.jspdeclaration" context="jsp_tag" enabled="true">%Templates.jspdeclaration.content</template>
-
-<template name="%Templates.jspexpression.name" description="%Templates.jspexpression.desc" id="com.ibm.sse.editor.jsp.templates.jspexpression" context="jsp_tag" enabled="true">%Templates.jspexpression.content</template>
-
-<template name="%Templates.jspincludedirective.name" description="%Templates.jspincludedirective.desc" id="com.ibm.sse.editor.jsp.templates.jspincludedirective" context="jsp_tag" enabled="true">%Templates.jspincludedirective.content</template>
-
-<template name="%Templates.jsppagedirective.name" description="%Templates.jsppagedirective.desc" id="com.ibm.sse.editor.jsp.templates.jsppagedirective" context="jsp_tag" enabled="true">%Templates.jsppagedirective.content</template>
-
-<template name="%Templates.jsptaglibdirective.name" description="%Templates.jsptaglibdirective.desc" id="com.ibm.sse.editor.jsp.templates.jsptaglibdirective" context="jsp_tag" enabled="true">%Templates.jsptaglibdirective.content</template>
-
-<template name="%Templates.jsphtml.name" description="%Templates.jsphtml.desc" id="com.ibm.sse.editor.jsp.templates.jsphtml" context="jsp_new" enabled="true">%Templates.jsphtml.content</template>
-
-<template name="%Templates.jspxhtml.name" description="%Templates.jspxhtml.desc" id="com.ibm.sse.editor.jsp.templates.jspxhtml" context="jsp_new" enabled="true">%Templates.jspxhtml.content</template>
-
-<template name="%Templates.jspxhtmlxml.name" description="%Templates.jspxhtmlxml.desc" id="com.ibm.sse.editor.jsp.templates.jspxhtmlxml" context="jsp_new" enabled="true">%Templates.jspxhtmlxml.content</template>
-</templates>
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_de.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_de.properties
deleted file mode 100644
index bf37789..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_de.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=JSP-Scriptlet
-Templates.jspscriptlet.desc=JSP-Scriptlet <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=ausgeblendeter JSP-Kommentar
-Templates.jsphiddencomment.desc=ausgeblendeter JSP-Kommentar <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=JSP-Deklaration(en)
-Templates.jspdeclaration.desc=JSP-Deklaration(en) <%!..%>
-Templates.jspdeclaration.content=<%! ${cursor} %>
-Templates.jspexpression.name=JSP-Ausdruck
-Templates.jspexpression.desc=JSP-Ausdruck <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=JSP-Include-Anweisung
-Templates.jspincludedirective.desc=JSP-Include-Anweisung
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=JSP-Seitenanweisung
-Templates.jsppagedirective.desc=JSP-Seitenanweisung
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=JSP-Taglib-Anweisung
-Templates.jsptaglibdirective.desc=JSP-Taglib-Anweisung
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=JSP-Kommentar
-Templates.jspcomment.desc=JSP-Kommentar <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_es.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_es.properties
deleted file mode 100644
index 924fd36..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_es.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=Scriptlet JSP
-Templates.jspscriptlet.desc=Scriptlet JSP <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=Comentario oculto JSP
-Templates.jsphiddencomment.desc=Comentario oculto JSP <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=Declaraci\u00f3n/declaraciones JSP
-Templates.jspdeclaration.desc=Declaraci\u00f3n/declaraciones JSP <%!..%>
-Templates.jspdeclaration.content=<%! ${cursor} %>
-Templates.jspexpression.name=Expresi\u00f3n JSP
-Templates.jspexpression.desc=Expresi\u00f3n JSP <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=Directiva include JSP
-Templates.jspincludedirective.desc=Directiva include JSP
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=Directiva page JSP
-Templates.jsppagedirective.desc=Directiva page JSP
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=Directiva taglib JSP
-Templates.jsptaglibdirective.desc=Directiva taglib JSP
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=Comentario JSP
-Templates.jspcomment.desc=Comentario JSP <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_fr.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_fr.properties
deleted file mode 100644
index c05b7ad..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_fr.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=Scriplet JSP
-Templates.jspscriptlet.desc=Scriplet JSP <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=Commentaire JSP masqu\u00e9
-Templates.jsphiddencomment.desc=Commentaire JSP masqu\u00e9 <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=D\u00e9claration(s) JSP
-Templates.jspdeclaration.desc=D\u00e9claration(s) JSP <%!..%>
-Templates.jspdeclaration.content=<%! ${cursor} %>
-Templates.jspexpression.name=Expression JSP
-Templates.jspexpression.desc=Expression JSP <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=Instruction JSP include
-Templates.jspincludedirective.desc=Instruction JSP include
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=Instruction JSP page
-Templates.jsppagedirective.desc=Instruction JSP page
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=Instruction JSP taglib
-Templates.jsptaglibdirective.desc=Instruction JSP taglib
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=Commentaire JSP
-Templates.jspcomment.desc=Commentaire JSP <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_it.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_it.properties
deleted file mode 100644
index 0840403..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_it.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=Scriptlet JSP
-Templates.jspscriptlet.desc=Scriptlet JSP <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=Commento JSP nascosto
-Templates.jsphiddencomment.desc=Commento JSP nascosto <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=Dichiarazioni JSP
-Templates.jspdeclaration.desc=Dichiarazioni JSP <%!..%>
-Templates.jspdeclaration.content=<%! ${cursor} %>
-Templates.jspexpression.name=Espressione JSP
-Templates.jspexpression.desc=Espressione JSP <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=Istruzione di inclusione JSP
-Templates.jspincludedirective.desc=Istruzione di inclusione JSP
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=Istruzione pagina JSP
-Templates.jsppagedirective.desc=Istruzione pagina JSP
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=Istruzione taglib JSP
-Templates.jsptaglibdirective.desc=Istruzione taglib JSP
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=Commento JSP
-Templates.jspcomment.desc=Commento JSP <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_ja.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_ja.properties
deleted file mode 100644
index c928ed0..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_ja.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=JSP \u30b9\u30af\u30ea\u30d7\u30c8\u30ec\u30c3\u30c8
-Templates.jspscriptlet.desc=JSP \u30b9\u30af\u30ea\u30d7\u30c8\u30ec\u30c3\u30c8 <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=JSP \u96a0\u3057\u30b3\u30e1\u30f3\u30c8
-Templates.jsphiddencomment.desc=JSP \u96a0\u3057\u30b3\u30e1\u30f3\u30c8 <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=JSP \u5ba3\u8a00
-Templates.jspdeclaration.desc=JSP \u5ba3\u8a00 <%!..%>
-Templates.jspdeclaration.content=<%! ${cursor} %>
-Templates.jspexpression.name=JSP \u5f0f
-Templates.jspexpression.desc=JSP \u5f0f <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=JSP \u30a4\u30f3\u30af\u30eb\u30fc\u30c9\u30fb\u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6
-Templates.jspincludedirective.desc=JSP \u30a4\u30f3\u30af\u30eb\u30fc\u30c9\u30fb\u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=JSP \u30da\u30fc\u30b8\u30fb\u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6
-Templates.jsppagedirective.desc=JSP \u30da\u30fc\u30b8\u30fb\u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=JSP taglib \u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6
-Templates.jsptaglibdirective.desc=JSP taglib \u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=JSP \u30b3\u30e1\u30f3\u30c8
-Templates.jspcomment.desc=JSP \u30b3\u30e1\u30f3\u30c8 <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_ko.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_ko.properties
deleted file mode 100644
index 14003ac..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_ko.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=JSP scriptlet
-Templates.jspscriptlet.desc=JSP scriptlet <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=JSP \uc228\uaca8\uc9c4 \uc8fc\uc11d
-Templates.jsphiddencomment.desc=JSP \uc228\uaca8\uc9c4 \uc8fc\uc11d <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=JSP \uc120\uc5b8
-Templates.jspdeclaration.desc=JSP \uc120\uc5b8 <%!..%>
-Templates.jspdeclaration.content=<%! ${cursor} %>
-Templates.jspexpression.name=JSP \ud45c\ud604\uc2dd
-Templates.jspexpression.desc=JSP \ud45c\ud604\uc2dd <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=JSP include \uc9c0\uc2dc\ubb38
-Templates.jspincludedirective.desc=JSP include \uc9c0\uc2dc\ubb38
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=JSP page \uc9c0\uc2dc\ubb38
-Templates.jsppagedirective.desc=JSP page \uc9c0\uc2dc\ubb38
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=JSP taglib \uc9c0\uc2dc\ubb38
-Templates.jsptaglibdirective.desc=JSP taglib \uc9c0\uc2dc\ubb38
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=JSP \uc8fc\uc11d
-Templates.jspcomment.desc=JSP \uc8fc\uc11d <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_pt_BR.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_pt_BR.properties
deleted file mode 100644
index 69287de..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_pt_BR.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=Scriptlet JSP
-Templates.jspscriptlet.desc=Scriptlet JSP <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=Coment\u00e1rio oculto JSP
-Templates.jsphiddencomment.desc=Coment\u00e1rio oculto JSP <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=Declara\u00e7\u00e3o(\u00e7\u00f5es) JSP
-Templates.jspdeclaration.desc=Declara\u00e7\u00e3o(\u00e7\u00f5es) JSP <%!..%>
-Templates.jspdeclaration.content=<%!  ${cursor} %>
-Templates.jspexpression.name=Express\u00e3o JSP
-Templates.jspexpression.desc=Express\u00e3o JSP <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=Diretiva de inclus\u00e3o JSP
-Templates.jspincludedirective.desc=Diretiva de inclus\u00e3o JSP
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=Diretiva de p\u00e1gina JSP
-Templates.jsppagedirective.desc=Diretiva de p\u00e1gina JSP
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=Diretiva de taglib JSP
-Templates.jsptaglibdirective.desc=Diretiva de taglib JSP
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=Coment\u00e1rio JSP
-Templates.jspcomment.desc=Coment\u00e1rio JSP <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_zh_CN.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_zh_CN.properties
deleted file mode 100644
index 33f37ef..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_zh_CN.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=JSP scriptlet
-Templates.jspscriptlet.desc=JSP scriptlet <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=JSP \u9690\u85cf\u6ce8\u91ca
-Templates.jsphiddencomment.desc=JSP \u9690\u85cf\u6ce8\u91ca <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=JSP \u58f0\u660e
-Templates.jspdeclaration.desc=JSP \u58f0\u660e <%!..%>
-Templates.jspdeclaration.content=<%!  ${cursor} %>
-Templates.jspexpression.name=JSP \u8868\u8fbe\u5f0f
-Templates.jspexpression.desc=JSP \u8868\u8fbe\u5f0f <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=JSP include \u4f2a\u6307\u4ee4
-Templates.jspincludedirective.desc=JSP include \u4f2a\u6307\u4ee4
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=JSP page \u4f2a\u6307\u4ee4
-Templates.jsppagedirective.desc=JSP page \u4f2a\u6307\u4ee4
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=JSP taglib \u4f2a\u6307\u4ee4
-Templates.jsptaglibdirective.desc=JSP taglib \u4f2a\u6307\u4ee4
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=JSP \u6ce8\u91ca
-Templates.jspcomment.desc=JSP \u6ce8\u91ca <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_zh_TW.properties b/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_zh_TW.properties
deleted file mode 100644
index 07d7f6c..0000000
--- a/bundles/org.eclipse.jst.jsp.ui/templates/jspdefault-templates_zh_TW.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.jspscriptlet.name=JSP scriptlet
-Templates.jspscriptlet.desc=JSP scriptlet <%..%>
-Templates.jspscriptlet.content=<% ${cursor} %>
-Templates.jsphiddencomment.name=JSP \u96b1\u85cf\u8a3b\u89e3
-Templates.jsphiddencomment.desc=JSP \u96b1\u85cf\u8a3b\u89e3 <%-- --%>
-Templates.jsphiddencomment.content=<%-- ${cursor} --%>
-Templates.jspdeclaration.name=JSP \u5ba3\u544a
-Templates.jspdeclaration.desc=JSP \u5ba3\u544a <%!..%>
-Templates.jspdeclaration.content=<%! ${cursor} %>
-Templates.jspexpression.name=JSP \u8868\u793a\u5f0f
-Templates.jspexpression.desc=JSP \u8868\u793a\u5f0f <%=..%>
-Templates.jspexpression.content=<%= ${cursor} %>
-Templates.jspincludedirective.name=JSP include \u6307\u5f15
-Templates.jspincludedirective.desc=JSP include \u6307\u5f15
-Templates.jspincludedirective.content=<%@ include file="${cursor}" %>
-Templates.jsppagedirective.name=JSP page \u6307\u5f15
-Templates.jsppagedirective.desc=JSP page \u6307\u5f15
-Templates.jsppagedirective.content=<%@ page contentType="text/html; charset=${encoding}" ${cursor}%>
-Templates.jsptaglibdirective.name=JSP taglib \u6307\u5f15
-Templates.jsptaglibdirective.desc=JSP taglib \u6307\u5f15
-Templates.jsptaglibdirective.content=<%@ taglib uri="" prefix="${cursor}" %>
-Templates.jspcomment.name=JSP \u8a3b\u89e3
-Templates.jspcomment.desc=JSP \u8a3b\u89e3 <!-- -->
-Templates.jspcomment.content=<!-- ${cursor} -->
diff --git a/bundles/org.eclipse.wst.css.ui/.classpath b/bundles/org.eclipse.wst.css.ui/.classpath
deleted file mode 100644
index 275b34c..0000000
--- a/bundles/org.eclipse.wst.css.ui/.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/bundles/org.eclipse.wst.css.ui/.cvsignore b/bundles/org.eclipse.wst.css.ui/.cvsignore
deleted file mode 100644
index 4295133..0000000
--- a/bundles/org.eclipse.wst.css.ui/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-csseditor.jar
-temp.folder
-build.xml
-dev.properties
-bin
diff --git a/bundles/org.eclipse.wst.css.ui/.options b/bundles/org.eclipse.wst.css.ui/.options
deleted file mode 100644
index 1af0b58..0000000
--- a/bundles/org.eclipse.wst.css.ui/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.wst.css.ui/projectionperf=false
diff --git a/bundles/org.eclipse.wst.css.ui/.project b/bundles/org.eclipse.wst.css.ui/.project
deleted file mode 100644
index d42035f..0000000
--- a/bundles/org.eclipse.wst.css.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.css.ui</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/bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index cf261b5..0000000
--- a/bundles/org.eclipse.wst.css.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,48 +0,0 @@
-#Wed Jan 12 13:25:37 EST 2005
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.compiler.problem.unusedLocal=error
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-eclipse.preferences.version=1
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
diff --git a/bundles/org.eclipse.wst.css.ui/build.properties b/bundles/org.eclipse.wst.css.ui/build.properties
deleted file mode 100644
index 07de39b..0000000
--- a/bundles/org.eclipse.wst.css.ui/build.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = plugin.xml,\
-               *.jar,\
-               css.jar,\
-               icons/,\
-               plugin.properties
-src.includes = plugin.xml,\
-               plugin.properties,\
-               icons/,\
-               build.xml,\
-               build.properties,\
-               README.txt
-source.csseditor.jar = src/
diff --git a/bundles/org.eclipse.wst.css.ui/buildnotes_css.html b/bundles/org.eclipse.wst.css.ui/buildnotes_css.html
deleted file mode 100644
index bf06447..0000000
--- a/bundles/org.eclipse.wst.css.ui/buildnotes_css.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta
-	http-equiv="Content-Type"
-	content="text/html; charset=ISO-8859-1" />
-<meta
-	name="GENERATOR"
-	content="WTP" />
-<meta
-	http-equiv="Content-Style-Type"
-	content="text/css" />
-<link
-	href="theme/Master.css"
-	rel="stylesheet"
-	type="text/css" />
-<title>Build Notes for CSS Component</title>
-</head>
-<body>
-<h2>Build Notes for CSS <br />
-<br />
-M3, 02/23/2005</h2>
-
-<h3>What's new in this drop</h3><h3>API Changes from previous Build/Milestone</h3>
-<h3>Problem reports fixed</h3>
-
-
-</body>
-</html>
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/ctool16/newcssfile_wiz.gif b/bundles/org.eclipse.wst.css.ui/icons/full/ctool16/newcssfile_wiz.gif
deleted file mode 100644
index e73bf61..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/ctool16/newcssfile_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/aural_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/aural_props.gif
deleted file mode 100644
index df1704e..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/aural_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/boxmodel_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/boxmodel_props.gif
deleted file mode 100644
index 7c050f5..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/boxmodel_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/charset_rule.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/charset_rule.gif
deleted file mode 100644
index 0e93844..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/charset_rule.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/class_selector.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/class_selector.gif
deleted file mode 100644
index f924d7a..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/class_selector.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/colback_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/colback_props.gif
deleted file mode 100644
index 5ca230b..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/colback_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/content_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/content_props.gif
deleted file mode 100644
index 2133ded..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/content_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyname.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyname.gif
deleted file mode 100644
index ede58ab..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyname.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_function.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_function.gif
deleted file mode 100644
index 6cd12da..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_function.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_identifier.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_identifier.gif
deleted file mode 100644
index 2adbdd8..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_identifier.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_unit.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_unit.gif
deleted file mode 100644
index 308a3ae..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/css_propertyvalue_unit.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/font_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/font_props.gif
deleted file mode 100644
index aca5f89..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/font_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/fontface_rule.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/fontface_rule.gif
deleted file mode 100644
index 71f59e8..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/fontface_rule.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/id_selector.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/id_selector.gif
deleted file mode 100644
index f0857d2..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/id_selector.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/link_rule.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/link_rule.gif
deleted file mode 100644
index 94d89cd..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/link_rule.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/link_selector.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/link_selector.gif
deleted file mode 100644
index d85b78f..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/link_selector.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/media_rule.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/media_rule.gif
deleted file mode 100644
index 3391f19..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/media_rule.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/other_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/other_props.gif
deleted file mode 100644
index 920c228..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/other_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/page_rule.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/page_rule.gif
deleted file mode 100644
index 525f64b..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/page_rule.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/pagedmedia_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/pagedmedia_props.gif
deleted file mode 100644
index 6b635b0..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/pagedmedia_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/pseudo.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/pseudo.gif
deleted file mode 100644
index 1b6a6dc..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/pseudo.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/sort.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/sort.gif
deleted file mode 100644
index 23c5d0b..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/sort.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/style_rule.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/style_rule.gif
deleted file mode 100644
index 3176ff8..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/style_rule.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/stylesheet.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/stylesheet.gif
deleted file mode 100644
index d8fde00..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/stylesheet.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/table_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/table_props.gif
deleted file mode 100644
index bcc76cd..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/table_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/tag_selector.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/tag_selector.gif
deleted file mode 100644
index 69850fa..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/tag_selector.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/text_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/text_props.gif
deleted file mode 100644
index abf63f8..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/text_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/ui_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/ui_props.gif
deleted file mode 100644
index 99a8b96..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/ui_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/unknown_rule.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/unknown_rule.gif
deleted file mode 100644
index 857e4e5..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/unknown_rule.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/visual_props.gif b/bundles/org.eclipse.wst.css.ui/icons/full/obj16/visual_props.gif
deleted file mode 100644
index c1a8b34..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/obj16/visual_props.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/full/wizban/newcssfile_wiz.gif b/bundles/org.eclipse.wst.css.ui/icons/full/wizban/newcssfile_wiz.gif
deleted file mode 100644
index 85e61ea..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/full/wizban/newcssfile_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/icons/sourceEditor.gif b/bundles/org.eclipse.wst.css.ui/icons/sourceEditor.gif
deleted file mode 100644
index 75ebdb8..0000000
--- a/bundles/org.eclipse.wst.css.ui/icons/sourceEditor.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.css.ui/plugin.properties b/bundles/org.eclipse.wst.css.ui/plugin.properties
deleted file mode 100644
index 4d499cb..0000000
--- a/bundles/org.eclipse.wst.css.ui/plugin.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-providerName=Eclipse.org
-pluginName=SSE CSS Source Editor
-nlFeatureName=SSE CSS Source Editor NL Support
-CSS_Source_Page_Editor.name=CSS Source Page Editor
-CSS_Files.name=CSS Files
-CSS_Source.name=CSS Source
-CSS_Styles.name=CSS Styles
-WebContentSettings.name=Web Content Settings
-###############################################################################
-# The following property keys maybe unused. Commented out on 12/7/2004. Uncomment if needed.
-#CSS_Annotations.name=CSS Annotations
-
-
-#org.eclipse.ui.newWizards extension point
-_UI_WIZARD_NAME = CSS
-_UI_WIZARD_CREATE_NEW_FILE = Create a new Cascading Style Sheet.
diff --git a/bundles/org.eclipse.wst.css.ui/plugin.xml b/bundles/org.eclipse.wst.css.ui/plugin.xml
deleted file mode 100644
index 4b48882..0000000
--- a/bundles/org.eclipse.wst.css.ui/plugin.xml
+++ /dev/null
@@ -1,158 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.wst.css.ui"
-   name="%pluginName"
-   version="1.0.0"
-   provider-name="%providerName"
-   class="org.eclipse.wst.css.ui.internal.CSSUIPlugin">
-
-   <runtime>
-      <library name="csseditor.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.wst.xml.ui"/>
-      <import plugin="org.eclipse.wst.sse.ui"/>
-      <import plugin="org.eclipse.wst.css.core"/>
-      <import plugin="org.eclipse.wst.sse.core"/>
-      <import plugin="org.eclipse.wst.html.core"/>
-      <import plugin="org.eclipse.wst.xml.core"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.ui.ide"/>
-   </requires>
-
-   <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%CSS_Source_Page_Editor.name"
-            icon="icons/sourceEditor.gif"
-            extensions="css"
-            contributorClass="org.eclipse.wst.css.ui.ActionContributorCSS"
-            class="org.eclipse.wst.css.ui.StructuredTextEditorCSS"
-            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
-            id="org.eclipse.wst.css.ui.StructuredTextEditorCSS">
-      </editor>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.extendedconfiguration">
-      <configuration 
-      		type="contentoutlineconfiguration"
-            class="org.eclipse.wst.css.ui.views.contentoutline.CSSContentOutlineConfiguration"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <configuration 
-      		type="textviewerconfiguration"
-            class="org.eclipse.wst.css.ui.StructuredTextViewerConfigurationCSS"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <configuration 
-      		type="propertysheetconfiguration"
-            class="org.eclipse.wst.css.ui.views.properties.CSSPropertySheetConfiguration"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <configuration 
-      		type="characterpairmatcher"
-            class="org.eclipse.wst.css.ui.text.CSSDocumentRegionEdgeMatcher"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <configuration
-      		type="structuredtextfoldingprovider"
-            class="org.eclipse.wst.css.ui.internal.projection.StructuredTextFoldingProviderCSS"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.css"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.css.source"
-            target="org.eclipse.wst.css.core.csssource"/>
-      <definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.css.styles"
-            target="org.eclipse.wst.css.core.csssource"/>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.adapterFactoryDescription">
-      <adapterFactoryDescription
-            class="org.eclipse.wst.css.ui.registry.AdapterFactoryProviderCSS">
-            <contentType id="org.eclipse.wst.css.core.csssource"/>
-      </adapterFactoryDescription>
-   </extension>
-   <extension
-      point="org.eclipse.core.filebuffers.annotationModelCreation">
-      <factory
-            contentTypeId="org.eclipse.wst.css.core.csssource"
-            class="org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModelFactory"/>
-   </extension>
-   <extension
-         point="org.eclipse.ui.preferencePages">
-      <page
-            name="%CSS_Files.name"
-            category="org.eclipse.wst.sse.ui.preferences"
-            class="org.eclipse.wst.css.ui.preferences.ui.CSSFilesPreferencePage"
-            id="org.eclipse.wst.sse.ui.preferences.css">
-      </page>
-      <page
-            name="%CSS_Source.name"
-            category="org.eclipse.wst.sse.ui.preferences.css"
-            class="org.eclipse.wst.css.ui.preferences.ui.CSSSourcePreferencePage"
-            id="org.eclipse.wst.sse.ui.preferences.css.source">
-      </page>
-      <page
-            name="%CSS_Styles.name"
-            category="org.eclipse.wst.sse.ui.preferences.css"
-            class="org.eclipse.wst.css.ui.preferences.ui.CSSColorPage"
-            id="org.eclipse.wst.sse.ui.preferences.css.styles">
-      </page>
-   </extension>
-   <extension
-         point="org.eclipse.ui.propertyPages">
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.css"
-            class="org.eclipse.wst.css.ui.contentproperties.ui.CSSContentSettingsPropertyPage"
-            id="org.eclipse.wst.css.ui.csspropertypage">
-      </page>
-   </extension>
-<!-- Editor actionsets -->
-   <extension
-         point="org.eclipse.ui.actionSetPartAssociations">
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
-         <part
-               id="org.eclipse.wst.css.ui.StructuredTextEditorCSS">
-         </part>
-      </actionSetPartAssociation>
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.NavigateActionSet">
-         <part
-               id="org.eclipse.wst.css.ui.StructuredTextEditorCSS">
-         </part>
-      </actionSetPartAssociation>
-   </extension>
-	<!-- initialize css ui preferences -->
-	<extension point="org.eclipse.core.runtime.preferences">
-	   <initializer class="org.eclipse.wst.css.ui.internal.preferences.CSSUIPreferenceInitializer"/>
-	</extension>
-	
-	<!-- New CSS wizard -->
-	<extension point="org.eclipse.ui.newWizards">
-		<wizard id="org.eclipse.wst.css.ui.internal.wizard.NewCSSWizard"
-			name="%_UI_WIZARD_NAME"
-			class="org.eclipse.wst.css.ui.internal.wizard.NewCSSWizard"
-			category="org.eclipse.wst.web.ui"
-			icon="icons/full/ctool16/newcssfile_wiz.gif">
-			<description>%_UI_WIZARD_CREATE_NEW_FILE</description>
-			<selection class="org.eclipse.core.resources.IResource" />
-		</wizard>
-	</extension>
-
-</plugin>
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/ActionContributorCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/ActionContributorCSS.java
deleted file mode 100644
index d6b8629..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/ActionContributorCSS.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;
-import org.eclipse.ui.texteditor.RetargetTextEditorAction;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.actions.ActionContributor;
-import org.eclipse.wst.sse.ui.internal.actions.ActionDefinitionIds;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-
-/**
- * ActionContributorCSS
- * 
- * This class should not be used inside multi page editor's
- * ActionBarContributor, since cascaded init() call from the
- * ActionBarContributor will causes exception and it leads to lose whole
- * toolbars.
- * 
- * Instead, use SourcePageActionContributor for source page contributor of
- * multi page editor.
- * 
- * Note that this class is still valid for single page editor.
- */
-public class ActionContributorCSS extends ActionContributor {
-	private static final String[] EDITOR_IDS = {"org.eclipse.wst.css.ui.StructuredTextEditorCSS", "org.eclipse.wst.sse.ui.StructuredTextEditor"}; //$NON-NLS-1$ //$NON-NLS-2$
-
-	protected RetargetTextEditorAction fContentAssist = null;
-	protected RetargetTextEditorAction fCleanupDocument = null;
-	protected MenuManager fFormatMenu = null;
-	protected RetargetTextEditorAction fFormatDocument = null;
-	protected RetargetTextEditorAction fFormatActiveElements = null;
-
-	public ActionContributorCSS() {
-		super();
-
-		ResourceBundle resourceBundle = SSEUIPlugin.getDefault().getResourceBundle();
-
-		// edit commands
-		fContentAssist = new RetargetTextEditorAction(resourceBundle, ""); //$NON-NLS-1$
-		fContentAssist.setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS);
-
-		// source commands
-		fCleanupDocument = new RetargetTextEditorAction(resourceBundle, ""); //$NON-NLS-1$
-		fCleanupDocument.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);
-
-		fFormatDocument = new RetargetTextEditorAction(resourceBundle, ""); //$NON-NLS-1$
-		fFormatDocument.setActionDefinitionId(ActionDefinitionIds.FORMAT_DOCUMENT);
-
-		fFormatActiveElements = new RetargetTextEditorAction(resourceBundle, ""); //$NON-NLS-1$
-		fFormatActiveElements.setActionDefinitionId(ActionDefinitionIds.FORMAT_ACTIVE_ELEMENTS);
-
-		fFormatMenu = new MenuManager(SSEUIPlugin.getResourceString("%FormatMenu.label")); //$NON-NLS-1$
-		fFormatMenu.add(fFormatDocument);
-		fFormatMenu.add(fFormatActiveElements);
-	}
-
-	protected String[] getExtensionIDs() {
-		return EDITOR_IDS;
-	}
-
-	protected void addToMenu(IMenuManager menu) {
-		// edit commands
-		IMenuManager editMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT);
-		if (editMenu != null) {
-			editMenu.add(fCommandsSeparator);
-			editMenu.add(fToggleInsertModeAction);
-			editMenu.add(fCommandsSeparator);
-			editMenu.add(fExpandSelectionToMenu);
-			editMenu.add(fCommandsSeparator);
-			editMenu.add(fContentAssist);
-			editMenu.add(fMenuAdditionsGroupMarker);
-		}
-
-		// source commands
-		String sourceMenuLabel = SSEUIPlugin.getResourceString("%SourceMenu.label"); //$NON-NLS-1$
-		String sourceMenuId = "sourceMenuId"; // This is just a menu id. No
-											  // need to translate.
-											  // //$NON-NLS-1$
-		IMenuManager sourceMenu = new MenuManager(sourceMenuLabel, sourceMenuId);
-		menu.insertAfter(IWorkbenchActionConstants.M_EDIT, sourceMenu);
-		if (sourceMenu != null) {
-			sourceMenu.add(fCommandsSeparator);
-			sourceMenu.add(fShiftRight);
-			sourceMenu.add(fShiftLeft);
-			sourceMenu.add(fCleanupDocument);
-			sourceMenu.add(fFormatMenu);
-			sourceMenu.add(fCommandsSeparator);
-		}
-	}
-
-	public void setActiveEditor(IEditorPart activeEditor) {
-		super.setActiveEditor(activeEditor);
-
-		ITextEditor textEditor = getTextEditor(activeEditor);
-
-		fContentAssist.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_CONTENTASSIST_PROPOSALS));
-
-		fCleanupDocument.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT));
-		fFormatDocument.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_FORMAT_DOCUMENT));
-		fFormatActiveElements.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_FORMAT_ACTIVE_ELEMENTS));
-		fCleanupDocument.setEnabled(textEditor != null && textEditor.isEditable());
-		fFormatDocument.setEnabled(textEditor != null && textEditor.isEditable());
-		fFormatActiveElements.setEnabled(textEditor != null && textEditor.isEditable());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/CSSEditorPlugin.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/CSSEditorPlugin.java
deleted file mode 100644
index 87f1a9d..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/CSSEditorPlugin.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui;
-
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-
-
-/**
- * @deprecated use internal CSSUIPlugin class instead if possible
- */
-public class CSSEditorPlugin extends CSSUIPlugin {
-	// see org.eclipse.wst.css.ui.internal.CSSUIPlugin
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/StructuredTextEditorCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/StructuredTextEditorCSS.java
deleted file mode 100644
index faae88f..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/StructuredTextEditorCSS.java
+++ /dev/null
@@ -1,55 +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.css.ui;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.css.ui.edit.ui.CleanupActionCSS;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.css.ui.internal.selection.StructureSelectEnclosingCSSAction;
-import org.eclipse.wst.css.ui.internal.selection.StructureSelectNextCSSAction;
-import org.eclipse.wst.css.ui.internal.selection.StructureSelectPreviousCSSAction;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.actions.ActionDefinitionIds;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-import org.eclipse.wst.sse.ui.internal.selection.SelectionHistory;
-import org.eclipse.wst.sse.ui.internal.selection.StructureSelectHistoryAction;
-
-public class StructuredTextEditorCSS extends StructuredTextEditor {
-	protected void createActions() {
-		super.createActions();
-
-		Action action = new CleanupActionCSS(SSEUIPlugin.getDefault().getResourceBundle(), StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT, action);
-
-		SelectionHistory selectionHistory = new SelectionHistory(this);
-		action = new StructureSelectEnclosingCSSAction(this, selectionHistory);
-		action.setActionDefinitionId(ActionDefinitionIds.STRUCTURE_SELECT_ENCLOSING);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_ENCLOSING, action);
-
-		action = new StructureSelectNextCSSAction(this, selectionHistory);
-		action.setActionDefinitionId(ActionDefinitionIds.STRUCTURE_SELECT_NEXT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_NEXT, action);
-
-		action = new StructureSelectPreviousCSSAction(this, selectionHistory);
-		action.setActionDefinitionId(ActionDefinitionIds.STRUCTURE_SELECT_PREVIOUS);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_PREVIOUS, action);
-
-		action = new StructureSelectHistoryAction(this, selectionHistory);
-		action.setActionDefinitionId(ActionDefinitionIds.STRUCTURE_SELECT_HISTORY);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_STRUCTURE_SELECT_HISTORY, action);
-		selectionHistory.setHistoryAction((StructureSelectHistoryAction) action);
-	}
-
-	protected void initializeEditor() {
-		super.initializeEditor();
-		setHelpContextId(IHelpContextIds.CSS_SOURCEVIEW_HELPID);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/StructuredTextViewerConfigurationCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/StructuredTextViewerConfigurationCSS.java
deleted file mode 100644
index 992ae9f..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/StructuredTextViewerConfigurationCSS.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.IAutoEditStrategy;
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.jface.text.contentassist.ContentAssistant;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jface.text.contentassist.IContentAssistant;
-import org.eclipse.jface.text.formatter.IContentFormatter;
-import org.eclipse.jface.text.formatter.MultiPassContentFormatter;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.wst.css.core.format.FormatProcessorCSS;
-import org.eclipse.wst.css.core.text.ICSSPartitions;
-import org.eclipse.wst.css.ui.autoedit.StructuredAutoEditStrategyCSS;
-import org.eclipse.wst.css.ui.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.css.ui.style.LineStyleProviderForCSS;
-import org.eclipse.wst.css.ui.taginfo.CSSBestMatchHoverProcessor;
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration;
-import org.eclipse.wst.sse.ui.format.StructuredFormattingStrategy;
-import org.eclipse.wst.sse.ui.style.IHighlighter;
-import org.eclipse.wst.sse.ui.taginfo.AnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.ProblemAnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.TextHoverManager;
-import org.eclipse.wst.sse.ui.util.EditorUtility;
-
-public class StructuredTextViewerConfigurationCSS extends StructuredTextViewerConfiguration {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAutoEditStrategies(org.eclipse.jface.text.source.ISourceViewer, java.lang.String)
-	 */
-	public IAutoEditStrategy[] getAutoEditStrategies(ISourceViewer sourceViewer, String contentType) {
-		List allStrategies = new ArrayList(0);
-		
-		IAutoEditStrategy[] superStrategies = super.getAutoEditStrategies(sourceViewer, contentType);
-		for (int i = 0; i < superStrategies.length; i++) {
-			allStrategies.add(superStrategies[i]);
-		}
-		
-		if (contentType == ICSSPartitions.STYLE) {
-			allStrategies.add(new StructuredAutoEditStrategyCSS());
-		}
-
-		return (IAutoEditStrategy[]) allStrategies.toArray(new IAutoEditStrategy[0]);
-	}
-
-	public String[] getConfiguredContentTypes(ISourceViewer sourceViewer) {
-		if (configuredContentTypes == null) {
-			configuredContentTypes = new String[]{ICSSPartitions.STYLE, IStructuredPartitions.DEFAULT_PARTITION, IStructuredPartitions.UNKNOWN_PARTITION};
-		}
-		return configuredContentTypes;
-	}
-
-	public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {
-		IContentAssistant contentAssistant = super.getContentAssistant(sourceViewer);
-
-		if (contentAssistant != null && contentAssistant instanceof ContentAssistant) {
-			//((ContentAssistant)
-			// contentAssistant).setContentAssistProcessor(new
-			// CSSContentAssistProcessor(),
-			// ICSSPartitions.STYLE);
-			IContentAssistProcessor cssProcessor = new CSSContentAssistProcessor();
-			setContentAssistProcessor((ContentAssistant) contentAssistant, cssProcessor, ICSSPartitions.STYLE);
-			setContentAssistProcessor((ContentAssistant) contentAssistant, cssProcessor, IStructuredPartitions.UNKNOWN_PARTITION);
-		}
-
-		return contentAssistant;
-	}
-
-	public IContentFormatter getContentFormatter(ISourceViewer sourceViewer) {
-		final MultiPassContentFormatter formatter = new MultiPassContentFormatter(getConfiguredDocumentPartitioning(sourceViewer), ICSSPartitions.STYLE);
-
-		formatter.setMasterStrategy(new StructuredFormattingStrategy(new FormatProcessorCSS()));
-
-		return formatter;
-	}
-
-	public IHighlighter getHighlighter(ISourceViewer sourceViewer) {
-		IHighlighter highlighter = super.getHighlighter(sourceViewer);
-
-		if (highlighter != null) {
-			highlighter.addProvider(ICSSPartitions.STYLE, new LineStyleProviderForCSS());
-		}
-
-		return highlighter;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getTextHover(org.eclipse.jface.text.source.ISourceViewer,
-	 *      java.lang.String, int)
-	 */
-	public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) {
-		// content type does not really matter since only combo, problem,
-		// annotation hover is available
-		TextHoverManager.TextHoverDescriptor[] hoverDescs = getTextHovers();
-		int i = 0;
-		while (i < hoverDescs.length) {
-			if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-				String hoverType = hoverDescs[i].getId();
-				if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType))
-					return new CSSBestMatchHoverProcessor();
-				else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType))
-					return new ProblemAnnotationHoverProcessor();
-				else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType))
-					return new AnnotationHoverProcessor();
-			}
-			i++;
-		}
-		return super.getTextHover(sourceViewer, contentType, stateMask);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/autoedit/StructuredAutoEditStrategyCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/autoedit/StructuredAutoEditStrategyCSS.java
deleted file mode 100644
index ddb0840..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/autoedit/StructuredAutoEditStrategyCSS.java
+++ /dev/null
@@ -1,501 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.autoedit;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentCommand;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.ui.texteditor.ITextEditorExtension3;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.core.preferences.CSSPreferenceHelper;
-import org.eclipse.wst.css.core.util.RegionIterator;
-import org.eclipse.wst.css.ui.internal.Logger;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.autoedit.BasicAutoEditStrategy;
-
-public class StructuredAutoEditStrategyCSS extends BasicAutoEditStrategy {
-	protected IStructuredDocument structuredDocument = null;
-
-	class CompoundRegion {
-
-		CompoundRegion(IStructuredDocumentRegion documentRegion, ITextRegion textRegion) {
-			super();
-			this.documentRegion = documentRegion;
-			this.textRegion = textRegion;
-		}
-
-		IStructuredDocumentRegion getDocumentRegion() {
-			return documentRegion;
-		}
-
-		ITextRegion getTextRegion() {
-			return textRegion;
-		}
-
-		int getStart() {
-			return textRegion.getStart();
-		}
-
-		int getEnd() {
-			return textRegion.getEnd();
-		}
-
-		String getType() {
-			return textRegion.getType();
-		}
-
-		String getText() {
-			return documentRegion.getText(textRegion);
-		}
-
-		int getStartOffset() {
-			return documentRegion.getStartOffset(textRegion);
-		}
-
-		int getEndOffset() {
-			return documentRegion.getEndOffset(textRegion);
-		}
-
-		private IStructuredDocumentRegion documentRegion;
-		private ITextRegion textRegion;
-
-	}
-
-	/**
-	 */
-	protected void autoIndentAfterClose(DocumentCommand command, String regionType) {
-		if (!setRangeForClose(command))
-			return;
-
-		int position = command.offset + command.length;
-
-		if (position == -1 || structuredDocument.getLength() == 0) {
-			return;
-		}
-
-		// get open brace region
-		CompoundRegion region = prevCorrespondence(position, regionType);
-
-		// get indentation
-		String str = getIndentFor(region, false);
-
-		// append to input
-		if (str != null)
-			command.text = str + command.text;
-	}
-
-	/**
-	 * Copies the indentation of the previous line.
-	 */
-	protected void autoIndentAfterNewLine(DocumentCommand command) {
-		// select nearest white spaces to replace with new-line
-		setRangeForNewLine(command);
-
-		// get position
-		int position = command.offset;
-
-		if (position == -1 || structuredDocument.getLength() == 0) {
-			return;
-		}
-
-		// get current region
-		CompoundRegion currentRegion = getRegion(command.offset + command.length);
-
-		// get key region
-		CompoundRegion keyRegion = getPrevKeyRegion(position, currentRegion);
-
-		// get indent string
-		String str = getIndentFor(keyRegion, true);
-
-		// check another indentation
-		int shift = needShift(keyRegion, command.offset + command.length);
-
-		// create text to replace
-		StringBuffer buf = new StringBuffer(command.text);
-		if (str != null)
-			buf.append(str);
-		while (shift-- != 0)
-			buf.append(CSSPreferenceHelper.getInstance().getIndentString());
-		command.text = buf.toString();
-
-	}
-
-	/**
-	 */
-	public void customizeDocumentCommand(IDocument document, DocumentCommand command) {
-		Object textEditor = getActiveTextEditor();
-		if (!(textEditor instanceof ITextEditorExtension3 && ((ITextEditorExtension3) textEditor).getInsertMode() == ITextEditorExtension3.SMART_INSERT))
-			return;
-
-		//return;
-		///*
-		structuredDocument = (IStructuredDocument) document;
-
-		if (command.length == 0 && command.text != null) {
-			if (endsWith(document.getLegalLineDelimiters(), command.text) != -1) {
-				autoIndentAfterNewLine(command);
-			} else if (command.text.equals("}")) {//$NON-NLS-1$
-				autoIndentAfterClose(command, CSSRegionContexts.CSS_RBRACE);
-			} else if (command.text.equals("]")) {//$NON-NLS-1$
-				autoIndentAfterClose(command, CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END);
-			} else if (command.text.equals(")")) {//$NON-NLS-1$
-				autoIndentAfterClose(command, CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE);
-			}
-		}
-		//*/
-	}
-
-	/**
-	 */
-	protected String getIndentFor(CompoundRegion region, boolean indentForNextRegion) {
-		if (region == null)
-			return null;
-		IStructuredDocumentRegion flatNode = region.getDocumentRegion();
-		if (flatNode == null)
-			return null;
-
-		try {
-			if (region.getType() == CSSRegionContexts.CSS_LBRACE || region.getType() == CSSRegionContexts.CSS_DELIMITER || region.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-				// get meanful flat node
-				RegionIterator it = new RegionIterator(flatNode, region.getTextRegion());
-				it.prev();
-				while (it.hasPrev()) {
-					ITextRegion r = it.prev();
-					region = new CompoundRegion(it.getStructuredDocumentRegion(), r);
-					if (region.getType() != CSSRegionContexts.CSS_S)
-						break;
-				}
-				flatNode = region.getDocumentRegion();
-				// get indent string
-				int position = flatNode.getStart();
-				int line = structuredDocument.getLineOfOffset(position);
-				int start = structuredDocument.getLineOffset(line);
-				int end = findEndOfWhiteSpace(structuredDocument, start, position);
-				return structuredDocument.get(start, end - start);
-			} else if (region.getType() == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START ||
-			//region.getType() == CSSRegionContexts.CSS_PARENTHESIS_OPEN ||
-						region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION || region.getType() == CSSRegionContexts.CSS_DECLARATION_SEPARATOR) {
-				int position = flatNode.getStart() + region.getStart();
-				int line = structuredDocument.getLineOfOffset(position);
-				int start = structuredDocument.getLineOffset(line);
-				int end = findEndOfWhiteSpace(structuredDocument, start, position);
-				StringBuffer buf = new StringBuffer(structuredDocument.get(start, end - start));
-				position += region.getText().length();
-				if (indentForNextRegion) {
-					int tokenStart = findEndOfWhiteSpace(structuredDocument, position, structuredDocument.getLineOffset(line) + structuredDocument.getLineLength(line) - 1);
-					if (tokenStart < structuredDocument.getLineOffset(line) + structuredDocument.getLineLength(line) - 1) {
-						position = tokenStart;
-					}
-				}
-				while (position - end > 0) {
-					buf.append(" ");//$NON-NLS-1$
-					end++;
-				}
-				return buf.toString();
-			} else
-				return "";//$NON-NLS-1$
-		} catch (BadLocationException excp) {
-			Logger.logException(excp);
-		}
-		return null;
-	}
-
-	/**
-	 */
-	protected CompoundRegion getPrevKeyRegion(int position, CompoundRegion currentRegion) {
-		if (currentRegion == null) {
-			if (structuredDocument.getLastStructuredDocumentRegion() == null)
-				return null;
-		}
-
-		if (currentRegion != null && (currentRegion.getType() == CSSRegionContexts.CSS_RBRACE || currentRegion.getType() == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END || currentRegion.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)) {
-			return prevCorrespondence(currentRegion);
-		}
-
-		RegionIterator it = new RegionIterator(structuredDocument, position - 1);
-		while (it.hasPrev()) {
-			ITextRegion r = it.prev();
-			CompoundRegion region = new CompoundRegion(it.getStructuredDocumentRegion(), r);
-			if (region.getType() == CSSRegionContexts.CSS_LBRACE ||
-			//          region.getType() == CSSRegionContexts.CSS_RBRACE ||
-						region.getType() == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START ||
-						//          region.getType() ==
-						// CSSRegionContexts.CSS_BRACKET_CLOSE ||
-						//// region.getType() ==
-						// CSSRegionContexts.CSS_PARENTHESIS_OPEN ||
-						//          region.getType() ==
-						// CSSRegionContexts.CSS_PARENTHESIS_CLOSE ||
-						region.getType() == CSSRegionContexts.CSS_DELIMITER || region.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER ||
-						//          region.getType() == CSSRegionContexts.CSS_COLON ||
-						//          region.getType() == CSSRegionContexts.CSS_COMMENT
-						// ||
-						region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION) {
-				return region;
-			} else if (region.getType() == CSSRegionContexts.CSS_RBRACE || region.getType() == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END || region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE) {
-				// skip to LBRACE
-				CompoundRegion pc = prevCorrespondence(region);
-				it.reset(pc.getDocumentRegion(), pc.getTextRegion());
-				it.prev();
-			} else if (region.getType() == CSSRegionContexts.CSS_STRING) {
-				RegionIterator itTmp = new RegionIterator(structuredDocument, position);
-				if (region == itTmp.prev())
-					return region; // position is inside of string
-			} else if (region.getType() == CSSRegionContexts.CSS_COMMENT) {
-				RegionIterator itTmp = new RegionIterator(structuredDocument, position);
-				if (region == itTmp.prev())
-					return region; // position is inside of comment
-			} else if (region.getType() == CSSRegionContexts.CSS_UNKNOWN) {
-				String str = region.getText();
-				if (str.charAt(str.length() - 1) == '\\')
-					return region;
-			} else if (region.getType() == CSSRegionContexts.CSS_DECLARATION_SEPARATOR) {
-				RegionIterator itPrev = new RegionIterator(region.getDocumentRegion(), region.getTextRegion());
-				while (itPrev.hasPrev()) {
-					ITextRegion regionPrev = itPrev.prev();
-					if (regionPrev.getType() == CSSRegionContexts.CSS_RBRACE) {
-						break;
-					} else if (regionPrev.getType() == CSSRegionContexts.CSS_DELIMITER || regionPrev.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-						return region;
-					} else if (regionPrev.getType() == CSSRegionContexts.CSS_LBRACE) {
-						while (itPrev.hasPrev()) {
-							regionPrev = itPrev.prev();
-							if (regionPrev.getType() == CSSRegionContexts.CSS_MEDIA)
-								break;
-							if (regionPrev.getType() == CSSRegionContexts.CSS_LBRACE || regionPrev.getType() == CSSRegionContexts.CSS_RBRACE || regionPrev.getType() == CSSRegionContexts.CSS_DELIMITER || regionPrev.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER)
-								return region;
-						}
-						if (regionPrev.getType() == CSSRegionContexts.CSS_MEDIA)
-							break;
-						else
-							return region;
-					}
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 */
-	protected CompoundRegion getRegion(int position) {
-		IStructuredDocumentRegion flatNode = structuredDocument.getRegionAtCharacterOffset(position);
-		if (flatNode != null)
-			return new CompoundRegion(flatNode, flatNode.getRegionAtCharacterOffset(position));
-		return null;
-	}
-
-	/**
-	 */
-	protected int needShift(CompoundRegion region, int position) {
-		int shift = 0;
-		if (region == null || region.getType() == CSSRegionContexts.CSS_DELIMITER || region.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER || region.getType() == CSSRegionContexts.CSS_LBRACE) {
-			// get non space region
-			CompoundRegion cr = getRegion(position - 1);
-			RegionIterator it = new RegionIterator(cr.getDocumentRegion(), cr.getTextRegion());
-			ITextRegion nearestRegion = null;
-			while (it.hasPrev()) {
-				nearestRegion = it.prev();
-				if (nearestRegion.getType() != CSSRegionContexts.CSS_S && nearestRegion.getType() != CSSRegionContexts.CSS_COMMENT)
-					break;
-			}
-			if (nearestRegion != null && (nearestRegion.getType() == CSSRegionContexts.CSS_LBRACE || nearestRegion.getType() == CSSRegionContexts.CSS_RBRACE || nearestRegion.getType() == CSSRegionContexts.CSS_DELIMITER || nearestRegion.getType() == CSSRegionContexts.CSS_DECLARATION_DELIMITER))
-				shift--;
-			else if (region == null)
-				shift--;
-			shift++;
-		}
-		if (region != null && region.getType() == CSSRegionContexts.CSS_LBRACE) {
-			RegionIterator it = new RegionIterator(structuredDocument, position);
-			if (!it.hasPrev() || it.prev().getType() != CSSRegionContexts.CSS_RBRACE)
-				shift++;
-			else
-				shift = 0;
-		}
-		return shift;
-	}
-
-	/**
-	 */
-	protected CompoundRegion prevCorrespondence(int position, String regionType) {
-		RegionIterator it = new RegionIterator(structuredDocument, position - 1);
-		ITextRegion region = null;
-		int nest = 1;
-		if (regionType == CSSRegionContexts.CSS_RBRACE) {
-			// skip to LBRACE
-			while (it.hasPrev()) {
-				region = it.prev();
-				if (region.getType() == CSSRegionContexts.CSS_LBRACE)
-					nest--;
-				else if (region.getType() == CSSRegionContexts.CSS_RBRACE)
-					nest++;
-				if (nest <= 0)
-					break;
-			}
-			if (nest == 0)
-				return new CompoundRegion(it.getStructuredDocumentRegion(), region);
-		}
-		if (regionType == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END) {
-			// skip to BRACKET_OPEN
-			while (it.hasPrev()) {
-				region = it.prev();
-				if (region.getType() == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START)
-					nest--;
-				else if (region.getType() == CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END)
-					nest++;
-				if (nest <= 0)
-					break;
-			}
-			if (nest == 0)
-				return new CompoundRegion(it.getStructuredDocumentRegion(), region);
-		}
-		if (regionType == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE) {
-			// skip to PARENTHESIS_OPEN
-			while (it.hasPrev()) {
-				region = it.prev();
-				if (//region.getType() ==
-					// CSSRegionContexts.CSS_PARENTHESIS_OPEN ||
-				region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION)
-					nest--;
-				else if (region.getType() == CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE)
-					nest++;
-				if (nest <= 0)
-					break;
-			}
-			if (nest == 0)
-				return new CompoundRegion(it.getStructuredDocumentRegion(), region);
-		}
-		return null;
-	}
-
-	/**
-	 */
-	protected CompoundRegion prevCorrespondence(CompoundRegion region) {
-		if (region == null)
-			return null;
-
-		IStructuredDocumentRegion flatNode = region.getDocumentRegion();
-		int position = flatNode.getStart() + region.getStart();
-		return prevCorrespondence(position, region.getType());
-	}
-
-	/**
-	 * Insert the method's description here.
-	 * 
-	 * @return boolean
-	 * @param command
-	 *            org.eclipse.jface.text.DocumentCommand
-	 */
-	protected boolean setRangeForClose(DocumentCommand command) {
-		int position = command.offset;
-
-		if (position == -1 || structuredDocument.getLength() == 0) {
-			return false;
-		}
-
-		try {
-			// find start of line
-			int p = (position == structuredDocument.getLength() ? position - 1 : position);
-
-			int line = structuredDocument.getLineOfOffset(p);
-			int start = structuredDocument.getLineOffset(line);
-			RegionIterator it = new RegionIterator(structuredDocument, start);
-			boolean allWhiteSpace = false;
-			// check whether the text from lStart to position is white space
-			// or not
-			while (it.hasNext()) {
-				ITextRegion region = it.next();
-				if (region.getType() != CSSRegionContexts.CSS_S)
-					break;
-				if (it.getStructuredDocumentRegion().getEndOffset(region) > p) {
-					allWhiteSpace = true;
-					break;
-				}
-			}
-			if (allWhiteSpace) {
-				command.length = command.length - (start - command.offset);
-				command.offset = start;
-				return true;
-			}
-		} catch (BadLocationException excp) {
-			Logger.logException(excp);
-		}
-		return false;
-	}
-
-	/**
-	 */
-	protected void setRangeForNewLine(DocumentCommand command) {
-		int position = command.offset;
-
-		if (position == -1 || structuredDocument.getLength() == 0) {
-			return;
-		}
-
-		try {
-			// add pre-nearest white spaces to replace target
-			if (position > 0) {
-				IStructuredDocumentRegion flatNode = structuredDocument.getRegionAtCharacterOffset(position - 1);
-				if (flatNode != null) {
-					ITextRegion region = flatNode.getRegionAtCharacterOffset(position - 1);
-					if (region.getType() == CSSRegionContexts.CSS_S) {
-						int end = command.offset + command.length;
-						int nLine = structuredDocument.getLineOfOffset(position);
-						int nStartPos = structuredDocument.getLineOffset(nLine);
-						if (nStartPos < flatNode.getStartOffset(region))
-							nStartPos = flatNode.getStartOffset(region);
-						command.offset = nStartPos;
-						command.length = end - command.offset;
-					}
-				}
-			}
-
-			// add post-nearest white spaces to replace target
-			if (position < structuredDocument.getLength()) {
-				IStructuredDocumentRegion flatNode = structuredDocument.getRegionAtCharacterOffset(position);
-				if (flatNode != null) {
-					ITextRegion region = flatNode.getRegionAtCharacterOffset(position);
-					if (region.getType() == CSSRegionContexts.CSS_S) {
-						int nLine = structuredDocument.getLineOfOffset(position);
-						String currentLineDelim = structuredDocument.getLineDelimiter(nLine);
-						int nEndPos = structuredDocument.getLineOffset(nLine) + structuredDocument.getLineLength(nLine) - ((currentLineDelim != null) ? currentLineDelim.length() : 0);
-						if (nEndPos > flatNode.getEndOffset(region))
-							nEndPos = flatNode.getEndOffset(region);
-						command.length = nEndPos - command.offset;
-					}
-				}
-			}
-		} catch (BadLocationException e) {
-			// do not customize command
-		}
-
-	}
-
-	private static int endsWith(String[] searchStrings, String text) {
-		for (int i = 0; i < searchStrings.length; i++) {
-			if (text.endsWith(searchStrings[i]))
-				return i;
-		}
-		return -1;
-	}
-
-	private static int findEndOfWhiteSpace(IDocument document, int offset, int end) throws BadLocationException {
-		while (offset < end) {
-			char c = document.getChar(offset);
-			if (c != ' ' && c != '\t') {
-				return offset;
-			}
-			offset++;
-		}
-		return end;
-	}
-
-}
-
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSCACandidate.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSCACandidate.java
deleted file mode 100644
index 2987933..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSCACandidate.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import org.eclipse.wst.css.ui.image.CSSImageType;
-
-class CSSCACandidate {
-
-	private String fReplacementString = null;
-	private int fCursorPosition = 0;
-	private String fDisplayString = null;
-	private CSSImageType fImageType = null;
-
-	/**
-	 * CSSCACandidate constructor comment.
-	 */
-	CSSCACandidate() {
-		super();
-	}
-
-	/**
-	 *  
-	 */
-	int getCursorPosition() {
-		return fCursorPosition;
-	}
-
-	/**
-	 *  
-	 */
-	String getDisplayString() {
-		return fDisplayString;
-	}
-
-	/**
-	 *  
-	 */
-	CSSImageType getImageType() {
-		return fImageType;
-	}
-
-	/**
-	 *  
-	 */
-	String getReplacementString() {
-		return fReplacementString;
-	}
-
-	/**
-	 *  
-	 */
-	void setCursorPosition(int cursorPosition) {
-		fCursorPosition = cursorPosition;
-	}
-
-	/**
-	 *  
-	 */
-	void setDisplayString(String displayString) {
-		fDisplayString = displayString;
-	}
-
-	/**
-	 *  
-	 */
-	void setImageType(CSSImageType imageType) {
-		fImageType = imageType;
-	}
-
-	/**
-	 *  
-	 */
-	void setReplacementString(String replacementString) {
-		fReplacementString = replacementString;
-	}
-
-	/**
-	 * Returns a String that represents the value of this object.
-	 * 
-	 * @return a string representation of the receiver
-	 */
-	public String toString() {
-		StringBuffer buf = new StringBuffer();
-		buf.append(getReplacementString());
-		buf.append("\"");//$NON-NLS-1$
-		buf.append(getDisplayString());
-		buf.append("\"");//$NON-NLS-1$
-		buf.append("(");//$NON-NLS-1$
-		buf.append(getCursorPosition());
-		buf.append(")");//$NON-NLS-1$
-
-		return buf.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSContentAssistContext.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSContentAssistContext.java
deleted file mode 100644
index 3d1baed..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSContentAssistContext.java
+++ /dev/null
@@ -1,454 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.css.core.document.ICSSDocument;
-import org.eclipse.wst.css.core.document.ICSSModel;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.metamodel.util.CSSMetaModelFinder;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.core.util.CSSUtil;
-import org.eclipse.wst.css.core.util.RegionIterator;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-class CSSContentAssistContext {
-
-	private int fReplaceBegin = -1;
-	private String fTextToReplace = null;
-	private String fTextToCompare = null;
-	private int fTargetPos = -1;
-	private ICSSNode fTargetNode = null;
-	private int fCursorPos = -1;
-	private IStructuredDocument fStructuredDocument = null;
-	private int fDocumentOffset = 0;
-	private char fQuote = 0;
-	private ICSSModel fModel = null;
-
-	/**
-	 *  
-	 */
-	private CSSContentAssistContext() {
-		super();
-	}
-
-	/**
-	 *  
-	 */
-	CSSContentAssistContext(int documentPosition, ICSSNode node, int documentOffset, char quote) {
-		super();
-		fCursorPos = documentPosition;
-		fDocumentOffset = documentOffset;
-		fQuote = quote;
-		initialize(node.getOwnerDocument());
-	}
-
-	/**
-	 * @return int
-	 */
-	int getCursorPos() {
-		return fCursorPos;
-	}
-
-	/**
-	 * @return int
-	 */
-	int getDocumentOffset() {
-		return fDocumentOffset;
-	}
-
-	/**
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocument
-	 */
-	IStructuredDocument getStructuredDocument() {
-		return fStructuredDocument;
-	}
-
-	/**
-	 * @return com.ibm.sse.model.css.model.ICSSModel
-	 */
-	ICSSModel getModel() {
-		return fModel;
-	}
-
-	private ICSSNode getNodeAt(int offset) {
-		return (ICSSNode) ((fModel != null) ? fModel.getIndexedRegion(offset) : null);
-	}
-
-	/**
-	 * 
-	 * @return char
-	 */
-	char getQuoteOfStyleAttribute() {
-		return fQuote;
-	}
-
-	/**
-	 *  
-	 */
-	ITextRegion getRegionByOffset(int offset) {
-		ITextRegion region = null;
-		if (fStructuredDocument != null) {
-			IStructuredDocumentRegion flatNode = fStructuredDocument.getRegionAtCharacterOffset(offset);
-			if (flatNode != null) {
-				region = flatNode.getRegionAtCharacterOffset(offset);
-			}
-		}
-		return region;
-	}
-
-	/**
-	 *  
-	 */
-	//	String getRegionText() {
-	//		ITextRegion targetRegion = getTargetRegion();
-	//		if (targetRegion != null) {
-	//			return targetRegion.getText();
-	//		} else {
-	//			return ""; //$NON-NLS-1$
-	//		}
-	//	}
-	/**
-	 *  
-	 */
-	int getReplaceBegin() {
-		return fReplaceBegin;
-	}
-
-	/**
-	 * 
-	 * @return com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	//	ITextRegion getSignificantTargetRegion() {
-	//		ITextRegion targetRegion = getTargetRegion();
-	//		RegionIterator iterator = null;
-	//		if (targetRegion == null) {
-	//			if (0 < fCursorPos) {
-	//				iterator = new RegionIterator(fStructuredDocument, fCursorPos - 1);
-	//			}
-	//		} else {
-	//			iterator = getRegionIterator();
-	//		}
-	//		if (iterator != null) {
-	//			while (iterator.hasPrev()) {
-	//				ITextRegion region = iterator.prev();
-	//				String type = region.getType();
-	//				if (type != CSSRegionContexts.CSS_S && type !=
-	// CSSRegionContexts.CSS_COMMENT &&
-	//					type != CSSRegionContexts.CSS_CDO && type != CSSRegionContexts.CSS_CDC)
-	// {
-	//					targetRegion = region;
-	//					break;
-	//				}
-	//			}
-	//		}
-	//
-	//		return targetRegion;
-	//	}
-	/**
-	 *  
-	 */
-	ICSSNode getTargetNode() {
-		return fTargetNode;
-	}
-
-	/**
-	 *  
-	 */
-	private int getTargetPos() {
-		return fTargetPos;
-	}
-
-	/**
-	 * @return com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	ITextRegion getTargetRegion() {
-		return getRegionByOffset(getTargetPos());
-	}
-
-	private IStructuredDocumentRegion getTargetDocumentRegion() {
-		return getDocumentRegionByOffset(getTargetPos());
-	}
-
-	private IStructuredDocumentRegion getDocumentRegionByOffset(int offset) {
-		return (fStructuredDocument != null) ? fStructuredDocument.getRegionAtCharacterOffset(offset) : null;
-	}
-
-	/**
-	 * 
-	 * @return com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	ITextRegion getTargetRegionPrevious() {
-		ITextRegion previousRegion = null;
-		ITextRegion targetRegion = getTargetRegion();
-		RegionIterator iterator = null;
-		if (targetRegion == null) {
-			if (0 < fCursorPos) {
-				iterator = new RegionIterator(fStructuredDocument, fCursorPos - 1);
-			}
-		} else {
-			iterator = getRegionIterator();
-			if (iterator.hasPrev()) {
-				iterator.prev();
-			} else {
-				iterator = null;
-			}
-		}
-		if (iterator != null) {
-			while (iterator.hasPrev()) {
-				ITextRegion region = iterator.prev();
-				String type = region.getType();
-				if (type != CSSRegionContexts.CSS_S && type != CSSRegionContexts.CSS_COMMENT && type != CSSRegionContexts.CSS_CDO && type != CSSRegionContexts.CSS_CDC) {
-					previousRegion = region;
-					break;
-				}
-			}
-		}
-
-		return previousRegion;
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	String getTextToCompare() {
-		return fTextToCompare;
-	}
-
-	/**
-	 *  
-	 */
-	String getTextToReplace() {
-		return fTextToReplace;
-	}
-
-	/**
-	 *  
-	 */
-	private void initialize(ICSSDocument doc) {
-		if (doc == null) {
-			return;
-		}
-		ICSSModel model = doc.getModel();
-		fModel = model;
-		fStructuredDocument = model.getStructuredDocument();
-
-		initializeTargetPos();
-		initializeTargetText();
-		initializeTargetNode();
-	}
-
-	/**
-	 *  
-	 */
-	private void initializeTargetNode() {
-		if (fCursorPos == 0) {
-			fTargetNode = fModel.getDocument();
-			return;
-		}
-
-		// find edge of tree node
-		ICSSNode cursorNode = getNodeAt(fCursorPos);
-		if (cursorNode == null) { // end of document
-			cursorNode = fModel.getDocument();
-		}
-		ICSSNode node = null;
-		IStructuredDocumentRegion flatNode = fStructuredDocument.getRegionAtCharacterOffset(fCursorPos - 1);
-		while (flatNode != null && (node = getNodeAt(flatNode.getStartOffset())) == cursorNode && ((IndexedRegion) node).getStartOffset() != flatNode.getStartOffset()) {
-			flatNode = flatNode.getPrevious();
-		}
-		if (flatNode == null) { // top of document
-			fTargetNode = (node == null) ? fModel.getDocument() : node;
-			return;
-		}
-		//   v<--|
-		//   AAAAAA
-		// BBBBBBBBBB cursorNode:A , node:B -> target is A
-		if (cursorNode != null) {
-			for (ICSSNode parent = cursorNode.getParentNode(); parent != null; parent = parent.getParentNode()) {
-				if (parent == cursorNode) {
-					fTargetNode = cursorNode;
-					return;
-				}
-			}
-		}
-		//     v<--|
-		//   AAA
-		// BBBBBBBBBB cursorNode:B , node:A -> depend on A's node type
-		short nodeType = node.getNodeType();
-		if (nodeType == ICSSNode.STYLEDECLITEM_NODE || nodeType == ICSSNode.CHARSETRULE_NODE || nodeType == ICSSNode.IMPORTRULE_NODE) {
-			String type = CSSUtil.getStructuredDocumentRegionType(flatNode);
-			if (type == CSSRegionContexts.CSS_DELIMITER || type == CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-				fTargetNode = node.getParentNode();
-			} else {
-				fTargetNode = node;
-			}
-			//			fTargetNode = (bOverSemiColon) ? node.getParentNode() : node;
-		} else if (CSSUtil.getStructuredDocumentRegionType(flatNode) == CSSRegionContexts.CSS_RBRACE) {
-			fTargetNode = node.getParentNode();
-		} else {
-			fTargetNode = node;
-		}
-
-		return;
-	}
-
-	/**
-	 *  
-	 */
-	private void initializeTargetPos() {
-		if (fCursorPos == 0 || isSpecialDelimiterRegion(fCursorPos - 1)) {
-			fTargetPos = fCursorPos;
-		} else {
-			fTargetPos = fCursorPos - 1;
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private void initializeTargetText() {
-		ITextRegion targetRegion = getTargetRegion();
-		IStructuredDocumentRegion documentRegion = getTargetDocumentRegion();
-		if (targetRegion == null) {
-			fReplaceBegin = fCursorPos;
-			fTextToReplace = ""; //$NON-NLS-1$
-			fTextToCompare = ""; //$NON-NLS-1$
-		} else {
-			String regionText = documentRegion.getText(targetRegion);
-			int regionStart = documentRegion.getStartOffset(targetRegion);
-			if (regionStart == fCursorPos || regionText.trim().length() == 0 || regionStart + regionText.length() - 1 < fTargetPos) {
-				// to insertion
-				fReplaceBegin = fCursorPos;
-				fTextToReplace = ""; //$NON-NLS-1$
-				fTextToCompare = ""; //$NON-NLS-1$
-			} else {
-				// to replace
-				fReplaceBegin = regionStart;
-				fTextToReplace = regionText;
-				fTextToCompare = regionText.substring(0, fCursorPos - fReplaceBegin);
-			}
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private boolean isSpecialDelimiterRegion(int pos) {
-		ITextRegion region = getRegionByOffset(pos);
-		String type = region.getType();
-		return (type == CSSRegionContexts.CSS_LBRACE || type == CSSRegionContexts.CSS_RBRACE || type == CSSRegionContexts.CSS_DELIMITER || type == CSSRegionContexts.CSS_DECLARATION_SEPARATOR || type == CSSRegionContexts.CSS_DECLARATION_DELIMITER || type == CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR);
-	}
-
-	/**
-	 *  
-	 */
-	boolean isTargetPosAfterOf(String regionType) {
-		int start = ((IndexedRegion) fTargetNode).getStartOffset();
-		if (start < 0 || ((IndexedRegion) fTargetNode).getEndOffset() <= 0) {
-			return false;
-		}
-
-		RegionIterator iRegion = new RegionIterator(fStructuredDocument, start);
-		while (iRegion.hasNext()) {
-			ITextRegion region = iRegion.next();
-			if (fTargetPos < iRegion.getStructuredDocumentRegion().getTextEndOffset(region)) {
-				break;
-			}
-			if (region.getType() == regionType) {
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 *  
-	 */
-	boolean isTargetPosBeforeOf(String regionType) {
-		return !isTargetPosAfterOf(regionType);
-	}
-
-	/**
-	 * @return boolean
-	 * @param regionType
-	 *            java.lang.String
-	 */
-	boolean targetFollows(String regionType) {
-		RegionIterator iRegion;
-		ITextRegion region = null;
-		if (fStructuredDocument.getLength() <= fTargetPos) {
-			iRegion = new RegionIterator(fStructuredDocument, fStructuredDocument.getLength() - 1);
-		} else {
-			iRegion = new RegionIterator(fStructuredDocument, fTargetPos);
-			try {
-				if (!Character.isWhitespace(fStructuredDocument.getChar(fTargetPos)) && iRegion.hasPrev()) {
-					region = iRegion.prev();
-				}
-			} catch (BadLocationException e) {
-				iRegion = new RegionIterator(fStructuredDocument, fStructuredDocument.getLength() - 1);
-			}
-		}
-		while (iRegion.hasPrev()) {
-			region = iRegion.prev();
-			String type = region.getType();
-			if (type == CSSRegionContexts.CSS_S || type == CSSRegionContexts.CSS_COMMENT) {
-				continue;
-			} else {
-				break;
-			}
-		}
-		if (region != null && region.getType() == regionType) {
-			return true;
-		} else {
-			return false;
-		}
-	}
-
-	/**
-	 *  
-	 */
-	boolean targetHas(String regionType) {
-		int start = ((IndexedRegion) fTargetNode).getStartOffset();
-		int end = ((IndexedRegion) fTargetNode).getEndOffset();
-		if (start < 0 || end <= 0) {
-			return false;
-		}
-		RegionIterator iRegion = new RegionIterator(fStructuredDocument, start);
-		while (iRegion.hasNext()) {
-			ITextRegion region = iRegion.next();
-			if (end <= iRegion.getStructuredDocumentRegion().getStartOffset(region)) {
-				break;
-			}
-			if (region.getType() == regionType) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	RegionIterator getRegionIterator() {
-		return new RegionIterator(getStructuredDocument(), getTargetPos());
-	}
-
-	/**
-	 *  
-	 */
-	CSSMetaModel getMetaModel() {
-		CSSMetaModelFinder finder = CSSMetaModelFinder.getInstance();
-		return finder.findMetaModelFor(getModel());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSContentAssistProcessor.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSContentAssistProcessor.java
deleted file mode 100644
index ca11958..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSContentAssistProcessor.java
+++ /dev/null
@@ -1,292 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.wst.css.core.adapters.ICSSModelAdapter;
-import org.eclipse.wst.css.core.document.ICSSDocument;
-import org.eclipse.wst.css.core.document.ICSSModel;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.html.core.htmlcss.StyleAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.ui.contentassist.XMLContentAssistUtilities;
-import org.eclipse.wst.xml.ui.util.SharedXMLEditorPluginImageHelper;
-
-public class CSSContentAssistProcessor implements IContentAssistProcessor {
-
-	private int fDocumentOffset = 0;
-	private char fQuote = 0;
-
-	/**
-	 * Return a list of proposed code completions based on the specified
-	 * location within the document that corresponds to the current cursor
-	 * position within the text-editor control.
-	 * 
-	 * @param documentPosition
-	 *            a location within the document
-	 * @return an array of code-assist items
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int documentPosition) {
-
-		IndexedRegion indexedNode = ContentAssistUtils.getNodeAt((StructuredTextViewer) viewer, documentPosition + fDocumentOffset);
-		XMLNode xNode = null;
-		XMLNode parent = null;
-		CSSProposalArranger arranger = null;
-
-		// bail if we couldn't get an indexed node
-		// if(indexedNode == null) return new ICompletionProposal[0];
-		if (indexedNode instanceof XMLNode) {
-			xNode = (XMLNode) indexedNode;
-			parent = (XMLNode) xNode.getParentNode();
-		}
-		// need to get in here if there in the no 0 region <style>|</style>
-		// case
-		if (xNode != null && xNode.getNodeName().equalsIgnoreCase(HTML40Namespace.ElementName.STYLE)) {
-			// now we know the cursor is in a <style> tag w/out region
-			IStructuredModel cssModel = getCSSModel(xNode);
-			if (cssModel != null) {
-				// adjust offsets for embedded style
-				int offset = documentPosition;
-				int pos = 0;
-				IndexedRegion keyIndexedNode = cssModel.getIndexedRegion(pos);
-				if (keyIndexedNode == null) {
-					keyIndexedNode = (IndexedRegion) ((ICSSModel) cssModel).getDocument();
-				}
-				arranger = new CSSProposalArranger(pos, (ICSSNode) keyIndexedNode, offset, (char) 0);
-			}
-		}
-		else if (parent != null && parent.getNodeName().equalsIgnoreCase(HTML40Namespace.ElementName.STYLE)) {
-			// now we know the cursor is in a <style> tag with a region
-			// use the parent because that will be the <style> tag
-			IStructuredModel cssModel = getCSSModel(parent);
-			if (cssModel != null) {
-				// adjust offsets for embedded style
-				int offset = indexedNode.getStartOffset();
-				int pos = documentPosition - offset;
-				IndexedRegion keyIndexedNode = cssModel.getIndexedRegion(pos);
-				if (keyIndexedNode == null) {
-					keyIndexedNode = (IndexedRegion) ((ICSSModel) cssModel).getDocument();
-				}
-				arranger = new CSSProposalArranger(pos, (ICSSNode) keyIndexedNode, offset, (char) 0);
-			}
-		}
-		else if (indexedNode instanceof XMLNode) {
-			// get model for node w/ style attribute
-			IStructuredModel cssModel = getCSSModel((XMLNode) indexedNode);
-			if (cssModel != null) {
-				IndexedRegion keyIndexedNode = cssModel.getIndexedRegion(documentPosition - fDocumentOffset);
-				if (keyIndexedNode == null) {
-					keyIndexedNode = (IndexedRegion) ((ICSSModel) cssModel).getDocument();
-				}
-				if (keyIndexedNode instanceof ICSSNode) {
-					// inline style for a tag, not embedded
-					arranger = new CSSProposalArranger(documentPosition, (ICSSNode) keyIndexedNode, fDocumentOffset, fQuote);
-				}
-			}
-		}
-		else if (indexedNode instanceof ICSSNode) {
-			// when editing external CSS using CSS Designer, ICSSNode is
-			// passed.
-			ICSSDocument cssdoc = ((ICSSNode) indexedNode).getOwnerDocument();
-			if (cssdoc != null) {
-				IStructuredModel cssModel = cssdoc.getModel();
-				if (cssModel != null) {
-					IndexedRegion keyIndexedNode = cssModel.getIndexedRegion(documentPosition - fDocumentOffset);
-					if (keyIndexedNode == null) {
-						keyIndexedNode = (IndexedRegion) ((ICSSModel) cssModel).getDocument();
-					}
-					if (keyIndexedNode instanceof ICSSNode) {
-						// inline style for a tag, not embedded
-						arranger = new CSSProposalArranger(documentPosition, (ICSSNode) keyIndexedNode, fDocumentOffset, fQuote);
-					}
-				}
-			}
-		}
-		else if (indexedNode == null && isViewerEmpty(viewer)) {
-			// the top of empty CSS Document
-			IStructuredModel cssModel = null;
-			try {
-				cssModel = StructuredModelManager.getModelManager().getExistingModelForRead(viewer.getDocument());
-				if (cssModel instanceof ICSSModel) {
-					IndexedRegion keyIndexedNode = cssModel.getIndexedRegion(documentPosition - fDocumentOffset);
-					if (keyIndexedNode == null) {
-						keyIndexedNode = (IndexedRegion) ((ICSSModel) cssModel).getDocument();
-					}
-					if (keyIndexedNode instanceof ICSSNode) {
-						// inline style for a tag, not embedded
-						arranger = new CSSProposalArranger(documentPosition, (ICSSNode) keyIndexedNode, fDocumentOffset, fQuote);
-					}
-				}
-			}
-			finally {
-				if (cssModel != null)
-					cssModel.releaseFromRead();
-			}
-		}
-
-		ICompletionProposal[] proposals = new ICompletionProposal[0];
-		if (arranger != null) {
-			fDocumentOffset = 0;
-			proposals = arranger.getProposals();
-
-			// add end tag if parent is not closed
-			ICompletionProposal endTag = XMLContentAssistUtilities.computeXMLEndTagProposal(viewer, documentPosition, indexedNode, HTML40Namespace.ElementName.STYLE, SharedXMLEditorPluginImageHelper.IMG_OBJ_TAG_GENERIC); //$NON-NLS-1$
-			if (endTag != null) {
-				ICompletionProposal[] plusOne = new ICompletionProposal[proposals.length + 1];
-				System.arraycopy(proposals, 0, plusOne, 1, proposals.length);
-				plusOne[0] = endTag;
-				proposals = plusOne;
-			}
-		}
-		return proposals;
-	}
-
-	/**
-	 * Returns true if there is no text or it's all white space, otherwise
-	 * returns false
-	 * 
-	 * @param treeNode
-	 * @param textViewer
-	 * @return boolean
-	 */
-	private boolean isViewerEmpty(ITextViewer textViewer) {
-		boolean isEmpty = false;
-		String text = textViewer.getTextWidget().getText();
-		if (text == null || (text != null && text.trim().equals(""))) //$NON-NLS-1$
-			isEmpty = true;
-		return isEmpty;
-	}
-
-	/**
-	 * Get CSSModel for an indexed node
-	 * 
-	 * @param indexedNode
-	 * @return IStructuredModel
-	 */
-	// private IStructuredModel getCSSModel(IndexedRegion indexedNode) {
-	// if (indexedNode == null) return null;
-	// Node node = (Node)indexedNode;
-	// INodeNotifier notifier = (INodeNotifier)node.getParentNode();
-	// if (notifier == null) return null;
-	// INodeAdapter adapter =
-	// StyleAdapterFactory.getInstance().adapt(notifier);
-	// if (adapter == null || !(adapter instanceof CSSModelAdapter)) return
-	// null;
-	// CSSModelAdapter modelAdapter = (CSSModelAdapter)adapter;
-	// return modelAdapter.getModel();
-	// }
-	/**
-	 * Returns the CSSmodel for a given XML node.
-	 * 
-	 * @param element
-	 * @return IStructuredModel
-	 */
-	private IStructuredModel getCSSModel(XMLNode element) {
-		if (element == null)
-			return null;
-		INodeAdapter adapter = StyleAdapterFactory.getInstance().adapt(element);
-		if (adapter == null || !(adapter instanceof ICSSModelAdapter))
-			return null;
-		ICSSModelAdapter modelAdapter = (ICSSModelAdapter) adapter;
-		return modelAdapter.getModel();
-	}
-
-	/**
-	 * Returns information about possible contexts based on the specified
-	 * location within the document that corresponds to the current cursor
-	 * position within the text viewer.
-	 * 
-	 * @param viewer
-	 *            the viewer whose document is used to compute the possible
-	 *            contexts
-	 * @param documentPosition
-	 *            an offset within the document for which context information
-	 *            should be computed
-	 * @return an array of context information objects or <code>null</code>
-	 *         if no context could be found
-	 */
-	public org.eclipse.jface.text.contentassist.IContextInformation[] computeContextInformation(org.eclipse.jface.text.ITextViewer viewer, int documentOffset) {
-		return null;
-	}
-
-	/**
-	 * Returns the characters which when entered by the user should
-	 * automatically trigger the presentation of possible completions.
-	 * 
-	 * @return the auto activation characters for completion proposal or
-	 *         <code>null</code> if no auto activation is desired
-	 */
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		return null;
-	}
-
-	/**
-	 * Returns the characters which when entered by the user should
-	 * automatically trigger the presentation of context information.
-	 * 
-	 * @return the auto activation characters for presenting context
-	 *         information or <code>null</code> if no auto activation is
-	 *         desired
-	 */
-	public char[] getContextInformationAutoActivationCharacters() {
-		return null;
-	}
-
-	/**
-	 * Returns a validator used to determine when displayed context
-	 * information should be dismissed. May only return <code>null</code> if
-	 * the processor is incapable of computing context information.
-	 * 
-	 * @return a context information validator, or <code>null</code> if the
-	 *         processor is incapable of computing context information
-	 */
-	public org.eclipse.jface.text.contentassist.IContextInformationValidator getContextInformationValidator() {
-		return null;
-	}
-
-	/**
-	 * Return the reason why computeProposals was not able to find any
-	 * completions.
-	 * 
-	 * @return an error message or null if no error occurred
-	 */
-	public String getErrorMessage() {
-		return null;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (2001/05/22
-	 * 10:37:05)
-	 * 
-	 * @param offset
-	 *            int
-	 */
-	public void setDocumentOffset(int offset) {
-		fDocumentOffset = offset;
-	}
-
-	/**
-	 * 
-	 * @param quote
-	 *            char
-	 */
-	public void setQuoteCharOfStyleAttribute(char quote) {
-		fQuote = quote;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalArranger.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalArranger.java
deleted file mode 100644
index 854e87d..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalArranger.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.text.contentassist.CompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.wst.css.core.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSPageRule;
-import org.eclipse.wst.css.core.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.document.ICSSStyleSheet;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.w3c.dom.css.CSSFontFaceRule;
-
-class CSSProposalArranger {
-
-	private List fProposals = new ArrayList();
-	private CSSContentAssistContext fContext = null;
-
-	/**
-	 * CSSProposalArranger constructor comment.
-	 */
-	private CSSProposalArranger() {
-		super();
-	}
-
-	/**
-	 * CSSProposalArranger constructor comment.
-	 */
-	CSSProposalArranger(int documentPosition, ICSSNode node, int documentOffset, char quote) {
-		super();
-		fContext = new CSSContentAssistContext(documentPosition, node, documentOffset, quote);
-	}
-
-	/**
-	 *  
-	 */
-	void buildProposals() {
-		fProposals.clear();
-
-		/*
-		 * String text; ICompletionProposal item; text = "---- Test
-		 * Information ----"; item = new CompletionProposal("",
-		 * fContext.getReplaceBegin(), 0, 0, null, text, null, null);
-		 * fProposals.add(item);
-		 * 
-		 * text = "Target: \"" + fContext.getRegionText() + "\"";
-		 * 
-		 * item = new CompletionProposal("", fContext.getReplaceBegin(), 0, 0,
-		 * null, text, null, null); fProposals.add(item);
-		 * 
-		 * text = fContext.getTargetNode().getClass().toString(); int
-		 * lastPeriodPos = text.lastIndexOf('.'); text = "Node: " +
-		 * text.substring(lastPeriodPos + 1); item = new
-		 * CompletionProposal("", fContext.getReplaceBegin(), 0, 0, null,
-		 * text, null, null); fProposals.add(item);
-		 */
-
-		ICSSNode targetNode = fContext.getTargetNode();
-		//int targetPos = fContext.getTargetPos();
-		if (targetNode instanceof ICSSStyleSheet) {
-			buildProposalsForAnyRule();
-		} else if ((targetNode instanceof ICSSMediaRule && fContext.isTargetPosAfterOf(CSSRegionContexts.CSS_LBRACE)) || (targetNode instanceof ICSSStyleRule && fContext.isTargetPosBeforeOf(CSSRegionContexts.CSS_LBRACE))) {
-			buildProposalsForAnyRule();
-			//		buildProposalsForStyleRule();
-		} else if ((targetNode instanceof ICSSPageRule && fContext.isTargetPosBeforeOf(CSSRegionContexts.CSS_LBRACE))) {
-			buildProposalsForPageRulePseudoClass();
-		} else if ((targetNode instanceof ICSSStyleRule || targetNode instanceof CSSFontFaceRule || targetNode instanceof ICSSPageRule || targetNode instanceof ICSSStyleDeclaration) && (targetNode.getOwnerDocument() instanceof ICSSStyleDeclaration || fContext.targetFollows(CSSRegionContexts.CSS_DECLARATION_DELIMITER) || fContext.targetFollows(CSSRegionContexts.CSS_LBRACE))) {
-			buildProposalsForDeclarationName();
-		} else if (targetNode instanceof ICSSStyleDeclItem) {
-			if (fContext.isTargetPosAfterOf(CSSRegionContexts.CSS_DECLARATION_SEPARATOR)) {
-				buildProposalsForDeclarationValue();
-			} else {
-				buildProposalsForDeclarationName();
-			}
-		} else if (targetNode instanceof ICSSPrimitiveValue) {
-			buildProposalsForDeclarationValue();
-		}
-		/*
-		 * else if (targetNode instanceof ICSSPrimitiveValue || ((targetNode
-		 * instanceof ICSSStyleRule || targetNode instanceof CSSFontFaceRule ||
-		 * targetNode instanceof ICSSStyleDeclaration || targetNode instanceof
-		 * ICSSStyleDeclItem) &&
-		 * fContext.isTargetPosAfterOf(CSSRegionContexts.COLON))) {
-		 * buildProposalsForDeclarationValue(); }
-		 */
-
-		// for Test
-	}
-
-	/**
-	 *  
-	 */
-	void buildProposalsForAnyRule() {
-		CSSProposalGenerator generator;
-		generator = new CSSProposalGeneratorForAtmarkRule(fContext);
-		fProposals.addAll(generator.getProposals());
-		generator = new CSSProposalGeneratorForHTMLTag(fContext);
-		fProposals.addAll(generator.getProposals());
-		generator = new CSSProposalGeneratorForPseudoSelector(fContext);
-		fProposals.addAll(generator.getProposals());
-	}
-
-	/**
-	 *  
-	 */
-	void buildProposalsForDeclarationName() {
-		CSSProposalGenerator generator;
-		generator = new CSSProposalGeneratorForDeclarationName(fContext);
-		fProposals.addAll(generator.getProposals());
-	}
-
-	/**
-	 *  
-	 */
-	void buildProposalsForDeclarationValue() {
-		CSSProposalGenerator generator;
-		generator = new CSSProposalGeneratorForDeclarationValue(fContext);
-		fProposals.addAll(generator.getProposals());
-	}
-
-	/**
-	 *  
-	 */
-	void buildProposalsForPageRulePseudoClass() {
-		CSSProposalGenerator generator;
-		generator = new CSSProposalGeneratorForPseudoSelector(fContext);
-		fProposals.addAll(generator.getProposals());
-	}
-
-	/**
-	 *  
-	 */
-	void buildProposalsForStyleRule() {
-		CSSProposalGenerator generator;
-		generator = new CSSProposalGeneratorForHTMLTag(fContext);
-		fProposals.addAll(generator.getProposals());
-		generator = new CSSProposalGeneratorForPseudoSelector(fContext);
-		fProposals.addAll(generator.getProposals());
-	}
-
-	/**
-	 *  
-	 */
-	ICompletionProposal[] getProposals() {
-		buildProposals();
-		ICompletionProposal[] proposalArray = new CompletionProposal[fProposals.size()];
-		Iterator iItem = fProposals.iterator();
-		for (int i = 0; iItem.hasNext(); i++) {
-			proposalArray[i] = (ICompletionProposal) iItem.next();
-		}
-		return proposalArray;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGenerator.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGenerator.java
deleted file mode 100644
index 483645a..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGenerator.java
+++ /dev/null
@@ -1,209 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.text.contentassist.CompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.core.preferences.CSSPreferenceHelper;
-import org.eclipse.wst.css.core.util.RegionIterator;
-import org.eclipse.wst.css.ui.image.CSSImageHelper;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-abstract class CSSProposalGenerator {
-
-
-	protected class StringAndOffset {
-		StringAndOffset(String string, int offset) {
-			this.fString = string;
-			this.fOffset = offset;
-		}
-
-		String fString;
-		int fOffset;
-	}
-
-	protected CSSContentAssistContext fContext = null;
-
-	/**
-	 * CSSProposalGenerator constructor comment.
-	 */
-	private CSSProposalGenerator() {
-		super();
-	}
-
-	CSSProposalGenerator(CSSContentAssistContext context) {
-		super();
-		fContext = context;
-	}
-
-	/**
-	 *  
-	 */
-	protected boolean checkLeadingColon() {
-		boolean hasLeadingColon = false;
-		ITextRegion targetRegion = fContext.getTargetRegion();
-		if (targetRegion == null && 0 < fContext.getCursorPos()) {
-			targetRegion = fContext.getRegionByOffset(fContext.getCursorPos() - 1);
-			if (targetRegion != null && targetRegion.getType() == CSSRegionContexts.CSS_SELECTOR_PSEUDO) {
-				hasLeadingColon = true;
-			}
-		} else if (targetRegion != null) {
-			RegionIterator iterator = fContext.getRegionIterator();
-			if (iterator.hasPrev()) {
-				iterator.prev();
-				if (iterator.hasPrev() && iterator.prev().getType() == CSSRegionContexts.CSS_SELECTOR_PSEUDO) {
-					hasLeadingColon = true;
-				}
-			}
-		}
-		return hasLeadingColon;
-	}
-
-	/**
-	 *  
-	 */
-	protected StringAndOffset generateBraces() {
-		StringBuffer buf = new StringBuffer();
-		String lineDelimiter = fContext.getStructuredDocument().getLineDelimiter();
-		CSSPreferenceHelper prefs = CSSPreferenceHelper.getInstance();
-		String indentStr = prefs.getIndentString();
-		if (prefs.isNewLineOnOpenBrace()) {
-			buf.append(lineDelimiter);
-		}
-		buf.append("{");//$NON-NLS-1$
-		if (prefs.isOnePropertyPerLine()) {
-			buf.append(lineDelimiter);
-			buf.append(indentStr);
-		} else {
-			buf.append(" ");//$NON-NLS-1$
-		}
-		int offset = buf.length();
-		if (prefs.isOnePropertyPerLine()) {
-			buf.append(lineDelimiter);
-		} else {
-			buf.append(" ");//$NON-NLS-1$
-		}
-		buf.append("}");//$NON-NLS-1$
-		return new StringAndOffset(buf.toString(), offset);
-	}
-
-	/**
-	 *  
-	 */
-	protected StringAndOffset generateParenthesis() {
-		StringBuffer buf = new StringBuffer();
-		int offset;
-		buf.append("(");//$NON-NLS-1$
-		offset = 1;
-		buf.append(")");//$NON-NLS-1$
-		return new StringAndOffset(buf.toString(), offset);
-	}
-
-	/**
-	 *  
-	 */
-	protected StringAndOffset generateQuotes() {
-		StringBuffer buf = new StringBuffer();
-		char quoteChar = getQuoteChar();
-		buf.append(quoteChar);
-		buf.append(quoteChar);
-		return new StringAndOffset(buf.toString(), 1);
-	}
-
-	/**
-	 *  
-	 */
-	protected StringAndOffset generateSemicolon() {
-		StringBuffer buf = new StringBuffer();
-		int offset;
-		buf.append(";");//$NON-NLS-1$
-		offset = 0;
-		return new StringAndOffset(buf.toString(), offset);
-	}
-
-	/**
-	 *  
-	 */
-	protected StringAndOffset generateURI() {
-		StringBuffer buf = new StringBuffer();
-		CSSPreferenceHelper prefs = CSSPreferenceHelper.getInstance();
-		char quoteChar = getQuoteChar();
-		buf.append("url(");//$NON-NLS-1$
-		if (prefs.isQuoteInURI()) {
-			buf.append(quoteChar);
-		}
-		int offset = buf.length();
-		if (prefs.isQuoteInURI()) {
-			buf.append(quoteChar);
-		}
-		buf.append(")");//$NON-NLS-1$
-		return new StringAndOffset(buf.toString(), offset);
-	}
-
-	abstract protected Iterator getCandidates();
-
-	List getProposals() {
-		List proposals = new ArrayList();
-
-		CSSImageHelper imageHelper = CSSImageHelper.getInstance();
-		Iterator i = getCandidates();
-		while (i.hasNext()) {
-			CSSCACandidate candidate = (CSSCACandidate) i.next();
-			Image image = imageHelper.getImage(candidate.getImageType());
-			ICompletionProposal item = new CompletionProposal(candidate.getReplacementString(), fContext.getReplaceBegin() + fContext.getDocumentOffset(), fContext.getTextToReplace().length(), candidate.getCursorPosition(), image, candidate.getDisplayString(), null, null);
-			proposals.add(item);
-		}
-
-		return proposals;
-	}
-
-	/**
-	 * 
-	 * @return char
-	 */
-	private char getQuoteChar() {
-		CSSPreferenceHelper prefs = CSSPreferenceHelper.getInstance();
-		String quoteStr = prefs.getQuoteString(fContext.getModel());
-		char quoteChar = (quoteStr != null && 0 < quoteStr.length()) ? quoteStr.charAt(0) : '"';
-		char attrQuote = fContext.getQuoteOfStyleAttribute();
-		if (attrQuote != 0) {
-			if (attrQuote == '"' && quoteChar == '"') {
-				quoteChar = '\'';
-			} else if (attrQuote == '\'' && quoteChar == '\'') {
-				quoteChar = '"';
-			}
-		}
-		return quoteChar;
-	}
-
-	/**
-	 *  
-	 */
-	protected boolean isMatch(String text) {
-		String textToCompare = fContext.getTextToCompare();
-		if (textToCompare.length() == 0) {
-			return true;
-		} else {
-			return (text.toUpperCase().indexOf(textToCompare.toUpperCase()) == 0);
-		}
-		/*
-		 * String textToReplace = fContext.getTextToReplace(); if
-		 * (textToReplace.length() == 0) { return true; } else { return
-		 * (text.toUpperCase().indexOf(textToReplace.toUpperCase()) == 0); }
-		 */
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForAtmarkRule.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForAtmarkRule.java
deleted file mode 100644
index 1539037..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForAtmarkRule.java
+++ /dev/null
@@ -1,293 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.document.ICSSCharsetRule;
-import org.eclipse.wst.css.core.document.ICSSDocument;
-import org.eclipse.wst.css.core.document.ICSSImportRule;
-import org.eclipse.wst.css.core.document.ICSSModel;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.core.preferences.CSSPreferenceHelper;
-import org.eclipse.wst.css.core.util.SelectionCollector;
-import org.eclipse.wst.css.ui.image.CSSImageType;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-class CSSProposalGeneratorForAtmarkRule extends CSSProposalGenerator {
-
-	private boolean fUseUpperCase = false;
-	private static final String CHARSET = "@charset";//$NON-NLS-1$
-	private static final String FONT_FACE = "@font-face";//$NON-NLS-1$
-	private static final String IMPORT = "@import";//$NON-NLS-1$
-	private static final String MEDIA = "@media";//$NON-NLS-1$
-	private static final String PAGE = "@page";//$NON-NLS-1$
-
-	/**
-	 * CSSAtmarkRuleProposalGenerator constructor comment.
-	 * 
-	 * @param context
-	 *            com.ibm.sed.contentassist.old.css.CSSContentAssistContext
-	 */
-	CSSProposalGeneratorForAtmarkRule(CSSContentAssistContext context) {
-		super(context);
-		fUseUpperCase = CSSPreferenceHelper.getInstance().isIdentUpperCase();
-	}
-
-	/**
-	 *  
-	 */
-	private CSSCACandidate getCandidateCharsetRule() {
-		// check content model
-		CSSMetaModelUtil util = new CSSMetaModelUtil(fContext.getMetaModel());
-		if (!util.collectNodesByType(CSSMMNode.TYPE_CHARSET_RULE).hasNext()) {
-			return null;
-		}
-
-		// check if embedded or not
-		if (fContext.getModel().getStyleSheetType() == ICSSModel.EMBEDDED) {
-			return null;
-		}
-
-		// check if caret precede all other rules.
-		int offset = fContext.getCursorPos();
-		if (0 < offset) {
-			SelectionCollector trav = new SelectionCollector();
-			trav.setRegion(0, offset - 1);
-			trav.apply(fContext.getModel().getDocument());
-			Iterator i = trav.getSelectedNodes().iterator();
-			while (i.hasNext()) {
-				Object obj = i.next();
-				if (obj instanceof ICSSNode && !(obj instanceof ICSSDocument)) {
-					return null;
-				}
-			}
-		}
-
-		int cursorPos = 0;
-		String ident = (fUseUpperCase) ? CHARSET.toUpperCase() : CHARSET.toLowerCase();
-		StringBuffer buf = new StringBuffer();
-		buf.append(ident);
-		buf.append(" ");//$NON-NLS-1$
-		cursorPos = buf.length();
-		StringAndOffset sao;
-		sao = generateQuotes();
-		buf.append(sao.fString);
-		cursorPos += sao.fOffset;
-		sao = generateSemicolon();
-		buf.append(sao.fString);
-
-		String text = buf.toString();
-
-		if (isMatch(text)) {
-			CSSCACandidate item = new CSSCACandidate();
-			item.setReplacementString(text);
-			item.setCursorPosition(cursorPos);
-			item.setDisplayString(ident);
-			item.setImageType(CSSImageType.RULE_CHARSET);
-			return item;
-		} else {
-			return null;
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private CSSCACandidate getCandidateFontFaceRule() {
-		CSSMetaModelUtil util = new CSSMetaModelUtil(fContext.getMetaModel());
-		if (!util.collectNodesByType(CSSMMNode.TYPE_FONT_FACE_RULE).hasNext()) {
-			return null;
-		}
-
-		int cursorPos = 0;
-		String ident = (fUseUpperCase) ? FONT_FACE.toUpperCase() : FONT_FACE.toLowerCase();
-		StringBuffer buf = new StringBuffer();
-		buf.append(ident);
-		buf.append(" ");//$NON-NLS-1$
-		cursorPos = buf.length();
-		StringAndOffset sao;
-		sao = generateBraces();
-		buf.append(sao.fString);
-		cursorPos += sao.fOffset;
-
-		String text = buf.toString();
-
-		if (isMatch(text)) {
-			CSSCACandidate item = new CSSCACandidate();
-			item.setReplacementString(buf.toString());
-			item.setCursorPosition(cursorPos);
-			item.setDisplayString(ident);
-			item.setImageType(CSSImageType.RULE_FONTFACE);
-			return item;
-		} else {
-			return null;
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private CSSCACandidate getCandidateImportRule() {
-		// check content model
-		CSSMetaModelUtil util = new CSSMetaModelUtil(fContext.getMetaModel());
-		if (!util.collectNodesByType(CSSMMNode.TYPE_IMPORT_RULE).hasNext()) {
-			return null;
-		}
-
-		// charset and import can precede import rule.
-		int offset = fContext.getCursorPos();
-		if (0 < offset) {
-			SelectionCollector trav = new SelectionCollector();
-			trav.setRegion(0, offset - 1);
-			trav.apply(fContext.getModel().getDocument());
-			Iterator i = trav.getSelectedNodes().iterator();
-			while (i.hasNext()) {
-				Object obj = i.next();
-				if (obj instanceof ICSSNode && !(obj instanceof ICSSDocument || obj instanceof ICSSCharsetRule || obj instanceof ICSSImportRule)) {
-					return null;
-				}
-			}
-		}
-
-		int cursorPos = 0;
-		String ident = (fUseUpperCase) ? IMPORT.toUpperCase() : IMPORT.toLowerCase();
-		StringBuffer buf = new StringBuffer();
-		buf.append(ident);
-		buf.append(" ");//$NON-NLS-1$
-		cursorPos = buf.length();
-		StringAndOffset sao;
-		sao = generateURI();
-		buf.append(sao.fString);
-		cursorPos += sao.fOffset;
-		sao = generateSemicolon();
-		buf.append(sao.fString);
-
-		String text = buf.toString();
-
-		if (isMatch(text)) {
-			CSSCACandidate item = new CSSCACandidate();
-			item.setReplacementString(buf.toString());
-			item.setCursorPosition(cursorPos);
-			item.setDisplayString(ident);
-			item.setImageType(CSSImageType.RULE_IMPORT);
-			return item;
-		} else {
-			return null;
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private CSSCACandidate getCandidateMediaRule() {
-		CSSMetaModelUtil util = new CSSMetaModelUtil(fContext.getMetaModel());
-		if (!util.collectNodesByType(CSSMMNode.TYPE_MEDIA_RULE).hasNext()) {
-			return null;
-		}
-
-		int cursorPos = 0;
-		String ident = (fUseUpperCase) ? MEDIA.toUpperCase() : MEDIA.toLowerCase();
-		StringBuffer buf = new StringBuffer();
-		buf.append(ident);
-		buf.append("  ");//$NON-NLS-1$
-		cursorPos = buf.length() - 1;
-		StringAndOffset sao;
-		sao = generateBraces();
-		buf.append(sao.fString);
-
-		String text = buf.toString();
-
-		if (isMatch(text)) {
-			CSSCACandidate item = new CSSCACandidate();
-			item.setReplacementString(buf.toString());
-			item.setCursorPosition(cursorPos);
-			item.setDisplayString(ident);
-			item.setImageType(CSSImageType.RULE_MEDIA);
-			return item;
-		} else {
-			return null;
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private CSSCACandidate getCandidatePageRule() {
-		CSSMetaModelUtil util = new CSSMetaModelUtil(fContext.getMetaModel());
-		if (!util.collectNodesByType(CSSMMNode.TYPE_PAGE_RULE).hasNext()) {
-			return null;
-		}
-
-		int cursorPos = 0;
-		String ident = (fUseUpperCase) ? PAGE.toUpperCase() : PAGE.toLowerCase();
-		StringBuffer buf = new StringBuffer();
-		buf.append(ident);
-		buf.append(" ");//$NON-NLS-1$
-		cursorPos = buf.length();
-		StringAndOffset sao;
-		sao = generateBraces();
-		buf.append(sao.fString);
-		cursorPos += sao.fOffset;
-
-		String text = buf.toString();
-
-		if (isMatch(text)) {
-			CSSCACandidate item = new CSSCACandidate();
-			item.setReplacementString(buf.toString());
-			item.setCursorPosition(cursorPos);
-			item.setDisplayString(ident);
-			item.setImageType(CSSImageType.RULE_PAGE);
-			return item;
-		} else {
-			return null;
-		}
-	}
-
-	/**
-	 * getCandidates method comment.
-	 */
-	protected Iterator getCandidates() {
-		List candidates = new ArrayList();
-
-		ITextRegion region = fContext.getTargetRegionPrevious();
-		//	ITextRegion region = fContext.getSignificantTargetRegion();
-		if (region != null) {
-			String type = region.getType();
-			if (type != CSSRegionContexts.CSS_RBRACE && type != CSSRegionContexts.CSS_DELIMITER) {
-				return candidates.iterator();
-			}
-		}
-
-		CSSCACandidate item;
-		if ((item = getCandidateImportRule()) != null) {
-			candidates.add(item);
-		}
-		if ((item = getCandidateCharsetRule()) != null) {
-			candidates.add(item);
-		}
-		if ((item = getCandidateMediaRule()) != null) {
-			candidates.add(item);
-		}
-		if ((item = getCandidatePageRule()) != null) {
-			candidates.add(item);
-		}
-		if ((item = getCandidateFontFaceRule()) != null) {
-			candidates.add(item);
-		}
-		return candidates.iterator();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForDeclarationName.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForDeclarationName.java
deleted file mode 100644
index 6bf2040..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForDeclarationName.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.core.preferences.CSSPreferenceHelper;
-import org.eclipse.wst.css.ui.image.CSSImageType;
-import org.eclipse.wst.css.ui.preferences.CSSPreferenceManager;
-
-class CSSProposalGeneratorForDeclarationName extends CSSProposalGenerator {
-
-	/**
-	 * CSSProposalGeneratorForDeclaration constructor comment.
-	 * 
-	 * @param context
-	 *            com.ibm.sed.contentassist.old.css.CSSContentAssistContext
-	 */
-	CSSProposalGeneratorForDeclarationName(CSSContentAssistContext context) {
-		super(context);
-	}
-
-	/**
-	 * getCandidates method comment.
-	 */
-	protected Iterator getCandidates() {
-		List candidates = new ArrayList();
-
-		CSSPreferenceHelper prefs = CSSPreferenceHelper.getInstance();
-		String preDelim = "";//$NON-NLS-1$
-		for (int i = 0; i < prefs.getSpacesPreDelimiter(); i++) {
-			preDelim += ' ';//$NON-NLS-1$
-		}
-		String postDelim = "";//$NON-NLS-1$
-		for (int i = 0; i < prefs.getSpacesPostDelimiter(); i++) {
-			postDelim += ' ';//$NON-NLS-1$
-		}
-
-		ICSSNode targetNode = fContext.getTargetNode();
-		boolean bFontRule = false;
-		for (ICSSNode node = targetNode; node != null; node = node.getParentNode()) {
-			if (node instanceof org.w3c.dom.css.CSSFontFaceRule) {
-				bFontRule = true;
-				break;
-			}
-		}
-
-		List names = new ArrayList();
-		CSSMetaModelUtil util = new CSSMetaModelUtil(fContext.getMetaModel());
-		Iterator iNames = util.collectNodesByType((bFontRule) ? CSSMMNode.TYPE_DESCRIPTOR : CSSMMNode.TYPE_PROPERTY);
-		while (iNames.hasNext()) {
-			CSSMMNode node = (CSSMMNode) iNames.next();
-			names.add(node);
-		}
-		sortNames(names);
-		//Collections.sort(names);
-
-		boolean bAddColon = true;
-		if (targetNode instanceof ICSSStyleDeclItem && fContext.targetHas(CSSRegionContexts.CSS_DECLARATION_SEPARATOR)) {
-			bAddColon = false;
-		}
-
-		Iterator i = names.iterator();
-		while (i.hasNext()) {
-			CSSMMNode node = (CSSMMNode) i.next();
-			String text = node.getName();
-			text = (prefs.isPropNameUpperCase()) ? text.toUpperCase() : text.toLowerCase();
-			if (!isMatch(text)) {
-				continue;
-			}
-
-			int cursorPos = 0;
-			StringBuffer buf = new StringBuffer();
-			buf.append(text);
-			buf.append(preDelim);
-			cursorPos = buf.length();
-			if (bAddColon) {
-				buf.append(':');//$NON-NLS-1$
-				buf.append(postDelim);
-				cursorPos += 1 + postDelim.length();
-			}
-			//			if (! (targetNode instanceof ICSSStyleDeclItem)) {
-			//				buf.append(';');//$NON-NLS-1$
-			//			}
-
-			CSSCACandidate item = new CSSCACandidate();
-			item.setReplacementString(buf.toString());
-			item.setCursorPosition(cursorPos);
-			item.setDisplayString(text);
-			item.setImageType(getCategoryImageType(node));
-			candidates.add(item);
-		}
-
-		return candidates.iterator();
-	}
-
-	void sortNames(List names) {
-		CSSPreferenceManager prefMan = CSSPreferenceManager.getInstance();
-		final boolean categorize = prefMan.getContentAssistCategorize();
-
-		Collections.sort(names, new Comparator() {
-			public int compare(Object o1, Object o2) {
-				CSSMMNode node1 = (CSSMMNode) o1;
-				CSSMMNode node2 = (CSSMMNode) o2;
-				if (node1 == null) {
-					return 1;
-				} else if (node2 == null) {
-					return -1;
-				}
-				int diff = 0;
-				if (categorize) {
-					String category1 = node1.getAttribute("category"); //$NON-NLS-1$
-					String category2 = node2.getAttribute("category"); //$NON-NLS-1$
-					if (category1 == null) {
-						if (category2 == null) {
-							diff = 0;
-						} else {
-							return 1;
-						}
-					} else if (category2 == null) {
-						return -1;
-					} else {
-						diff = category1.compareTo(category2);
-					}
-				}
-				if (diff == 0) {
-					String name = node1.getName();
-					if (name == null) {
-						return 1;
-					} else {
-						return name.compareTo(node2.getName());
-					}
-				} else {
-					return diff;
-				}
-			}
-		});
-	}
-
-	/*
-	 * retrieve default category icon name TODO: if node has "icon"(?), use
-	 * it.
-	 */
-	CSSImageType getCategoryImageType(CSSMMNode node) {
-		CSSImageType imageType = null;
-		if (node != null) {
-			String category = node.getAttribute("category"); //$NON-NLS-1$
-			if (category != null) {
-				imageType = CSSImageType.getImageType(category);
-			}
-		}
-		return (imageType == null) ? CSSImageType.CATEGORY_DEFAULT : imageType;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForDeclarationValue.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForDeclarationValue.java
deleted file mode 100644
index f80c0f9..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForDeclarationValue.java
+++ /dev/null
@@ -1,370 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.metamodel.CSSMMDescriptor;
-import org.eclipse.wst.css.core.metamodel.CSSMMFunction;
-import org.eclipse.wst.css.core.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.metamodel.CSSMMNumber;
-import org.eclipse.wst.css.core.metamodel.CSSMMProperty;
-import org.eclipse.wst.css.core.metamodel.CSSMMUnit;
-import org.eclipse.wst.css.core.metamodel.util.CSSFunctionID;
-import org.eclipse.wst.css.core.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.core.preferences.CSSPreferenceHelper;
-import org.eclipse.wst.css.core.util.CSSUtil;
-import org.eclipse.wst.css.core.util.RegionIterator;
-import org.eclipse.wst.css.ui.image.CSSImageType;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.w3c.dom.css.CSSFontFaceRule;
-
-class CSSProposalGeneratorForDeclarationValue extends CSSProposalGenerator {
-
-	private static final String IMPORTANT = "!important"; //$NON-NLS-1$
-	private boolean fUseUpperCase;
-	private boolean fAppendSemiColon;
-
-	/**
-	 * CSSProposalGeneratorForDeclarationValue constructor comment.
-	 * 
-	 * @param context
-	 *            com.ibm.sed.contentassist.old.css.CSSContentAssistContext
-	 */
-	CSSProposalGeneratorForDeclarationValue(CSSContentAssistContext context) {
-		super(context);
-		fUseUpperCase = CSSPreferenceHelper.getInstance().isPropValueUpperCase();
-	}
-
-	/**
-	 *  
-	 */
-	private void addFunction(List candidates, CSSMMFunction prop) {
-		String text = prop.toString();
-		if (!isMatch(text)) {
-			return;
-		}
-
-		int cursorPos = 0;
-		StringBuffer buf = new StringBuffer();
-		if (prop.getName().equals(CSSFunctionID.F_URI)) {
-			StringAndOffset sao = generateURI();
-			buf.append(sao.fString);
-			cursorPos = sao.fOffset;
-		} else {
-			buf.append(prop.toString());
-			cursorPos = buf.length();
-			StringAndOffset sao = generateParenthesis();
-			buf.append(sao.fString);
-			cursorPos += sao.fOffset;
-		}
-
-		text = buf.toString();
-		text = (fUseUpperCase) ? text.toUpperCase() : text.toLowerCase();
-
-		CSSCACandidate item = new CSSCACandidate();
-		item.setReplacementString(text);
-		item.setCursorPosition(cursorPos);
-		item.setDisplayString(text);
-		item.setImageType(CSSImageType.VALUE_FUNCTION);
-		appendSemiColon(item);
-		candidates.add(item);
-	}
-
-	/**
-	 *  
-	 */
-	private void addNumber(List candidates, CSSMMNumber prop) {
-		String fullText = fContext.getTextToReplace();
-		// skip number
-		int unitIndex = -1;
-		for (int i = 0; i < fullText.length(); i++) {
-			if (Character.isDigit(fullText.charAt(i))) {
-				unitIndex = i + 1;
-			} else {
-				break;
-			}
-		}
-
-		String unitSubText = ""; //$NON-NLS-1$
-		String numSubText = ""; //$NON-NLS-1$
-		if (0 <= unitIndex) {
-			numSubText = fullText.substring(0, unitIndex);
-			if (unitIndex < fullText.length()) {
-				unitSubText = fullText.substring(unitIndex);
-			}
-		} else {
-			unitSubText = fullText;
-		}
-
-		Iterator i = prop.getDescendants();
-		while (i.hasNext()) {
-			CSSMMUnit unit = (CSSMMUnit) i.next();
-			String unitString = unit.getUnitString();
-			if ((0 < unitSubText.length() && unitString.indexOf(unitSubText) != 0) || (0 < numSubText.length() && unitString.equals("#"))) { //$NON-NLS-1$
-				continue;
-			}
-
-			String text = numSubText + unitString;
-			text = (fUseUpperCase) ? text.toUpperCase() : text.toLowerCase();
-			CSSCACandidate item = new CSSCACandidate();
-			item.setReplacementString(text);
-			if (0 < numSubText.length() || text.equals("#")) { //$NON-NLS-1$
-				item.setCursorPosition(text.length());
-			} else {
-				item.setCursorPosition(0);
-			}
-			item.setDisplayString(text);
-			item.setImageType(CSSImageType.VALUE_NUMBER);
-			appendSemiColon(item);
-			candidates.add(item);
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private void checkSemiColon() {
-		fAppendSemiColon = false;
-
-		ITextRegion targetRegion = fContext.getTargetRegion();
-		if (targetRegion != null && targetRegion.getType() != CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-			// find trailing ":" or ";"
-			// if ":" before ";" is found, add ";"
-			RegionIterator iterator = fContext.getRegionIterator();
-			IStructuredDocumentRegion container = iterator.getStructuredDocumentRegion();
-			while (iterator.hasNext()) {
-				ITextRegion region = iterator.next();
-				if (iterator.getStructuredDocumentRegion() != container) {
-					break;
-				}
-				if (region.getType() == CSSRegionContexts.CSS_DECLARATION_SEPARATOR) {
-					fAppendSemiColon = true;
-					break;
-				}
-			}
-			if (!fAppendSemiColon) {
-				// second chance:
-				// leading IStructuredDocumentRegion is not ";"
-				IStructuredDocumentRegion nextStructuredDocumentRegion = CSSUtil.findNextSignificantNode(container);
-				if (CSSUtil.getStructuredDocumentRegionType(nextStructuredDocumentRegion) != CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-					fAppendSemiColon = true;
-				}
-			}
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private void appendSemiColon(CSSCACandidate item) {
-		if (fAppendSemiColon) {
-			String replacementString = item.getReplacementString();
-			item.setReplacementString(replacementString + ";"); //$NON-NLS-1$
-			int cursorPosition = item.getCursorPosition();
-			if (replacementString.length() <= cursorPosition) {
-				// cursorpos is tail of string
-				cursorPosition++;
-				item.setCursorPosition(cursorPosition);
-			}
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private void addSemiColon(List candidates) {
-		ICSSNode targetNode = fContext.getTargetNode();
-		if (targetNode instanceof ICSSStyleDeclItem) {
-			ICSSNode firstChild = targetNode.getFirstChild();
-			if (firstChild == null) {
-				return;
-			}
-			if (firstChild instanceof IndexedRegion) {
-				int startOffset = ((IndexedRegion) firstChild).getStartOffset();
-				if (fContext.getCursorPos() <= startOffset) {
-					return;
-				}
-			}
-		}
-
-		boolean bAddCloser = false;
-
-		ITextRegion targetRegion = fContext.getTargetRegion();
-		if (targetRegion != null && targetRegion.getType() != CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-			// find trailing ":" or ";"
-			// if ":" before ";" is found, add ";"
-			RegionIterator iterator = fContext.getRegionIterator();
-			IStructuredDocumentRegion container = iterator.getStructuredDocumentRegion();
-			while (iterator.hasNext()) {
-				ITextRegion region = iterator.next();
-				if (iterator.getStructuredDocumentRegion() != container) {
-					break;
-				}
-				if (region.getType() == CSSRegionContexts.CSS_DECLARATION_SEPARATOR) {
-					bAddCloser = true;
-					break;
-				}
-			}
-			if (!bAddCloser) {
-				// second chance:
-				// leading IStructuredDocumentRegion is not ";"
-				IStructuredDocumentRegion nextStructuredDocumentRegion = CSSUtil.findNextSignificantNode(container);
-				if (CSSUtil.getStructuredDocumentRegionType(nextStructuredDocumentRegion) != CSSRegionContexts.CSS_DECLARATION_DELIMITER) {
-					bAddCloser = true;
-				}
-			}
-		}
-
-		if (bAddCloser) {
-			CSSCACandidate item = new CSSCACandidate();
-			String text = fContext.getTextToReplace() + ";";//$NON-NLS-1$
-			item.setReplacementString(text);
-			item.setCursorPosition(text.length());
-			item.setDisplayString(";");//$NON-NLS-1$
-			item.setImageType(null);
-			candidates.add(item);
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private void addString(List candidates, String text) {
-		if (!isMatch(text)) {
-			return;
-		}
-
-		text = (fUseUpperCase) ? text.toUpperCase() : text.toLowerCase();
-
-		CSSCACandidate item = new CSSCACandidate();
-		item.setReplacementString(text);
-		item.setCursorPosition(text.length());
-		item.setDisplayString(text);
-		item.setImageType(CSSImageType.VALUE_STRING);
-		appendSemiColon(item);
-		candidates.add(item);
-	}
-
-	private void addImportant(List candidates) {
-		ICSSNode targetNode = fContext.getTargetNode();
-		while (targetNode instanceof ICSSPrimitiveValue) {
-			targetNode = targetNode.getParentNode();
-		}
-		if (!(targetNode instanceof ICSSStyleDeclItem)) {
-			return;
-		}
-		// 1. has no priority region
-		// 2. cursor position is after of last child
-		// 3. normal isMatch method
-		String priority = ((ICSSStyleDeclItem) targetNode).getPriority();
-		if (priority == null || priority.length() == 0) {
-			ICSSNode lastChild = targetNode.getLastChild();
-			if (lastChild instanceof IndexedRegion) {
-				int startOffset = ((IndexedRegion) lastChild).getStartOffset();
-				//	int endOffset = ((IndexedRegion)lastChild).getEndOffset();
-				if (startOffset < fContext.getCursorPos() && isMatch(IMPORTANT)) {
-					CSSCACandidate item = new CSSCACandidate();
-					item.setReplacementString(IMPORTANT);
-					item.setCursorPosition(IMPORTANT.length());
-					item.setDisplayString(IMPORTANT);
-					item.setImageType(CSSImageType.VALUE_STRING);
-					appendSemiColon(item);
-					candidates.add(item);
-				}
-			}
-		}
-	}
-
-	/**
-	 * getCandidates method comment.
-	 */
-	protected Iterator getCandidates() {
-		List candidates = new ArrayList();
-
-		checkSemiColon(); // check should add semi-colon or not
-
-		String name = getPropertyName();
-		if (name != null) {
-			CSSMetaModelUtil util = new CSSMetaModelUtil(fContext.getMetaModel());
-			Iterator i = Collections.EMPTY_LIST.iterator();
-			if (isFontFaceRule()) {
-				CSSMMDescriptor desc = util.getDescriptor(name);
-				if (desc != null) {
-					i = desc.getValues();
-				}
-			} else {
-				CSSMMProperty prop = util.getProperty(name);
-				if (prop != null) {
-					i = prop.getValues();
-				}
-			}
-			while (i.hasNext()) {
-				CSSMMNode val = (CSSMMNode) i.next();
-				String valueType = val.getType();
-				if (valueType == CSSMMNode.TYPE_KEYWORD) {
-					addString(candidates, val.toString());
-				} else if (valueType == CSSMMNode.TYPE_NUMBER) {
-					addNumber(candidates, (CSSMMNumber) val);
-				} else if (valueType == CSSMMNode.TYPE_FUNCTION) {
-					addFunction(candidates, (CSSMMFunction) val);
-				}
-			}
-		}
-
-		addImportant(candidates);
-		addSemiColon(candidates);
-
-		return candidates.iterator();
-	}
-
-	/**
-	 * @return java.lang.String
-	 */
-	private String getPropertyName() {
-		ICSSNode targetNode = fContext.getTargetNode();
-		while (targetNode instanceof ICSSPrimitiveValue) {
-			targetNode = targetNode.getParentNode();
-		}
-		if (targetNode instanceof ICSSStyleDeclItem) {
-			return ((ICSSStyleDeclItem) targetNode).getPropertyName();
-		} else {
-			return null;
-		}
-	}
-
-	/**
-	 *  
-	 */
-	private boolean isFontFaceRule() {
-		ICSSNode targetNode = fContext.getTargetNode();
-		while (targetNode instanceof ICSSPrimitiveValue) {
-			targetNode = targetNode.getParentNode();
-		}
-		if (targetNode instanceof ICSSStyleDeclItem) {
-			targetNode = targetNode.getParentNode(); // get Declaration
-			if (targetNode != null) {
-				// inline style has no rule node
-				targetNode = targetNode.getParentNode(); // get rule
-			}
-		}
-		return (targetNode instanceof CSSFontFaceRule);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForHTMLTag.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForHTMLTag.java
deleted file mode 100644
index e707754..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForHTMLTag.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.css.core.document.ICSSModel;
-import org.eclipse.wst.css.core.document.ICSSStyleRule;
-import org.eclipse.wst.css.ui.image.CSSImageType;
-import org.eclipse.wst.html.core.contentmodel.HTMLCMDocumentFactory;
-import org.eclipse.wst.xml.core.contentmodel.CMDocType;
-import org.eclipse.wst.xml.core.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-class CSSProposalGeneratorForHTMLTag extends CSSProposalGenerator {
-
-	/**
-	 * CSSStyleRuleProposalGenerator constructor comment.
-	 * 
-	 * @param context
-	 *            com.ibm.sed.contentassist.old.css.CSSContentAssistContext
-	 */
-	CSSProposalGeneratorForHTMLTag(CSSContentAssistContext context) {
-		super(context);
-
-		if (fHTMLTags == null) {
-			fHTMLTags = setupHTMLTags();
-		}
-	}
-
-	/**
-	 * getCandidates method comment.
-	 */
-	protected Iterator getCandidates() {
-		List candidates = new ArrayList();
-
-		if (checkLeadingColon()) {
-			return candidates.iterator();
-		}
-
-		// XHTML requires lower case
-		boolean bLowerCase = false;
-		if (fContext.getModel().getStyleSheetType() == ICSSModel.EMBEDDED) {
-			Node domNode = fContext.getModel().getOwnerDOMNode();
-			if (domNode != null && !(domNode instanceof Document)) {
-				domNode = domNode.getOwnerDocument();
-				if (domNode instanceof XMLDocument) {
-					DocumentTypeAdapter adapter = (DocumentTypeAdapter) ((XMLDocument) domNode).getAdapterFor(DocumentTypeAdapter.class);
-					if (adapter != null)
-						bLowerCase = (adapter.getTagNameCase() == DocumentTypeAdapter.LOWER_CASE);
-				}
-			}
-		}
-
-
-		int length = fHTMLTags.length;
-		for (int i = 0; i < length; i++) {
-			String tagText = fHTMLTags[i];
-			if (bLowerCase) {
-				tagText = tagText.toLowerCase();
-			}
-			if (!isMatch(tagText)) {
-				continue;
-			}
-
-			int cursorPos = 0;
-			StringBuffer buf = new StringBuffer();
-			buf.append(tagText);
-			cursorPos += tagText.length();
-			boolean inRule = (fContext.getTargetNode() instanceof ICSSStyleRule);
-			if (!inRule || fContext.getTextToReplace().length() == 0) {
-				buf.append(" ");//$NON-NLS-1$
-				cursorPos += 1;
-			}
-			if (!inRule) {
-				StringAndOffset sao = generateBraces();
-				buf.append(sao.fString);
-				cursorPos += sao.fOffset;
-			}
-
-			CSSCACandidate item = new CSSCACandidate();
-			item.setReplacementString(buf.toString());
-			item.setCursorPosition(cursorPos);
-			item.setDisplayString(tagText);
-			item.setImageType(CSSImageType.SELECTOR_TAG);
-			candidates.add(item);
-		}
-
-		return candidates.iterator();
-	}
-
-	/**
-	 *  
-	 */
-	private static String[] setupHTMLTags() {
-		CMDocument cmdoc = HTMLCMDocumentFactory.getCMDocument(CMDocType.HTML_DOC_TYPE);
-		CMNamedNodeMap elements = cmdoc.getElements();
-		Vector names = new Vector();
-		int nElements = elements.getLength();
-		for (int i = 0; i < nElements; i++) {
-			CMElementDeclaration edec = (CMElementDeclaration) elements.item(i);
-			if (isAttrDefined(edec, HTML40Namespace.ATTR_NAME_STYLE)) {
-				names.add(edec.getElementName());
-			}
-		}
-		Collections.sort(names);
-		String[] tags = new String[names.size()];
-		Iterator iNames = names.iterator();
-		for (int i = 0; iNames.hasNext(); i++) {
-			tags[i] = (String) iNames.next();
-		}
-		return tags;
-	}
-
-	/**
-	 *  
-	 */
-	private static boolean isAttrDefined(CMElementDeclaration edec, String attrName) {
-		if (edec == null) {
-			return false;
-		}
-		CMNamedNodeMap attrs = edec.getAttributes();
-		if (attrs == null) {
-			return false;
-		}
-		for (int i = 0; i < attrs.getLength(); i++) {
-			CMAttributeDeclaration attr = (CMAttributeDeclaration) attrs.item(i);
-			if (attr == null) {
-				continue;
-			}
-			if (attr.getAttrName().equalsIgnoreCase(attrName)) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	private static String[] fHTMLTags = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForPseudoSelector.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForPseudoSelector.java
deleted file mode 100644
index a9c92a5..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/CSSProposalGeneratorForPseudoSelector.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSPageRule;
-import org.eclipse.wst.css.core.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.internal.parser.CSSRegionUtil;
-import org.eclipse.wst.css.core.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.metamodel.CSSMMSelector;
-import org.eclipse.wst.css.core.metamodel.util.CSSMMTypeCollector;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.core.preferences.CSSPreferenceHelper;
-import org.eclipse.wst.css.ui.image.CSSImageType;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-/**
- *  
- */
-class CSSProposalGeneratorForPseudoSelector extends CSSProposalGenerator {
-
-	/**
-	 * CSSProposalGeneratorForPseudoSelector constructor comment.
-	 * 
-	 * @param context
-	 *            com.ibm.sed.contentassist.old.css.CSSContentAssistContext
-	 */
-	CSSProposalGeneratorForPseudoSelector(CSSContentAssistContext context) {
-		super(context);
-	}
-
-	/**
-	 * getCandidates method comment.
-	 */
-	protected Iterator getCandidates() {
-		List candidates = new ArrayList();
-
-		boolean hasLeadingColon = checkLeadingColon();
-		String textToReplace = fContext.getTextToReplace();
-		if (!hasLeadingColon && 0 < textToReplace.length() && !textToReplace.equals(fContext.getTextToCompare())) {
-			// cursor placed midpoint of the region
-			return candidates.iterator();
-		}
-		ITextRegion region = fContext.getTargetRegion();
-		if (region != null) {
-			String type = region.getType();
-			if (type != CSSRegionContexts.CSS_S && !CSSRegionUtil.isSelectorBegginingType(type)) {
-				return candidates.iterator();
-			}
-		}
-
-		boolean useUpperCase = CSSPreferenceHelper.getInstance().isIdentUpperCase();
-
-		List tags = getSelectorTags();
-		Collections.sort(tags);
-		Iterator i = tags.iterator();
-		while (i.hasNext()) {
-			String text = (String) i.next();
-			if (hasLeadingColon && !isMatch(text)) {
-				continue;
-			}
-			text = (useUpperCase) ? text.toUpperCase() : text.toLowerCase();
-
-			int cursorPos = 0;
-			StringBuffer buf = new StringBuffer();
-			if (hasLeadingColon) {
-				buf.append(text.substring(1));
-			} else {
-				buf.append(textToReplace);
-				buf.append(text);
-			}
-			cursorPos += buf.length();
-
-			if (0 < buf.length()) {
-				boolean inRule = (fContext.getTargetNode() instanceof ICSSStyleRule || fContext.getTargetNode() instanceof ICSSPageRule);
-				if (!inRule || (textToReplace.length() == 0 && !hasLeadingColon)) {
-					buf.append(" ");//$NON-NLS-1$
-					cursorPos += 1;
-				}
-				if (!inRule) {
-					StringAndOffset sao = generateBraces();
-					buf.append(sao.fString);
-					cursorPos += sao.fOffset;
-				}
-				CSSCACandidate item = new CSSCACandidate();
-				item.setReplacementString(buf.toString());
-				item.setCursorPosition(cursorPos);
-				item.setDisplayString(text);
-				item.setImageType(CSSImageType.SELECTOR_PSEUDO);
-				candidates.add(item);
-			}
-		}
-
-		return candidates.iterator();
-	}
-
-	/**
-	 *  
-	 */
-	List getSelectorTags() {
-		List tagList = new ArrayList();
-		ICSSNode targetNode = fContext.getTargetNode();
-		String rootType = (targetNode instanceof ICSSPageRule) ? CSSMMNode.TYPE_PAGE_RULE : CSSMMNode.TYPE_STYLE_RULE;
-
-		CSSMMTypeCollector collector = new CSSMMTypeCollector();
-		collector.collectNestedType(false);
-		collector.apply(fContext.getMetaModel(), rootType);
-		Iterator i;
-		i = collector.getNodes();
-		if (!i.hasNext()) {
-			return tagList;
-		}
-		CSSMMNode node = (CSSMMNode) i.next();
-		i = node.getChildNodes();
-		while (i.hasNext()) {
-			CSSMMNode child = (CSSMMNode) i.next();
-			if (child.getType() == CSSMMNode.TYPE_SELECTOR) {
-				String selType = ((CSSMMSelector) child).getSelectorType();
-				if (selType == CSSMMSelector.TYPE_PSEUDO_CLASS || selType == CSSMMSelector.TYPE_PSEUDO_ELEMENT) {
-					tagList.add(((CSSMMSelector) child).getSelectorString());
-				}
-			}
-		}
-		return tagList;
-	}
-
-	/**
-	 *  
-	 */
-	protected boolean isMatch(String text) {
-		if (!super.isMatch(text)) {
-			ITextRegion region = fContext.getTargetRegion();
-			if (region != null && region.getType() == CSSRegionContexts.CSS_SELECTOR_PSEUDO) {
-				return true;
-			} else {
-				return false;
-			}
-		} else {
-			return true;
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/HTML40Namespace.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/HTML40Namespace.java
deleted file mode 100644
index 2d4ce32..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentassist/HTML40Namespace.java
+++ /dev/null
@@ -1,889 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.contentassist;
-
-
-
-/**
- * Provide all names defined in the HTML 4.0? specification.
- */
-public interface HTML40Namespace {
-
-	// Element names
-	public static interface ElementName {
-		public static final String A = "A"; //$NON-NLS-1$
-		public static final String ABBR = "ABBR"; //$NON-NLS-1$
-		public static final String ACRONYM = "ACRONYM"; //$NON-NLS-1$
-		public static final String ADDRESS = "ADDRESS"; //$NON-NLS-1$
-		public static final String APPLET = "APPLET"; //$NON-NLS-1$
-		public static final String AREA = "AREA"; //$NON-NLS-1$
-		public static final String B = "B"; //$NON-NLS-1$
-		public static final String BASE = "BASE"; //$NON-NLS-1$
-		public static final String BASEFONT = "BASEFONT"; //$NON-NLS-1$
-		public static final String BDO = "BDO"; //$NON-NLS-1$
-		public static final String BGSOUND = "BGSOUND"; // D205513
-														// //$NON-NLS-1$
-		public static final String BIG = "BIG"; //$NON-NLS-1$
-		public static final String BLINK = "BLINK"; //$NON-NLS-1$
-		public static final String BLOCKQUOTE = "BLOCKQUOTE"; //$NON-NLS-1$
-		public static final String BODY = "BODY"; //$NON-NLS-1$
-		public static final String BR = "BR"; //$NON-NLS-1$
-		public static final String BUTTON = "BUTTON"; //$NON-NLS-1$
-		public static final String CAPTION = "CAPTION"; //$NON-NLS-1$
-		public static final String CENTER = "CENTER"; //$NON-NLS-1$
-		public static final String CITE = "CITE"; //$NON-NLS-1$
-		public static final String CODE = "CODE"; //$NON-NLS-1$
-		public static final String COL = "COL"; //$NON-NLS-1$
-		public static final String COLGROUP = "COLGROUP"; //$NON-NLS-1$
-		public static final String DD = "DD"; //$NON-NLS-1$
-		public static final String DEL = "DEL"; //$NON-NLS-1$
-		public static final String DFN = "DFN"; //$NON-NLS-1$
-		public static final String DIR = "DIR"; //$NON-NLS-1$
-		public static final String DIV = "DIV"; //$NON-NLS-1$
-		public static final String DL = "DL"; //$NON-NLS-1$
-		public static final String DT = "DT"; //$NON-NLS-1$
-		public static final String EM = "EM"; //$NON-NLS-1$
-		public static final String EMBED = "EMBED"; //$NON-NLS-1$
-		public static final String FIELDSET = "FIELDSET"; //$NON-NLS-1$
-		public static final String FONT = "FONT"; //$NON-NLS-1$
-		public static final String FORM = "FORM"; //$NON-NLS-1$
-		public static final String FRAME = "FRAME"; //$NON-NLS-1$
-		public static final String FRAMESET = "FRAMESET"; //$NON-NLS-1$
-		public static final String H1 = "H1"; //$NON-NLS-1$
-		public static final String H2 = "H2"; //$NON-NLS-1$
-		public static final String H3 = "H3"; //$NON-NLS-1$
-		public static final String H4 = "H4"; //$NON-NLS-1$
-		public static final String H5 = "H5"; //$NON-NLS-1$
-		public static final String H6 = "H6"; //$NON-NLS-1$
-		public static final String HEAD = "HEAD"; //$NON-NLS-1$
-		public static final String HR = "HR"; //$NON-NLS-1$
-		public static final String HTML = "HTML"; //$NON-NLS-1$
-		public static final String I = "I"; //$NON-NLS-1$
-		public static final String IFRAME = "IFRAME"; //$NON-NLS-1$
-		public static final String IMG = "IMG"; //$NON-NLS-1$
-		public static final String INPUT = "INPUT"; //$NON-NLS-1$
-		public static final String INS = "INS"; //$NON-NLS-1$
-		public static final String ISINDEX = "ISINDEX"; //$NON-NLS-1$
-		public static final String KBD = "KBD"; //$NON-NLS-1$
-		public static final String LABEL = "LABEL"; //$NON-NLS-1$
-		public static final String LEGEND = "LEGEND"; //$NON-NLS-1$
-		public static final String LI = "LI"; //$NON-NLS-1$
-		public static final String LINK = "LINK"; //$NON-NLS-1$
-		public static final String MAP = "MAP"; //$NON-NLS-1$
-		public static final String MENU = "MENU"; //$NON-NLS-1$
-		public static final String META = "META"; //$NON-NLS-1$
-		public static final String NOBR = "NOBR"; // D205513 //$NON-NLS-1$
-		public static final String NOEMBED = "NOEMBED"; //$NON-NLS-1$
-		public static final String NOFRAMES = "NOFRAMES"; //$NON-NLS-1$
-		public static final String NOSCRIPT = "NOSCRIPT"; //$NON-NLS-1$
-		public static final String OBJECT = "OBJECT"; //$NON-NLS-1$
-		public static final String OL = "OL"; //$NON-NLS-1$
-		public static final String OPTGROUP = "OPTGROUP"; //$NON-NLS-1$
-		public static final String OPTION = "OPTION"; //$NON-NLS-1$
-		public static final String P = "P"; //$NON-NLS-1$
-		public static final String PARAM = "PARAM"; //$NON-NLS-1$
-		public static final String PRE = "PRE"; //$NON-NLS-1$
-		public static final String Q = "Q"; //$NON-NLS-1$
-		public static final String S = "S"; //$NON-NLS-1$
-		public static final String SAMP = "SAMP"; //$NON-NLS-1$
-		public static final String SCRIPT = "SCRIPT"; //$NON-NLS-1$
-		public static final String SELECT = "SELECT"; //$NON-NLS-1$
-		public static final String SMALL = "SMALL"; //$NON-NLS-1$
-		public static final String SPAN = "SPAN"; //$NON-NLS-1$
-		public static final String STRIKE = "STRIKE"; //$NON-NLS-1$
-		public static final String STRONG = "STRONG"; //$NON-NLS-1$
-		public static final String STYLE = "STYLE"; //$NON-NLS-1$
-		public static final String SUB = "SUB"; //$NON-NLS-1$
-		public static final String SUP = "SUP"; //$NON-NLS-1$
-		public static final String TABLE = "TABLE"; //$NON-NLS-1$
-		public static final String TBODY = "TBODY"; //$NON-NLS-1$
-		public static final String TD = "TD"; //$NON-NLS-1$
-		public static final String TEXTAREA = "TEXTAREA"; //$NON-NLS-1$
-		public static final String TFOOT = "TFOOT"; //$NON-NLS-1$
-		public static final String TH = "TH"; //$NON-NLS-1$
-		public static final String THEAD = "THEAD"; //$NON-NLS-1$
-		public static final String TITLE = "TITLE"; //$NON-NLS-1$
-		public static final String TR = "TR"; //$NON-NLS-1$
-		public static final String TT = "TT"; //$NON-NLS-1$
-		public static final String U = "U"; //$NON-NLS-1$
-		public static final String UL = "UL"; //$NON-NLS-1$
-		public static final String VAR = "VAR"; //$NON-NLS-1$
-		public static final String WBR = "WBR"; // D205513 //$NON-NLS-1$
-		public static final String MARQUEE = "MARQUEE"; //$NON-NLS-1$
-		public static final String SSI_CONFIG = "SSI:CONFIG"; // D210393
-															  // //$NON-NLS-1$
-		public static final String SSI_ECHO = "SSI:ECHO"; //$NON-NLS-1$
-		public static final String SSI_EXEC = "SSI:EXEC"; //$NON-NLS-1$
-		public static final String SSI_FSIZE = "SSI:FSIZE"; //$NON-NLS-1$
-		public static final String SSI_FLASTMOD = "SSI:FLASTMOD"; //$NON-NLS-1$
-		public static final String SSI_INCLUDE = "SSI:INCLUDE"; //$NON-NLS-1$
-		public static final String SSI_PRINTENV = "SSI:PRINTENV"; //$NON-NLS-1$
-		public static final String SSI_SET = "SSI:SET"; //$NON-NLS-1$
-		public static final String WML_WML = "wml"; //$NON-NLS-1$
-		public static final String WML_CARD = "card"; //$NON-NLS-1$
-		public static final String WML_TEMPLATE = "template"; //$NON-NLS-1$
-		public static final String WML_ACCESS = "access"; //$NON-NLS-1$
-		public static final String WML_DO = "do"; //$NON-NLS-1$
-		public static final String WML_ONEVENT = "onevent"; //$NON-NLS-1$
-		public static final String WML_TIMER = "timer"; //$NON-NLS-1$
-		public static final String WML_ANCHOR = "anchor"; //$NON-NLS-1$
-		public static final String WML_PREV = "prev"; //$NON-NLS-1$
-		public static final String WML_REFRESH = "refresh"; //$NON-NLS-1$
-		public static final String WML_GO = "go"; //$NON-NLS-1$
-		public static final String WML_NOOP = "noop"; //$NON-NLS-1$
-		public static final String WML_SETVAR = "setvar"; //$NON-NLS-1$
-		public static final String WML_POSTFIELD = "postfield"; //$NON-NLS-1$
-	}
-
-	// Character Entities
-	public static interface EntityName {
-		public static final String AACUTE_U = "Aacute"; //$NON-NLS-1$
-		public static final String AACUTE_L = "aacute"; //$NON-NLS-1$
-		public static final String ACIRC_U = "Acirc"; //$NON-NLS-1$
-		public static final String ACIRC_L = "acirc"; //$NON-NLS-1$
-		public static final String ACUTE = "acute"; //$NON-NLS-1$
-		public static final String AELIG_U = "AElig"; //$NON-NLS-1$
-		public static final String AELIG_L = "aelig"; //$NON-NLS-1$
-		public static final String AGRAVE_U = "Agrave"; //$NON-NLS-1$
-		public static final String AGRAVE_L = "agrave"; //$NON-NLS-1$
-		public static final String ALEFSYM = "alefsym"; //$NON-NLS-1$
-		public static final String ALPHA_U = "Alpha"; //$NON-NLS-1$
-		public static final String ALPHA_L = "alpha"; //$NON-NLS-1$
-		public static final String AMP = "amp"; //$NON-NLS-1$
-		public static final String AND = "and"; //$NON-NLS-1$
-		public static final String ANG = "ang"; //$NON-NLS-1$
-		public static final String ARING_U = "Aring"; //$NON-NLS-1$
-		public static final String ARING_L = "aring"; //$NON-NLS-1$
-		public static final String ASYMP = "asymp"; //$NON-NLS-1$
-		public static final String ATILDE_U = "Atilde"; //$NON-NLS-1$
-		public static final String ATILDE_L = "atilde"; //$NON-NLS-1$
-		public static final String AUML_U = "Auml"; //$NON-NLS-1$
-		public static final String AUML_L = "auml"; //$NON-NLS-1$
-		public static final String BDQUO = "bdquo"; //$NON-NLS-1$
-		public static final String BETA_U = "Beta"; //$NON-NLS-1$
-		public static final String BETA_L = "beta"; //$NON-NLS-1$
-		public static final String BRVBAR = "brvbar"; //$NON-NLS-1$
-		public static final String BULL = "bull"; //$NON-NLS-1$
-		public static final String CAP = "cap"; //$NON-NLS-1$
-		public static final String CCEDIL_U = "Ccedil"; //$NON-NLS-1$
-		public static final String CCEDIL_L = "ccedil"; //$NON-NLS-1$
-		public static final String CEDIL = "cedil"; //$NON-NLS-1$
-		public static final String CENT = "cent"; //$NON-NLS-1$
-		public static final String CHI_U = "Chi"; //$NON-NLS-1$
-		public static final String CHI_L = "chi"; //$NON-NLS-1$
-		public static final String CIRC = "circ"; //$NON-NLS-1$
-		public static final String CLUBS = "clubs"; //$NON-NLS-1$
-		public static final String CONG = "cong"; //$NON-NLS-1$
-		public static final String COPY = "copy"; //$NON-NLS-1$
-		public static final String CRARR = "crarr"; //$NON-NLS-1$
-		public static final String CUP = "cup"; //$NON-NLS-1$
-		public static final String CURREN = "curren"; //$NON-NLS-1$
-		public static final String DAGGER_U = "Dagger"; //$NON-NLS-1$
-		public static final String DAGGER_L = "dagger"; //$NON-NLS-1$
-		public static final String DARR_U = "dArr"; //$NON-NLS-1$
-		public static final String DARR_L = "darr"; //$NON-NLS-1$
-		public static final String DEG = "deg"; //$NON-NLS-1$
-		public static final String DELTA_U = "Delta"; //$NON-NLS-1$
-		public static final String DELTA_L = "delta"; //$NON-NLS-1$
-		public static final String DIAMS = "diams"; //$NON-NLS-1$
-		public static final String DIVIDE = "divide"; //$NON-NLS-1$
-		public static final String EACUTE_U = "Eacute"; //$NON-NLS-1$
-		public static final String EACUTE_L = "eacute"; //$NON-NLS-1$
-		public static final String ECIRC_U = "Ecirc"; //$NON-NLS-1$
-		public static final String ECIRC_L = "ecirc"; //$NON-NLS-1$
-		public static final String EGRAVE_U = "Egrave"; //$NON-NLS-1$
-		public static final String EGRAVE_L = "egrave"; //$NON-NLS-1$
-		public static final String EMPTY = "empty"; //$NON-NLS-1$
-		public static final String EMSP = "emsp"; //$NON-NLS-1$
-		public static final String ENSP = "ensp"; //$NON-NLS-1$
-		public static final String EPSILON_U = "Epsilon"; //$NON-NLS-1$
-		public static final String EPSILON_L = "epsilon"; //$NON-NLS-1$
-		public static final String EQUIV = "equiv"; //$NON-NLS-1$
-		public static final String ETA_U = "Eta"; //$NON-NLS-1$
-		public static final String ETA_L = "eta"; //$NON-NLS-1$
-		public static final String ETH_U = "ETH"; //$NON-NLS-1$
-		public static final String ETH_L = "eth"; //$NON-NLS-1$
-		public static final String EUML_U = "Euml"; //$NON-NLS-1$
-		public static final String EUML_L = "euml"; //$NON-NLS-1$
-		public static final String EURO = "euro"; //$NON-NLS-1$
-		public static final String EXIST = "exist"; //$NON-NLS-1$
-		public static final String FNOF = "fnof"; //$NON-NLS-1$
-		public static final String FORALL = "forall"; //$NON-NLS-1$
-		public static final String FRAC12 = "frac12"; //$NON-NLS-1$
-		public static final String FRAC14 = "frac14"; //$NON-NLS-1$
-		public static final String FRAC34 = "frac34"; //$NON-NLS-1$
-		public static final String FRASL = "frasl"; //$NON-NLS-1$
-		public static final String GAMMA_U = "Gamma"; //$NON-NLS-1$
-		public static final String GAMMA_L = "gamma"; //$NON-NLS-1$
-		public static final String GE = "ge"; //$NON-NLS-1$
-		public static final String GT = "gt"; //$NON-NLS-1$
-		public static final String HARR_U = "hArr"; //$NON-NLS-1$
-		public static final String HARR_L = "harr"; //$NON-NLS-1$
-		public static final String HEARTS = "hearts"; //$NON-NLS-1$
-		public static final String HELLIP = "hellip"; //$NON-NLS-1$
-		public static final String IACUTE_U = "Iacute"; //$NON-NLS-1$
-		public static final String IACUTE_L = "iacute"; //$NON-NLS-1$
-		public static final String ICIRC_U = "Icirc"; //$NON-NLS-1$
-		public static final String ICIRC_L = "icirc"; //$NON-NLS-1$
-		public static final String IEXCL = "iexcl"; //$NON-NLS-1$
-		public static final String IGRAVE_U = "Igrave"; //$NON-NLS-1$
-		public static final String IGRAVE_L = "igrave"; //$NON-NLS-1$
-		public static final String IMAGE = "image"; //$NON-NLS-1$
-		public static final String INFIN = "infin"; //$NON-NLS-1$
-		public static final String INT = "int"; //$NON-NLS-1$
-		public static final String IOTA_U = "Iota"; //$NON-NLS-1$
-		public static final String IOTA_L = "iota"; //$NON-NLS-1$
-		public static final String IQUEST = "iquest"; //$NON-NLS-1$
-		public static final String ISIN = "isin"; //$NON-NLS-1$
-		public static final String IUML_U = "Iuml"; //$NON-NLS-1$
-		public static final String IUML_L = "iuml"; //$NON-NLS-1$
-		public static final String KAPPA_U = "Kappa"; //$NON-NLS-1$
-		public static final String KAPPA_L = "kappa"; //$NON-NLS-1$
-		public static final String LAMBDA_U = "Lambda"; //$NON-NLS-1$
-		public static final String LAMBDA_L = "lambda"; //$NON-NLS-1$
-		public static final String LANG = "lang"; //$NON-NLS-1$
-		public static final String LAQUO = "laquo"; //$NON-NLS-1$
-		public static final String LARR_U = "lArr"; //$NON-NLS-1$
-		public static final String LARR_L = "larr"; //$NON-NLS-1$
-		public static final String LCEIL = "lceil"; //$NON-NLS-1$
-		public static final String LDQUO = "ldquo"; //$NON-NLS-1$
-		public static final String LE = "le"; //$NON-NLS-1$
-		public static final String LFLOOR = "lfloor"; //$NON-NLS-1$
-		public static final String LOWAST = "lowast"; //$NON-NLS-1$
-		public static final String LOZ = "loz"; //$NON-NLS-1$
-		public static final String LRM = "lrm"; //$NON-NLS-1$
-		public static final String LSAQUO = "lsaquo"; //$NON-NLS-1$
-		public static final String LSQUO = "lsquo"; //$NON-NLS-1$
-		public static final String LT = "lt"; //$NON-NLS-1$
-		public static final String MACR = "macr"; //$NON-NLS-1$
-		public static final String MDASH = "mdash"; //$NON-NLS-1$
-		public static final String MICRO = "micro"; //$NON-NLS-1$
-		public static final String MIDDOT = "middot"; //$NON-NLS-1$
-		public static final String MINUS = "minus"; //$NON-NLS-1$
-		public static final String MU_U = "Mu"; //$NON-NLS-1$
-		public static final String MU_L = "mu"; //$NON-NLS-1$
-		public static final String NABLA = "nabla"; //$NON-NLS-1$
-		public static final String NBSP = "nbsp"; //$NON-NLS-1$
-		public static final String NDASH = "ndash"; //$NON-NLS-1$
-		public static final String NE = "ne"; //$NON-NLS-1$
-		public static final String NI = "ni"; //$NON-NLS-1$
-		public static final String NOT = "not"; //$NON-NLS-1$
-		public static final String NOTIN = "notin"; //$NON-NLS-1$
-		public static final String NSUB = "nsub"; //$NON-NLS-1$
-		public static final String NTILDE_U = "Ntilde"; //$NON-NLS-1$
-		public static final String NTILDE_L = "ntilde"; //$NON-NLS-1$
-		public static final String NU_U = "Nu"; //$NON-NLS-1$
-		public static final String NU_L = "nu"; //$NON-NLS-1$
-		public static final String OACUTE_U = "Oacute"; //$NON-NLS-1$
-		public static final String OACUTE_L = "oacute"; //$NON-NLS-1$
-		public static final String OCIRC_U = "Ocirc"; //$NON-NLS-1$
-		public static final String OCIRC_L = "ocirc"; //$NON-NLS-1$
-		public static final String OELIG_U = "OElig"; //$NON-NLS-1$
-		public static final String OELIG_L = "oelig"; //$NON-NLS-1$
-		public static final String OGRAVE_U = "Ograve"; //$NON-NLS-1$
-		public static final String OGRAVE_L = "ograve"; //$NON-NLS-1$
-		public static final String OLINE = "oline"; //$NON-NLS-1$
-		public static final String OMEGA_U = "Omega"; //$NON-NLS-1$
-		public static final String OMEGA_L = "omega"; //$NON-NLS-1$
-		public static final String OMICRON_U = "Omicron"; //$NON-NLS-1$
-		public static final String OMICRON_L = "omicron"; //$NON-NLS-1$
-		public static final String OPLUS = "oplus"; //$NON-NLS-1$
-		public static final String OR = "or"; //$NON-NLS-1$
-		public static final String ORDF = "ordf"; //$NON-NLS-1$
-		public static final String ORDM = "ordm"; //$NON-NLS-1$
-		public static final String OSLASH_U = "Oslash"; //$NON-NLS-1$
-		public static final String OSLASH_L = "oslash"; //$NON-NLS-1$
-		public static final String OTILDE_U = "Otilde"; //$NON-NLS-1$
-		public static final String OTILDE_L = "otilde"; //$NON-NLS-1$
-		public static final String OTIMES = "otimes"; //$NON-NLS-1$
-		public static final String OUML_U = "Ouml"; //$NON-NLS-1$
-		public static final String OUML_L = "ouml"; //$NON-NLS-1$
-		public static final String PARA = "para"; //$NON-NLS-1$
-		public static final String PART = "part"; //$NON-NLS-1$
-		public static final String PERMIL = "permil"; //$NON-NLS-1$
-		public static final String PERP = "perp"; //$NON-NLS-1$
-		public static final String PHI_U = "Phi"; //$NON-NLS-1$
-		public static final String PHI_L = "phi"; //$NON-NLS-1$
-		public static final String PI_U = "Pi"; //$NON-NLS-1$
-		public static final String PI_L = "pi"; //$NON-NLS-1$
-		public static final String PIV = "piv"; //$NON-NLS-1$
-		public static final String PLUSMN = "plusmn"; //$NON-NLS-1$
-		public static final String POUND = "pound"; //$NON-NLS-1$
-		public static final String PRIME_U = "Prime"; //$NON-NLS-1$
-		public static final String PRIME_L = "prime"; //$NON-NLS-1$
-		public static final String PROD = "prod"; //$NON-NLS-1$
-		public static final String PROP = "prop"; //$NON-NLS-1$
-		public static final String PSI_U = "Psi"; //$NON-NLS-1$
-		public static final String PSI_L = "psi"; //$NON-NLS-1$
-		public static final String QUOT = "quot"; //$NON-NLS-1$
-		public static final String RADIC = "radic"; //$NON-NLS-1$
-		public static final String RANG = "rang"; //$NON-NLS-1$
-		public static final String RAQUO = "raquo"; //$NON-NLS-1$
-		public static final String RARR_U = "rArr"; //$NON-NLS-1$
-		public static final String RARR_L = "rarr"; //$NON-NLS-1$
-		public static final String RCEIL = "rceil"; //$NON-NLS-1$
-		public static final String RDQUO = "rdquo"; //$NON-NLS-1$
-		public static final String REAL = "real"; //$NON-NLS-1$
-		public static final String REG = "reg"; //$NON-NLS-1$
-		public static final String RFLOOR = "rfloor"; //$NON-NLS-1$
-		public static final String RHO_U = "Rho"; //$NON-NLS-1$
-		public static final String RHO_L = "rho"; //$NON-NLS-1$
-		public static final String RLM = "rlm"; //$NON-NLS-1$
-		public static final String RSAQUO = "rsaquo"; //$NON-NLS-1$
-		public static final String RSQUO = "rsquo"; //$NON-NLS-1$
-		public static final String SBQUO = "sbquo"; //$NON-NLS-1$
-		public static final String SCARON_U = "Scaron"; //$NON-NLS-1$
-		public static final String SCARON_L = "scaron"; //$NON-NLS-1$
-		public static final String SDOT = "sdot"; //$NON-NLS-1$
-		public static final String SECT = "sect"; //$NON-NLS-1$
-		public static final String SHY = "shy"; //$NON-NLS-1$
-		public static final String SIGMA_U = "Sigma"; //$NON-NLS-1$
-		public static final String SIGMA_L = "sigma"; //$NON-NLS-1$
-		public static final String SIGMAF = "sigmaf"; //$NON-NLS-1$
-		public static final String SIM = "sim"; //$NON-NLS-1$
-		public static final String SPADES = "spades"; //$NON-NLS-1$
-		public static final String SUB = "sub"; //$NON-NLS-1$
-		public static final String SUBE = "sube"; //$NON-NLS-1$
-		public static final String SUM = "sum"; //$NON-NLS-1$
-		public static final String SUP = "sup"; //$NON-NLS-1$
-		public static final String SUP1 = "sup1"; //$NON-NLS-1$
-		public static final String SUP2 = "sup2"; //$NON-NLS-1$
-		public static final String SUP3 = "sup3"; //$NON-NLS-1$
-		public static final String SUPE = "supe"; //$NON-NLS-1$
-		public static final String SZLIG = "szlig"; //$NON-NLS-1$
-		public static final String TAU_U = "Tau"; //$NON-NLS-1$
-		public static final String TAU_L = "tau"; //$NON-NLS-1$
-		public static final String THERE4 = "there4"; //$NON-NLS-1$
-		public static final String THETA_U = "Theta"; //$NON-NLS-1$
-		public static final String THETA_L = "theta"; //$NON-NLS-1$
-		public static final String THETASYM = "thetasym"; //$NON-NLS-1$
-		public static final String THINSP = "thinsp"; //$NON-NLS-1$
-		public static final String THORN_U = "THORN"; //$NON-NLS-1$
-		public static final String THORN_L = "thorn"; //$NON-NLS-1$
-		public static final String TILDE = "tilde"; //$NON-NLS-1$
-		public static final String TIMES = "times"; //$NON-NLS-1$
-		public static final String TRADE = "trade"; //$NON-NLS-1$
-		public static final String UACUTE_U = "Uacute"; //$NON-NLS-1$
-		public static final String UACUTE_L = "uacute"; //$NON-NLS-1$
-		public static final String UARR_U = "uArr"; //$NON-NLS-1$
-		public static final String UARR_L = "uarr"; //$NON-NLS-1$
-		public static final String UCIRC_U = "Ucirc"; //$NON-NLS-1$
-		public static final String UCIRC_L = "ucirc"; //$NON-NLS-1$
-		public static final String UGRAVE_U = "Ugrave"; //$NON-NLS-1$
-		public static final String UGRAVE_L = "ugrave"; //$NON-NLS-1$
-		public static final String UML = "uml"; //$NON-NLS-1$
-		public static final String UPSIH = "upsih"; //$NON-NLS-1$
-		public static final String UPSILON_U = "Upsilon"; //$NON-NLS-1$
-		public static final String UPSILON_L = "upsilon"; //$NON-NLS-1$
-		public static final String UUML_U = "Uuml"; //$NON-NLS-1$
-		public static final String UUML_L = "uuml"; //$NON-NLS-1$
-		public static final String WEIERP = "weierp"; //$NON-NLS-1$
-		public static final String XI_U = "Xi"; //$NON-NLS-1$
-		public static final String XI_L = "xi"; //$NON-NLS-1$
-		public static final String YACUTE_U = "Yacute"; //$NON-NLS-1$
-		public static final String YACUTE_L = "yacute"; //$NON-NLS-1$
-		public static final String YEN = "yen"; //$NON-NLS-1$
-		public static final String YUML_U = "Yuml"; //$NON-NLS-1$
-		public static final String YUML_L = "yuml"; //$NON-NLS-1$
-		public static final String ZETA_U = "Zeta"; //$NON-NLS-1$
-		public static final String ZETA_L = "zeta"; //$NON-NLS-1$
-		public static final String ZWJ = "zwj"; //$NON-NLS-1$
-		public static final String ZWNJ = "zwnj"; //$NON-NLS-1$
-	}
-
-	public static final String HTML40_URI = "http://www.w3.org/TR/REC-html40/frameset.dtd"; //$NON-NLS-1$
-	public static final String HTML40_TAG_PREFIX = ""; //$NON-NLS-1$
-	// global attribute names
-	public static final String ATTR_NAME_ID = "id"; // %coreattrs;
-													// //$NON-NLS-1$
-	public static final String ATTR_NAME_CLASS = "class"; // %coreattrs;
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_STYLE = "style"; // %coreattrs;
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_TITLE = "title"; // %coreattrs;
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_LANG = "lang"; // %i18n;
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_DIR = "dir"; // %i18n; //$NON-NLS-1$
-	public static final String ATTR_NAME_ONCLICK = "onclick"; // %events;
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONDBLCLICK = "ondblclick"; // %events;
-																	// //$NON-NLS-1$
-	public static final String ATTR_NAME_ONMOUSEDOWN = "onmousedown"; // %events;
-																	  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONMOUSEUP = "onmouseup"; // %events;
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONMOUSEOVER = "onmouseover"; // %events;
-																	  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONMOUSEMOVE = "onmousemove"; // %events;
-																	  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONMOUSEOUT = "onmouseout"; // %events;
-																	// //$NON-NLS-1$
-	public static final String ATTR_NAME_ONKEYPRESS = "onkeypress"; // %events;
-																	// //$NON-NLS-1$
-	public static final String ATTR_NAME_ONKEYDOWN = "onkeydown"; // %events;
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONKEYUP = "onkeyup"; // %events;
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONHELP = "onhelp"; // %events;
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_BGCOLOR = "bgcolor"; // %bodycolor;,
-															  // TABLE
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_TEXT = "text"; // %bodycolor;
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_LINK = "link"; // %bodycolor;
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_VLINK = "vlink"; // %bodycolor;
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ALINK = "alink"; // %bodycolor;
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_VERSION = "version"; // HTML
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_PROFILE = "profile"; // HEAD
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONLOAD = "onload"; // BODY
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_ONUNLOAD = "onunload"; // BODY
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_BACKGROUND = "background"; // BODY,
-																	// TABLE
-																	// //$NON-NLS-1$
-	public static final String ATTR_NAME_SRC = "src"; // IMG //$NON-NLS-1$
-	public static final String ATTR_NAME_ALT = "alt"; // IMG,AREA
-													  // //$NON-NLS-1$
-	public static final String ATTR_NAME_LONGDESC = "longdesc"; // IMG
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_NAME = "name"; // IMG //$NON-NLS-1$
-	public static final String ATTR_NAME_HEIGHT = "height"; // IMG, TABLE
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_WIDTH = "width"; // IMG, TABLE,HR
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_USEMAP = "usemap"; // IMG
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_ISMAP = "ismap"; // IMG //$NON-NLS-1$
-	public static final String ATTR_NAME_ALIGN = "align"; // IMG, TABLE,HR
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_BORDER = "border"; // IMG, TABLE
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_HSPACE = "hspace"; // IMG
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_VSPACE = "vspace"; // IMG
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_MAPFILE = "mapfile"; // IMG
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_SUMMARY = "summary"; // TABLE
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_FRAME = "frame"; // TABLE
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_RULES = "rules"; // TABLE
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CELLSPACING = "cellspacing"; // TABLE
-																	  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CELLPADDING = "cellpadding"; // TABLE
-																	  // //$NON-NLS-1$
-	public static final String ATTR_NAME_DATAPAGESIZE = "datapagesize"; // TABLE,HR
-																		// //$NON-NLS-1$
-	public static final String ATTR_NAME_COLOR = "color"; // BASEFONT,FONT
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_FACE = "face"; // BASEFONT,FONT
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_SIZE = "size"; // BASEFONT,FONT
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_CLEAR = "clear"; // BR //$NON-NLS-1$
-	public static final String ATTR_NAME_SHAPE = "shape"; // AREA
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_COORDS = "coords"; // AREA
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_HREF = "href"; // AREA //$NON-NLS-1$
-	public static final String ATTR_NAME_TARGET = "target"; // AREA
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_NOHREF = "nohref"; // AREA
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_TABINDEX = "tabindex"; // AREA
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_ACCESSKEY = "accesskey"; // AREA
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONFOCUS = "onfocus"; // AREA
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONBLUR = "onblur"; // AREA
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_CHARSET = "charset"; // LINK
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_HREFLANG = "hreflang"; // LINK
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_TYPE = "type"; // LINK //$NON-NLS-1$
-	public static final String ATTR_NAME_REL = "rel"; // LINK //$NON-NLS-1$
-	public static final String ATTR_NAME_REV = "rev"; // LINK //$NON-NLS-1$
-	public static final String ATTR_NAME_MEDIA = "media"; // LINK
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_VALUE = "value"; // PARAM
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_VALUETYPE = "valuetype"; // PARAM
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_NOSHADE = "noshade"; // HR
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CHECKED = "checked"; // INPUT
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_DISABLED = "disabled"; // INPUT
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_READONLY = "readonly"; // INPUT
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_MAXLENGTH = "maxlength"; // INPUT
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONSELECT = "onselect"; // INPUT
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_ONCHANGE = "onchange"; // INPUT
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_ACCEPT = "accept"; // INPUT
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_ISTYLE = "istyle"; // INPUT
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_CHAR = "char"; // COL //$NON-NLS-1$
-	public static final String ATTR_NAME_CHAROFF = "charoff"; // COL
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_VALIGN = "valign"; // COL
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_SPAN = "span"; // COL //$NON-NLS-1$
-	public static final String ATTR_NAME_FRAMEBORDER = "frameborder"; // FRAME
-																	  // //$NON-NLS-1$
-	public static final String ATTR_NAME_MARGINWIDTH = "marginwidth"; // FRAME
-																	  // //$NON-NLS-1$
-	public static final String ATTR_NAME_MARGINHEIGHT = "marginheight"; // FRAME
-																		// //$NON-NLS-1$
-	public static final String ATTR_NAME_NORESIZE = "noresize"; // FRAME
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_SCROLLING = "scrolling"; // FRAME
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_PROMPT = "prompt"; // ISINDEX
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_HTTP_EQUIV = "http-equiv"; // META
-																	// //$NON-NLS-1$
-	public static final String ATTR_NAME_CONTENT = "content"; // META
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_SCHEME = "scheme"; // META
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_ERRMSG = "errmsg"; // ssi:config
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_SIZEFMT = "sizefmt"; // ssi:config
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_TIMEFMT = "timefmt"; // ssi:config
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_VAR = "var"; // ssi:echo
-													  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CGI = "cgi"; // ssi:exec
-													  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CMD = "cmd"; // ssi:exec
-													  // //$NON-NLS-1$
-	public static final String ATTR_NAME_FILE = "file"; // ssi:fsize
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_VIRTUAL = "virtual"; // ssi:fsize
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_SELECTED = "selected"; // OPTION
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_LABEL = "label"; // OPTION
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ROWS = "rows"; // TEXTAREA
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_COLS = "cols"; // TEXTAREA
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_LANGUAGE = "language"; // SCRIPT
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_DEFER = "defer"; // SCRIPT
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_EVENT = "event"; // SCRIPT
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_FOR = "for"; // SCRIPT //$NON-NLS-1$
-	public static final String ATTR_NAME_COMPACT = "compact"; // OL/UL
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_START = "start"; // OL/UL
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_DIRECTKEY = "directkey"; // A
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CODEBASE = "codebase"; // APPLET
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_ARCHIVE = "archive"; // APPLET
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CODE = "code"; // APPLET
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_OBJECT = "object"; // APPLET
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_MAYSCRIPT = "mayscript"; // APPLET
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CITE = "cite"; // BLOCKQUOTE
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_MACRO = "macro"; // D2W //$NON-NLS-1$
-	public static final String ATTR_NAME_DATETIME = "datetime"; // INS/DEL
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_LOOP = "loop"; // EMBED //$NON-NLS-1$
-	public static final String ATTR_NAME_HIDDEN = "hidden"; // EMBED
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_VOLUME = "volume"; // EMBED
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_AUTOSTART = "autostart"; // EMBED
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_AUTOPLAY = "autoplay"; // EMBED
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_AUTOSIZE = "autosize"; // EMBED
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_CONTROLLER = "controller";// EMBED
-																   // //$NON-NLS-1$
-	public static final String ATTR_NAME_SCALE = "scale"; // EMBED
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_SHOWCONTROLS = "showcontrols";// EMBED
-																	   // //$NON-NLS-1$
-	public static final String ATTR_NAME_PLAYCOUNT = "playcount"; // EMBED
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_REPEAT = "repeat"; // EMBED
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_PANEL = "panel"; // EMBED
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_PALETTE = "palette"; // EMBED
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_TEXTFOCUS = "textfocus"; // EMBED
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ACTION = "action"; // FORM
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_METHOD = "method"; // FORM
-															// //$NON-NLS-1$
-	public static final String ATTR_NAME_ENCTYPE = "enctype"; // FORM
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ONSUBMIT = "onsubmit"; // FORM
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_ONRESET = "onreset"; // FORM
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ACCEPT_CHARSET = "accept-charset";// FORM
-																		   // //$NON-NLS-1$
-	public static final String ATTR_NAME_BEHAVIOR = "behavior"; // MARQUEE
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_DIRECTION = "direction"; // MARQUEE
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_SCROLLAMOUNT = "scrollamount";// MARQUEE
-																	   // //$NON-NLS-1$
-	public static final String ATTR_NAME_SCROLLDELAY = "scrolldelay";// MARQUEE
-																	 // //$NON-NLS-1$
-	public static final String ATTR_NAME_TRUESPEED = "truespeed"; // MARQUEE
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_DECLARE = "declare"; // OBJECT
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_CLASSID = "classid"; // OBJECT
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_DATA = "data"; // OBJECT
-														// //$NON-NLS-1$
-	public static final String ATTR_NAME_CODETYPE = "codetype"; // OBJECT
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_STANDBY = "standby"; // OBJECT
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_MULTIPLE = "multiple"; // SELECT
-																// //$NON-NLS-1$
-	public static final String ATTR_NAME_ABBR = "abbr"; // TH/TD //$NON-NLS-1$
-	public static final String ATTR_NAME_AXIS = "axis"; // TH/TD //$NON-NLS-1$
-	public static final String ATTR_NAME_HEADERS = "headers"; // TH/TD
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_SCOPE = "scope"; // TH/TD
-														  // //$NON-NLS-1$
-	public static final String ATTR_NAME_ROWSPAN = "rowspan"; // TH/TD
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_COLSPAN = "colspan"; // TH/TD
-															  // //$NON-NLS-1$
-	public static final String ATTR_NAME_NOWRAP = "nowrap"; // TH/TD
-															// //$NON-NLS-1$
-	// <<D205514
-	public static final String ATTR_NAME_TOPMARGIN = "topmargin"; // BODY
-																  // //$NON-NLS-1$
-	public static final String ATTR_NAME_BOTTOMMARGIN = "bottommargin"; // BODY
-																		// //$NON-NLS-1$
-	public static final String ATTR_NAME_LEFTMARGIN = "leftmargin"; // BODY
-																	// //$NON-NLS-1$
-	public static final String ATTR_NAME_RIGHTMARGIN = "rightmargin"; // BODY
-																	  // //$NON-NLS-1$
-	public static final String ATTR_NAME_BORDERCOLOR = "bordercolor"; // TABLE/TR/TH/TD/FRAMESET/FRAME
-																	  // //$NON-NLS-1$
-	// for WML
-	public static final String WML_ATTR_NAME_TITLE = "title"; // card
-															  // //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_DOMAIN = "domain"; // access
-																// //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_PATH = "path"; // access
-															// //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_ONENTERFORWARD = "onenterforward"; // template,card
-																				// //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_ONENTERBACKWARD = "onenterbackward"; // template,card
-																				  // //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_ONPICK = "onpick"; // option
-																// //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_ONTIMER = "ontimer"; // template,card
-																  // //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_NEWCONTEXT = "newcontext"; // card
-																		// //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_ORDERED = "ordered"; // card
-																  // //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_OPTIONAL = "optional"; // do
-																	// //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_CACHE_CONTROL = "cache-control"; // go
-																			  // //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_SENDREFERER = "sendreferer"; // go
-																		  // //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_METHOD = "method"; // go
-																// //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_ENCTYPE = "enctype"; // go
-																  // //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_ACCEPT_CHARSET = "accept-charset"; // go
-																				// //$NON-NLS-1$
-	public static final String WML_ATTR_NAME_COLUMNS = "columns"; // table
-																  // //$NON-NLS-1$
-	// D205514
-	//<<D215684
-	public static final String ATTR_NAME_FRAMESPACING = "framespacing"; // FRAMESET
-																		// //$NON-NLS-1$
-	//D215684
-	// global attribute values; mainly used in enumeration.
-	public static final String ATTR_VALUE_VERSION_TRANSITIONAL = "-//W3C//DTD HTML 4.01 Transitional//EN"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_VERSION_FRAMESET = "-//W3C//DTD HTML 4.01 Frameset//EN"; //$NON-NLS-1$
-	public static final String ATTR_VALUE_LTR = "ltr"; // dir //$NON-NLS-1$
-	public static final String ATTR_VALUE_RTL = "rtl"; // dir //$NON-NLS-1$
-	//   for align (top|middle|bottom|left|right)
-	public static final String ATTR_VALUE_TOP = "top"; // align //$NON-NLS-1$
-	public static final String ATTR_VALUE_MIDDLE = "middle"; // align
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_BOTTOM = "bottom"; // align
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_LEFT = "left"; // align
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_CENTER = "center"; // align
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_RIGHT = "right"; // align
-														   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_JUSTIFY = "justify"; // align
-															   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_CHAR = "char"; // align
-														 // //$NON-NLS-1$
-	//   for valign (baseline)
-	public static final String ATTR_VALUE_BASELINE = "baseline"; // valign
-																 // //$NON-NLS-1$
-	//   for clear (left|all|right|none): left and right are already defined
-	// above.
-	public static final String ATTR_VALUE_ALL = "all"; // clear //$NON-NLS-1$
-	public static final String ATTR_VALUE_NONE = "none"; // clear
-														 // //$NON-NLS-1$
-	//   for shape (rect|circle|poly|default)
-	public static final String ATTR_VALUE_RECT = "rect"; // shape
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_CIRCLE = "circle"; // shape
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_POLY = "poly"; // shape
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_DEFAULT = "default"; // shape
-															   // //$NON-NLS-1$
-	//   for valuetype (data|ref|object)
-	public static final String ATTR_VALUE_DATA = "data"; // valuetype
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_REF = "ref"; // valuetype
-													   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_OBJECT = "object"; // valuetype
-															 // //$NON-NLS-1$
-	//   for type of INPUT
-	//       (text | password | checkbox | radio | submit | reset |
-	//        file | hidden | image | button)
-	public static final String ATTR_VALUE_TEXT = "text"; // INPUT:type
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_PASSWORD = "password"; // INPUT:type
-																 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_CHECKBOX = "checkbox"; // INPUT:type
-																 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_RADIO = "radio"; // INPUT:type
-														   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_SUBMIT = "submit"; // INPUT:type
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_RESET = "reset"; // INPUT:type
-														   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_FILE = "file"; // INPUT:type
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_HIDDEN = "hidden"; // INPUT:type
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_IMAGE = "image"; // INPUT:type
-														   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_BUTTON = "button"; // INPUT:type
-															 // //$NON-NLS-1$
-	//   for span, colspan, rowspan
-	public static final String ATTR_VALUE_1 = "1"; // span //$NON-NLS-1$
-	//   for frameborder
-	public static final String ATTR_VALUE_0 = "0"; // FRAME //$NON-NLS-1$
-	//   for scrolling
-	public static final String ATTR_VALUE_YES = "yes"; // FRAME //$NON-NLS-1$
-	public static final String ATTR_VALUE_NO = "no"; // FRAME //$NON-NLS-1$
-	public static final String ATTR_VALUE_AUTO = "auto"; // FRAME
-														 // //$NON-NLS-1$
-	//   for UL
-	public static final String ATTR_VALUE_DISC = "disc"; // UL:type
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_SQUARE = "square"; // UL:type
-															 // //$NON-NLS-1$
-	//   for frame of TABLE
-	public static final String ATTR_VALUE_VOID = "void"; // TABLE:frame
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_ABOVE = "above"; // TABLE:frame
-														   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_BELOW = "below"; // TABLE:frame
-														   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_HSIDES = "hsides"; // TABLE:frame
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_LHS = "lhs"; // TABLE:frame
-													   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_RHS = "rhs"; // TABLE:frame
-													   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_VSIDES = "vsides"; // TABLE:frame
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_BOX = "box"; // TABLE:frame
-													   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_BORDER = "border"; // TABLE:frame
-															 // //$NON-NLS-1$
-	//   for rules of TABLE
-	public static final String ATTR_VALUE_GROUPS = "groups"; // TABLE:rules
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_ROWS = "rows"; // TEXTAREA
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_COLS = "cols"; // TEXTAREA
-														 // //$NON-NLS-1$
-	//   for method of FORM
-	public static final String ATTR_VALUE_GET = "get"; // FORM //$NON-NLS-1$
-	public static final String ATTR_VALUE_POST = "post"; // FORM //$NON-NLS-1$
-	public static final String ATTR_VALUE_WWW_FORM_URLENCODED = "application/x-www-form-urlencoded"; //$NON-NLS-1$
-	//   for scope of (TH | TD)
-	public static final String ATTR_VALUE_ROW = "row"; // (TH|TD):scope
-													   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_COL = "col"; // (TH|TD):scope
-													   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_ROWGROUP = "rowgroup";// (TH|TD):scope
-																// //$NON-NLS-1$
-	public static final String ATTR_VALUE_COLGROUP = "colgroup";// (TH|TD):scope
-																// //$NON-NLS-1$
-	//   for auto?? of EMBED
-	public static final String ATTR_VALUE_TRUE = "true"; // EMBED
-														 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_FALSE = "false"; // EMBED
-														   // //$NON-NLS-1$
-	//   for behaviro of MARQUEE
-	public static final String ATTR_VALUE_SCROLL = "scroll"; // MARQUEE
-															 // //$NON-NLS-1$
-	public static final String ATTR_VALUE_SLIDE = "slide"; // MARQUEE
-														   // //$NON-NLS-1$
-	public static final String ATTR_VALUE_ALTERNATE = "alternate"; // MARQUEE
-																   // //$NON-NLS-1$
-	//   for direction of MARQUEE
-	public static final String ATTR_VALUE_UP = "up"; // MARQUEE //$NON-NLS-1$
-	public static final String ATTR_VALUE_DOWN = "down"; // MARQUEE
-														 // //$NON-NLS-1$
-	//   for type of LI (D19924)
-	public static final String ATTR_VALUE_NUMBER = "1"; // LI //$NON-NLS-1$
-	public static final String ATTR_VALUE_LOWER_ALPHA = "a"; // LI
-															 // //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentproperties/ContentSettingsRegistry.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentproperties/ContentSettingsRegistry.java
deleted file mode 100644
index 8862b95..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentproperties/ContentSettingsRegistry.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentproperties;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.metamodel.CSSProfile;
-import org.eclipse.wst.css.core.metamodel.CSSProfileRegistry;
-import org.eclipse.wst.sse.ui.contentproperties.ui.ComboList;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-
-public final class ContentSettingsRegistry {
-	private static final String NONE = SSEUIPlugin.getResourceString("%UI_none"); //$NON-NLS-1$
-
-	public static void setCSSMetaModelRegistryInto(ComboList combo) {
-		combo.add(NONE, ""); //$NON-NLS-1$
-		CSSProfileRegistry reg = CSSProfileRegistry.getInstance();
-		Iterator i = reg.getProfiles();
-		while (i.hasNext()) {
-			CSSProfile profile = (CSSProfile) i.next();
-			String id = profile.getProfileID();
-			String name = profile.getProfileName();
-			combo.add(name, id);
-		}
-		combo.sortByKey(1);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentproperties/ui/CSSContentSettingsPropertyPage.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentproperties/ui/CSSContentSettingsPropertyPage.java
deleted file mode 100644
index e2c70ca..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/contentproperties/ui/CSSContentSettingsPropertyPage.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.contentproperties.ui;
-
-
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.css.ui.contentproperties.ContentSettingsRegistry;
-import org.eclipse.wst.css.ui.internal.Logger;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.contentproperties.IContentSettings;
-import org.eclipse.wst.sse.ui.contentproperties.ui.ComboListOnPropertyPage;
-import org.eclipse.wst.sse.ui.contentproperties.ui.ContentSettingsPropertyPage;
-
-public final class CSSContentSettingsPropertyPage extends ContentSettingsPropertyPage {
-
-	private final int N_CSS_PROFILE = 0;
-
-
-
-	public CSSContentSettingsPropertyPage() {
-		super();
-		numberOfCombo = 1;
-		numCols = 2;
-		numRows = 1;
-		combo = new ComboListOnPropertyPage[super.numberOfCombo];
-
-	}
-
-	protected void createCSSComboBox() {
-		super.combo[N_CSS_PROFILE] = super.createComboBoxOf(CSS_LABEL);
-		ContentSettingsRegistry.setCSSMetaModelRegistryInto(combo[N_CSS_PROFILE]);
-		if (combo[N_CSS_PROFILE].getItemCount() <= 0)
-			return;
-		String initValue = contentSettings.getProperty((IResource) super.getElement(), IContentSettings.CSS_PROFILE);
-		// when either .contentsettings or element doesn't exist
-		// when attribute doesn't exists,getProperty returns empty string.
-		if (initValue == null)
-			initValue = ""; //$NON-NLS-1$
-		// set init selectionItem in Combo
-		super.setSelectionItem(combo[N_CSS_PROFILE], initValue);
-	}
-
-
-
-	protected void createSettingsPageGUI() {
-
-		int type = ((IResource) getElement()).getType();
-		switch (type) {
-			case IResource.FILE :
-				//composite = createComposite(propertyPage,numCols,numRows);
-				createCSSComboBox();
-				WorkbenchHelp.setHelp(propertyPage, IHelpContextIds.CSS_CONTENT_SETTINGS_HELPID);
-				break;
-
-			default :
-				Logger.log(Logger.WARNING, "CSSContentSettingsPropertyPage is instantiated by resource except FILE");//$NON-NLS-1$
-				break;
-		}
-
-	}
-
-
-	protected void putSelectedPropertyInto(Map properties, String valueInCombo, int index) {
-
-		switch (index) {
-			case N_CSS_PROFILE :
-				// css
-				properties.put(IContentSettings.CSS_PROFILE, valueInCombo);
-				break;
-			default :
-				Logger.log(Logger.ERROR, "Index is out of range in putSelectedPropertyInto() in class CSSContentSettingsPropertyPage");//$NON-NLS-1$
-				break;
-		}
-
-	}
-
-	protected void deleteNoneProperty(int index) {
-		switch (index) {
-			case N_CSS_PROFILE :
-				// css
-				contentSettings.deleteProperty((IResource) super.getElement(), IContentSettings.CSS_PROFILE);
-				break;
-
-			default :
-				Logger.log(Logger.ERROR, "Index is out of range in deleteNoneProperty() in class CSSContentSettingsPropertyPage");//$NON-NLS-1$
-				break;
-		}
-	}
-
-}
-
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/edit/ui/CleanupActionCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/edit/ui/CleanupActionCSS.java
deleted file mode 100644
index 6144ade..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/edit/ui/CleanupActionCSS.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.edit.ui;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.css.core.internal.cleanup.CleanupProcessorCSS;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupProcessor;
-import org.eclipse.wst.sse.ui.internal.actions.CleanupAction;
-
-public class CleanupActionCSS extends CleanupAction {
-	protected IStructuredCleanupProcessor fCleanupProcessor;
-
-	public CleanupActionCSS(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	protected Dialog getCleanupDialog(Shell shell) {
-		if (fCleanupDialog == null)
-			fCleanupDialog = new CleanupDialogCSS(shell);
-
-		return fCleanupDialog;
-	}
-
-	protected IStructuredCleanupProcessor getCleanupProcessor() {
-		if (fCleanupProcessor == null)
-			fCleanupProcessor = new CleanupProcessorCSS();
-
-		return fCleanupProcessor;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/edit/ui/CleanupDialogCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/edit/ui/CleanupDialogCSS.java
deleted file mode 100644
index 1e79b90..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/edit/ui/CleanupDialogCSS.java
+++ /dev/null
@@ -1,290 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.edit.ui;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategy;
-import org.eclipse.wst.css.core.internal.cleanup.CSSCleanupStrategyImpl;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-
-public class CleanupDialogCSS extends Dialog {
-
-	private boolean embeddedCSS;
-	protected Button fRadioButtonIdentCaseAsis;
-	protected Button fRadioButtonIdentCaseLower;
-	protected Button fRadioButtonIdentCaseUpper;
-	protected Button fRadioButtonPropNameCaseAsis;
-	protected Button fRadioButtonPropNameCaseLower;
-	protected Button fRadioButtonPropNameCaseUpper;
-	protected Button fRadioButtonPropValueCaseAsis;
-	protected Button fRadioButtonPropValueCaseLower;
-	protected Button fRadioButtonPropValueCaseUpper;
-	protected Button fRadioButtonSelectorTagCaseAsis;
-	protected Button fRadioButtonSelectorTagCaseLower;
-	protected Button fRadioButtonSelectorTagCaseUpper;
-	protected Button fCheckBoxQuoteValues;
-	protected Button fCheckBoxFormatSource;
-
-	/**
-	 * CSSCleanupDialog constructor comment.
-	 * 
-	 * @param parentShell
-	 *            org.eclipse.swt.widgets.Shell
-	 */
-	public CleanupDialogCSS(Shell parentShell) {
-		super(parentShell);
-	}
-
-	/**
-	 * 
-	 * @return org.eclipse.swt.widgets.Control
-	 * @param parent
-	 *            org.eclipse.swt.widgets.Composite
-	 */
-	public Control createDialogArea(Composite parent) {
-		if (isEmbeddedCSS())
-			getShell().setText(SSEUIPlugin.getResourceString("%CSS_Cleanup_UI_")); //$NON-NLS-1$ = "CSS Cleanup"
-		else
-			getShell().setText(SSEUIPlugin.getResourceString("%Cleanup_UI_")); //$NON-NLS-1$ = "Cleanup"
-
-		Composite panel = new Composite(parent, SWT.NULL);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 1;
-		layout.makeColumnsEqualWidth = true;
-		panel.setLayout(layout);
-
-		WorkbenchHelp.setHelp(panel, IHelpContextIds.CSS_CLEANUP_HELPID);
-
-		// Convert ident case
-		// ACC: Group radio buttons together so associated label is read
-		//		Label identCaseLabel = new Label(panel, SWT.NULL);
-		//		identCaseLabel.setText(ResourceHandler.getString("Identifier_case__UI_"));
-		// //$NON-NLS-1$ = "Identifier case:"
-		//		Canvas identCase = new Canvas(panel, SWT.NULL);
-		Group identCase = new Group(panel, SWT.NULL);
-		identCase.setText(SSEUIPlugin.getResourceString("%Identifier_case__UI_")); //$NON-NLS-1$ = "Identifier case:"
-		GridLayout hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		identCase.setLayout(hLayout);
-		fRadioButtonIdentCaseAsis = new Button(identCase, SWT.RADIO);
-		fRadioButtonIdentCaseAsis.setText(SSEUIPlugin.getResourceString("%As-is_UI_")); //$NON-NLS-1$ = "As-is"
-		fRadioButtonIdentCaseLower = new Button(identCase, SWT.RADIO);
-		fRadioButtonIdentCaseLower.setText(SSEUIPlugin.getResourceString("%Lower_UI_")); //$NON-NLS-1$ = "Lower"
-		fRadioButtonIdentCaseUpper = new Button(identCase, SWT.RADIO);
-		fRadioButtonIdentCaseUpper.setText(SSEUIPlugin.getResourceString("%Upper_UI_")); //$NON-NLS-1$ = "Upper"
-
-		// Convert property name case
-		// ACC: Group radio buttons together so associated label is read
-		//		Label propNameCaseLabel = new Label(panel, SWT.NULL);
-		//		propNameCaseLabel.setText(ResourceHandler.getString("Property_name_case__UI_"));
-		// //$NON-NLS-1$ = "Property name case:"
-		//		Canvas propNameCase = new Canvas(panel, SWT.NULL);
-		Group propNameCase = new Group(panel, SWT.NULL);
-		propNameCase.setText(SSEUIPlugin.getResourceString("%Property_name_case__UI_")); //$NON-NLS-1$ = "Property name case:"
-		hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		propNameCase.setLayout(hLayout);
-		fRadioButtonPropNameCaseAsis = new Button(propNameCase, SWT.RADIO);
-		fRadioButtonPropNameCaseAsis.setText(SSEUIPlugin.getResourceString("%As-is_UI_")); //$NON-NLS-1$ = "As-is"
-		fRadioButtonPropNameCaseLower = new Button(propNameCase, SWT.RADIO);
-		fRadioButtonPropNameCaseLower.setText(SSEUIPlugin.getResourceString("%Lower_UI_")); //$NON-NLS-1$ = "Lower"
-		fRadioButtonPropNameCaseUpper = new Button(propNameCase, SWT.RADIO);
-		fRadioButtonPropNameCaseUpper.setText(SSEUIPlugin.getResourceString("%Upper_UI_")); //$NON-NLS-1$ = "Upper"
-
-		// Convert property Value case
-		// ACC: Group radio buttons together so associated label is read
-		//		Label propValueCaseLabel = new Label(panel, SWT.NULL);
-		//		propValueCaseLabel.setText(ResourceHandler.getString("Property_value_case__UI_"));
-		// //$NON-NLS-1$ = "Property value case:"
-		//		Canvas propValueCase = new Canvas(panel, SWT.NULL);
-		Group propValueCase = new Group(panel, SWT.NULL);
-		propValueCase.setText(SSEUIPlugin.getResourceString("%Property_value_case__UI_")); //$NON-NLS-1$ = "Property value case:"
-		hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		propValueCase.setLayout(hLayout);
-		fRadioButtonPropValueCaseAsis = new Button(propValueCase, SWT.RADIO);
-		fRadioButtonPropValueCaseAsis.setText(SSEUIPlugin.getResourceString("%As-is_UI_")); //$NON-NLS-1$ = "As-is"
-		fRadioButtonPropValueCaseLower = new Button(propValueCase, SWT.RADIO);
-		fRadioButtonPropValueCaseLower.setText(SSEUIPlugin.getResourceString("%Lower_UI_")); //$NON-NLS-1$ = "Lower"
-		fRadioButtonPropValueCaseUpper = new Button(propValueCase, SWT.RADIO);
-		fRadioButtonPropValueCaseUpper.setText(SSEUIPlugin.getResourceString("%Upper_UI_")); //$NON-NLS-1$ = "Upper"
-
-		if (!isEmbeddedCSS()) {
-			// Convert selector tag case
-			// ACC: Group radio buttons together so associated label is read
-			//			Label selectorTagCaseLabel = new Label(panel, SWT.NULL);
-			//			selectorTagCaseLabel.setText(ResourceHandler.getString("Selector_tag_name_case__UI_"));
-			// //$NON-NLS-1$ = "Selector tag name case:"
-			//			Canvas selectorTagCase = new Canvas(panel, SWT.NULL);
-			Group selectorTagCase = new Group(panel, SWT.NULL);
-			selectorTagCase.setText(SSEUIPlugin.getResourceString("%Selector_tag_name_case__UI_")); //$NON-NLS-1$ = "Selector tag name case:"
-			hLayout = new GridLayout();
-			hLayout.numColumns = 3;
-			selectorTagCase.setLayout(hLayout);
-			fRadioButtonSelectorTagCaseAsis = new Button(selectorTagCase, SWT.RADIO);
-			fRadioButtonSelectorTagCaseAsis.setText(SSEUIPlugin.getResourceString("%As-is_UI_")); //$NON-NLS-1$ = "As-is"
-			fRadioButtonSelectorTagCaseLower = new Button(selectorTagCase, SWT.RADIO);
-			fRadioButtonSelectorTagCaseLower.setText(SSEUIPlugin.getResourceString("%Lower_UI_")); //$NON-NLS-1$ = "Lower"
-			fRadioButtonSelectorTagCaseUpper = new Button(selectorTagCase, SWT.RADIO);
-			fRadioButtonSelectorTagCaseUpper.setText(SSEUIPlugin.getResourceString("%Upper_UI_")); //$NON-NLS-1$ = "Upper"
-		}
-
-		// Quote attribute values
-		fCheckBoxQuoteValues = new Button(panel, SWT.CHECK);
-		fCheckBoxQuoteValues.setText(SSEUIPlugin.getResourceString("%Quote_values_UI_")); //$NON-NLS-1$ = "Quote values"
-
-		if (!isEmbeddedCSS()) {
-			// Format source
-			fCheckBoxFormatSource = new Button(panel, SWT.CHECK);
-			fCheckBoxFormatSource.setText(SSEUIPlugin.getResourceString("%Format_source_UI_")); //$NON-NLS-1$ = "Format source"
-		}
-
-		setCleanupOptions();
-
-		return panel;
-	}
-
-	/**
-	 * Insert the method's description here.
-	 * 
-	 * @return boolean
-	 */
-	public boolean isEmbeddedCSS() {
-		return embeddedCSS;
-	}
-
-	/**
-	 *  
-	 */
-	protected void okPressed() {
-		updateCleanupOptions();
-		super.okPressed();
-	}
-
-	/**
-	 *  
-	 */
-	protected void setCleanupOptions() {
-		CSSCleanupStrategy stgy = CSSCleanupStrategyImpl.getInstance();
-
-		if (fRadioButtonIdentCaseAsis != null) {
-			if (stgy.getIdentCase() == CSSCleanupStrategy.UPPER)
-				fRadioButtonIdentCaseUpper.setSelection(true);
-			else if (stgy.getIdentCase() == CSSCleanupStrategy.LOWER)
-				fRadioButtonIdentCaseLower.setSelection(true);
-			else
-				fRadioButtonIdentCaseAsis.setSelection(true);
-		}
-
-		if (fRadioButtonPropNameCaseAsis != null) {
-			if (stgy.getPropNameCase() == CSSCleanupStrategy.UPPER)
-				fRadioButtonPropNameCaseUpper.setSelection(true);
-			else if (stgy.getPropNameCase() == CSSCleanupStrategy.LOWER)
-				fRadioButtonPropNameCaseLower.setSelection(true);
-			else
-				fRadioButtonPropNameCaseAsis.setSelection(true);
-		}
-
-		if (fRadioButtonPropValueCaseAsis != null) {
-			if (stgy.getPropValueCase() == CSSCleanupStrategy.UPPER)
-				fRadioButtonPropValueCaseUpper.setSelection(true);
-			else if (stgy.getPropValueCase() == CSSCleanupStrategy.LOWER)
-				fRadioButtonPropValueCaseLower.setSelection(true);
-			else
-				fRadioButtonPropValueCaseAsis.setSelection(true);
-		}
-
-		if (fRadioButtonSelectorTagCaseAsis != null) {
-			if (stgy.getSelectorTagCase() == CSSCleanupStrategy.UPPER)
-				fRadioButtonSelectorTagCaseUpper.setSelection(true);
-			else if (stgy.getSelectorTagCase() == CSSCleanupStrategy.LOWER)
-				fRadioButtonSelectorTagCaseLower.setSelection(true);
-			else
-				fRadioButtonSelectorTagCaseAsis.setSelection(true);
-		}
-
-		if (fCheckBoxQuoteValues != null)
-			fCheckBoxQuoteValues.setSelection(stgy.isQuoteValues());
-
-		if (fCheckBoxFormatSource != null)
-			fCheckBoxFormatSource.setSelection(stgy.isFormatSource());
-
-	}
-
-	/**
-	 * Insert the method's description here.
-	 * 
-	 * @param newEmbeddedCSS
-	 *            boolean
-	 */
-	public void setEmbeddedCSS(boolean newEmbeddedCSS) {
-		embeddedCSS = newEmbeddedCSS;
-	}
-
-	/**
-	 *  
-	 */
-	protected void updateCleanupOptions() {
-		CSSCleanupStrategy stgy = CSSCleanupStrategyImpl.getInstance();
-
-		if (fRadioButtonIdentCaseAsis != null) {
-			if (fRadioButtonIdentCaseUpper.getSelection())
-				stgy.setIdentCase(CSSCleanupStrategy.UPPER);
-			else if (fRadioButtonIdentCaseLower.getSelection())
-				stgy.setIdentCase(CSSCleanupStrategy.LOWER);
-			else
-				stgy.setIdentCase(CSSCleanupStrategy.ASIS);
-		}
-
-		if (fRadioButtonPropNameCaseAsis != null) {
-			if (fRadioButtonPropNameCaseUpper.getSelection())
-				stgy.setPropNameCase(CSSCleanupStrategy.UPPER);
-			else if (fRadioButtonPropNameCaseLower.getSelection())
-				stgy.setPropNameCase(CSSCleanupStrategy.LOWER);
-			else
-				stgy.setPropNameCase(CSSCleanupStrategy.ASIS);
-		}
-
-		if (fRadioButtonPropValueCaseAsis != null) {
-			if (fRadioButtonPropValueCaseUpper.getSelection())
-				stgy.setPropValueCase(CSSCleanupStrategy.UPPER);
-			else if (fRadioButtonPropValueCaseLower.getSelection())
-				stgy.setPropValueCase(CSSCleanupStrategy.LOWER);
-			else
-				stgy.setPropValueCase(CSSCleanupStrategy.ASIS);
-		}
-
-		if (fRadioButtonSelectorTagCaseAsis != null) {
-			if (fRadioButtonSelectorTagCaseUpper.getSelection())
-				stgy.setSelectorTagCase(CSSCleanupStrategy.UPPER);
-			else if (fRadioButtonSelectorTagCaseLower.getSelection())
-				stgy.setSelectorTagCase(CSSCleanupStrategy.LOWER);
-			else
-				stgy.setSelectorTagCase(CSSCleanupStrategy.ASIS);
-		}
-
-		if (fCheckBoxQuoteValues != null)
-			stgy.setQuoteValues(fCheckBoxQuoteValues.getSelection());
-
-		if (fCheckBoxFormatSource != null)
-			stgy.setFormatSource(fCheckBoxFormatSource.getSelection());
-
-		// save these values to preferences
-		((CSSCleanupStrategyImpl) stgy).saveOptions();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/image/CSSImageHelper.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/image/CSSImageHelper.java
deleted file mode 100644
index 6706f8d..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/image/CSSImageHelper.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.image;
-
-
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.editor.CSSEditorPluginImages;
-
-
-public class CSSImageHelper {
-	/**
-	 * singleton
-	 */
-	public synchronized static CSSImageHelper getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSImageHelper();
-		}
-		return fInstance;
-	}
-
-	/**
-	 * by relative path(from here)
-	 */
-	public Image getImage(String resource) {
-		if (resource == null) {
-			return null;
-		}
-		Image image = getImageRegistry().get(resource);
-		if (image == null) {
-			image = createImage(resource);
-		}
-		return image;
-	}
-
-	/**
-	 * by type
-	 */
-	public Image getImage(CSSImageType type) {
-		if (fTypeMap == null) {
-			fTypeMap = new HashMap();
-			fTypeMap.put(CSSImageType.STYLESHEET, CSSEditorPluginImages.IMG_OBJ_STYLESHEET);
-
-			fTypeMap.put(CSSImageType.RULE_CHARSET, CSSEditorPluginImages.IMG_OBJ_RULE_CHARSET);
-			fTypeMap.put(CSSImageType.RULE_FONTFACE, CSSEditorPluginImages.IMG_OBJ_RULE_FONTFACE);
-			fTypeMap.put(CSSImageType.RULE_IMPORT, CSSEditorPluginImages.IMG_OBJ_RULE_IMPORT);
-			fTypeMap.put(CSSImageType.RULE_MEDIA, CSSEditorPluginImages.IMG_OBJ_RULE_MEDIA);
-			fTypeMap.put(CSSImageType.RULE_PAGE, CSSEditorPluginImages.IMG_OBJ_RULE_PAGE);
-			fTypeMap.put(CSSImageType.RULE_STYLE, CSSEditorPluginImages.IMG_OBJ_RULE_STYLE);
-			fTypeMap.put(CSSImageType.RULE_UNKNOWN, CSSEditorPluginImages.IMG_OBJ_RULE_UNKNOWN);
-
-			fTypeMap.put(CSSImageType.SELECTOR_CLASS, CSSEditorPluginImages.IMG_OBJ_SELECTOR_CLASS);
-			fTypeMap.put(CSSImageType.SELECTOR_ID, CSSEditorPluginImages.IMG_OBJ_SELECTOR_ID);
-			fTypeMap.put(CSSImageType.SELECTOR_PSEUDO, CSSEditorPluginImages.IMG_OBJ_SELECTOR_PSEUDO);
-			fTypeMap.put(CSSImageType.SELECTOR_TAG, CSSEditorPluginImages.IMG_OBJ_SELECTOR_TAG);
-			fTypeMap.put(CSSImageType.SELECTOR_LINK, CSSEditorPluginImages.IMG_OBJ_SELECTOR_LINK);
-			fTypeMap.put(CSSImageType.SELECTOR_DEFAULT, CSSEditorPluginImages.IMG_OBJ_SELECTOR_DEFAULT);
-
-			fTypeMap.put(CSSImageType.VALUE_FUNCTION, CSSEditorPluginImages.IMG_OBJ_VALUE_FUNCTION);
-			fTypeMap.put(CSSImageType.VALUE_NUMBER, CSSEditorPluginImages.IMG_OBJ_VALUE_NUMBER);
-			fTypeMap.put(CSSImageType.VALUE_STRING, CSSEditorPluginImages.IMG_OBJ_VALUE_STRING);
-
-			fTypeMap.put(CSSImageType.CATEGORY_AURAL, CSSEditorPluginImages.IMG_OBJ_CATEGORY_AURAL);
-			fTypeMap.put(CSSImageType.CATEGORY_BOX, CSSEditorPluginImages.IMG_OBJ_CATEGORY_BOX);
-			fTypeMap.put(CSSImageType.CATEGORY_COLORANDBACKGROUND, CSSEditorPluginImages.IMG_OBJ_CATEGORY_COLORANDBACKGROUND);
-			fTypeMap.put(CSSImageType.CATEGORY_CONTENT, CSSEditorPluginImages.IMG_OBJ_CATEGORY_CONTENT);
-			fTypeMap.put(CSSImageType.CATEGORY_FONT, CSSEditorPluginImages.IMG_OBJ_CATEGORY_FONT);
-			fTypeMap.put(CSSImageType.CATEGORY_PAGE, CSSEditorPluginImages.IMG_OBJ_CATEGORY_PAGE);
-			fTypeMap.put(CSSImageType.CATEGORY_TABLES, CSSEditorPluginImages.IMG_OBJ_CATEGORY_TABLES);
-			fTypeMap.put(CSSImageType.CATEGORY_TEXT, CSSEditorPluginImages.IMG_OBJ_CATEGORY_TEXT);
-			fTypeMap.put(CSSImageType.CATEGORY_UI, CSSEditorPluginImages.IMG_OBJ_CATEGORY_UI);
-			fTypeMap.put(CSSImageType.CATEGORY_VISUAL, CSSEditorPluginImages.IMG_OBJ_CATEGORY_VISUAL);
-			fTypeMap.put(CSSImageType.CATEGORY_DEFAULT, CSSEditorPluginImages.IMG_OBJ_CATEGORY_DEFAULT);
-		}
-		return getImage((String) fTypeMap.get(type));
-	}
-
-	/**
-	 *  
-	 */
-	private CSSImageHelper() {
-		super();
-	}
-
-	/**
-	 *  
-	 */
-	private Image createImage(String resource) {
-		ImageDescriptor desc = AbstractUIPlugin.imageDescriptorFromPlugin(CSSUIPlugin.ID, resource);
-		Image image = null;
-
-		if (desc == null) {
-			desc = ImageDescriptor.getMissingImageDescriptor();
-			image = desc.createImage();
-		} else {
-			image = desc.createImage();
-			getImageRegistry().put(resource, image);
-		}
-
-		return image;
-	}
-
-	private ImageRegistry getImageRegistry() {
-		return JFaceResources.getImageRegistry();
-	}
-
-	private Map fTypeMap = null;
-	private static CSSImageHelper fInstance = null;
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/image/CSSImageType.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/image/CSSImageType.java
deleted file mode 100644
index 9efa575..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/image/CSSImageType.java
+++ /dev/null
@@ -1,235 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.image;
-
-
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.wst.css.core.document.ICSSDocument;
-import org.eclipse.wst.css.core.document.ICSSModel;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.document.ICSSSelector;
-import org.eclipse.wst.css.core.document.ICSSSelectorItem;
-import org.eclipse.wst.css.core.document.ICSSSelectorList;
-import org.eclipse.wst.css.core.document.ICSSSimpleSelector;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.metamodel.CSSMMProperty;
-import org.eclipse.wst.css.core.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.metamodel.util.CSSMetaModelFinder;
-import org.eclipse.wst.css.core.metamodel.util.CSSMetaModelUtil;
-import org.w3c.dom.css.CSSCharsetRule;
-import org.w3c.dom.css.CSSFontFaceRule;
-import org.w3c.dom.css.CSSImportRule;
-import org.w3c.dom.css.CSSMediaRule;
-import org.w3c.dom.css.CSSPageRule;
-import org.w3c.dom.css.CSSPrimitiveValue;
-import org.w3c.dom.css.CSSStyleDeclaration;
-import org.w3c.dom.css.CSSStyleRule;
-import org.w3c.dom.css.CSSValue;
-
-/**
- */
-public class CSSImageType {
-
-	private final String fName;
-
-	private CSSImageType(String name) {
-		this.fName = name;
-	}
-
-	public String toString() {
-		return fName;
-	}
-
-	public static final CSSImageType STYLESHEET = new CSSImageType("STYLESHEET"); //$NON-NLS-1$
-
-	public static final CSSImageType RULE_CHARSET = new CSSImageType("RULE_CHARSET"); //$NON-NLS-1$
-	public static final CSSImageType RULE_FONTFACE = new CSSImageType("RULE_FONTFACE"); //$NON-NLS-1$
-	public static final CSSImageType RULE_IMPORT = new CSSImageType("RULE_IMPORT"); //$NON-NLS-1$
-	public static final CSSImageType RULE_MEDIA = new CSSImageType("RULE_MEDIA"); //$NON-NLS-1$
-	public static final CSSImageType RULE_PAGE = new CSSImageType("RULE_PAGE"); //$NON-NLS-1$
-	public static final CSSImageType RULE_STYLE = new CSSImageType("RULE_STYLE"); //$NON-NLS-1$
-	public static final CSSImageType RULE_UNKNOWN = new CSSImageType("RULE_UNKNOWN"); //$NON-NLS-1$
-
-	public static final CSSImageType SELECTOR_CLASS = new CSSImageType("SELECTOR_CLASS"); //$NON-NLS-1$
-	public static final CSSImageType SELECTOR_ID = new CSSImageType("SELECTOR_ID"); //$NON-NLS-1$
-	public static final CSSImageType SELECTOR_DEFAULT = new CSSImageType("SELECTOR_DEFAULT"); //$NON-NLS-1$
-	public static final CSSImageType SELECTOR_PSEUDO = new CSSImageType("SELECTOR_PSEUDO"); //$NON-NLS-1$
-	public static final CSSImageType SELECTOR_TAG = new CSSImageType("SELECTOR_TAG"); //$NON-NLS-1$
-	public static final CSSImageType SELECTOR_LINK = new CSSImageType("SELECTOR_LINK"); //$NON-NLS-1$
-
-	public static final CSSImageType VALUE_FUNCTION = new CSSImageType("VALUE_FUNCTION"); //$NON-NLS-1$
-	public static final CSSImageType VALUE_NUMBER = new CSSImageType("VALUE_NUMBER"); //$NON-NLS-1$
-	public static final CSSImageType VALUE_STRING = new CSSImageType("VALUE_STRING"); //$NON-NLS-1$
-
-	public static final CSSImageType CATEGORY_AURAL = new CSSImageType("CATEGORY_AURAL"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_BOX = new CSSImageType("CATEGORY_BOX"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_COLORANDBACKGROUND = new CSSImageType("CATEGORY_COLORANDBACKGROUND"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_CONTENT = new CSSImageType("CATEGORY_CONTENT"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_FONT = new CSSImageType("CATEGORY_FONT"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_PAGE = new CSSImageType("CATEGORY_PAGE"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_TABLES = new CSSImageType("CATEGORY_TABLES"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_TEXT = new CSSImageType("CATEGORY_TEXT"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_UI = new CSSImageType("CATEGORY_UI"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_VISUAL = new CSSImageType("CATEGORY_VISUAL"); //$NON-NLS-1$
-	public static final CSSImageType CATEGORY_DEFAULT = new CSSImageType("CATEGORY_DEFAULT"); //$NON-NLS-1$
-
-	/**
-	 * by node
-	 */
-	public static CSSImageType getImageType(ICSSNode node) {
-		CSSImageType imageType = null;
-		if (node instanceof CSSCharsetRule) {
-			imageType = RULE_CHARSET;
-		} else if (node instanceof CSSFontFaceRule) {
-			imageType = RULE_FONTFACE;
-		} else if (node instanceof CSSImportRule) {
-			imageType = RULE_IMPORT;
-		} else if (node instanceof CSSMediaRule) {
-			imageType = RULE_MEDIA;
-		} else if (node instanceof CSSPageRule) {
-			imageType = RULE_PAGE;
-		} else if (node instanceof CSSStyleRule) {
-			imageType = getImageType(((ICSSStyleRule) node).getSelectors());
-		} else if (node instanceof CSSStyleDeclaration) {
-			ICSSNode parent = node.getParentNode();
-			if (parent != null) {
-				return getImageType(parent);
-			}
-		} else if (node instanceof ICSSStyleDeclItem) {
-			String name = ((ICSSStyleDeclItem) node).getPropertyName();
-			ICSSDocument doc = node.getOwnerDocument();
-			ICSSModel model = (doc != null) ? doc.getModel() : null;
-			CSSMetaModelFinder finder = CSSMetaModelFinder.getInstance();
-			CSSMetaModel metaModel = finder.findMetaModelFor(model);
-			// is font-face rule ?
-			ICSSNode parent = node.getParentNode();
-			if (parent != null) {
-				parent = parent.getParentNode();
-				if (parent instanceof CSSFontFaceRule) {
-					imageType = CSSImageType.CATEGORY_FONT;
-				}
-			}
-			if (imageType == null) {
-				CSSMMProperty prop = new CSSMetaModelUtil(metaModel).getProperty(name);
-				if (prop != null) {
-					String category = prop.getAttribute("category"); //$NON-NLS-1$
-					imageType = getImageType(category);
-				}
-				if (imageType == null) {
-					imageType = CSSImageType.CATEGORY_DEFAULT;
-				}
-			}
-		} else if (node instanceof CSSValue) {
-			switch (((CSSValue) node).getCssValueType()) {
-				case CSSPrimitiveValue.CSS_NUMBER :
-				case CSSPrimitiveValue.CSS_PERCENTAGE :
-				case CSSPrimitiveValue.CSS_EMS :
-				case CSSPrimitiveValue.CSS_EXS :
-				case CSSPrimitiveValue.CSS_PX :
-				case CSSPrimitiveValue.CSS_CM :
-				case CSSPrimitiveValue.CSS_MM :
-				case CSSPrimitiveValue.CSS_IN :
-				case CSSPrimitiveValue.CSS_PT :
-				case CSSPrimitiveValue.CSS_PC :
-				case CSSPrimitiveValue.CSS_DEG :
-				case CSSPrimitiveValue.CSS_RAD :
-				case CSSPrimitiveValue.CSS_GRAD :
-				case CSSPrimitiveValue.CSS_MS :
-				case CSSPrimitiveValue.CSS_S :
-				case CSSPrimitiveValue.CSS_HZ :
-				case CSSPrimitiveValue.CSS_KHZ :
-				case CSSPrimitiveValue.CSS_DIMENSION :
-				case ICSSPrimitiveValue.CSS_INTEGER :
-				case ICSSPrimitiveValue.CSS_HASH :
-					imageType = VALUE_NUMBER;
-					break;
-				case CSSPrimitiveValue.CSS_ATTR :
-				case CSSPrimitiveValue.CSS_COUNTER :
-				case CSSPrimitiveValue.CSS_RECT :
-				case CSSPrimitiveValue.CSS_RGBCOLOR :
-				case CSSPrimitiveValue.CSS_URI :
-				case ICSSPrimitiveValue.CSS_FORMAT :
-				case ICSSPrimitiveValue.CSS_LOCAL :
-					imageType = VALUE_FUNCTION;
-					break;
-				default :
-					imageType = VALUE_STRING;
-					break;
-			}
-		}
-		return imageType;
-	}
-
-	public static CSSImageType getImageType(ICSSSelectorList selectorList) {
-		if (selectorList == null || selectorList.getLength() == 0) {
-			return SELECTOR_DEFAULT;
-		}
-		CSSImageType imageType = null;
-		int nSelectors = selectorList.getLength();
-		for (int i = 0; i < nSelectors; i++) {
-			CSSImageType candidate = getImageType(selectorList.getSelector(i));
-			if (imageType == null) {
-				imageType = candidate;
-			} else if (imageType != candidate) {
-				imageType = null;
-				break;
-			}
-		}
-
-		return (imageType == null) ? SELECTOR_DEFAULT : imageType;
-	}
-
-	public static CSSImageType getImageType(ICSSSelector selector) {
-		CSSImageType imageType = SELECTOR_DEFAULT;
-		if (selector == null || selector.getLength() == 0) {
-			return imageType;
-		}
-		ICSSSelectorItem item = selector.getItem(selector.getLength() - 1);
-		if (item.getItemType() == ICSSSelectorItem.SIMPLE) {
-			ICSSSimpleSelector ss = (ICSSSimpleSelector) item;
-			if (0 < ss.getNumOfIDs()) {
-				imageType = SELECTOR_ID;
-			} else if (0 < ss.getNumOfClasses()) {
-				imageType = SELECTOR_CLASS;
-			} else if (0 < ss.getNumOfPseudoNames()) {
-				imageType = SELECTOR_PSEUDO;
-			} else {
-				imageType = SELECTOR_TAG;
-			}
-		}
-		return imageType;
-	}
-
-	public static CSSImageType getImageType(String category) {
-		if (fCategoryMap == null) {
-			fCategoryMap = new HashMap();
-			fCategoryMap.put("aural", CATEGORY_AURAL); //$NON-NLS-1$
-			fCategoryMap.put("box", CATEGORY_BOX); //$NON-NLS-1$
-			fCategoryMap.put("colorandbackground", CATEGORY_COLORANDBACKGROUND); //$NON-NLS-1$
-			fCategoryMap.put("content", CATEGORY_CONTENT); //$NON-NLS-1$
-			fCategoryMap.put("font", CATEGORY_FONT); //$NON-NLS-1$
-			fCategoryMap.put("page", CATEGORY_PAGE); //$NON-NLS-1$
-			fCategoryMap.put("tables", CATEGORY_TABLES); //$NON-NLS-1$
-			fCategoryMap.put("text", CATEGORY_TEXT); //$NON-NLS-1$
-			fCategoryMap.put("ui", CATEGORY_UI); //$NON-NLS-1$
-			fCategoryMap.put("visual", CATEGORY_VISUAL); //$NON-NLS-1$
-		}
-		CSSImageType imageType = (CSSImageType) fCategoryMap.get(category);
-		return (imageType == null) ? CATEGORY_DEFAULT : imageType;
-	}
-
-	private static Map fCategoryMap = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPlugin.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPlugin.java
deleted file mode 100644
index b167722..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPlugin.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.internal;
-
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class CSSUIPlugin extends AbstractUIPlugin {
-	public final static String ID = "org.eclipse.wst.css.ui"; //$NON-NLS-1$
-	//The shared instance.
-	private static CSSUIPlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$	
-
-	/**
-	 * The constructor.
-	 */
-	public CSSUIPlugin() {
-		super();
-		plugin = this;
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static CSSUIPlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the workspace instance.
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-	
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String value) {
-		String s = value.trim();
-		if (!s.startsWith(KEY_PREFIX, 0))
-			return s;
-		if (s.startsWith(KEY_DOUBLE_PREFIX, 0))
-			return s.substring(1);
-
-		int ix = s.indexOf(' ');
-		String key = ix == -1 ? s : s.substring(0, ix);
-
-		ResourceBundle bundle = getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key.substring(1)) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getResourceString(String key, Object[] args) {
-
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (IllegalArgumentException e) {
-			return getResourceString(key);
-		}
-
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		try {
-			if (resourceBundle == null)
-				resourceBundle = ResourceBundle.getBundle("org.eclipse.wst.css.ui.internal.CSSUIPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties
deleted file mode 100644
index 049f6a1..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/CSSUIPluginResources.properties
+++ /dev/null
@@ -1,55 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-
-INFO_Not_Categorized_1=Not Categorized
-
-## CSS Preferences -- source ##
-PrefsLabel.WrappingWithoutAttr=Disable wrapping in style &attribute of HTML
-PrefsLabel.WrappingInsertLineBreak=Insert &line break between properties
-
-PrefsLabel.CaseGroup=Capitalization style
-PrefsLabel.CaseIdent=Identifier:
-PrefsLabel.CasePropName=Property name:
-PrefsLabel.CasePropValue=Property value:
-
-PrefsLabel.CaseIdentUpper=&Uppercase
-PrefsLabel.CaseIdentLower=L&owercase
-PrefsLabel.CasePropNameUpper=U&ppercase
-PrefsLabel.CasePropNameLower=Lo&wercase
-PrefsLabel.CasePropValueUpper=Upp&ercase
-PrefsLabel.CasePropValueLower=Lowe&rcase
-
-## CSS Preferences -- color ##
-
-## The following line is a sample CSS document.  Please translate only the following parts:   
-## Sample Styles
-PrefsLabel.ColorSample=@import url("../sample2.css");\n\n/* Sample Styles */\n\nBODY {\n\tcolor : black;\n\tbackground-color : rgb(181, 253, 211);\n\ttext-align : center;\n\tfont-family : "Heisei Mincho W3", serif\n}\n\n@page :left { margin-left : 4cm }\n\n@media aural {\n\tP.heidi {\n\t\tazimuth : center-left;\n\t\televation : 12.3deg;\n\t\tpause : 30ms 1.6s\n\t}\n}\n
-
-PrefsLabel.ColorNormal=Default
-PrefsLabel.ColorAtmarkRule=At-Rule
-PrefsLabel.ColorSelector=Selector
-PrefsLabel.ColorMedia=Media Name
-PrefsLabel.ColorComment=Comment
-PrefsLabel.ColorPropertyName=Property Name
-PrefsLabel.ColorPropertyValue=Property Value
-PrefsLabel.ColorUri=URI
-PrefsLabel.ColorString=Quoted String
-PrefsLabel.ColorColon=Property Delimiter
-PrefsLabel.ColorSemiColon=SemiColon
-PrefsLabel.ColorCurlyBrace=Curly Brace
-PrefsLabel.ColorError=Error
-#
-SortAction.0=Sort
-#
-_UI_WIZARD_NEW_TITLE = New Cascading Style Sheet
-_UI_WIZARD_NEW_HEADING = Cascading Style Sheet
-_UI_WIZARD_NEW_DESCRIPTION = Create a new CSS file.
-_ERROR_FILENAME_MUST_END_CSS = The file name must end in .css
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/Logger.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/Logger.java
deleted file mode 100644
index 5f3336b..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/Logger.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.internal;
-
-
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-/**
- * Small convenience class to log messages to plugin's log file and also, if
- * desired, the console. This class should only be used by classes in this
- * plugin. Other plugins should make their own copy, with appropriate ID.
- */
-public class Logger {
-	private static final String PLUGIN_ID = "org.eclipse.wst.css.ui"; //$NON-NLS-1$
-	
-	private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
-
-	public static final int OK = IStatus.OK; // 0
-	public static final int INFO = IStatus.INFO; // 1
-	public static final int WARNING = IStatus.WARNING; // 2
-	public static final int ERROR = IStatus.ERROR; // 4
-
-	public static final int OK_DEBUG = 200 + OK;
-	public static final int INFO_DEBUG = 200 + INFO;
-	public static final int WARNING_DEBUG = 200 + WARNING;
-	public static final int ERROR_DEBUG = 200 + ERROR;
-
-	/**
-	 * Adds message to log.
-	 * 
-	 * @param level
-	 *            severity level of the message (OK, INFO, WARNING, ERROR,
-	 *            OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
-	 * @param message
-	 *            text to add to the log
-	 * @param exception
-	 *            exception thrown
-	 */
-	protected static void _log(int level, String message, Throwable exception) {
-		if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
-			if (!isDebugging())
-				return;
-		}
-
-		int severity = IStatus.OK;
-		switch (level) {
-			case INFO_DEBUG :
-			case INFO :
-				severity = IStatus.INFO;
-				break;
-			case WARNING_DEBUG :
-			case WARNING :
-				severity = IStatus.WARNING;
-				break;
-			case ERROR_DEBUG :
-			case ERROR :
-				severity = IStatus.ERROR;
-		}
-		message = (message != null) ? message : "null"; //$NON-NLS-1$
-		Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null) 
-			Platform.getLog(bundle).log(statusObj);
-	}
-
-	/**
-	 * Prints message to log if category matches /debug/tracefilter option.
-	 * 
-	 * @param message
-	 *            text to print
-	 * @param category
-	 *            category of the message, to be compared with
-	 *            /debug/tracefilter
-	 */
-	protected static void _trace(String category, String message, Throwable exception) {
-		if (isTracing(category)) {
-			message = (message != null) ? message : "null"; //$NON-NLS-1$
-			Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
-			Bundle bundle = Platform.getBundle(PLUGIN_ID);
-			if (bundle != null) 
-				Platform.getLog(bundle).log(statusObj);
-		}
-	}
-
-	/**
-	 * @return true if the platform is debugging
-	 */
-	public static boolean isDebugging() {
-		return Platform.inDebugMode();
-	}
-	
-	/**
-	 * Determines if currently tracing a category
-	 * 
-	 * @param category
-	 * @return true if tracing category, false otherwise
-	 */
-	public static boolean isTracing(String category) {
-		if (!isDebugging())
-			return false;
-
-		String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
-		if (traceFilter != null) {
-			StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens()) {
-				String cat = tokenizer.nextToken().trim();
-				if (category.equals(cat)) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	public static void log(int level, String message) {
-		_log(level, message, null);
-	}
-
-	public static void log(int level, String message, Throwable exception) {
-		_log(level, message, exception);
-	}
-
-	public static void logException(String message, Throwable exception) {
-		_log(ERROR, message, exception);
-	}
-
-	public static void logException(Throwable exception) {
-		_log(ERROR, exception.getMessage(), exception);
-	}
-
-	public static void traceException(String category, String message, Throwable exception) {
-		_trace(category, message, exception);
-	}
-
-	public static void traceException(String category, Throwable exception) {
-		_trace(category, exception.getMessage(), exception);
-	}
-
-	public static void trace(String category, String message) {
-		_trace(category, message, null);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/editor/CSSEditorPluginImages.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/editor/CSSEditorPluginImages.java
deleted file mode 100644
index c7d179f..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/editor/CSSEditorPluginImages.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.internal.editor;
-
-
-/**
- * Bundle of most images used by the CSS Source Editor plug-in.
- */
-public class CSSEditorPluginImages {
-	public static final String IMG_OBJ_SORT = "icons/full/obj16/sort.gif"; //$NON-NLS-1$
-
-	public static final String IMG_OBJ_STYLESHEET = "icons/full/obj16/stylesheet.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_RULE_CHARSET = "icons/full/obj16/charset_rule.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_RULE_FONTFACE = "icons/full/obj16/fontface_rule.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_RULE_IMPORT = "icons/full/obj16/link_rule.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_RULE_MEDIA = "icons/full/obj16/media_rule.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_RULE_PAGE = "icons/full/obj16/page_rule.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_RULE_STYLE = "icons/full/obj16/style_rule.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_RULE_UNKNOWN = "icons/full/obj16/unknown_rule.gif"; //$NON-NLS-1$
-
-	public static final String IMG_OBJ_SELECTOR_CLASS = "icons/full/obj16/class_selector.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_SELECTOR_ID = "icons/full/obj16/id_selector.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_SELECTOR_PSEUDO = "icons/full/obj16/pseudo.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_SELECTOR_TAG = "icons/full/obj16/tag_selector.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_SELECTOR_LINK = "icons/full/obj16/link_selector.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_SELECTOR_DEFAULT = "icons/full/obj16/tag_selector.gif"; //$NON-NLS-1$
-
-	public static final String IMG_OBJ_VALUE_FUNCTION = "icons/full/obj16/css_propertyvalue_function.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_VALUE_NUMBER = "icons/full/obj16/css_propertyvalue_unit.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_VALUE_STRING = "icons/full/obj16/css_propertyvalue_identifier.gif"; //$NON-NLS-1$
-
-	public static final String IMG_OBJ_CATEGORY_AURAL = "icons/full/obj16/aural_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_BOX = "icons/full/obj16/boxmodel_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_COLORANDBACKGROUND = "icons/full/obj16/colback_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_CONTENT = "icons/full/obj16/content_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_FONT = "icons/full/obj16/font_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_PAGE = "icons/full/obj16/pagedmedia_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_TABLES = "icons/full/obj16/table_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_TEXT = "icons/full/obj16/text_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_UI = "icons/full/obj16/ui_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_VISUAL = "icons/full/obj16/visual_props.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CATEGORY_DEFAULT = "icons/full/obj16/other_props.gif"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/editor/IHelpContextIds.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/editor/IHelpContextIds.java
deleted file mode 100644
index d6a82a1..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/editor/IHelpContextIds.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.internal.editor;
-
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-
-/**
- * Help context ids for the CSS Source Editor.
- * <p>
- * This interface contains constants only; it is not intended to be
- * implemented.
- * </p>
- *  
- */
-public interface IHelpContextIds {
-	// org.eclipse.wst.css.ui.
-	public static final String PREFIX = CSSUIPlugin.ID + "."; //$NON-NLS-1$
-
-	// CSS Source page editor
-	public static final String CSS_SOURCEVIEW_HELPID = PREFIX + "ecss0000"; //$NON-NLS-1$
-
-	// CSS Files Preference page
-	public static final String CSS_PREFWEBX_FILES_HELPID = PREFIX + "webx0010"; //$NON-NLS-1$
-	// CSS Source Preference page
-	public static final String CSS_PREFWEBX_SOURCE_HELPID = PREFIX + "webx0011"; //$NON-NLS-1$
-	// CSS Styles Preference page
-	public static final String CSS_PREFWEBX_STYLES_HELPID = PREFIX + "webx0012"; //$NON-NLS-1$
-
-	// CSS Cleanup dialog
-	public static final String CSS_CLEANUP_HELPID = PREFIX + "xmlm1300"; //$NON-NLS-1$
-
-	// CSS Content Settings
-	public static final String CSS_CONTENT_SETTINGS_HELPID = PREFIX + "misc0180"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/CSSUIPreferenceInitializer.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/CSSUIPreferenceInitializer.java
deleted file mode 100644
index 3b1c00d..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/preferences/CSSUIPreferenceInitializer.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package org.eclipse.wst.css.ui.internal.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.style.IStyleConstantsCSS;
-import org.eclipse.wst.sse.ui.preferences.ui.ColorHelper;
-
-/**
- * Sets default values for CSS UI preferences
- */
-public class CSSUIPreferenceInitializer extends AbstractPreferenceInitializer {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
-	 */
-	public void initializeDefaultPreferences() {
-		IPreferenceStore store = CSSUIPlugin.getDefault().getPreferenceStore();
-		// CSS Style Preferences
-		String NOBACKGROUNDBOLD = " | null | false"; //$NON-NLS-1$
-		String styleValue = "null" + NOBACKGROUNDBOLD; //$NON-NLS-1$
-		store.setDefault(IStyleConstantsCSS.NORMAL, styleValue);
-
-		styleValue = ColorHelper.getColorString(63, 127, 127) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsCSS.ATMARK_RULE, styleValue);
-		store.setDefault(IStyleConstantsCSS.SELECTOR, styleValue);
-
-		styleValue = ColorHelper.getColorString(42, 0, 225) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsCSS.MEDIA, styleValue);
-
-		styleValue = ColorHelper.getColorString(63, 95, 191) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsCSS.COMMENT, styleValue);
-
-		styleValue = ColorHelper.getColorString(127, 0, 127) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsCSS.PROPERTY_NAME, styleValue);
-
-		styleValue = ColorHelper.getColorString(42, 0, 225) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsCSS.PROPERTY_VALUE, styleValue);
-		store.setDefault(IStyleConstantsCSS.URI, styleValue);
-		store.setDefault(IStyleConstantsCSS.STRING, styleValue);
-
-		styleValue = "null" + NOBACKGROUNDBOLD; //$NON-NLS-1$
-		store.setDefault(IStyleConstantsCSS.COLON, styleValue);
-		store.setDefault(IStyleConstantsCSS.SEMI_COLON, styleValue);
-		store.setDefault(IStyleConstantsCSS.CURLY_BRACE, styleValue);
-
-		styleValue = ColorHelper.getColorString(191, 63, 63) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsCSS.ERROR, styleValue);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionModelNodeAdapterCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionModelNodeAdapterCSS.java
deleted file mode 100644
index accb281..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionModelNodeAdapterCSS.java
+++ /dev/null
@@ -1,278 +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.css.ui.internal.projection;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotation;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotationModel;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.xml.ui.internal.Logger;
-
-/**
- * Updates projection annotation model with projection annotations for this
- * adapter node's children
- */
-public class ProjectionModelNodeAdapterCSS implements INodeAdapter {
-
-	private class TagProjectionAnnotation extends ProjectionAnnotation {
-		private boolean fIsVisible = false; /* workaround for BUG85874 */
-		private ICSSNode fNode;
-
-		public TagProjectionAnnotation(ICSSNode node, boolean isCollapsed) {
-			super(isCollapsed);
-			fNode = node;
-		}
-
-		public ICSSNode getNode() {
-			return fNode;
-		}
-
-		public void setNode(ICSSNode node) {
-			fNode = node;
-		}
-		/**
-		 * Does not paint hidden annotations. Annotations are hidden when they
-		 * only span one line.
-		 * 
-		 * @see ProjectionAnnotation#paint(org.eclipse.swt.graphics.GC,
-		 *      org.eclipse.swt.widgets.Canvas,
-		 *      org.eclipse.swt.graphics.Rectangle)
-		 */
-		public void paint(GC gc, Canvas canvas, Rectangle rectangle) {
-			/* workaround for BUG85874 */
-			/*
-			 * only need to check annotations that are expanded because hidden
-			 * annotations should never have been given the chance to
-			 * collapse.
-			 */
-			if (!isCollapsed()) {
-				// working with rectangle, so need the styledtext line height
-				int lineHeight = fAdapterFactory.getProjectionViewer().getTextWidget().getLineHeight();
-
-				// do not draw annotations that only span one line and mark
-				// them as not visible
-				if ((rectangle.height / lineHeight) <= 1) {
-					fIsVisible = false;
-					return;
-				}
-			}
-			fIsVisible = true;
-			super.paint(gc, canvas, rectangle);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jface.text.source.projection.ProjectionAnnotation#markCollapsed()
-		 */
-		public void markCollapsed() {
-			/* workaround for BUG85874 */
-			// do not mark collapsed if annotation is not visible
-			if (fIsVisible)
-				super.markCollapsed();
-		}
-	}
-
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.wst.css.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$\
-
-	ProjectionModelNodeAdapterFactoryCSS fAdapterFactory;
-	private Map fTagAnnotations = new HashMap();
-
-	public ProjectionModelNodeAdapterCSS(ProjectionModelNodeAdapterFactoryCSS factory) {
-		fAdapterFactory = factory;
-	}
-
-	/**
-	 * Create a projection position from the given node. Able to get
-	 * projection position if node isNodeProjectable.
-	 * 
-	 * @param node
-	 * @return null if no projection position possible, a Position otherwise
-	 */
-	private Position createProjectionPosition(ICSSNode node) {
-		Position pos = null;
-		if (isNodeProjectable(node) && node instanceof IndexedRegion) {
-			IDocument document = fAdapterFactory.getProjectionViewer().getDocument();
-			if (document != null) {
-				IndexedRegion inode = (IndexedRegion) node;
-				int start = inode.getStartOffset();
-				int end = inode.getEndOffset();
-				if (start >= 0 && start < end) {
-					try {
-//						// region-based
-//						// extra line when collapsed, but no region increase when add newline
-//						pos = new Position(start, end - start);
-						
-//						// line-based
-//						// extra line when collapsed, but no region increase when add newline
-//						IRegion startLineRegion = document.getLineInformationOfOffset(start);
-//						IRegion endLineRegion = document.getLineInformationOfOffset(end);
-//						int startOffset = startLineRegion.getOffset();
-//						int endOffset = endLineRegion.getOffset() + endLineRegion.getLength();
-//						if (endOffset > startOffset) {
-//							pos = new Position(startOffset, endOffset - startOffset);
-//						}
-						
-						// line-based
-						// no extra line when collapsed, but region increase when add newline
-						int startLine = document.getLineOfOffset(start);
-						int endLine = document.getLineOfOffset(end);
-						if (endLine + 1 < document.getNumberOfLines()) {
-							int offset = document.getLineOffset(startLine);
-							int endOffset = document.getLineOffset(endLine + 1);
-							pos = new Position(offset, endOffset - offset);
-						}
-					} catch (BadLocationException x) {
-						Logger.log(Logger.WARNING_DEBUG, null, x);
-					}
-				}
-			}
-		}
-		return pos;
-	}
-
-	/**
-	 * Find TagProjectionAnnotation for node in the current list of projection
-	 * annotations for this adapter
-	 * 
-	 * @param node
-	 * @return TagProjectionAnnotation
-	 */
-	private TagProjectionAnnotation getExistingAnnotation(ICSSNode node) {
-		TagProjectionAnnotation anno = null;
-
-		if ((node != null) && (!fTagAnnotations.isEmpty())) {
-			Iterator it = fTagAnnotations.keySet().iterator();
-			while (it.hasNext() && anno == null) {
-				TagProjectionAnnotation a = (TagProjectionAnnotation) it.next();
-				ICSSNode n = a.getNode();
-				if (node.equals(n)) {
-					anno = a;
-				}
-			}
-		}
-		return anno;
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return type == ProjectionModelNodeAdapterCSS.class;
-	}
-
-	/**
-	 * Returns true if node is a node type able to fold
-	 * 
-	 * @param node
-	 * @return boolean true if node is projectable, false otherwise
-	 */
-	private boolean isNodeProjectable(ICSSNode node) {
-		if (node != null) {
-			short type = node.getNodeType();
-			if (type == ICSSNode.STYLERULE_NODE || type == ICSSNode.PAGERULE_NODE || type == ICSSNode.MEDIARULE_NODE || type == ICSSNode.IMPORTRULE_NODE || type == ICSSNode.FONTFACERULE_NODE || type == ICSSNode.CHARSETRULE_NODE)
-				return true;
-		}
-		return false;
-	}
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		// check if folding is even enabled, if not, just ignore notifyChanged
-		// events
-		if (fAdapterFactory.getProjectionViewer() == null) {
-			return;
-		}
-
-		// workaround for Bug85342 - STRUCTRE_CHANGED is never fired so need
-		// to listen for every ADD, REMOVE
-		// if ((eventType == INodeNotifier.STRUCTURE_CHANGED) && (notifier
-		// instanceof ICSSNode)) {
-		if ((eventType == INodeNotifier.ADD || eventType == INodeNotifier.REMOVE) && (notifier instanceof ICSSNode)) {
-			updateAdapter((ICSSNode) notifier);
-		}
-	}
-
-	/**
-	 * Update the projection annotation of all the nodes that are children of
-	 * node
-	 * 
-	 * @param node
-	 */
-	void updateAdapter(ICSSNode node) {
-		long start = System.currentTimeMillis();
-
-		Map additions = new HashMap();
-		Map projectionAnnotations = new HashMap();
-
-		// go through immediate child nodes and figure out projection
-		// model annotations
-		if (node != null) {
-			ICSSNode childNode = node.getFirstChild();
-			while (childNode != null) {
-				Position newPos = createProjectionPosition(childNode);
-				if (newPos != null) {
-					TagProjectionAnnotation newAnnotation = new TagProjectionAnnotation(childNode, false);
-					TagProjectionAnnotation existing = getExistingAnnotation(childNode);
-					if (existing == null) {
-						// add to map containing all annotations for this
-						// adapter
-						projectionAnnotations.put(newAnnotation, newPos);
-						// add to map containing annotations to add
-						additions.put(newAnnotation, newPos);
-					} else {
-						// add to map containing all annotations for this
-						// adapter
-						projectionAnnotations.put(existing, newPos);
-						// remove from map containing annotations to delete
-						fTagAnnotations.remove(existing);
-					}
-				}
-				childNode = childNode.getNextSibling();
-			}
-
-			// in the end, want to delete anything leftover in old list, add
-			// everything in additions, and update everything in
-			// projectionAnnotations
-			ProjectionAnnotation[] oldList = null;
-			if (!fTagAnnotations.isEmpty()) {
-				oldList = (ProjectionAnnotation[]) fTagAnnotations.keySet().toArray(new ProjectionAnnotation[0]);
-			}
-			ProjectionAnnotation[] modifyList = null;
-			if (!projectionAnnotations.isEmpty()) {
-				modifyList = (ProjectionAnnotation[]) projectionAnnotations.keySet().toArray(new ProjectionAnnotation[0]);
-			}
-			ProjectionViewer viewer = fAdapterFactory.getProjectionViewer();
-			ProjectionAnnotationModel annotationModel = viewer.getProjectionAnnotationModel();
-			annotationModel.modifyAnnotations(oldList, additions, modifyList);
-		}
-
-		// save new list of annotations
-		fTagAnnotations = additions;
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf) {
-			String nodeName = node != null ? node.toString() : "null";
-			System.out.println("ProjectionModelNodeAdapterCSS.updateAdapter (" + nodeName + "):" + (end - start));
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionModelNodeAdapterFactoryCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionModelNodeAdapterFactoryCSS.java
deleted file mode 100644
index 01230e0..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/ProjectionModelNodeAdapterFactoryCSS.java
+++ /dev/null
@@ -1,61 +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.css.ui.internal.projection;
-
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-
-public class ProjectionModelNodeAdapterFactoryCSS extends AbstractAdapterFactory {
-	private ProjectionViewer fProjectionViewer;
-
-	public ProjectionModelNodeAdapterFactoryCSS() {
-		adapterKey = ProjectionModelNodeAdapterCSS.class;
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		ProjectionModelNodeAdapterCSS adapter = null;
-
-		if ((fProjectionViewer != null) && (target instanceof ICSSNode)) {
-			ICSSNode node = (ICSSNode) target;
-			short type = node.getNodeType();
-			// only add for top stylesheet node
-			if (type == ICSSNode.STYLESHEET_NODE) {
-				adapter = new ProjectionModelNodeAdapterCSS(this);
-				adapter.updateAdapter(node);
-			}
-		}
-
-		return adapter;
-	}
-
-	ProjectionViewer getProjectionViewer() {
-		return fProjectionViewer;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.AbstractAdapterFactory#release()
-	 */
-	public void release() {
-		fProjectionViewer = null;
-
-		super.release();
-	}
-
-	void setProjectionViewer(ProjectionViewer viewer) {
-		fProjectionViewer = viewer;
-	}
-}
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/StructuredTextFoldingProviderCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/StructuredTextFoldingProviderCSS.java
deleted file mode 100644
index caada97..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/projection/StructuredTextFoldingProviderCSS.java
+++ /dev/null
@@ -1,167 +0,0 @@
-package org.eclipse.wst.css.ui.internal.projection;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.source.projection.IProjectionListener;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.css.core.document.ICSSDocument;
-import org.eclipse.wst.css.core.document.ICSSModel;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.projection.IStructuredTextFoldingProvider;
-
-/**
- * Updates the projection model of a structured model for CSS.
- */
-public class StructuredTextFoldingProviderCSS implements IStructuredTextFoldingProvider, IProjectionListener {
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.wst.css.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$\
-
-	private IDocument fDocument;
-	private ProjectionViewer fViewer;
-
-	/**
-	 * Just add adapter to top stylesheet node. This adapter will track
-	 * children addition/deletion.
-	 */
-	private void addAllAdapters() {
-		long start = System.currentTimeMillis();
-
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel instanceof ICSSModel) {
-				ICSSModel cssModel = (ICSSModel) sModel;
-				ICSSDocument cssDoc = cssModel.getDocument();
-				if (cssDoc instanceof INodeNotifier) {
-					INodeNotifier notifier = (INodeNotifier) cssDoc;
-					ProjectionModelNodeAdapterCSS adapter = (ProjectionModelNodeAdapterCSS) notifier.getExistingAdapter(ProjectionModelNodeAdapterCSS.class);
-					if (adapter != null) {
-						adapter.updateAdapter(cssDoc);
-					}
-					else {
-						// just call getadapter so the adapter is created and
-						// automatically initialized
-						notifier.getAdapterFor(ProjectionModelNodeAdapterCSS.class);
-					}
-				}
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderCSS.addAllAdapters: " + (end - start));
-	}
-
-	/**
-	 * Get the ProjectionModelNodeAdapterFactoryCSS to use with this provider.
-	 * 
-	 * @return ProjectionModelNodeAdapterFactoryCSS
-	 */
-	private ProjectionModelNodeAdapterFactoryCSS getAdapterFactory(boolean createIfNeeded) {
-		ProjectionModelNodeAdapterFactoryCSS factory = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel != null) {
-				FactoryRegistry factoryRegistry = sModel.getFactoryRegistry();
-
-				// getting the projectionmodelnodeadapter for the first time
-				// so do some initializing
-				if (!factoryRegistry.contains(ProjectionModelNodeAdapterCSS.class) && createIfNeeded) {
-					ProjectionModelNodeAdapterFactoryCSS newFactory = new ProjectionModelNodeAdapterFactoryCSS();
-
-					// add factory to factory registry
-					factoryRegistry.addFactory(newFactory);
-				}
-
-				// try and get the factory
-				factory = (ProjectionModelNodeAdapterFactoryCSS) factoryRegistry.getFactoryFor(ProjectionModelNodeAdapterCSS.class);
-			}
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-		return factory;
-	}
-
-	/**
-	 * Initialize this provider with the correct document. Assumes projection
-	 * is enabled. (otherwise, only install would have been called)
-	 */
-	public void initialize() {
-		if (!isInstalled())
-			return;
-
-		// set projection viewer to null on old document's adapter factory
-		ProjectionModelNodeAdapterFactoryCSS factory = getAdapterFactory(false);
-		if (factory != null) {
-			factory.setProjectionViewer(null);
-		}
-
-		// clear out all annotations
-		if (fViewer.getProjectionAnnotationModel() != null)
-			fViewer.getProjectionAnnotationModel().removeAllAnnotations();
-		fDocument = fViewer.getDocument();
-
-		if (fDocument != null) {
-			// set projection viewer on new document's adapter factory
-			factory = getAdapterFactory(true);
-			if (factory != null) {
-				factory.setProjectionViewer(fViewer);
-			}
-
-			addAllAdapters();
-		}
-	}
-
-	/**
-	 * Associate a ProjectionViewer with this IStructuredTextFoldingProvider
-	 * 
-	 * @param viewer
-	 */
-	public void install(ProjectionViewer viewer) {
-		// uninstall before trying to install new viewer
-		if (isInstalled()) {
-			uninstall();
-		}
-		fViewer = viewer;
-		fViewer.addProjectionListener(this);
-	}
-
-	private boolean isInstalled() {
-		return fViewer != null;
-	}
-
-	public void projectionDisabled() {
-		ProjectionModelNodeAdapterFactoryCSS factory = getAdapterFactory(false);
-		if (factory != null) {
-			factory.setProjectionViewer(null);
-		}
-
-		fDocument = null;
-	}
-
-	public void projectionEnabled() {
-		initialize();
-	}
-
-	/**
-	 * Disconnect this IStructuredTextFoldingProvider from projection viewer
-	 */
-	public void uninstall() {
-		if (isInstalled()) {
-			projectionDisabled();
-
-			fViewer.removeProjectionListener(this);
-			fViewer = null;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectCSSAction.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectCSSAction.java
deleted file mode 100644
index 4e3302d..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectCSSAction.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.internal.selection;
-
-import org.eclipse.jface.text.Region;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.selection.SelectionHistory;
-import org.eclipse.wst.sse.ui.internal.selection.StructureSelectAction;
-
-public abstract class StructureSelectCSSAction extends StructureSelectAction {
-	public StructureSelectCSSAction(StructuredTextEditor editor, SelectionHistory history) {
-		super(editor, history);
-	}
-
-	public void run() {
-		Region currentRegion = new Region(fViewer.getSelectedRange().x, fViewer.getSelectedRange().y);
-		if (currentRegion.getLength() == fViewer.getDocument().getLength())
-			return;
-
-		IndexedRegion cursorIndexedRegion = getCursorIndexedRegion();
-		if (cursorIndexedRegion instanceof ICSSNode) {
-			ICSSNode cursorNode = (ICSSNode) cursorIndexedRegion;
-
-			Region cursorNodeRegion = new Region(cursorIndexedRegion.getStartOffset(), cursorIndexedRegion.getEndOffset() - cursorIndexedRegion.getStartOffset());
-
-			Region newRegion = null;
-			if (cursorNodeRegion.getOffset() >= currentRegion.getOffset() && cursorNodeRegion.getOffset() <= currentRegion.getOffset() + currentRegion.getLength() && cursorNodeRegion.getOffset() + cursorNodeRegion.getLength() >= currentRegion.getOffset() && cursorNodeRegion.getOffset() + cursorNodeRegion.getLength() <= currentRegion.getOffset() + currentRegion.getLength())
-				newRegion = getNewSelectionRegion(cursorNode, currentRegion);
-			else
-				newRegion = cursorNodeRegion;
-
-			if (newRegion != null) {
-				fHistory.remember(currentRegion);
-				try {
-					fHistory.ignoreSelectionChanges();
-					fEditor.selectAndReveal(newRegion.getOffset(), newRegion.getLength());
-				} finally {
-					fHistory.listenToSelectionChanges();
-				}
-			}
-		}
-	}
-
-	abstract protected Region getNewSelectionRegion(ICSSNode node, Region region);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectEnclosingCSSAction.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectEnclosingCSSAction.java
deleted file mode 100644
index 2e506b1..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectEnclosingCSSAction.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.internal.selection;
-
-import org.eclipse.jface.text.Region;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.selection.SelectionHistory;
-import org.w3c.dom.Node;
-
-public class StructureSelectEnclosingCSSAction extends StructureSelectCSSAction {
-	public StructureSelectEnclosingCSSAction(StructuredTextEditor editor, SelectionHistory history) {
-		super(editor, history);
-		setText(SSEUIPlugin.getResourceString("%StructureSelectEnclosing.label")); //$NON-NLS-1$
-		setToolTipText(SSEUIPlugin.getResourceString("%StructureSelectEnclosing.tooltip")); //$NON-NLS-1$
-		setDescription(SSEUIPlugin.getResourceString("%StructureSelectEnclosing.description")); //$NON-NLS-1$
-	}
-
-	protected IndexedRegion getCursorIndexedRegion() {
-		return getIndexedRegion(fViewer.getSelectedRange().x);
-	}
-
-	protected Region getNewSelectionRegion(Node node, Region region) {
-		return null;
-	}
-
-	protected Region getNewSelectionRegion(ICSSNode node, Region region) {
-		Region newRegion = null;
-
-		ICSSNode newNode = node.getParentNode();
-
-		if (newNode instanceof IndexedRegion) {
-			IndexedRegion newIndexedRegion = (IndexedRegion) newNode;
-			newRegion = new Region(newIndexedRegion.getStartOffset(), newIndexedRegion.getEndOffset() - newIndexedRegion.getStartOffset());
-		}
-
-		return newRegion;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectNextCSSAction.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectNextCSSAction.java
deleted file mode 100644
index f45f491..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectNextCSSAction.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.internal.selection;
-
-import org.eclipse.jface.text.Region;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.selection.SelectionHistory;
-import org.w3c.dom.Node;
-
-public class StructureSelectNextCSSAction extends StructureSelectCSSAction {
-	public StructureSelectNextCSSAction(StructuredTextEditor editor, SelectionHistory history) {
-		super(editor, history);
-		setText(SSEUIPlugin.getResourceString("%StructureSelectNext.label")); //$NON-NLS-1$
-		setToolTipText(SSEUIPlugin.getResourceString("%StructureSelectNext.tooltip")); //$NON-NLS-1$
-		setDescription(SSEUIPlugin.getResourceString("%StructureSelectNext.description")); //$NON-NLS-1$
-	}
-
-	protected IndexedRegion getCursorIndexedRegion() {
-		int offset = fViewer.getSelectedRange().x + fViewer.getSelectedRange().y - 1;
-
-		if (offset < 0)
-			offset = 0;
-
-		return getIndexedRegion(offset);
-	}
-
-	protected Region getNewSelectionRegion(Node node, Region region) {
-		return null;
-	}
-
-	protected Region getNewSelectionRegion(ICSSNode node, Region region) {
-		Region newRegion = null;
-
-		ICSSNode newNode = node.getNextSibling();
-		if (newNode == null) {
-			newNode = node.getParentNode();
-
-			if (newNode instanceof IndexedRegion) {
-				IndexedRegion newIndexedRegion = (IndexedRegion) newNode;
-				newRegion = new Region(newIndexedRegion.getStartOffset(), newIndexedRegion.getEndOffset() - newIndexedRegion.getStartOffset());
-			}
-		} else {
-			if (newNode instanceof IndexedRegion) {
-				IndexedRegion newIndexedRegion = (IndexedRegion) newNode;
-				newRegion = new Region(region.getOffset(), newIndexedRegion.getEndOffset() - region.getOffset());
-			}
-		}
-
-		return newRegion;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectPreviousCSSAction.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectPreviousCSSAction.java
deleted file mode 100644
index 52101d2..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/selection/StructureSelectPreviousCSSAction.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.internal.selection;
-
-import org.eclipse.jface.text.Region;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.selection.SelectionHistory;
-import org.w3c.dom.Node;
-
-public class StructureSelectPreviousCSSAction extends StructureSelectCSSAction {
-	public StructureSelectPreviousCSSAction(StructuredTextEditor editor, SelectionHistory history) {
-		super(editor, history);
-		setText(SSEUIPlugin.getResourceString("%StructureSelectPrevious.label")); //$NON-NLS-1$
-		setToolTipText(SSEUIPlugin.getResourceString("%StructureSelectPrevious.tooltip")); //$NON-NLS-1$
-		setDescription(SSEUIPlugin.getResourceString("%StructureSelectPrevious.description")); //$NON-NLS-1$
-	}
-
-	protected IndexedRegion getCursorIndexedRegion() {
-		return getIndexedRegion(fViewer.getSelectedRange().x);
-	}
-
-	protected Region getNewSelectionRegion(Node node, Region region) {
-		return null;
-	}
-
-	protected Region getNewSelectionRegion(ICSSNode node, Region region) {
-		Region newRegion = null;
-
-		ICSSNode newNode = node.getPreviousSibling();
-		if (newNode == null) {
-			newNode = node.getParentNode();
-
-			if (newNode instanceof IndexedRegion) {
-				IndexedRegion newIndexedRegion = (IndexedRegion) newNode;
-				newRegion = new Region(newIndexedRegion.getStartOffset(), newIndexedRegion.getEndOffset() - newIndexedRegion.getStartOffset());
-			}
-		} else {
-			if (newNode instanceof IndexedRegion) {
-				IndexedRegion newIndexedRegion = (IndexedRegion) newNode;
-				newRegion = new Region(newIndexedRegion.getStartOffset(), region.getOffset() + region.getLength() - newIndexedRegion.getStartOffset());
-			}
-		}
-
-		return newRegion;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/NewCSSWizard.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/NewCSSWizard.java
deleted file mode 100644
index 5662eec..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/internal/wizard/NewCSSWizard.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package org.eclipse.wst.css.ui.internal.wizard;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.Logger;
-
-public class NewCSSWizard extends Wizard implements INewWizard {
-	static String PAGE_IMAGE = "/icons/full/wizban/newcssfile_wiz.gif";
-	private WizardNewFileCreationPage fNewFilePage;
-	private IStructuredSelection fSelection;
-
-	public void addPages() {
-		fNewFilePage = new WizardNewFileCreationPage("CSSWizardNewFileCreationPage", new StructuredSelection(IDE.computeSelectedResources(fSelection))) {
-			protected boolean validatePage() {
-				IPath handlePath = new Path(getFileName());
-				String extension = handlePath.getFileExtension();
-				if (extension == null || !extension.equalsIgnoreCase("css")) {
-					setErrorMessage(CSSUIPlugin.getResourceString("%_ERROR_FILENAME_MUST_END_CSS"));
-					return false;
-				}
-				setErrorMessage(null);
-				return super.validatePage();
-			}
-		};
-		fNewFilePage.setTitle(CSSUIPlugin.getResourceString("%_UI_WIZARD_NEW_HEADING"));
-		fNewFilePage.setDescription(CSSUIPlugin.getResourceString("%_UI_WIZARD_NEW_DESCRIPTION"));
-
-		addPage(fNewFilePage);
-	}
-
-	public void init(IWorkbench aWorkbench, IStructuredSelection aSelection) {
-		fSelection = aSelection;
-		setWindowTitle(CSSUIPlugin.getResourceString("%_UI_WIZARD_NEW_TITLE"));
-		if (PAGE_IMAGE != null) {
-			ImageDescriptor descriptor = CSSUIPlugin.getDefault().getImageRegistry().getDescriptor(PAGE_IMAGE);
-			if (descriptor == null) {
-				descriptor = ImageDescriptor.createFromURL(CSSUIPlugin.getDefault().getBundle().getEntry(PAGE_IMAGE));
-				CSSUIPlugin.getDefault().getImageRegistry().put(PAGE_IMAGE, descriptor);
-			}
-			setDefaultPageImageDescriptor(descriptor);
-		}
-	}
-
-	private void openEditor(final IFile file) {
-		if (file != null) {
-			getShell().getDisplay().asyncExec(new Runnable() {
-				public void run() {
-					try {
-						IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-						IDE.openEditor(page, file, true);
-					}
-					catch (PartInitException e) {
-						Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-					}
-				}
-			});
-		}
-	}
-
-	public boolean performFinish() {
-		IFile file = fNewFilePage.createNewFile();
-		openEditor(file);
-		return true;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/CSSPreferenceManager.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/CSSPreferenceManager.java
deleted file mode 100644
index cb46227..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/CSSPreferenceManager.java
+++ /dev/null
@@ -1,184 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.preferences;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.sse.ui.preferences.PreferenceManager;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * @deprecated preference management has moved to base preferences
- */
-public class CSSPreferenceManager extends PreferenceManager {
-
-	private static CSSPreferenceManager fInstance = null;
-	//
-	private final static String GROUP_COLOR = "color";//$NON-NLS-1$
-	private final static String COLOR_ENABLED = "useColor";//$NON-NLS-1$
-	//
-	private final static String GROUP_ASSIST = "contentAssist"; //$NON-NLS-1$
-	private final static String ASSIST_CATEGORIZE = "categorize"; //$NON-NLS-1$
-
-	protected Document fallbackDocument = null;
-
-	/**
-	 *  
-	 */
-	protected CSSPreferenceManager() {
-		super();
-	}
-
-	/**
-	 *  
-	 */
-	public Document createDefaultPreferences() {
-		Document doc = super.createDefaultPreferences();
-		if (doc == null) {
-			return doc;
-		}
-
-		Node preference = doc.getFirstChild();
-
-		Element color = doc.createElement(GROUP_COLOR);
-		setBooleanAttribute(color, COLOR_ENABLED, true);
-		preference.appendChild(color);
-
-		Element contentAssist = doc.createElement(GROUP_ASSIST);
-		setBooleanAttribute(contentAssist, ASSIST_CATEGORIZE, true);
-		preference.appendChild(contentAssist);
-
-		return doc;
-	}
-
-	public boolean getContentAssistCategorize() {
-		return getBooleanAttribute(getGroupElement(GROUP_ASSIST), ASSIST_CATEGORIZE);
-	}
-
-	public void setContentAssistCategorize(boolean categorize) {
-		setBooleanAttribute(getGroupElement(GROUP_ASSIST), ASSIST_CATEGORIZE, categorize);
-	}
-
-	/**
-	 *  
-	 */
-	protected boolean getBooleanAttribute(Element element, String name) {
-		String str = element.getAttribute(name);
-		if (str == null || str.length() <= 0) {
-			element = getDefaultGroupElement(element.getTagName());
-			if (element != null)
-				str = element.getAttribute(name);
-		}
-		return (str == null) ? false : str.equals(Boolean.TRUE.toString());
-	}
-
-	/**
-	 *  
-	 */
-	public boolean getColorEnabled() {
-		return getBooleanAttribute(getGroupElement(GROUP_COLOR), COLOR_ENABLED);
-	}
-
-	/**
-	 *  
-	 */
-	protected String getFilename() {
-		if (fileName == null) {
-			fileName = Platform.getStateLocation(Platform.getBundle("org.eclipse.wst.sse.core")).toString() + "/cssprefs.xml";//$NON-NLS-1$ //$NON-NLS-2$
-		}
-		return fileName;
-	}
-
-	/**
-	 *  
-	 */
-	protected Element getGroupElement(String name) {
-		Node node = getNamedChild(getRootElement(), name);
-		return (node instanceof Element) ? (Element) node : getDefaultGroupElement(name);
-	}
-
-	/**
-	 *  
-	 */
-	protected Element getDefaultGroupElement(String name) {
-		Node node = getNamedChild(getDefaultRootElement(), name);
-		return (node instanceof Element) ? (Element) node : null;
-	}
-
-	/**
-	 *  
-	 */
-	protected Node getDefaultRootElement() {
-		if (fallbackDocument == null)
-			fallbackDocument = createDefaultPreferences();
-		return getRootElement(fallbackDocument);
-	}
-
-	/**
-	 *  
-	 */
-	public synchronized static CSSPreferenceManager getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSPreferenceManager();
-		}
-		return fInstance;
-	}
-
-	/**
-	 *  
-	 */
-	protected int getIntAttribute(Element element, String name) {
-		int value = 0;
-		try {
-			value = Integer.parseInt(element.getAttribute(name));
-		} catch (NumberFormatException e) {
-			element = getDefaultGroupElement(element.getTagName());
-			try {
-				value = Integer.parseInt(element.getAttribute(name));
-			} catch (NumberFormatException ee) {
-			}
-		}
-		return value;
-	}
-
-	/**
-	 *  
-	 */
-	protected String getStringAttribute(Element element, String name) {
-		if (element.getAttributeNode(name) == null) {
-			element = getDefaultGroupElement(element.getTagName());
-		}
-		return element.getAttribute(name);
-	}
-
-	/**
-	 *  
-	 */
-	protected void setBooleanAttribute(Element element, String name, boolean value) {
-		element.setAttribute(name, new Boolean(value).toString());
-	}
-
-	/**
-	 *  
-	 */
-	public void setColorEnabled(boolean enabled) {
-		setBooleanAttribute(getGroupElement(GROUP_COLOR), COLOR_ENABLED, enabled);
-	}
-
-	/**
-	 *  
-	 */
-	protected void setStringAttribute(Element element, String name, String value) {
-		element.setAttribute(name, value);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSColorManager.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSColorManager.java
deleted file mode 100644
index 2b68638..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSColorManager.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.preferences.ui;
-
-
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.wst.css.ui.internal.Logger;
-import org.eclipse.wst.css.ui.style.IStyleConstantsCSS;
-import org.eclipse.wst.sse.ui.preferences.PreferenceManager;
-import org.eclipse.wst.sse.ui.preferences.ui.ColorNames;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * @deprecated color preference management has moved to base preferences
- */
-public class CSSColorManager extends PreferenceManager {
-
-	private static CSSColorManager fInstance = null;
-	// highlighting types
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String NORMAL = "NORMAL";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String ATMARK_RULE = "ATMARK_RULE";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String SELECTOR = "SELECTOR";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String MEDIA = "MEDIA"; //$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String COMMENT = "COMMENT";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String PROPERTY_NAME = "PROPERTY_NAME";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String PROPERTY_VALUE = "PROPERTY_VALUE";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String URI = "URI";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String STRING = "STRING";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String COLON = "COLON";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String SEMI_COLON = "SEMI_COLON";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String CURLY_BRACE = "CURLY_BRACE";//$NON-NLS-1$
-	/** @deprecated use IStyleConstantsCSS instead TODO remove in C5 or earlier */
-	public static final String ERROR = "ERROR";//$NON-NLS-1$
-	// names for preference elements ... non-NLS
-	public static final String FOREGROUND = "foreground";//$NON-NLS-1$
-	public static final String BACKGROUND = "background";//$NON-NLS-1$
-	public static final String BOLD = "bold";//$NON-NLS-1$
-	public static final String ITALIC = "italic";//$NON-NLS-1$
-	public static final String NAME = "name";//$NON-NLS-1$
-	public static final String COLOR = "color";//$NON-NLS-1$
-
-	private CSSColorManager() {
-		super();
-	}
-
-	protected Element addColor(Node colors, String name, String foreground, String background) {
-		Element newColor = newColor(colors.getOwnerDocument(), name, foreground, background);
-		colors.appendChild(newColor);
-		return newColor;
-	}
-
-	/**
-	 * <!ELEMENT colors (color) > <!ELEMENT color EMPTY > <!ATTLIST color name
-	 * CDATA #REQUIRED foreground CDATA #IMPLIED background CDATA #IMPLIED
-	 * bold CDATA #REQUIRED >
-	 *  
-	 */
-	public Document createDefaultPreferences() {
-		Document prefDocument = super.createDefaultPreferences();
-		if (prefDocument == null)
-			return prefDocument;
-
-		while (prefDocument.getChildNodes().getLength() > 0)
-			prefDocument.removeChild(prefDocument.getLastChild());
-		Element colors = prefDocument.createElement(getRootElementName());
-		prefDocument.appendChild(colors);
-
-		// current as of 2001-8-13
-		addColor(colors, IStyleConstantsCSS.NORMAL, null, null);
-		addColor(colors, IStyleConstantsCSS.ATMARK_RULE, getColorString(63, 127, 127), null);
-		addColor(colors, IStyleConstantsCSS.SELECTOR, getColorString(63, 127, 127), null);
-		addColor(colors, IStyleConstantsCSS.MEDIA, getColorString(42, 0, 225), null);
-		addColor(colors, IStyleConstantsCSS.COMMENT, getColorString(63, 95, 191), null);
-		addColor(colors, IStyleConstantsCSS.PROPERTY_NAME, getColorString(127, 0, 127), null);
-		addColor(colors, IStyleConstantsCSS.PROPERTY_VALUE, getColorString(42, 0, 225), null);
-		addColor(colors, IStyleConstantsCSS.URI, getColorString(42, 0, 225), null);
-		addColor(colors, IStyleConstantsCSS.STRING, getColorString(42, 0, 225), null);
-		addColor(colors, IStyleConstantsCSS.COLON, null, null);
-		addColor(colors, IStyleConstantsCSS.SEMI_COLON, null, null);
-		addColor(colors, IStyleConstantsCSS.CURLY_BRACE, null, null);
-		addColor(colors, IStyleConstantsCSS.ERROR, getColorString(191, 63, 63), null);
-
-		return prefDocument;
-	}
-
-	public RGB getBackgroundRGB(String name) {
-		Element element = getColorElement(name);
-		if (element != null) {
-			return getRGB(element.getAttribute(BACKGROUND));
-		} else {
-			return new RGB(255, 255, 255);
-		}
-	}
-
-	private Element getColorElement(String name) {
-		Node colorsElement = getRootElement();
-		NodeList colors = colorsElement.getChildNodes();
-		for (int i = 0; i < colors.getLength(); i++) {
-			Node node = colors.item(i);
-			if (node.getNodeType() == Node.ELEMENT_NODE && ((Element) node).getAttribute(NAME).equals(name)) {
-				return (Element) node;
-			}
-		}
-		return null;
-	}
-
-	public static String getColorString(int r, int g, int b) {
-		return "#" + getHexString(r, 2) + getHexString(g, 2) + getHexString(b, 2);//$NON-NLS-1$
-	}
-
-	public String getFilename() {
-		if (fileName == null) {
-			fileName = Platform.getStateLocation(Platform.getBundle("org.eclipse.sse.core")).toString() + "/csssourcecolors.xml";//$NON-NLS-1$ //$NON-NLS-2$  
-		}
-		return fileName;
-	}
-
-	public RGB getForegroundRGB(String name) {
-		Element element = getColorElement(name);
-		if (element != null) {
-			return getRGB(element.getAttribute(FOREGROUND));
-		} else {
-			return new RGB(0, 0, 0);
-		}
-	}
-
-	public static String getHexString(int value, int minWidth) {
-		String hexString = Integer.toHexString(value);
-		for (int i = hexString.length(); i < minWidth; i++) {
-			hexString = "0" + hexString;//$NON-NLS-1$
-		}
-		return hexString;
-	}
-
-	public synchronized static CSSColorManager getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSColorManager();
-		}
-		return fInstance;
-	}
-
-	private RGB getRGB(String rgbStr) {
-		RGB result = null;
-		if (6 < rgbStr.length() && rgbStr.charAt(0) == '#') {
-			try {
-				int r = Integer.valueOf(rgbStr.substring(1, 3), 16).intValue();
-				int g = Integer.valueOf(rgbStr.substring(3, 5), 16).intValue();
-				int b = Integer.valueOf(rgbStr.substring(5, 7), 16).intValue();
-				result = new RGB(r, g, b);
-			} catch (NumberFormatException e) {
-				Logger.logException("Invalid color string " + rgbStr, e); //$NON-NLS-1$
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * The intended name for the root Element of the Document; what is also
-	 * listed within the DOCTYPE declaration.
-	 * 
-	 * @return String
-	 */
-	public String getRootElementName() {
-		return ColorNames.COLORS;
-	}
-
-	public int getStyle(String name) {
-		int style = SWT.NORMAL;
-		Element element = getColorElement(name);
-		if (element != null) {
-			if (Boolean.valueOf(element.getAttribute(BOLD)).booleanValue()) {
-				style |= SWT.BOLD;
-			}
-			if (Boolean.valueOf(element.getAttribute(ITALIC)).booleanValue()) {
-				style |= SWT.ITALIC;
-			}
-		}
-		return style;
-	}
-
-	protected Element newColor(Document doc, String name, String foreground, String background) {
-		if (doc == null || name == null || name.length() < 1)
-			return null;
-		Element newColor = doc.createElement(ColorNames.COLOR);
-		newColor.setAttribute(ColorNames.NAME, name);
-		if (foreground != null)
-			newColor.setAttribute(ColorNames.FOREGROUND, foreground);
-		if (background != null)
-			newColor.setAttribute(ColorNames.BACKGROUND, background);
-		return newColor;
-	}
-
-	protected Element newColor(Document doc, String name, String foreground, String background, boolean bold, boolean italic) {
-		Element newColor = newColor(doc, name, foreground, background);
-		if (newColor == null)
-			return null;
-		newColor.setAttribute(ColorNames.BOLD, String.valueOf(bold));
-		newColor.setAttribute(ColorNames.ITALIC, String.valueOf(italic));
-		return newColor;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSColorPage.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSColorPage.java
deleted file mode 100644
index 809794d..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSColorPage.java
+++ /dev/null
@@ -1,222 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.preferences.ui;
-
-import java.util.ArrayList;
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.css.core.contenttype.ContentTypeIdForCSS;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.css.ui.style.IStyleConstantsCSS;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore.OverlayKey;
-import org.eclipse.wst.sse.ui.preferences.ui.AbstractColorPage;
-import org.eclipse.wst.sse.ui.preferences.ui.StyledTextColorPicker;
-
-public class CSSColorPage extends AbstractColorPage {
-
-	/**
-	 * Set up all the style preference keys in the overlay store
-	 */
-	protected OverlayKey[] createOverlayStoreKeys() {
-		ArrayList overlayKeys = new ArrayList();
-
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-		Iterator i = styleList.iterator();
-		while (i.hasNext()) {
-			overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.STRING, (String) i.next()));
-		}
-
-		OverlayPreferenceStore.OverlayKey[] keys = new OverlayPreferenceStore.OverlayKey[overlayKeys.size()];
-		overlayKeys.toArray(keys);
-		return keys;
-	}
-
-	protected Control createContents(Composite parent) {
-		Composite pageComponent = createComposite(parent, 1);
-		((GridData) pageComponent.getLayoutData()).horizontalAlignment = GridData.HORIZONTAL_ALIGN_FILL;
-
-		super.createContents(pageComponent);
-
-		// assigning one help for whole group
-		//		WorkbenchHelp.setHelp(pageComponent,
-		// "com.ibm.etools.webedit.core.cssp2000"); //$NON-NLS-1$
-		WorkbenchHelp.setHelp(pageComponent, IHelpContextIds.CSS_PREFWEBX_STYLES_HELPID);
-
-		return pageComponent;
-	}
-
-	protected Composite createColoringComposite(Composite parent) {
-		Composite coloringComposite = super.createColoringComposite(parent);
-
-		// assigning one help for whole group
-		//		WorkbenchHelp.setHelp(coloringComposite,
-		// "com.ibm.etools.webedit.core.cssp2100"); //$NON-NLS-1$
-
-		return coloringComposite;
-	}
-
-	/**
-	 * getSampleText method comment.
-	 */
-	public String getSampleText() {
-		return CSSUIPlugin.getResourceString("%PrefsLabel.ColorSample"); //$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 * @param contextStyleMap
-	 *            java.util.Dictionary
-	 */
-	protected void initContextStyleMap(Dictionary contextStyleMap) {
-		contextStyleMap.put(CSSRegionContexts.CSS_COMMENT, IStyleConstantsCSS.COMMENT);
-		contextStyleMap.put(CSSRegionContexts.CSS_CDO, IStyleConstantsCSS.COMMENT);
-		contextStyleMap.put(CSSRegionContexts.CSS_CDC, IStyleConstantsCSS.COMMENT);
-		contextStyleMap.put(CSSRegionContexts.CSS_S, IStyleConstantsCSS.NORMAL);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_DELIMITER, IStyleConstantsCSS.SEMI_COLON);
-		contextStyleMap.put(CSSRegionContexts.CSS_LBRACE, IStyleConstantsCSS.CURLY_BRACE);
-		contextStyleMap.put(CSSRegionContexts.CSS_RBRACE, IStyleConstantsCSS.CURLY_BRACE);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_IMPORT, IStyleConstantsCSS.ATMARK_RULE);
-		contextStyleMap.put(CSSRegionContexts.CSS_PAGE, IStyleConstantsCSS.ATMARK_RULE);
-		contextStyleMap.put(CSSRegionContexts.CSS_MEDIA, IStyleConstantsCSS.ATMARK_RULE);
-		contextStyleMap.put(CSSRegionContexts.CSS_FONT_FACE, IStyleConstantsCSS.ATMARK_RULE);
-		contextStyleMap.put(CSSRegionContexts.CSS_CHARSET, IStyleConstantsCSS.ATMARK_RULE);
-		contextStyleMap.put(CSSRegionContexts.CSS_ATKEYWORD, IStyleConstantsCSS.ATMARK_RULE);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_STRING, IStyleConstantsCSS.STRING);
-		contextStyleMap.put(CSSRegionContexts.CSS_URI, IStyleConstantsCSS.URI);
-		contextStyleMap.put(CSSRegionContexts.CSS_MEDIUM, IStyleConstantsCSS.MEDIA);
-		contextStyleMap.put(CSSRegionContexts.CSS_MEDIA_SEPARATOR, IStyleConstantsCSS.MEDIA);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_CHARSET_NAME, IStyleConstantsCSS.STRING);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_PAGE_SELECTOR, IStyleConstantsCSS.MEDIA);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_UNIVERSAL, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_PSEUDO, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_CLASS, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_ID, IStyleConstantsCSS.SELECTOR);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_COMBINATOR, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_SEPARATOR, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_NAME, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_VALUE, IStyleConstantsCSS.SELECTOR);
-		contextStyleMap.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_OPERATOR, IStyleConstantsCSS.SELECTOR);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_PROPERTY, IStyleConstantsCSS.PROPERTY_NAME);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_DIMENSION, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_STRING, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_URI, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_HASH, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_UNICODE_RANGE, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_IMPORTANT, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_VALUE_S, IStyleConstantsCSS.PROPERTY_VALUE);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_SEPARATOR, IStyleConstantsCSS.COLON);
-		contextStyleMap.put(CSSRegionContexts.CSS_DECLARATION_DELIMITER, IStyleConstantsCSS.SEMI_COLON);
-
-		contextStyleMap.put(CSSRegionContexts.CSS_UNKNOWN, IStyleConstantsCSS.ERROR);
-	}
-
-	/**
-	 * 
-	 * @param descriptions
-	 *            java.util.Dictionary
-	 */
-	protected void initDescriptions(Dictionary descriptions) {
-		// create descriptions for hilighting types
-		descriptions.put(IStyleConstantsCSS.NORMAL, CSSUIPlugin.getResourceString("%PrefsLabel.ColorNormal"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.ATMARK_RULE, CSSUIPlugin.getResourceString("%PrefsLabel.ColorAtmarkRule"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.SELECTOR, CSSUIPlugin.getResourceString("%PrefsLabel.ColorSelector"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.MEDIA, CSSUIPlugin.getResourceString("%PrefsLabel.ColorMedia"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.COMMENT, CSSUIPlugin.getResourceString("%PrefsLabel.ColorComment"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.PROPERTY_NAME, CSSUIPlugin.getResourceString("%PrefsLabel.ColorPropertyName"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.PROPERTY_VALUE, CSSUIPlugin.getResourceString("%PrefsLabel.ColorPropertyValue"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.URI, CSSUIPlugin.getResourceString("%PrefsLabel.ColorUri"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.STRING, CSSUIPlugin.getResourceString("%PrefsLabel.ColorString"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.COLON, CSSUIPlugin.getResourceString("%PrefsLabel.ColorColon"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.SEMI_COLON, CSSUIPlugin.getResourceString("%PrefsLabel.ColorSemiColon"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.CURLY_BRACE, CSSUIPlugin.getResourceString("%PrefsLabel.ColorCurlyBrace"));//$NON-NLS-1$
-		descriptions.put(IStyleConstantsCSS.ERROR, CSSUIPlugin.getResourceString("%PrefsLabel.ColorError"));//$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 * @param list
-	 *            java.util.ArrayList
-	 */
-	protected void initStyleList(ArrayList list) {
-		list.add(IStyleConstantsCSS.NORMAL);
-		list.add(IStyleConstantsCSS.ATMARK_RULE);
-		list.add(IStyleConstantsCSS.SELECTOR);
-		list.add(IStyleConstantsCSS.MEDIA);
-		list.add(IStyleConstantsCSS.COMMENT);
-		list.add(IStyleConstantsCSS.PROPERTY_NAME);
-		list.add(IStyleConstantsCSS.PROPERTY_VALUE);
-		list.add(IStyleConstantsCSS.URI);
-		list.add(IStyleConstantsCSS.STRING);
-		list.add(IStyleConstantsCSS.COLON);
-		list.add(IStyleConstantsCSS.SEMI_COLON);
-		list.add(IStyleConstantsCSS.CURLY_BRACE);
-		list.add(IStyleConstantsCSS.ERROR);
-	}
-
-	/**
-	 * setupPicker method comment.
-	 */
-	protected void setupPicker(StyledTextColorPicker picker) {
-		IModelManager mmanager = StructuredModelManager.getModelManager();
-		picker.setParser(mmanager.createStructuredDocumentFor(ContentTypeIdForCSS.ContentTypeID_CSS).getParser());
-
-		Dictionary descriptions = new Hashtable();
-		initDescriptions(descriptions);
-
-		Dictionary contextStyleMap = new Hashtable();
-		initContextStyleMap(contextStyleMap);
-
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-
-		picker.setContextStyleMap(contextStyleMap);
-		picker.setDescriptions(descriptions);
-		picker.setStyleList(styleList);
-	}
-
-	protected IPreferenceStore doGetPreferenceStore() {
-		return CSSUIPlugin.getDefault().getPreferenceStore();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.preferences.ui.AbstractColorPage#savePreferences()
-	 */
-	protected void savePreferences() {
-		CSSUIPlugin.getDefault().savePluginPreferences();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSFilesPreferencePage.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSFilesPreferencePage.java
deleted file mode 100644
index dc60382..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSFilesPreferencePage.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.preferences.ui;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.xml.ui.preferences.XMLFilesPreferencePage;
-
-public class CSSFilesPreferencePage extends XMLFilesPreferencePage {
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return CSSUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.xml.preferences.ui.XMLFilesPreferencePage#doSavePreferenceStore()
-	 */
-	protected void doSavePreferenceStore() {
-		CSSCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.preferences.ui.AbstractPreferencePage#getModelPreferences()
-	 */
-	protected Preferences getModelPreferences() {
-		return CSSCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Control c = super.createContents(parent);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.CSS_PREFWEBX_FILES_HELPID);
-		return c;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSSourcePreferencePage.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSSourcePreferencePage.java
deleted file mode 100644
index 72e2a22..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/preferences/ui/CSSSourcePreferencePage.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.preferences.ui;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.css.core.internal.CSSCorePlugin;
-import org.eclipse.wst.css.core.preferences.CSSModelPreferenceNames;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.xml.ui.preferences.XMLSourcePreferencePage;
-
-/**
- */
-public class CSSSourcePreferencePage extends XMLSourcePreferencePage {
-	// Formatting
-	private final static String FORMATTING_GROUP = SSEUIPlugin.getResourceString("%Formatting_UI_"); //$NON-NLS-1$
-	private final static String FORMATTING_LINE_WIDTH = SSEUIPlugin.getResourceString("%Line_width__UI_"); //$NON-NLS-1$; 
-	private final static String FORMATTING_INDENT_USING_TABS = SSEUIPlugin.getResourceString("%&Indent_using_tabs_3"); //$NON-NLS-1$
-	// CSS Formatting
-	private final static String FORMATTING_INSERT_LINE_BREAK = CSSUIPlugin.getResourceString("%PrefsLabel.WrappingInsertLineBreak"); //$NON-NLS-1$
-	private final static String FORMATTING_WRAPPING_WITHOUT_ATTR = CSSUIPlugin.getResourceString("%PrefsLabel.WrappingWithoutAttr");//$NON-NLS-1$
-
-	// Case
-	private final static String CASE_GROUP = CSSUIPlugin.getResourceString("%PrefsLabel.CaseGroup"); //$NON-NLS-1$
-	private final static String CASE_IDENT = CSSUIPlugin.getResourceString("%PrefsLabel.CaseIdent"); //$NON-NLS-1$
-	private final static String CASE_PROP_NAME = CSSUIPlugin.getResourceString("%PrefsLabel.CasePropName"); //$NON-NLS-1$
-	private final static String CASE_PROP_VALUE = CSSUIPlugin.getResourceString("%PrefsLabel.CasePropValue"); //$NON-NLS-1$
-	private final static String CASE_IDENT_UPPER = CSSUIPlugin.getResourceString("%PrefsLabel.CaseIdentUpper"); //$NON-NLS-1$
-	private final static String CASE_IDENT_LOWER = CSSUIPlugin.getResourceString("%PrefsLabel.CaseIdentLower"); //$NON-NLS-1$
-	private final static String CASE_PROP_NAME_UPPER = CSSUIPlugin.getResourceString("%PrefsLabel.CasePropNameUpper"); //$NON-NLS-1$
-	private final static String CASE_PROP_NAME_LOWER = CSSUIPlugin.getResourceString("%PrefsLabel.CasePropNameLower"); //$NON-NLS-1$
-	private final static String CASE_PROP_VALUE_UPPER = CSSUIPlugin.getResourceString("%PrefsLabel.CasePropValueUpper"); //$NON-NLS-1$
-	private final static String CASE_PROP_VALUE_LOWER = CSSUIPlugin.getResourceString("%PrefsLabel.CasePropValueLower"); //$NON-NLS-1$
-
-	// one property per one line
-	protected Button fPropertyPerLine;
-	// prohibit wrapping if style attribute
-	protected Button fNowrapAttr;
-
-	// case of output character
-	// case of identifier
-	protected Button fIdentUpper;
-	protected Button fIdentLower;
-	// case of property name
-	protected Button fPropNameUpper;
-	protected Button fPropNameLower;
-	// case of property value
-	protected Button fPropValueUpper;
-	protected Button fPropValueLower;
-
-	protected void createContentsForFormattingGroup(Composite parent) {
-		Group formattingGroup = createGroup(parent, 2);
-		formattingGroup.setText(FORMATTING_GROUP);
-		//		// assigning one help for whole group
-		//		WorkbenchHelp.setHelp(formattingGroup,
-		// "com.ibm.etools.webedit.core.cssp1200"); //$NON-NLS-1$
-
-		fLineWidthLabel = createLabel(formattingGroup, FORMATTING_LINE_WIDTH);
-		fLineWidthText = new Text(formattingGroup, SWT.SINGLE | SWT.BORDER);
-		GridData gData = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING | GridData.BEGINNING);
-		gData.widthHint = 25;
-		fLineWidthText.setLayoutData(gData);
-		fLineWidthText.addModifyListener(this);
-
-		fPropertyPerLine = createCheckBox(formattingGroup, FORMATTING_INSERT_LINE_BREAK);
-		((GridData) fPropertyPerLine.getLayoutData()).horizontalSpan = 2;
-
-		fIndentUsingTabs = createCheckBox(formattingGroup, FORMATTING_INDENT_USING_TABS);
-		((GridData) fIndentUsingTabs.getLayoutData()).horizontalSpan = 2;
-
-		fNowrapAttr = createCheckBox(formattingGroup, FORMATTING_WRAPPING_WITHOUT_ATTR);
-		((GridData) fNowrapAttr.getLayoutData()).horizontalSpan = 2;
-	}
-
-	protected void performDefaultsForFormattingGroup() {
-		// Formatting
-		Preferences prefs = getModelPreferences();
-		fLineWidthText.setText(prefs.getDefaultString(CommonModelPreferenceNames.LINE_WIDTH));
-		fPropertyPerLine.setSelection(prefs.getDefaultBoolean(CSSModelPreferenceNames.WRAPPING_ONE_PER_LINE));
-		fIndentUsingTabs.setSelection(prefs.getDefaultBoolean(CommonModelPreferenceNames.INDENT_USING_TABS));
-		fNowrapAttr.setSelection(prefs.getDefaultBoolean(CSSModelPreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR));
-	}
-
-	protected void initializeValuesForFormattingGroup() {
-		// Formatting
-		Preferences prefs = getModelPreferences();
-		fLineWidthText.setText(prefs.getString(CommonModelPreferenceNames.LINE_WIDTH));
-		fPropertyPerLine.setSelection(prefs.getBoolean(CSSModelPreferenceNames.WRAPPING_ONE_PER_LINE));
-		fIndentUsingTabs.setSelection(prefs.getBoolean(CommonModelPreferenceNames.INDENT_USING_TABS));
-		fNowrapAttr.setSelection(prefs.getBoolean(CSSModelPreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR));
-	}
-
-	protected void storeValuesForFormattingGroup() {
-		// Formatting
-		Preferences prefs = getModelPreferences();
-		prefs.setValue(CommonModelPreferenceNames.LINE_WIDTH, fLineWidthText.getText());
-		prefs.setValue(CSSModelPreferenceNames.WRAPPING_ONE_PER_LINE, fPropertyPerLine.getSelection());
-		prefs.setValue(CommonModelPreferenceNames.INDENT_USING_TABS, fIndentUsingTabs.getSelection());
-		prefs.setValue(CSSModelPreferenceNames.WRAPPING_PROHIBIT_WRAP_ON_ATTR, fNowrapAttr.getSelection());
-	}
-
-	protected void createContentsForContentAssistGroup(Composite parent) {
-		// not content assist, but preferred case
-		Group caseGroup = createGroup(parent, 3);
-		caseGroup.setText(CASE_GROUP);
-		//		WorkbenchHelp.setHelp(caseGroup,
-		// "com.ibm.etools.webedit.core.cssp1400"); //$NON-NLS-1$
-
-		//		createLabel(caseGroup, CASE_IDENT);
-		//		createLabel(caseGroup, CASE_PROP_NAME);
-		//		createLabel(caseGroup, CASE_PROP_VALUE);
-
-		// use group for radio buttons so that associated label is read
-		//		Composite identGroup = createComposite(caseGroup, 1);
-		Group identGroup = createGroup(caseGroup, 1);
-		identGroup.setText(CASE_IDENT);
-		fIdentUpper = createRadioButton(identGroup, CASE_IDENT_UPPER);
-		fIdentLower = createRadioButton(identGroup, CASE_IDENT_LOWER);
-
-		// use group for radio buttons so that associated label is read
-		//		Composite propNameGroup = createComposite(caseGroup, 1);
-		Group propNameGroup = createGroup(caseGroup, 1);
-		propNameGroup.setText(CASE_PROP_NAME);
-		fPropNameUpper = createRadioButton(propNameGroup, CASE_PROP_NAME_UPPER);
-		fPropNameLower = createRadioButton(propNameGroup, CASE_PROP_NAME_LOWER);
-
-		// use group for radio buttons so that associated label is read
-		//		Composite propValueGroup = createComposite(caseGroup, 1);
-		Group propValueGroup = createGroup(caseGroup, 1);
-		propValueGroup.setText(CASE_PROP_VALUE);
-		fPropValueUpper = createRadioButton(propValueGroup, CASE_PROP_VALUE_UPPER);
-		fPropValueLower = createRadioButton(propValueGroup, CASE_PROP_VALUE_LOWER);
-	}
-
-	protected void performDefaultsForContentAssistGroup() {
-		// not content assist, but preferred case
-		Preferences prefs = getModelPreferences();
-		fIdentUpper.setSelection(prefs.getDefaultInt(CSSModelPreferenceNames.CASE_IDENTIFIER) == CommonModelPreferenceNames.UPPER);
-		fIdentLower.setSelection(prefs.getDefaultInt(CSSModelPreferenceNames.CASE_IDENTIFIER) == CommonModelPreferenceNames.LOWER);
-		fPropNameUpper.setSelection(prefs.getDefaultInt(CSSModelPreferenceNames.CASE_PROPERTY_NAME) == CommonModelPreferenceNames.UPPER);
-		fPropNameLower.setSelection(prefs.getDefaultInt(CSSModelPreferenceNames.CASE_PROPERTY_NAME) == CommonModelPreferenceNames.LOWER);
-		fPropValueUpper.setSelection(prefs.getDefaultInt(CSSModelPreferenceNames.CASE_PROPERTY_VALUE) == CommonModelPreferenceNames.UPPER);
-		fPropValueLower.setSelection(prefs.getDefaultInt(CSSModelPreferenceNames.CASE_PROPERTY_VALUE) == CommonModelPreferenceNames.LOWER);
-	}
-
-	protected void initializeValuesForContentAssistGroup() {
-		// not content assist, but preferred case
-		Preferences prefs = getModelPreferences();
-		fIdentUpper.setSelection(prefs.getInt(CSSModelPreferenceNames.CASE_IDENTIFIER) == CommonModelPreferenceNames.UPPER);
-		fIdentLower.setSelection(prefs.getInt(CSSModelPreferenceNames.CASE_IDENTIFIER) == CommonModelPreferenceNames.LOWER);
-		fPropNameUpper.setSelection(prefs.getInt(CSSModelPreferenceNames.CASE_PROPERTY_NAME) == CommonModelPreferenceNames.UPPER);
-		fPropNameLower.setSelection(prefs.getInt(CSSModelPreferenceNames.CASE_PROPERTY_NAME) == CommonModelPreferenceNames.LOWER);
-		fPropValueUpper.setSelection(prefs.getInt(CSSModelPreferenceNames.CASE_PROPERTY_VALUE) == CommonModelPreferenceNames.UPPER);
-		fPropValueLower.setSelection(prefs.getInt(CSSModelPreferenceNames.CASE_PROPERTY_VALUE) == CommonModelPreferenceNames.LOWER);
-	}
-
-	protected void storeValuesForContentAssistGroup() {
-		// not content assist, but preferred case
-		Preferences prefs = getModelPreferences();
-		prefs.setValue(CSSModelPreferenceNames.CASE_IDENTIFIER, (fIdentUpper.getSelection()) ? CommonModelPreferenceNames.UPPER : CommonModelPreferenceNames.LOWER);
-		prefs.setValue(CSSModelPreferenceNames.CASE_PROPERTY_NAME, (fPropNameUpper.getSelection()) ? CommonModelPreferenceNames.UPPER : CommonModelPreferenceNames.LOWER);
-		prefs.setValue(CSSModelPreferenceNames.CASE_PROPERTY_VALUE, (fPropValueUpper.getSelection()) ? CommonModelPreferenceNames.UPPER : CommonModelPreferenceNames.LOWER);
-	}
-
-	protected void createContentsForGrammarConstraintsGroup(Composite parent) {
-		// do nothing
-	}
-
-	protected void performDefaultsForGrammarConstraintsGroup() {
-		// do nothing
-	}
-
-	protected void initializeValuesForGrammarConstraintsGroup() {
-		// do nothing
-	}
-
-	protected void storeValuesForGrammarConstraintsGroup() {
-		// do nothing
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	//	protected IPreferenceStore doGetPreferenceStore() {
-	//		return CSSUIPlugin.getDefault().getPreferenceStore();
-	//	}
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.xml.preferences.ui.XMLFilesPreferencePage#doSavePreferenceStore()
-	 */
-	protected void doSavePreferenceStore() {
-		CSSUIPlugin.getDefault().savePluginPreferences();
-		CSSCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.preferences.ui.AbstractPreferencePage#getModelPreferences()
-	 */
-	protected Preferences getModelPreferences() {
-		return CSSCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Control c = super.createContents(parent);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.CSS_PREFWEBX_SOURCE_HELPID);
-		return c;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return CSSUIPlugin.getDefault().getPreferenceStore();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/registry/AdapterFactoryProviderCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/registry/AdapterFactoryProviderCSS.java
deleted file mode 100644
index 597c88e..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/registry/AdapterFactoryProviderCSS.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.registry;
-
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.css.core.modelhandler.ModelHandlerForCSS;
-import org.eclipse.wst.css.ui.views.contentoutline.JFaceNodeAdapterFactoryCSS;
-import org.eclipse.wst.css.ui.views.properties.CSSPropertySourceAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.modelhandler.IDocumentTypeHandler;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.util.Assert;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-
-public class AdapterFactoryProviderCSS implements AdapterFactoryProvider {
-	public boolean isFor(IDocumentTypeHandler contentTypeDescription) {
-		return (contentTypeDescription instanceof ModelHandlerForCSS);
-	}
-
-	public void addAdapterFactories(IStructuredModel structuredModel) {
-		// add the normal content based factories to model's registry
-		addContentBasedFactories(structuredModel);
-	}
-
-	protected void addContentBasedFactories(IStructuredModel structuredModel) {
-		FactoryRegistry factoryRegistry = structuredModel.getFactoryRegistry();
-		Assert.isNotNull(factoryRegistry, "Program Error: client caller must ensure model has factory registry"); //$NON-NLS-1$
-		IAdapterFactory factory = null;
-
-		factory = factoryRegistry.getFactoryFor(IPropertySource.class);
-		if (factory == null) {
-			factory = new CSSPropertySourceAdapterFactory(IPropertySource.class, true);
-			factoryRegistry.addFactory(factory);
-		}
-
-		factory = factoryRegistry.getFactoryFor(IJFaceNodeAdapter.class);
-		if (factory == null) {
-			factory = new JFaceNodeAdapterFactoryCSS(IJFaceNodeAdapter.class, true);
-			factoryRegistry.addFactory(factory);
-		}
-	}
-
-	public void reinitializeFactories(IStructuredModel structuredModel) {
-
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/CSSTextColors.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/CSSTextColors.java
deleted file mode 100644
index 8bf4594..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/CSSTextColors.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.style;
-
-
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.wst.css.ui.preferences.CSSPreferenceManager;
-import org.eclipse.wst.css.ui.preferences.ui.CSSColorManager;
-import org.eclipse.wst.sse.ui.util.EditorUtility;
-
-/**
- * @deprecated Most methods and constants moved to LineStyleProviderForCSS or
- *             IStyleConstantsCSS. TODO remove in C5 or earlier
- */
-public class CSSTextColors {
-	class TextColors {
-
-		TextColors() {
-			super();
-		}
-
-		void setTextAttribute(Object key, RGB foreground, RGB background, int style) {
-			TextAttribute attribute = new TextAttribute(EditorUtility.getColor(foreground), EditorUtility.getColor(background), style);
-			setTextAttribute(key, attribute);
-		}
-
-		void setTextAttribute(Object key, TextAttribute attribute) {
-			TextAttribute oldAttribute = (TextAttribute) fAttributeTable.get(key);
-			if (oldAttribute != null) {
-				fAttributeTable.remove(key);
-			}
-			fAttributeTable.put(key, attribute);
-		}
-
-		TextAttribute getTextAttribute(Object key) {
-			return (TextAttribute) fAttributeTable.get(key);
-		}
-
-		private Map fAttributeTable = new HashMap();
-	}
-
-	// color types
-	public static final String NORMAL = "NORMAL"; //$NON-NLS-1$
-	public static final String ATMARK_RULE = "ATMARK_RULE"; //$NON-NLS-1$
-	public static final String SELECTOR = "SELECTOR"; //$NON-NLS-1$
-	public static final String MEDIA = "MEDIA"; //$NON-NLS-1$
-	public static final String COMMENT = "COMMENT"; //$NON-NLS-1$
-	public static final String PROPERTY_NAME = "PROPERTY_NAME"; //$NON-NLS-1$
-	public static final String PROPERTY_VALUE = "PROPERTY_VALUE"; //$NON-NLS-1$
-	public static final String URI = "URI"; //$NON-NLS-1$
-	public static final String STRING = "STRING"; //$NON-NLS-1$
-	public static final String COLON = "COLON"; //$NON-NLS-1$
-	public static final String SEMI_COLON = "SEMI_COLON"; //$NON-NLS-1$
-	public static final String CURLY_BRACE = "CURLY_BRACE"; //$NON-NLS-1$
-	public static final String ERROR = "ERROR"; //$NON-NLS-1$
-	private static CSSTextColors fInstance = null;
-	private TextColors fTextColors = null;
-	private Map fPrefToType = null;
-
-	protected CSSTextColors() {
-		super();
-		applyPreference();
-	}
-
-	public synchronized static CSSTextColors getInstance() {
-		if (fInstance == null) {
-			fInstance = new CSSTextColors();
-		}
-		return fInstance;
-	}
-
-	public void applyPreference() {
-		if (fTextColors == null) {
-			fTextColors = new TextColors();
-		}
-
-		if (fPrefToType == null) {
-			fPrefToType = new HashMap();
-			fPrefToType.put(NORMAL, CSSColorManager.NORMAL);
-			fPrefToType.put(ATMARK_RULE, CSSColorManager.ATMARK_RULE);
-			fPrefToType.put(SELECTOR, CSSColorManager.SELECTOR);
-			fPrefToType.put(MEDIA, CSSColorManager.MEDIA);
-			fPrefToType.put(COMMENT, CSSColorManager.COMMENT);
-			fPrefToType.put(PROPERTY_NAME, CSSColorManager.PROPERTY_NAME);
-			fPrefToType.put(PROPERTY_VALUE, CSSColorManager.PROPERTY_VALUE);
-			fPrefToType.put(URI, CSSColorManager.URI);
-			fPrefToType.put(STRING, CSSColorManager.STRING);
-			fPrefToType.put(COLON, CSSColorManager.COLON);
-			fPrefToType.put(SEMI_COLON, CSSColorManager.SEMI_COLON);
-			fPrefToType.put(CURLY_BRACE, CSSColorManager.CURLY_BRACE);
-			fPrefToType.put(ERROR, CSSColorManager.ERROR);
-		}
-		boolean bEnabled = CSSPreferenceManager.getInstance().getColorEnabled();
-		CSSColorManager pref = CSSColorManager.getInstance();
-
-		Iterator i = fPrefToType.keySet().iterator();
-		while (i.hasNext()) {
-			String key = (String) i.next();
-			if (bEnabled) {
-				String type = (String) fPrefToType.get(key);
-				setTextAttribute(key, pref.getForegroundRGB(type), pref.getBackgroundRGB(type), pref.getStyle(type));
-			} else {
-				setTextAttribute(key, null);
-			}
-		}
-	}
-
-	public void dispose() {
-	}
-
-	public TextAttribute getTextAttribute(String type) {
-		if (fTextColors == null) {
-			applyPreference();
-		}
-		return fTextColors.getTextAttribute(type);
-	}
-
-	private void setTextAttribute(String type, RGB foreground) {
-		setTextAttribute(type, foreground, null, SWT.NORMAL);
-	}
-
-	private void setTextAttribute(String type, RGB foreground, RGB background, int style) {
-		if (fTextColors == null) {
-			return;
-		}
-		fTextColors.setTextAttribute(type, foreground, background, style);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/IStyleConstantsCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/IStyleConstantsCSS.java
deleted file mode 100644
index 31eb84e..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/IStyleConstantsCSS.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.style;
-
-/**
- * Contains the symbolic name of styles used by LineStyleProvider,
- * ColorManager, and any others who may be interested
- */
-public interface IStyleConstantsCSS {
-	public static final String NORMAL = "NORMAL"; //$NON-NLS-1$
-	public static final String ATMARK_RULE = "ATMARK_RULE"; //$NON-NLS-1$
-	public static final String SELECTOR = "SELECTOR"; //$NON-NLS-1$
-	public static final String MEDIA = "MEDIA"; //$NON-NLS-1$
-	public static final String COMMENT = "COMMENT"; //$NON-NLS-1$
-	public static final String PROPERTY_NAME = "PROPERTY_NAME"; //$NON-NLS-1$
-	public static final String PROPERTY_VALUE = "PROPERTY_VALUE"; //$NON-NLS-1$
-	public static final String URI = "URI"; //$NON-NLS-1$
-	public static final String STRING = "STRING"; //$NON-NLS-1$
-	public static final String COLON = "COLON"; //$NON-NLS-1$
-	public static final String SEMI_COLON = "SEMI_COLON"; //$NON-NLS-1$
-	public static final String CURLY_BRACE = "CURLY_BRACE"; //$NON-NLS-1$
-	public static final String ERROR = "ERROR"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/LineStyleProviderForCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/LineStyleProviderForCSS.java
deleted file mode 100644
index a0bbe94..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/LineStyleProviderForCSS.java
+++ /dev/null
@@ -1,202 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.style;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-
-/**
- */
-public class LineStyleProviderForCSS extends AbstractLineStyleProvider implements LineStyleProvider {
-	/** Contains region to style mapping */
-	private Map fColorTypes;
-
-	/**
-	 * LineStyleProviderForEmbeddedCSS constructor comment.
-	 */
-	public LineStyleProviderForCSS() {
-		super();
-		initAttributes();
-		loadColors();
-	}
-
-	protected TextAttribute getAttributeFor(ITextRegion region) {
-		if (region != null) {
-			String type = region.getType();
-			if (type != null) {
-				return getAttributeFor(type);
-			}
-		}
-		return (TextAttribute) getTextAttributes().get(IStyleConstantsCSS.NORMAL);
-	}
-
-	/**
-	 * Look up the TextAttribute for the given region context. Might return
-	 * null for unusual text.
-	 * 
-	 * @param type
-	 * @return
-	 */
-	protected TextAttribute getAttributeFor(String type) {
-		return (TextAttribute) getTextAttributes().get(fColorTypes.get(type));
-	}
-
-	private void initAttributes() {
-		if (fColorTypes == null) {
-			fColorTypes = new HashMap();
-		}
-		fColorTypes.put(CSSRegionContexts.CSS_COMMENT, IStyleConstantsCSS.COMMENT);
-		fColorTypes.put(CSSRegionContexts.CSS_CDO, IStyleConstantsCSS.COMMENT);
-		fColorTypes.put(CSSRegionContexts.CSS_CDC, IStyleConstantsCSS.COMMENT);
-		fColorTypes.put(CSSRegionContexts.CSS_S, IStyleConstantsCSS.NORMAL);
-
-		fColorTypes.put(CSSRegionContexts.CSS_DELIMITER, IStyleConstantsCSS.SEMI_COLON);
-		fColorTypes.put(CSSRegionContexts.CSS_LBRACE, IStyleConstantsCSS.CURLY_BRACE);
-		fColorTypes.put(CSSRegionContexts.CSS_RBRACE, IStyleConstantsCSS.CURLY_BRACE);
-
-		fColorTypes.put(CSSRegionContexts.CSS_IMPORT, IStyleConstantsCSS.ATMARK_RULE);
-		fColorTypes.put(CSSRegionContexts.CSS_PAGE, IStyleConstantsCSS.ATMARK_RULE);
-		fColorTypes.put(CSSRegionContexts.CSS_MEDIA, IStyleConstantsCSS.ATMARK_RULE);
-		fColorTypes.put(CSSRegionContexts.CSS_FONT_FACE, IStyleConstantsCSS.ATMARK_RULE);
-		fColorTypes.put(CSSRegionContexts.CSS_CHARSET, IStyleConstantsCSS.ATMARK_RULE);
-		fColorTypes.put(CSSRegionContexts.CSS_ATKEYWORD, IStyleConstantsCSS.ATMARK_RULE);
-
-		fColorTypes.put(CSSRegionContexts.CSS_STRING, IStyleConstantsCSS.STRING);
-		fColorTypes.put(CSSRegionContexts.CSS_URI, IStyleConstantsCSS.URI);
-		fColorTypes.put(CSSRegionContexts.CSS_MEDIUM, IStyleConstantsCSS.MEDIA);
-		fColorTypes.put(CSSRegionContexts.CSS_MEDIA_SEPARATOR, IStyleConstantsCSS.MEDIA);
-
-		fColorTypes.put(CSSRegionContexts.CSS_CHARSET_NAME, IStyleConstantsCSS.STRING);
-
-		fColorTypes.put(CSSRegionContexts.CSS_PAGE_SELECTOR, IStyleConstantsCSS.MEDIA);
-
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_ELEMENT_NAME, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_UNIVERSAL, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_PSEUDO, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_CLASS, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_ID, IStyleConstantsCSS.SELECTOR);
-
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_COMBINATOR, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_SEPARATOR, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_START, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_END, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_NAME, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_VALUE, IStyleConstantsCSS.SELECTOR);
-		fColorTypes.put(CSSRegionContexts.CSS_SELECTOR_ATTRIBUTE_OPERATOR, IStyleConstantsCSS.SELECTOR);
-
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_PROPERTY, IStyleConstantsCSS.PROPERTY_NAME);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_IDENT, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_DIMENSION, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_PERCENTAGE, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_NUMBER, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_FUNCTION, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_PARENTHESIS_CLOSE, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_STRING, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_URI, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_HASH, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_UNICODE_RANGE, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_IMPORTANT, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_OPERATOR, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_VALUE_S, IStyleConstantsCSS.PROPERTY_VALUE);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_SEPARATOR, IStyleConstantsCSS.COLON);
-		fColorTypes.put(CSSRegionContexts.CSS_DECLARATION_DELIMITER, IStyleConstantsCSS.SEMI_COLON);
-
-		fColorTypes.put(CSSRegionContexts.CSS_UNKNOWN, IStyleConstantsCSS.NORMAL);
-	}
-
-	protected void handlePropertyChange(PropertyChangeEvent event) {
-		String styleKey = null;
-
-		if (event != null) {
-			String prefKey = event.getProperty();
-			// check if preference changed is a style preference
-			if (IStyleConstantsCSS.ATMARK_RULE.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.ATMARK_RULE;
-			} else if (IStyleConstantsCSS.COLON.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.COLON;
-			} else if (IStyleConstantsCSS.COMMENT.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.COMMENT;
-			} else if (IStyleConstantsCSS.CURLY_BRACE.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.CURLY_BRACE;
-			} else if (IStyleConstantsCSS.ERROR.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.ERROR;
-			} else if (IStyleConstantsCSS.MEDIA.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.MEDIA;
-			} else if (IStyleConstantsCSS.NORMAL.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.NORMAL;
-			} else if (IStyleConstantsCSS.PROPERTY_NAME.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.PROPERTY_NAME;
-			} else if (IStyleConstantsCSS.PROPERTY_VALUE.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.PROPERTY_VALUE;
-			} else if (IStyleConstantsCSS.SELECTOR.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.SELECTOR;
-			} else if (IStyleConstantsCSS.SEMI_COLON.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.SEMI_COLON;
-			} else if (IStyleConstantsCSS.STRING.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.STRING;
-			} else if (IStyleConstantsCSS.URI.equals(prefKey)) {
-				styleKey = IStyleConstantsCSS.URI;
-			}
-		} else {
-			// this is around for old deprecated preferencesChanged() method
-			// TODO remove when preferencesChanged() is removed
-			loadColors();
-			super.handlePropertyChange(event);
-		}
-
-		if (styleKey != null) {
-			// overwrite style preference with new value
-			addTextAttribute(styleKey);
-			super.handlePropertyChange(event);
-		}
-	}
-
-	public void release() {
-		if (fColorTypes != null) {
-			fColorTypes.clear();
-		}
-		super.release();
-	}
-
-	public void loadColors() {
-		clearColors();
-		addTextAttribute(IStyleConstantsCSS.ATMARK_RULE);
-		addTextAttribute(IStyleConstantsCSS.COLON);
-		addTextAttribute(IStyleConstantsCSS.COMMENT);
-		addTextAttribute(IStyleConstantsCSS.CURLY_BRACE);
-		addTextAttribute(IStyleConstantsCSS.ERROR);
-		addTextAttribute(IStyleConstantsCSS.MEDIA);
-		addTextAttribute(IStyleConstantsCSS.NORMAL);
-		addTextAttribute(IStyleConstantsCSS.PROPERTY_NAME);
-		addTextAttribute(IStyleConstantsCSS.PROPERTY_VALUE);
-		addTextAttribute(IStyleConstantsCSS.SELECTOR);
-		addTextAttribute(IStyleConstantsCSS.SEMI_COLON);
-		addTextAttribute(IStyleConstantsCSS.STRING);
-		addTextAttribute(IStyleConstantsCSS.URI);
-	}
-
-	protected void clearColors() {
-		getTextAttributes().clear();
-	}
-
-	protected IPreferenceStore getColorPreferences() {
-		return CSSUIPlugin.getDefault().getPreferenceStore();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/LineStyleProviderForEmbeddedCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/LineStyleProviderForEmbeddedCSS.java
deleted file mode 100644
index e1620e1..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/style/LineStyleProviderForEmbeddedCSS.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.style;
-
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.wst.css.core.parser.CSSTextParser;
-import org.eclipse.wst.css.core.parser.CSSTextToken;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-public class LineStyleProviderForEmbeddedCSS extends LineStyleProviderForCSS {
-
-	public boolean prepareRegions(ITypedRegion typedRegion, int lineRequestStart, int lineRequestLength, Collection holdResults) {
-		int regionStart = typedRegion.getOffset();
-		int regionEnd = regionStart + typedRegion.getLength();
-		IStructuredDocumentRegion wholeRegion = getDocument().getRegionAtCharacterOffset(regionStart);
-
-		List tokens;
-		int offset;
-
-		ParserCache cache = getCachedParsingResult(wholeRegion);
-		if (cache == null) {
-			offset = wholeRegion.getStartOffset();
-			String content;
-			content = wholeRegion.getText();
-
-			CSSTextParser parser = new CSSTextParser(CSSTextParser.MODE_STYLESHEET, content);
-			tokens = parser.getTokenList();
-			cacheParsingResult(wholeRegion, new ParserCache(offset, tokens));
-		} else {
-			tokens = cache.tokens;
-			offset = cache.offset;
-		}
-
-		boolean result = false;
-
-		if (0 < tokens.size()) {
-			int start = offset;
-			Iterator i = tokens.iterator();
-			while (i.hasNext()) {
-				CSSTextToken token = (CSSTextToken) i.next();
-				if (regionStart <= start && start < regionEnd) {
-					TextAttribute attribute = getAttributeFor(token.kind);
-					if (attribute != null) {
-						holdResults.add(new StyleRange(start, token.length, attribute.getForeground(), attribute.getBackground()));
-					}
-					else {
-						holdResults.add(new StyleRange(start, token.length, null, null));
-					}
-				}
-				start += token.length;
-			}
-			result = true;
-		}
-
-		return result;
-	}
-
-	protected TextAttribute getAttributeFor(ITextRegion region) {
-		return null;
-	}
-
-	private void cleanupCache() {
-		fCacheKey = -1;
-		fCacheResult = null;
-	}
-
-	private ParserCache getCachedParsingResult(IStructuredDocumentRegion region) {
-		if (fCacheKey == region.getText().hashCode()) {
-			return fCacheResult;
-		}
-		return null;
-	}
-
-	private void cacheParsingResult(IStructuredDocumentRegion region, ParserCache result) {
-		fCacheKey = region.getText().hashCode();
-		fCacheResult = result;
-	}
-
-	public void release() {
-		super.release();
-		cleanupCache();
-	}
-
-	private class ParserCache {
-		ParserCache(int newOffset, List newTokens) {
-			offset = newOffset;
-			tokens = newTokens;
-		}
-
-		int offset;
-		List tokens;
-	}
-
-	int fCacheKey = -1;
-	ParserCache fCacheResult = null;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/taginfo/CSSBestMatchHoverProcessor.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/taginfo/CSSBestMatchHoverProcessor.java
deleted file mode 100644
index 2c4a0fe..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/taginfo/CSSBestMatchHoverProcessor.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.taginfo.AbstractBestMatchHoverProcessor;
-
-/**
- * Provides the best css hover help documentation (by using other hover help
- * processors) Priority of hover help processors is: ProblemHoverProcessor,
- * AnnotationHoverProcessor
- */
-public class CSSBestMatchHoverProcessor extends AbstractBestMatchHoverProcessor {
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.taginfo.AbstractBestMatchHoverProcessor#getTagInfoHover()
-	 */
-	protected ITextHover getTagInfoHover() {
-		// CSS has no taginfo hover
-		return null;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/text/CSSDocumentRegionEdgeMatcher.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/text/CSSDocumentRegionEdgeMatcher.java
deleted file mode 100644
index ce975a9..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/text/CSSDocumentRegionEdgeMatcher.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.text;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.source.ICharacterPairMatcher;
-import org.eclipse.wst.css.core.parser.CSSRegionContexts;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-
-public class CSSDocumentRegionEdgeMatcher implements ICharacterPairMatcher {
-
-	private int fAnchor = ICharacterPairMatcher.LEFT;
-
-	/**
-	 * @param validContexts
-	 * @param nextMatcher
-	 */
-	public CSSDocumentRegionEdgeMatcher() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#clear()
-	 */
-	public void clear() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#dispose()
-	 */
-	public void dispose() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.ICharacterPairMatcher#getAnchor()
-	 */
-	public int getAnchor() {
-		return fAnchor;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.ui.text.DocumentRegionEdgeMatcher#match(org.eclipse.jface.text.IDocument,
-	 *      int)
-	 */
-
-
-	public IRegion match(IDocument document, int offset) {
-		if (document instanceof IStructuredDocument) {
-			IStructuredDocumentRegion r = ((IStructuredDocument) document).getRegionAtCharacterOffset(offset);
-			if (r != null) {
-				if (r.getPrevious() != null && r.getStartOffset() == offset && r.getPrevious().getType().equals(CSSRegionContexts.CSS_RBRACE)) {
-					r = r.getPrevious();
-				}
-				if (r.getType().equals(CSSRegionContexts.CSS_RBRACE)) {
-					while (r != null && !r.getType().equals(CSSRegionContexts.CSS_LBRACE)) {
-						r = r.getPrevious();
-					}
-					if (r != null) {
-						return new Region(r.getStartOffset(), 1);
-					}
-				} else if (r.getType().equals(CSSRegionContexts.CSS_LBRACE)) {
-					while (r != null && !r.getType().equals(CSSRegionContexts.CSS_RBRACE)) {
-						r = r.getNext();
-					}
-					if (r != null) {
-						return new Region(r.getEndOffset() - 1, 1);
-					}
-				}
-			}
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/CSSContentOutlineConfiguration.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/CSSContentOutlineConfiguration.java
deleted file mode 100644
index a37d91e..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/CSSContentOutlineConfiguration.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.views.contentoutline;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.action.IContributionItem;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.IContentProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.document.ICSSValue;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.ui.view.events.NodeSelectionChangedEvent;
-import org.eclipse.wst.sse.ui.views.contentoutline.PropertyChangeUpdateActionContributionItem;
-import org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration;
-
-public class CSSContentOutlineConfiguration extends StructuredContentOutlineConfiguration {
-	private final String OUTLINE_SORT_PREF = "outline-sort"; //$NON-NLS-1$
-
-	public CSSContentOutlineConfiguration() {
-		super();
-	}
-
-	public IContributionItem[] createToolbarContributions(TreeViewer viewer) {
-		IContributionItem[] items = super.createToolbarContributions(viewer);
-
-		SortAction sortAction = new SortAction(viewer, CSSUIPlugin.getDefault().getPreferenceStore(), OUTLINE_SORT_PREF);
-		IContributionItem sortItem = new PropertyChangeUpdateActionContributionItem(sortAction);
-
-		if (items == null) {
-			items = new IContributionItem[1];
-			items[0] = sortItem;
-		} else {
-			IContributionItem[] combinedItems = new IContributionItem[items.length + 1];
-			combinedItems[0] = sortItem;
-			System.arraycopy(items, 0, combinedItems, 1, items.length);
-			items = combinedItems;
-		}
-		return items;
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.views.contentoutline.ContentOutlineConfiguration#getContentProvider(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public IContentProvider getContentProvider(TreeViewer viewer) {
-		if (fContentProvider == null && getFactory() != null)
-			fContentProvider = new JFaceNodeContentProviderCSS((IAdapterFactory) getFactory());
-		return fContentProvider;
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.views.contentoutline.ContentOutlineConfiguration#getLabelProvider(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public ILabelProvider getLabelProvider(TreeViewer viewer) {
-		if (fLabelProvider == null && getFactory() != null)
-			fLabelProvider = new JFaceNodeLabelProviderCSS((IAdapterFactory) getFactory());
-		return fLabelProvider;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.views.contentoutline.ContentOutlineConfiguration#getNodes(java.util.List)
-	 */
-	public List getNodes(List nodes) {
-		List filteredNodes = new ArrayList(nodes);
-
-		List targetNodes = new ArrayList();
-		Iterator i = filteredNodes.iterator();
-		while (i.hasNext()) {
-			Object obj = i.next();
-			if (obj instanceof ICSSNode) {
-				ICSSNode node = (ICSSNode) obj;
-				short nodeType = node.getNodeType();
-				if (node instanceof ICSSValue) {
-					while (node != null && !(node instanceof ICSSStyleDeclItem)) {
-						node = node.getParentNode();
-					}
-				} else if (nodeType == ICSSNode.STYLEDECLARATION_NODE) {
-					node = node.getParentNode();
-				} else if (nodeType == ICSSNode.MEDIALIST_NODE) {
-					node = node.getParentNode();
-				}
-				if (node != null) {
-					obj = node;
-				}
-			}
-			targetNodes.add(obj);
-		}
-
-		return targetNodes;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.views.contentoutline.ContentOutlineConfiguration#getSelectedNodes(com.ibm.sse.editor.view.events.NodeSelectionChangedEvent)
-	 */
-	public List getSelectedNodes(NodeSelectionChangedEvent event) {
-		return getNodes(event.getSelectedNodes());
-	}
-
-	/**
-	 * @deprecated use key directly (no need for generator)
-	 */
-	public String getSortPreferenceKey() {
-//		return PreferenceKeyGenerator.generateKey(OUTLINE_SORT_PREF, getDeclaringID());
-		return OUTLINE_SORT_PREF;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration#getPreferenceStore()
-	 */
-	protected IPreferenceStore getPreferenceStore() {
-		return CSSUIPlugin.getDefault().getPreferenceStore();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/CSSNodeAdapter.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/CSSNodeAdapter.java
deleted file mode 100644
index dd016e1..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/CSSNodeAdapter.java
+++ /dev/null
@@ -1,319 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.views.contentoutline;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.views.properties.PropertySheetPage;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclaration;
-import org.eclipse.wst.css.core.document.ICSSStyleRule;
-import org.eclipse.wst.css.core.document.ICSSStyleSheet;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapterFactory;
-
-/**
- * Adapts a DOM node to a JFace viewer.
- */
-//public class CSSNodeAdapter extends JFaceNodeAdapter {
-public class CSSNodeAdapter implements INodeAdapter, Runnable {
-	class NotifyContext {
-		NotifyContext(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-			this.notifier = notifier;
-			this.eventType = eventType;
-			this.changedFeature = changedFeature;
-			this.oldValue = oldValue;
-			this.newValue = newValue;
-			this.pos = pos;
-		}
-
-		void fire() {
-			internalNotifyChanged(notifier, eventType, changedFeature, oldValue, newValue, pos);
-		}
-
-		INodeNotifier notifier;
-		int eventType;
-		Object changedFeature;
-		Object oldValue;
-		Object newValue;
-		int pos;
-	}
-
-	class StyleViewUpdater implements Runnable {
-		public void run() {
-			if (lastUpdater == this) {
-				internalActionPerformed();
-				lastUpdater = null;
-			}
-		}
-	}
-
-	protected IAdapterFactory adapterFactory;
-	private Vector notifyQueue;
-	StyleViewUpdater lastUpdater;
-	protected int delayMSecs = 500;
-	final static Class ADAPTER_KEY = IJFaceNodeAdapter.class;
-
-	public CSSNodeAdapter(IAdapterFactory adapterFactory) {
-		super();
-		this.adapterFactory = adapterFactory;
-	}
-
-	/**
-	 * Insert the method's description here.
-	 */
-	protected void internalActionPerformed() {
-		if (notifyQueue == null) {
-			return;
-		}
-		boolean refresh_all = false;
-		boolean refresh_rule = false;
-		int pos_all = 0;
-		List targets = new ArrayList();
-		for (int i = 0; i < notifyQueue.size(); i++) {
-			NotifyContext context = (NotifyContext) notifyQueue.get(i);
-			if (context.notifier instanceof ICSSStyleSheet) {
-				refresh_all = true;
-				pos_all = i;
-			}
-			if (context.notifier instanceof ICSSStyleDeclaration) {
-				refresh_rule = true;
-				targets.add(context);
-				//			pos_rule = i;
-			}
-			//		((NotifyContext) notifyQueue.get(i)).fire();
-		}
-		if (refresh_all) {
-			((NotifyContext) notifyQueue.get(pos_all)).fire();
-		} else if (refresh_rule) {
-			Iterator i = targets.iterator();
-			while (i.hasNext()) {
-				((NotifyContext) i.next()).fire();
-			}
-			//	else if (refresh_rule) internalRefreshAll();
-		} else {
-			for (int i = 0; i < notifyQueue.size(); i++) {
-				((NotifyContext) notifyQueue.get(i)).fire();
-			}
-		}
-		notifyQueue.clear();
-	}
-
-	/**
-	 * Called by the object being adapter (the notifier) when something has
-	 * changed.
-	 */
-	public void internalNotifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		Iterator iterator = ((IJFaceNodeAdapterFactory) adapterFactory).getListeners().iterator();
-		while (iterator.hasNext()) {
-			Object listener = iterator.next();
-			if (listener instanceof StructuredViewer) {
-				notifyChangedForStructuredViewer((StructuredViewer) listener, notifier, eventType, changedFeature, oldValue, newValue, pos);
-			} else if (listener instanceof PropertySheetPage) {
-				notifyChangedForPropertySheetPage((PropertySheetPage) listener, notifier, eventType, changedFeature, oldValue, newValue, pos);
-			}
-		}
-	}
-
-	private void notifyChangedForPropertySheetPage(PropertySheetPage page, INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (page.getControl() == null || page.getControl().isDisposed()) {
-			return;
-		}
-		if (eventType == INodeNotifier.CHANGE || eventType == INodeNotifier.ADD || eventType == INodeNotifier.REMOVE) {
-			page.refresh();
-		}
-	}
-
-	private void notifyChangedForStructuredViewer(StructuredViewer viewer, INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (viewer.getControl() == null || viewer.getControl().isDisposed()) {
-			return;
-		}
-		if (eventType == INodeNotifier.CHANGE) {
-			if (notifier instanceof ICSSStyleSheet) {
-				ICSSNode temp = (changedFeature != null) ? (ICSSNode) changedFeature : (ICSSNode) newValue;
-				if (temp instanceof ICSSStyleRule) {
-					viewer.refresh();
-				} else {
-					for (;;) {
-						if (temp instanceof ICSSStyleRule) {
-							break;
-						}
-						temp = temp.getParentNode();
-						if (temp == null) {
-							break;
-						}
-					}
-					if (temp == null || temp instanceof ICSSStyleSheet) {
-						viewer.refresh();
-					} else {
-						viewer.refresh(temp);
-					}
-				}
-			} else {
-				ICSSNode temp = (ICSSNode) notifier;
-				if (temp != null) {
-					temp = temp.getParentNode();
-				}
-				if (temp == null || temp instanceof ICSSStyleSheet) {
-					viewer.refresh();
-				} else {
-					viewer.refresh(temp);
-				}
-			}
-		}
-		if (eventType == INodeNotifier.ADD) {
-			if (notifier instanceof ICSSStyleSheet) {
-				ICSSNode temp = (changedFeature != null) ? (ICSSNode) changedFeature : (ICSSNode) newValue;
-				if (temp instanceof ICSSStyleRule) {
-					viewer.refresh();
-				} else {
-					for (;;) {
-						if (temp instanceof ICSSStyleRule) {
-							break;
-						}
-						temp = temp.getParentNode();
-						if (temp == null) {
-							break;
-						}
-					}
-				}
-				if (temp == null || (temp instanceof ICSSStyleSheet)) {
-					viewer.refresh();
-				} else {
-					viewer.refresh(temp);
-				}
-			} else {
-				if (newValue != null && (newValue instanceof ICSSStyleDeclItem)) {
-					viewer.refresh(((ICSSNode) newValue).getParentNode());
-				} else {
-					ICSSNode temp = (ICSSNode) notifier;
-					if (temp != null) {
-						temp = temp.getParentNode();
-					}
-					if (temp == null || (temp instanceof ICSSStyleSheet)) {
-						viewer.refresh();
-					} else {
-						viewer.refresh(temp);
-					}
-				}
-			}
-		} else if (eventType == INodeNotifier.REMOVE) {
-			if (notifier instanceof ICSSStyleSheet) {
-				ICSSNode temp = (changedFeature != null) ? (ICSSNode) changedFeature : (ICSSNode) newValue;
-				if (temp instanceof ICSSStyleRule) {
-					viewer.refresh();
-				} else {
-					for (;;) {
-						if (temp instanceof ICSSStyleRule) {
-							break;
-						}
-						temp = temp.getParentNode();
-						if (temp == null) {
-							break;
-						}
-					}
-					if (temp == null || (temp instanceof ICSSStyleSheet)) {
-						viewer.refresh();
-					} else {
-						viewer.refresh(temp);
-					}
-				}
-			} else {
-				//							viewer.refresh(notifier);
-				ICSSNode temp = (ICSSNode) notifier;
-				if (temp != null) {
-					temp = temp.getParentNode();
-				}
-				if (temp == null || (temp instanceof ICSSStyleSheet)) {
-					viewer.refresh();
-				} else {
-					viewer.refresh(temp);
-				}
-			}
-		}
-		//				}
-	}
-
-	/**
-	 *  
-	 */
-	public void internalRefreshAll() {
-		Collection listeners = ((JFaceNodeAdapterFactoryCSS) adapterFactory).getListeners();
-		Iterator iterator = listeners.iterator();
-		while (iterator.hasNext()) {
-			Object listener = iterator.next();
-			if (listener instanceof StructuredViewer) {
-				StructuredViewer viewer = (StructuredViewer) listener;
-				if (viewer.getControl() != null && !viewer.getControl().isDisposed()) {
-					viewer.refresh();
-				}
-			} else if (listener instanceof PropertySheetPage) {
-				PropertySheetPage page = (PropertySheetPage) listener;
-				if (page.getControl() != null && !page.getControl().isDisposed()) {
-					page.refresh();
-				}
-			}
-		}
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type.equals(ADAPTER_KEY);
-	}
-
-	/**
-	 * Called by the object being adapter (the notifier) when something has
-	 * changed.
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (notifyQueue == null)
-			notifyQueue = new Vector();
-		notifyQueue.add(new NotifyContext(notifier, eventType, changedFeature, oldValue, newValue, pos));
-		// TODO-future: there's probably a better way than relying on async
-		// exec
-		if (Thread.currentThread() == getDisplay().getThread())
-			getDisplay().timerExec(delayMSecs, this);
-		else
-			getDisplay().asyncExec(new Runnable() {
-				public void run() {
-					if (getDisplay() != null) {
-						getDisplay().timerExec(delayMSecs, this);
-					}
-				}
-			});
-	}
-
-	Display getDisplay() {
-		return PlatformUI.getWorkbench().getDisplay();
-	}
-
-	/**
-	 * this method is intended only for timerExec()
-	 */
-	public void run() {
-		lastUpdater = new StyleViewUpdater();
-		getDisplay().asyncExec(lastUpdater);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeAdapterFactoryCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeAdapterFactoryCSS.java
deleted file mode 100644
index df96b82..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeAdapterFactoryCSS.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.views.contentoutline;
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.xml.ui.views.contentoutline.JFaceNodeAdapterFactory;
-
-public class JFaceNodeAdapterFactoryCSS extends JFaceNodeAdapterFactory {
-	public JFaceNodeAdapterFactoryCSS() {
-		this(IJFaceNodeAdapter.class, true);
-	}
-
-	public JFaceNodeAdapterFactoryCSS(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-
-	protected void initAdapter(INodeAdapter adapter, INodeNotifier node) {
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier node) {
-		if (singletonAdapter == null) {
-			// create the JFaceNodeAdapter
-			singletonAdapter = new CSSNodeAdapter(this);
-			initAdapter(singletonAdapter, node);
-		}
-		return singletonAdapter;
-	}
-
-	public void release() {
-	}
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeContentProviderCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeContentProviderCSS.java
deleted file mode 100644
index be581ec..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeContentProviderCSS.java
+++ /dev/null
@@ -1,263 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.views.contentoutline;
-
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.wst.css.core.document.ICSSDocument;
-import org.eclipse.wst.css.core.document.ICSSModel;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclaration;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.xml.ui.views.contentoutline.JFaceNodeContentProvider;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.stylesheets.MediaList;
-
-
-/**
- * A Content provider for a JFace viewer used to display DOM nodes. This
- * content provider takes an adapter factory to create JFace adapters for the
- * nodes in the tree.
- */
-public class JFaceNodeContentProviderCSS extends JFaceNodeContentProvider {
-	protected IAdapterFactory adapterFactory;
-
-	//protected DomainNotifier domainNotifier;
-	/**
-	 */
-	public JFaceNodeContentProviderCSS(IAdapterFactory adapterFactory) {
-		super(adapterFactory);
-		this.adapterFactory = adapterFactory;
-	}
-
-	/**
-	 */
-	protected void adaptElements(Object element) {
-
-		ICSSNode node;
-
-		if (element instanceof ICSSModel) {
-			ICSSDocument doc = ((ICSSModel) element).getDocument();
-			adapterFactory.adapt((INodeNotifier) doc);
-			node = doc.getFirstChild();
-		} else if (element instanceof ICSSNode) {
-			node = ((ICSSNode) element).getFirstChild();
-		} else {
-			return;
-		}
-
-		while (node != null) {
-			//		if (node instanceof CSSRule) {
-			adapterFactory.adapt((INodeNotifier) node);
-			adaptElements(node);
-			//		}
-			//		else{
-			//			adapterFactory.adapt((INodeNotifier) node);
-			//		}
-
-			node = node.getNextSibling();
-		}
-	}
-
-	/**
-	 */
-	protected void addElements(Object element, ArrayList v) {
-
-		ICSSNode node;
-
-		if (element instanceof ICSSModel) {
-			ICSSModel model = (ICSSModel) element;
-			ICSSDocument doc = model.getDocument();
-			//      addAdapter((INodeNotifier) doc);
-			adapterFactory.adapt((INodeNotifier) doc);
-			node = doc.getFirstChild();
-		} else if (element instanceof ICSSNode) {
-			node = ((ICSSNode) element).getFirstChild();
-		} else
-			return;
-
-		while (node != null) {
-			if (node instanceof CSSRule) {
-				v.add(node);
-			}
-
-			node = node.getNextSibling();
-		}
-
-	}
-
-	/**
-	 * The visual part that is using this content provider is about to be
-	 * disposed. Deallocate all allocated SWT resources.
-	 */
-	public void dispose() {
-	}
-
-	/**
-	 * Returns an enumeration containing all child nodes of the given element,
-	 * which represents a node in a tree. The difference to
-	 * <code>IStructuredContentProvider.getElements(Object)</code> is as
-	 * follows: <code>getElements</code> is called to obtain the tree
-	 * viewer's root elements. Method <code>getChildren</code> is used to
-	 * obtain the children of a given node in the tree, which can can be a
-	 * root node, too.
-	 */
-	public Object[] getChildren(Object object) {
-		if (object instanceof ICSSNode) {
-			ICSSNode node = (ICSSNode) object;
-			short nodeType = node.getNodeType();
-			if (nodeType == ICSSNode.STYLERULE_NODE || nodeType == ICSSNode.PAGERULE_NODE || nodeType == ICSSNode.FONTFACERULE_NODE) {
-				for (node = node.getFirstChild(); node != null && !(node instanceof ICSSStyleDeclaration); node.getNextSibling()) {
-					// nop
-				}
-			}
-			List children = new ArrayList();
-			ICSSNode child = (node != null) ? node.getFirstChild() : null;
-			while (child != null) {
-				if (!(child instanceof ICSSPrimitiveValue) && !(child instanceof MediaList)) {
-					children.add(child);
-				}
-				child = child.getNextSibling();
-			}
-			return children.toArray();
-		}
-		return new Object[0];
-	}
-
-	/**
-	 * Returns an enumeration with the elements belonging to the passed
-	 * element. These elements can be presented as rows in a table, items in a
-	 * list etc.
-	 */
-	public Object[] getElements(Object object) {
-		// The root is usually an instance of an XMLStructuredModel in
-		// which case we want to extract the document.
-
-		if (object instanceof ICSSModel) {
-			ArrayList v = new ArrayList();
-			//		internalGetElements(object, v);
-			addElements(object, v);
-			adaptElements(object);
-			return v.toArray();
-		}
-		return new Object[0];
-
-	}
-
-	/**
-	 * Returns the parent for the given element. This method can return
-	 * <code>null</code> indicating that the parent can't be computed. In
-	 * this case the tree viewer can't expand a given node correctly if
-	 * requested.
-	 */
-	public Object getParent(Object object) {
-		//  IJFaceNodeAdapter adapter = getAdapter(object);
-		/*
-		 * ICSSNodeAdapter adapter = (ICSSNodeAdapter)getAdapter(object); if
-		 * (adapter != null) return adapter.getParent((ICSSNode) object); else
-		 * return null;
-		 */
-		if (object instanceof ICSSNode) {
-			ICSSNode node = ((ICSSNode) object).getParentNode();
-			if (node != null && node.getNodeType() == ICSSNode.STYLEDECLARATION_NODE) {
-				node = node.getParentNode();
-			}
-			return node;
-		}
-		return null;
-	}
-
-	/**
-	 * Returns <code>true</code> if the given element has children.
-	 * Otherwise <code>false</code> is returned.
-	 */
-	public boolean hasChildren(Object object) {
-		//  return getAdapter(object).hasChildren((ICSSNode) object);
-		if (object instanceof ICSSNode) {
-			if (object instanceof ICSSStyleDeclItem)
-				return false;
-			else
-				return ((ICSSNode) object).hasChildNodes();
-		}
-		return false;
-	}
-
-	/**
-	 * Called when the viewer's input is changing from <code>oldInput</code>
-	 * to <code>newInput</code>. Both <code>newInput</code> and
-	 * <code>oldInput</code> can be <code>null</code>. If
-	 * <code>oldInput</code> is <code>null</code> it is the viewer's first
-	 * connection to the content provider. If <code>newInput</code> is
-	 * <code>null</code> the visual part is disconnected from any input. A
-	 * typical implementation of this methods registers the content provider
-	 * as a listener to changes on the new input, and deregisters the viewer
-	 * from the old input. The content provider then updates the viewer in
-	 * response to change notifications from the input.
-	 */
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		//// If there was no old input, then we must be providing content for
-		// this part for the first time...
-		//if (oldInput == null) {
-		//// If the part is an IDomainListener then make the part start
-		// listening to us.
-		//if (viewer instanceof IDomainListener)
-		//domainNotifier.addDomainListener((IDomainListener) viewer);
-		//}
-		//// If there is no new input, we must clean ourselves up as if we'd
-		// never seen the viewer.
-		//else
-		//if (newInput == null) {
-		//// If the part is an IDomainListener, then we make it stop
-		// listening to us.
-		//if (viewer instanceof IDomainListener)
-		//domainNotifier.removeDomainListener((IDomainListener) viewer);
-
-		//}
-	}
-
-	/**
-	 */
-	/*
-	 * protected void internalGetElements(Object element, ArrayList v) {
-	 * 
-	 * ICSSNode node;
-	 * 
-	 * if (element instanceof ICSSModel) { ICSSModel model =
-	 * (ICSSModel)element; ICSSDocument doc = model.getDocument();
-	 * adapterFactory.adapt((INodeNotifier)doc); node = doc.getFirstChild(); }
-	 * else if (element instanceof ICSSNode) { node =
-	 * ((ICSSNode)element).getFirstChild(); } else { return; }
-	 * 
-	 * while (node != null) { switch (node.getNodeType()) { case
-	 * ICSSNode.STYLEDECLARATION_NODE: adapterFactory.adapt((INodeNotifier)
-	 * node); break; case ICSSNode.STYLERULE_NODE: case
-	 * ICSSNode.FONTFACERULE_NODE: case ICSSNode.PAGERULE_NODE: case
-	 * ICSSNode.IMPORTRULE_NODE: case ICSSNode.MEDIARULE_NODE: v.add(node);
-	 * adapterFactory.adapt((INodeNotifier) node); break; default:
-	 * adapterFactory.adapt((INodeNotifier) node); break; }
-	 * 
-	 * node = node.getNextSibling(); }
-	 *  }
-	 */
-	/**
-	 * Checks whether the given element is deleted or not.
-	 */
-	public boolean isDeleted(Object element) {
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeLabelProviderCSS.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeLabelProviderCSS.java
deleted file mode 100644
index d9331da..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/JFaceNodeLabelProviderCSS.java
+++ /dev/null
@@ -1,231 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.views.contentoutline;
-
-
-
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.css.core.document.ICSSMediaRule;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSPageRule;
-import org.eclipse.wst.css.core.document.ICSSPrimitiveValue;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.document.ICSSStyleRule;
-import org.eclipse.wst.css.ui.image.CSSImageHelper;
-import org.eclipse.wst.css.ui.image.CSSImageType;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.w3c.dom.css.CSSImportRule;
-import org.w3c.dom.css.CSSRule;
-import org.w3c.dom.stylesheets.MediaList;
-
-
-/**
- * A class that uses a JFaceNodeAdapterFactory to provide adapters to provide
- * the labels and images for DOM nodes.
- */
-public class JFaceNodeLabelProviderCSS implements ILabelProvider {
-	protected IAdapterFactory fAdapterFactory;
-
-	/**
-	 * JFaceNodeLabelProvider constructor comment.
-	 */
-	public JFaceNodeLabelProviderCSS(IAdapterFactory adapterFactory) {
-		super();
-		this.fAdapterFactory = adapterFactory;
-	}
-
-	/**
-	 * Adds a listener to the label provider. A label provider should inform
-	 * its listener about state changes that enforces rendering of the visual
-	 * part that uses this label provider.
-	 */
-	public void addListener(ILabelProviderListener listener) {
-		// The label provider state never changes so we do not have
-		// to implement this method.
-	}
-
-	/**
-	 * The visual part that is using this label provider is about to be
-	 * disposed. Deallocate all allocated SWT resources.
-	 */
-	public void dispose() {
-		// Nothing to dispose
-	}
-
-	/**
-	 * Returns the JFace adapter for the specified object.
-	 * 
-	 * @return com.ibm.sed.view.tree.DOMJFaceAdapter The JFace adapter
-	 * @param adaptable
-	 *            java.lang.Object The object to get the adapter for
-	 */
-	//protected IJFaceNodeAdapter getAdapter(Object adaptable) {
-	//  return (IJFaceNodeAdapter) adapterFactory.adapt((INodeNotifier)
-	// adaptable);
-	protected IJFaceNodeAdapter getAdapter(Object adaptable) {
-		return (IJFaceNodeAdapter) fAdapterFactory.adapt((INodeNotifier) adaptable);
-	}
-
-	/**
-	 * Returns the image for the label of the given element, for use in the
-	 * given viewer.
-	 * 
-	 * @param viewer
-	 *            The viewer that displays the element.
-	 * @param element
-	 *            The element for which to provide the label image. Element
-	 *            can be <code>null</code> indicating no input object is set
-	 *            to the viewer.
-	 */
-	public Image getImage(Object element) {
-		//  return getAdapter(element).getLabelImage((Node) element);
-
-
-		if (element instanceof ICSSNode) {
-			CSSImageHelper helper = CSSImageHelper.getInstance();
-			return helper.getImage(CSSImageType.getImageType((ICSSNode) element));
-			//		Image image = getCSSNodeImage(element);
-			//		return image;
-			//      return getAdapter(element).getLabelImage((ICSSNode) element);
-		}
-		return null;
-	}
-
-	/**
-	 * Insert the method's description here.
-	 */
-	public String getLabelText(Viewer viewer, Object element) {
-		return ""; //$NON-NLS-1$
-	}
-
-	/**
-	 * Returns the text for the label of the given element, for use in the
-	 * given viewer.
-	 * 
-	 * @param viewer
-	 *            The viewer that displays the element.
-	 * @param element
-	 *            The element for which to provide the label text. Element can
-	 *            be <code>null</code> indicating no input object is set to
-	 *            the viewer.
-	 */
-	public String getText(Object element) {
-		// This was returning null, on occasion ... probably should not be,
-		// but
-		// took the quick and easy way out for now. (dmw 3/8/01)
-
-		String result = "";//$NON-NLS-1$
-		String mediaText;
-		if (element instanceof ICSSNode) {
-			switch (((ICSSNode) element).getNodeType()) {
-				case ICSSNode.STYLERULE_NODE :
-					result = ((ICSSStyleRule) element).getSelectors().getString();
-					break;
-				case ICSSNode.FONTFACERULE_NODE :
-					result = "@font-face";//$NON-NLS-1$
-					break;
-				case ICSSNode.IMPORTRULE_NODE :
-					result = ((CSSImportRule) element).getHref();
-					mediaText = getMediaText((CSSImportRule) element);
-					if (mediaText != null && 0 < mediaText.length()) {
-						result += " (" + mediaText + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-					}
-					break;
-				case ICSSNode.PAGERULE_NODE :
-					result = ((ICSSPageRule) element).getSelectors().getString();
-					break;
-				case ICSSNode.STYLEDECLARATION_NODE :
-					result = "properties";//$NON-NLS-1$
-					break;
-				case ICSSNode.STYLEDECLITEM_NODE :
-					result = ((ICSSStyleDeclItem) element).getPropertyName();
-					break;
-				case ICSSNode.PRIMITIVEVALUE_NODE :
-					result = ((ICSSPrimitiveValue) element).getStringValue();
-					break;
-				case ICSSNode.MEDIARULE_NODE :
-					result = "@media";//$NON-NLS-1$
-					mediaText = getMediaText((ICSSMediaRule) element);
-					if (mediaText != null && 0 < mediaText.length()) {
-						result += " (" + mediaText + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-					}
-					break;
-				case ICSSNode.CHARSETRULE_NODE :
-					result = "@charset";//$NON-NLS-1$
-					break;
-				case ICSSNode.MEDIALIST_NODE :
-					result = ((MediaList) element).getMediaText();
-					break;
-				default :
-					break;
-			}
-		}
-
-		//  if (element instanceof ICSSNode) {
-		//      ICSSNode node = ((ICSSNode)element);
-		//      result = getAdapter(element).getLabelText((ICSSNode) element);
-		//  }
-		return result;
-	}
-
-	private String getMediaText(CSSRule rule) {
-		String result = ""; //$NON-NLS-1$
-		ICSSNode child = (rule != null) ? ((ICSSNode) rule).getFirstChild() : null;
-		while (child != null) {
-			if (child.getNodeType() == ICSSNode.MEDIALIST_NODE) {
-				result = ((MediaList) child).getMediaText();
-				break;
-			}
-			child = child.getNextSibling();
-		}
-		return result;
-	}
-
-	/**
-	 * Checks whether this label provider is affected by the given domain
-	 * event.
-	 */
-	public boolean isAffected(Object dummy) {//DomainEvent event) {
-		//return event.isModifier(DomainEvent.NON_STRUCTURE_CHANGE);
-		return true;
-
-	}
-
-	/**
-	 * Returns whether the label would be affected by a change to the given
-	 * property of the given element. This can be used to optimize a
-	 * non-structural viewer update. If the property mentioned in the update
-	 * does not affect the label, then the viewer need not update the label.
-	 * 
-	 * @param element
-	 *            the element
-	 * @param property
-	 *            the property
-	 * @return <code>true</code> if the label would be affected, and
-	 *         <code>false</code> if it would be unaffected
-	 */
-	public boolean isLabelProperty(Object element, String property) {
-		return false;
-	}
-
-	/**
-	 * Removes a listener from the label provider.
-	 */
-	public void removeListener(ILabelProviderListener listener) {
-		// The label provider state never changes so we do not have
-		// to implement this method.
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/SortAction.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/SortAction.java
deleted file mode 100644
index ea59ec4..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/contentoutline/SortAction.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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 Jan 22, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.css.ui.views.contentoutline;
-
-import java.text.Collator;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.css.ui.internal.editor.CSSEditorPluginImages;
-import org.eclipse.wst.sse.ui.views.contentoutline.PropertyChangeUpdateAction;
-
-/**
- * Based on com.ibm.etools.dtd.editor.DTDContentOutlinePage#SortAction
- */
-class SortAction extends PropertyChangeUpdateAction {
-	private TreeViewer treeViewer;
-
-	public SortAction(TreeViewer viewer, IPreferenceStore store, String preferenceKey) {
-		super(CSSUIPlugin.getResourceString("%SortAction.0"), store, preferenceKey, false); //$NON-NLS-1$
-		ImageDescriptor desc = AbstractUIPlugin.imageDescriptorFromPlugin(CSSUIPlugin.ID, CSSEditorPluginImages.IMG_OBJ_SORT);
-		setImageDescriptor(desc);
-		setToolTipText(getText());
-		treeViewer = viewer;
-		if (isChecked()) {
-			treeViewer.setSorter(new ViewerSorter(Collator.getInstance()));
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 */
-	public void update() {
-		super.update();
-		treeViewer.getControl().setVisible(false);
-		Object[] expandedElements = treeViewer.getExpandedElements();
-		if (isChecked()) {
-			treeViewer.setSorter(new ViewerSorter(Collator.getInstance()));
-		} else {
-			treeViewer.setSorter(null);
-		}
-		treeViewer.setInput(treeViewer.getInput());
-		treeViewer.setExpandedElements(expandedElements);
-		treeViewer.getControl().setVisible(true);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySheetConfiguration.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySheetConfiguration.java
deleted file mode 100644
index 5972406..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySheetConfiguration.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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 Jan 23, 2004
- * 
- * To change the template for this generated file go to Window - Preferences -
- * Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.css.ui.views.properties;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.sse.ui.views.properties.StructuredPropertySheetConfiguration;
-
-public class CSSPropertySheetConfiguration extends StructuredPropertySheetConfiguration {
-	public CSSPropertySheetConfiguration() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.views.properties.StructuredPropertySheetConfiguration#getSelection(org.eclipse.jface.viewers.ISelection,
-	 *      org.eclipse.ui.IWorkbenchPart)
-	 */
-	public ISelection getSelection(IWorkbenchPart selectingPart, ISelection selection) {
-		ISelection preferredSelection = super.getSelection(selectingPart, selection);
-		if (preferredSelection instanceof IStructuredSelection) {
-			Object[] objects = ((IStructuredSelection) preferredSelection).toArray();
-			for (int i = 0; i < objects.length; i++) {
-				if (objects[i] instanceof ICSSNode) {
-					ICSSNode node = (ICSSNode) objects[i];
-					while (node.getNodeType() == ICSSNode.PRIMITIVEVALUE_NODE || node.getNodeType() == ICSSNode.STYLEDECLITEM_NODE) {
-						node = node.getParentNode();
-						objects[i] = node;
-
-					}
-				}
-			}
-			preferredSelection = new StructuredSelection(objects);
-		}
-		return preferredSelection;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySource.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySource.java
deleted file mode 100644
index 2249ea5..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySource.java
+++ /dev/null
@@ -1,348 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.views.properties;
-
-import java.util.ArrayList;
-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.jface.dialogs.MessageDialog;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.document.ICSSNodeList;
-import org.eclipse.wst.css.core.document.ICSSStyleDeclItem;
-import org.eclipse.wst.css.core.metamodel.CSSMMCategory;
-import org.eclipse.wst.css.core.metamodel.CSSMMNode;
-import org.eclipse.wst.css.core.metamodel.CSSMetaModel;
-import org.eclipse.wst.css.core.metamodel.util.CSSMetaModelFinder;
-import org.eclipse.wst.css.core.metamodel.util.CSSMetaModelUtil;
-import org.eclipse.wst.css.ui.internal.CSSUIPlugin;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.w3c.dom.css.CSSStyleDeclaration;
-
-/**
- * A IPropertySource implementation for a JFace viewer used to display
- * propreties of DOM nodes. This takes an adapter factory to create JFace
- * adapters for the nodes in the tree.
- */
-public class CSSPropertySource implements INodeAdapter, IPropertySource {
-	protected ICSSNode fNode = null;
-	// for performance...
-	final static Class ADAPTER_KEY = IPropertySource.class;
-
-	/**
-	 * DOMPropertySource constructor comment.
-	 */
-	public CSSPropertySource(INodeNotifier target) {
-		super();
-		fNode = (ICSSNode) target;
-	}
-
-	protected IPropertyDescriptor createDefaultPropertyDescriptor(String attributeName) {
-		// the displayName MUST be set
-		IPropertyDescriptor descriptor = new CSSTextPropertyDescriptor(attributeName, attributeName, fNode);
-		//	IPropertyDescriptor descriptor = new
-		// TextPropertyDescriptor(attributeName, attributeName);
-		return descriptor;
-	}
-
-	protected IPropertyDescriptor createPropertyDescriptor(CSSMMNode node, String category) {
-		return createPropertyDescriptor(node.getName(), category);
-	}
-
-	protected IPropertyDescriptor createPropertyDescriptor(String name, String category) {
-		IPropertyDescriptor descriptor = null;
-		if (name != null && 0 < name.length()) {
-			name = name.toLowerCase();
-			if (category == null) {
-				category = CSSUIPlugin.getResourceString("%INFO_Not_Categorized_1"); //$NON-NLS-1$
-			}
-			descriptor = new CSSTextPropertyDescriptor(name, name, fNode, category);
-			//			if (category == null) {
-			//				descriptor = new CSSTextPropertyDescriptor(name, name, fNode);
-			//			} else {
-			//				descriptor = new CSSTextPropertyDescriptor(name, name, fNode,
-			// category);
-			//			}
-		}
-		return descriptor;
-	}
-
-	/**
-	 * Returns a value for this object that can be editted in a property
-	 * sheet.
-	 * 
-	 * @return a value that can be editted
-	 */
-	public Object getEditableValue() {
-		return null;
-	}
-
-	/**
-	 * Returns the current collection of property descriptors.
-	 * 
-	 * @return a vector containing all descriptors.
-	 */
-	public IPropertyDescriptor[] getPropertyDescriptors() {
-		CSSMetaModel metamodel = CSSMetaModelFinder.getInstance().findMetaModelFor(fNode);
-		Iterator iProperties = Collections.EMPTY_LIST.iterator();
-		switch (fNode.getNodeType()) {
-			case ICSSNode.STYLERULE_NODE :
-			case ICSSNode.FONTFACERULE_NODE :
-			case ICSSNode.PAGERULE_NODE :
-			case ICSSNode.STYLEDECLARATION_NODE :
-				CSSMMNode mmParent = new CSSMetaModelUtil(metamodel).getMetaModelNodeFor(fNode);
-				if (mmParent != null) {
-					iProperties = mmParent.getChildNodes();
-				}
-				break;
-			case ICSSNode.STYLEDECLITEM_NODE :
-				CSSMMNode mmNode = new CSSMetaModelUtil(metamodel).getMetaModelNodeFor(fNode);
-				if (mmNode != null) {
-					iProperties = Collections.singletonList(mmNode).iterator();
-				}
-				break;
-			default :
-				break;
-		}
-
-		// setup categories
-		Map categories = new HashMap();
-		Iterator iCategories = metamodel.getCategories();
-		while (iCategories.hasNext()) {
-			CSSMMCategory category = (CSSMMCategory) iCategories.next();
-			categories.put(category.getName(), category.getCaption());
-		}
-
-		// collect property names
-		Set declaredProperties = new HashSet();
-		if (iProperties.hasNext()) {
-			CSSStyleDeclaration declaration = getDeclarationNode();
-			if (declaration != null) {
-				ICSSNodeList nodeList = ((ICSSNode) declaration).getChildNodes();
-				int nProps = (nodeList != null) ? nodeList.getLength() : 0;
-				for (int i = 0; i < nProps; i++) {
-					ICSSNode node = nodeList.item(i);
-					if (node instanceof ICSSStyleDeclItem) {
-						String name = ((ICSSStyleDeclItem) node).getPropertyName();
-						if (name != null && 0 < name.length()) {
-							declaredProperties.add(name.toLowerCase());
-						}
-					}
-				}
-			}
-		}
-
-		List descriptors = new ArrayList();
-
-		// first: properties from content model
-		while (iProperties.hasNext()) {
-			CSSMMNode node = (CSSMMNode) iProperties.next();
-			if (node.getType() == CSSMMNode.TYPE_PROPERTY || node.getType() == CSSMMNode.TYPE_DESCRIPTOR) {
-				String category = (String) categories.get(node.getAttribute("category")); //$NON-NLS-1$
-				String name = node.getName().toLowerCase();
-				if (declaredProperties.contains(name)) {
-					declaredProperties.remove(name);
-				}
-				IPropertyDescriptor descriptor = createPropertyDescriptor(name, category);
-				if (descriptor != null) {
-					descriptors.add(descriptor);
-				}
-			}
-		}
-
-		// second: existing properties but not in content model
-		Iterator iRemains = declaredProperties.iterator();
-		while (iRemains.hasNext()) {
-			IPropertyDescriptor descriptor = createPropertyDescriptor((String) iRemains.next(), null);
-			if (descriptor != null) {
-				descriptors.add(descriptor);
-			}
-		}
-
-		IPropertyDescriptor[] resultArray = new IPropertyDescriptor[descriptors.size()];
-		return (IPropertyDescriptor[]) descriptors.toArray(resultArray);
-	}
-
-	/**
-	 * Returns the current value for the named property.
-	 * 
-	 * @param name
-	 *            the name of the property as named by its property descriptor
-	 * @return the current value of the property
-	 */
-	public Object getPropertyValue(Object name) {
-		if (name == null) {
-			return ""; //$NON-NLS-1$
-		}
-
-		String valueString = null;
-		String nameString = name.toString();
-
-		CSSStyleDeclaration declaration = null;
-
-		switch (fNode.getNodeType()) {
-			case ICSSNode.STYLEDECLITEM_NODE :
-				valueString = ((ICSSStyleDeclItem) fNode).getCSSValueText();
-				break;
-			case ICSSNode.STYLERULE_NODE :
-			case ICSSNode.FONTFACERULE_NODE :
-			case ICSSNode.PAGERULE_NODE :
-				declaration = (CSSStyleDeclaration) fNode.getFirstChild();
-				if (declaration != null) {
-					valueString = declaration.getPropertyValue(nameString);
-				}
-				break;
-			case ICSSNode.STYLEDECLARATION_NODE :
-				valueString = ((CSSStyleDeclaration) fNode).getPropertyValue(nameString);
-				break;
-			case ICSSNode.PRIMITIVEVALUE_NODE :
-				ICSSNode parent = fNode;
-				while (parent != null && !(parent instanceof ICSSStyleDeclItem)) {
-					parent = parent.getParentNode();
-				}
-				if (parent != null) {
-					valueString = ((ICSSStyleDeclItem) parent).getCSSValueText();
-				}
-				break;
-			default :
-				break;
-		}
-
-		if (valueString == null) {
-			valueString = ""; //$NON-NLS-1$
-		}
-
-		return valueString;
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(java.lang.Object type) {
-		return type.equals(ADAPTER_KEY);
-	}
-
-	/**
-	 * Returns whether the property value has changed from the default.
-	 * 
-	 * @return <code>true</code> if the value of the specified property has
-	 *         changed from its original default value; <code>false</code>
-	 *         otherwise.
-	 */
-	public boolean isPropertySet(Object property) {
-		if (property == null) {
-			return false;
-		}
-		CSSStyleDeclaration declaration = getDeclarationNode();
-		if (declaration != null) {
-			String value = declaration.getPropertyValue(property.toString());
-			if (value != null && 0 < value.length()) {
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, java.lang.Object changedFeature, java.lang.Object oldValue, java.lang.Object newValue, int pos) {
-	}
-
-	/**
-	 * Resets the specified property's value to its default value.
-	 * 
-	 * @param property
-	 *            the property to reset
-	 */
-	public void resetPropertyValue(Object str) {
-		if (str == null) {
-			return;
-		}
-		CSSStyleDeclaration declaration = getDeclarationNode();
-		if (declaration != null) {
-			declaration.removeProperty(str.toString());
-		}
-	}
-
-	/**
-	 * Sets the named property to the given value.
-	 * 
-	 * @param name
-	 *            the name of the property being set
-	 * @param value
-	 *            the new value for the property
-	 */
-	public void setPropertyValue(Object name, Object value) {
-		if (name == null) {
-			return;
-		}
-		String valueString = (value != null) ? value.toString() : null;
-		String nameString = name.toString();
-		CSSStyleDeclaration declaration = getDeclarationNode();
-		if (declaration != null) {
-			try {
-				if (valueString == null || valueString.length() <= 0) {
-					declaration.removeProperty(nameString);
-				} else {
-					declaration.setProperty(nameString, valueString, ""); //$NON-NLS-1$
-				}
-			} catch (Exception e) {
-				IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-				String title = CSSUIPlugin.getResourceString("%Title.InvalidValue"); //$NON-NLS-1$
-				String message = CSSUIPlugin.getResourceString("%Message.InvalidValue"); //$NON-NLS-1$
-				MessageDialog.openWarning(window.getShell(), title, message);
-			}
-		}
-	}
-
-	private CSSStyleDeclaration getDeclarationNode() {
-		CSSStyleDeclaration declaration = null;
-
-		switch (fNode.getNodeType()) {
-			case ICSSNode.STYLEDECLITEM_NODE :
-				declaration = (CSSStyleDeclaration) fNode.getParentNode();
-				break;
-			case ICSSNode.STYLERULE_NODE :
-			case ICSSNode.FONTFACERULE_NODE :
-			case ICSSNode.PAGERULE_NODE :
-				declaration = (CSSStyleDeclaration) fNode.getFirstChild();
-				break;
-			case ICSSNode.STYLEDECLARATION_NODE :
-				declaration = (CSSStyleDeclaration) fNode;
-				break;
-			case ICSSNode.PRIMITIVEVALUE_NODE :
-				ICSSNode parent = fNode;
-				while (parent != null && !(parent instanceof CSSStyleDeclaration)) {
-					parent = parent.getParentNode();
-				}
-				if (parent != null) {
-					declaration = (CSSStyleDeclaration) parent;
-				}
-				break;
-			default :
-				break;
-		}
-
-		return declaration;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySourceAdapterFactory.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySourceAdapterFactory.java
deleted file mode 100644
index feed515..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSPropertySourceAdapterFactory.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.css.ui.views.properties;
-
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-
-
-
-//import com.ibm.sed.edit.xml.DOMPropertySource;
-public class CSSPropertySourceAdapterFactory extends AbstractAdapterFactory {
-	/**
-	 * PropertySourceAdapterFactory constructor comment.
-	 */
-	public CSSPropertySourceAdapterFactory() {
-		super();
-	}
-
-	/**
-	 * PropertySourceAdapterFactory constructor comment.
-	 * 
-	 * @param adapterKey
-	 *            java.lang.Object
-	 * @param registerAdapters
-	 *            boolean
-	 */
-	public CSSPropertySourceAdapterFactory(Object newAdapterKey, boolean newRegisterAdapters) {
-		super(newAdapterKey, newRegisterAdapters);
-	}
-
-	/**
-	 * createAdapter method comment.
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		// at the moment, only one implementation exists
-		return new CSSPropertySource(target);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSTextPropertyDescriptor.java b/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSTextPropertyDescriptor.java
deleted file mode 100644
index 366a72e..0000000
--- a/bundles/org.eclipse.wst.css.ui/src/org/eclipse/wst/css/ui/views/properties/CSSTextPropertyDescriptor.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.css.ui.views.properties;
-
-
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorReference;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.css.core.document.ICSSModel;
-import org.eclipse.wst.css.core.document.ICSSNode;
-import org.eclipse.wst.css.core.util.CSSPathService;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.xml.core.document.XMLNode;
-
-/**
- */
-public class CSSTextPropertyDescriptor extends TextPropertyDescriptor {
-	private final ICSSNode fNode;
-
-	/**
-	 * CSSTextPropertyDescriptor constructor comment.
-	 * 
-	 * @param id
-	 *            java.lang.String
-	 * @param displayName
-	 *            java.lang.String
-	 */
-	public CSSTextPropertyDescriptor(String id, String displayName, ICSSNode node) {
-		super(id, displayName);
-		this.fNode = node;
-	}
-
-	public CSSTextPropertyDescriptor(String id, String displayName, ICSSNode node, String category) {
-		super(id, displayName);
-		this.fNode = node;
-		setCategory(category);
-	}
-
-	/**
-	 * @return org.eclipse.jface.viewers.CellEditor
-	 * @param parent
-	 *            org.eclipse.swt.widgets.Composite
-	 */
-	public CellEditor createPropertyEditor(Composite parent) {
-		ICSSModel model = fNode.getOwnerDocument().getModel();
-		if (model == null)
-			return null;
-		if (model.getStyleSheetType() == ICSSModel.EXTERNAL && findEditor(model) == null)
-			return null;
-		// check whether IFile is readonly to prohibit editing before
-		// validateEdit()
-		IStructuredModel structuredModel = model;
-		if (model.getStyleSheetType() != ICSSModel.EXTERNAL) {
-			structuredModel = ((XMLNode) model.getOwnerDOMNode()).getModel();
-			if (structuredModel == null)
-				return null;
-		}
-		IFile file = CSSPathService.location2File(structuredModel.getBaseLocation());
-		if (file == null || file.isReadOnly())
-			return null;
-
-		return super.createPropertyEditor(parent);
-	}
-
-	private static IEditorPart findEditor(ICSSModel model) {
-		IWorkbench workbench = PlatformUI.getWorkbench();
-		IWorkbenchWindow[] windows = workbench.getWorkbenchWindows();
-		for (int i = 0; i < windows.length; i++) {
-			IWorkbenchPage[] pages = windows[i].getPages();
-			for (int j = 0; j < pages.length; j++) {
-				IEditorReference[] editors = pages[j].getEditorReferences();
-				for (int k = 0; k < editors.length; k++) {
-					IEditorPart editPart = editors[k].getEditor(false);
-					if (editPart != null) {
-						IEditorInput editorInput = editPart.getEditorInput();
-						if (editorInput instanceof IFileEditorInput) {
-							IFile file = ((IFileEditorInput) editorInput).getFile();
-							if (file != null) {
-								//TODO Urgent needs to be fixed
-								// I think we need 'equals' (or 'equivalent'
-								// on model) for cases like this
-								if (StructuredModelManager.getModelManager().calculateId(file).equals(model.getId())) {
-									return editPart;
-								}
-							}
-						}
-					}
-				}
-			}
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.dtd.core/.classpath b/bundles/org.eclipse.wst.dtd.core/.classpath
deleted file mode 100644
index da51dd3..0000000
--- a/bundles/org.eclipse.wst.dtd.core/.classpath
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src/"/>
-	<classpathentry kind="src" path="contentmodel/"/>
-	<classpathentry kind="src" path="emfmodel/"/>
-	<classpathentry kind="src" path="saxparser/"/>
-	<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/bundles/org.eclipse.wst.dtd.core/.cvsignore b/bundles/org.eclipse.wst.dtd.core/.cvsignore
deleted file mode 100644
index f7d7920..0000000
--- a/bundles/org.eclipse.wst.dtd.core/.cvsignore
+++ /dev/null
@@ -1,6 +0,0 @@
-bin
-runtime
-dtdcore.jar
-*.zip
-build.xml
-temp.folder
diff --git a/bundles/org.eclipse.wst.dtd.core/.project b/bundles/org.eclipse.wst.dtd.core/.project
deleted file mode 100644
index 76249e5..0000000
--- a/bundles/org.eclipse.wst.dtd.core/.project
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.dtd.core</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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 5348b07..0000000
--- a/bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Wed Jan 12 15:55:38 EST 2005

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=error

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=error

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=warning

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore

-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.4

-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=500

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=enabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index fe8b7cb..0000000
--- a/bundles/org.eclipse.wst.dtd.core/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-#Thu Dec 16 07:40:58 EST 2004

-compilers.p.unused-element-or-attribute=0

-compilers.p.unresolved-ex-points=0

-compilers.p.unknown-element=0

-compilers.p.unknown-resource=0

-compilers.p.unknown-class=0

-compilers.p.unknown-attribute=0

-compilers.p.no-required-att=0

-eclipse.preferences.version=1

-compilers.p.unresolved-import=0

-compilers.p.illegal-att-value=0

-compilers.use-project=true

diff --git a/bundles/org.eclipse.wst.dtd.core/README.txt b/bundles/org.eclipse.wst.dtd.core/README.txt
deleted file mode 100644
index 5b71e3e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/README.txt
+++ /dev/null
@@ -1 +0,0 @@
-This plugin extends the core model to implement a dtd specific model.
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.dtd.core/build.properties b/bundles/org.eclipse.wst.dtd.core/build.properties
deleted file mode 100644
index 5c4cfcc..0000000
--- a/bundles/org.eclipse.wst.dtd.core/build.properties
+++ /dev/null
@@ -1,26 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-bin.includes = plugin.xml,\
-               *.jar,\
-               plugin.properties,\
-               icons/
-src.includes = plugin.xml,\
-               plugin.properties,\
-               build.xml,\
-               icons/
-source.dtdcore.jar = src/,\
-                     contentmodel/,\
-                     emfmodel/,\
-                     saxparser/
-                      
-output.dtdcore.jar = bin/
diff --git a/bundles/org.eclipse.wst.dtd.core/component.xml b/bundles/org.eclipse.wst.dtd.core/component.xml
deleted file mode 100644
index e4bb3f9..0000000
--- a/bundles/org.eclipse.wst.dtd.core/component.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model"
-	name="org.eclipse.wst.dtd">
-	<component-depends unrestricted="true"/>
-	<plugin id="org.eclipse.wst.dtd.core" />
-	<plugin id="org.eclipse.wst.dtd.ui" />
-	<plugin id="org.eclipse.wst.dtd.validation" />
-	<package name="org.eclipse.wst.dtd.core.contenttype" />
-	<package name="org.eclipse.wst.dtd.core.document" />
-	<package name="org.eclipse.wst.dtd.ui" />
-	<package name="org.eclipse.wst.dtd.ui.views.contentoutline"/>
-</component>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMDocumentEncodingHelper.java b/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMDocumentEncodingHelper.java
deleted file mode 100644
index 03bcfa8..0000000
--- a/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMDocumentEncodingHelper.java
+++ /dev/null
@@ -1,87 +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.dtd.core.internal.contentmodel;
-
-import java.io.InputStream;
-import java.net.URL;
-
-import org.eclipse.wst.sse.core.internal.encoding.EncodingHelper;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-public class CMDocumentEncodingHelper {
-	protected static void setEncodingInfo(CMDocument cmDocument, String uri) {
-		if (cmDocument != null) {
-			uri = addImpliedFileProtocol(uri);
-			InputStream inputStream = null;
-			try {
-				URL url = new URL(uri);
-				inputStream = url.openStream();
-				String[] encodingInfo = (String[]) cmDocument.getProperty("encodingInfo");
-				if (encodingInfo != null) {
-					// if (Display.getCurrent() != null)
-					// {
-					updateFromEncodingHelper(inputStream, encodingInfo);
-					// }
-					// else
-					// {
-					// encodingInfo[0] = "UTF8";
-					// encodingInfo[1] = "UTF-8";
-					// }
-				}
-			}
-			catch (Exception e) {
-			}
-			finally {
-				if (inputStream != null) {
-					try {
-						inputStream.close();
-					}
-					catch (Exception e) {
-					}
-				}
-			}
-		}
-	}
-
-	private static void updateFromEncodingHelper(InputStream iStream, String[] encodingInfo) {
-		EncodingHelper encodingHelper = new EncodingHelper(iStream);
-		encodingInfo[0] = encodingHelper.getEncoding() != null ? encodingHelper.getEncoding() : EncodingHelper.getDefaultEncoding();
-		encodingInfo[1] = encodingHelper.getEncodingTag() != null ? encodingHelper.getEncodingTag() : EncodingHelper.getDefaultEncodingTag();
-	}
-
-
-	// This code is taken from org.eclipse.wst.xml.uriresolver.util.URIHelper
-	// I didn't want to add this plugin as a dependency
-	// in order to simplify our xerces dependenies
-	protected static final String FILE_PROTOCOL = "file:";
-	protected static final String PROTOCOL_PATTERN = ":";
-
-	public static String addImpliedFileProtocol(String uri) {
-		if (!hasProtocol(uri)) {
-			uri = FILE_PROTOCOL + uri;
-		}
-		return uri;
-	}
-
-	public static boolean hasProtocol(String uri) {
-		boolean result = false;
-		if (uri != null) {
-			int index = uri.indexOf(PROTOCOL_PATTERN);
-			if (index != -1 && index > 2) // assume protocol with be length
-											// 3 so that the'C' in 'C:/' is
-											// not interpreted as a protocol
-			{
-				result = true;
-			}
-		}
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMDocumentFactoryDTD.java b/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMDocumentFactoryDTD.java
deleted file mode 100644
index 4df671e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMDocumentFactoryDTD.java
+++ /dev/null
@@ -1,41 +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.dtd.core.internal.contentmodel;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.factory.CMDocumentFactory;
-
-/**
- * This builder handles building .dtd grammar files
- */
-public class CMDocumentFactoryDTD implements CMDocumentFactory {
-	public CMDocumentFactoryDTD() {
-	}
-
-
-	public CMDocument createCMDocument(String uri) {
-		// work around a bug in our parsers
-		// todo... revisit this
-		//
-		String fileProtocol = "file:";
-		if (uri.startsWith(fileProtocol)) {
-			uri = uri.substring(fileProtocol.length());
-		}
-
-		CMDocument result = null;
-		try {
-			result = DTDImpl.buildCMDocument(uri);
-		}
-		catch (Exception e) {
-		}
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMNodeImpl.java b/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMNodeImpl.java
deleted file mode 100644
index b94baa2..0000000
--- a/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/CMNodeImpl.java
+++ /dev/null
@@ -1,36 +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.dtd.core.internal.contentmodel;
-
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public abstract class CMNodeImpl extends AdapterImpl implements CMNode {
-	protected static final String PROPERTY_DOCUMENTATION = "documentation";
-	protected static final String PROPERTY_DOCUMENTATION_SOURCE = "documentationSource";
-	protected static final String PROPERTY_DOCUMENTATION_LANGUAGE = "documentationLanguage";
-	protected static final String PROPERTY_MOF_NOTIFIER = "key";
-	protected static final String PROPERTY_DEFINITION_INFO = "http://org.eclipse.wst/cm/properties/definitionInfo";
-	protected static final String PROPERTY_DEFINITION = "http://org.eclipse.wst/cm/properties/definition";
-
-	public abstract Object getKey();
-
-	public boolean supports(String propertyName) {
-		return propertyName.equals(PROPERTY_MOF_NOTIFIER);
-	}
-
-	public Object getProperty(String propertyName) {
-		return null;
-	}
-
-	public void setProperty(String propertyName, Object object) {
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/DTDImpl.java b/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/DTDImpl.java
deleted file mode 100644
index df7d6e6..0000000
--- a/bundles/org.eclipse.wst.dtd.core/contentmodel/org/eclipse/wst/dtd/core/internal/contentmodel/DTDImpl.java
+++ /dev/null
@@ -1,779 +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.dtd.core.internal.contentmodel;
-
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.StringTokenizer;
-
-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.resource.impl.ResourceSetImpl;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDType;
-import org.eclipse.wst.dtd.core.internal.emf.impl.DTDBasicTypeImpl;
-import org.eclipse.wst.dtd.core.internal.emf.impl.DTDPackageImpl;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDMetrics;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDUtil;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocumentation;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMEntityDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMDataTypeImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMEntityDeclarationImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMNamedNodeMapImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMNodeListImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDescriptionBuilder;
-
-
-public class DTDImpl {
-	static {
-		// Call init on the DTD package to avoid strange initialization bugs
-		//
-		DTDPackageImpl.init();
-	}
-
-	protected static DTDAdapterFactoryImpl dtdAdapterFactoryImpl = new DTDAdapterFactoryImpl();
-	protected static CMDataTypeInfoTable cmDataTypeInfoTable = new CMDataTypeInfoTable();
-
-	public static CMDocument buildCMDocument(String uri) {
-		DTDFile dtdFile = buildDTDModel(uri);
-		CMDocument cmDocument = (CMDocument) getAdapter(dtdFile);
-		CMDocumentEncodingHelper.setEncodingInfo(cmDocument, uri);
-		return cmDocument;
-	}
-
-	public static DTDFile buildDTDModel(String uri) {
-		DTDUtil dtdUtil = new DTDUtil();
-		dtdUtil.setexpandEntityReferences(true);
-		dtdUtil.parse(new ResourceSetImpl(), uri);
-		return dtdUtil.getDTDFile();
-	}
-
-	public static CMDocument buildCMDocument(DTDFile dtdFile) {
-		return (CMDocument) getAdapter(dtdFile);
-	}
-
-	public static CMNode getAdapter(Notifier o) {
-		return (CMNode) dtdAdapterFactoryImpl.adapt(o);
-	}
-
-	public static int getMinOccurHelper(DTDRepeatableContent content) {
-		int occurence = content.getOccurrence().getValue();
-		boolean isOptional = (occurence == DTDOccurrenceType.OPTIONAL || occurence == DTDOccurrenceType.ZERO_OR_MORE);
-		return isOptional ? 0 : 1;
-	}
-
-	public static int getMaxOccurHelper(DTDRepeatableContent content) {
-		int occurence = content.getOccurrence().getValue();
-		boolean isMulti = (occurence == DTDOccurrenceType.ONE_OR_MORE || occurence == DTDOccurrenceType.ZERO_OR_MORE);
-		return isMulti ? -1 : 1;
-	}
-
-	public static class DTDAdapterFactoryImpl extends AdapterFactoryImpl {
-		public Adapter createAdapter(Notifier target) {
-			Adapter result = null;
-			if (target != null) {
-				if (target instanceof DTDAttribute) {
-					result = new DTDAttributeAdapter((DTDAttribute) target);
-				}
-				else if (target instanceof DTDElement) {
-					result = new DTDElementAdapter((DTDElement) target);
-				}
-				else if (target instanceof DTDElementReferenceContent) {
-					result = new DTDElementReferenceContentAdapter((DTDElementReferenceContent) target);
-				}
-				else if (target instanceof DTDFile) {
-					result = new DTDFileAdapter((DTDFile) target);
-				}
-				else if (target instanceof DTDGroupContent) {
-					result = new DTDGroupContentAdapter((DTDGroupContent) target);
-				}
-				else if (target instanceof DTDEntity) {
-					result = new DTDEntityAdapter((DTDEntity) target);
-				}
-			}
-			return result;
-		}
-
-		public Adapter adapt(Notifier target) {
-			return adapt(target, this);
-		}
-	}
-
-	/**
-	 * DTDBaseAdapter
-	 */
-	public static abstract class DTDBaseAdapter extends CMNodeImpl {
-		public String getNodeName() {
-			return "";
-		}
-
-		public boolean isAdapterForType(Object type) {
-			return type == dtdAdapterFactoryImpl;
-		}
-
-		public Object getProperty(String propertyName) {
-			Object result = null;
-			if (propertyName.equals("CMDocument")) {
-				result = getCMDocument();
-			}
-			else if (propertyName.equals(PROPERTY_DOCUMENTATION)) {
-				result = getDocumentation();
-			}
-			else if (propertyName.equals(PROPERTY_DEFINITION_INFO)) {
-				result = getDefinitionInfo();
-			}
-			else if (propertyName.equals(PROPERTY_DEFINITION)) {
-				result = getDefinition();
-			}
-			else if (propertyName.equals(PROPERTY_MOF_NOTIFIER)) {
-				result = getKey();
-			}
-			else if (propertyName.equals("spec")) {
-				result = getSpec();
-			}
-			else {
-				result = super.getProperty(propertyName);
-				if (result == null) {
-					CMDocument cmDocument = getCMDocument();
-					if (cmDocument instanceof DTDFileAdapter) {
-						AnnotationMap map = ((DTDFileAdapter) cmDocument).annotationMap;
-						if (map != null) {
-							String spec = getSpec();
-							if (spec != null) {
-								result = map.getProperty(getSpec(), propertyName);
-							}
-						}
-						if (result == null) {
-							Map globalPropertyMap = ((DTDFileAdapter) cmDocument).globalPropertyMap;
-							result = globalPropertyMap.get(propertyName);
-						}
-					}
-				}
-			}
-			return result;
-		}
-
-		public CMDocument getCMDocument() {
-			return null;
-		}
-
-		protected CMNodeList getDocumentation() {
-			return new CMNodeListImpl();
-		}
-
-		public String getDefinitionInfo() {
-			return null;
-		}
-
-		public CMNode getDefinition() {
-			return null;
-		}
-
-		public String getSpec() {
-			return getNodeName();
-		}
-	}
-
-	/**
-	 * DTDAttributeAdapter
-	 */
-	public static class DTDAttributeAdapter extends DTDBaseAdapter implements CMAttributeDeclaration {
-		protected DTDAttribute attribute;
-		protected CMDataType dataType;
-
-		public DTDAttributeAdapter(DTDAttribute attribute) {
-			this.attribute = attribute;
-			dataType = new DataTypeImpl();
-		}
-
-		public Object getKey() {
-			return attribute;
-		}
-
-		public String getSpec() {
-			return attribute.getDTDElement().getName() + "/@" + attribute.getName();
-		}
-
-		public int getNodeType() {
-			return ATTRIBUTE_DECLARATION;
-		}
-
-		public String getNodeName() {
-			return attribute.getName();
-		}
-
-		public String getAttrName() {
-			return attribute.getName();
-		}
-
-		public CMDataType getAttrType() {
-			return dataType;
-		}
-
-		public String getDefaultValue() {
-			return attribute.getDefaultValueString();
-		}
-
-		public Enumeration getEnumAttr() {
-			return Collections.enumeration(attribute.getEnumeratedValues());
-		}
-
-		public int getUsage() {
-			int usage = OPTIONAL;
-			switch (attribute.getDefaultKind().getValue()) {
-				case DTDDefaultKind.REQUIRED : {
-					usage = REQUIRED;
-					break;
-				}
-				case DTDDefaultKind.FIXED : {
-					usage = FIXED;
-					break;
-				}
-			}
-			return usage;
-		}
-
-		public CMDocument getCMDocument() {
-			DTDFile dtdFile = attribute.getDTDElement().getDTDFile();
-			return dtdFile != null ? (CMDocument) getAdapter(dtdFile) : null;
-		}
-
-		public class DataTypeImpl implements CMDataType {
-			public int getNodeType() {
-				return CMNode.DATA_TYPE;
-			}
-
-			public String getNodeName() {
-				return getDataTypeName();
-			}
-
-			public boolean supports(String propertyName) {
-				return false;
-			}
-
-			public Object getProperty(String propertyName) {
-				Object result = null;
-				if (propertyName.equals("isValidEmptyValue")) {
-					String dataTypeName = getDataTypeName();
-					result = (dataTypeName == null || dataTypeName.equals(CMDataType.CDATA)) ? "true" : "false";
-				}
-				return result;
-			}
-
-			public String getDataTypeName() {
-				return cmDataTypeInfoTable.getDataTypeName(attribute.getDTDType());
-			}
-
-			public String generateInstanceValue() {
-				return cmDataTypeInfoTable.getInstanceValue(attribute.getDTDType());
-			}
-
-			public int getImpliedValueKind() {
-				int result = IMPLIED_VALUE_NONE;
-				int defaultValueKind = attribute.getDefaultKind().getValue();
-				if (defaultValueKind == DTDDefaultKind.NOFIXED) {
-					result = IMPLIED_VALUE_DEFAULT;
-				}
-				else if (defaultValueKind == DTDDefaultKind.FIXED) {
-					result = IMPLIED_VALUE_FIXED;
-				}
-				return result;
-			}
-
-			public String getImpliedValue() {
-				return attribute.getDefaultValueString();
-			}
-
-			public String[] getEnumeratedValues() {
-				Object[] objectList = attribute.getEnumeratedValues().toArray();
-				String[] result = new String[objectList.length];
-				for (int i = 0; i < objectList.length; i++) {
-					result[i] = objectList[i].toString();
-				}
-				return result;
-			}
-		}
-	}
-
-
-	/**
-	 * DTDElementBaseAdapter
-	 */
-	public static abstract class DTDElementBaseAdapter extends DTDBaseAdapter implements CMElementDeclaration {
-		protected CMDataType dataType;
-
-		protected abstract DTDElement getDTDElement();
-
-		protected CMDocumentation documentation = null;
-
-		public int getNodeType() {
-			return ELEMENT_DECLARATION;
-		}
-
-		public String getNodeName() {
-			return getDTDElement().getName();
-		}
-
-		public CMNamedNodeMap getAttributes() {
-			CMNamedNodeMapImpl result = new CMNamedNodeMapImpl();
-			List attributeList = getDTDElement().getDTDAttribute();
-			for (Iterator i = attributeList.iterator(); i.hasNext();) {
-				DTDAttribute attribute = (DTDAttribute) i.next();
-				result.getHashtable().put(attribute.getName(), getAdapter(attribute));
-			}
-			return result;
-		}
-
-		public CMContent getContent() {
-			return (CMContent) getAdapter(getDTDElement().getContent());
-		}
-
-		public int getContentType() {
-			// todo
-			int result = ELEMENT;
-			DTDElementContent dtdElementContent = getDTDElement().getContent();
-			if (dtdElementContent instanceof DTDPCDataContent) {
-				result = PCDATA;
-			}
-			else if (dtdElementContent instanceof DTDGroupContent) {
-				DTDGroupContent groupContent = (DTDGroupContent) dtdElementContent;
-				int groupKind = groupContent.getGroupKind().getValue();
-				if (groupKind == DTDGroupKind.CHOICE) {
-					List list = groupContent.getContent();
-					if (list.size() > 0 && list.get(0) instanceof DTDPCDataContent) {
-						result = MIXED;
-					}
-				}
-			}
-			else if (dtdElementContent instanceof DTDAnyContent) {
-				result = ANY;
-			}
-			else if (dtdElementContent instanceof DTDEmptyContent) {
-				result = EMPTY;
-			}
-
-			return result;
-		}
-
-		public String getElementName() {
-			return getDTDElement().getName();
-		}
-
-		public CMDataType getDataType() {
-			int contentType = getContentType();
-			boolean hasDataType = contentType == PCDATA || contentType == MIXED;
-			return hasDataType ? dataType : null;
-		}
-
-		public CMNamedNodeMap getLocalElements() {
-			return CMNamedNodeMapImpl.EMPTY_NAMED_NODE_MAP;
-		}
-
-		public CMDocument getCMDocument() {
-			DTDFile dtdFile = getDTDElement().getDTDFile();
-			return dtdFile != null ? (CMDocument) getAdapter(dtdFile) : null;
-		}
-
-		protected CMNodeList getDocumentation() {
-			CMNodeListImpl nodeList = new CMNodeListImpl();
-			if (documentation == null) {
-				String comment = getDTDElement().getComment();
-				if (comment != null) {
-					String value = "";
-					StringTokenizer st = new StringTokenizer(comment, "\n");
-					while (st.hasMoreTokens()) {
-						value += st.nextToken().trim() + "\n";
-					}
-					documentation = new CMDocumentationImpl(value);
-				}
-			}
-			if (documentation != null) {
-				nodeList.getList().add(documentation);
-			}
-			return nodeList;
-		}
-	}
-
-
-	public static class CMDocumentationImpl implements CMDocumentation {
-		protected String value;
-
-		public CMDocumentationImpl(String value) {
-			this.value = value;
-		}
-
-		public String getNodeName() {
-			return "";
-		}
-
-		public int getNodeType() {
-			return DOCUMENTATION;
-		}
-
-		public boolean supports(String propertyName) {
-			return false;
-		}
-
-		public Object getProperty(String propertyName) {
-			return null;
-		}
-
-		public String getValue() {
-			return value;
-		}
-
-		public String getLanguage() {
-			return null;
-		}
-
-		public String getSource() {
-			return null;
-		}
-	}
-
-
-	/**
-	 * DTDElementAdapter
-	 */
-	public static class DTDElementAdapter extends DTDElementBaseAdapter {
-		protected DTDElement element;
-
-		public DTDElementAdapter(DTDElement element) {
-			this.element = element;
-			dataType = new CMDataTypeImpl("#PCDATA", getDTDElement().getName());
-		}
-
-		public Object getKey() {
-			return element;
-		}
-
-		protected DTDElement getDTDElement() {
-			return element;
-		}
-
-		public int getMinOccur() {
-			return 1;
-		}
-
-		public int getMaxOccur() {
-			return 1;
-		}
-
-		public String getDefinitionInfo() {
-			return "global";
-		}
-
-		public CMNode getDefinition() {
-			return this;
-		}
-	}
-
-
-	/**
-	 * DTDElementReferenceContentAdapter
-	 */
-	public static class DTDElementReferenceContentAdapter extends DTDElementBaseAdapter {
-		protected DTDElementReferenceContent content;
-
-		public DTDElementReferenceContentAdapter(DTDElementReferenceContent content) {
-			this.content = content;
-			dataType = new CMDataTypeImpl("#PCDATA", getDTDElement().getName());
-		}
-
-		public Object getKey() {
-			return content;
-		}
-
-		protected DTDElement getDTDElement() {
-			return content.getReferencedElement();
-		}
-
-		public int getMinOccur() {
-			return getMinOccurHelper(content);
-		}
-
-		public int getMaxOccur() {
-			return getMaxOccurHelper(content);
-		}
-
-
-		public CMNode getDefinition() {
-			return getAdapter(getDTDElement());
-		}
-	}
-
-
-	/**
-	 * DTDEntityAdapter
-	 */
-	public static class DTDEntityAdapter extends DTDBaseAdapter implements CMEntityDeclaration {
-		protected DTDEntity dtdEntity;
-
-		public DTDEntityAdapter(DTDEntity dtdEntity) {
-			this.dtdEntity = dtdEntity;
-		}
-
-		public int getNodeType() {
-			return ENTITY_DECLARATION;
-		}
-
-		public Object getKey() {
-			return dtdEntity;
-		}
-
-		public String getName() {
-			return dtdEntity.getName();
-		}
-
-		public String getValue() {
-			String value = "";
-			if (dtdEntity.getContent() instanceof DTDInternalEntity) {
-				DTDInternalEntity content = (DTDInternalEntity) dtdEntity.getContent();
-				value = content.getValue();
-			}
-			return value;
-		}
-	}
-
-
-	/**
-	 * DTDGroupContentAdapter
-	 */
-	public static class DTDGroupContentAdapter extends DTDBaseAdapter implements CMGroup {
-		protected DTDGroupContent content;
-
-		public DTDGroupContentAdapter(DTDGroupContent content) {
-			this.content = content;
-		}
-
-		public Object getKey() {
-			return content;
-		}
-
-		public int getNodeType() {
-			return GROUP;
-		}
-
-		public String getNodeName() {
-			CMDescriptionBuilder descriptionBuilder = new CMDescriptionBuilder();
-			return descriptionBuilder.buildDescription(this);
-		}
-
-		public CMNodeList getChildNodes() {
-			List list = content.getContent();
-			CMNodeListImpl result = new CMNodeListImpl();
-			for (Iterator i = list.iterator(); i.hasNext();) {
-				CMNode node = getAdapter((Notifier) i.next());
-				if (node != null) {
-					result.getList().add(node);
-				}
-			}
-			return result;
-		}
-
-
-		public int getMaxOccur() {
-			return getMaxOccurHelper(content);
-		}
-
-		public int getMinOccur() {
-			return getMinOccurHelper(content);
-		}
-
-		public int getOperator() {
-			// todo... handle ALONE case by checkig if child count == 1
-			int groupKind = content.getGroupKind().getValue();
-			return (groupKind == DTDGroupKind.CHOICE) ? CHOICE : SEQUENCE;
-		}
-	}
-
-	/**
-	 * DTDFileAdapter
-	 */
-	public static class DTDFileAdapter extends DTDBaseAdapter implements CMDocument {
-		protected final String DEFAULT_ROOT_NAME = "http://org.eclipse.wst/cm/properties/defaultRootName";
-
-		protected DTDFile dtdFile;
-		protected CMNamedNodeMapImpl namedNodeMap;
-		protected CMNamedNodeMapImpl entityNodeMap;
-
-		protected String[] encodingInfo = new String[2];
-		protected AnnotationMap annotationMap = new AnnotationMap();
-		protected Map globalPropertyMap = new HashMap();
-
-		public DTDFileAdapter(DTDFile dtdFile) {
-			this.dtdFile = dtdFile;
-		}
-
-		public Object getKey() {
-			return dtdFile;
-		}
-
-		public AnnotationMap getAnnotationMap() {
-			return annotationMap;
-		}
-
-		public CMNamedNodeMap getElements() {
-			if (namedNodeMap == null) {
-				namedNodeMap = new CMNamedNodeMapImpl();
-				for (Iterator iterator = dtdFile.listDTDElement().iterator(); iterator.hasNext();) {
-					DTDElement dtdElement = (DTDElement) iterator.next();
-					namedNodeMap.getHashtable().put(dtdElement.getName(), getAdapter(dtdElement));
-				}
-			}
-			return namedNodeMap;
-		}
-
-		public CMNamedNodeMap getEntities() {
-			if (entityNodeMap == null) {
-				entityNodeMap = new CMNamedNodeMapImpl();
-
-				// add the built in entity declarations
-				//
-				entityNodeMap.getHashtable().put("amp", new CMEntityDeclarationImpl("amp", "&"));
-				entityNodeMap.getHashtable().put("lt", new CMEntityDeclarationImpl("lt", "<"));
-				entityNodeMap.getHashtable().put("gt", new CMEntityDeclarationImpl("gt", ">"));
-				entityNodeMap.getHashtable().put("quot", new CMEntityDeclarationImpl("quot", "\""));
-				entityNodeMap.getHashtable().put("apos", new CMEntityDeclarationImpl("apos", "'"));
-
-				for (Iterator i = dtdFile.listDTDEntity().iterator(); i.hasNext();) {
-					DTDEntity dtdEntity = (DTDEntity) i.next();
-					if (!dtdEntity.isParameterEntity() && dtdEntity.getName() != null) {
-						// for now... just handle DTDInternalEntity
-						//
-						if (dtdEntity.getContent() instanceof DTDInternalEntity) {
-							entityNodeMap.getHashtable().put(dtdEntity.getName(), getAdapter(dtdEntity));
-						}
-					}
-				}
-			}
-			return entityNodeMap;
-		}
-
-		public CMNamespace getNamespace() {
-			return null;
-		}
-
-		public int getNodeType() {
-			return DOCUMENT;
-		}
-
-		public String getNodeName() {
-			return dtdFile.getName() + ".dtd";
-		}
-
-		public Object getProperty(String propertyName) {
-			Object result = null;
-			if (propertyName.equals(DEFAULT_ROOT_NAME)) {
-				DTDMetrics metrics = new DTDMetrics(dtdFile);
-				DTDElement dtdElement = metrics.getLeastReferencedElement();
-				if (dtdElement != null) {
-					result = dtdElement.getName();
-				}
-			}
-			else if (propertyName.equals("annotationMap")) {
-				result = annotationMap;
-			}
-			else if (propertyName.equals("encodingInfo")) {
-				result = encodingInfo;
-			}
-			else if (propertyName.equals("globalPropertyMap")) {
-				result = globalPropertyMap;
-			}
-			else {
-				result = super.getProperty(propertyName);
-			}
-			return result;
-		}
-	}
-
-
-	public static class CMDataTypeInfoTable {
-		protected String[] instanceValueTable;
-		protected String[] dataTypeNameTable;
-
-		public CMDataTypeInfoTable() {
-			// hashtable.put(DTDType.CDATA, null));
-			instanceValueTable = new String[DTDBasicTypeImpl.basicTypeKinds.length];
-			instanceValueTable[DTDBasicTypeKind.ENTITY] = "entity";
-			instanceValueTable[DTDBasicTypeKind.ENTITIES] = "entities";
-			instanceValueTable[DTDBasicTypeKind.NMTOKEN] = "nmtoken";
-			instanceValueTable[DTDBasicTypeKind.NMTOKENS] = "nmtokens";
-
-			dataTypeNameTable = new String[DTDBasicTypeImpl.basicTypeKinds.length];
-			dataTypeNameTable[DTDBasicTypeKind.CDATA] = CMDataType.CDATA;
-			dataTypeNameTable[DTDBasicTypeKind.ID] = CMDataType.ID;
-			dataTypeNameTable[DTDBasicTypeKind.IDREF] = CMDataType.IDREF;
-			dataTypeNameTable[DTDBasicTypeKind.ENTITY] = CMDataType.ENTITY;
-			dataTypeNameTable[DTDBasicTypeKind.ENTITIES] = CMDataType.ENTITIES;
-			dataTypeNameTable[DTDBasicTypeKind.NMTOKEN] = CMDataType.NMTOKEN;
-			dataTypeNameTable[DTDBasicTypeKind.NMTOKENS] = CMDataType.NMTOKENS;
-		}
-
-		public String getInstanceValue(DTDType dtdType) {
-			String result = null;
-			if (dtdType instanceof DTDBasicType) {
-				int kind = ((DTDBasicType) dtdType).getKind().getValue();
-				if (kind >= 0 && kind < DTDBasicTypeImpl.basicTypeDescriptions.length) {
-					result = instanceValueTable[kind];
-				}
-			}
-			return result;
-		}
-
-		public String getDataTypeName(DTDType dtdType) {
-			String result = null;
-			if (dtdType instanceof DTDBasicType) {
-				int kind = ((DTDBasicType) dtdType).getKind().getValue();
-				if (kind >= 0 && kind < DTDBasicTypeImpl.basicTypeDescriptions.length) {
-					result = dataTypeNameTable[kind];
-				}
-			}
-			else if (dtdType instanceof DTDEnumerationType) {
-				result = CMDataType.ENUM;
-			}
-			return result;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDAnyContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDAnyContent.java
deleted file mode 100644
index 3065392..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDAnyContent.java
+++ /dev/null
@@ -1,26 +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.dtd.core.internal.emf;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Any Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDAnyContent()
- * @model
- * @generated
- */
-public interface DTDAnyContent extends DTDElementContent {
-} // DTDAnyContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDAttribute.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDAttribute.java
deleted file mode 100644
index 89c5ae1..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDAttribute.java
+++ /dev/null
@@ -1,240 +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.dtd.core.internal.emf;
-
-import java.util.Collection;
-
-import org.eclipse.emf.ecore.EAttribute;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Attribute</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDefaultKind <em>Default Kind</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDefaultValueString <em>Default Value String</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeNameReferencedEntity <em>Attribute Name Referenced Entity</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeTypeReferencedEntity <em>Attribute Type Referenced Entity</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDTDElement <em>DTD Element</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDAttribute()
- * @model
- * @generated
- */
-public interface DTDAttribute extends EAttribute, DTDObject, DTDSourceOffset {
-	// NON-GEN interfaces DTDObject, DTDSourceOffset
-
-	public DTDType getDTDType();
-
-	public void setDTDType(DTDType type);
-
-	public void setDTDBasicType(int value);
-
-	public DTDEnumerationType createDTDEnumeration(String[] enumValues, int enumKind);
-
-	public Collection getEnumeratedValues();
-
-	public String unparse();
-
-	/**
-	 * Returns the value of the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Comment</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Comment</em>' attribute.
-	 * @see #setComment(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDAttribute_Comment()
-	 * @model
-	 * @generated
-	 */
-	String getComment();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getComment <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Comment</em>' attribute.
-	 * @see #getComment()
-	 * @generated
-	 */
-	void setComment(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Default Kind</b></em>' attribute.
-	 * The literals are from the enumeration
-	 * {@link org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind}. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Default Kind</em>' attribute isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Default Kind</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind
-	 * @see #setDefaultKind(DTDDefaultKind)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDAttribute_DefaultKind()
-	 * @model
-	 * @generated
-	 */
-	DTDDefaultKind getDefaultKind();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDefaultKind <em>Default Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Default Kind</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind
-	 * @see #getDefaultKind()
-	 * @generated
-	 */
-	void setDefaultKind(DTDDefaultKind value);
-
-	/**
-	 * Returns the value of the '<em><b>Default Value String</b></em>'
-	 * attribute. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Default Value String</em>' attribute
-	 * isn't clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Default Value String</em>' attribute.
-	 * @see #setDefaultValueString(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDAttribute_DefaultValueString()
-	 * @model
-	 * @generated
-	 */
-	String getDefaultValueString();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDefaultValueString <em>Default Value String</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Default Value String</em>'
-	 *            attribute.
-	 * @see #getDefaultValueString()
-	 * @generated
-	 */
-	void setDefaultValueString(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Attribute Name Referenced Entity</b></em>'
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeNameReference <em>Attribute Name Reference</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Attribute Name Referenced Entity</em>'
-	 * reference isn't clear, there really should be more of a description
-	 * here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Attribute Name Referenced Entity</em>'
-	 *         reference.
-	 * @see #setAttributeNameReferencedEntity(DTDEntity)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDAttribute_AttributeNameReferencedEntity()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeNameReference
-	 * @model opposite="attributeNameReference"
-	 * @generated
-	 */
-	DTDEntity getAttributeNameReferencedEntity();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeNameReferencedEntity <em>Attribute Name Referenced Entity</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Attribute Name Referenced Entity</em>'
-	 *            reference.
-	 * @see #getAttributeNameReferencedEntity()
-	 * @generated
-	 */
-	void setAttributeNameReferencedEntity(DTDEntity value);
-
-	/**
-	 * Returns the value of the '<em><b>Attribute Type Referenced Entity</b></em>'
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeTypeReference <em>Attribute Type Reference</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Attribute Type Referenced Entity</em>'
-	 * reference isn't clear, there really should be more of a description
-	 * here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Attribute Type Referenced Entity</em>'
-	 *         reference.
-	 * @see #setAttributeTypeReferencedEntity(DTDEntity)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDAttribute_AttributeTypeReferencedEntity()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeTypeReference
-	 * @model opposite="attributeTypeReference"
-	 * @generated
-	 */
-	DTDEntity getAttributeTypeReferencedEntity();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeTypeReferencedEntity <em>Attribute Type Referenced Entity</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Attribute Type Referenced Entity</em>'
-	 *            reference.
-	 * @see #getAttributeTypeReferencedEntity()
-	 * @generated
-	 */
-	void setAttributeTypeReferencedEntity(DTDEntity value);
-
-	/**
-	 * Returns the value of the '<em><b>DTD Element</b></em>' container
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getDTDAttribute <em>DTD Attribute</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>DTD Element</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>DTD Element</em>' container
-	 *         reference.
-	 * @see #setDTDElement(DTDElement)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDAttribute_DTDElement()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElement#getDTDAttribute
-	 * @model opposite="DTDAttribute"
-	 * @generated
-	 */
-	DTDElement getDTDElement();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDTDElement <em>DTD Element</em>}'
-	 * container reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>DTD Element</em>' container
-	 *            reference.
-	 * @see #getDTDElement()
-	 * @generated
-	 */
-	void setDTDElement(DTDElement value);
-
-} // DTDAttribute
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDBasicType.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDBasicType.java
deleted file mode 100644
index 6d9985f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDBasicType.java
+++ /dev/null
@@ -1,66 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.ecore.EClass;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Basic Type</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDBasicType#getKind <em>Kind</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDBasicType()
- * @model
- * @generated
- */
-public interface DTDBasicType extends EClass, DTDType {
-	// NON-GEN interfaces DTDType
-
-	public String getTypeDescription();
-
-	/**
-	 * Returns the value of the '<em><b>Kind</b></em>' attribute. The
-	 * literals are from the enumeration
-	 * {@link org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind}. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Kind</em>' attribute isn't clear, there
-	 * really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Kind</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind
-	 * @see #setKind(DTDBasicTypeKind)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDBasicType_Kind()
-	 * @model
-	 * @generated
-	 */
-	DTDBasicTypeKind getKind();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDBasicType#getKind <em>Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Kind</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind
-	 * @see #getKind()
-	 * @generated
-	 */
-	void setKind(DTDBasicTypeKind value);
-} // DTDBasicType
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDBasicTypeKind.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDBasicTypeKind.java
deleted file mode 100644
index 9752d7b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDBasicTypeKind.java
+++ /dev/null
@@ -1,332 +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.dtd.core.internal.emf;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.util.AbstractEnumerator;
-
-/**
- * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Basic Type Kind</b></em>',
- * and utility methods for working with them. <!-- end-user-doc -->
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDBasicTypeKind()
- * @model
- * @generated
- */
-public final class DTDBasicTypeKind extends AbstractEnumerator {
-	/**
-	 * The '<em><b>NONE</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NONE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int NONE = 0;
-
-	/**
-	 * The '<em><b>CDATA</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #CDATA_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int CDATA = 1;
-
-	/**
-	 * The '<em><b>ID</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #ID_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int ID = 2;
-
-	/**
-	 * The '<em><b>IDREF</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #IDREF_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int IDREF = 3;
-
-	/**
-	 * The '<em><b>IDREFS</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #IDREFS_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int IDREFS = 4;
-
-	/**
-	 * The '<em><b>ENTITY</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #ENTITY_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int ENTITY = 5;
-
-	/**
-	 * The '<em><b>ENTITIES</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #ENTITIES_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int ENTITIES = 6;
-
-	/**
-	 * The '<em><b>NMTOKEN</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #NMTOKEN_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int NMTOKEN = 7;
-
-	/**
-	 * The '<em><b>NMTOKENS</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #NMTOKENS_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int NMTOKENS = 8;
-
-	/**
-	 * The '<em><b>NONE</b></em>' literal object. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>NONE</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NONE
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind NONE_LITERAL = new DTDBasicTypeKind(NONE, "NONE");
-
-	/**
-	 * The '<em><b>CDATA</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>CDATA</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #CDATA
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind CDATA_LITERAL = new DTDBasicTypeKind(CDATA, "CDATA");
-
-	/**
-	 * The '<em><b>ID</b></em>' literal object. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>ID</b></em>' literal object isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #ID
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind ID_LITERAL = new DTDBasicTypeKind(ID, "ID");
-
-	/**
-	 * The '<em><b>IDREF</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>IDREF</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #IDREF
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind IDREF_LITERAL = new DTDBasicTypeKind(IDREF, "IDREF");
-
-	/**
-	 * The '<em><b>IDREFS</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>IDREFS</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #IDREFS
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind IDREFS_LITERAL = new DTDBasicTypeKind(IDREFS, "IDREFS");
-
-	/**
-	 * The '<em><b>ENTITY</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>ENTITY</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #ENTITY
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind ENTITY_LITERAL = new DTDBasicTypeKind(ENTITY, "ENTITY");
-
-	/**
-	 * The '<em><b>ENTITIES</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>ENTITIES</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #ENTITIES
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind ENTITIES_LITERAL = new DTDBasicTypeKind(ENTITIES, "ENTITIES");
-
-	/**
-	 * The '<em><b>NMTOKEN</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>NMTOKEN</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NMTOKEN
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind NMTOKEN_LITERAL = new DTDBasicTypeKind(NMTOKEN, "NMTOKEN");
-
-	/**
-	 * The '<em><b>NMTOKENS</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>NMTOKENS</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NMTOKENS
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDBasicTypeKind NMTOKENS_LITERAL = new DTDBasicTypeKind(NMTOKENS, "NMTOKENS");
-
-	/**
-	 * An array of all the '<em><b>Basic Type Kind</b></em>' enumerators.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private static final DTDBasicTypeKind[] VALUES_ARRAY = new DTDBasicTypeKind[]{NONE_LITERAL, CDATA_LITERAL, ID_LITERAL, IDREF_LITERAL, IDREFS_LITERAL, ENTITY_LITERAL, ENTITIES_LITERAL, NMTOKEN_LITERAL, NMTOKENS_LITERAL,};
-
-	/**
-	 * A public read-only list of all the '<em><b>Basic Type Kind</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>Basic Type Kind</b></em>' literal with the
-	 * specified name. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDBasicTypeKind get(String name) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			DTDBasicTypeKind result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>Basic Type Kind</b></em>' literal with the
-	 * specified value. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDBasicTypeKind get(int value) {
-		switch (value) {
-			case NONE :
-				return NONE_LITERAL;
-			case CDATA :
-				return CDATA_LITERAL;
-			case ID :
-				return ID_LITERAL;
-			case IDREF :
-				return IDREF_LITERAL;
-			case IDREFS :
-				return IDREFS_LITERAL;
-			case ENTITY :
-				return ENTITY_LITERAL;
-			case ENTITIES :
-				return ENTITIES_LITERAL;
-			case NMTOKEN :
-				return NMTOKEN_LITERAL;
-			case NMTOKENS :
-				return NMTOKENS_LITERAL;
-		}
-		return null;
-	}
-
-	/**
-	 * Only this class can construct instances. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private DTDBasicTypeKind(int value, String name) {
-		super(value, name);
-	}
-
-} // DTDBasicTypeKind
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDConstants.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDConstants.java
deleted file mode 100644
index 386ac8c..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDConstants.java
+++ /dev/null
@@ -1,21 +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.dtd.core.internal.emf;
-
-public class DTDConstants {
-	public static String DTD_ERROR_LINE_PREFIX = "<!--ERROR ";
-	public static String DTD_ERROR_LINE_SUFFIX = " -->";
-	public static final String DTD_EXTENSION = "dtd";
-	public static final String XML_EXTENSION = "xml";
-	public static final String XMI_EXTENSION = "xmi";
-	public static final String DTD_XMI_EXTENSION = "dtd.xmi";
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDContent.java
deleted file mode 100644
index a773bcc..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDContent.java
+++ /dev/null
@@ -1,63 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDContent#getDTDFile <em>DTD File</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDContent()
- * @model abstract="true"
- * @generated
- */
-public interface DTDContent extends EObject {
-	/**
-	 * Returns the value of the '<em><b>DTD File</b></em>' container
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDContent <em>DTD Content</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>DTD File</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>DTD File</em>' container reference.
-	 * @see #setDTDFile(DTDFile)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDContent_DTDFile()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDContent
-	 * @model opposite="DTDContent"
-	 * @generated
-	 */
-	DTDFile getDTDFile();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDContent#getDTDFile <em>DTD File</em>}'
-	 * container reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>DTD File</em>' container
-	 *            reference.
-	 * @see #getDTDFile()
-	 * @generated
-	 */
-	void setDTDFile(DTDFile value);
-
-} // DTDContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDDefaultKind.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDDefaultKind.java
deleted file mode 100644
index b28100b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDDefaultKind.java
+++ /dev/null
@@ -1,194 +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.dtd.core.internal.emf;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.util.AbstractEnumerator;
-
-/**
- * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Default Kind</b></em>',
- * and utility methods for working with them. <!-- end-user-doc -->
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDDefaultKind()
- * @model
- * @generated
- */
-public final class DTDDefaultKind extends AbstractEnumerator {
-	/**
-	 * The '<em><b>IMPLIED</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #IMPLIED_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int IMPLIED = 1;
-
-	/**
-	 * The '<em><b>REQUIRED</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #REQUIRED_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int REQUIRED = 2;
-
-	/**
-	 * The '<em><b>FIXED</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #FIXED_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int FIXED = 3;
-
-	/**
-	 * The '<em><b>NOFIXED</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #NOFIXED_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int NOFIXED = 4;
-
-	/**
-	 * The '<em><b>IMPLIED</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>IMPLIED</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #IMPLIED
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDDefaultKind IMPLIED_LITERAL = new DTDDefaultKind(IMPLIED, "IMPLIED");
-
-	/**
-	 * The '<em><b>REQUIRED</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>REQUIRED</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #REQUIRED
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDDefaultKind REQUIRED_LITERAL = new DTDDefaultKind(REQUIRED, "REQUIRED");
-
-	/**
-	 * The '<em><b>FIXED</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>FIXED</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #FIXED
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDDefaultKind FIXED_LITERAL = new DTDDefaultKind(FIXED, "FIXED");
-
-	/**
-	 * The '<em><b>NOFIXED</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>NOFIXED</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NOFIXED
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDDefaultKind NOFIXED_LITERAL = new DTDDefaultKind(NOFIXED, "NOFIXED");
-
-	/**
-	 * An array of all the '<em><b>Default Kind</b></em>' enumerators.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private static final DTDDefaultKind[] VALUES_ARRAY = new DTDDefaultKind[]{IMPLIED_LITERAL, REQUIRED_LITERAL, FIXED_LITERAL, NOFIXED_LITERAL,};
-
-	/**
-	 * A public read-only list of all the '<em><b>Default Kind</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>Default Kind</b></em>' literal with the
-	 * specified name. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDDefaultKind get(String name) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			DTDDefaultKind result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>Default Kind</b></em>' literal with the
-	 * specified value. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDDefaultKind get(int value) {
-		switch (value) {
-			case IMPLIED :
-				return IMPLIED_LITERAL;
-			case REQUIRED :
-				return REQUIRED_LITERAL;
-			case FIXED :
-				return FIXED_LITERAL;
-			case NOFIXED :
-				return NOFIXED_LITERAL;
-		}
-		return null;
-	}
-
-	/**
-	 * Only this class can construct instances. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private DTDDefaultKind(int value, String name) {
-		super(value, name);
-	}
-
-} // DTDDefaultKind
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElement.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElement.java
deleted file mode 100644
index 4222ef5..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElement.java
+++ /dev/null
@@ -1,126 +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.dtd.core.internal.emf;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Element</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getContent <em>Content</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getDTDAttribute <em>DTD Attribute</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElement()
- * @model
- * @generated
- */
-public interface DTDElement extends EClass, DTDContent, DTDObject, DTDSourceOffset {
-
-	public void addDTDAttribute(DTDAttribute attribute);
-
-	// returns all references in the same DTDFile that reference this element
-	public Collection getReferences();
-
-	// return a brief string listing the attributes
-	public String getAttributeDetail();
-
-	/**
-	 * Returns the value of the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Comment</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Comment</em>' attribute.
-	 * @see #setComment(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElement_Comment()
-	 * @model
-	 * @generated
-	 */
-	String getComment();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getComment <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Comment</em>' attribute.
-	 * @see #getComment()
-	 * @generated
-	 */
-	void setComment(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Content</b></em>' containment
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getElement <em>Element</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Content</em>' containment reference
-	 * isn't clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Content</em>' containment reference.
-	 * @see #setContent(DTDElementContent)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElement_Content()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getElement
-	 * @model opposite="element" containment="true" required="true"
-	 * @generated
-	 */
-	DTDElementContent getContent();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getContent <em>Content</em>}'
-	 * containment reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Content</em>' containment
-	 *            reference.
-	 * @see #getContent()
-	 * @generated
-	 */
-	void setContent(DTDElementContent value);
-
-	/**
-	 * Returns the value of the '<em><b>DTD Attribute</b></em>'
-	 * containment reference list. The list contents are of type
-	 * {@link DTDAttribute}. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDTDElement <em>DTD Element</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>DTD Attribute</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>DTD Attribute</em>' containment
-	 *         reference list.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElement_DTDAttribute()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDTDElement
-	 * @model type="DTDAttribute" opposite="DTDElement" containment="true"
-	 * @generated
-	 */
-	EList getDTDAttribute();
-
-} // DTDElement
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElementContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElementContent.java
deleted file mode 100644
index 10ce4fc..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElementContent.java
+++ /dev/null
@@ -1,112 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Element Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getGroup <em>Group</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getElement <em>Element</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElementContent()
- * @model abstract="true"
- * @generated
- */
-public interface DTDElementContent extends EObject, DTDObject, DTDSourceOffset {
-
-	// for showing names to be used in the tree
-	public String getContentName();
-
-	// for showing items in the table
-	public String getContentDetail();
-
-	public DTDElement getDTDElement();
-
-	// get the most outer DTDGroupContent
-	public DTDGroupContent getDTDGroupContent();
-
-	// returns true if this element content is the first
-	// in the element
-	// eg <!ELEMENT blah firstElement>
-	// <!ELEMENT blah ((firstElement, secondElement) | lastElement)
-	public boolean isFirstElementContent();
-
-	/**
-	 * Returns the value of the '<em><b>Group</b></em>' container
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getContent <em>Content</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Group</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>Group</em>' container reference.
-	 * @see #setGroup(DTDGroupContent)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElementContent_Group()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getContent
-	 * @model opposite="content"
-	 * @generated
-	 */
-	DTDGroupContent getGroup();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getGroup <em>Group</em>}'
-	 * container reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Group</em>' container
-	 *            reference.
-	 * @see #getGroup()
-	 * @generated
-	 */
-	void setGroup(DTDGroupContent value);
-
-	/**
-	 * Returns the value of the '<em><b>Element</b></em>' container
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getContent <em>Content</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Element</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>Element</em>' container reference.
-	 * @see #setElement(DTDElement)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElementContent_Element()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElement#getContent
-	 * @model opposite="content"
-	 * @generated
-	 */
-	DTDElement getElement();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getElement <em>Element</em>}'
-	 * container reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Element</em>' container
-	 *            reference.
-	 * @see #getElement()
-	 * @generated
-	 */
-	void setElement(DTDElement value);
-
-} // DTDElementContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElementReferenceContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElementReferenceContent.java
deleted file mode 100644
index daeb25c..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDElementReferenceContent.java
+++ /dev/null
@@ -1,59 +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.dtd.core.internal.emf;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Element Reference Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent#getReferencedElement <em>Referenced Element</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElementReferenceContent()
- * @model
- * @generated
- */
-public interface DTDElementReferenceContent extends DTDRepeatableContent {
-	/**
-	 * Returns the value of the '<em><b>Referenced Element</b></em>'
-	 * reference. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Referenced Element</em>' reference isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Referenced Element</em>' reference.
-	 * @see #setReferencedElement(DTDElement)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDElementReferenceContent_ReferencedElement()
-	 * @model required="true"
-	 * @generated
-	 */
-	DTDElement getReferencedElement();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent#getReferencedElement <em>Referenced Element</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Referenced Element</em>'
-	 *            reference.
-	 * @see #getReferencedElement()
-	 * @generated
-	 */
-	void setReferencedElement(DTDElement value);
-
-} // DTDElementReferenceContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEmptyContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEmptyContent.java
deleted file mode 100644
index 4f0d5c7..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEmptyContent.java
+++ /dev/null
@@ -1,26 +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.dtd.core.internal.emf;
-
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Empty Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEmptyContent()
- * @model
- * @generated
- */
-public interface DTDEmptyContent extends DTDElementContent {
-} // DTDEmptyContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntity.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntity.java
deleted file mode 100644
index bcfc742..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntity.java
+++ /dev/null
@@ -1,220 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.ENamedElement;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Entity</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#isParameterEntity <em>Parameter Entity</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getContent <em>Content</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getParmEntityRef <em>Parm Entity Ref</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getEntityReference <em>Entity Reference</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeNameReference <em>Attribute Name Reference</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeTypeReference <em>Attribute Type Reference</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntity()
- * @model
- * @generated
- */
-public interface DTDEntity extends ENamedElement, DTDContent, DTDObject, DTDSourceOffset {
-	/**
-	 * Returns the value of the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Comment</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Comment</em>' attribute.
-	 * @see #setComment(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntity_Comment()
-	 * @model
-	 * @generated
-	 */
-	String getComment();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getComment <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Comment</em>' attribute.
-	 * @see #getComment()
-	 * @generated
-	 */
-	void setComment(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Parameter Entity</b></em>'
-	 * attribute. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Parameter Entity</em>' attribute isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Parameter Entity</em>' attribute.
-	 * @see #setParameterEntity(boolean)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntity_ParameterEntity()
-	 * @model
-	 * @generated
-	 */
-	boolean isParameterEntity();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#isParameterEntity <em>Parameter Entity</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Parameter Entity</em>'
-	 *            attribute.
-	 * @see #isParameterEntity()
-	 * @generated
-	 */
-	void setParameterEntity(boolean value);
-
-	/**
-	 * Returns the value of the '<em><b>Content</b></em>' containment
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent#getDTDEntity <em>DTD Entity</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Content</em>' containment reference
-	 * isn't clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Content</em>' containment reference.
-	 * @see #setContent(DTDEntityContent)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntity_Content()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent#getDTDEntity
-	 * @model opposite="DTDEntity" containment="true" required="true"
-	 * @generated
-	 */
-	DTDEntityContent getContent();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getContent <em>Content</em>}'
-	 * containment reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Content</em>' containment
-	 *            reference.
-	 * @see #getContent()
-	 * @generated
-	 */
-	void setContent(DTDEntityContent value);
-
-	/**
-	 * Returns the value of the '<em><b>Parm Entity Ref</b></em>'
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference#getEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Parm Entity Ref</em>' reference isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Parm Entity Ref</em>' reference.
-	 * @see #setParmEntityRef(DTDParameterEntityReference)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntity_ParmEntityRef()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference#getEntity
-	 * @model opposite="entity" required="true"
-	 * @generated
-	 */
-	DTDParameterEntityReference getParmEntityRef();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getParmEntityRef <em>Parm Entity Ref</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Parm Entity Ref</em>'
-	 *            reference.
-	 * @see #getParmEntityRef()
-	 * @generated
-	 */
-	void setParmEntityRef(DTDParameterEntityReference value);
-
-	/**
-	 * Returns the value of the '<em><b>Entity Reference</b></em>'
-	 * reference list. The list contents are of type
-	 * {@link DTDEntityReferenceContent}. It is bidirectional and its
-	 * opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent#getElementReferencedEntity <em>Element Referenced Entity</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Entity Reference</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>Entity Reference</em>' reference
-	 *         list.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntity_EntityReference()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent#getElementReferencedEntity
-	 * @model type="DTDEntityReferenceContent"
-	 *        opposite="elementReferencedEntity"
-	 * @generated
-	 */
-	EList getEntityReference();
-
-	/**
-	 * Returns the value of the '<em><b>Attribute Name Reference</b></em>'
-	 * reference list. The list contents are of type {@link DTDAttribute}. It
-	 * is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeNameReferencedEntity <em>Attribute Name Referenced Entity</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Attribute Name Reference</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>Attribute Name Reference</em>'
-	 *         reference list.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntity_AttributeNameReference()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeNameReferencedEntity
-	 * @model type="DTDAttribute" opposite="attributeNameReferencedEntity"
-	 * @generated
-	 */
-	EList getAttributeNameReference();
-
-	/**
-	 * Returns the value of the '<em><b>Attribute Type Reference</b></em>'
-	 * reference list. The list contents are of type {@link DTDAttribute}. It
-	 * is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeTypeReferencedEntity <em>Attribute Type Referenced Entity</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Attribute Type Reference</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>Attribute Type Reference</em>'
-	 *         reference list.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntity_AttributeTypeReference()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeTypeReferencedEntity
-	 * @model type="DTDAttribute" opposite="attributeTypeReferencedEntity"
-	 * @generated
-	 */
-	EList getAttributeTypeReference();
-
-} // DTDEntity
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntityContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntityContent.java
deleted file mode 100644
index de4c2b1..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntityContent.java
+++ /dev/null
@@ -1,65 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Entity Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent#getDTDEntity <em>DTD Entity</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntityContent()
- * @model abstract="true"
- * @generated
- */
-public interface DTDEntityContent extends EObject, DTDObject {
-
-	public String unparse();
-
-	/**
-	 * Returns the value of the '<em><b>DTD Entity</b></em>' container
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getContent <em>Content</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>DTD Entity</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>DTD Entity</em>' container reference.
-	 * @see #setDTDEntity(DTDEntity)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntityContent_DTDEntity()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getContent
-	 * @model opposite="content"
-	 * @generated
-	 */
-	DTDEntity getDTDEntity();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent#getDTDEntity <em>DTD Entity</em>}'
-	 * container reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>DTD Entity</em>' container
-	 *            reference.
-	 * @see #getDTDEntity()
-	 * @generated
-	 */
-	void setDTDEntity(DTDEntity value);
-
-} // DTDEntityContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntityReferenceContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntityReferenceContent.java
deleted file mode 100644
index 8d4ab91..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEntityReferenceContent.java
+++ /dev/null
@@ -1,64 +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.dtd.core.internal.emf;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Entity Reference Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent#getElementReferencedEntity <em>Element Referenced Entity</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntityReferenceContent()
- * @model
- * @generated
- */
-public interface DTDEntityReferenceContent extends DTDRepeatableContent {
-
-	/**
-	 * Returns the value of the '<em><b>Element Referenced Entity</b></em>'
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getEntityReference <em>Entity Reference</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Element Referenced Entity</em>'
-	 * reference isn't clear, there really should be more of a description
-	 * here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Element Referenced Entity</em>'
-	 *         reference.
-	 * @see #setElementReferencedEntity(DTDEntity)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEntityReferenceContent_ElementReferencedEntity()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getEntityReference
-	 * @model opposite="entityReference" required="true"
-	 * @generated
-	 */
-	DTDEntity getElementReferencedEntity();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent#getElementReferencedEntity <em>Element Referenced Entity</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Element Referenced Entity</em>'
-	 *            reference.
-	 * @see #getElementReferencedEntity()
-	 * @generated
-	 */
-	void setElementReferencedEntity(DTDEntity value);
-
-} // DTDEntityReferenceContent
-
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEnumGroupKind.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEnumGroupKind.java
deleted file mode 100644
index 6035d57..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEnumGroupKind.java
+++ /dev/null
@@ -1,139 +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.dtd.core.internal.emf;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.util.AbstractEnumerator;
-
-/**
- * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Enum Group Kind</b></em>',
- * and utility methods for working with them. <!-- end-user-doc -->
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEnumGroupKind()
- * @model
- * @generated
- */
-public final class DTDEnumGroupKind extends AbstractEnumerator {
-	/**
-	 * The '<em><b>NAME TOKEN GROUP</b></em>' literal value. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #NAME_TOKEN_GROUP_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int NAME_TOKEN_GROUP = 1;
-
-	/**
-	 * The '<em><b>NOTATION GROUP</b></em>' literal value. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #NOTATION_GROUP_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int NOTATION_GROUP = 2;
-
-	/**
-	 * The '<em><b>NAME TOKEN GROUP</b></em>' literal object. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>NAME TOKEN GROUP</b></em>' literal
-	 * object isn't clear, there really should be more of a description
-	 * here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NAME_TOKEN_GROUP
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDEnumGroupKind NAME_TOKEN_GROUP_LITERAL = new DTDEnumGroupKind(NAME_TOKEN_GROUP, "NAME_TOKEN_GROUP");
-
-	/**
-	 * The '<em><b>NOTATION GROUP</b></em>' literal object. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>NOTATION GROUP</b></em>' literal object
-	 * isn't clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NOTATION_GROUP
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDEnumGroupKind NOTATION_GROUP_LITERAL = new DTDEnumGroupKind(NOTATION_GROUP, "NOTATION_GROUP");
-
-	/**
-	 * An array of all the '<em><b>Enum Group Kind</b></em>' enumerators.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private static final DTDEnumGroupKind[] VALUES_ARRAY = new DTDEnumGroupKind[]{NAME_TOKEN_GROUP_LITERAL, NOTATION_GROUP_LITERAL,};
-
-	/**
-	 * A public read-only list of all the '<em><b>Enum Group Kind</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>Enum Group Kind</b></em>' literal with the
-	 * specified name. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDEnumGroupKind get(String name) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			DTDEnumGroupKind result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>Enum Group Kind</b></em>' literal with the
-	 * specified value. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDEnumGroupKind get(int value) {
-		switch (value) {
-			case NAME_TOKEN_GROUP :
-				return NAME_TOKEN_GROUP_LITERAL;
-			case NOTATION_GROUP :
-				return NOTATION_GROUP_LITERAL;
-		}
-		return null;
-	}
-
-	/**
-	 * Only this class can construct instances. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private DTDEnumGroupKind(int value, String name) {
-		super(value, name);
-	}
-
-} // DTDEnumGroupKind
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEnumerationType.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEnumerationType.java
deleted file mode 100644
index fd0ef4d..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDEnumerationType.java
+++ /dev/null
@@ -1,101 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EEnum;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Enumeration Type</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getKind <em>Kind</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getDTDFile <em>DTD File</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEnumerationType()
- * @model
- * @generated
- */
-public interface DTDEnumerationType extends EEnum, DTDType {
-
-	public EList getEnumLiterals();
-
-	public String getEnumerationTypeDescription();
-
-	/**
-	 * Returns the value of the '<em><b>Kind</b></em>' attribute. The
-	 * literals are from the enumeration
-	 * {@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind}. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Kind</em>' attribute isn't clear, there
-	 * really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Kind</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind
-	 * @see #setKind(DTDEnumGroupKind)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEnumerationType_Kind()
-	 * @model
-	 * @generated
-	 */
-	DTDEnumGroupKind getKind();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getKind <em>Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Kind</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind
-	 * @see #getKind()
-	 * @generated
-	 */
-	void setKind(DTDEnumGroupKind value);
-
-	/**
-	 * Returns the value of the '<em><b>DTD File</b></em>' container
-	 * reference. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDEnumerationType <em>DTD Enumeration Type</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>DTD File</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>DTD File</em>' container reference.
-	 * @see #setDTDFile(DTDFile)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDEnumerationType_DTDFile()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDEnumerationType
-	 * @model opposite="DTDEnumerationType"
-	 * @generated
-	 */
-	DTDFile getDTDFile();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getDTDFile <em>DTD File</em>}'
-	 * container reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>DTD File</em>' container
-	 *            reference.
-	 * @see #getDTDFile()
-	 * @generated
-	 */
-	void setDTDFile(DTDFile value);
-
-} // DTDEnumerationType
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDErrorMessage.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDErrorMessage.java
deleted file mode 100644
index 8421fdb..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDErrorMessage.java
+++ /dev/null
@@ -1,49 +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.dtd.core.internal.emf;
-
-public class DTDErrorMessage {
-	public String errorKey;
-	public String errorMessage;
-	public String lineNo;
-	public String charOffSet;
-	public String declarationType;
-	public String declarationName;
-	public String sourceLine;
-
-
-	public DTDErrorMessage(String declarationType, String declarationName, String lineNo, String charOffSet, String errorKey, String errorMessage) {
-		this(declarationType, declarationName, lineNo, charOffSet, errorKey, errorMessage, null);
-	}
-
-	public DTDErrorMessage(String declarationType, String declarationName, String lineNo, String charOffSet, String errorKey, String errorMessage, String srcLine) {
-		this.declarationType = declarationType;
-		this.declarationName = declarationName;
-		this.lineNo = lineNo;
-		this.charOffSet = charOffSet;
-		this.errorKey = errorKey;
-		this.errorMessage = errorMessage;
-		this.sourceLine = srcLine;
-	}
-
-	public String toString() {
-		return "(" + declarationType + ":" + declarationName + ") " + lineNo + ":" + charOffSet + " " + errorMessage;
-	}
-
-	/**
-	 * @generated
-	 */
-	protected String toStringGen() {
-
-		return "(" + declarationType + ":" + declarationName + ") " + lineNo + ":" + charOffSet + " " + errorMessage;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDExtender.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDExtender.java
deleted file mode 100644
index 40f406b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDExtender.java
+++ /dev/null
@@ -1,19 +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.dtd.core.internal.emf;
-
-/**
- * This interface can be implemented by an IDomainModel to augment
- * getElementProperty for any DTD object.
- */
-public interface DTDExtender {
-	public Object getElementProperty(DTDObject dtdObject, Object object);
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDExternalEntity.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDExternalEntity.java
deleted file mode 100644
index 3b5ca24..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDExternalEntity.java
+++ /dev/null
@@ -1,151 +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.dtd.core.internal.emf;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>External Entity</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getSystemID <em>System ID</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getPublicID <em>Public ID</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getNotation <em>Notation</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getEntityReferencedFromAnotherFile <em>Entity Referenced From Another File</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDExternalEntity()
- * @model
- * @generated
- */
-public interface DTDExternalEntity extends DTDEntityContent {
-
-	/**
-	 * Returns the value of the '<em><b>System ID</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>System ID</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>System ID</em>' attribute.
-	 * @see #setSystemID(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDExternalEntity_SystemID()
-	 * @model
-	 * @generated
-	 */
-	String getSystemID();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getSystemID <em>System ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>System ID</em>' attribute.
-	 * @see #getSystemID()
-	 * @generated
-	 */
-	void setSystemID(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Public ID</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Public ID</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Public ID</em>' attribute.
-	 * @see #setPublicID(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDExternalEntity_PublicID()
-	 * @model
-	 * @generated
-	 */
-	String getPublicID();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getPublicID <em>Public ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Public ID</em>' attribute.
-	 * @see #getPublicID()
-	 * @generated
-	 */
-	void setPublicID(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Notation</b></em>' reference. It
-	 * is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Notation</em>' reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Notation</em>' reference.
-	 * @see #setNotation(DTDNotation)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDExternalEntity_Notation()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getEntity
-	 * @model opposite="entity"
-	 * @generated
-	 */
-	DTDNotation getNotation();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getNotation <em>Notation</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Notation</em>' reference.
-	 * @see #getNotation()
-	 * @generated
-	 */
-	void setNotation(DTDNotation value);
-
-	/**
-	 * Returns the value of the '<em><b>Entity Referenced From Another File</b></em>'
-	 * reference. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Entity Referenced From Another File</em>'
-	 * reference isn't clear, there really should be more of a description
-	 * here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Entity Referenced From Another File</em>'
-	 *         reference.
-	 * @see #setEntityReferencedFromAnotherFile(DTDFile)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDExternalEntity_EntityReferencedFromAnotherFile()
-	 * @model
-	 * @generated
-	 */
-	DTDFile getEntityReferencedFromAnotherFile();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getEntityReferencedFromAnotherFile <em>Entity Referenced From Another File</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Entity Referenced From Another File</em>'
-	 *            reference.
-	 * @see #getEntityReferencedFromAnotherFile()
-	 * @generated
-	 */
-	void setEntityReferencedFromAnotherFile(DTDFile value);
-
-} // DTDExternalEntity
-
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDFactory.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDFactory.java
deleted file mode 100644
index 383d26e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDFactory.java
+++ /dev/null
@@ -1,186 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.ecore.EFactory;
-
-/**
- * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a
- * create method for each non-abstract class of the model. <!-- end-user-doc
- * -->
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage
- * @generated
- */
-public interface DTDFactory extends EFactory {
-
-	/**
-	 * The singleton instance of the factory. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	DTDFactory eINSTANCE = new org.eclipse.wst.dtd.core.internal.emf.impl.DTDFactoryImpl();
-
-	/**
-	 * Returns a new object of class '<em>Group Content</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Group Content</em>'.
-	 * @generated
-	 */
-	DTDGroupContent createDTDGroupContent();
-
-	/**
-	 * Returns a new object of class '<em>Attribute</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Attribute</em>'.
-	 * @generated
-	 */
-	DTDAttribute createDTDAttribute();
-
-	/**
-	 * Returns a new object of class '<em>Element</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Element</em>'.
-	 * @generated
-	 */
-	DTDElement createDTDElement();
-
-	/**
-	 * Returns a new object of class '<em>Empty Content</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Empty Content</em>'.
-	 * @generated
-	 */
-	DTDEmptyContent createDTDEmptyContent();
-
-	/**
-	 * Returns a new object of class '<em>Any Content</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Any Content</em>'.
-	 * @generated
-	 */
-	DTDAnyContent createDTDAnyContent();
-
-	/**
-	 * Returns a new object of class '<em>PC Data Content</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>PC Data Content</em>'.
-	 * @generated
-	 */
-	DTDPCDataContent createDTDPCDataContent();
-
-	/**
-	 * Returns a new object of class '<em>Element Reference Content</em>'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Element Reference Content</em>'.
-	 * @generated
-	 */
-	DTDElementReferenceContent createDTDElementReferenceContent();
-
-	/**
-	 * Returns a new object of class '<em>File</em>'. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>File</em>'.
-	 * @generated
-	 */
-	DTDFile createDTDFile();
-
-	/**
-	 * Returns a new object of class '<em>Basic Type</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Basic Type</em>'.
-	 * @generated
-	 */
-	DTDBasicType createDTDBasicType();
-
-	/**
-	 * Returns a new object of class '<em>Enumeration Type</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Enumeration Type</em>'.
-	 * @generated
-	 */
-	DTDEnumerationType createDTDEnumerationType();
-
-	/**
-	 * Returns a new object of class '<em>Notation</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Notation</em>'.
-	 * @generated
-	 */
-	DTDNotation createDTDNotation();
-
-	/**
-	 * Returns a new object of class '<em>Entity</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Entity</em>'.
-	 * @generated
-	 */
-	DTDEntity createDTDEntity();
-
-	/**
-	 * Returns a new object of class '<em>External Entity</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>External Entity</em>'.
-	 * @generated
-	 */
-	DTDExternalEntity createDTDExternalEntity();
-
-	/**
-	 * Returns a new object of class '<em>Internal Entity</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Internal Entity</em>'.
-	 * @generated
-	 */
-	DTDInternalEntity createDTDInternalEntity();
-
-	/**
-	 * Returns a new object of class '<em>Parameter Entity Reference</em>'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Parameter Entity Reference</em>'.
-	 * @generated
-	 */
-	DTDParameterEntityReference createDTDParameterEntityReference();
-
-	/**
-	 * Returns a new object of class '<em>Entity Reference Content</em>'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Entity Reference Content</em>'.
-	 * @generated
-	 */
-	DTDEntityReferenceContent createDTDEntityReferenceContent();
-
-	/**
-	 * Returns the package supported by this factory. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the package supported by this factory.
-	 * @generated
-	 */
-	DTDPackage getDTDPackage();
-
-} // DTDFactory
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDFile.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDFile.java
deleted file mode 100644
index 923c372..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDFile.java
+++ /dev/null
@@ -1,157 +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.dtd.core.internal.emf;
-
-import java.util.List;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.ENamedElement;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>File</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#isParseError <em>Parse Error</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDContent <em>DTD Content</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDEnumerationType <em>DTD Enumeration Type</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDFile()
- * @model
- * @generated
- */
-public interface DTDFile extends ENamedElement, DTDObject {
-
-	public EList getDTDObject();
-
-	public List listDTDElement();
-
-	public List listDTDNotation();
-
-	public List listDTDEntity();
-
-	public List listDTDParameterEntityReference();
-
-	public List listDTDElementAndDTDParameterEntityReference();
-
-	public DTDElement findElement(String name);
-
-	public DTDEntity findEntity(String name);
-
-	public DTDNotation findNotation(String name);
-
-	public DTDParameterEntityReference findParameterEntityReference(String name);
-
-	public String unparse(boolean includeError);
-
-	/**
-	 * Returns the value of the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Comment</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Comment</em>' attribute.
-	 * @see #setComment(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDFile_Comment()
-	 * @model
-	 * @generated
-	 */
-	String getComment();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getComment <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Comment</em>' attribute.
-	 * @see #getComment()
-	 * @generated
-	 */
-	void setComment(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Parse Error</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Parse Error</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Parse Error</em>' attribute.
-	 * @see #setParseError(boolean)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDFile_ParseError()
-	 * @model
-	 * @generated
-	 */
-	boolean isParseError();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#isParseError <em>Parse Error</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Parse Error</em>' attribute.
-	 * @see #isParseError()
-	 * @generated
-	 */
-	void setParseError(boolean value);
-
-	/**
-	 * Returns the value of the '<em><b>DTD Content</b></em>' containment
-	 * reference list. The list contents are of type {@link DTDContent}. It
-	 * is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDContent#getDTDFile <em>DTD File</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>DTD Content</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>DTD Content</em>' containment
-	 *         reference list.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDFile_DTDContent()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDContent#getDTDFile
-	 * @model type="DTDContent" opposite="DTDFile" containment="true"
-	 * @generated
-	 */
-	EList getDTDContent();
-
-	/**
-	 * Returns the value of the '<em><b>DTD Enumeration Type</b></em>'
-	 * containment reference list. The list contents are of type
-	 * {@link DTDEnumerationType}. It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getDTDFile <em>DTD File</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>DTD Enumeration Type</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>DTD Enumeration Type</em>'
-	 *         containment reference list.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDFile_DTDEnumerationType()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getDTDFile
-	 * @model type="DTDEnumerationType" opposite="DTDFile" containment="true"
-	 * @generated
-	 */
-	EList getDTDEnumerationType();
-
-} // DTDFile
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDGroupContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDGroupContent.java
deleted file mode 100644
index 06247d3..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDGroupContent.java
+++ /dev/null
@@ -1,88 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.common.util.EList;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Group Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getGroupKind <em>Group Kind</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getContent <em>Content</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDGroupContent()
- * @model
- * @generated
- */
-public interface DTDGroupContent extends DTDRepeatableContent {
-
-	public int getContentPosition(DTDElementContent content);
-
-	/**
-	 * Returns the value of the '<em><b>Group Kind</b></em>' attribute.
-	 * The literals are from the enumeration
-	 * {@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind}. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of the '<em>Group Kind</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Group Kind</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind
-	 * @see #setGroupKind(DTDGroupKind)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDGroupContent_GroupKind()
-	 * @model
-	 * @generated
-	 */
-	DTDGroupKind getGroupKind();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getGroupKind <em>Group Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Group Kind</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind
-	 * @see #getGroupKind()
-	 * @generated
-	 */
-	void setGroupKind(DTDGroupKind value);
-
-	/**
-	 * Returns the value of the '<em><b>Content</b></em>' containment
-	 * reference list. The list contents are of type {@link DTDElementContent}.
-	 * It is bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getGroup <em>Group</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Content</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>Content</em>' containment reference
-	 *         list.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDGroupContent_Content()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getGroup
-	 * @model type="DTDElementContent" opposite="group" containment="true"
-	 *        required="true"
-	 * @generated
-	 */
-	EList getContent();
-
-} // DTDGroupContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDGroupKind.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDGroupKind.java
deleted file mode 100644
index f2d4bd1..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDGroupKind.java
+++ /dev/null
@@ -1,139 +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.dtd.core.internal.emf;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.util.AbstractEnumerator;
-
-/**
- * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Group Kind</b></em>',
- * and utility methods for working with them. <!-- end-user-doc -->
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDGroupKind()
- * @model
- * @generated
- */
-public final class DTDGroupKind extends AbstractEnumerator {
-	/**
-	 * The '<em><b>SEQUENCE</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #SEQUENCE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int SEQUENCE = 1;
-
-	/**
-	 * The '<em><b>CHOICE</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #CHOICE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int CHOICE = 2;
-
-	/**
-	 * The '<em><b>SEQUENCE</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>SEQUENCE</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #SEQUENCE
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDGroupKind SEQUENCE_LITERAL = new DTDGroupKind(SEQUENCE, "SEQUENCE");
-
-	/**
-	 * The '<em><b>CHOICE</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>CHOICE</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #CHOICE
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDGroupKind CHOICE_LITERAL = new DTDGroupKind(CHOICE, "CHOICE");
-
-	/**
-	 * An array of all the '<em><b>Group Kind</b></em>' enumerators. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private static final DTDGroupKind[] VALUES_ARRAY = new DTDGroupKind[]{SEQUENCE_LITERAL, CHOICE_LITERAL,};
-
-	/**
-	 * A public read-only list of all the '<em><b>Group Kind</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>Group Kind</b></em>' literal with the
-	 * specified name. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDGroupKind get(String name) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			DTDGroupKind result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>Group Kind</b></em>' literal with the
-	 * specified value. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDGroupKind get(int value) {
-		switch (value) {
-			case SEQUENCE :
-				return SEQUENCE_LITERAL;
-			case CHOICE :
-				return CHOICE_LITERAL;
-		}
-		return null;
-	}
-
-	/**
-	 * Only this class can construct instances. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private DTDGroupKind(int value, String name) {
-		super(value, name);
-	}
-
-} // DTDGroupKind
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDInternalEntity.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDInternalEntity.java
deleted file mode 100644
index a184a13..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDInternalEntity.java
+++ /dev/null
@@ -1,57 +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.dtd.core.internal.emf;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Internal Entity</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDInternalEntity()
- * @model
- * @generated
- */
-public interface DTDInternalEntity extends DTDEntityContent {
-	/**
-	 * Returns the value of the '<em><b>Value</b></em>' attribute. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Value</em>' attribute isn't clear, there
-	 * really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Value</em>' attribute.
-	 * @see #setValue(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDInternalEntity_Value()
-	 * @model
-	 * @generated
-	 */
-	String getValue();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity#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);
-
-} // DTDInternalEntity
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDLexicalInfo.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDLexicalInfo.java
deleted file mode 100644
index 392d23c..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDLexicalInfo.java
+++ /dev/null
@@ -1,99 +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.dtd.core.internal.emf;
-
-public class DTDLexicalInfo implements DTDSourceOffset {
-	// Begin User Defined Methods
-	int startOffset;
-	int endOffset;
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset() {
-		return startOffset;
-	}
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v) {
-		this.startOffset = v;
-	}
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset() {
-		return endOffset;
-	}
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v) {
-
-		this.endOffset = v;
-	}
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	protected int getStartOffsetGen() {
-
-		return startOffset;
-	}
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	protected void setStartOffsetGen(int v) {
-
-		this.startOffset = v;
-	}
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	protected int getEndOffsetGen() {
-
-		return endOffset;
-	}
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	protected void setEndOffsetGen(int v) {
-
-
-		this.endOffset = v;
-	}
-}// DTDSourceOffset
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDNotation.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDNotation.java
deleted file mode 100644
index 8d23e2f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDNotation.java
+++ /dev/null
@@ -1,140 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.ENamedElement;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Notation</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getSystemID <em>System ID</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getPublicID <em>Public ID</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getEntity <em>Entity</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDNotation()
- * @model
- * @generated
- */
-public interface DTDNotation extends ENamedElement, DTDContent, DTDObject, DTDSourceOffset {
-
-	/**
-	 * Returns the value of the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Comment</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Comment</em>' attribute.
-	 * @see #setComment(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDNotation_Comment()
-	 * @model
-	 * @generated
-	 */
-	String getComment();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getComment <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Comment</em>' attribute.
-	 * @see #getComment()
-	 * @generated
-	 */
-	void setComment(String value);
-
-	/**
-	 * Returns the value of the '<em><b>System ID</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>System ID</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>System ID</em>' attribute.
-	 * @see #setSystemID(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDNotation_SystemID()
-	 * @model
-	 * @generated
-	 */
-	String getSystemID();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getSystemID <em>System ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>System ID</em>' attribute.
-	 * @see #getSystemID()
-	 * @generated
-	 */
-	void setSystemID(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Public ID</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Public ID</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Public ID</em>' attribute.
-	 * @see #setPublicID(String)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDNotation_PublicID()
-	 * @model
-	 * @generated
-	 */
-	String getPublicID();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getPublicID <em>Public ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Public ID</em>' attribute.
-	 * @see #getPublicID()
-	 * @generated
-	 */
-	void setPublicID(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Entity</b></em>' reference list.
-	 * The list contents are of type {@link DTDExternalEntity}. It is
-	 * bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getNotation <em>Notation</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Entity</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>Entity</em>' reference list.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDNotation_Entity()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getNotation
-	 * @model type="DTDExternalEntity" opposite="notation"
-	 * @generated
-	 */
-	EList getEntity();
-
-} // DTDNotation
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDObject.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDObject.java
deleted file mode 100644
index 68384ba..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDObject.java
+++ /dev/null
@@ -1,21 +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.dtd.core.internal.emf;
-
-// Ref package
-import org.eclipse.emf.ecore.EObject;
-
-public interface DTDObject extends EObject {
-	public String getPathname();
-
-	public DTDObject findObject(String relativePath);
-
-} // DTDObject
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDOccurrenceType.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDOccurrenceType.java
deleted file mode 100644
index 5a25cf8..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDOccurrenceType.java
+++ /dev/null
@@ -1,193 +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.dtd.core.internal.emf;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.util.AbstractEnumerator;
-
-/**
- * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>Occurrence Type</b></em>',
- * and utility methods for working with them. <!-- end-user-doc -->
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDOccurrenceType()
- * @model
- * @generated
- */
-public final class DTDOccurrenceType extends AbstractEnumerator {
-	/**
-	 * The '<em><b>ONE</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #ONE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int ONE = 49;
-
-	/**
-	 * The '<em><b>OPTIONAL</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #OPTIONAL_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int OPTIONAL = 63;
-
-	/**
-	 * The '<em><b>ONE OR MORE</b></em>' literal value. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #ONE_OR_MORE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int ONE_OR_MORE = 43;
-
-	/**
-	 * The '<em><b>ZERO OR MORE</b></em>' literal value. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #ZERO_OR_MORE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int ZERO_OR_MORE = 42;
-
-	/**
-	 * The '<em><b>ONE</b></em>' literal object. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>ONE</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #ONE
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDOccurrenceType ONE_LITERAL = new DTDOccurrenceType(ONE, "ONE");
-
-	/**
-	 * The '<em><b>OPTIONAL</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>OPTIONAL</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #OPTIONAL
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDOccurrenceType OPTIONAL_LITERAL = new DTDOccurrenceType(OPTIONAL, "OPTIONAL");
-
-	/**
-	 * The '<em><b>ONE OR MORE</b></em>' literal object. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>ONE OR MORE</b></em>' literal object
-	 * isn't clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #ONE_OR_MORE
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDOccurrenceType ONE_OR_MORE_LITERAL = new DTDOccurrenceType(ONE_OR_MORE, "ONE_OR_MORE");
-
-	/**
-	 * The '<em><b>ZERO OR MORE</b></em>' literal object. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>ZERO OR MORE</b></em>' literal object
-	 * isn't clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #ZERO_OR_MORE
-	 * @generated
-	 * @ordered
-	 */
-	public static final DTDOccurrenceType ZERO_OR_MORE_LITERAL = new DTDOccurrenceType(ZERO_OR_MORE, "ZERO_OR_MORE");
-
-	/**
-	 * An array of all the '<em><b>Occurrence Type</b></em>' enumerators.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private static final DTDOccurrenceType[] VALUES_ARRAY = new DTDOccurrenceType[]{ONE_LITERAL, OPTIONAL_LITERAL, ONE_OR_MORE_LITERAL, ZERO_OR_MORE_LITERAL,};
-
-	/**
-	 * A public read-only list of all the '<em><b>Occurrence 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>Occurrence Type</b></em>' literal with the
-	 * specified name. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDOccurrenceType get(String name) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			DTDOccurrenceType result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>Occurrence Type</b></em>' literal with the
-	 * specified value. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDOccurrenceType get(int value) {
-		switch (value) {
-			case ONE :
-				return ONE_LITERAL;
-			case OPTIONAL :
-				return OPTIONAL_LITERAL;
-			case ONE_OR_MORE :
-				return ONE_OR_MORE_LITERAL;
-			case ZERO_OR_MORE :
-				return ZERO_OR_MORE_LITERAL;
-		}
-		return null;
-	}
-
-	/**
-	 * Only this class can construct instances. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private DTDOccurrenceType(int value, String name) {
-		super(value, name);
-	}
-
-} // DTDOccurrenceType
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDPCDataContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDPCDataContent.java
deleted file mode 100644
index 043e554..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDPCDataContent.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.dtd.core.internal.emf;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>PC Data Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDPCDataContent()
- * @model
- * @generated
- */
-public interface DTDPCDataContent extends DTDElementContent {
-} // DTDPCDataContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDPackage.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDPackage.java
deleted file mode 100644
index 7887406..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDPackage.java
+++ /dev/null
@@ -1,2392 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.ecore.EcorePackage;
-
-/**
- * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains
- * accessors for the meta objects to represent
- * <ul>
- * <li>each class,</li>
- * <li>each feature of each class,</li>
- * <li>each enum,</li>
- * <li>and each data type</li>
- * </ul>
- * <!-- end-user-doc -->
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDFactory
- * @generated
- */
-public interface DTDPackage extends EPackage {
-
-	/**
-	 * The package name. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	String eNAME = "dtd";
-
-	/**
-	 * The package namespace URI. <!-- begin-user-doc --> <!-- end-user-doc
-	 * -->
-	 * 
-	 * @generated
-	 */
-	String eNS_URI = "http:///com/ibm/etools/dtd.ecore";
-
-	/**
-	 * The package namespace name. <!-- begin-user-doc --> <!-- end-user-doc
-	 * -->
-	 * 
-	 * @generated
-	 */
-	String eNS_PREFIX = "org.eclipse.wst.dtd.core.internal.emf";
-
-	/**
-	 * The singleton instance of the package. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	DTDPackage eINSTANCE = org.eclipse.wst.dtd.core.internal.emf.impl.DTDPackageImpl.init();
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDElementContentImpl <em>Element Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDElementContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDElementContent()
-	 * @generated
-	 */
-	int DTD_ELEMENT_CONTENT = 0;
-
-	/**
-	 * The feature id for the '<em><b>Group</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_CONTENT__GROUP = 0;
-
-	/**
-	 * The feature id for the '<em><b>Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_CONTENT__ELEMENT = 1;
-
-	/**
-	 * The number of structural features of the the '<em>Element Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_CONTENT_FEATURE_COUNT = 2;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDRepeatableContentImpl <em>Repeatable Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDRepeatableContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDRepeatableContent()
-	 * @generated
-	 */
-	int DTD_REPEATABLE_CONTENT = 8;
-
-	/**
-	 * The feature id for the '<em><b>Group</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_REPEATABLE_CONTENT__GROUP = DTD_ELEMENT_CONTENT__GROUP;
-
-	/**
-	 * The feature id for the '<em><b>Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_REPEATABLE_CONTENT__ELEMENT = DTD_ELEMENT_CONTENT__ELEMENT;
-
-	/**
-	 * The feature id for the '<em><b>Occurrence</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_REPEATABLE_CONTENT__OCCURRENCE = DTD_ELEMENT_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The number of structural features of the the '<em>Repeatable Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_REPEATABLE_CONTENT_FEATURE_COUNT = DTD_ELEMENT_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDGroupContentImpl <em>Group Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDGroupContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDGroupContent()
-	 * @generated
-	 */
-	int DTD_GROUP_CONTENT = 1;
-
-	/**
-	 * The feature id for the '<em><b>Group</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_GROUP_CONTENT__GROUP = DTD_REPEATABLE_CONTENT__GROUP;
-
-	/**
-	 * The feature id for the '<em><b>Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_GROUP_CONTENT__ELEMENT = DTD_REPEATABLE_CONTENT__ELEMENT;
-
-	/**
-	 * The feature id for the '<em><b>Occurrence</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_GROUP_CONTENT__OCCURRENCE = DTD_REPEATABLE_CONTENT__OCCURRENCE;
-
-	/**
-	 * The feature id for the '<em><b>Group Kind</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_GROUP_CONTENT__GROUP_KIND = DTD_REPEATABLE_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Content</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_GROUP_CONTENT__CONTENT = DTD_REPEATABLE_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The number of structural features of the the '<em>Group Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_GROUP_CONTENT_FEATURE_COUNT = DTD_REPEATABLE_CONTENT_FEATURE_COUNT + 2;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAttributeImpl <em>Attribute</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAttributeImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDAttribute()
-	 * @generated
-	 */
-	int DTD_ATTRIBUTE = 2;
-
-	/**
-	 * The feature id for the '<em><b>EAnnotations</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__EANNOTATIONS = EcorePackage.EATTRIBUTE__EANNOTATIONS;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__NAME = EcorePackage.EATTRIBUTE__NAME;
-
-	/**
-	 * The feature id for the '<em><b>EType</b></em>' reference. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__ETYPE = EcorePackage.EATTRIBUTE__ETYPE;
-
-	/**
-	 * The feature id for the '<em><b>Changeable</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__CHANGEABLE = EcorePackage.EATTRIBUTE__CHANGEABLE;
-
-	/**
-	 * The feature id for the '<em><b>Volatile</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__VOLATILE = EcorePackage.EATTRIBUTE__VOLATILE;
-
-	/**
-	 * The feature id for the '<em><b>Transient</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__TRANSIENT = EcorePackage.EATTRIBUTE__TRANSIENT;
-
-	/**
-	 * The feature id for the '<em><b>Unique</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__UNIQUE = EcorePackage.EATTRIBUTE__UNIQUE;
-
-	/**
-	 * The feature id for the '<em><b>Default Value Literal</b></em>'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__DEFAULT_VALUE_LITERAL = EcorePackage.EATTRIBUTE__DEFAULT_VALUE_LITERAL;
-
-	/**
-	 * The feature id for the '<em><b>Default Value</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__DEFAULT_VALUE = EcorePackage.EATTRIBUTE__DEFAULT_VALUE;
-
-	/**
-	 * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__LOWER_BOUND = EcorePackage.EATTRIBUTE__LOWER_BOUND;
-
-	/**
-	 * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__UPPER_BOUND = EcorePackage.EATTRIBUTE__UPPER_BOUND;
-
-	/**
-	 * The feature id for the '<em><b>Many</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__MANY = EcorePackage.EATTRIBUTE__MANY;
-
-	/**
-	 * The feature id for the '<em><b>Required</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__REQUIRED = EcorePackage.EATTRIBUTE__REQUIRED;
-
-	/**
-	 * The feature id for the '<em><b>EContaining Class</b></em>'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__ECONTAINING_CLASS = EcorePackage.EATTRIBUTE__ECONTAINING_CLASS;
-
-	/**
-	 * The feature id for the '<em><b>Unsettable</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__UNSETTABLE = EcorePackage.EATTRIBUTE__UNSETTABLE;
-
-	/**
-	 * The feature id for the '<em><b>ID</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__ID = EcorePackage.EATTRIBUTE__ID;
-
-	/**
-	 * The feature id for the '<em><b>EAttribute Type</b></em>'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__EATTRIBUTE_TYPE = EcorePackage.EATTRIBUTE__EATTRIBUTE_TYPE;
-
-	/**
-	 * The feature id for the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__COMMENT = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Default Kind</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__DEFAULT_KIND = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 1;
-
-	/**
-	 * The feature id for the '<em><b>Default Value String</b></em>'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__DEFAULT_VALUE_STRING = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 2;
-
-	/**
-	 * The feature id for the '<em><b>Attribute Name Referenced Entity</b></em>'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 3;
-
-	/**
-	 * The feature id for the '<em><b>Attribute Type Referenced Entity</b></em>'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 4;
-
-	/**
-	 * The feature id for the '<em><b>DTD Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE__DTD_ELEMENT = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 5;
-
-	/**
-	 * The number of structural features of the the '<em>Attribute</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ATTRIBUTE_FEATURE_COUNT = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 6;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDElementImpl <em>Element</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDElementImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDElement()
-	 * @generated
-	 */
-	int DTD_ELEMENT = 3;
-
-	/**
-	 * The feature id for the '<em><b>EAnnotations</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EANNOTATIONS = EcorePackage.ECLASS__EANNOTATIONS;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__NAME = EcorePackage.ECLASS__NAME;
-
-	/**
-	 * The feature id for the '<em><b>Instance Class Name</b></em>'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__INSTANCE_CLASS_NAME = EcorePackage.ECLASS__INSTANCE_CLASS_NAME;
-
-	/**
-	 * The feature id for the '<em><b>Instance Class</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__INSTANCE_CLASS = EcorePackage.ECLASS__INSTANCE_CLASS;
-
-	/**
-	 * The feature id for the '<em><b>Default Value</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__DEFAULT_VALUE = EcorePackage.ECLASS__DEFAULT_VALUE;
-
-	/**
-	 * The feature id for the '<em><b>EPackage</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EPACKAGE = EcorePackage.ECLASS__EPACKAGE;
-
-	/**
-	 * The feature id for the '<em><b>Abstract</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__ABSTRACT = EcorePackage.ECLASS__ABSTRACT;
-
-	/**
-	 * The feature id for the '<em><b>Interface</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__INTERFACE = EcorePackage.ECLASS__INTERFACE;
-
-	/**
-	 * The feature id for the '<em><b>ESuper Types</b></em>' reference
-	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__ESUPER_TYPES = EcorePackage.ECLASS__ESUPER_TYPES;
-
-	/**
-	 * The feature id for the '<em><b>EOperations</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EOPERATIONS = EcorePackage.ECLASS__EOPERATIONS;
-
-	/**
-	 * The feature id for the '<em><b>EAll Attributes</b></em>' reference
-	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EALL_ATTRIBUTES = EcorePackage.ECLASS__EALL_ATTRIBUTES;
-
-	/**
-	 * The feature id for the '<em><b>EAll References</b></em>' reference
-	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EALL_REFERENCES = EcorePackage.ECLASS__EALL_REFERENCES;
-
-	/**
-	 * The feature id for the '<em><b>EReferences</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EREFERENCES = EcorePackage.ECLASS__EREFERENCES;
-
-	/**
-	 * The feature id for the '<em><b>EAttributes</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EATTRIBUTES = EcorePackage.ECLASS__EATTRIBUTES;
-
-	/**
-	 * The feature id for the '<em><b>EAll Containments</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EALL_CONTAINMENTS = EcorePackage.ECLASS__EALL_CONTAINMENTS;
-
-	/**
-	 * The feature id for the '<em><b>EAll Operations</b></em>' reference
-	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EALL_OPERATIONS = EcorePackage.ECLASS__EALL_OPERATIONS;
-
-	/**
-	 * The feature id for the '<em><b>EAll Structural Features</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EALL_STRUCTURAL_FEATURES = EcorePackage.ECLASS__EALL_STRUCTURAL_FEATURES;
-
-	/**
-	 * The feature id for the '<em><b>EAll Super Types</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EALL_SUPER_TYPES = EcorePackage.ECLASS__EALL_SUPER_TYPES;
-
-	/**
-	 * The feature id for the '<em><b>EID Attribute</b></em>' reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__EID_ATTRIBUTE = EcorePackage.ECLASS__EID_ATTRIBUTE;
-
-	/**
-	 * The feature id for the '<em><b>DTD File</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__DTD_FILE = EcorePackage.ECLASS_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__COMMENT = EcorePackage.ECLASS_FEATURE_COUNT + 1;
-
-	/**
-	 * The feature id for the '<em><b>Content</b></em>' containment
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__CONTENT = EcorePackage.ECLASS_FEATURE_COUNT + 2;
-
-	/**
-	 * The feature id for the '<em><b>DTD Attribute</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT__DTD_ATTRIBUTE = EcorePackage.ECLASS_FEATURE_COUNT + 3;
-
-	/**
-	 * The number of structural features of the the '<em>Element</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_FEATURE_COUNT = EcorePackage.ECLASS_FEATURE_COUNT + 4;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEmptyContentImpl <em>Empty Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEmptyContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDEmptyContent()
-	 * @generated
-	 */
-	int DTD_EMPTY_CONTENT = 4;
-
-	/**
-	 * The feature id for the '<em><b>Group</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EMPTY_CONTENT__GROUP = DTD_ELEMENT_CONTENT__GROUP;
-
-	/**
-	 * The feature id for the '<em><b>Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EMPTY_CONTENT__ELEMENT = DTD_ELEMENT_CONTENT__ELEMENT;
-
-	/**
-	 * The number of structural features of the the '<em>Empty Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EMPTY_CONTENT_FEATURE_COUNT = DTD_ELEMENT_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAnyContentImpl <em>Any Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAnyContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDAnyContent()
-	 * @generated
-	 */
-	int DTD_ANY_CONTENT = 5;
-
-	/**
-	 * The feature id for the '<em><b>Group</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ANY_CONTENT__GROUP = DTD_ELEMENT_CONTENT__GROUP;
-
-	/**
-	 * The feature id for the '<em><b>Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ANY_CONTENT__ELEMENT = DTD_ELEMENT_CONTENT__ELEMENT;
-
-	/**
-	 * The number of structural features of the the '<em>Any Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ANY_CONTENT_FEATURE_COUNT = DTD_ELEMENT_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPCDataContentImpl <em>PC Data Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPCDataContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDPCDataContent()
-	 * @generated
-	 */
-	int DTD_PC_DATA_CONTENT = 6;
-
-	/**
-	 * The feature id for the '<em><b>Group</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_PC_DATA_CONTENT__GROUP = DTD_ELEMENT_CONTENT__GROUP;
-
-	/**
-	 * The feature id for the '<em><b>Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_PC_DATA_CONTENT__ELEMENT = DTD_ELEMENT_CONTENT__ELEMENT;
-
-	/**
-	 * The number of structural features of the the '<em>PC Data Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_PC_DATA_CONTENT_FEATURE_COUNT = DTD_ELEMENT_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDElementReferenceContentImpl <em>Element Reference Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDElementReferenceContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDElementReferenceContent()
-	 * @generated
-	 */
-	int DTD_ELEMENT_REFERENCE_CONTENT = 7;
-
-	/**
-	 * The feature id for the '<em><b>Group</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_REFERENCE_CONTENT__GROUP = DTD_REPEATABLE_CONTENT__GROUP;
-
-	/**
-	 * The feature id for the '<em><b>Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT = DTD_REPEATABLE_CONTENT__ELEMENT;
-
-	/**
-	 * The feature id for the '<em><b>Occurrence</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_REFERENCE_CONTENT__OCCURRENCE = DTD_REPEATABLE_CONTENT__OCCURRENCE;
-
-	/**
-	 * The feature id for the '<em><b>Referenced Element</b></em>'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_REFERENCE_CONTENT__REFERENCED_ELEMENT = DTD_REPEATABLE_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The number of structural features of the the '<em>Element Reference Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ELEMENT_REFERENCE_CONTENT_FEATURE_COUNT = DTD_REPEATABLE_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDFileImpl <em>File</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDFileImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDFile()
-	 * @generated
-	 */
-	int DTD_FILE = 9;
-
-	/**
-	 * The feature id for the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_FILE__COMMENT = 0;
-
-	/**
-	 * The feature id for the '<em><b>Parse Error</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_FILE__PARSE_ERROR = 1;
-
-	/**
-	 * The feature id for the '<em><b>DTD Content</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_FILE__DTD_CONTENT = 2;
-
-	/**
-	 * The feature id for the '<em><b>DTD Enumeration Type</b></em>'
-	 * containment reference list. <!-- begin-user-doc --> <!-- end-user-doc
-	 * -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_FILE__DTD_ENUMERATION_TYPE = 3;
-
-	/**
-	 * The number of structural features of the the '<em>File</em>' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_FILE_FEATURE_COUNT = 4;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDBasicTypeImpl <em>Basic Type</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDBasicTypeImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDBasicType()
-	 * @generated
-	 */
-	int DTD_BASIC_TYPE = 10;
-
-	/**
-	 * The feature id for the '<em><b>EAnnotations</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EANNOTATIONS = EcorePackage.ECLASS__EANNOTATIONS;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__NAME = EcorePackage.ECLASS__NAME;
-
-	/**
-	 * The feature id for the '<em><b>Instance Class Name</b></em>'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__INSTANCE_CLASS_NAME = EcorePackage.ECLASS__INSTANCE_CLASS_NAME;
-
-	/**
-	 * The feature id for the '<em><b>Instance Class</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__INSTANCE_CLASS = EcorePackage.ECLASS__INSTANCE_CLASS;
-
-	/**
-	 * The feature id for the '<em><b>Default Value</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__DEFAULT_VALUE = EcorePackage.ECLASS__DEFAULT_VALUE;
-
-	/**
-	 * The feature id for the '<em><b>EPackage</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EPACKAGE = EcorePackage.ECLASS__EPACKAGE;
-
-	/**
-	 * The feature id for the '<em><b>Abstract</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__ABSTRACT = EcorePackage.ECLASS__ABSTRACT;
-
-	/**
-	 * The feature id for the '<em><b>Interface</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__INTERFACE = EcorePackage.ECLASS__INTERFACE;
-
-	/**
-	 * The feature id for the '<em><b>ESuper Types</b></em>' reference
-	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__ESUPER_TYPES = EcorePackage.ECLASS__ESUPER_TYPES;
-
-	/**
-	 * The feature id for the '<em><b>EOperations</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EOPERATIONS = EcorePackage.ECLASS__EOPERATIONS;
-
-	/**
-	 * The feature id for the '<em><b>EAll Attributes</b></em>' reference
-	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EALL_ATTRIBUTES = EcorePackage.ECLASS__EALL_ATTRIBUTES;
-
-	/**
-	 * The feature id for the '<em><b>EAll References</b></em>' reference
-	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EALL_REFERENCES = EcorePackage.ECLASS__EALL_REFERENCES;
-
-	/**
-	 * The feature id for the '<em><b>EReferences</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EREFERENCES = EcorePackage.ECLASS__EREFERENCES;
-
-	/**
-	 * The feature id for the '<em><b>EAttributes</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EATTRIBUTES = EcorePackage.ECLASS__EATTRIBUTES;
-
-	/**
-	 * The feature id for the '<em><b>EAll Containments</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EALL_CONTAINMENTS = EcorePackage.ECLASS__EALL_CONTAINMENTS;
-
-	/**
-	 * The feature id for the '<em><b>EAll Operations</b></em>' reference
-	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EALL_OPERATIONS = EcorePackage.ECLASS__EALL_OPERATIONS;
-
-	/**
-	 * The feature id for the '<em><b>EAll Structural Features</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EALL_STRUCTURAL_FEATURES = EcorePackage.ECLASS__EALL_STRUCTURAL_FEATURES;
-
-	/**
-	 * The feature id for the '<em><b>EAll Super Types</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EALL_SUPER_TYPES = EcorePackage.ECLASS__EALL_SUPER_TYPES;
-
-	/**
-	 * The feature id for the '<em><b>EID Attribute</b></em>' reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__EID_ATTRIBUTE = EcorePackage.ECLASS__EID_ATTRIBUTE;
-
-	/**
-	 * The feature id for the '<em><b>Kind</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE__KIND = EcorePackage.ECLASS_FEATURE_COUNT + 0;
-
-	/**
-	 * The number of structural features of the the '<em>Basic Type</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_BASIC_TYPE_FEATURE_COUNT = EcorePackage.ECLASS_FEATURE_COUNT + 1;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEnumerationTypeImpl <em>Enumeration Type</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEnumerationTypeImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDEnumerationType()
-	 * @generated
-	 */
-	int DTD_ENUMERATION_TYPE = 11;
-
-	/**
-	 * The feature id for the '<em><b>EAnnotations</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__EANNOTATIONS = EcorePackage.EENUM__EANNOTATIONS;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__NAME = EcorePackage.EENUM__NAME;
-
-	/**
-	 * The feature id for the '<em><b>Instance Class Name</b></em>'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__INSTANCE_CLASS_NAME = EcorePackage.EENUM__INSTANCE_CLASS_NAME;
-
-	/**
-	 * The feature id for the '<em><b>Instance Class</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__INSTANCE_CLASS = EcorePackage.EENUM__INSTANCE_CLASS;
-
-	/**
-	 * The feature id for the '<em><b>Default Value</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__DEFAULT_VALUE = EcorePackage.EENUM__DEFAULT_VALUE;
-
-	/**
-	 * The feature id for the '<em><b>EPackage</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__EPACKAGE = EcorePackage.EENUM__EPACKAGE;
-
-	/**
-	 * The feature id for the '<em><b>Serializable</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__SERIALIZABLE = EcorePackage.EENUM__SERIALIZABLE;
-
-	/**
-	 * The feature id for the '<em><b>ELiterals</b></em>' containment
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__ELITERALS = EcorePackage.EENUM__ELITERALS;
-
-	/**
-	 * The feature id for the '<em><b>Kind</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__KIND = EcorePackage.EENUM_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>DTD File</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE__DTD_FILE = EcorePackage.EENUM_FEATURE_COUNT + 1;
-
-	/**
-	 * The number of structural features of the the '<em>Enumeration Type</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENUMERATION_TYPE_FEATURE_COUNT = EcorePackage.EENUM_FEATURE_COUNT + 2;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDContentImpl <em>Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDContent()
-	 * @generated
-	 */
-	int DTD_CONTENT = 19;
-
-	/**
-	 * The feature id for the '<em><b>DTD File</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_CONTENT__DTD_FILE = 0;
-
-	/**
-	 * The number of structural features of the the '<em>Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_CONTENT_FEATURE_COUNT = 1;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDNotationImpl <em>Notation</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDNotationImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDNotation()
-	 * @generated
-	 */
-	int DTD_NOTATION = 12;
-
-	/**
-	 * The feature id for the '<em><b>DTD File</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_NOTATION__DTD_FILE = DTD_CONTENT__DTD_FILE;
-
-	/**
-	 * The feature id for the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_NOTATION__COMMENT = DTD_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>System ID</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_NOTATION__SYSTEM_ID = DTD_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The feature id for the '<em><b>Public ID</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_NOTATION__PUBLIC_ID = DTD_CONTENT_FEATURE_COUNT + 2;
-
-	/**
-	 * The feature id for the '<em><b>Entity</b></em>' reference list.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_NOTATION__ENTITY = DTD_CONTENT_FEATURE_COUNT + 3;
-
-	/**
-	 * The number of structural features of the the '<em>Notation</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_NOTATION_FEATURE_COUNT = DTD_CONTENT_FEATURE_COUNT + 4;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl <em>Entity</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDEntity()
-	 * @generated
-	 */
-	int DTD_ENTITY = 13;
-
-	/**
-	 * The feature id for the '<em><b>DTD File</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY__DTD_FILE = DTD_CONTENT__DTD_FILE;
-
-	/**
-	 * The feature id for the '<em><b>Comment</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY__COMMENT = DTD_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Parameter Entity</b></em>'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY__PARAMETER_ENTITY = DTD_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The feature id for the '<em><b>Content</b></em>' containment
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY__CONTENT = DTD_CONTENT_FEATURE_COUNT + 2;
-
-	/**
-	 * The feature id for the '<em><b>Parm Entity Ref</b></em>'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY__PARM_ENTITY_REF = DTD_CONTENT_FEATURE_COUNT + 3;
-
-	/**
-	 * The feature id for the '<em><b>Entity Reference</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY__ENTITY_REFERENCE = DTD_CONTENT_FEATURE_COUNT + 4;
-
-	/**
-	 * The feature id for the '<em><b>Attribute Name Reference</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE = DTD_CONTENT_FEATURE_COUNT + 5;
-
-	/**
-	 * The feature id for the '<em><b>Attribute Type Reference</b></em>'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE = DTD_CONTENT_FEATURE_COUNT + 6;
-
-	/**
-	 * The number of structural features of the the '<em>Entity</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY_FEATURE_COUNT = DTD_CONTENT_FEATURE_COUNT + 7;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityContentImpl <em>Entity Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDEntityContent()
-	 * @generated
-	 */
-	int DTD_ENTITY_CONTENT = 14;
-
-	/**
-	 * The feature id for the '<em><b>DTD Entity</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY_CONTENT__DTD_ENTITY = 0;
-
-	/**
-	 * The number of structural features of the the '<em>Entity Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY_CONTENT_FEATURE_COUNT = 1;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDExternalEntityImpl <em>External Entity</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDExternalEntityImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDExternalEntity()
-	 * @generated
-	 */
-	int DTD_EXTERNAL_ENTITY = 15;
-
-	/**
-	 * The feature id for the '<em><b>DTD Entity</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EXTERNAL_ENTITY__DTD_ENTITY = DTD_ENTITY_CONTENT__DTD_ENTITY;
-
-	/**
-	 * The feature id for the '<em><b>System ID</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EXTERNAL_ENTITY__SYSTEM_ID = DTD_ENTITY_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Public ID</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EXTERNAL_ENTITY__PUBLIC_ID = DTD_ENTITY_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The feature id for the '<em><b>Notation</b></em>' reference. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EXTERNAL_ENTITY__NOTATION = DTD_ENTITY_CONTENT_FEATURE_COUNT + 2;
-
-	/**
-	 * The feature id for the '<em><b>Entity Referenced From Another File</b></em>'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EXTERNAL_ENTITY__ENTITY_REFERENCED_FROM_ANOTHER_FILE = DTD_ENTITY_CONTENT_FEATURE_COUNT + 3;
-
-	/**
-	 * The number of structural features of the the '<em>External Entity</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_EXTERNAL_ENTITY_FEATURE_COUNT = DTD_ENTITY_CONTENT_FEATURE_COUNT + 4;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDInternalEntityImpl <em>Internal Entity</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDInternalEntityImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDInternalEntity()
-	 * @generated
-	 */
-	int DTD_INTERNAL_ENTITY = 16;
-
-	/**
-	 * The feature id for the '<em><b>DTD Entity</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_INTERNAL_ENTITY__DTD_ENTITY = DTD_ENTITY_CONTENT__DTD_ENTITY;
-
-	/**
-	 * The feature id for the '<em><b>Value</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_INTERNAL_ENTITY__VALUE = DTD_ENTITY_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The number of structural features of the the '<em>Internal Entity</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_INTERNAL_ENTITY_FEATURE_COUNT = DTD_ENTITY_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDParameterEntityReferenceImpl <em>Parameter Entity Reference</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDParameterEntityReferenceImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDParameterEntityReference()
-	 * @generated
-	 */
-	int DTD_PARAMETER_ENTITY_REFERENCE = 17;
-
-	/**
-	 * The feature id for the '<em><b>DTD File</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE = DTD_CONTENT__DTD_FILE;
-
-	/**
-	 * The feature id for the '<em><b>Entity</b></em>' reference. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_PARAMETER_ENTITY_REFERENCE__ENTITY = DTD_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The number of structural features of the the '<em>Parameter Entity Reference</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_PARAMETER_ENTITY_REFERENCE_FEATURE_COUNT = DTD_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityReferenceContentImpl <em>Entity Reference Content</em>}'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityReferenceContentImpl
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDEntityReferenceContent()
-	 * @generated
-	 */
-	int DTD_ENTITY_REFERENCE_CONTENT = 18;
-
-	/**
-	 * The feature id for the '<em><b>Group</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY_REFERENCE_CONTENT__GROUP = DTD_REPEATABLE_CONTENT__GROUP;
-
-	/**
-	 * The feature id for the '<em><b>Element</b></em>' container
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY_REFERENCE_CONTENT__ELEMENT = DTD_REPEATABLE_CONTENT__ELEMENT;
-
-	/**
-	 * The feature id for the '<em><b>Occurrence</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY_REFERENCE_CONTENT__OCCURRENCE = DTD_REPEATABLE_CONTENT__OCCURRENCE;
-
-	/**
-	 * The feature id for the '<em><b>Element Referenced Entity</b></em>'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY = DTD_REPEATABLE_CONTENT_FEATURE_COUNT + 0;
-
-	/**
-	 * The number of structural features of the the '<em>Entity Reference Content</em>'
-	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int DTD_ENTITY_REFERENCE_CONTENT_FEATURE_COUNT = DTD_REPEATABLE_CONTENT_FEATURE_COUNT + 1;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType <em>Occurrence Type</em>}'
-	 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDOccurrenceType()
-	 * @generated
-	 */
-	int DTD_OCCURRENCE_TYPE = 20;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind <em>Default Kind</em>}'
-	 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDDefaultKind()
-	 * @generated
-	 */
-	int DTD_DEFAULT_KIND = 21;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind <em>Basic Type Kind</em>}'
-	 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDBasicTypeKind()
-	 * @generated
-	 */
-	int DTD_BASIC_TYPE_KIND = 22;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind <em>Enum Group Kind</em>}'
-	 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDEnumGroupKind()
-	 * @generated
-	 */
-	int DTD_ENUM_GROUP_KIND = 23;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind <em>Group Kind</em>}'
-	 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getDTDGroupKind()
-	 * @generated
-	 */
-	int DTD_GROUP_KIND = 24;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.dtd.core.internal.emf.XMLSchemaDefinedType <em>XML Schema Defined Type</em>}'
-	 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see org.eclipse.wst.dtd.core.internal.emf.XMLSchemaDefinedType
-	 * @see org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDPackageImpl#getXMLSchemaDefinedType()
-	 * @generated
-	 */
-	int XML_SCHEMA_DEFINED_TYPE = 25;
-
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent <em>Element Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Element Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElementContent
-	 * @generated
-	 */
-	EClass getDTDElementContent();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getGroup <em>Group</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the container reference '<em>Group</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getGroup()
-	 * @see #getDTDElementContent()
-	 * @generated
-	 */
-	EReference getDTDElementContent_Group();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getElement <em>Element</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the container reference '<em>Element</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElementContent#getElement()
-	 * @see #getDTDElementContent()
-	 * @generated
-	 */
-	EReference getDTDElementContent_Element();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent <em>Group Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Group Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent
-	 * @generated
-	 */
-	EClass getDTDGroupContent();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getGroupKind <em>Group Kind</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Group Kind</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getGroupKind()
-	 * @see #getDTDGroupContent()
-	 * @generated
-	 */
-	EAttribute getDTDGroupContent_GroupKind();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getContent <em>Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the containment reference list '<em>Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent#getContent()
-	 * @see #getDTDGroupContent()
-	 * @generated
-	 */
-	EReference getDTDGroupContent_Content();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute <em>Attribute</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Attribute</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute
-	 * @generated
-	 */
-	EClass getDTDAttribute();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getComment <em>Comment</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Comment</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getComment()
-	 * @see #getDTDAttribute()
-	 * @generated
-	 */
-	EAttribute getDTDAttribute_Comment();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDefaultKind <em>Default Kind</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Default Kind</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDefaultKind()
-	 * @see #getDTDAttribute()
-	 * @generated
-	 */
-	EAttribute getDTDAttribute_DefaultKind();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDefaultValueString <em>Default Value String</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Default Value String</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDefaultValueString()
-	 * @see #getDTDAttribute()
-	 * @generated
-	 */
-	EAttribute getDTDAttribute_DefaultValueString();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeNameReferencedEntity <em>Attribute Name Referenced Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference '<em>Attribute Name Referenced Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeNameReferencedEntity()
-	 * @see #getDTDAttribute()
-	 * @generated
-	 */
-	EReference getDTDAttribute_AttributeNameReferencedEntity();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeTypeReferencedEntity <em>Attribute Type Referenced Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference '<em>Attribute Type Referenced Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getAttributeTypeReferencedEntity()
-	 * @see #getDTDAttribute()
-	 * @generated
-	 */
-	EReference getDTDAttribute_AttributeTypeReferencedEntity();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDTDElement <em>DTD Element</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the container reference '<em>DTD Element</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAttribute#getDTDElement()
-	 * @see #getDTDAttribute()
-	 * @generated
-	 */
-	EReference getDTDAttribute_DTDElement();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement <em>Element</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Element</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElement
-	 * @generated
-	 */
-	EClass getDTDElement();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getComment <em>Comment</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Comment</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElement#getComment()
-	 * @see #getDTDElement()
-	 * @generated
-	 */
-	EAttribute getDTDElement_Comment();
-
-	/**
-	 * Returns the meta object for the containment reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getContent <em>Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the containment reference '<em>Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElement#getContent()
-	 * @see #getDTDElement()
-	 * @generated
-	 */
-	EReference getDTDElement_Content();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElement#getDTDAttribute <em>DTD Attribute</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the containment reference list '<em>DTD Attribute</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElement#getDTDAttribute()
-	 * @see #getDTDElement()
-	 * @generated
-	 */
-	EReference getDTDElement_DTDAttribute();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent <em>Empty Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Empty Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent
-	 * @generated
-	 */
-	EClass getDTDEmptyContent();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent <em>Any Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Any Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent
-	 * @generated
-	 */
-	EClass getDTDAnyContent();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent <em>PC Data Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>PC Data Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent
-	 * @generated
-	 */
-	EClass getDTDPCDataContent();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent <em>Element Reference Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Element Reference Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent
-	 * @generated
-	 */
-	EClass getDTDElementReferenceContent();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent#getReferencedElement <em>Referenced Element</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference '<em>Referenced Element</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent#getReferencedElement()
-	 * @see #getDTDElementReferenceContent()
-	 * @generated
-	 */
-	EReference getDTDElementReferenceContent_ReferencedElement();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent <em>Repeatable Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Repeatable Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent
-	 * @generated
-	 */
-	EClass getDTDRepeatableContent();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent#getOccurrence <em>Occurrence</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Occurrence</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent#getOccurrence()
-	 * @see #getDTDRepeatableContent()
-	 * @generated
-	 */
-	EAttribute getDTDRepeatableContent_Occurrence();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile <em>File</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>File</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDFile
-	 * @generated
-	 */
-	EClass getDTDFile();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getComment <em>Comment</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Comment</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDFile#getComment()
-	 * @see #getDTDFile()
-	 * @generated
-	 */
-	EAttribute getDTDFile_Comment();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#isParseError <em>Parse Error</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Parse Error</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDFile#isParseError()
-	 * @see #getDTDFile()
-	 * @generated
-	 */
-	EAttribute getDTDFile_ParseError();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDContent <em>DTD Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the containment reference list '<em>DTD Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDContent()
-	 * @see #getDTDFile()
-	 * @generated
-	 */
-	EReference getDTDFile_DTDContent();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDEnumerationType <em>DTD Enumeration Type</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the containment reference list '<em>DTD Enumeration Type</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDFile#getDTDEnumerationType()
-	 * @see #getDTDFile()
-	 * @generated
-	 */
-	EReference getDTDFile_DTDEnumerationType();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDBasicType <em>Basic Type</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Basic Type</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDBasicType
-	 * @generated
-	 */
-	EClass getDTDBasicType();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDBasicType#getKind <em>Kind</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Kind</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDBasicType#getKind()
-	 * @see #getDTDBasicType()
-	 * @generated
-	 */
-	EAttribute getDTDBasicType_Kind();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType <em>Enumeration Type</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Enumeration Type</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType
-	 * @generated
-	 */
-	EClass getDTDEnumerationType();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getKind <em>Kind</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Kind</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getKind()
-	 * @see #getDTDEnumerationType()
-	 * @generated
-	 */
-	EAttribute getDTDEnumerationType_Kind();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getDTDFile <em>DTD File</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the container reference '<em>DTD File</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType#getDTDFile()
-	 * @see #getDTDEnumerationType()
-	 * @generated
-	 */
-	EReference getDTDEnumerationType_DTDFile();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation <em>Notation</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Notation</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDNotation
-	 * @generated
-	 */
-	EClass getDTDNotation();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getComment <em>Comment</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Comment</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getComment()
-	 * @see #getDTDNotation()
-	 * @generated
-	 */
-	EAttribute getDTDNotation_Comment();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getSystemID <em>System ID</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>System ID</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getSystemID()
-	 * @see #getDTDNotation()
-	 * @generated
-	 */
-	EAttribute getDTDNotation_SystemID();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getPublicID <em>Public ID</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Public ID</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getPublicID()
-	 * @see #getDTDNotation()
-	 * @generated
-	 */
-	EAttribute getDTDNotation_PublicID();
-
-	/**
-	 * Returns the meta object for the reference list '{@link org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference list '<em>Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDNotation#getEntity()
-	 * @see #getDTDNotation()
-	 * @generated
-	 */
-	EReference getDTDNotation_Entity();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity
-	 * @generated
-	 */
-	EClass getDTDEntity();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getComment <em>Comment</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Comment</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getComment()
-	 * @see #getDTDEntity()
-	 * @generated
-	 */
-	EAttribute getDTDEntity_Comment();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#isParameterEntity <em>Parameter Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Parameter Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#isParameterEntity()
-	 * @see #getDTDEntity()
-	 * @generated
-	 */
-	EAttribute getDTDEntity_ParameterEntity();
-
-	/**
-	 * Returns the meta object for the containment reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getContent <em>Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the containment reference '<em>Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getContent()
-	 * @see #getDTDEntity()
-	 * @generated
-	 */
-	EReference getDTDEntity_Content();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getParmEntityRef <em>Parm Entity Ref</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference '<em>Parm Entity Ref</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getParmEntityRef()
-	 * @see #getDTDEntity()
-	 * @generated
-	 */
-	EReference getDTDEntity_ParmEntityRef();
-
-	/**
-	 * Returns the meta object for the reference list '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getEntityReference <em>Entity Reference</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference list '<em>Entity Reference</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getEntityReference()
-	 * @see #getDTDEntity()
-	 * @generated
-	 */
-	EReference getDTDEntity_EntityReference();
-
-	/**
-	 * Returns the meta object for the reference list '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeNameReference <em>Attribute Name Reference</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference list '<em>Attribute Name Reference</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeNameReference()
-	 * @see #getDTDEntity()
-	 * @generated
-	 */
-	EReference getDTDEntity_AttributeNameReference();
-
-	/**
-	 * Returns the meta object for the reference list '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeTypeReference <em>Attribute Type Reference</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference list '<em>Attribute Type Reference</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getAttributeTypeReference()
-	 * @see #getDTDEntity()
-	 * @generated
-	 */
-	EReference getDTDEntity_AttributeTypeReference();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent <em>Entity Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Entity Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent
-	 * @generated
-	 */
-	EClass getDTDEntityContent();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent#getDTDEntity <em>DTD Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the container reference '<em>DTD Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent#getDTDEntity()
-	 * @see #getDTDEntityContent()
-	 * @generated
-	 */
-	EReference getDTDEntityContent_DTDEntity();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity <em>External Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>External Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity
-	 * @generated
-	 */
-	EClass getDTDExternalEntity();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getSystemID <em>System ID</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>System ID</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getSystemID()
-	 * @see #getDTDExternalEntity()
-	 * @generated
-	 */
-	EAttribute getDTDExternalEntity_SystemID();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getPublicID <em>Public ID</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Public ID</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getPublicID()
-	 * @see #getDTDExternalEntity()
-	 * @generated
-	 */
-	EAttribute getDTDExternalEntity_PublicID();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getNotation <em>Notation</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference '<em>Notation</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getNotation()
-	 * @see #getDTDExternalEntity()
-	 * @generated
-	 */
-	EReference getDTDExternalEntity_Notation();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getEntityReferencedFromAnotherFile <em>Entity Referenced From Another File</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference '<em>Entity Referenced From Another File</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity#getEntityReferencedFromAnotherFile()
-	 * @see #getDTDExternalEntity()
-	 * @generated
-	 */
-	EReference getDTDExternalEntity_EntityReferencedFromAnotherFile();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity <em>Internal Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Internal Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity
-	 * @generated
-	 */
-	EClass getDTDInternalEntity();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity#getValue <em>Value</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the attribute '<em>Value</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity#getValue()
-	 * @see #getDTDInternalEntity()
-	 * @generated
-	 */
-	EAttribute getDTDInternalEntity_Value();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference <em>Parameter Entity Reference</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Parameter Entity Reference</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference
-	 * @generated
-	 */
-	EClass getDTDParameterEntityReference();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference#getEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference '<em>Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference#getEntity()
-	 * @see #getDTDParameterEntityReference()
-	 * @generated
-	 */
-	EReference getDTDParameterEntityReference_Entity();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent <em>Entity Reference Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Entity Reference Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent
-	 * @generated
-	 */
-	EClass getDTDEntityReferenceContent();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent#getElementReferencedEntity <em>Element Referenced Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the reference '<em>Element Referenced Entity</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent#getElementReferencedEntity()
-	 * @see #getDTDEntityReferenceContent()
-	 * @generated
-	 */
-	EReference getDTDEntityReferenceContent_ElementReferencedEntity();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.dtd.core.internal.emf.DTDContent <em>Content</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for class '<em>Content</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDContent
-	 * @generated
-	 */
-	EClass getDTDContent();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.eclipse.wst.dtd.core.internal.emf.DTDContent#getDTDFile <em>DTD File</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for the container reference '<em>DTD File</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDContent#getDTDFile()
-	 * @see #getDTDContent()
-	 * @generated
-	 */
-	EReference getDTDContent_DTDFile();
-
-	/**
-	 * Returns the meta object for enum '{@link org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType <em>Occurrence Type</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for enum '<em>Occurrence Type</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType
-	 * @generated
-	 */
-	EEnum getDTDOccurrenceType();
-
-	/**
-	 * Returns the meta object for enum '{@link org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind <em>Default Kind</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for enum '<em>Default Kind</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind
-	 * @generated
-	 */
-	EEnum getDTDDefaultKind();
-
-	/**
-	 * Returns the meta object for enum '{@link org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind <em>Basic Type Kind</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for enum '<em>Basic Type Kind</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind
-	 * @generated
-	 */
-	EEnum getDTDBasicTypeKind();
-
-	/**
-	 * Returns the meta object for enum '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind <em>Enum Group Kind</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for enum '<em>Enum Group Kind</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind
-	 * @generated
-	 */
-	EEnum getDTDEnumGroupKind();
-
-	/**
-	 * Returns the meta object for enum '{@link org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind <em>Group Kind</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for enum '<em>Group Kind</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind
-	 * @generated
-	 */
-	EEnum getDTDGroupKind();
-
-	/**
-	 * Returns the meta object for enum '{@link org.eclipse.wst.dtd.core.internal.emf.XMLSchemaDefinedType <em>XML Schema Defined Type</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return the meta object for enum '<em>XML Schema Defined Type</em>'.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.XMLSchemaDefinedType
-	 * @generated
-	 */
-	EEnum getXMLSchemaDefinedType();
-
-	/**
-	 * 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
-	 */
-	DTDFactory getDTDFactory();
-
-} // DTDPackage
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDParameterEntityReference.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDParameterEntityReference.java
deleted file mode 100644
index f26862b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDParameterEntityReference.java
+++ /dev/null
@@ -1,61 +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.dtd.core.internal.emf;
-
-import org.eclipse.emf.ecore.ENamedElement;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Parameter Entity Reference</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference#getEntity <em>Entity</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDParameterEntityReference()
- * @model
- * @generated
- */
-public interface DTDParameterEntityReference extends ENamedElement, DTDContent, DTDObject, DTDSourceOffset {
-	/**
-	 * Returns the value of the '<em><b>Entity</b></em>' reference. It is
-	 * bidirectional and its opposite is '{@link org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getParmEntityRef <em>Parm Entity Ref</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Entity</em>' reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Entity</em>' reference.
-	 * @see #setEntity(DTDEntity)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDParameterEntityReference_Entity()
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDEntity#getParmEntityRef
-	 * @model opposite="parmEntityRef" required="true"
-	 * @generated
-	 */
-	DTDEntity getEntity();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference#getEntity <em>Entity</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Entity</em>' reference.
-	 * @see #getEntity()
-	 * @generated
-	 */
-	void setEntity(DTDEntity value);
-
-} // DTDParameterEntityReference
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDRepeatableContent.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDRepeatableContent.java
deleted file mode 100644
index 779cd40..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDRepeatableContent.java
+++ /dev/null
@@ -1,65 +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.dtd.core.internal.emf;
-
-/**
- * <!-- begin-user-doc --> A representation of the model object '<em><b>Repeatable Content</b></em>'.
- * <!-- end-user-doc -->
- * 
- * <p>
- * The following features are supported:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent#getOccurrence <em>Occurrence</em>}</li>
- * </ul>
- * </p>
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDRepeatableContent()
- * @model abstract="true"
- * @generated
- */
-public interface DTDRepeatableContent extends DTDElementContent {
-
-	public abstract String unparseRepeatableContent();
-
-	/**
-	 * Returns the value of the '<em><b>Occurrence</b></em>' attribute.
-	 * The literals are from the enumeration
-	 * {@link org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType}. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Occurrence</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Occurrence</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType
-	 * @see #setOccurrence(DTDOccurrenceType)
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getDTDRepeatableContent_Occurrence()
-	 * @model
-	 * @generated
-	 */
-	DTDOccurrenceType getOccurrence();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent#getOccurrence <em>Occurrence</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @param value
-	 *            the new value of the '<em>Occurrence</em>' attribute.
-	 * @see org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType
-	 * @see #getOccurrence()
-	 * @generated
-	 */
-	void setOccurrence(DTDOccurrenceType value);
-
-} // DTDRepeatableContent
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDResource.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDResource.java
deleted file mode 100644
index 7c7ed49..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDResource.java
+++ /dev/null
@@ -1,45 +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.dtd.core.internal.emf;
-
-
-public interface DTDResource {
-	// Enumeration Constants
-	public static final String ANYICON = "icons/any.gif";
-	public static final String ELEMENTICON = "icons/element.gif";
-	public static final String ENTITYICON = "icons/entity.gif";
-	public static final String ATTRIBUTEICON = "icons/attribute.gif";
-	public static final String NOTATIONICON = "icons/notation.gif";
-	public static final String EMPTYICON = "icons/emptycontent.gif";
-	public static final String PCDATAICON = "icons/one.gif";
-	public static final String ENTITYREFERENCEICON = "icons/entity_reference.gif";
-
-	public static final String ONEICON = "icons/one.gif";
-	public static final String OPTIONALICON = "icons/optional.gif";
-	public static final String ONEORMOREICON = "icons/oneormore.gif";
-	public static final String ZEROORMOREICON = "icons/zeroormore.gif";
-
-	public static final String ONESEQUENCEICON = "icons/onesequence.gif";
-	public static final String OPTIONALSEQUENCEICON = "icons/optionalsequence.gif";
-	public static final String ONEORMORESEQUENCEICON = "icons/oneormoresequence.gif";
-	public static final String ZEROORMORESEQUENCEICON = "icons/zeroormoresequence.gif";
-
-	public static final String ONECHOICEICON = "icons/onechoice.gif";
-	public static final String OPTIONALCHOICEICON = "icons/optionalchoice.gif";
-	public static final String ONEORMORECHOICEICON = "icons/oneormorechoice.gif";
-	public static final String ZEROORMORECHOICEICON = "icons/zeroormorechoice.gif";
-
-	public static final String DTDFILEICON = "icons/DTDFile.gif";
-
-	public static final String NEWDTD = "icons/newdtd_wiz.gif";
-	public static final String NEWHTMLFORM = "icons/genhtmform_wiz.gif";
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDSourceOffset.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDSourceOffset.java
deleted file mode 100644
index ff32b1b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDSourceOffset.java
+++ /dev/null
@@ -1,45 +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.dtd.core.internal.emf;
-
-public interface DTDSourceOffset {
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset();
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v);
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset();
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v);
-
-}// DTDSourceOffset
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDType.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDType.java
deleted file mode 100644
index f9715e9..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/DTDType.java
+++ /dev/null
@@ -1,31 +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.dtd.core.internal.emf;
-
-public interface DTDType extends DTDObject {
-	// constant strings for dtd attribute types
-	public static final String NONE = "None";
-
-	public static final String CDATA = "Character Data (CDATA)";
-	public static final String ID = "Identifier (ID)";
-	public static final String IDREF = "ID Reference (IDREF)";
-	public static final String IDREFS = "ID References (IDREFS)";
-	public static final String ENTITY = "Entity Name (ENTITY)";
-	public static final String ENTITIES = "Entity Names (ENTITIES)";
-	public static final String NMTOKEN = "Name Token (NMTOKEN)";
-	public static final String NMTOKENS = "Name Tokens (NMTOKENS)";
-	public static final String ENUM_NAME_TOKEN_GROUP = "Enumerated Name Tokens";
-	public static final String ENUM_NOTATION_GROUP = "Enumerated NOTATION";
-
-	public String toString();
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/XMLSchemaDefinedType.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/XMLSchemaDefinedType.java
deleted file mode 100644
index fa4e8ae..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/XMLSchemaDefinedType.java
+++ /dev/null
@@ -1,471 +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.dtd.core.internal.emf;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.util.AbstractEnumerator;
-
-/**
- * <!-- begin-user-doc --> A representation of the literals of the enumeration '<em><b>XML Schema Defined Type</b></em>',
- * and utility methods for working with them. <!-- end-user-doc -->
- * 
- * @see org.eclipse.wst.dtd.core.internal.emf.DTDPackage#getXMLSchemaDefinedType()
- * @model
- * @generated
- */
-public final class XMLSchemaDefinedType extends AbstractEnumerator {
-	/**
-	 * The '<em><b>NONE</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NONE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int NONE = -1;
-
-	/**
-	 * The '<em><b>STRING</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #STRING_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int STRING = 1;
-
-	/**
-	 * The '<em><b>BOOLEAN</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #BOOLEAN_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int BOOLEAN = 2;
-
-	/**
-	 * The '<em><b>FLOAT</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #FLOAT_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int FLOAT = 3;
-
-	/**
-	 * The '<em><b>DOUBLE</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #DOUBLE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int DOUBLE = 4;
-
-	/**
-	 * The '<em><b>DECIMAL</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #DECIMAL_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int DECIMAL = 5;
-
-	/**
-	 * The '<em><b>TIMEINSTANT</b></em>' literal value. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #TIMEINSTANT_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int TIMEINSTANT = 6;
-
-	/**
-	 * The '<em><b>TIMEDURATION</b></em>' literal value. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #TIMEDURATION_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int TIMEDURATION = 7;
-
-	/**
-	 * The '<em><b>RECURRINGINSTANT</b></em>' literal value. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #RECURRINGINSTANT_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int RECURRINGINSTANT = 8;
-
-	/**
-	 * The '<em><b>BINARY</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #BINARY_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int BINARY = 9;
-
-	/**
-	 * The '<em><b>URI</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #URI_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int URI = 10;
-
-	/**
-	 * The '<em><b>INTEGER</b></em>' literal value. <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * 
-	 * @see #INTEGER_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int INTEGER = 11;
-
-	/**
-	 * The '<em><b>DATE</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #DATE_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int DATE = 12;
-
-	/**
-	 * The '<em><b>TIME</b></em>' literal value. <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #TIME_LITERAL
-	 * @model
-	 * @generated
-	 * @ordered
-	 */
-	public static final int TIME = 13;
-
-	/**
-	 * The '<em><b>NONE</b></em>' literal object. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>NONE</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #NONE
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType NONE_LITERAL = new XMLSchemaDefinedType(NONE, "NONE");
-
-	/**
-	 * The '<em><b>STRING</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>STRING</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #STRING
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType STRING_LITERAL = new XMLSchemaDefinedType(STRING, "STRING");
-
-	/**
-	 * The '<em><b>BOOLEAN</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>BOOLEAN</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #BOOLEAN
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType BOOLEAN_LITERAL = new XMLSchemaDefinedType(BOOLEAN, "BOOLEAN");
-
-	/**
-	 * The '<em><b>FLOAT</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>FLOAT</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #FLOAT
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType FLOAT_LITERAL = new XMLSchemaDefinedType(FLOAT, "FLOAT");
-
-	/**
-	 * The '<em><b>DOUBLE</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>DOUBLE</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #DOUBLE
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType DOUBLE_LITERAL = new XMLSchemaDefinedType(DOUBLE, "DOUBLE");
-
-	/**
-	 * The '<em><b>DECIMAL</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>DECIMAL</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #DECIMAL
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType DECIMAL_LITERAL = new XMLSchemaDefinedType(DECIMAL, "DECIMAL");
-
-	/**
-	 * The '<em><b>TIMEINSTANT</b></em>' literal object. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>TIMEINSTANT</b></em>' literal object
-	 * isn't clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #TIMEINSTANT
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType TIMEINSTANT_LITERAL = new XMLSchemaDefinedType(TIMEINSTANT, "TIMEINSTANT");
-
-	/**
-	 * The '<em><b>TIMEDURATION</b></em>' literal object. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>TIMEDURATION</b></em>' literal object
-	 * isn't clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #TIMEDURATION
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType TIMEDURATION_LITERAL = new XMLSchemaDefinedType(TIMEDURATION, "TIMEDURATION");
-
-	/**
-	 * The '<em><b>RECURRINGINSTANT</b></em>' literal object. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>RECURRINGINSTANT</b></em>' literal
-	 * object isn't clear, there really should be more of a description
-	 * here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #RECURRINGINSTANT
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType RECURRINGINSTANT_LITERAL = new XMLSchemaDefinedType(RECURRINGINSTANT, "RECURRINGINSTANT");
-
-	/**
-	 * The '<em><b>BINARY</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>BINARY</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #BINARY
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType BINARY_LITERAL = new XMLSchemaDefinedType(BINARY, "BINARY");
-
-	/**
-	 * The '<em><b>URI</b></em>' literal object. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>URI</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #URI
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType URI_LITERAL = new XMLSchemaDefinedType(URI, "URI");
-
-	/**
-	 * The '<em><b>INTEGER</b></em>' literal object. <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of '<em><b>INTEGER</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #INTEGER
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType INTEGER_LITERAL = new XMLSchemaDefinedType(INTEGER, "INTEGER");
-
-	/**
-	 * The '<em><b>DATE</b></em>' literal object. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>DATE</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #DATE
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType DATE_LITERAL = new XMLSchemaDefinedType(DATE, "DATE");
-
-	/**
-	 * The '<em><b>TIME</b></em>' literal object. <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>TIME</b></em>' literal object isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @see #TIME
-	 * @generated
-	 * @ordered
-	 */
-	public static final XMLSchemaDefinedType TIME_LITERAL = new XMLSchemaDefinedType(TIME, "TIME");
-
-	/**
-	 * An array of all the '<em><b>XML Schema Defined Type</b></em>'
-	 * enumerators. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private static final XMLSchemaDefinedType[] VALUES_ARRAY = new XMLSchemaDefinedType[]{NONE_LITERAL, STRING_LITERAL, BOOLEAN_LITERAL, FLOAT_LITERAL, DOUBLE_LITERAL, DECIMAL_LITERAL, TIMEINSTANT_LITERAL, TIMEDURATION_LITERAL, RECURRINGINSTANT_LITERAL, BINARY_LITERAL, URI_LITERAL, INTEGER_LITERAL, DATE_LITERAL, TIME_LITERAL,};
-
-	/**
-	 * A public read-only list of all the '<em><b>XML Schema Defined 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>XML Schema Defined Type</b></em>' literal with
-	 * the specified name. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static XMLSchemaDefinedType get(String name) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			XMLSchemaDefinedType result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>XML Schema Defined Type</b></em>' literal with
-	 * the specified value. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static XMLSchemaDefinedType get(int value) {
-		switch (value) {
-			case NONE :
-				return NONE_LITERAL;
-			case STRING :
-				return STRING_LITERAL;
-			case BOOLEAN :
-				return BOOLEAN_LITERAL;
-			case FLOAT :
-				return FLOAT_LITERAL;
-			case DOUBLE :
-				return DOUBLE_LITERAL;
-			case DECIMAL :
-				return DECIMAL_LITERAL;
-			case TIMEINSTANT :
-				return TIMEINSTANT_LITERAL;
-			case TIMEDURATION :
-				return TIMEDURATION_LITERAL;
-			case RECURRINGINSTANT :
-				return RECURRINGINSTANT_LITERAL;
-			case BINARY :
-				return BINARY_LITERAL;
-			case URI :
-				return URI_LITERAL;
-			case INTEGER :
-				return INTEGER_LITERAL;
-			case DATE :
-				return DATE_LITERAL;
-			case TIME :
-				return TIME_LITERAL;
-		}
-		return null;
-	}
-
-	/**
-	 * Only this class can construct instances. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private XMLSchemaDefinedType(int value, String name) {
-		super(value, name);
-	}
-
-} // XMLSchemaDefinedType
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDAnyContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDAnyContentImpl.java
deleted file mode 100644
index eb7f510..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDAnyContentImpl.java
+++ /dev/null
@@ -1,181 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Any Content</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- * 
- * @generated
- */
-public class DTDAnyContentImpl extends DTDElementContentImpl implements DTDAnyContent {
-	public String getContentName() {
-		return "ANY";
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected DTDAnyContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDAnyContent();
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ANY_CONTENT__GROUP :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ANY_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_ANY_CONTENT__ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ANY_CONTENT__ELEMENT, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ANY_CONTENT__GROUP :
-					return eBasicSetContainer(null, DTDPackage.DTD_ANY_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_ANY_CONTENT__ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_ANY_CONTENT__ELEMENT, 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 DTDPackage.DTD_ANY_CONTENT__GROUP :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-				case DTDPackage.DTD_ANY_CONTENT__ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ANY_CONTENT__GROUP :
-				return getGroup();
-			case DTDPackage.DTD_ANY_CONTENT__ELEMENT :
-				return getElement();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ANY_CONTENT__GROUP :
-				setGroup((DTDGroupContent) newValue);
-				return;
-			case DTDPackage.DTD_ANY_CONTENT__ELEMENT :
-				setElement((DTDElement) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ANY_CONTENT__GROUP :
-				setGroup((DTDGroupContent) null);
-				return;
-			case DTDPackage.DTD_ANY_CONTENT__ELEMENT :
-				setElement((DTDElement) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ANY_CONTENT__GROUP :
-				return getGroup() != null;
-			case DTDPackage.DTD_ANY_CONTENT__ELEMENT :
-				return getElement() != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDAttributeImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDAttributeImpl.java
deleted file mode 100644
index e2ab987..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDAttributeImpl.java
+++ /dev/null
@@ -1,980 +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.dtd.core.internal.emf.impl;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.notify.impl.NotificationChainImpl;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EClassifier;
-import org.eclipse.emf.ecore.EEnumLiteral;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.EcoreFactory;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.EAttributeImpl;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDLexicalInfo;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDType;
-
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Attribute</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAttributeImpl#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAttributeImpl#getDefaultKind <em>Default Kind</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAttributeImpl#getDefaultValueString <em>Default Value String</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAttributeImpl#getAttributeNameReferencedEntity <em>Attribute Name Referenced Entity</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAttributeImpl#getAttributeTypeReferencedEntity <em>Attribute Type Referenced Entity</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDAttributeImpl#getDTDElement <em>DTD Element</em>}</li>
- * </ul>
- * </p>
- * 
- * @generated
- */
-public class DTDAttributeImpl extends EAttributeImpl implements DTDAttribute {
-
-	public DTDAttributeImpl() {
-		super();
-	}
-
-	public DTDType getDTDType() {
-		return (DTDType) getEType();
-	}
-
-
-	public void setDTDType(DTDType type) {
-		setEType((EClassifier) type);
-	}
-
-	public void setDTDBasicType(int value) {
-		DTDFactoryImpl factory = (DTDFactoryImpl) DTDFactoryImpl.instance();
-		// set attribute type
-		switch (value) {
-			case 0 :
-				setDTDType(factory.getDTDBasicType_NONE());
-				break;
-			case 1 :
-				setDTDType(factory.getDTDBasicType_CDATA());
-				break;
-			case 2 :
-				setDTDType(factory.getDTDBasicType_ID());
-				break;
-			case 3 :
-				setDTDType(factory.getDTDBasicType_IDREF());
-				break;
-			case 4 :
-				setDTDType(factory.getDTDBasicType_IDREFS());
-				break;
-			case 5 :
-				setDTDType(factory.getDTDBasicType_ENTITY());
-				break;
-			case 6 :
-				setDTDType(factory.getDTDBasicType_ENTITIES());
-				break;
-			case 7 :
-				setDTDType(factory.getDTDBasicType_NMTOKEN());
-				break;
-			case 8 :
-				setDTDType(factory.getDTDBasicType_NMTOKENS());
-				break;
-		}
-	}
-
-	public String unparse() {
-		StringBuffer result = new StringBuffer(128);
-
-
-		result.append(getName());
-
-
-		StringBuffer value = new StringBuffer();
-		switch (getDefaultKind().getValue()) {
-			case DTDDefaultKind.IMPLIED :
-				value.append("#IMPLIED");
-				break;
-			case DTDDefaultKind.REQUIRED :
-				value.append("#REQUIRED");
-				break;
-			case DTDDefaultKind.FIXED :
-				String type = getDTDType().toString();
-				if (!(type.equals(DTDType.ID) || type.equals(DTDType.IDREF) || type.equals(DTDType.ENUM_NAME_TOKEN_GROUP) || type.equals(DTDType.IDREFS))) {
-					value.append("#FIXED \"").append(getDefaultValueString()).append("\"");
-				}
-				break;
-			case DTDDefaultKind.NOFIXED :
-				String defaultValue = getDefaultValueString();
-				if (defaultValue != null)
-					value.append("\"").append(defaultValue).append("\"");
-				break;
-		}
-
-
-		// Get the attribute type
-		DTDEntity typeEnt = getAttributeTypeReferencedEntity();
-		if (typeEnt != null) {
-			result.append(" %" + typeEnt.getName() + "; ").append(value);
-		}
-		else {
-			DTDType dtdType = getDTDType();
-			if (dtdType instanceof DTDBasicType) {
-				switch (((DTDBasicType) dtdType).getKind().getValue()) {
-					case DTDBasicTypeKind.CDATA :
-						result.append(" CDATA ").append(value);
-						break;
-					case DTDBasicTypeKind.ID :
-						result.append(" ID ").append(value);
-						break;
-					case DTDBasicTypeKind.IDREF :
-						result.append(" IDREF ").append(value);
-						break;
-					case DTDBasicTypeKind.IDREFS :
-						result.append(" IDREFS ").append(value);
-						break;
-					case DTDBasicTypeKind.ENTITY :
-						result.append(" ENTITY ").append(value);
-						break;
-					case DTDBasicTypeKind.ENTITIES :
-						result.append(" ENTITIES ").append(value);
-						break;
-					case DTDBasicTypeKind.NMTOKEN :
-						result.append(" NMTOKEN ").append(value);
-						break;
-					case DTDBasicTypeKind.NMTOKENS :
-						result.append(" NMTOKENS ").append(value);
-						break;
-				}
-			}
-			else if (dtdType instanceof DTDEnumerationType) {
-				result.append(" ").append(buildEnumString((DTDEnumerationType) dtdType)).append(value);
-			}
-		}
-
-
-		return result.toString();
-	}
-
-
-	private String buildEnumString(DTDEnumerationType enumType) {
-		String result = "";
-
-
-		if (enumType.getKind().getValue() == DTDEnumGroupKind.NOTATION_GROUP)
-			result += "NOTATION ";
-
-
-		Iterator i = enumType.getEnumLiterals().iterator();
-		if (i.hasNext()) {
-			result += "(" + ((EEnumLiteral) i.next()).toString();
-			while (i.hasNext()) {
-				result += " | " + ((EEnumLiteral) i.next()).toString();
-			}
-			result += ") ";
-		}
-
-
-		return result;
-	}
-
-	public DTDEnumerationType createDTDEnumeration(String[] enumValues, int enumKind) {
-		DTDEnumerationType enumeration = DTDFactoryImpl.instance().createDTDEnumerationType();
-		// enum.setID("Enum_" + ((DTDElement)getMOFDomain()).getName() + "_" +
-		// getName());
-		DTDEnumGroupKind groupKind = DTDEnumGroupKind.get(enumKind);
-		enumeration.setKind(groupKind);
-		// Enumeration values
-		if (enumValues != null) {
-			for (int i = 0; i < enumValues.length; i++) {
-				EcorePackage ePackage = (EcorePackage) EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
-				EEnumLiteral enumLiteral = ((EcoreFactory) ePackage.getEFactoryInstance()).createEEnumLiteral();
-				// MOF2EMF Port
-				// enumLiteral.refSetLiteral(enumValues[i]);
-				enumLiteral.setName(enumValues[i]);
-				// MOF2EMF Port
-				// enumLiteral.refSetLiteral(i);
-				enumLiteral.setValue(i);
-
-				enumeration.getEnumLiterals().add(enumLiteral);
-			}
-		}
-		getDTDElement().getDTDFile().getDTDEnumerationType().add(enumeration);
-		return enumeration;
-	}
-
-	public String getPathname() {
-		return null;
-		// TODO: finish port
-		// return DTDPathnameUtil.makePath(getDTDElement().getPathname(),
-		// "Attr", getName(), -1);
-	}
-
-
-	public DTDObject findObject(String relativePath) {
-		return null;
-		// TODO: finish port
-		/*
-		 * Object[] result = DTDPathnameUtil.parsePathComponent(relativePath);
-		 * 
-		 * 
-		 * String type = (String)result[0];
-		 * 
-		 * 
-		 * if (type == null) return null;
-		 * 
-		 * 
-		 * DTDObject obj = null; if (type.equals("Type")) { obj =
-		 * getDataType(); } else { return null; }
-		 * 
-		 * 
-		 * String restPath = (String)result[3];
-		 * 
-		 * if ((restPath == null) || (obj == null)) { return obj; } else {
-		 * return obj.findObject(restPath); }
-		 */
-	}
-
-	public Collection getEnumeratedValues() {
-		Collection result = new ArrayList();
-
-
-		DTDType type = getDTDType();
-		if (type instanceof DTDEnumerationType) {
-			DTDEnumerationType enumType = (DTDEnumerationType) type;
-			Iterator i = enumType.getEnumLiterals().iterator();
-			while (i.hasNext()) {
-				result.add(((EEnumLiteral) i.next()).toString());
-			}
-		}
-		return result;
-	}
-
-
-	// ugly hack for now since we don't have multiple inheritance.
-	// Would rather have all this stuff in a base class but these
-	// classes are inheriting from sometimes different mof classes
-	DTDLexicalInfo lexInfo = new DTDLexicalInfo();
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset() {
-		return lexInfo.getStartOffset();
-	}
-
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v) {
-		lexInfo.setStartOffset(v);
-	}
-
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset() {
-		return lexInfo.getEndOffset();
-	}
-
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v) {
-		lexInfo.setEndOffset(v);
-	}
-
-
-	/**
-	 * The default value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String COMMENT_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected String comment = COMMENT_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getDefaultKind() <em>Default Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getDefaultKind()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final DTDDefaultKind DEFAULT_KIND_EDEFAULT = DTDDefaultKind.IMPLIED_LITERAL;
-
-	/**
-	 * The cached value of the '{@link #getDefaultKind() <em>Default Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getDefaultKind()
-	 * @generated
-	 * @ordered
-	 */
-	protected DTDDefaultKind defaultKind = DEFAULT_KIND_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getDefaultValueString() <em>Default Value String</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getDefaultValueString()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String DEFAULT_VALUE_STRING_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getDefaultValueString() <em>Default Value String</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getDefaultValueString()
-	 * @generated
-	 * @ordered
-	 */
-	protected String defaultValueString = DEFAULT_VALUE_STRING_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getAttributeNameReferencedEntity() <em>Attribute Name Referenced Entity</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getAttributeNameReferencedEntity()
-	 * @generated
-	 * @ordered
-	 */
-	protected DTDEntity attributeNameReferencedEntity = null;
-
-	/**
-	 * The cached value of the '{@link #getAttributeTypeReferencedEntity() <em>Attribute Type Referenced Entity</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getAttributeTypeReferencedEntity()
-	 * @generated
-	 * @ordered
-	 */
-	protected DTDEntity attributeTypeReferencedEntity = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDAttribute();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String getComment() {
-		return comment;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setComment(String newComment) {
-		String oldComment = comment;
-		comment = newComment;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ATTRIBUTE__COMMENT, oldComment, comment));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDDefaultKind getDefaultKind() {
-		return defaultKind;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setDefaultKind(DTDDefaultKind newDefaultKind) {
-		DTDDefaultKind oldDefaultKind = defaultKind;
-		defaultKind = newDefaultKind == null ? DEFAULT_KIND_EDEFAULT : newDefaultKind;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ATTRIBUTE__DEFAULT_KIND, oldDefaultKind, defaultKind));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String getDefaultValueString() {
-		return defaultValueString;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setDefaultValueString(String newDefaultValueString) {
-		String oldDefaultValueString = defaultValueString;
-		defaultValueString = newDefaultValueString;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_STRING, oldDefaultValueString, defaultValueString));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntity getAttributeNameReferencedEntity() {
-		if (attributeNameReferencedEntity != null && attributeNameReferencedEntity.eIsProxy()) {
-			DTDEntity oldAttributeNameReferencedEntity = attributeNameReferencedEntity;
-			attributeNameReferencedEntity = (DTDEntity) EcoreUtil.resolve(attributeNameReferencedEntity, this);
-			if (attributeNameReferencedEntity != oldAttributeNameReferencedEntity) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY, oldAttributeNameReferencedEntity, attributeNameReferencedEntity));
-			}
-		}
-		return attributeNameReferencedEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntity basicGetAttributeNameReferencedEntity() {
-		return attributeNameReferencedEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public NotificationChain basicSetAttributeNameReferencedEntity(DTDEntity newAttributeNameReferencedEntity, NotificationChain msgs) {
-		DTDEntity oldAttributeNameReferencedEntity = attributeNameReferencedEntity;
-		attributeNameReferencedEntity = newAttributeNameReferencedEntity;
-		if (eNotificationRequired()) {
-			if (msgs == null)
-				msgs = new NotificationChainImpl(4);
-			msgs.add(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY, oldAttributeNameReferencedEntity, newAttributeNameReferencedEntity));
-		}
-		return msgs;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setAttributeNameReferencedEntity(DTDEntity newAttributeNameReferencedEntity) {
-		if (newAttributeNameReferencedEntity != attributeNameReferencedEntity) {
-			NotificationChain msgs = null;
-			if (attributeNameReferencedEntity != null)
-				msgs = ((InternalEObject) attributeNameReferencedEntity).eInverseRemove(this, DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE, DTDEntity.class, msgs);
-			if (newAttributeNameReferencedEntity != null)
-				msgs = ((InternalEObject) newAttributeNameReferencedEntity).eInverseAdd(this, DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE, DTDEntity.class, msgs);
-			msgs = basicSetAttributeNameReferencedEntity(newAttributeNameReferencedEntity, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY, newAttributeNameReferencedEntity, newAttributeNameReferencedEntity));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntity getAttributeTypeReferencedEntity() {
-		if (attributeTypeReferencedEntity != null && attributeTypeReferencedEntity.eIsProxy()) {
-			DTDEntity oldAttributeTypeReferencedEntity = attributeTypeReferencedEntity;
-			attributeTypeReferencedEntity = (DTDEntity) EcoreUtil.resolve(attributeTypeReferencedEntity, this);
-			if (attributeTypeReferencedEntity != oldAttributeTypeReferencedEntity) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY, oldAttributeTypeReferencedEntity, attributeTypeReferencedEntity));
-			}
-		}
-		return attributeTypeReferencedEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntity basicGetAttributeTypeReferencedEntity() {
-		return attributeTypeReferencedEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public NotificationChain basicSetAttributeTypeReferencedEntity(DTDEntity newAttributeTypeReferencedEntity, NotificationChain msgs) {
-		DTDEntity oldAttributeTypeReferencedEntity = attributeTypeReferencedEntity;
-		attributeTypeReferencedEntity = newAttributeTypeReferencedEntity;
-		if (eNotificationRequired()) {
-			if (msgs == null)
-				msgs = new NotificationChainImpl(4);
-			msgs.add(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY, oldAttributeTypeReferencedEntity, newAttributeTypeReferencedEntity));
-		}
-		return msgs;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setAttributeTypeReferencedEntity(DTDEntity newAttributeTypeReferencedEntity) {
-		if (newAttributeTypeReferencedEntity != attributeTypeReferencedEntity) {
-			NotificationChain msgs = null;
-			if (attributeTypeReferencedEntity != null)
-				msgs = ((InternalEObject) attributeTypeReferencedEntity).eInverseRemove(this, DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE, DTDEntity.class, msgs);
-			if (newAttributeTypeReferencedEntity != null)
-				msgs = ((InternalEObject) newAttributeTypeReferencedEntity).eInverseAdd(this, DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE, DTDEntity.class, msgs);
-			msgs = basicSetAttributeTypeReferencedEntity(newAttributeTypeReferencedEntity, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY, newAttributeTypeReferencedEntity, newAttributeTypeReferencedEntity));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDElement getDTDElement() {
-		if (eContainerFeatureID != DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT)
-			return null;
-		return (DTDElement) eContainer;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setDTDElement(DTDElement newDTDElement) {
-		if (newDTDElement != eContainer || (eContainerFeatureID != DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT && newDTDElement != null)) {
-			if (EcoreUtil.isAncestor(this, newDTDElement))
-				throw new IllegalArgumentException("Recursive containment not allowed for " + toString() + ".");
-			NotificationChain msgs = null;
-			if (eContainer != null)
-				msgs = eBasicRemoveFromContainer(msgs);
-			if (newDTDElement != null)
-				msgs = ((InternalEObject) newDTDElement).eInverseAdd(this, DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE, DTDElement.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject) newDTDElement, DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT, newDTDElement, newDTDElement));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ATTRIBUTE__EANNOTATIONS :
-					return ((InternalEList) getEAnnotations()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY :
-					if (attributeNameReferencedEntity != null)
-						msgs = ((InternalEObject) attributeNameReferencedEntity).eInverseRemove(this, DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE, DTDEntity.class, msgs);
-					return basicSetAttributeNameReferencedEntity((DTDEntity) otherEnd, msgs);
-				case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY :
-					if (attributeTypeReferencedEntity != null)
-						msgs = ((InternalEObject) attributeTypeReferencedEntity).eInverseRemove(this, DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE, DTDEntity.class, msgs);
-					return basicSetAttributeTypeReferencedEntity((DTDEntity) otherEnd, msgs);
-				case DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ATTRIBUTE__EANNOTATIONS :
-					return ((InternalEList) getEAnnotations()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY :
-					return basicSetAttributeNameReferencedEntity(null, msgs);
-				case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY :
-					return basicSetAttributeTypeReferencedEntity(null, msgs);
-				case DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT, 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 DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ATTRIBUTE__EANNOTATIONS :
-				return getEAnnotations();
-			case DTDPackage.DTD_ATTRIBUTE__NAME :
-				return getName();
-			case DTDPackage.DTD_ATTRIBUTE__ETYPE :
-				if (resolve)
-					return getEType();
-				return basicGetEType();
-			case DTDPackage.DTD_ATTRIBUTE__CHANGEABLE :
-				return isChangeable() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ATTRIBUTE__VOLATILE :
-				return isVolatile() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ATTRIBUTE__TRANSIENT :
-				return isTransient() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ATTRIBUTE__UNIQUE :
-				return isUnique() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_LITERAL :
-				return getDefaultValueLiteral();
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE :
-				return getDefaultValue();
-			case DTDPackage.DTD_ATTRIBUTE__LOWER_BOUND :
-				return new Integer(getLowerBound());
-			case DTDPackage.DTD_ATTRIBUTE__UPPER_BOUND :
-				return new Integer(getUpperBound());
-			case DTDPackage.DTD_ATTRIBUTE__MANY :
-				return isMany() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ATTRIBUTE__REQUIRED :
-				return isRequired() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ATTRIBUTE__ECONTAINING_CLASS :
-				return getEContainingClass();
-			case DTDPackage.DTD_ATTRIBUTE__UNSETTABLE :
-				return isUnsettable() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ATTRIBUTE__ID :
-				return isID() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ATTRIBUTE__EATTRIBUTE_TYPE :
-				if (resolve)
-					return getEAttributeType();
-				return basicGetEAttributeType();
-			case DTDPackage.DTD_ATTRIBUTE__COMMENT :
-				return getComment();
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_KIND :
-				return getDefaultKind();
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_STRING :
-				return getDefaultValueString();
-			case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY :
-				if (resolve)
-					return getAttributeNameReferencedEntity();
-				return basicGetAttributeNameReferencedEntity();
-			case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY :
-				if (resolve)
-					return getAttributeTypeReferencedEntity();
-				return basicGetAttributeTypeReferencedEntity();
-			case DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT :
-				return getDTDElement();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ATTRIBUTE__EANNOTATIONS :
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__NAME :
-				setName((String) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__ETYPE :
-				setEType((EClassifier) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__CHANGEABLE :
-				setChangeable(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__VOLATILE :
-				setVolatile(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__TRANSIENT :
-				setTransient(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__UNIQUE :
-				setUnique(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_LITERAL :
-				setDefaultValueLiteral((String) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__LOWER_BOUND :
-				setLowerBound(((Integer) newValue).intValue());
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__UPPER_BOUND :
-				setUpperBound(((Integer) newValue).intValue());
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__UNSETTABLE :
-				setUnsettable(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__ID :
-				setID(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__COMMENT :
-				setComment((String) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_KIND :
-				setDefaultKind((DTDDefaultKind) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_STRING :
-				setDefaultValueString((String) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY :
-				setAttributeNameReferencedEntity((DTDEntity) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY :
-				setAttributeTypeReferencedEntity((DTDEntity) newValue);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT :
-				setDTDElement((DTDElement) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ATTRIBUTE__EANNOTATIONS :
-				getEAnnotations().clear();
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__NAME :
-				setName(NAME_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__ETYPE :
-				setEType((EClassifier) null);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__CHANGEABLE :
-				setChangeable(CHANGEABLE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__VOLATILE :
-				setVolatile(VOLATILE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__TRANSIENT :
-				setTransient(TRANSIENT_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__UNIQUE :
-				setUnique(UNIQUE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_LITERAL :
-				setDefaultValueLiteral(DEFAULT_VALUE_LITERAL_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__LOWER_BOUND :
-				setLowerBound(LOWER_BOUND_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__UPPER_BOUND :
-				setUpperBound(UPPER_BOUND_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__UNSETTABLE :
-				setUnsettable(UNSETTABLE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__ID :
-				setID(ID_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__COMMENT :
-				setComment(COMMENT_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_KIND :
-				setDefaultKind(DEFAULT_KIND_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_STRING :
-				setDefaultValueString(DEFAULT_VALUE_STRING_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY :
-				setAttributeNameReferencedEntity((DTDEntity) null);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY :
-				setAttributeTypeReferencedEntity((DTDEntity) null);
-				return;
-			case DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT :
-				setDTDElement((DTDElement) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ATTRIBUTE__EANNOTATIONS :
-				return eAnnotations != null && !getEAnnotations().isEmpty();
-			case DTDPackage.DTD_ATTRIBUTE__NAME :
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case DTDPackage.DTD_ATTRIBUTE__ETYPE :
-				return eType != null;
-			case DTDPackage.DTD_ATTRIBUTE__CHANGEABLE :
-				return changeable != CHANGEABLE_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__VOLATILE :
-				return volatile_ != VOLATILE_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__TRANSIENT :
-				return transient_ != TRANSIENT_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__UNIQUE :
-				return unique != UNIQUE_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_LITERAL :
-				return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE :
-				return getDefaultValue() != null;
-			case DTDPackage.DTD_ATTRIBUTE__LOWER_BOUND :
-				return lowerBound != LOWER_BOUND_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__UPPER_BOUND :
-				return upperBound != UPPER_BOUND_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__MANY :
-				return isMany() != false;
-			case DTDPackage.DTD_ATTRIBUTE__REQUIRED :
-				return isRequired() != false;
-			case DTDPackage.DTD_ATTRIBUTE__ECONTAINING_CLASS :
-				return getEContainingClass() != null;
-			case DTDPackage.DTD_ATTRIBUTE__UNSETTABLE :
-				return unsettable != UNSETTABLE_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__ID :
-				return iD != ID_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__EATTRIBUTE_TYPE :
-				return basicGetEAttributeType() != null;
-			case DTDPackage.DTD_ATTRIBUTE__COMMENT :
-				return COMMENT_EDEFAULT == null ? comment != null : !COMMENT_EDEFAULT.equals(comment);
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_KIND :
-				return defaultKind != DEFAULT_KIND_EDEFAULT;
-			case DTDPackage.DTD_ATTRIBUTE__DEFAULT_VALUE_STRING :
-				return DEFAULT_VALUE_STRING_EDEFAULT == null ? defaultValueString != null : !DEFAULT_VALUE_STRING_EDEFAULT.equals(defaultValueString);
-			case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY :
-				return attributeNameReferencedEntity != null;
-			case DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY :
-				return attributeTypeReferencedEntity != null;
-			case DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT :
-				return getDTDElement() != null;
-		}
-		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(" (comment: ");
-		result.append(comment);
-		result.append(", defaultKind: ");
-		result.append(defaultKind);
-		result.append(", defaultValueString: ");
-		result.append(defaultValueString);
-		result.append(')');
-		return result.toString();
-	}
-
-} // DTDAttributeImpl
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDBasicTypeImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDBasicTypeImpl.java
deleted file mode 100644
index d9c7035..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDBasicTypeImpl.java
+++ /dev/null
@@ -1,427 +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.dtd.core.internal.emf.impl;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.EClassImpl;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.dtd.core.internal.DTDCorePlugin;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDType;
-
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Basic Type</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDBasicTypeImpl#getKind <em>Kind</em>}</li>
- * </ul>
- * </p>
- * 
- * @generated
- */
-public class DTDBasicTypeImpl extends EClassImpl implements DTDBasicType, EClass {
-
-	public final static String basicTypeStrings[] = {DTDType.NONE, DTDType.CDATA, DTDType.ID, DTDType.IDREF, DTDType.IDREFS, DTDType.ENTITY, DTDType.ENTITIES, DTDType.NMTOKEN, DTDType.NMTOKENS};
-
-	public final static String basicTypeDescriptions[] = {DTDCorePlugin.getDTDString("_UI_NONE_DESC"), DTDCorePlugin.getDTDString("_UI_CHARACTER_DATA_DESC"), DTDCorePlugin.getDTDString("_UI_IDENTIFIER_DESC"), DTDCorePlugin.getDTDString("_UI_ID_REFERENCE_DESC"), DTDCorePlugin.getDTDString("_UI_ID_REFERENCES_DESC"), DTDCorePlugin.getDTDString("_UI_ENTITY_NAME_DESC"), DTDCorePlugin.getDTDString("_UI_ENTITY_NAMES_DESC"), DTDCorePlugin.getDTDString("_UI_NAME_TOKEN_DESC"), DTDCorePlugin.getDTDString("_UI_NAME_TOKENS_DESC")};
-
-	public final static int basicTypeKinds[] = {DTDBasicTypeKind.NONE, DTDBasicTypeKind.CDATA, DTDBasicTypeKind.ID, DTDBasicTypeKind.IDREF, DTDBasicTypeKind.IDREFS, DTDBasicTypeKind.ENTITY, DTDBasicTypeKind.ENTITIES, DTDBasicTypeKind.NMTOKEN, DTDBasicTypeKind.NMTOKENS};
-
-	public String unparse() {
-		return getTypeString();
-	}
-
-	public String getTypeString() {
-		int kind = getKind().getValue();
-		if (kind >= 0 && kind < basicTypeStrings.length) {
-			return basicTypeStrings[kind];
-		} // end of if ()
-
-		return null;
-	}
-
-
-	public String getTypeDescription() {
-		return getTypeDescription(getKind().getValue());
-	}
-
-
-	public static String getTypeDescription(int typeKind) {
-		if (typeKind >= 0 && typeKind < basicTypeDescriptions.length) {
-			return basicTypeDescriptions[typeKind];
-		}
-		return null;
-	}
-
-	public String getPathname() {
-		// TBD
-		return "";
-	}
-
-	public DTDObject findObject(String relativePath) {
-		return null;
-	}
-
-
-
-	/**
-	 * The default value of the '{@link #getKind() <em>Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getKind()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final DTDBasicTypeKind KIND_EDEFAULT = DTDBasicTypeKind.NONE_LITERAL;
-
-	/**
-	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getKind()
-	 * @generated
-	 * @ordered
-	 */
-	protected DTDBasicTypeKind kind = KIND_EDEFAULT;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected DTDBasicTypeImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDBasicType();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDBasicTypeKind getKind() {
-		return kind;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setKind(DTDBasicTypeKind newKind) {
-		DTDBasicTypeKind oldKind = kind;
-		kind = newKind == null ? KIND_EDEFAULT : newKind;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_BASIC_TYPE__KIND, oldKind, kind));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_BASIC_TYPE__EANNOTATIONS :
-					return ((InternalEList) getEAnnotations()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_BASIC_TYPE__EPACKAGE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_BASIC_TYPE__EPACKAGE, msgs);
-				case DTDPackage.DTD_BASIC_TYPE__EOPERATIONS :
-					return ((InternalEList) getEOperations()).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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_BASIC_TYPE__EANNOTATIONS :
-					return ((InternalEList) getEAnnotations()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_BASIC_TYPE__EPACKAGE :
-					return eBasicSetContainer(null, DTDPackage.DTD_BASIC_TYPE__EPACKAGE, msgs);
-				case DTDPackage.DTD_BASIC_TYPE__EOPERATIONS :
-					return ((InternalEList) getEOperations()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_BASIC_TYPE__EREFERENCES :
-					return ((InternalEList) getEReferences()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_BASIC_TYPE__EATTRIBUTES :
-					return ((InternalEList) getEAttributes()).basicRemove(otherEnd, 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 DTDPackage.DTD_BASIC_TYPE__EPACKAGE :
-					return eContainer.eInverseRemove(this, EcorePackage.EPACKAGE__ECLASSIFIERS, EPackage.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_BASIC_TYPE__EANNOTATIONS :
-				return getEAnnotations();
-			case DTDPackage.DTD_BASIC_TYPE__NAME :
-				return getName();
-			case DTDPackage.DTD_BASIC_TYPE__INSTANCE_CLASS_NAME :
-				return getInstanceClassName();
-			case DTDPackage.DTD_BASIC_TYPE__INSTANCE_CLASS :
-				return getInstanceClass();
-			case DTDPackage.DTD_BASIC_TYPE__DEFAULT_VALUE :
-				return getDefaultValue();
-			case DTDPackage.DTD_BASIC_TYPE__EPACKAGE :
-				return getEPackage();
-			case DTDPackage.DTD_BASIC_TYPE__ABSTRACT :
-				return isAbstract() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_BASIC_TYPE__INTERFACE :
-				return isInterface() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_BASIC_TYPE__ESUPER_TYPES :
-				return getESuperTypes();
-			case DTDPackage.DTD_BASIC_TYPE__EOPERATIONS :
-				return getEOperations();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_ATTRIBUTES :
-				return getEAllAttributes();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_REFERENCES :
-				return getEAllReferences();
-			case DTDPackage.DTD_BASIC_TYPE__EREFERENCES :
-				return getEReferences();
-			case DTDPackage.DTD_BASIC_TYPE__EATTRIBUTES :
-				return getEAttributes();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_CONTAINMENTS :
-				return getEAllContainments();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_OPERATIONS :
-				return getEAllOperations();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_STRUCTURAL_FEATURES :
-				return getEAllStructuralFeatures();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_SUPER_TYPES :
-				return getEAllSuperTypes();
-			case DTDPackage.DTD_BASIC_TYPE__EID_ATTRIBUTE :
-				return getEIDAttribute();
-			case DTDPackage.DTD_BASIC_TYPE__KIND :
-				return getKind();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_BASIC_TYPE__EANNOTATIONS :
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__NAME :
-				setName((String) newValue);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__INSTANCE_CLASS_NAME :
-				setInstanceClassName((String) newValue);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__INSTANCE_CLASS :
-				setInstanceClass((Class) newValue);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__ABSTRACT :
-				setAbstract(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__INTERFACE :
-				setInterface(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__ESUPER_TYPES :
-				getESuperTypes().clear();
-				getESuperTypes().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__EOPERATIONS :
-				getEOperations().clear();
-				getEOperations().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__EREFERENCES :
-				getEReferences().clear();
-				getEReferences().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__EATTRIBUTES :
-				getEAttributes().clear();
-				getEAttributes().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__KIND :
-				setKind((DTDBasicTypeKind) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_BASIC_TYPE__EANNOTATIONS :
-				getEAnnotations().clear();
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__NAME :
-				setName(NAME_EDEFAULT);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__INSTANCE_CLASS_NAME :
-				setInstanceClassName(INSTANCE_CLASS_NAME_EDEFAULT);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__INSTANCE_CLASS :
-				setInstanceClass(INSTANCE_CLASS_EDEFAULT);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__ABSTRACT :
-				setAbstract(ABSTRACT_EDEFAULT);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__INTERFACE :
-				setInterface(INTERFACE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__ESUPER_TYPES :
-				getESuperTypes().clear();
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__EOPERATIONS :
-				getEOperations().clear();
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__EREFERENCES :
-				getEReferences().clear();
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__EATTRIBUTES :
-				getEAttributes().clear();
-				return;
-			case DTDPackage.DTD_BASIC_TYPE__KIND :
-				setKind(KIND_EDEFAULT);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_BASIC_TYPE__EANNOTATIONS :
-				return eAnnotations != null && !getEAnnotations().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__NAME :
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case DTDPackage.DTD_BASIC_TYPE__INSTANCE_CLASS_NAME :
-				return INSTANCE_CLASS_NAME_EDEFAULT == null ? instanceClassName != null : !INSTANCE_CLASS_NAME_EDEFAULT.equals(instanceClassName);
-			case DTDPackage.DTD_BASIC_TYPE__INSTANCE_CLASS :
-				return INSTANCE_CLASS_EDEFAULT == null ? instanceClass != null : !INSTANCE_CLASS_EDEFAULT.equals(instanceClass);
-			case DTDPackage.DTD_BASIC_TYPE__DEFAULT_VALUE :
-				return getDefaultValue() != null;
-			case DTDPackage.DTD_BASIC_TYPE__EPACKAGE :
-				return getEPackage() != null;
-			case DTDPackage.DTD_BASIC_TYPE__ABSTRACT :
-				return abstract_ != ABSTRACT_EDEFAULT;
-			case DTDPackage.DTD_BASIC_TYPE__INTERFACE :
-				return interface_ != INTERFACE_EDEFAULT;
-			case DTDPackage.DTD_BASIC_TYPE__ESUPER_TYPES :
-				return eSuperTypes != null && !getESuperTypes().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EOPERATIONS :
-				return eOperations != null && !getEOperations().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_ATTRIBUTES :
-				return !getEAllAttributes().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_REFERENCES :
-				return !getEAllReferences().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EREFERENCES :
-				return eReferences != null && !getEReferences().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EATTRIBUTES :
-				return eAttributes != null && !getEAttributes().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_CONTAINMENTS :
-				return !getEAllContainments().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_OPERATIONS :
-				return !getEAllOperations().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_STRUCTURAL_FEATURES :
-				return !getEAllStructuralFeatures().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EALL_SUPER_TYPES :
-				return !getEAllSuperTypes().isEmpty();
-			case DTDPackage.DTD_BASIC_TYPE__EID_ATTRIBUTE :
-				return getEIDAttribute() != null;
-			case DTDPackage.DTD_BASIC_TYPE__KIND :
-				return kind != KIND_EDEFAULT;
-		}
-		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(" (kind: ");
-		result.append(kind);
-		result.append(')');
-		return result.toString();
-	}
-
-} // DTDBasicTypeImpl
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDContentImpl.java
deleted file mode 100644
index e0974b7..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDContentImpl.java
+++ /dev/null
@@ -1,189 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENamedElementImpl;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-
-public class DTDContentImpl extends ENamedElementImpl implements DTDContent, EObject {
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected DTDContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDContent();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDFile getDTDFile() {
-		if (eContainerFeatureID != DTDPackage.DTD_CONTENT__DTD_FILE)
-			return null;
-		return (DTDFile) eContainer;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setDTDFile(DTDFile newDTDFile) {
-		if (newDTDFile != eContainer || (eContainerFeatureID != DTDPackage.DTD_CONTENT__DTD_FILE && newDTDFile != null)) {
-			if (EcoreUtil.isAncestor(this, newDTDFile))
-				throw new IllegalArgumentException("Recursive containment not allowed for " + toString() + ".");
-			NotificationChain msgs = null;
-			if (eContainer != null)
-				msgs = eBasicRemoveFromContainer(msgs);
-			if (newDTDFile != null)
-				msgs = ((InternalEObject) newDTDFile).eInverseAdd(this, DTDPackage.DTD_FILE__DTD_CONTENT, DTDFile.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject) newDTDFile, DTDPackage.DTD_CONTENT__DTD_FILE, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_CONTENT__DTD_FILE, newDTDFile, newDTDFile));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_CONTENT__DTD_FILE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_CONTENT__DTD_FILE, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_CONTENT__DTD_FILE :
-					return eBasicSetContainer(null, DTDPackage.DTD_CONTENT__DTD_FILE, 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 DTDPackage.DTD_CONTENT__DTD_FILE :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_FILE__DTD_CONTENT, DTDFile.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_CONTENT__DTD_FILE :
-				return getDTDFile();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_CONTENT__DTD_FILE :
-				setDTDFile((DTDFile) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_CONTENT__DTD_FILE :
-				setDTDFile((DTDFile) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_CONTENT__DTD_FILE :
-				return getDTDFile() != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-} // DTDContentImpl
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementContentImpl.java
deleted file mode 100644
index 2ff1e0e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementContentImpl.java
+++ /dev/null
@@ -1,377 +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.dtd.core.internal.emf.impl;
-
-
-import java.util.Iterator;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.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.EcoreUtil;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDLexicalInfo;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPathnameUtil;
-
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Element Content</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDElementContentImpl#getGroup <em>Group</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDElementContentImpl#getElement <em>Element</em>}</li>
- * </ul>
- * </p>
- * 
- * @generated
- */
-public abstract class DTDElementContentImpl extends EObjectImpl implements DTDElementContent {
-
-	public DTDElementContentImpl() {
-		super();
-	}
-
-	public DTDElement getDTDElement() {
-		DTDElementContent c = getDTDGroupContent();
-		if (c != null)
-			return c.getElement();
-		else
-			return getElement();
-	}
-
-	// get the most outer DTDGroupContent
-	public DTDGroupContent getDTDGroupContent() {
-		DTDElementContent c = this;
-		while (c.getGroup() != null) {
-			c = c.getGroup();
-		}
-		return ((c instanceof DTDGroupContent) ? (DTDGroupContent) c : null);
-	}
-
-	public String getPathname() {
-		int cnt = 0;
-		DTDObject parent = getGroup();
-		if (parent == null) {
-			parent = getElement();
-		}
-		else {
-			DTDGroupContent group = (DTDGroupContent) parent;
-			Iterator i = group.getContent().iterator();
-			while (i.hasNext()) {
-				DTDElementContent content = (DTDElementContent) i.next();
-				if (content == this) {
-					break;
-				}
-				if ((content instanceof DTDElementReferenceContent) || (content instanceof DTDEntityReferenceContent)) {
-					continue;
-				}
-				cnt++;
-			}
-		}
-		return DTDPathnameUtil.makePath(((parent == null) ? "NULL_PARENT" : parent.getPathname()), "Content", null, cnt);
-	}
-
-	public DTDObject findObject(String relativePath) {
-		return null;
-	}
-
-	public boolean isFirstElementContent() {
-		DTDElement element = getElement();
-
-		if (element != null) {
-			// This means this is the only element content in the element
-			return true;
-		} // end of if ()
-
-		DTDGroupContent group = getGroup();
-		int pos = group.getContentPosition(this);
-		if (pos == 0) {
-			// now recurse and ensure this group is the first group
-			return group.isFirstElementContent();
-		} // end of if ()
-		else {
-			return false;
-		}
-	}
-
-	public String getContentDetail() {
-		// most times, content name is fine. However for groups,
-		// we didn't want a long name to show up in the tree,
-		// so we created a get contentdetail to get to the long
-		// name (getContentName will get the short one.
-		return getContentName();
-	}
-
-	// ugly hack for now since we don't have multiple inheritance.
-	// Would rather have all this stuff in a base class but these
-	// classes are inheriting from sometimes different mof classes
-	DTDLexicalInfo lexInfo = new DTDLexicalInfo();
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset() {
-		return lexInfo.getStartOffset();
-	}
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v) {
-		lexInfo.setStartOffset(v);
-	}
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset() {
-		return lexInfo.getEndOffset();
-	}
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v) {
-		lexInfo.setEndOffset(v);
-	}
-
-	/*
-	 * @see DTDElementContent#getContentName()
-	 */
-	public String getContentName() {
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDElementContent();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDGroupContent getGroup() {
-		if (eContainerFeatureID != DTDPackage.DTD_ELEMENT_CONTENT__GROUP)
-			return null;
-		return (DTDGroupContent) eContainer;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setGroup(DTDGroupContent newGroup) {
-		if (newGroup != eContainer || (eContainerFeatureID != DTDPackage.DTD_ELEMENT_CONTENT__GROUP && newGroup != null)) {
-			if (EcoreUtil.isAncestor(this, newGroup))
-				throw new IllegalArgumentException("Recursive containment not allowed for " + toString() + ".");
-			NotificationChain msgs = null;
-			if (eContainer != null)
-				msgs = eBasicRemoveFromContainer(msgs);
-			if (newGroup != null)
-				msgs = ((InternalEObject) newGroup).eInverseAdd(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject) newGroup, DTDPackage.DTD_ELEMENT_CONTENT__GROUP, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ELEMENT_CONTENT__GROUP, newGroup, newGroup));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDElement getElement() {
-		if (eContainerFeatureID != DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT)
-			return null;
-		return (DTDElement) eContainer;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setElement(DTDElement newElement) {
-		if (newElement != eContainer || (eContainerFeatureID != DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT && newElement != null)) {
-			if (EcoreUtil.isAncestor(this, newElement))
-				throw new IllegalArgumentException("Recursive containment not allowed for " + toString() + ".");
-			NotificationChain msgs = null;
-			if (eContainer != null)
-				msgs = eBasicRemoveFromContainer(msgs);
-			if (newElement != null)
-				msgs = ((InternalEObject) newElement).eInverseAdd(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject) newElement, DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT, newElement, newElement));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ELEMENT_CONTENT__GROUP :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ELEMENT_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ELEMENT_CONTENT__GROUP :
-					return eBasicSetContainer(null, DTDPackage.DTD_ELEMENT_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT, 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 DTDPackage.DTD_ELEMENT_CONTENT__GROUP :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-				case DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT_CONTENT__GROUP :
-				return getGroup();
-			case DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT :
-				return getElement();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT_CONTENT__GROUP :
-				setGroup((DTDGroupContent) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT :
-				setElement((DTDElement) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT_CONTENT__GROUP :
-				setGroup((DTDGroupContent) null);
-				return;
-			case DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT :
-				setElement((DTDElement) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT_CONTENT__GROUP :
-				return getGroup() != null;
-			case DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT :
-				return getElement() != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-} // DTDElementContentImpl
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementImpl.java
deleted file mode 100644
index ae2d93a..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementImpl.java
+++ /dev/null
@@ -1,656 +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.dtd.core.internal.emf.impl;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.notify.impl.NotificationChainImpl;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.EClassImpl;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDLexicalInfo;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPathnameUtil;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDVisitor;
-
-
-/**
- * @generated
- */
-public class DTDElementImpl extends EClassImpl implements DTDElement {
-	/**
-	 * The default value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String COMMENT_EDEFAULT = null;
-
-	public DTDElementImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDElement();
-	}
-
-	public void addDTDAttribute(DTDAttribute attribute) {
-		getDTDAttribute().add(attribute);
-	}
-
-	public String getPathname() {
-		return DTDPathnameUtil.makePath(null, "Elem", getName(), -1);
-	}
-
-	public DTDObject findObject(String relativePath) {
-		Object[] result = DTDPathnameUtil.parsePathComponent(relativePath);
-
-		String type = (String) result[0];
-
-		if (type == null)
-			return null;
-
-		String name = (String) result[1];
-
-		DTDObject obj = null;
-		if (type.equals("Attr")) {
-			// TODO: fix port
-			// obj = findAttribute(name);
-		}
-		else if ((type.equals("Content")) || (type.equals("ElemRef")) || (type.equals("EntRef"))) {
-			obj = getContent();
-		}
-		else {
-			return null;
-		}
-
-		String restPath = (String) result[3];
-
-		if ((restPath == null) || (obj == null)) {
-			return obj;
-		}
-		else {
-			return obj.findObject(restPath);
-		}
-	}
-
-	// returns all references in the same DTDFile that reference this element
-	public Collection getReferences() {
-		DTDFile file = getDTDFile();
-		final Collection result = new ArrayList();
-
-		DTDVisitor visitRefs = new DTDVisitor() {
-			public void visitDTDElementReferenceContent(DTDElementReferenceContent elementReferenceContent) {
-				if (elementReferenceContent.getReferencedElement() == DTDElementImpl.this) {
-					result.add(elementReferenceContent);
-				} // end of if ()
-			}
-		};
-		visitRefs.visitDTDFile(file);
-		return result;
-	}
-
-	public String getAttributeDetail() {
-		String attributeString = "";
-		Collection attributes = getDTDAttribute();
-		if (attributes != null) {
-			boolean seenOne = false;
-			for (java.util.Iterator i = attributes.iterator(); i.hasNext();) {
-				if (seenOne) {
-					attributeString = attributeString + ", ";
-				}
-				else {
-					seenOne = true;
-				} // end of else
-
-				attributeString = attributeString + ((DTDAttribute) i.next()).getName();
-			}
-		} // end of if ()
-		return attributeString;
-	}
-
-
-	// ugly hack for now since we don't have multiple inheritance.
-	// Would rather have all this stuff in a base class but these
-	// classes are inheriting from sometimes different mof classes
-	DTDLexicalInfo lexInfo = new DTDLexicalInfo();
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected String comment = COMMENT_EDEFAULT;
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected DTDElementContent content = null;
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected EList dtdAttribute = null;
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset() {
-		return lexInfo.getStartOffset();
-	}
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v) {
-		lexInfo.setStartOffset(v);
-	}
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset() {
-		return lexInfo.getEndOffset();
-	}
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v) {
-		lexInfo.setEndOffset(v);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public String getComment() {
-		return comment;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setComment(String newComment) {
-		String oldComment = comment;
-		comment = newComment;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ELEMENT__COMMENT, oldComment, comment));
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDElementContent getContent() {
-		return content;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public NotificationChain basicSetContent(DTDElementContent newContent, NotificationChain msgs) {
-		DTDElementContent oldContent = content;
-		content = newContent;
-		if (eNotificationRequired()) {
-			if (msgs == null)
-				msgs = new NotificationChainImpl(4);
-			msgs.add(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ELEMENT__CONTENT, oldContent, newContent));
-		}
-		return msgs;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setContent(DTDElementContent newContent) {
-		if (newContent != content) {
-			NotificationChain msgs = null;
-			if (content != null)
-				msgs = ((InternalEObject) content).eInverseRemove(this, DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT, DTDElementContent.class, msgs);
-			if (newContent != null)
-				msgs = ((InternalEObject) newContent).eInverseAdd(this, DTDPackage.DTD_ELEMENT_CONTENT__ELEMENT, DTDElementContent.class, msgs);
-			msgs = basicSetContent(newContent, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ELEMENT__CONTENT, newContent, newContent));
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public EList getDTDAttribute() {
-		if (dtdAttribute == null) {
-			dtdAttribute = new EObjectContainmentWithInverseEList(DTDAttribute.class, this, DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE, DTDPackage.DTD_ATTRIBUTE__DTD_ELEMENT);
-		}
-		return dtdAttribute;
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ELEMENT__EANNOTATIONS :
-					return ((InternalEList) getEAnnotations()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_ELEMENT__EPACKAGE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ELEMENT__EPACKAGE, msgs);
-				case DTDPackage.DTD_ELEMENT__EOPERATIONS :
-					return ((InternalEList) getEOperations()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_ELEMENT__DTD_FILE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ELEMENT__DTD_FILE, msgs);
-				case DTDPackage.DTD_ELEMENT__CONTENT :
-					if (content != null)
-						msgs = ((InternalEObject) content).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DTDPackage.DTD_ELEMENT__CONTENT, null, msgs);
-					return basicSetContent((DTDElementContent) otherEnd, msgs);
-				case DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE :
-					return ((InternalEList) getDTDAttribute()).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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ELEMENT__EANNOTATIONS :
-					return ((InternalEList) getEAnnotations()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ELEMENT__EPACKAGE :
-					return eBasicSetContainer(null, DTDPackage.DTD_ELEMENT__EPACKAGE, msgs);
-				case DTDPackage.DTD_ELEMENT__EOPERATIONS :
-					return ((InternalEList) getEOperations()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ELEMENT__EREFERENCES :
-					return ((InternalEList) getEReferences()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ELEMENT__EATTRIBUTES :
-					return ((InternalEList) getEAttributes()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ELEMENT__DTD_FILE :
-					return eBasicSetContainer(null, DTDPackage.DTD_ELEMENT__DTD_FILE, msgs);
-				case DTDPackage.DTD_ELEMENT__CONTENT :
-					return basicSetContent(null, msgs);
-				case DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE :
-					return ((InternalEList) getDTDAttribute()).basicRemove(otherEnd, 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 DTDPackage.DTD_ELEMENT__EPACKAGE :
-					return eContainer.eInverseRemove(this, EcorePackage.EPACKAGE__ECLASSIFIERS, EPackage.class, msgs);
-				case DTDPackage.DTD_ELEMENT__DTD_FILE :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_FILE__DTD_CONTENT, DTDFile.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT__EANNOTATIONS :
-				return getEAnnotations();
-			case DTDPackage.DTD_ELEMENT__NAME :
-				return getName();
-			case DTDPackage.DTD_ELEMENT__INSTANCE_CLASS_NAME :
-				return getInstanceClassName();
-			case DTDPackage.DTD_ELEMENT__INSTANCE_CLASS :
-				return getInstanceClass();
-			case DTDPackage.DTD_ELEMENT__DEFAULT_VALUE :
-				return getDefaultValue();
-			case DTDPackage.DTD_ELEMENT__EPACKAGE :
-				return getEPackage();
-			case DTDPackage.DTD_ELEMENT__ABSTRACT :
-				return isAbstract() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ELEMENT__INTERFACE :
-				return isInterface() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ELEMENT__ESUPER_TYPES :
-				return getESuperTypes();
-			case DTDPackage.DTD_ELEMENT__EOPERATIONS :
-				return getEOperations();
-			case DTDPackage.DTD_ELEMENT__EALL_ATTRIBUTES :
-				return getEAllAttributes();
-			case DTDPackage.DTD_ELEMENT__EALL_REFERENCES :
-				return getEAllReferences();
-			case DTDPackage.DTD_ELEMENT__EREFERENCES :
-				return getEReferences();
-			case DTDPackage.DTD_ELEMENT__EATTRIBUTES :
-				return getEAttributes();
-			case DTDPackage.DTD_ELEMENT__EALL_CONTAINMENTS :
-				return getEAllContainments();
-			case DTDPackage.DTD_ELEMENT__EALL_OPERATIONS :
-				return getEAllOperations();
-			case DTDPackage.DTD_ELEMENT__EALL_STRUCTURAL_FEATURES :
-				return getEAllStructuralFeatures();
-			case DTDPackage.DTD_ELEMENT__EALL_SUPER_TYPES :
-				return getEAllSuperTypes();
-			case DTDPackage.DTD_ELEMENT__EID_ATTRIBUTE :
-				return getEIDAttribute();
-			case DTDPackage.DTD_ELEMENT__DTD_FILE :
-				return getDTDFile();
-			case DTDPackage.DTD_ELEMENT__COMMENT :
-				return getComment();
-			case DTDPackage.DTD_ELEMENT__CONTENT :
-				return getContent();
-			case DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE :
-				return getDTDAttribute();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT__EANNOTATIONS :
-				return eAnnotations != null && !getEAnnotations().isEmpty();
-			case DTDPackage.DTD_ELEMENT__NAME :
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case DTDPackage.DTD_ELEMENT__INSTANCE_CLASS_NAME :
-				return INSTANCE_CLASS_NAME_EDEFAULT == null ? instanceClassName != null : !INSTANCE_CLASS_NAME_EDEFAULT.equals(instanceClassName);
-			case DTDPackage.DTD_ELEMENT__INSTANCE_CLASS :
-				return INSTANCE_CLASS_EDEFAULT == null ? instanceClass != null : !INSTANCE_CLASS_EDEFAULT.equals(instanceClass);
-			case DTDPackage.DTD_ELEMENT__DEFAULT_VALUE :
-				return getDefaultValue() != null;
-			case DTDPackage.DTD_ELEMENT__EPACKAGE :
-				return getEPackage() != null;
-			case DTDPackage.DTD_ELEMENT__ABSTRACT :
-				return abstract_ != ABSTRACT_EDEFAULT;
-			case DTDPackage.DTD_ELEMENT__INTERFACE :
-				return interface_ != INTERFACE_EDEFAULT;
-			case DTDPackage.DTD_ELEMENT__ESUPER_TYPES :
-				return eSuperTypes != null && !getESuperTypes().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EOPERATIONS :
-				return eOperations != null && !getEOperations().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EALL_ATTRIBUTES :
-				return !getEAllAttributes().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EALL_REFERENCES :
-				return !getEAllReferences().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EREFERENCES :
-				return eReferences != null && !getEReferences().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EATTRIBUTES :
-				return eAttributes != null && !getEAttributes().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EALL_CONTAINMENTS :
-				return !getEAllContainments().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EALL_OPERATIONS :
-				return !getEAllOperations().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EALL_STRUCTURAL_FEATURES :
-				return !getEAllStructuralFeatures().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EALL_SUPER_TYPES :
-				return !getEAllSuperTypes().isEmpty();
-			case DTDPackage.DTD_ELEMENT__EID_ATTRIBUTE :
-				return getEIDAttribute() != null;
-			case DTDPackage.DTD_ELEMENT__DTD_FILE :
-				return getDTDFile() != null;
-			case DTDPackage.DTD_ELEMENT__COMMENT :
-				return COMMENT_EDEFAULT == null ? comment != null : !COMMENT_EDEFAULT.equals(comment);
-			case DTDPackage.DTD_ELEMENT__CONTENT :
-				return content != null;
-			case DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE :
-				return dtdAttribute != null && !getDTDAttribute().isEmpty();
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public int eBaseStructuralFeatureID(int derivedFeatureID, Class baseClass) {
-		if (baseClass == DTDContent.class) {
-			switch (derivedFeatureID) {
-				case DTDPackage.DTD_ELEMENT__DTD_FILE :
-					return DTDPackage.DTD_CONTENT__DTD_FILE;
-				default :
-					return -1;
-			}
-		}
-		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public int eDerivedStructuralFeatureID(int baseFeatureID, Class baseClass) {
-		if (baseClass == DTDContent.class) {
-			switch (baseFeatureID) {
-				case DTDPackage.DTD_CONTENT__DTD_FILE :
-					return DTDPackage.DTD_ELEMENT__DTD_FILE;
-				default :
-					return -1;
-			}
-		}
-		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String toString() {
-		if (eIsProxy())
-			return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (comment: ");
-		result.append(comment);
-		result.append(')');
-		return result.toString();
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT__EANNOTATIONS :
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__NAME :
-				setName((String) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__INSTANCE_CLASS_NAME :
-				setInstanceClassName((String) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__INSTANCE_CLASS :
-				setInstanceClass((Class) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__ABSTRACT :
-				setAbstract(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ELEMENT__INTERFACE :
-				setInterface(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ELEMENT__ESUPER_TYPES :
-				getESuperTypes().clear();
-				getESuperTypes().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__EOPERATIONS :
-				getEOperations().clear();
-				getEOperations().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__EREFERENCES :
-				getEReferences().clear();
-				getEReferences().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__EATTRIBUTES :
-				getEAttributes().clear();
-				getEAttributes().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__DTD_FILE :
-				setDTDFile((DTDFile) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__COMMENT :
-				setComment((String) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__CONTENT :
-				setContent((DTDElementContent) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE :
-				getDTDAttribute().clear();
-				getDTDAttribute().addAll((Collection) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT__EANNOTATIONS :
-				getEAnnotations().clear();
-				return;
-			case DTDPackage.DTD_ELEMENT__NAME :
-				setName(NAME_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ELEMENT__INSTANCE_CLASS_NAME :
-				setInstanceClassName(INSTANCE_CLASS_NAME_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ELEMENT__INSTANCE_CLASS :
-				setInstanceClass(INSTANCE_CLASS_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ELEMENT__ABSTRACT :
-				setAbstract(ABSTRACT_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ELEMENT__INTERFACE :
-				setInterface(INTERFACE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ELEMENT__ESUPER_TYPES :
-				getESuperTypes().clear();
-				return;
-			case DTDPackage.DTD_ELEMENT__EOPERATIONS :
-				getEOperations().clear();
-				return;
-			case DTDPackage.DTD_ELEMENT__EREFERENCES :
-				getEReferences().clear();
-				return;
-			case DTDPackage.DTD_ELEMENT__EATTRIBUTES :
-				getEAttributes().clear();
-				return;
-			case DTDPackage.DTD_ELEMENT__DTD_FILE :
-				setDTDFile((DTDFile) null);
-				return;
-			case DTDPackage.DTD_ELEMENT__COMMENT :
-				setComment(COMMENT_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ELEMENT__CONTENT :
-				setContent((DTDElementContent) null);
-				return;
-			case DTDPackage.DTD_ELEMENT__DTD_ATTRIBUTE :
-				getDTDAttribute().clear();
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public DTDFile getDTDFile() {
-		if (eContainerFeatureID != DTDPackage.DTD_ELEMENT__DTD_FILE)
-			return null;
-		return (DTDFile) eContainer;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setDTDFile(DTDFile newDTDFile) {
-		if (newDTDFile != eContainer || (eContainerFeatureID != DTDPackage.DTD_ELEMENT__DTD_FILE && newDTDFile != null)) {
-			if (EcoreUtil.isAncestor(this, newDTDFile))
-				throw new IllegalArgumentException("Recursive containment not allowed for " + toString() + ".");
-			NotificationChain msgs = null;
-			if (eContainer != null)
-				msgs = eBasicRemoveFromContainer(msgs);
-			if (newDTDFile != null)
-				msgs = ((InternalEObject) newDTDFile).eInverseAdd(this, DTDPackage.DTD_FILE__DTD_CONTENT, DTDFile.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject) newDTDFile, DTDPackage.DTD_ELEMENT__DTD_FILE, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ELEMENT__DTD_FILE, newDTDFile, newDTDFile));
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementReferenceContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementReferenceContentImpl.java
deleted file mode 100644
index cde3467..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDElementReferenceContentImpl.java
+++ /dev/null
@@ -1,242 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-
-/**
- * @generated
- */
-public class DTDElementReferenceContentImpl extends DTDRepeatableContentImpl implements DTDElementReferenceContent {
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected DTDElement referencedElement = null;
-
-	public DTDElementReferenceContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDElementReferenceContent();
-	}
-
-	public String unparseRepeatableContent() {
-		return getContentName();
-	}
-
-	public String getContentName() {
-		DTDElement e = getReferencedElement();
-		if (e == null)
-			return "";
-		return e.getName();
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDElement getReferencedElement() {
-		if (referencedElement != null && referencedElement.eIsProxy()) {
-			DTDElement oldReferencedElement = referencedElement;
-			referencedElement = (DTDElement) EcoreUtil.resolve(referencedElement, this);
-			if (referencedElement != oldReferencedElement) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__REFERENCED_ELEMENT, oldReferencedElement, referencedElement));
-			}
-		}
-		return referencedElement;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDElement basicGetReferencedElement() {
-		return referencedElement;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setReferencedElement(DTDElement newReferencedElement) {
-		DTDElement oldReferencedElement = referencedElement;
-		referencedElement = newReferencedElement;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__REFERENCED_ELEMENT, oldReferencedElement, referencedElement));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP :
-					return eBasicSetContainer(null, DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT, 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 DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-				case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP :
-				return getGroup();
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT :
-				return getElement();
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__OCCURRENCE :
-				return getOccurrence();
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__REFERENCED_ELEMENT :
-				if (resolve)
-					return getReferencedElement();
-				return basicGetReferencedElement();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP :
-				return getGroup() != null;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT :
-				return getElement() != null;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__OCCURRENCE :
-				return occurrence != OCCURRENCE_EDEFAULT;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__REFERENCED_ELEMENT :
-				return referencedElement != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP :
-				setGroup((DTDGroupContent) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT :
-				setElement((DTDElement) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__OCCURRENCE :
-				setOccurrence((DTDOccurrenceType) newValue);
-				return;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__REFERENCED_ELEMENT :
-				setReferencedElement((DTDElement) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__GROUP :
-				setGroup((DTDGroupContent) null);
-				return;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__ELEMENT :
-				setElement((DTDElement) null);
-				return;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__OCCURRENCE :
-				setOccurrence(OCCURRENCE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT__REFERENCED_ELEMENT :
-				setReferencedElement((DTDElement) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEmptyContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEmptyContentImpl.java
deleted file mode 100644
index 2e25e48..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEmptyContentImpl.java
+++ /dev/null
@@ -1,172 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-/**
- * @generated
- */
-public class DTDEmptyContentImpl extends DTDElementContentImpl implements DTDEmptyContent {
-
-	public DTDEmptyContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDEmptyContent();
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_EMPTY_CONTENT__GROUP :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_EMPTY_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_EMPTY_CONTENT__ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_EMPTY_CONTENT__ELEMENT, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_EMPTY_CONTENT__GROUP :
-					return eBasicSetContainer(null, DTDPackage.DTD_EMPTY_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_EMPTY_CONTENT__ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_EMPTY_CONTENT__ELEMENT, 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 DTDPackage.DTD_EMPTY_CONTENT__GROUP :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-				case DTDPackage.DTD_EMPTY_CONTENT__ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_EMPTY_CONTENT__GROUP :
-				return getGroup();
-			case DTDPackage.DTD_EMPTY_CONTENT__ELEMENT :
-				return getElement();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_EMPTY_CONTENT__GROUP :
-				setGroup((DTDGroupContent) newValue);
-				return;
-			case DTDPackage.DTD_EMPTY_CONTENT__ELEMENT :
-				setElement((DTDElement) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_EMPTY_CONTENT__GROUP :
-				setGroup((DTDGroupContent) null);
-				return;
-			case DTDPackage.DTD_EMPTY_CONTENT__ELEMENT :
-				setElement((DTDElement) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_EMPTY_CONTENT__GROUP :
-				return getGroup() != null;
-			case DTDPackage.DTD_EMPTY_CONTENT__ELEMENT :
-				return getElement() != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	public String getContentName() {
-		return "EMPTY";
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityContentImpl.java
deleted file mode 100644
index 66d7137..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityContentImpl.java
+++ /dev/null
@@ -1,193 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.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.EcoreUtil;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPathnameUtil;
-
-/**
- * @generated
- */
-public abstract class DTDEntityContentImpl extends EObjectImpl implements DTDEntityContent {
-
-	public DTDEntityContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDEntityContent();
-	}
-
-	public String getPathname() {
-		return DTDPathnameUtil.makePath(getDTDEntity().getPathname(), "Content", null, -1);
-	}
-
-	public DTDObject findObject(String relativePath) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDEntity getDTDEntity() {
-		if (eContainerFeatureID != DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY)
-			return null;
-		return (DTDEntity) eContainer;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setDTDEntity(DTDEntity newDTDEntity) {
-		if (newDTDEntity != eContainer || (eContainerFeatureID != DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY && newDTDEntity != null)) {
-			if (EcoreUtil.isAncestor(this, newDTDEntity))
-				throw new IllegalArgumentException("Recursive containment not allowed for " + toString() + ".");
-			NotificationChain msgs = null;
-			if (eContainer != null)
-				msgs = eBasicRemoveFromContainer(msgs);
-			if (newDTDEntity != null)
-				msgs = ((InternalEObject) newDTDEntity).eInverseAdd(this, DTDPackage.DTD_ENTITY__CONTENT, DTDEntity.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject) newDTDEntity, DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY, newDTDEntity, newDTDEntity));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY :
-					return eBasicSetContainer(null, DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY, 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 DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ENTITY__CONTENT, DTDEntity.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY :
-				return getDTDEntity();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY :
-				return getDTDEntity() != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY :
-				setDTDEntity((DTDEntity) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY :
-				setDTDEntity((DTDEntity) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/*
-	 * @see DTDEntityContent#unparse()
-	 */
-	public String unparse() {
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityImpl.java
deleted file mode 100644
index f28ac91..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityImpl.java
+++ /dev/null
@@ -1,1198 +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.dtd.core.internal.emf.impl;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.notify.impl.NotificationChainImpl;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.ENamedElement;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDLexicalInfo;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPathnameUtil;
-
-
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Entity</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl#isParameterEntity <em>Parameter Entity</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl#getContent <em>Content</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl#getParmEntityRef <em>Parm Entity Ref</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl#getEntityReference <em>Entity Reference</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl#getAttributeNameReference <em>Attribute Name Reference</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDEntityImpl#getAttributeTypeReference <em>Attribute Type Reference</em>}</li>
- * </ul>
- * </p>
- * 
- * @generated
- */
-public class DTDEntityImpl extends DTDContentImpl implements DTDEntity, ENamedElement, DTDContent {
-
-	public String getPathname() {
-		return DTDPathnameUtil.makePath(null, "Ent", getName(), -1);
-	}
-
-
-	public DTDObject findObject(String relativePath) {
-		Object[] result = DTDPathnameUtil.parsePathComponent(relativePath);
-
-
-		String type = (String) result[0];
-
-
-		if (type == null)
-			return null;
-
-
-		DTDObject obj = null;
-		if (type.equals("Content")) {
-			obj = getContent();
-		}
-		else {
-			return null;
-		}
-
-
-		String restPath = (String) result[3];
-
-		if ((restPath == null) || (obj == null)) {
-			return obj;
-		}
-		else {
-			return obj.findObject(restPath);
-		}
-	}
-
-
-	// ugly hack for now since we don't have multiple inheritance.
-	// Would rather have all this stuff in a base class but these
-	// classes are inheriting from sometimes different mof classes
-	DTDLexicalInfo lexInfo = new DTDLexicalInfo();
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset() {
-		return lexInfo.getStartOffset();
-	}
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v) {
-		lexInfo.setStartOffset(v);
-	}
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset() {
-		return lexInfo.getEndOffset();
-	}
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v) {
-		lexInfo.setEndOffset(v);
-	}
-
-
-
-	/**
-	 * The default value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String COMMENT_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected String comment = COMMENT_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #isParameterEntity() <em>Parameter Entity</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #isParameterEntity()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final boolean PARAMETER_ENTITY_EDEFAULT = false;
-
-	/**
-	 * The cached value of the '{@link #isParameterEntity() <em>Parameter Entity</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #isParameterEntity()
-	 * @generated
-	 * @ordered
-	 */
-	protected boolean parameterEntity = PARAMETER_ENTITY_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getContent() <em>Content</em>}'
-	 * containment reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getContent()
-	 * @generated
-	 * @ordered
-	 */
-	protected DTDEntityContent content = null;
-
-	/**
-	 * The cached value of the '{@link #getParmEntityRef() <em>Parm Entity Ref</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getParmEntityRef()
-	 * @generated
-	 * @ordered
-	 */
-	protected DTDParameterEntityReference parmEntityRef = null;
-
-	/**
-	 * The cached value of the '{@link #getEntityReference() <em>Entity Reference</em>}'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getEntityReference()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList entityReference = null;
-
-	/**
-	 * The cached value of the '{@link #getAttributeNameReference() <em>Attribute Name Reference</em>}'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getAttributeNameReference()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList attributeNameReference = null;
-
-	/**
-	 * The cached value of the '{@link #getAttributeTypeReference() <em>Attribute Type Reference</em>}'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getAttributeTypeReference()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList attributeTypeReference = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected DTDEntityImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDEntity();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String getComment() {
-		return comment;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setComment(String newComment) {
-		String oldComment = comment;
-		comment = newComment;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY__COMMENT, oldComment, comment));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean isParameterEntity() {
-		return parameterEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setParameterEntity(boolean newParameterEntity) {
-		boolean oldParameterEntity = parameterEntity;
-		parameterEntity = newParameterEntity;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY__PARAMETER_ENTITY, oldParameterEntity, parameterEntity));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntityContent getContent() {
-		return content;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public NotificationChain basicSetContent(DTDEntityContent newContent, NotificationChain msgs) {
-		DTDEntityContent oldContent = content;
-		content = newContent;
-		if (eNotificationRequired()) {
-			if (msgs == null)
-				msgs = new NotificationChainImpl(4);
-			msgs.add(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY__CONTENT, oldContent, newContent));
-		}
-		return msgs;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setContent(DTDEntityContent newContent) {
-		if (newContent != content) {
-			NotificationChain msgs = null;
-			if (content != null)
-				msgs = ((InternalEObject) content).eInverseRemove(this, DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY, DTDEntityContent.class, msgs);
-			if (newContent != null)
-				msgs = ((InternalEObject) newContent).eInverseAdd(this, DTDPackage.DTD_ENTITY_CONTENT__DTD_ENTITY, DTDEntityContent.class, msgs);
-			msgs = basicSetContent(newContent, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY__CONTENT, newContent, newContent));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDParameterEntityReference getParmEntityRef() {
-		if (parmEntityRef != null && parmEntityRef.eIsProxy()) {
-			DTDParameterEntityReference oldParmEntityRef = parmEntityRef;
-			parmEntityRef = (DTDParameterEntityReference) EcoreUtil.resolve(parmEntityRef, this);
-			if (parmEntityRef != oldParmEntityRef) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DTDPackage.DTD_ENTITY__PARM_ENTITY_REF, oldParmEntityRef, parmEntityRef));
-			}
-		}
-		return parmEntityRef;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDParameterEntityReference basicGetParmEntityRef() {
-		return parmEntityRef;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public NotificationChain basicSetParmEntityRef(DTDParameterEntityReference newParmEntityRef, NotificationChain msgs) {
-		DTDParameterEntityReference oldParmEntityRef = parmEntityRef;
-		parmEntityRef = newParmEntityRef;
-		if (eNotificationRequired()) {
-			if (msgs == null)
-				msgs = new NotificationChainImpl(4);
-			msgs.add(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY__PARM_ENTITY_REF, oldParmEntityRef, newParmEntityRef));
-		}
-		return msgs;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setParmEntityRef(DTDParameterEntityReference newParmEntityRef) {
-		if (newParmEntityRef != parmEntityRef) {
-			NotificationChain msgs = null;
-			if (parmEntityRef != null)
-				msgs = ((InternalEObject) parmEntityRef).eInverseRemove(this, DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY, DTDParameterEntityReference.class, msgs);
-			if (newParmEntityRef != null)
-				msgs = ((InternalEObject) newParmEntityRef).eInverseAdd(this, DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY, DTDParameterEntityReference.class, msgs);
-			msgs = basicSetParmEntityRef(newParmEntityRef, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY__PARM_ENTITY_REF, newParmEntityRef, newParmEntityRef));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EList getEntityReference() {
-		if (entityReference == null) {
-			entityReference = new EObjectWithInverseResolvingEList(DTDEntityReferenceContent.class, this, DTDPackage.DTD_ENTITY__ENTITY_REFERENCE, DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY);
-		}
-		return entityReference;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EList getAttributeNameReference() {
-		if (attributeNameReference == null) {
-			attributeNameReference = new EObjectWithInverseResolvingEList(DTDAttribute.class, this, DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE, DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY);
-		}
-		return attributeNameReference;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EList getAttributeTypeReference() {
-		if (attributeTypeReference == null) {
-			attributeTypeReference = new EObjectWithInverseResolvingEList(DTDAttribute.class, this, DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE, DTDPackage.DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY);
-		}
-		return attributeTypeReference;
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ENTITY__DTD_FILE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ENTITY__DTD_FILE, msgs);
-				case DTDPackage.DTD_ENTITY__CONTENT :
-					if (content != null)
-						msgs = ((InternalEObject) content).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DTDPackage.DTD_ENTITY__CONTENT, null, msgs);
-					return basicSetContent((DTDEntityContent) otherEnd, msgs);
-				case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF :
-					if (parmEntityRef != null)
-						msgs = ((InternalEObject) parmEntityRef).eInverseRemove(this, DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY, DTDParameterEntityReference.class, msgs);
-					return basicSetParmEntityRef((DTDParameterEntityReference) otherEnd, msgs);
-				case DTDPackage.DTD_ENTITY__ENTITY_REFERENCE :
-					return ((InternalEList) getEntityReference()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE :
-					return ((InternalEList) getAttributeNameReference()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE :
-					return ((InternalEList) getAttributeTypeReference()).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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ENTITY__DTD_FILE :
-					return eBasicSetContainer(null, DTDPackage.DTD_ENTITY__DTD_FILE, msgs);
-				case DTDPackage.DTD_ENTITY__CONTENT :
-					return basicSetContent(null, msgs);
-				case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF :
-					return basicSetParmEntityRef(null, msgs);
-				case DTDPackage.DTD_ENTITY__ENTITY_REFERENCE :
-					return ((InternalEList) getEntityReference()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE :
-					return ((InternalEList) getAttributeNameReference()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE :
-					return ((InternalEList) getAttributeTypeReference()).basicRemove(otherEnd, 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 DTDPackage.DTD_ENTITY__DTD_FILE :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_FILE__DTD_CONTENT, DTDFile.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY__DTD_FILE :
-				return getDTDFile();
-			case DTDPackage.DTD_ENTITY__COMMENT :
-				return getComment();
-			case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY :
-				return isParameterEntity() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ENTITY__CONTENT :
-				return getContent();
-			case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF :
-				if (resolve)
-					return getParmEntityRef();
-				return basicGetParmEntityRef();
-			case DTDPackage.DTD_ENTITY__ENTITY_REFERENCE :
-				return getEntityReference();
-			case DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE :
-				return getAttributeNameReference();
-			case DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE :
-				return getAttributeTypeReference();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY__DTD_FILE :
-				setDTDFile((DTDFile) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY__COMMENT :
-				setComment((String) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY :
-				setParameterEntity(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ENTITY__CONTENT :
-				setContent((DTDEntityContent) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF :
-				setParmEntityRef((DTDParameterEntityReference) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY__ENTITY_REFERENCE :
-				getEntityReference().clear();
-				getEntityReference().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE :
-				getAttributeNameReference().clear();
-				getAttributeNameReference().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE :
-				getAttributeTypeReference().clear();
-				getAttributeTypeReference().addAll((Collection) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY__DTD_FILE :
-				setDTDFile((DTDFile) null);
-				return;
-			case DTDPackage.DTD_ENTITY__COMMENT :
-				setComment(COMMENT_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY :
-				setParameterEntity(PARAMETER_ENTITY_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ENTITY__CONTENT :
-				setContent((DTDEntityContent) null);
-				return;
-			case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF :
-				setParmEntityRef((DTDParameterEntityReference) null);
-				return;
-			case DTDPackage.DTD_ENTITY__ENTITY_REFERENCE :
-				getEntityReference().clear();
-				return;
-			case DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE :
-				getAttributeNameReference().clear();
-				return;
-			case DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE :
-				getAttributeTypeReference().clear();
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY__DTD_FILE :
-				return getDTDFile() != null;
-			case DTDPackage.DTD_ENTITY__COMMENT :
-				return COMMENT_EDEFAULT == null ? comment != null : !COMMENT_EDEFAULT.equals(comment);
-			case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY :
-				return parameterEntity != PARAMETER_ENTITY_EDEFAULT;
-			case DTDPackage.DTD_ENTITY__CONTENT :
-				return content != null;
-			case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF :
-				return parmEntityRef != null;
-			case DTDPackage.DTD_ENTITY__ENTITY_REFERENCE :
-				return entityReference != null && !getEntityReference().isEmpty();
-			case DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE :
-				return attributeNameReference != null && !getAttributeNameReference().isEmpty();
-			case DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE :
-				return attributeTypeReference != null && !getAttributeTypeReference().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(" (comment: ");
-		result.append(comment);
-		result.append(", parameterEntity: ");
-		result.append(parameterEntity);
-		result.append(')');
-		return result.toString();
-	}
-
-} // DTDEntityImpl
-
-// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-//
-
-// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-// //public class DTDEntityImpl extends ENamespaceImpl implements DTDEntity,
-// ENamespace, DTDContent{
-// -------------------GENERICRULES.JSED-------------------
-
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected String comment = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected Boolean parameterEntity = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected DTDEntityContent content = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected DTDParameterEntityReference parmEntityRef = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected EList entityReference = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected EList attributeNameReference = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected EList attributeTypeReference = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setComment = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setParameterEntity = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setContent = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setParmEntityRef = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// private DTDContentImpl dtdContentDelegate = null;
-
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EObject initInstance() {
-// setEMetaObj(eClassDTDEntity());
-// initInstanceDelegates();
-// return this;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected void initInstanceDelegates() {
-// super.initInstanceDelegates();
-//
-// getDtdContentDelegate().refSetDelegateOwner(this);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public DTDPackage ePackageDTD() {
-// return
-// (DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EClass eClassDTDEntity() {
-// return
-// ((DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI)).getDTDEntity();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public String getComment() {
-// if (this.setComment) return this.comment;
-// else return
-// (String)DTDPackage.eINSTANCE.getDTDEntity_Comment().getDefaultValue();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setComment(String value) {
-// refSetValueForSimpleSF(DTDPackage.eINSTANCE.getDTDEntity_Comment(),this.comment,value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetComment() {
-// eNotify(refBasicUnsetValue(DTDPackage.eINSTANCE.getDTDEntity_Comment()));
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetComment() {
-// return setComment;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public Boolean getParameterEntity() {
-// if (this.setParameterEntity) return this.parameterEntity;
-// else return
-// (Boolean)DTDPackage.eINSTANCE.getDTDEntity_ParameterEntity().getDefaultValue();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public boolean isParameterEntity() {
-// Boolean result = getParameterEntity();
-// return result != null ? result.booleanValue() : false;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setParameterEntity(Boolean value) {
-// refSetValueForSimpleSF(DTDPackage.eINSTANCE.getDTDEntity_ParameterEntity(),this.parameterEntity,value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setParameterEntity(boolean value) {
-// setParameterEntity(value?Boolean.TRUE:Boolean.FALSE);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetParameterEntity() {
-// eNotify(refBasicUnsetValue(DTDPackage.eINSTANCE.getDTDEntity_ParameterEntity()));
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetParameterEntity() {
-// return setParameterEntity;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public DTDEntityContent getContent() {
-// try {
-// if (this.content == null) return null;
-// this.content = (DTDEntityContent)
-// ((InternalEObject)this.content).resolve(this);
-// if (this.content==null) this.setContent = false;
-// return this.content;
-// } catch (Exception e) {
-// return null;
-// }
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setContent(DTDEntityContent l) {
-// refSetValueForRefObjectSF(DTDPackage.eINSTANCE.getDTDEntity_Content(),this.content,l);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetContent() {
-// refUnsetValueForRefObjectSF(DTDPackage.eINSTANCE.getDTDEntity_Content(),this.content);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetContent() {
-// return setContent;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public DTDParameterEntityReference getParmEntityRef() {
-// try {
-// if (this.parmEntityRef == null) return null;
-// this.parmEntityRef = (DTDParameterEntityReference)
-// ((InternalEObject)this.parmEntityRef).resolve(this,
-// DTDPackage.eINSTANCE.getDTDEntity_ParmEntityRef());
-// if (this.parmEntityRef==null) this.setParmEntityRef = false;
-// return this.parmEntityRef;
-// } catch (Exception e) {
-// return null;
-// }
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setParmEntityRef(DTDParameterEntityReference l) {
-// refSetValueForSVReference(DTDPackage.eINSTANCE.getDTDEntity_ParmEntityRef(),this.parmEntityRef,l);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetParmEntityRef() {
-// refUnsetValueForSVReference(DTDPackage.eINSTANCE.getDTDEntity_ParmEntityRef(),this.parmEntityRef);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetParmEntityRef() {
-// return setParmEntityRef;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public EList getEntityReference() {
-// if (this.entityReference==null) {
-// this.entityReference=newCollection(this,DTDPackage.eINSTANCE.getDTDEntity_EntityReference(),
-// true);
-// }
-// return this.entityReference;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public EList getAttributeNameReference() {
-// if (this.attributeNameReference==null) {
-// this.attributeNameReference=newCollection(this,DTDPackage.eINSTANCE.getDTDEntity_AttributeNameReference(),
-// true);
-// }
-// return this.attributeNameReference;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public EList getAttributeTypeReference() {
-// if (this.attributeTypeReference==null) {
-// this.attributeTypeReference=newCollection(this,DTDPackage.eINSTANCE.getDTDEntity_AttributeTypeReference(),
-// true);
-// }
-// return this.attributeTypeReference;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Object eGet(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eGet(feature);
-// }
-// switch (eClassDTDEntity().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_ENTITY__COMMENT: return getComment();
-// case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY: return getParameterEntity();
-// case DTDPackage.DTD_ENTITY__CONTENT: return getContent();
-// case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF: return getParmEntityRef();
-// case DTDPackage.DTD_ENTITY__ENTITY_REFERENCE: return getEntityReference();
-// case DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE: return
-// getAttributeNameReference();
-// case DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE: return
-// getAttributeTypeReference();
-// case DTDPackage.DTD_ENTITY__DTD_FILE: return getDTDFile();
-//
-// }
-// return super.eGet(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Object refBasicValue(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.refBasicValue(feature);
-// }
-// switch (eClassDTDEntity().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_ENTITY__COMMENT:
-// return this.setComment? this.comment : null;
-// case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY:
-// return this.setParameterEntity? this.parameterEntity : null;
-// case DTDPackage.DTD_ENTITY__CONTENT:
-// if (!this.setContent||this.content==null) return null;
-// if (((InternalEObject)this.content).refIsDeleted()) {this.content=null;
-// this.setContent=false;}
-// return this.content;
-// case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF:
-// if (!this.setParmEntityRef||this.parmEntityRef==null) return null;
-// if (((InternalEObject)this.parmEntityRef).refIsDeleted())
-// {this.parmEntityRef=null; this.setParmEntityRef=false;}
-// return this.parmEntityRef;
-// case DTDPackage.DTD_ENTITY__ENTITY_REFERENCE:
-// return this.entityReference;
-// case DTDPackage.DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE:
-// return this.attributeNameReference;
-// case DTDPackage.DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE:
-// return this.attributeTypeReference;
-// case DTDPackage.DTD_ENTITY__DTD_FILE: return
-// ((InternalEObject)getDtdContentDelegate()).refBasicValue(feature);
-//
-// }
-// return super.refBasicValue(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean eIsSet(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eIsSet(feature);
-// }
-// switch (eClassDTDEntity().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_ENTITY__COMMENT: return isSetComment();
-// case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY: return
-// isSetParameterEntity();
-// case DTDPackage.DTD_ENTITY__CONTENT: return isSetContent();
-// case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF: return isSetParmEntityRef();
-// case DTDPackage.DTD_ENTITY__DTD_FILE: return isSetDTDFile();
-//
-// }
-// return super.eIsSet(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void eSet(EStructuralFeature feature, Object newValue) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// super.eSet(feature, newValue);
-// }
-// switch (eClassDTDEntity().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_ENTITY__COMMENT: {
-// setComment((String)newValue);
-// return;
-// }
-// case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY: {
-// setParameterEntity((newValue instanceof
-// String)?Boolean.valueOf((String)newValue):(Boolean)newValue);
-// return;
-// }
-// case DTDPackage.DTD_ENTITY__CONTENT: {
-// setContent((DTDEntityContent)newValue);
-// return;
-// }
-// case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF: {
-// setParmEntityRef((DTDParameterEntityReference)newValue);
-// return;
-// }
-// case DTDPackage.DTD_ENTITY__DTD_FILE: {
-// setDTDFile((DTDFile)newValue);
-// return;
-// }
-//
-// }
-// super.eSet(feature, newValue);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Notification eBasicSet(EStructuralFeature feature, Object newValue)
-// {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eBasicSet(feature, newValue);
-// }
-// switch (eClassDTDEntity().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_ENTITY__COMMENT: {
-// Object oldValue = this.comment;
-// this.comment = (String)newValue;
-// this.setComment = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDEntity_Comment(),oldValue,newValue);
-// }
-// case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY: {
-// Object oldValue = this.parameterEntity;
-// this.parameterEntity = (Boolean)newValue;
-// this.setParameterEntity = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDEntity_ParameterEntity(),oldValue,newValue);
-// }
-// case DTDPackage.DTD_ENTITY__CONTENT: {
-// Object oldValue = this.content;
-// this.content = (DTDEntityContent)newValue;
-// this.setContent = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDEntity_Content(),oldValue,newValue);
-// }
-// case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF: {
-// Object oldValue = this.parmEntityRef;
-// this.parmEntityRef = (DTDParameterEntityReference)newValue;
-// this.setParmEntityRef = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDEntity_ParmEntityRef(),oldValue,newValue);
-// }
-//
-// }
-// return super.eBasicSet(feature, newValue);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void eUnset(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// super.eUnset(feature);
-// }
-// switch (eClassDTDEntity().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_ENTITY__COMMENT: {
-// unsetComment();
-// return;
-// }
-// case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY: {
-// unsetParameterEntity();
-// return;
-// }
-// case DTDPackage.DTD_ENTITY__CONTENT: {
-// unsetContent();
-// return;
-// }
-// case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF: {
-// unsetParmEntityRef();
-// return;
-// }
-// case DTDPackage.DTD_ENTITY__DTD_FILE: {
-// unsetDTDFile();
-// return;
-// }
-//
-// }
-// super.eUnset(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Notification refBasicUnsetValue(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.refBasicUnsetValue(feature);
-// }
-// switch (eClassDTDEntity().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_ENTITY__COMMENT: {
-// Object oldValue = this.comment;
-// this.comment = null;
-// this.setComment = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDEntity_Comment(),oldValue,getComment());
-// }
-// case DTDPackage.DTD_ENTITY__PARAMETER_ENTITY: {
-// Object oldValue = this.parameterEntity;
-// this.parameterEntity = null;
-// this.setParameterEntity = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDEntity_ParameterEntity(),oldValue,getParameterEntity());
-// }
-// case DTDPackage.DTD_ENTITY__CONTENT: {
-// Object oldValue = this.content;
-// this.content = null;
-// this.setContent = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDEntity_Content(),oldValue,null);
-// }
-// case DTDPackage.DTD_ENTITY__PARM_ENTITY_REF: {
-// Object oldValue = this.parmEntityRef;
-// this.parmEntityRef = null;
-// this.setParmEntityRef = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDEntity_ParmEntityRef(),oldValue,null);
-// }
-//
-// }
-// return super.refBasicUnsetValue(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected DTDContentImpl getDtdContentDelegate() {
-// if (dtdContentDelegate == null) {
-// DTDPackage pkg =
-// (DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI);
-// dtdContentDelegate=(DTDContentImpl)pkg.eCreateInstance(pkg.DTD_CONTENT);
-// dtdContentDelegate.initInstance();
-// }
-// return dtdContentDelegate;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EClass eClassDTDContent() {
-// return getDtdContentDelegate().eClass();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public DTDFile getDTDFile() {
-// return getDtdContentDelegate().getDTDFile();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setDTDFile(DTDFile value) {
-// getDtdContentDelegate().setDTDFile(value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetDTDFile() {
-// getDtdContentDelegate().unsetDTDFile();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetDTDFile() {
-// return getDtdContentDelegate().isSetDTDFile();
-// }
-// }
-// -------------------GENERICRULES.JSED-------------------
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityReferenceContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityReferenceContentImpl.java
deleted file mode 100644
index d6ec762..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEntityReferenceContentImpl.java
+++ /dev/null
@@ -1,323 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.notify.impl.NotificationChainImpl;
-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.util.EcoreUtil;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDLexicalInfo;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-
-/**
- * @generated
- */
-public class DTDEntityReferenceContentImpl extends DTDRepeatableContentImpl implements DTDEntityReferenceContent {
-
-	public DTDEntityReferenceContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDEntityReferenceContent();
-	}
-
-	public String getContentName() {
-		DTDEntity e = getElementReferencedEntity();
-		if (e == null)
-			return "";
-		return e.getName();
-	}
-
-	public String unparseRepeatableContent() {
-		DTDEntity entityRef = getElementReferencedEntity();
-		if (entityRef.isParameterEntity()) {
-			return "%" + getContentName() + ";";
-		}
-		else {
-			return "&" + getContentName() + ";";
-		}
-	}
-
-	// ugly hack for now since we don't have multiple inheritance.
-	// Would rather have all this stuff in a base class but these
-	// classes are inheriting from sometimes different mof classes
-	DTDLexicalInfo lexInfo = new DTDLexicalInfo();
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected DTDEntity elementReferencedEntity = null;
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset() {
-		return lexInfo.getStartOffset();
-	}
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v) {
-		lexInfo.setStartOffset(v);
-	}
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset() {
-		return lexInfo.getEndOffset();
-	}
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v) {
-		lexInfo.setEndOffset(v);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDEntity getElementReferencedEntity() {
-		if (elementReferencedEntity != null && elementReferencedEntity.eIsProxy()) {
-			DTDEntity oldElementReferencedEntity = elementReferencedEntity;
-			elementReferencedEntity = (DTDEntity) EcoreUtil.resolve(elementReferencedEntity, this);
-			if (elementReferencedEntity != oldElementReferencedEntity) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY, oldElementReferencedEntity, elementReferencedEntity));
-			}
-		}
-		return elementReferencedEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntity basicGetElementReferencedEntity() {
-		return elementReferencedEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public NotificationChain basicSetElementReferencedEntity(DTDEntity newElementReferencedEntity, NotificationChain msgs) {
-		DTDEntity oldElementReferencedEntity = elementReferencedEntity;
-		elementReferencedEntity = newElementReferencedEntity;
-		if (eNotificationRequired()) {
-			if (msgs == null)
-				msgs = new NotificationChainImpl(4);
-			msgs.add(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY, oldElementReferencedEntity, newElementReferencedEntity));
-		}
-		return msgs;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setElementReferencedEntity(DTDEntity newElementReferencedEntity) {
-		if (newElementReferencedEntity != elementReferencedEntity) {
-			NotificationChain msgs = null;
-			if (elementReferencedEntity != null)
-				msgs = ((InternalEObject) elementReferencedEntity).eInverseRemove(this, DTDPackage.DTD_ENTITY__ENTITY_REFERENCE, DTDEntity.class, msgs);
-			if (newElementReferencedEntity != null)
-				msgs = ((InternalEObject) newElementReferencedEntity).eInverseAdd(this, DTDPackage.DTD_ENTITY__ENTITY_REFERENCE, DTDEntity.class, msgs);
-			msgs = basicSetElementReferencedEntity(newElementReferencedEntity, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY, newElementReferencedEntity, newElementReferencedEntity));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT, msgs);
-				case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY :
-					if (elementReferencedEntity != null)
-						msgs = ((InternalEObject) elementReferencedEntity).eInverseRemove(this, DTDPackage.DTD_ENTITY__ENTITY_REFERENCE, DTDEntity.class, msgs);
-					return basicSetElementReferencedEntity((DTDEntity) 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP :
-					return eBasicSetContainer(null, DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT, msgs);
-				case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY :
-					return basicSetElementReferencedEntity(null, 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 DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-				case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP :
-				return getGroup();
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT :
-				return getElement();
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__OCCURRENCE :
-				return getOccurrence();
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY :
-				if (resolve)
-					return getElementReferencedEntity();
-				return basicGetElementReferencedEntity();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP :
-				return getGroup() != null;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT :
-				return getElement() != null;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__OCCURRENCE :
-				return occurrence != OCCURRENCE_EDEFAULT;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY :
-				return elementReferencedEntity != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP :
-				setGroup((DTDGroupContent) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT :
-				setElement((DTDElement) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__OCCURRENCE :
-				setOccurrence((DTDOccurrenceType) newValue);
-				return;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY :
-				setElementReferencedEntity((DTDEntity) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__GROUP :
-				setGroup((DTDGroupContent) null);
-				return;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT :
-				setElement((DTDElement) null);
-				return;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__OCCURRENCE :
-				setOccurrence(OCCURRENCE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY :
-				setElementReferencedEntity((DTDEntity) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEnumerationTypeImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEnumerationTypeImpl.java
deleted file mode 100644
index af7b980..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDEnumerationTypeImpl.java
+++ /dev/null
@@ -1,362 +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.dtd.core.internal.emf.impl;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.EEnumImpl;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.dtd.core.internal.DTDCorePlugin;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-
-/**
- * @generated
- */
-public class DTDEnumerationTypeImpl extends EEnumImpl implements DTDEnumerationType {
-	/**
-	 * The default value of the '{@link #getKind() <em>Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getKind()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final DTDEnumGroupKind KIND_EDEFAULT = DTDEnumGroupKind.NAME_TOKEN_GROUP_LITERAL;
-
-	public final static String enumerationTypeDescriptions[] = {DTDCorePlugin.getDTDString("_UI_ENUM_NAME_TOKENS_DESC"), DTDCorePlugin.getDTDString("_UI_ENUM_NOTATION_DESC")};
-
-	public final static int enumerationTypeKinds[] = {DTDEnumGroupKind.NAME_TOKEN_GROUP, DTDEnumGroupKind.NOTATION_GROUP};
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected DTDEnumGroupKind kind = KIND_EDEFAULT;
-
-	public DTDEnumerationTypeImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDEnumerationType();
-	}
-
-	public EList getEnumLiterals() {
-		return getELiterals();
-	}
-
-	public String getEnumerationTypeDescription() {
-		return getEnumerationTypeDescription(getKind().getValue());
-	}
-
-	public static String getEnumerationTypeDescription(int kind) {
-		// it can only be 1 or 2, but maybe later...
-		if (kind >= 1 && kind <= 2) {
-			// we subtract 1 since the kind is 1 - based not zero based
-			return enumerationTypeDescriptions[kind - 1];
-		}
-		return null;
-	}
-
-	public String getPathname() {
-		// TBD
-		return "";
-	}
-
-	public DTDObject findObject(String relativePath) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDEnumGroupKind getKind() {
-		return kind;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setKind(DTDEnumGroupKind newKind) {
-		DTDEnumGroupKind oldKind = kind;
-		kind = newKind == null ? KIND_EDEFAULT : newKind;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENUMERATION_TYPE__KIND, oldKind, kind));
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDFile getDTDFile() {
-		if (eContainerFeatureID != DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE)
-			return null;
-		return (DTDFile) eContainer;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setDTDFile(DTDFile newDTDFile) {
-		if (newDTDFile != eContainer || (eContainerFeatureID != DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE && newDTDFile != null)) {
-			if (EcoreUtil.isAncestor(this, newDTDFile))
-				throw new IllegalArgumentException("Recursive containment not allowed for " + toString() + ".");
-			NotificationChain msgs = null;
-			if (eContainer != null)
-				msgs = eBasicRemoveFromContainer(msgs);
-			if (newDTDFile != null)
-				msgs = ((InternalEObject) newDTDFile).eInverseAdd(this, DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE, DTDFile.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject) newDTDFile, DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE, newDTDFile, newDTDFile));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_ENUMERATION_TYPE__EANNOTATIONS :
-					return ((InternalEList) getEAnnotations()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_ENUMERATION_TYPE__EPACKAGE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ENUMERATION_TYPE__EPACKAGE, msgs);
-				case DTDPackage.DTD_ENUMERATION_TYPE__ELITERALS :
-					return ((InternalEList) getELiterals()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_ENUMERATION_TYPE__EANNOTATIONS :
-					return ((InternalEList) getEAnnotations()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ENUMERATION_TYPE__EPACKAGE :
-					return eBasicSetContainer(null, DTDPackage.DTD_ENUMERATION_TYPE__EPACKAGE, msgs);
-				case DTDPackage.DTD_ENUMERATION_TYPE__ELITERALS :
-					return ((InternalEList) getELiterals()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE :
-					return eBasicSetContainer(null, DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE, 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 DTDPackage.DTD_ENUMERATION_TYPE__EPACKAGE :
-					return eContainer.eInverseRemove(this, EcorePackage.EPACKAGE__ECLASSIFIERS, EPackage.class, msgs);
-				case DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE, DTDFile.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENUMERATION_TYPE__EANNOTATIONS :
-				return getEAnnotations();
-			case DTDPackage.DTD_ENUMERATION_TYPE__NAME :
-				return getName();
-			case DTDPackage.DTD_ENUMERATION_TYPE__INSTANCE_CLASS_NAME :
-				return getInstanceClassName();
-			case DTDPackage.DTD_ENUMERATION_TYPE__INSTANCE_CLASS :
-				return getInstanceClass();
-			case DTDPackage.DTD_ENUMERATION_TYPE__DEFAULT_VALUE :
-				return getDefaultValue();
-			case DTDPackage.DTD_ENUMERATION_TYPE__EPACKAGE :
-				return getEPackage();
-			case DTDPackage.DTD_ENUMERATION_TYPE__SERIALIZABLE :
-				return isSerializable() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_ENUMERATION_TYPE__ELITERALS :
-				return getELiterals();
-			case DTDPackage.DTD_ENUMERATION_TYPE__KIND :
-				return getKind();
-			case DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE :
-				return getDTDFile();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENUMERATION_TYPE__EANNOTATIONS :
-				return eAnnotations != null && !getEAnnotations().isEmpty();
-			case DTDPackage.DTD_ENUMERATION_TYPE__NAME :
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case DTDPackage.DTD_ENUMERATION_TYPE__INSTANCE_CLASS_NAME :
-				return INSTANCE_CLASS_NAME_EDEFAULT == null ? instanceClassName != null : !INSTANCE_CLASS_NAME_EDEFAULT.equals(instanceClassName);
-			case DTDPackage.DTD_ENUMERATION_TYPE__INSTANCE_CLASS :
-				return INSTANCE_CLASS_EDEFAULT == null ? instanceClass != null : !INSTANCE_CLASS_EDEFAULT.equals(instanceClass);
-			case DTDPackage.DTD_ENUMERATION_TYPE__DEFAULT_VALUE :
-				return getDefaultValue() != null;
-			case DTDPackage.DTD_ENUMERATION_TYPE__EPACKAGE :
-				return getEPackage() != null;
-			case DTDPackage.DTD_ENUMERATION_TYPE__SERIALIZABLE :
-				return serializable != SERIALIZABLE_EDEFAULT;
-			case DTDPackage.DTD_ENUMERATION_TYPE__ELITERALS :
-				return eLiterals != null && !getELiterals().isEmpty();
-			case DTDPackage.DTD_ENUMERATION_TYPE__KIND :
-				return kind != KIND_EDEFAULT;
-			case DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE :
-				return getDTDFile() != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENUMERATION_TYPE__EANNOTATIONS :
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__NAME :
-				setName((String) newValue);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__INSTANCE_CLASS_NAME :
-				setInstanceClassName((String) newValue);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__INSTANCE_CLASS :
-				setInstanceClass((Class) newValue);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__SERIALIZABLE :
-				setSerializable(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__ELITERALS :
-				getELiterals().clear();
-				getELiterals().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__KIND :
-				setKind((DTDEnumGroupKind) newValue);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE :
-				setDTDFile((DTDFile) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_ENUMERATION_TYPE__EANNOTATIONS :
-				getEAnnotations().clear();
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__NAME :
-				setName(NAME_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__INSTANCE_CLASS_NAME :
-				setInstanceClassName(INSTANCE_CLASS_NAME_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__INSTANCE_CLASS :
-				setInstanceClass(INSTANCE_CLASS_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__SERIALIZABLE :
-				setSerializable(SERIALIZABLE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__ELITERALS :
-				getELiterals().clear();
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__KIND :
-				setKind(KIND_EDEFAULT);
-				return;
-			case DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE :
-				setDTDFile((DTDFile) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public String toString() {
-		if (eIsProxy())
-			return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (kind: ");
-		result.append(kind);
-		result.append(')');
-		return result.toString();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDExternalEntityImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDExternalEntityImpl.java
deleted file mode 100644
index 3249425..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDExternalEntityImpl.java
+++ /dev/null
@@ -1,400 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.notify.impl.NotificationChainImpl;
-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.util.EcoreUtil;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-
-/**
- * @generated
- */
-public class DTDExternalEntityImpl extends DTDEntityContentImpl implements DTDExternalEntity {
-	/**
-	 * The default value of the '{@link #getSystemID() <em>System ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getSystemID()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String SYSTEM_ID_EDEFAULT = null;
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected String systemID = SYSTEM_ID_EDEFAULT;
-	/**
-	 * The default value of the '{@link #getPublicID() <em>Public ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getPublicID()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String PUBLIC_ID_EDEFAULT = null;
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected String publicID = PUBLIC_ID_EDEFAULT;
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected DTDNotation notation = null;
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected DTDFile entityReferencedFromAnotherFile = null;
-
-	public DTDExternalEntityImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDExternalEntity();
-	}
-
-	public String unparse() {
-		StringBuffer text = new StringBuffer(100);
-		if (getPublicID() == null || getPublicID().equals("")) {
-			text.append("SYSTEM ");
-		}
-		else {
-			text.append("PUBLIC \"").append(getPublicID()).append("\" ");
-		}
-		String systemId = getSystemID();
-
-		text.append("\"").append(systemId).append("\"");
-
-		DTDNotation notation = getNotation();
-		if (notation != null)
-			text.append(" NDATA ").append(notation.getName());
-
-		return text.toString();
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public String getSystemID() {
-		return systemID;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setSystemID(String newSystemID) {
-		String oldSystemID = systemID;
-		systemID = newSystemID;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_EXTERNAL_ENTITY__SYSTEM_ID, oldSystemID, systemID));
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public String getPublicID() {
-		return publicID;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setPublicID(String newPublicID) {
-		String oldPublicID = publicID;
-		publicID = newPublicID;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_EXTERNAL_ENTITY__PUBLIC_ID, oldPublicID, publicID));
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDNotation getNotation() {
-		if (notation != null && notation.eIsProxy()) {
-			DTDNotation oldNotation = notation;
-			notation = (DTDNotation) EcoreUtil.resolve(notation, this);
-			if (notation != oldNotation) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION, oldNotation, notation));
-			}
-		}
-		return notation;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDNotation basicGetNotation() {
-		return notation;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public NotificationChain basicSetNotation(DTDNotation newNotation, NotificationChain msgs) {
-		DTDNotation oldNotation = notation;
-		notation = newNotation;
-		if (eNotificationRequired()) {
-			if (msgs == null)
-				msgs = new NotificationChainImpl(4);
-			msgs.add(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION, oldNotation, newNotation));
-		}
-		return msgs;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setNotation(DTDNotation newNotation) {
-		if (newNotation != notation) {
-			NotificationChain msgs = null;
-			if (notation != null)
-				msgs = ((InternalEObject) notation).eInverseRemove(this, DTDPackage.DTD_NOTATION__ENTITY, DTDNotation.class, msgs);
-			if (newNotation != null)
-				msgs = ((InternalEObject) newNotation).eInverseAdd(this, DTDPackage.DTD_NOTATION__ENTITY, DTDNotation.class, msgs);
-			msgs = basicSetNotation(newNotation, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION, newNotation, newNotation));
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDFile getEntityReferencedFromAnotherFile() {
-		if (entityReferencedFromAnotherFile != null && entityReferencedFromAnotherFile.eIsProxy()) {
-			DTDFile oldEntityReferencedFromAnotherFile = entityReferencedFromAnotherFile;
-			entityReferencedFromAnotherFile = (DTDFile) EcoreUtil.resolve(entityReferencedFromAnotherFile, this);
-			if (entityReferencedFromAnotherFile != oldEntityReferencedFromAnotherFile) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DTDPackage.DTD_EXTERNAL_ENTITY__ENTITY_REFERENCED_FROM_ANOTHER_FILE, oldEntityReferencedFromAnotherFile, entityReferencedFromAnotherFile));
-			}
-		}
-		return entityReferencedFromAnotherFile;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDFile basicGetEntityReferencedFromAnotherFile() {
-		return entityReferencedFromAnotherFile;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setEntityReferencedFromAnotherFile(DTDFile newEntityReferencedFromAnotherFile) {
-		DTDFile oldEntityReferencedFromAnotherFile = entityReferencedFromAnotherFile;
-		entityReferencedFromAnotherFile = newEntityReferencedFromAnotherFile;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_EXTERNAL_ENTITY__ENTITY_REFERENCED_FROM_ANOTHER_FILE, oldEntityReferencedFromAnotherFile, entityReferencedFromAnotherFile));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY, msgs);
-				case DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION :
-					if (notation != null)
-						msgs = ((InternalEObject) notation).eInverseRemove(this, DTDPackage.DTD_NOTATION__ENTITY, DTDNotation.class, msgs);
-					return basicSetNotation((DTDNotation) 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY :
-					return eBasicSetContainer(null, DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY, msgs);
-				case DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION :
-					return basicSetNotation(null, 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 DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ENTITY__CONTENT, DTDEntity.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY :
-				return getDTDEntity();
-			case DTDPackage.DTD_EXTERNAL_ENTITY__SYSTEM_ID :
-				return getSystemID();
-			case DTDPackage.DTD_EXTERNAL_ENTITY__PUBLIC_ID :
-				return getPublicID();
-			case DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION :
-				if (resolve)
-					return getNotation();
-				return basicGetNotation();
-			case DTDPackage.DTD_EXTERNAL_ENTITY__ENTITY_REFERENCED_FROM_ANOTHER_FILE :
-				if (resolve)
-					return getEntityReferencedFromAnotherFile();
-				return basicGetEntityReferencedFromAnotherFile();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY :
-				return getDTDEntity() != null;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__SYSTEM_ID :
-				return SYSTEM_ID_EDEFAULT == null ? systemID != null : !SYSTEM_ID_EDEFAULT.equals(systemID);
-			case DTDPackage.DTD_EXTERNAL_ENTITY__PUBLIC_ID :
-				return PUBLIC_ID_EDEFAULT == null ? publicID != null : !PUBLIC_ID_EDEFAULT.equals(publicID);
-			case DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION :
-				return notation != null;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__ENTITY_REFERENCED_FROM_ANOTHER_FILE :
-				return entityReferencedFromAnotherFile != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY :
-				setDTDEntity((DTDEntity) newValue);
-				return;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__SYSTEM_ID :
-				setSystemID((String) newValue);
-				return;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__PUBLIC_ID :
-				setPublicID((String) newValue);
-				return;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION :
-				setNotation((DTDNotation) newValue);
-				return;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__ENTITY_REFERENCED_FROM_ANOTHER_FILE :
-				setEntityReferencedFromAnotherFile((DTDFile) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_EXTERNAL_ENTITY__DTD_ENTITY :
-				setDTDEntity((DTDEntity) null);
-				return;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__SYSTEM_ID :
-				setSystemID(SYSTEM_ID_EDEFAULT);
-				return;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__PUBLIC_ID :
-				setPublicID(PUBLIC_ID_EDEFAULT);
-				return;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION :
-				setNotation((DTDNotation) null);
-				return;
-			case DTDPackage.DTD_EXTERNAL_ENTITY__ENTITY_REFERENCED_FROM_ANOTHER_FILE :
-				setEntityReferencedFromAnotherFile((DTDFile) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public String toString() {
-		if (eIsProxy())
-			return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (systemID: ");
-		result.append(systemID);
-		result.append(", publicID: ");
-		result.append(publicID);
-		result.append(')');
-		return result.toString();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDFactoryImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDFactoryImpl.java
deleted file mode 100644
index 8e02c6a..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDFactoryImpl.java
+++ /dev/null
@@ -1,448 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EDataType;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.impl.EFactoryImpl;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFactory;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.DTDType;
-import org.eclipse.wst.dtd.core.internal.emf.XMLSchemaDefinedType;
-
-/**
- * @generated
- */
-public class DTDFactoryImpl extends EFactoryImpl implements DTDFactory {
-	protected DTDBasicType dtdBasicType_NONE;
-	protected DTDBasicType dtdBasicType_CDATA;
-	protected DTDBasicType dtdBasicType_ID;
-	protected DTDBasicType dtdBasicType_IDREF;
-	protected DTDBasicType dtdBasicType_IDREFS;
-	protected DTDBasicType dtdBasicType_ENTITY;
-	protected DTDBasicType dtdBasicType_ENTITIES;
-	protected DTDBasicType dtdBasicType_NMTOKEN;
-	protected DTDBasicType dtdBasicType_NMTOKENS;
-
-
-
-	public static DTDFactory instance() {
-		return (DTDFactory) getPackage().getEFactoryInstance();
-	}
-
-	/**
-	 * Gets the dtdBasicType_NONE.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_NONE() {
-		if (dtdBasicType_NONE == null) {
-			(dtdBasicType_NONE = createDTDBasicType()).setKind(DTDBasicTypeKind.CDATA_LITERAL);
-		}
-		return dtdBasicType_NONE;
-	}
-
-	/**
-	 * Gets the dtdBasicType_CDATA.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_CDATA() {
-		if (dtdBasicType_CDATA == null) {
-			(dtdBasicType_CDATA = createDTDBasicType()).setKind(DTDBasicTypeKind.CDATA_LITERAL);
-		}
-		return dtdBasicType_CDATA;
-	}
-
-	/**
-	 * Gets the dtdBasicType_ID.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_ID() {
-		if (dtdBasicType_ID == null) {
-			(dtdBasicType_ID = createDTDBasicType()).setKind(DTDBasicTypeKind.ID_LITERAL);
-		}
-		return dtdBasicType_ID;
-	}
-
-	/**
-	 * Gets the dtdBasicType_IDREF.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_IDREF() {
-		if (dtdBasicType_IDREF == null) {
-			(dtdBasicType_IDREF = createDTDBasicType()).setKind(DTDBasicTypeKind.IDREF_LITERAL);
-		}
-		return dtdBasicType_IDREF;
-	}
-
-	/**
-	 * Gets the dtdBasicType_IDREFS.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_IDREFS() {
-		if (dtdBasicType_IDREFS == null) {
-			(dtdBasicType_IDREFS = createDTDBasicType()).setKind(DTDBasicTypeKind.IDREFS_LITERAL);
-		}
-		return dtdBasicType_IDREFS;
-	}
-
-	/**
-	 * Gets the dtdBasicType_ENTITY.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_ENTITY() {
-		if (dtdBasicType_ENTITY == null) {
-			(dtdBasicType_ENTITY = createDTDBasicType()).setKind(DTDBasicTypeKind.ENTITY_LITERAL);
-		}
-		return dtdBasicType_ENTITY;
-	}
-
-	/**
-	 * Gets the dtdBasicType_ENTITIES.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_ENTITIES() {
-		if (dtdBasicType_ENTITIES == null) {
-			(dtdBasicType_ENTITIES = createDTDBasicType()).setKind(DTDBasicTypeKind.ENTITIES_LITERAL);
-		}
-		return dtdBasicType_ENTITIES;
-	}
-
-	/**
-	 * Gets the dtdBasicType_NMTOKEN.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_NMTOKEN() {
-		if (dtdBasicType_NMTOKEN == null) {
-			(dtdBasicType_NMTOKEN = createDTDBasicType()).setKind(DTDBasicTypeKind.NMTOKEN_LITERAL);
-		}
-		return dtdBasicType_NMTOKEN;
-	}
-
-	/**
-	 * Gets the dtdBasicType_NMTOKENS.
-	 * 
-	 * @return Returns a DTDType
-	 */
-	public DTDType getDTDBasicType_NMTOKENS() {
-		if (dtdBasicType_NMTOKENS == null) {
-			(dtdBasicType_NMTOKENS = createDTDBasicType()).setKind(DTDBasicTypeKind.NMTOKENS_LITERAL);
-		}
-		return dtdBasicType_NMTOKENS;
-	}
-
-	/**
-	 * Creates and instance of the factory. <!-- begin-user-doc --> <!--
-	 * end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDFactoryImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EObject create(EClass eClass) {
-		switch (eClass.getClassifierID()) {
-			case DTDPackage.DTD_GROUP_CONTENT :
-				return createDTDGroupContent();
-			case DTDPackage.DTD_ATTRIBUTE :
-				return createDTDAttribute();
-			case DTDPackage.DTD_ELEMENT :
-				return createDTDElement();
-			case DTDPackage.DTD_EMPTY_CONTENT :
-				return createDTDEmptyContent();
-			case DTDPackage.DTD_ANY_CONTENT :
-				return createDTDAnyContent();
-			case DTDPackage.DTD_PC_DATA_CONTENT :
-				return createDTDPCDataContent();
-			case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT :
-				return createDTDElementReferenceContent();
-			case DTDPackage.DTD_FILE :
-				return createDTDFile();
-			case DTDPackage.DTD_BASIC_TYPE :
-				return createDTDBasicType();
-			case DTDPackage.DTD_ENUMERATION_TYPE :
-				return createDTDEnumerationType();
-			case DTDPackage.DTD_NOTATION :
-				return createDTDNotation();
-			case DTDPackage.DTD_ENTITY :
-				return createDTDEntity();
-			case DTDPackage.DTD_EXTERNAL_ENTITY :
-				return createDTDExternalEntity();
-			case DTDPackage.DTD_INTERNAL_ENTITY :
-				return createDTDInternalEntity();
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE :
-				return createDTDParameterEntityReference();
-			case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT :
-				return createDTDEntityReferenceContent();
-		}
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public Object createFromString(EDataType eDataType, String initialValue) {
-		switch (eDataType.getClassifierID()) {
-			case DTDPackage.DTD_OCCURRENCE_TYPE :
-				return DTDOccurrenceType.get(initialValue);
-			case DTDPackage.DTD_DEFAULT_KIND :
-				return DTDDefaultKind.get(initialValue);
-			case DTDPackage.DTD_BASIC_TYPE_KIND :
-				return DTDBasicTypeKind.get(initialValue);
-			case DTDPackage.DTD_ENUM_GROUP_KIND :
-				return DTDEnumGroupKind.get(initialValue);
-			case DTDPackage.DTD_GROUP_KIND :
-				return DTDGroupKind.get(initialValue);
-			case DTDPackage.XML_SCHEMA_DEFINED_TYPE :
-				return XMLSchemaDefinedType.get(initialValue);
-		}
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String convertToString(EDataType eDataType, Object instanceValue) {
-		switch (eDataType.getClassifierID()) {
-			case DTDPackage.DTD_OCCURRENCE_TYPE :
-				return instanceValue == null ? null : instanceValue.toString();
-			case DTDPackage.DTD_DEFAULT_KIND :
-				return instanceValue == null ? null : instanceValue.toString();
-			case DTDPackage.DTD_BASIC_TYPE_KIND :
-				return instanceValue == null ? null : instanceValue.toString();
-			case DTDPackage.DTD_ENUM_GROUP_KIND :
-				return instanceValue == null ? null : instanceValue.toString();
-			case DTDPackage.DTD_GROUP_KIND :
-				return instanceValue == null ? null : instanceValue.toString();
-			case DTDPackage.XML_SCHEMA_DEFINED_TYPE :
-				return instanceValue == null ? null : instanceValue.toString();
-		}
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDGroupContent createDTDGroupContent() {
-		DTDGroupContentImpl dtdGroupContent = new DTDGroupContentImpl();
-		return dtdGroupContent;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDAttribute createDTDAttribute() {
-		DTDAttributeImpl dtdAttribute = new DTDAttributeImpl();
-		return dtdAttribute;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDElement createDTDElement() {
-		DTDElementImpl dtdElement = new DTDElementImpl();
-		return dtdElement;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEmptyContent createDTDEmptyContent() {
-		DTDEmptyContentImpl dtdEmptyContent = new DTDEmptyContentImpl();
-		return dtdEmptyContent;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDAnyContent createDTDAnyContent() {
-		DTDAnyContentImpl dtdAnyContent = new DTDAnyContentImpl();
-		return dtdAnyContent;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDPCDataContent createDTDPCDataContent() {
-		DTDPCDataContentImpl dtdpcDataContent = new DTDPCDataContentImpl();
-		return dtdpcDataContent;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDElementReferenceContent createDTDElementReferenceContent() {
-		DTDElementReferenceContentImpl dtdElementReferenceContent = new DTDElementReferenceContentImpl();
-		return dtdElementReferenceContent;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDFile createDTDFile() {
-		DTDFileImpl dtdFile = new DTDFileImpl();
-		return dtdFile;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDBasicType createDTDBasicType() {
-		DTDBasicTypeImpl dtdBasicType = new DTDBasicTypeImpl();
-		return dtdBasicType;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEnumerationType createDTDEnumerationType() {
-		DTDEnumerationTypeImpl dtdEnumerationType = new DTDEnumerationTypeImpl();
-		return dtdEnumerationType;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDNotation createDTDNotation() {
-		DTDNotationImpl dtdNotation = new DTDNotationImpl();
-		return dtdNotation;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntity createDTDEntity() {
-		DTDEntityImpl dtdEntity = new DTDEntityImpl();
-		return dtdEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDExternalEntity createDTDExternalEntity() {
-		DTDExternalEntityImpl dtdExternalEntity = new DTDExternalEntityImpl();
-		return dtdExternalEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDInternalEntity createDTDInternalEntity() {
-		DTDInternalEntityImpl dtdInternalEntity = new DTDInternalEntityImpl();
-		return dtdInternalEntity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDParameterEntityReference createDTDParameterEntityReference() {
-		DTDParameterEntityReferenceImpl dtdParameterEntityReference = new DTDParameterEntityReferenceImpl();
-		return dtdParameterEntityReference;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntityReferenceContent createDTDEntityReferenceContent() {
-		DTDEntityReferenceContentImpl dtdEntityReferenceContent = new DTDEntityReferenceContentImpl();
-		return dtdEntityReferenceContent;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDPackage getDTDPackage() {
-		return (DTDPackage) getEPackage();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static DTDPackage getPackage() {
-		return DTDPackage.eINSTANCE;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDFileImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDFileImpl.java
deleted file mode 100644
index b68133f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDFileImpl.java
+++ /dev/null
@@ -1,821 +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.dtd.core.internal.emf.impl;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-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.ENamedElement;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENamedElementImpl;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPathnameUtil;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPrinter;
-
-
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>File</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDFileImpl#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDFileImpl#isParseError <em>Parse Error</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDFileImpl#getDTDContent <em>DTD Content</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDFileImpl#getDTDEnumerationType <em>DTD Enumeration Type</em>}</li>
- * </ul>
- * </p>
- * 
- * @generated
- */
-public class DTDFileImpl extends ENamedElementImpl implements DTDFile, ENamedElement {
-
-	public EList getDTDObject() {
-		return getDTDContent();
-	}
-
-
-	public List listDTDElement() {
-		return getContentListOf(DTDElement.class, null);
-	}
-
-
-	public List listDTDNotation() {
-		return getContentListOf(DTDNotation.class, null);
-	}
-
-	public List listDTDEntity() {
-		return getContentListOf(DTDEntity.class, null);
-	}
-
-	public List listDTDParameterEntityReference() {
-		return getContentListOf(DTDParameterEntityReference.class, null);
-	}
-
-	public List listDTDElementAndDTDParameterEntityReference() {
-		return getContentListOf(DTDElement.class, DTDParameterEntityReference.class);
-	}
-
-	private List getContentListOf(Class class1, Class class2) {
-		List v = new ArrayList();
-		Iterator i = getDTDContent().iterator();
-		while (i.hasNext()) {
-			Object obj = i.next();
-			if (class1.isInstance(obj)) {
-				v.add(obj);
-			}
-			else if ((class2 != null) && (class2.isInstance(obj))) {
-				v.add(obj);
-			}
-		}
-		return v;
-	}
-
-	public DTDElement findElement(String name) {
-		for (Iterator i = listDTDElement().iterator(); i.hasNext();) {
-			DTDElement e = (DTDElement) i.next();
-			if (e.getName().equals(name)) {
-				return e;
-			}
-		}
-		return null;
-	}
-
-	public DTDEntity findEntity(String name) {
-		for (Iterator i = listDTDEntity().iterator(); i.hasNext();) {
-			DTDEntity e = (DTDEntity) i.next();
-			if (e.getName().equals(name)) {
-				return e;
-			}
-		}
-		return null;
-	}
-
-	public DTDNotation findNotation(String name) {
-		for (Iterator i = listDTDNotation().iterator(); i.hasNext();) {
-			DTDNotation e = (DTDNotation) i.next();
-			if (e.getName().equals(name)) {
-				return e;
-			}
-		}
-		return null;
-	}
-
-	public DTDParameterEntityReference findParameterEntityReference(String name) {
-		for (Iterator i = listDTDParameterEntityReference().iterator(); i.hasNext();) {
-			DTDParameterEntityReference e = (DTDParameterEntityReference) i.next();
-			if (e.getName().equals(name)) {
-				return e;
-			}
-		}
-		return null;
-	}
-
-	public String unparse(boolean include) {
-		DTDPrinter printer = new DTDPrinter(true);
-		printer.visitDTDFile(this);
-		return printer.getBuffer().toString();
-	}
-
-
-	public String getPathname() {
-		return "";
-	}
-
-
-	public DTDObject findObject(String relativePath) {
-		Object[] result = DTDPathnameUtil.parsePathComponent(relativePath);
-
-
-		String type = (String) result[0];
-
-
-		if (type == null)
-			return null;
-
-
-		String name = (String) result[1];
-
-		DTDObject obj = null;
-		if (type.equals("Elem")) {
-			obj = findElement(name);
-		}
-		else if (type.equals("Ent")) {
-			obj = findEntity(name);
-		}
-		else if (type.equals("PEnt")) {
-			obj = findParameterEntityReference(name);
-		}
-		else if (type.equals("Nota")) {
-			obj = findNotation(name);
-		}
-		else {
-			return null;
-		}
-
-
-		String restPath = (String) result[3];
-
-		if ((restPath == null) || (obj == null)) {
-			return obj;
-		}
-		else {
-			return obj.findObject(restPath);
-		}
-	}
-
-
-
-	/**
-	 * The default value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String COMMENT_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected String comment = COMMENT_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #isParseError() <em>Parse Error</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #isParseError()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final boolean PARSE_ERROR_EDEFAULT = false;
-
-	/**
-	 * The cached value of the '{@link #isParseError() <em>Parse Error</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #isParseError()
-	 * @generated
-	 * @ordered
-	 */
-	protected boolean parseError = PARSE_ERROR_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getDTDContent() <em>DTD Content</em>}'
-	 * containment reference list. <!-- begin-user-doc --> <!-- end-user-doc
-	 * -->
-	 * 
-	 * @see #getDTDContent()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList dtdContent = null;
-
-	/**
-	 * The cached value of the '{@link #getDTDEnumerationType() <em>DTD Enumeration Type</em>}'
-	 * containment reference list. <!-- begin-user-doc --> <!-- end-user-doc
-	 * -->
-	 * 
-	 * @see #getDTDEnumerationType()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList dtdEnumerationType = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected DTDFileImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDFile();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String getComment() {
-		return comment;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setComment(String newComment) {
-		String oldComment = comment;
-		comment = newComment;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_FILE__COMMENT, oldComment, comment));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean isParseError() {
-		return parseError;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setParseError(boolean newParseError) {
-		boolean oldParseError = parseError;
-		parseError = newParseError;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_FILE__PARSE_ERROR, oldParseError, parseError));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EList getDTDContent() {
-		if (dtdContent == null) {
-			dtdContent = new EObjectContainmentWithInverseEList(DTDContent.class, this, DTDPackage.DTD_FILE__DTD_CONTENT, DTDPackage.DTD_CONTENT__DTD_FILE);
-		}
-		return dtdContent;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EList getDTDEnumerationType() {
-		if (dtdEnumerationType == null) {
-			dtdEnumerationType = new EObjectContainmentWithInverseEList(DTDEnumerationType.class, this, DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE, DTDPackage.DTD_ENUMERATION_TYPE__DTD_FILE);
-		}
-		return dtdEnumerationType;
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_FILE__DTD_CONTENT :
-					return ((InternalEList) getDTDContent()).basicAdd(otherEnd, msgs);
-				case DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE :
-					return ((InternalEList) getDTDEnumerationType()).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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_FILE__DTD_CONTENT :
-					return ((InternalEList) getDTDContent()).basicRemove(otherEnd, msgs);
-				case DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE :
-					return ((InternalEList) getDTDEnumerationType()).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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_FILE__COMMENT :
-				return getComment();
-			case DTDPackage.DTD_FILE__PARSE_ERROR :
-				return isParseError() ? Boolean.TRUE : Boolean.FALSE;
-			case DTDPackage.DTD_FILE__DTD_CONTENT :
-				return getDTDContent();
-			case DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE :
-				return getDTDEnumerationType();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_FILE__COMMENT :
-				setComment((String) newValue);
-				return;
-			case DTDPackage.DTD_FILE__PARSE_ERROR :
-				setParseError(((Boolean) newValue).booleanValue());
-				return;
-			case DTDPackage.DTD_FILE__DTD_CONTENT :
-				getDTDContent().clear();
-				getDTDContent().addAll((Collection) newValue);
-				return;
-			case DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE :
-				getDTDEnumerationType().clear();
-				getDTDEnumerationType().addAll((Collection) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_FILE__COMMENT :
-				setComment(COMMENT_EDEFAULT);
-				return;
-			case DTDPackage.DTD_FILE__PARSE_ERROR :
-				setParseError(PARSE_ERROR_EDEFAULT);
-				return;
-			case DTDPackage.DTD_FILE__DTD_CONTENT :
-				getDTDContent().clear();
-				return;
-			case DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE :
-				getDTDEnumerationType().clear();
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_FILE__COMMENT :
-				return COMMENT_EDEFAULT == null ? comment != null : !COMMENT_EDEFAULT.equals(comment);
-			case DTDPackage.DTD_FILE__PARSE_ERROR :
-				return parseError != PARSE_ERROR_EDEFAULT;
-			case DTDPackage.DTD_FILE__DTD_CONTENT :
-				return dtdContent != null && !getDTDContent().isEmpty();
-			case DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE :
-				return dtdEnumerationType != null && !getDTDEnumerationType().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(" (comment: ");
-		result.append(comment);
-		result.append(", parseError: ");
-		result.append(parseError);
-		result.append(')');
-		return result.toString();
-	}
-
-} // DTDFileImpl
-
-// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-//
-
-// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-// //public class DTDFileImpl extends ENamespaceImpl implements DTDFile,
-// ENamespace{
-// -------------------GENERICRULES.JSED-------------------
-
-// public static final String copyright = "(c) Copyright IBM Corporation
-// 2002.";
-//
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected String comment = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected Boolean parseError = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected EList dtdContent = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected EList dtdEnumerationType = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setComment = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setParseError = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EObject initInstance() {
-// setEMetaObj(eClassDTDFile());
-// initInstanceDelegates();
-// return this;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public DTDPackage ePackageDTD() {
-// return
-// (DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EClass eClassDTDFile() {
-// return
-// ((DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI)).getDTDFile();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public String getComment() {
-// if (this.setComment) return this.comment;
-// else return
-// (String)DTDPackage.eINSTANCE.getDTDFile_Comment().getDefaultValue();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setComment(String value) {
-// refSetValueForSimpleSF(DTDPackage.eINSTANCE.getDTDFile_Comment(),this.comment,value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetComment() {
-// eNotify(refBasicUnsetValue(DTDPackage.eINSTANCE.getDTDFile_Comment()));
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetComment() {
-// return setComment;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public Boolean getParseError() {
-// if (this.setParseError) return this.parseError;
-// else return
-// (Boolean)DTDPackage.eINSTANCE.getDTDFile_ParseError().getDefaultValue();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public boolean isParseError() {
-// Boolean result = getParseError();
-// return result != null ? result.booleanValue() : false;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setParseError(Boolean value) {
-// refSetValueForSimpleSF(DTDPackage.eINSTANCE.getDTDFile_ParseError(),this.parseError,value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setParseError(boolean value) {
-// setParseError(value?Boolean.TRUE:Boolean.FALSE);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetParseError() {
-// eNotify(refBasicUnsetValue(DTDPackage.eINSTANCE.getDTDFile_ParseError()));
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetParseError() {
-// return setParseError;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public EList getDTDContent() {
-// if (this.dtdContent==null) {
-// this.dtdContent=newCollection(this,DTDPackage.eINSTANCE.getDTDFile_DTDContent(),
-// true);
-// }
-// return this.dtdContent;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public EList getDTDEnumerationType() {
-// if (this.dtdEnumerationType==null) {
-// this.dtdEnumerationType=newCollection(this,DTDPackage.eINSTANCE.getDTDFile_DTDEnumerationType(),
-// true);
-// }
-// return this.dtdEnumerationType;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Object eGet(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eGet(feature);
-// }
-// switch (eClassDTDFile().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_FILE__COMMENT: return getComment();
-// case DTDPackage.DTD_FILE__PARSE_ERROR: return getParseError();
-// case DTDPackage.DTD_FILE__DTD_CONTENT: return getDTDContent();
-// case DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE: return
-// getDTDEnumerationType();
-//
-// }
-// return super.eGet(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Object refBasicValue(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.refBasicValue(feature);
-// }
-// switch (eClassDTDFile().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_FILE__COMMENT:
-// return this.setComment? this.comment : null;
-// case DTDPackage.DTD_FILE__PARSE_ERROR:
-// return this.setParseError? this.parseError : null;
-// case DTDPackage.DTD_FILE__DTD_CONTENT:
-// return this.dtdContent;
-// case DTDPackage.DTD_FILE__DTD_ENUMERATION_TYPE:
-// return this.dtdEnumerationType;
-//
-// }
-// return super.refBasicValue(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean eIsSet(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eIsSet(feature);
-// }
-// switch (eClassDTDFile().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_FILE__COMMENT: return isSetComment();
-// case DTDPackage.DTD_FILE__PARSE_ERROR: return isSetParseError();
-//
-// }
-// return super.eIsSet(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void eSet(EStructuralFeature feature, Object newValue) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// super.eSet(feature, newValue);
-// }
-// switch (eClassDTDFile().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_FILE__COMMENT: {
-// setComment((String)newValue);
-// return;
-// }
-// case DTDPackage.DTD_FILE__PARSE_ERROR: {
-// setParseError((newValue instanceof
-// String)?Boolean.valueOf((String)newValue):(Boolean)newValue);
-// return;
-// }
-//
-// }
-// super.eSet(feature, newValue);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Notification eBasicSet(EStructuralFeature feature, Object newValue)
-// {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eBasicSet(feature, newValue);
-// }
-// switch (eClassDTDFile().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_FILE__COMMENT: {
-// Object oldValue = this.comment;
-// this.comment = (String)newValue;
-// this.setComment = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDFile_Comment(),oldValue,newValue);
-// }
-// case DTDPackage.DTD_FILE__PARSE_ERROR: {
-// Object oldValue = this.parseError;
-// this.parseError = (Boolean)newValue;
-// this.setParseError = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDFile_ParseError(),oldValue,newValue);
-// }
-//
-// }
-// return super.eBasicSet(feature, newValue);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void eUnset(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// super.eUnset(feature);
-// }
-// switch (eClassDTDFile().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_FILE__COMMENT: {
-// unsetComment();
-// return;
-// }
-// case DTDPackage.DTD_FILE__PARSE_ERROR: {
-// unsetParseError();
-// return;
-// }
-//
-// }
-// super.eUnset(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Notification refBasicUnsetValue(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.refBasicUnsetValue(feature);
-// }
-// switch (eClassDTDFile().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_FILE__COMMENT: {
-// Object oldValue = this.comment;
-// this.comment = null;
-// this.setComment = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDFile_Comment(),oldValue,getComment());
-// }
-// case DTDPackage.DTD_FILE__PARSE_ERROR: {
-// Object oldValue = this.parseError;
-// this.parseError = null;
-// this.setParseError = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDFile_ParseError(),oldValue,getParseError());
-// }
-//
-// }
-// return super.refBasicUnsetValue(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public String toString() {
-// String out="("; //$NON-NLS-2$//$NON-NLS-1$
-// boolean first=true;
-// boolean emptyList=true;
-// if(isSetComment()) {
-// if(!emptyList) out+=", "; //$NON-NLS-2$//$NON-NLS-1$
-// out+="comment: "+this.comment; //$NON-NLS-2$//$NON-NLS-1$
-// first=false;
-// emptyList=false;
-// }
-// if(isSetParseError()) {
-// if(!emptyList) out+=", "; //$NON-NLS-2$//$NON-NLS-1$
-// out+="parseError: "+this.parseError; //$NON-NLS-2$//$NON-NLS-1$
-// first=false;
-// emptyList=false;
-// }
-// out+=")";
-// if (!first) return super.toString() + " " +out; //$NON-NLS-2$//$NON-NLS-1$
-// return super.toString();
-// }
-// }
-// -------------------GENERICRULES.JSED-------------------
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDGroupContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDGroupContentImpl.java
deleted file mode 100644
index 4ee3821..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDGroupContentImpl.java
+++ /dev/null
@@ -1,292 +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.dtd.core.internal.emf.impl;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPrinter;
-
-
-/**
- * @generated
- */
-public class DTDGroupContentImpl extends DTDRepeatableContentImpl implements DTDGroupContent {
-	/**
-	 * The default value of the '{@link #getGroupKind() <em>Group Kind</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getGroupKind()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final DTDGroupKind GROUP_KIND_EDEFAULT = DTDGroupKind.SEQUENCE_LITERAL;
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected DTDGroupKind groupKind = GROUP_KIND_EDEFAULT;
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected EList content = null;
-
-	public DTDGroupContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDGroupContent();
-	}
-
-	public int getContentPosition(DTDElementContent content) {
-		EList list = getContent();
-		return list.indexOf(content);
-	}
-
-	public String getContentName() {
-		return "";
-	}
-
-	public String getContentDetail() {
-		DTDPrinter printer = new DTDPrinter(false);
-		printer.visitDTDGroupContent(this);
-
-		return printer.getBuffer().toString();
-	}
-
-	public String unparseRepeatableContent() {
-		return "";
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public DTDGroupKind getGroupKind() {
-		return groupKind;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setGroupKind(DTDGroupKind newGroupKind) {
-		DTDGroupKind oldGroupKind = groupKind;
-		groupKind = newGroupKind == null ? GROUP_KIND_EDEFAULT : newGroupKind;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_GROUP_CONTENT__GROUP_KIND, oldGroupKind, groupKind));
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public EList getContent() {
-		if (content == null) {
-			content = new EObjectContainmentWithInverseEList(DTDElementContent.class, this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDPackage.DTD_ELEMENT_CONTENT__GROUP);
-		}
-		return content;
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_GROUP_CONTENT__GROUP :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_GROUP_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_GROUP_CONTENT__ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_GROUP_CONTENT__ELEMENT, msgs);
-				case DTDPackage.DTD_GROUP_CONTENT__CONTENT :
-					return ((InternalEList) getContent()).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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_GROUP_CONTENT__GROUP :
-					return eBasicSetContainer(null, DTDPackage.DTD_GROUP_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_GROUP_CONTENT__ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_GROUP_CONTENT__ELEMENT, msgs);
-				case DTDPackage.DTD_GROUP_CONTENT__CONTENT :
-					return ((InternalEList) getContent()).basicRemove(otherEnd, 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 DTDPackage.DTD_GROUP_CONTENT__GROUP :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-				case DTDPackage.DTD_GROUP_CONTENT__ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_GROUP_CONTENT__GROUP :
-				return getGroup();
-			case DTDPackage.DTD_GROUP_CONTENT__ELEMENT :
-				return getElement();
-			case DTDPackage.DTD_GROUP_CONTENT__OCCURRENCE :
-				return getOccurrence();
-			case DTDPackage.DTD_GROUP_CONTENT__GROUP_KIND :
-				return getGroupKind();
-			case DTDPackage.DTD_GROUP_CONTENT__CONTENT :
-				return getContent();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_GROUP_CONTENT__GROUP :
-				return getGroup() != null;
-			case DTDPackage.DTD_GROUP_CONTENT__ELEMENT :
-				return getElement() != null;
-			case DTDPackage.DTD_GROUP_CONTENT__OCCURRENCE :
-				return occurrence != OCCURRENCE_EDEFAULT;
-			case DTDPackage.DTD_GROUP_CONTENT__GROUP_KIND :
-				return groupKind != GROUP_KIND_EDEFAULT;
-			case DTDPackage.DTD_GROUP_CONTENT__CONTENT :
-				return content != null && !getContent().isEmpty();
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_GROUP_CONTENT__GROUP :
-				setGroup((DTDGroupContent) newValue);
-				return;
-			case DTDPackage.DTD_GROUP_CONTENT__ELEMENT :
-				setElement((DTDElement) newValue);
-				return;
-			case DTDPackage.DTD_GROUP_CONTENT__OCCURRENCE :
-				setOccurrence((DTDOccurrenceType) newValue);
-				return;
-			case DTDPackage.DTD_GROUP_CONTENT__GROUP_KIND :
-				setGroupKind((DTDGroupKind) newValue);
-				return;
-			case DTDPackage.DTD_GROUP_CONTENT__CONTENT :
-				getContent().clear();
-				getContent().addAll((Collection) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_GROUP_CONTENT__GROUP :
-				setGroup((DTDGroupContent) null);
-				return;
-			case DTDPackage.DTD_GROUP_CONTENT__ELEMENT :
-				setElement((DTDElement) null);
-				return;
-			case DTDPackage.DTD_GROUP_CONTENT__OCCURRENCE :
-				setOccurrence(OCCURRENCE_EDEFAULT);
-				return;
-			case DTDPackage.DTD_GROUP_CONTENT__GROUP_KIND :
-				setGroupKind(GROUP_KIND_EDEFAULT);
-				return;
-			case DTDPackage.DTD_GROUP_CONTENT__CONTENT :
-				getContent().clear();
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public String toString() {
-		if (eIsProxy())
-			return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (groupKind: ");
-		result.append(groupKind);
-		result.append(')');
-		return result.toString();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDIdHelper.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDIdHelper.java
deleted file mode 100644
index 3c90ea4..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDIdHelper.java
+++ /dev/null
@@ -1,88 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-
-public class DTDIdHelper {
-	public DTDIdHelper() {
-	}
-
-	public String computeContentId(DTDElementContent content) {
-		String id = "";
-		if (content instanceof DTDEmptyContent) {
-			id = "#EMPTY";
-		}
-		else if (content instanceof DTDPCDataContent) {
-			id = "#PCDATA";
-		}
-		else if (content instanceof DTDEmptyContent) {
-			id = "#EMPTY";
-		}
-		else if (content instanceof DTDElementReferenceContent) {
-			id = "#" + ((DTDElementReferenceContent) content).getReferencedElement().getName();
-		}
-		else if (content instanceof DTDEntityReferenceContent) {
-			id = "#" + ((DTDEntityReferenceContent) content).getElementReferencedEntity().getName();
-		}
-		else if (content instanceof DTDGroupContent) {
-			id = computeGroupId((DTDGroupContent) content);
-		}
-		return id;
-	}
-
-	public String computeGroupId(DTDGroupContent grp) {
-		String groupId = "_";
-		return groupId;
-	}
-
-	/**
-	 * @generated
-	 */
-	protected String computeContentIdGen(DTDElementContent content) {
-
-		String id = "";
-		if (content instanceof DTDEmptyContent) {
-			id = "#EMPTY";
-		}
-		else if (content instanceof DTDPCDataContent) {
-			id = "#PCDATA";
-		}
-		else if (content instanceof DTDEmptyContent) {
-			id = "#EMPTY";
-		}
-		else if (content instanceof DTDElementReferenceContent) {
-			id = "#" + ((DTDElementReferenceContent) content).getReferencedElement().getName();
-		}
-		else if (content instanceof DTDEntityReferenceContent) {
-			id = "#" + ((DTDEntityReferenceContent) content).getElementReferencedEntity().getName();
-		}
-		else if (content instanceof DTDGroupContent) {
-			id = computeGroupId((DTDGroupContent) content);
-		}
-		return id;
-	}
-
-	/**
-	 * @generated
-	 */
-	protected String computeGroupIdGen(DTDGroupContent grp) {
-
-		String groupId = "_";
-		return groupId;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDInternalEntityImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDInternalEntityImpl.java
deleted file mode 100644
index 06294bd..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDInternalEntityImpl.java
+++ /dev/null
@@ -1,239 +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.dtd.core.internal.emf.impl;
-
-import java.text.CharacterIterator;
-import java.text.StringCharacterIterator;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-
-/**
- * @generated
- */
-public class DTDInternalEntityImpl extends DTDEntityContentImpl implements DTDInternalEntity {
-	/**
-	 * The default value of the '{@link #getValue() <em>Value</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getValue()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String VALUE_EDEFAULT = null;
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected String value = VALUE_EDEFAULT;
-
-	public DTDInternalEntityImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDInternalEntity();
-	}
-
-	public String unparse() {
-		StringBuffer sb = new StringBuffer(64);
-		if (getValue() == null)
-			sb.append("\"\"");
-		else {
-			sb.append("\"").append(replaceDoubleQuotes(getValue())).append("\"");
-		}
-		return sb.toString();
-	}
-
-	// this method replaces any occurrence of ' " ' with the equivalent value
-	// of &#34;
-	private String replaceDoubleQuotes(String input) {
-		StringBuffer newValue = new StringBuffer();
-
-		StringCharacterIterator characters = new StringCharacterIterator(input);
-
-		while (characters.current() != CharacterIterator.DONE) {
-			char current = characters.current();
-
-			if (current == '"') {
-				newValue.append("&#34;");
-			}
-			else {
-				newValue.append(current);
-			}
-			characters.next();
-		}
-
-		return newValue.toString();
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 */
-	public String getValue() {
-		return value;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void setValue(String newValue) {
-		String oldValue = value;
-		value = newValue;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_INTERNAL_ENTITY__VALUE, oldValue, value));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY :
-					return eBasicSetContainer(null, DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY, 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 DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ENTITY__CONTENT, DTDEntity.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY :
-				return getDTDEntity();
-			case DTDPackage.DTD_INTERNAL_ENTITY__VALUE :
-				return getValue();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY :
-				return getDTDEntity() != null;
-			case DTDPackage.DTD_INTERNAL_ENTITY__VALUE :
-				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY :
-				setDTDEntity((DTDEntity) newValue);
-				return;
-			case DTDPackage.DTD_INTERNAL_ENTITY__VALUE :
-				setValue((String) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_INTERNAL_ENTITY__DTD_ENTITY :
-				setDTDEntity((DTDEntity) null);
-				return;
-			case DTDPackage.DTD_INTERNAL_ENTITY__VALUE :
-				setValue(VALUE_EDEFAULT);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public String toString() {
-		if (eIsProxy())
-			return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (value: ");
-		result.append(value);
-		result.append(')');
-		return result.toString();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDNotationImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDNotationImpl.java
deleted file mode 100644
index 1c59b24..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDNotationImpl.java
+++ /dev/null
@@ -1,904 +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.dtd.core.internal.emf.impl;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDLexicalInfo;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPathnameUtil;
-
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Notation</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDNotationImpl#getComment <em>Comment</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDNotationImpl#getSystemID <em>System ID</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDNotationImpl#getPublicID <em>Public ID</em>}</li>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDNotationImpl#getEntity <em>Entity</em>}</li>
- * </ul>
- * </p>
- * 
- * @generated
- */
-public class DTDNotationImpl extends DTDContentImpl implements DTDNotation, DTDContent {
-
-	public String getPathname() {
-		return DTDPathnameUtil.makePath(null, "Nota", getName(), -1);
-	}
-
-
-	public DTDObject findObject(String relativePath) {
-		return null;
-	}
-
-
-	// ugly hack for now since we don't have multiple inheritance.
-	// Would rather have all this stuff in a base class but these
-	// classes are inheriting from sometimes different mof classes
-	DTDLexicalInfo lexInfo = new DTDLexicalInfo();
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset() {
-		return lexInfo.getStartOffset();
-	}
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v) {
-		lexInfo.setStartOffset(v);
-	}
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset() {
-		return lexInfo.getEndOffset();
-	}
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v) {
-		lexInfo.setEndOffset(v);
-	}
-
-	/**
-	 * The default value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String COMMENT_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getComment() <em>Comment</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getComment()
-	 * @generated
-	 * @ordered
-	 */
-	protected String comment = COMMENT_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getSystemID() <em>System ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getSystemID()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String SYSTEM_ID_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getSystemID() <em>System ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getSystemID()
-	 * @generated
-	 * @ordered
-	 */
-	protected String systemID = SYSTEM_ID_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getPublicID() <em>Public ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getPublicID()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String PUBLIC_ID_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getPublicID() <em>Public ID</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getPublicID()
-	 * @generated
-	 * @ordered
-	 */
-	protected String publicID = PUBLIC_ID_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getEntity() <em>Entity</em>}'
-	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getEntity()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList entity = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected DTDNotationImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDNotation();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String getComment() {
-		return comment;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setComment(String newComment) {
-		String oldComment = comment;
-		comment = newComment;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_NOTATION__COMMENT, oldComment, comment));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String getSystemID() {
-		return systemID;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setSystemID(String newSystemID) {
-		String oldSystemID = systemID;
-		systemID = newSystemID;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_NOTATION__SYSTEM_ID, oldSystemID, systemID));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public String getPublicID() {
-		return publicID;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setPublicID(String newPublicID) {
-		String oldPublicID = publicID;
-		publicID = newPublicID;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_NOTATION__PUBLIC_ID, oldPublicID, publicID));
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EList getEntity() {
-		if (entity == null) {
-			entity = new EObjectWithInverseResolvingEList(DTDExternalEntity.class, this, DTDPackage.DTD_NOTATION__ENTITY, DTDPackage.DTD_EXTERNAL_ENTITY__NOTATION);
-		}
-		return entity;
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_NOTATION__DTD_FILE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_NOTATION__DTD_FILE, msgs);
-				case DTDPackage.DTD_NOTATION__ENTITY :
-					return ((InternalEList) getEntity()).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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_NOTATION__DTD_FILE :
-					return eBasicSetContainer(null, DTDPackage.DTD_NOTATION__DTD_FILE, msgs);
-				case DTDPackage.DTD_NOTATION__ENTITY :
-					return ((InternalEList) getEntity()).basicRemove(otherEnd, 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 DTDPackage.DTD_NOTATION__DTD_FILE :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_FILE__DTD_CONTENT, DTDFile.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_NOTATION__DTD_FILE :
-				return getDTDFile();
-			case DTDPackage.DTD_NOTATION__COMMENT :
-				return getComment();
-			case DTDPackage.DTD_NOTATION__SYSTEM_ID :
-				return getSystemID();
-			case DTDPackage.DTD_NOTATION__PUBLIC_ID :
-				return getPublicID();
-			case DTDPackage.DTD_NOTATION__ENTITY :
-				return getEntity();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_NOTATION__DTD_FILE :
-				setDTDFile((DTDFile) newValue);
-				return;
-			case DTDPackage.DTD_NOTATION__COMMENT :
-				setComment((String) newValue);
-				return;
-			case DTDPackage.DTD_NOTATION__SYSTEM_ID :
-				setSystemID((String) newValue);
-				return;
-			case DTDPackage.DTD_NOTATION__PUBLIC_ID :
-				setPublicID((String) newValue);
-				return;
-			case DTDPackage.DTD_NOTATION__ENTITY :
-				getEntity().clear();
-				getEntity().addAll((Collection) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_NOTATION__DTD_FILE :
-				setDTDFile((DTDFile) null);
-				return;
-			case DTDPackage.DTD_NOTATION__COMMENT :
-				setComment(COMMENT_EDEFAULT);
-				return;
-			case DTDPackage.DTD_NOTATION__SYSTEM_ID :
-				setSystemID(SYSTEM_ID_EDEFAULT);
-				return;
-			case DTDPackage.DTD_NOTATION__PUBLIC_ID :
-				setPublicID(PUBLIC_ID_EDEFAULT);
-				return;
-			case DTDPackage.DTD_NOTATION__ENTITY :
-				getEntity().clear();
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_NOTATION__DTD_FILE :
-				return getDTDFile() != null;
-			case DTDPackage.DTD_NOTATION__COMMENT :
-				return COMMENT_EDEFAULT == null ? comment != null : !COMMENT_EDEFAULT.equals(comment);
-			case DTDPackage.DTD_NOTATION__SYSTEM_ID :
-				return SYSTEM_ID_EDEFAULT == null ? systemID != null : !SYSTEM_ID_EDEFAULT.equals(systemID);
-			case DTDPackage.DTD_NOTATION__PUBLIC_ID :
-				return PUBLIC_ID_EDEFAULT == null ? publicID != null : !PUBLIC_ID_EDEFAULT.equals(publicID);
-			case DTDPackage.DTD_NOTATION__ENTITY :
-				return entity != null && !getEntity().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(" (comment: ");
-		result.append(comment);
-		result.append(", systemID: ");
-		result.append(systemID);
-		result.append(", publicID: ");
-		result.append(publicID);
-		result.append(')');
-		return result.toString();
-	}
-
-} // DTDNotationImpl
-
-// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-//
-
-// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-// //public class DTDNotationImpl extends ENamespaceImpl implements
-// DTDNotation, ENamespace, DTDContent{
-// -------------------GENERICRULES.JSED-------------------
-
-// public static final String copyright = "(c) Copyright IBM Corporation
-// 2002.";
-//
-// public DTDNotationImpl()
-// {
-// super();
-// }
-// public String getPathname()
-// {
-// return DTDPathnameUtil.makePath(null, "Nota", getName(), -1);
-// }
-//
-// public DTDObject findObject(String relativePath)
-// {
-// return null;
-// }
-//
-// // ugly hack for now since we don't have multiple inheritance.
-// // Would rather have all this stuff in a base class but these
-// // classes are inheriting from sometimes different mof classes
-// DTDLexicalInfo lexInfo = new DTDLexicalInfo();
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected String comment = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected String systemID = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected String publicID = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected EList entity = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setComment = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setSystemID = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setPublicID = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// private DTDContentImpl dtdContentDelegate = null;
-// /**
-// * Get the value of startOffset.
-// * @return value of startOffset.
-// */
-// public int getStartOffset()
-// {
-// return lexInfo.getStartOffset();
-// }
-//  
-// /**
-// * Set the value of startOffset.
-// * @param v Value to assign to startOffset.
-// */
-// public void setStartOffset(int v)
-// {
-// lexInfo.setStartOffset(v);
-// }
-//  
-// /**
-// * Get the value of endOffset.
-// * @return value of endOffset.
-// */
-// public int getEndOffset()
-// {
-// return lexInfo.getEndOffset();
-// }
-//  
-// /**
-// * Set the value of endOffset.
-// * @param v Value to assign to endOffset.
-// */
-// public void setEndOffset(int v)
-// {
-// lexInfo.setEndOffset(v);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EObject initInstance() {
-// setEMetaObj(eClassDTDNotation());
-// initInstanceDelegates();
-// return this;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected void initInstanceDelegates() {
-// super.initInstanceDelegates();
-//
-// getDtdContentDelegate().refSetDelegateOwner(this);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public DTDPackage ePackageDTD() {
-// return
-// (DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EClass eClassDTDNotation() {
-// return
-// ((DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI)).getDTDNotation();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public String getComment() {
-// if (this.setComment) return this.comment;
-// else return
-// (String)DTDPackage.eINSTANCE.getDTDNotation_Comment().getDefaultValue();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setComment(String value) {
-// refSetValueForSimpleSF(DTDPackage.eINSTANCE.getDTDNotation_Comment(),this.comment,value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetComment() {
-// eNotify(refBasicUnsetValue(DTDPackage.eINSTANCE.getDTDNotation_Comment()));
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetComment() {
-// return setComment;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public String getSystemID() {
-// if (this.setSystemID) return this.systemID;
-// else return
-// (String)DTDPackage.eINSTANCE.getDTDNotation_SystemID().getDefaultValue();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setSystemID(String value) {
-// refSetValueForSimpleSF(DTDPackage.eINSTANCE.getDTDNotation_SystemID(),this.systemID,value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetSystemID() {
-// eNotify(refBasicUnsetValue(DTDPackage.eINSTANCE.getDTDNotation_SystemID()));
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetSystemID() {
-// return setSystemID;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public String getPublicID() {
-// if (this.setPublicID) return this.publicID;
-// else return
-// (String)DTDPackage.eINSTANCE.getDTDNotation_PublicID().getDefaultValue();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setPublicID(String value) {
-// refSetValueForSimpleSF(DTDPackage.eINSTANCE.getDTDNotation_PublicID(),this.publicID,value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetPublicID() {
-// eNotify(refBasicUnsetValue(DTDPackage.eINSTANCE.getDTDNotation_PublicID()));
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetPublicID() {
-// return setPublicID;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public EList getEntity() {
-// if (this.entity==null) {
-// this.entity=newCollection(this,DTDPackage.eINSTANCE.getDTDNotation_Entity(),
-// true);
-// }
-// return this.entity;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Object eGet(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eGet(feature);
-// }
-// switch (eClassDTDNotation().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_NOTATION__COMMENT: return getComment();
-// case DTDPackage.DTD_NOTATION__SYSTEM_ID: return getSystemID();
-// case DTDPackage.DTD_NOTATION__PUBLIC_ID: return getPublicID();
-// case DTDPackage.DTD_NOTATION__ENTITY: return getEntity();
-// case DTDPackage.DTD_NOTATION__DTD_FILE: return getDTDFile();
-//
-// }
-// return super.eGet(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Object refBasicValue(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.refBasicValue(feature);
-// }
-// switch (eClassDTDNotation().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_NOTATION__COMMENT:
-// return this.setComment? this.comment : null;
-// case DTDPackage.DTD_NOTATION__SYSTEM_ID:
-// return this.setSystemID? this.systemID : null;
-// case DTDPackage.DTD_NOTATION__PUBLIC_ID:
-// return this.setPublicID? this.publicID : null;
-// case DTDPackage.DTD_NOTATION__ENTITY:
-// return this.entity;
-// case DTDPackage.DTD_NOTATION__DTD_FILE: return
-// ((InternalEObject)getDtdContentDelegate()).refBasicValue(feature);
-//
-// }
-// return super.refBasicValue(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean eIsSet(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eIsSet(feature);
-// }
-// switch (eClassDTDNotation().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_NOTATION__COMMENT: return isSetComment();
-// case DTDPackage.DTD_NOTATION__SYSTEM_ID: return isSetSystemID();
-// case DTDPackage.DTD_NOTATION__PUBLIC_ID: return isSetPublicID();
-// case DTDPackage.DTD_NOTATION__DTD_FILE: return isSetDTDFile();
-//
-// }
-// return super.eIsSet(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void eSet(EStructuralFeature feature, Object newValue) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// super.eSet(feature, newValue);
-// }
-// switch (eClassDTDNotation().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_NOTATION__COMMENT: {
-// setComment((String)newValue);
-// return;
-// }
-// case DTDPackage.DTD_NOTATION__SYSTEM_ID: {
-// setSystemID((String)newValue);
-// return;
-// }
-// case DTDPackage.DTD_NOTATION__PUBLIC_ID: {
-// setPublicID((String)newValue);
-// return;
-// }
-// case DTDPackage.DTD_NOTATION__DTD_FILE: {
-// setDTDFile((DTDFile)newValue);
-// return;
-// }
-//
-// }
-// super.eSet(feature, newValue);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Notification eBasicSet(EStructuralFeature feature, Object newValue)
-// {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eBasicSet(feature, newValue);
-// }
-// switch (eClassDTDNotation().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_NOTATION__COMMENT: {
-// Object oldValue = this.comment;
-// this.comment = (String)newValue;
-// this.setComment = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDNotation_Comment(),oldValue,newValue);
-// }
-// case DTDPackage.DTD_NOTATION__SYSTEM_ID: {
-// Object oldValue = this.systemID;
-// this.systemID = (String)newValue;
-// this.setSystemID = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDNotation_SystemID(),oldValue,newValue);
-// }
-// case DTDPackage.DTD_NOTATION__PUBLIC_ID: {
-// Object oldValue = this.publicID;
-// this.publicID = (String)newValue;
-// this.setPublicID = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDNotation_PublicID(),oldValue,newValue);
-// }
-//
-// }
-// return super.eBasicSet(feature, newValue);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void eUnset(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// super.eUnset(feature);
-// }
-// switch (eClassDTDNotation().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_NOTATION__COMMENT: {
-// unsetComment();
-// return;
-// }
-// case DTDPackage.DTD_NOTATION__SYSTEM_ID: {
-// unsetSystemID();
-// return;
-// }
-// case DTDPackage.DTD_NOTATION__PUBLIC_ID: {
-// unsetPublicID();
-// return;
-// }
-// case DTDPackage.DTD_NOTATION__DTD_FILE: {
-// unsetDTDFile();
-// return;
-// }
-//
-// }
-// super.eUnset(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Notification refBasicUnsetValue(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.refBasicUnsetValue(feature);
-// }
-// switch (eClassDTDNotation().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_NOTATION__COMMENT: {
-// Object oldValue = this.comment;
-// this.comment = null;
-// this.setComment = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDNotation_Comment(),oldValue,getComment());
-// }
-// case DTDPackage.DTD_NOTATION__SYSTEM_ID: {
-// Object oldValue = this.systemID;
-// this.systemID = null;
-// this.setSystemID = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDNotation_SystemID(),oldValue,getSystemID());
-// }
-// case DTDPackage.DTD_NOTATION__PUBLIC_ID: {
-// Object oldValue = this.publicID;
-// this.publicID = null;
-// this.setPublicID = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDNotation_PublicID(),oldValue,getPublicID());
-// }
-//
-// }
-// return super.refBasicUnsetValue(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected DTDContentImpl getDtdContentDelegate() {
-// if (dtdContentDelegate == null) {
-// DTDPackage pkg =
-// (DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI);
-// dtdContentDelegate=(DTDContentImpl)pkg.eCreateInstance(pkg.DTD_CONTENT);
-// dtdContentDelegate.initInstance();
-// }
-// return dtdContentDelegate;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EClass eClassDTDContent() {
-// return getDtdContentDelegate().eClass();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public DTDFile getDTDFile() {
-// return getDtdContentDelegate().getDTDFile();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setDTDFile(DTDFile value) {
-// getDtdContentDelegate().setDTDFile(value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetDTDFile() {
-// getDtdContentDelegate().unsetDTDFile();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetDTDFile() {
-// return getDtdContentDelegate().isSetDTDFile();
-// }
-// }
-// -------------------GENERICRULES.JSED-------------------
-
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDPCDataContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDPCDataContentImpl.java
deleted file mode 100644
index 7f2c73e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDPCDataContentImpl.java
+++ /dev/null
@@ -1,171 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-
-/**
- * @generated
- */
-public class DTDPCDataContentImpl extends DTDElementContentImpl implements DTDPCDataContent {
-
-	public DTDPCDataContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDPCDataContent();
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_PC_DATA_CONTENT__GROUP :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_PC_DATA_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_PC_DATA_CONTENT__GROUP :
-					return eBasicSetContainer(null, DTDPackage.DTD_PC_DATA_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT, 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 DTDPackage.DTD_PC_DATA_CONTENT__GROUP :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-				case DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_PC_DATA_CONTENT__GROUP :
-				return getGroup();
-			case DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT :
-				return getElement();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_PC_DATA_CONTENT__GROUP :
-				setGroup((DTDGroupContent) newValue);
-				return;
-			case DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT :
-				setElement((DTDElement) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_PC_DATA_CONTENT__GROUP :
-				setGroup((DTDGroupContent) null);
-				return;
-			case DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT :
-				setElement((DTDElement) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_PC_DATA_CONTENT__GROUP :
-				return getGroup() != null;
-			case DTDPackage.DTD_PC_DATA_CONTENT__ELEMENT :
-				return getElement() != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	public String getContentName() {
-		return "#PCDATA";
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDPackageImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDPackageImpl.java
deleted file mode 100644
index 3ab4269..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDPackageImpl.java
+++ /dev/null
@@ -1,1217 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EOperation;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.impl.EPackageImpl;
-import org.eclipse.emf.ecore.impl.EcorePackageImpl;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFactory;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent;
-import org.eclipse.wst.dtd.core.internal.emf.XMLSchemaDefinedType;
-
-
-/**
- * @lastgen class DTDPackageImpl extends EPackageImpl implements DTDPackage,
- *          EPackage {}
- */
-public class DTDPackageImpl extends EPackageImpl implements DTDPackage {
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdElementContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdGroupContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdAttributeEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdElementEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdEmptyContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdAnyContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdpcDataContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdElementReferenceContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdRepeatableContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdFileEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdBasicTypeEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdEnumerationTypeEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdNotationEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdEntityEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdEntityContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdExternalEntityEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdInternalEntityEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdParameterEntityReferenceEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdEntityReferenceContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EClass dtdContentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EEnum dtdOccurrenceTypeEEnum = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EEnum dtdDefaultKindEEnum = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EEnum dtdBasicTypeKindEEnum = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EEnum dtdEnumGroupKindEEnum = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EEnum dtdGroupKindEEnum = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	private EEnum xmlSchemaDefinedTypeEEnum = 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.dtd.core.internal.emf.DTDPackage#eNS_URI
-	 * @see #init()
-	 * @generated
-	 */
-	private DTDPackageImpl() {
-		super(eNS_URI, DTDFactory.eINSTANCE);
-	}
-
-	// public DTDPackageImpl()
-	// {
-	// super(eNS_URI);
-	// initializePackage(null);
-	// }
-
-
-	/**
-	 * 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 DTDPackage init() {
-		// Obtain or create and register package and interdependencies
-		DTDPackageImpl theDTDPackage = (DTDPackageImpl) (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof EPackage ? EPackage.Registry.INSTANCE.get(eNS_URI) : new DTDPackageImpl());
-		EcorePackageImpl theEcorePackage = (EcorePackageImpl) (EPackage.Registry.INSTANCE.get(EcorePackage.eNS_URI) instanceof EPackage ? EPackage.Registry.INSTANCE.get(EcorePackage.eNS_URI) : EcorePackage.eINSTANCE);
-
-		// Step 1: create meta-model objects
-		theDTDPackage.createPackageContents();
-		theEcorePackage.createPackageContents();
-
-		// Step 2: complete initialization
-		theDTDPackage.initializePackageContents();
-		theEcorePackage.initializePackageContents();
-
-		return theDTDPackage;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDElementContent() {
-		return dtdElementContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDElementContent_Group() {
-		return (EReference) dtdElementContentEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDElementContent_Element() {
-		return (EReference) dtdElementContentEClass.getEReferences().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDGroupContent() {
-		return dtdGroupContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDGroupContent_GroupKind() {
-		return (EAttribute) dtdGroupContentEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDGroupContent_Content() {
-		return (EReference) dtdGroupContentEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDAttribute() {
-		return dtdAttributeEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDAttribute_Comment() {
-		return (EAttribute) dtdAttributeEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDAttribute_DefaultKind() {
-		return (EAttribute) dtdAttributeEClass.getEAttributes().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDAttribute_DefaultValueString() {
-		return (EAttribute) dtdAttributeEClass.getEAttributes().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDAttribute_AttributeNameReferencedEntity() {
-		return (EReference) dtdAttributeEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDAttribute_AttributeTypeReferencedEntity() {
-		return (EReference) dtdAttributeEClass.getEReferences().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDAttribute_DTDElement() {
-		return (EReference) dtdAttributeEClass.getEReferences().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDElement() {
-		return dtdElementEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDElement_Comment() {
-		return (EAttribute) dtdElementEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDElement_Content() {
-		return (EReference) dtdElementEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDElement_DTDAttribute() {
-		return (EReference) dtdElementEClass.getEReferences().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDEmptyContent() {
-		return dtdEmptyContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDAnyContent() {
-		return dtdAnyContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDPCDataContent() {
-		return dtdpcDataContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDElementReferenceContent() {
-		return dtdElementReferenceContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDElementReferenceContent_ReferencedElement() {
-		return (EReference) dtdElementReferenceContentEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDRepeatableContent() {
-		return dtdRepeatableContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDRepeatableContent_Occurrence() {
-		return (EAttribute) dtdRepeatableContentEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDFile() {
-		return dtdFileEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDFile_Comment() {
-		return (EAttribute) dtdFileEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDFile_ParseError() {
-		return (EAttribute) dtdFileEClass.getEAttributes().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDFile_DTDContent() {
-		return (EReference) dtdFileEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDFile_DTDEnumerationType() {
-		return (EReference) dtdFileEClass.getEReferences().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDBasicType() {
-		return dtdBasicTypeEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDBasicType_Kind() {
-		return (EAttribute) dtdBasicTypeEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDEnumerationType() {
-		return dtdEnumerationTypeEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDEnumerationType_Kind() {
-		return (EAttribute) dtdEnumerationTypeEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDEnumerationType_DTDFile() {
-		return (EReference) dtdEnumerationTypeEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDNotation() {
-		return dtdNotationEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDNotation_Comment() {
-		return (EAttribute) dtdNotationEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDNotation_SystemID() {
-		return (EAttribute) dtdNotationEClass.getEAttributes().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDNotation_PublicID() {
-		return (EAttribute) dtdNotationEClass.getEAttributes().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDNotation_Entity() {
-		return (EReference) dtdNotationEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDEntity() {
-		return dtdEntityEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDEntity_Comment() {
-		return (EAttribute) dtdEntityEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDEntity_ParameterEntity() {
-		return (EAttribute) dtdEntityEClass.getEAttributes().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDEntity_Content() {
-		return (EReference) dtdEntityEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDEntity_ParmEntityRef() {
-		return (EReference) dtdEntityEClass.getEReferences().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDEntity_EntityReference() {
-		return (EReference) dtdEntityEClass.getEReferences().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDEntity_AttributeNameReference() {
-		return (EReference) dtdEntityEClass.getEReferences().get(3);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDEntity_AttributeTypeReference() {
-		return (EReference) dtdEntityEClass.getEReferences().get(4);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDEntityContent() {
-		return dtdEntityContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDEntityContent_DTDEntity() {
-		return (EReference) dtdEntityContentEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDExternalEntity() {
-		return dtdExternalEntityEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDExternalEntity_SystemID() {
-		return (EAttribute) dtdExternalEntityEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDExternalEntity_PublicID() {
-		return (EAttribute) dtdExternalEntityEClass.getEAttributes().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDExternalEntity_Notation() {
-		return (EReference) dtdExternalEntityEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDExternalEntity_EntityReferencedFromAnotherFile() {
-		return (EReference) dtdExternalEntityEClass.getEReferences().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDInternalEntity() {
-		return dtdInternalEntityEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EAttribute getDTDInternalEntity_Value() {
-		return (EAttribute) dtdInternalEntityEClass.getEAttributes().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDParameterEntityReference() {
-		return dtdParameterEntityReferenceEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDParameterEntityReference_Entity() {
-		return (EReference) dtdParameterEntityReferenceEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDEntityReferenceContent() {
-		return dtdEntityReferenceContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDEntityReferenceContent_ElementReferencedEntity() {
-		return (EReference) dtdEntityReferenceContentEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EClass getDTDContent() {
-		return dtdContentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EReference getDTDContent_DTDFile() {
-		return (EReference) dtdContentEClass.getEReferences().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EEnum getDTDOccurrenceType() {
-		return dtdOccurrenceTypeEEnum;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EEnum getDTDDefaultKind() {
-		return dtdDefaultKindEEnum;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EEnum getDTDBasicTypeKind() {
-		return dtdBasicTypeKindEEnum;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EEnum getDTDEnumGroupKind() {
-		return dtdEnumGroupKindEEnum;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EEnum getDTDGroupKind() {
-		return dtdGroupKindEEnum;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public EEnum getXMLSchemaDefinedType() {
-		return xmlSchemaDefinedTypeEEnum;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDFactory getDTDFactory() {
-		return (DTDFactory) 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
-		dtdElementContentEClass = createEClass(DTD_ELEMENT_CONTENT);
-		createEReference(dtdElementContentEClass, DTD_ELEMENT_CONTENT__GROUP);
-		createEReference(dtdElementContentEClass, DTD_ELEMENT_CONTENT__ELEMENT);
-
-		dtdGroupContentEClass = createEClass(DTD_GROUP_CONTENT);
-		createEAttribute(dtdGroupContentEClass, DTD_GROUP_CONTENT__GROUP_KIND);
-		createEReference(dtdGroupContentEClass, DTD_GROUP_CONTENT__CONTENT);
-
-		dtdAttributeEClass = createEClass(DTD_ATTRIBUTE);
-		createEAttribute(dtdAttributeEClass, DTD_ATTRIBUTE__COMMENT);
-		createEAttribute(dtdAttributeEClass, DTD_ATTRIBUTE__DEFAULT_KIND);
-		createEAttribute(dtdAttributeEClass, DTD_ATTRIBUTE__DEFAULT_VALUE_STRING);
-		createEReference(dtdAttributeEClass, DTD_ATTRIBUTE__ATTRIBUTE_NAME_REFERENCED_ENTITY);
-		createEReference(dtdAttributeEClass, DTD_ATTRIBUTE__ATTRIBUTE_TYPE_REFERENCED_ENTITY);
-		createEReference(dtdAttributeEClass, DTD_ATTRIBUTE__DTD_ELEMENT);
-
-		dtdElementEClass = createEClass(DTD_ELEMENT);
-		createEAttribute(dtdElementEClass, DTD_ELEMENT__COMMENT);
-		createEReference(dtdElementEClass, DTD_ELEMENT__CONTENT);
-		createEReference(dtdElementEClass, DTD_ELEMENT__DTD_ATTRIBUTE);
-
-		dtdEmptyContentEClass = createEClass(DTD_EMPTY_CONTENT);
-
-		dtdAnyContentEClass = createEClass(DTD_ANY_CONTENT);
-
-		dtdpcDataContentEClass = createEClass(DTD_PC_DATA_CONTENT);
-
-		dtdElementReferenceContentEClass = createEClass(DTD_ELEMENT_REFERENCE_CONTENT);
-		createEReference(dtdElementReferenceContentEClass, DTD_ELEMENT_REFERENCE_CONTENT__REFERENCED_ELEMENT);
-
-		dtdRepeatableContentEClass = createEClass(DTD_REPEATABLE_CONTENT);
-		createEAttribute(dtdRepeatableContentEClass, DTD_REPEATABLE_CONTENT__OCCURRENCE);
-
-		dtdFileEClass = createEClass(DTD_FILE);
-		createEAttribute(dtdFileEClass, DTD_FILE__COMMENT);
-		createEAttribute(dtdFileEClass, DTD_FILE__PARSE_ERROR);
-		createEReference(dtdFileEClass, DTD_FILE__DTD_CONTENT);
-		createEReference(dtdFileEClass, DTD_FILE__DTD_ENUMERATION_TYPE);
-
-		dtdBasicTypeEClass = createEClass(DTD_BASIC_TYPE);
-		createEAttribute(dtdBasicTypeEClass, DTD_BASIC_TYPE__KIND);
-
-		dtdEnumerationTypeEClass = createEClass(DTD_ENUMERATION_TYPE);
-		createEAttribute(dtdEnumerationTypeEClass, DTD_ENUMERATION_TYPE__KIND);
-		createEReference(dtdEnumerationTypeEClass, DTD_ENUMERATION_TYPE__DTD_FILE);
-
-		dtdNotationEClass = createEClass(DTD_NOTATION);
-		createEAttribute(dtdNotationEClass, DTD_NOTATION__COMMENT);
-		createEAttribute(dtdNotationEClass, DTD_NOTATION__SYSTEM_ID);
-		createEAttribute(dtdNotationEClass, DTD_NOTATION__PUBLIC_ID);
-		createEReference(dtdNotationEClass, DTD_NOTATION__ENTITY);
-
-		dtdEntityEClass = createEClass(DTD_ENTITY);
-		createEAttribute(dtdEntityEClass, DTD_ENTITY__COMMENT);
-		createEAttribute(dtdEntityEClass, DTD_ENTITY__PARAMETER_ENTITY);
-		createEReference(dtdEntityEClass, DTD_ENTITY__CONTENT);
-		createEReference(dtdEntityEClass, DTD_ENTITY__PARM_ENTITY_REF);
-		createEReference(dtdEntityEClass, DTD_ENTITY__ENTITY_REFERENCE);
-		createEReference(dtdEntityEClass, DTD_ENTITY__ATTRIBUTE_NAME_REFERENCE);
-		createEReference(dtdEntityEClass, DTD_ENTITY__ATTRIBUTE_TYPE_REFERENCE);
-
-		dtdEntityContentEClass = createEClass(DTD_ENTITY_CONTENT);
-		createEReference(dtdEntityContentEClass, DTD_ENTITY_CONTENT__DTD_ENTITY);
-
-		dtdExternalEntityEClass = createEClass(DTD_EXTERNAL_ENTITY);
-		createEAttribute(dtdExternalEntityEClass, DTD_EXTERNAL_ENTITY__SYSTEM_ID);
-		createEAttribute(dtdExternalEntityEClass, DTD_EXTERNAL_ENTITY__PUBLIC_ID);
-		createEReference(dtdExternalEntityEClass, DTD_EXTERNAL_ENTITY__NOTATION);
-		createEReference(dtdExternalEntityEClass, DTD_EXTERNAL_ENTITY__ENTITY_REFERENCED_FROM_ANOTHER_FILE);
-
-		dtdInternalEntityEClass = createEClass(DTD_INTERNAL_ENTITY);
-		createEAttribute(dtdInternalEntityEClass, DTD_INTERNAL_ENTITY__VALUE);
-
-		dtdParameterEntityReferenceEClass = createEClass(DTD_PARAMETER_ENTITY_REFERENCE);
-		createEReference(dtdParameterEntityReferenceEClass, DTD_PARAMETER_ENTITY_REFERENCE__ENTITY);
-
-		dtdEntityReferenceContentEClass = createEClass(DTD_ENTITY_REFERENCE_CONTENT);
-		createEReference(dtdEntityReferenceContentEClass, DTD_ENTITY_REFERENCE_CONTENT__ELEMENT_REFERENCED_ENTITY);
-
-		dtdContentEClass = createEClass(DTD_CONTENT);
-		createEReference(dtdContentEClass, DTD_CONTENT__DTD_FILE);
-
-		// Create enums
-		dtdOccurrenceTypeEEnum = createEEnum(DTD_OCCURRENCE_TYPE);
-		dtdDefaultKindEEnum = createEEnum(DTD_DEFAULT_KIND);
-		dtdBasicTypeKindEEnum = createEEnum(DTD_BASIC_TYPE_KIND);
-		dtdEnumGroupKindEEnum = createEEnum(DTD_ENUM_GROUP_KIND);
-		dtdGroupKindEEnum = createEEnum(DTD_GROUP_KIND);
-		xmlSchemaDefinedTypeEEnum = createEEnum(XML_SCHEMA_DEFINED_TYPE);
-	}
-
-	/**
-	 * <!-- 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;
-		EOperation op;
-
-		// Initialize package
-		setName(eNAME);
-		setNsPrefix(eNS_PREFIX);
-		setNsURI(eNS_URI);
-
-		// Obtain other dependent packages
-		EcorePackageImpl theEcorePackage = (EcorePackageImpl) EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
-
-		// Add supertypes to classes
-		dtdGroupContentEClass.getESuperTypes().add(this.getDTDRepeatableContent());
-		dtdAttributeEClass.getESuperTypes().add(theEcorePackage.getEAttribute());
-		dtdElementEClass.getESuperTypes().add(theEcorePackage.getEClass());
-		dtdElementEClass.getESuperTypes().add(this.getDTDContent());
-		dtdEmptyContentEClass.getESuperTypes().add(this.getDTDElementContent());
-		dtdAnyContentEClass.getESuperTypes().add(this.getDTDElementContent());
-		dtdpcDataContentEClass.getESuperTypes().add(this.getDTDElementContent());
-		dtdElementReferenceContentEClass.getESuperTypes().add(this.getDTDRepeatableContent());
-		dtdRepeatableContentEClass.getESuperTypes().add(this.getDTDElementContent());
-		dtdBasicTypeEClass.getESuperTypes().add(theEcorePackage.getEClass());
-		dtdEnumerationTypeEClass.getESuperTypes().add(theEcorePackage.getEEnum());
-		dtdNotationEClass.getESuperTypes().add(this.getDTDContent());
-		dtdEntityEClass.getESuperTypes().add(this.getDTDContent());
-		dtdExternalEntityEClass.getESuperTypes().add(this.getDTDEntityContent());
-		dtdInternalEntityEClass.getESuperTypes().add(this.getDTDEntityContent());
-		dtdParameterEntityReferenceEClass.getESuperTypes().add(this.getDTDContent());
-		dtdEntityReferenceContentEClass.getESuperTypes().add(this.getDTDRepeatableContent());
-
-		// Initialize classes and features; add operations and parameters
-		initEClass(dtdElementContentEClass, DTDElementContent.class, "DTDElementContent", IS_ABSTRACT, !IS_INTERFACE);
-		initEReference(getDTDElementContent_Group(), this.getDTDGroupContent(), this.getDTDGroupContent_Content(), "group", null, 0, 1, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-		initEReference(getDTDElementContent_Element(), this.getDTDElement(), this.getDTDElement_Content(), "element", null, 0, 1, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-
-		initEClass(dtdGroupContentEClass, DTDGroupContent.class, "DTDGroupContent", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDGroupContent_GroupKind(), this.getDTDGroupKind(), "groupKind", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEReference(getDTDGroupContent_Content(), this.getDTDElementContent(), this.getDTDElementContent_Group(), "content", null, 1, -1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-
-		initEClass(dtdAttributeEClass, DTDAttribute.class, "DTDAttribute", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDAttribute_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEAttribute(getDTDAttribute_DefaultKind(), this.getDTDDefaultKind(), "defaultKind", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEAttribute(getDTDAttribute_DefaultValueString(), ecorePackage.getEString(), "defaultValueString", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEReference(getDTDAttribute_AttributeNameReferencedEntity(), this.getDTDEntity(), this.getDTDEntity_AttributeNameReference(), "attributeNameReferencedEntity", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-		initEReference(getDTDAttribute_AttributeTypeReferencedEntity(), this.getDTDEntity(), this.getDTDEntity_AttributeTypeReference(), "attributeTypeReferencedEntity", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-		initEReference(getDTDAttribute_DTDElement(), this.getDTDElement(), this.getDTDElement_DTDAttribute(), "DTDElement", null, 0, 1, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-
-		initEClass(dtdElementEClass, DTDElement.class, "DTDElement", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDElement_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEReference(getDTDElement_Content(), this.getDTDElementContent(), this.getDTDElementContent_Element(), "content", null, 1, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-		initEReference(getDTDElement_DTDAttribute(), this.getDTDAttribute(), this.getDTDAttribute_DTDElement(), "DTDAttribute", null, 0, -1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-
-		initEClass(dtdEmptyContentEClass, DTDEmptyContent.class, "DTDEmptyContent", !IS_ABSTRACT, !IS_INTERFACE);
-
-		initEClass(dtdAnyContentEClass, DTDAnyContent.class, "DTDAnyContent", !IS_ABSTRACT, !IS_INTERFACE);
-
-		initEClass(dtdpcDataContentEClass, DTDPCDataContent.class, "DTDPCDataContent", !IS_ABSTRACT, !IS_INTERFACE);
-
-		initEClass(dtdElementReferenceContentEClass, DTDElementReferenceContent.class, "DTDElementReferenceContent", !IS_ABSTRACT, !IS_INTERFACE);
-		initEReference(getDTDElementReferenceContent_ReferencedElement(), this.getDTDElement(), null, "referencedElement", null, 1, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-
-		initEClass(dtdRepeatableContentEClass, DTDRepeatableContent.class, "DTDRepeatableContent", IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDRepeatableContent_Occurrence(), this.getDTDOccurrenceType(), "occurrence", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-
-		initEClass(dtdFileEClass, DTDFile.class, "DTDFile", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDFile_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEAttribute(getDTDFile_ParseError(), ecorePackage.getEBoolean(), "parseError", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEReference(getDTDFile_DTDContent(), this.getDTDContent(), this.getDTDContent_DTDFile(), "DTDContent", null, 0, -1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-		initEReference(getDTDFile_DTDEnumerationType(), this.getDTDEnumerationType(), this.getDTDEnumerationType_DTDFile(), "DTDEnumerationType", null, 0, -1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-
-		initEClass(dtdBasicTypeEClass, DTDBasicType.class, "DTDBasicType", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDBasicType_Kind(), this.getDTDBasicTypeKind(), "kind", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-
-		initEClass(dtdEnumerationTypeEClass, DTDEnumerationType.class, "DTDEnumerationType", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDEnumerationType_Kind(), this.getDTDEnumGroupKind(), "kind", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEReference(getDTDEnumerationType_DTDFile(), this.getDTDFile(), this.getDTDFile_DTDEnumerationType(), "DTDFile", null, 0, 1, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-
-		initEClass(dtdNotationEClass, DTDNotation.class, "DTDNotation", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDNotation_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEAttribute(getDTDNotation_SystemID(), ecorePackage.getEString(), "systemID", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEAttribute(getDTDNotation_PublicID(), ecorePackage.getEString(), "publicID", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEReference(getDTDNotation_Entity(), this.getDTDExternalEntity(), this.getDTDExternalEntity_Notation(), "entity", null, 0, -1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-
-		initEClass(dtdEntityEClass, DTDEntity.class, "DTDEntity", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDEntity_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEAttribute(getDTDEntity_ParameterEntity(), ecorePackage.getEBoolean(), "parameterEntity", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEReference(getDTDEntity_Content(), this.getDTDEntityContent(), this.getDTDEntityContent_DTDEntity(), "content", null, 1, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-		initEReference(getDTDEntity_ParmEntityRef(), this.getDTDParameterEntityReference(), this.getDTDParameterEntityReference_Entity(), "parmEntityRef", null, 1, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-		initEReference(getDTDEntity_EntityReference(), this.getDTDEntityReferenceContent(), this.getDTDEntityReferenceContent_ElementReferencedEntity(), "entityReference", null, 0, -1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-		initEReference(getDTDEntity_AttributeNameReference(), this.getDTDAttribute(), this.getDTDAttribute_AttributeNameReferencedEntity(), "attributeNameReference", null, 0, -1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-		initEReference(getDTDEntity_AttributeTypeReference(), this.getDTDAttribute(), this.getDTDAttribute_AttributeTypeReferencedEntity(), "attributeTypeReference", null, 0, -1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-
-		initEClass(dtdEntityContentEClass, DTDEntityContent.class, "DTDEntityContent", IS_ABSTRACT, !IS_INTERFACE);
-		initEReference(getDTDEntityContent_DTDEntity(), this.getDTDEntity(), this.getDTDEntity_Content(), "DTDEntity", null, 0, 1, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-
-		initEClass(dtdExternalEntityEClass, DTDExternalEntity.class, "DTDExternalEntity", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDExternalEntity_SystemID(), ecorePackage.getEString(), "systemID", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEAttribute(getDTDExternalEntity_PublicID(), ecorePackage.getEString(), "publicID", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-		initEReference(getDTDExternalEntity_Notation(), this.getDTDNotation(), this.getDTDNotation_Entity(), "notation", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-		initEReference(getDTDExternalEntity_EntityReferencedFromAnotherFile(), this.getDTDFile(), null, "entityReferencedFromAnotherFile", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-
-		initEClass(dtdInternalEntityEClass, DTDInternalEntity.class, "DTDInternalEntity", !IS_ABSTRACT, !IS_INTERFACE);
-		initEAttribute(getDTDInternalEntity_Value(), ecorePackage.getEString(), "value", null, 0, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID);
-
-		initEClass(dtdParameterEntityReferenceEClass, DTDParameterEntityReference.class, "DTDParameterEntityReference", !IS_ABSTRACT, !IS_INTERFACE);
-		initEReference(getDTDParameterEntityReference_Entity(), this.getDTDEntity(), this.getDTDEntity_ParmEntityRef(), "entity", null, 1, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-
-		initEClass(dtdEntityReferenceContentEClass, DTDEntityReferenceContent.class, "DTDEntityReferenceContent", !IS_ABSTRACT, !IS_INTERFACE);
-		initEReference(getDTDEntityReferenceContent_ElementReferencedEntity(), this.getDTDEntity(), this.getDTDEntity_EntityReference(), "elementReferencedEntity", null, 1, 1, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES);
-
-		initEClass(dtdContentEClass, DTDContent.class, "DTDContent", IS_ABSTRACT, !IS_INTERFACE);
-		initEReference(getDTDContent_DTDFile(), this.getDTDFile(), this.getDTDFile_DTDContent(), "DTDFile", null, 0, 1, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES);
-
-		// Initialize enums and add enum literals
-		initEEnum(dtdOccurrenceTypeEEnum, DTDOccurrenceType.class, "DTDOccurrenceType");
-		addEEnumLiteral(dtdOccurrenceTypeEEnum, DTDOccurrenceType.ONE_LITERAL);
-		addEEnumLiteral(dtdOccurrenceTypeEEnum, DTDOccurrenceType.OPTIONAL_LITERAL);
-		addEEnumLiteral(dtdOccurrenceTypeEEnum, DTDOccurrenceType.ONE_OR_MORE_LITERAL);
-		addEEnumLiteral(dtdOccurrenceTypeEEnum, DTDOccurrenceType.ZERO_OR_MORE_LITERAL);
-
-		initEEnum(dtdDefaultKindEEnum, DTDDefaultKind.class, "DTDDefaultKind");
-		addEEnumLiteral(dtdDefaultKindEEnum, DTDDefaultKind.IMPLIED_LITERAL);
-		addEEnumLiteral(dtdDefaultKindEEnum, DTDDefaultKind.REQUIRED_LITERAL);
-		addEEnumLiteral(dtdDefaultKindEEnum, DTDDefaultKind.FIXED_LITERAL);
-		addEEnumLiteral(dtdDefaultKindEEnum, DTDDefaultKind.NOFIXED_LITERAL);
-
-		initEEnum(dtdBasicTypeKindEEnum, DTDBasicTypeKind.class, "DTDBasicTypeKind");
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.NONE_LITERAL);
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.CDATA_LITERAL);
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.ID_LITERAL);
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.IDREF_LITERAL);
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.IDREFS_LITERAL);
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.ENTITY_LITERAL);
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.ENTITIES_LITERAL);
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.NMTOKEN_LITERAL);
-		addEEnumLiteral(dtdBasicTypeKindEEnum, DTDBasicTypeKind.NMTOKENS_LITERAL);
-
-		initEEnum(dtdEnumGroupKindEEnum, DTDEnumGroupKind.class, "DTDEnumGroupKind");
-		addEEnumLiteral(dtdEnumGroupKindEEnum, DTDEnumGroupKind.NAME_TOKEN_GROUP_LITERAL);
-		addEEnumLiteral(dtdEnumGroupKindEEnum, DTDEnumGroupKind.NOTATION_GROUP_LITERAL);
-
-		initEEnum(dtdGroupKindEEnum, DTDGroupKind.class, "DTDGroupKind");
-		addEEnumLiteral(dtdGroupKindEEnum, DTDGroupKind.SEQUENCE_LITERAL);
-		addEEnumLiteral(dtdGroupKindEEnum, DTDGroupKind.CHOICE_LITERAL);
-
-		initEEnum(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.class, "XMLSchemaDefinedType");
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.NONE_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.STRING_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.BOOLEAN_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.FLOAT_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.DOUBLE_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.DECIMAL_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.TIMEINSTANT_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.TIMEDURATION_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.RECURRINGINSTANT_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.BINARY_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.URI_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.INTEGER_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.DATE_LITERAL);
-		addEEnumLiteral(xmlSchemaDefinedTypeEEnum, XMLSchemaDefinedType.TIME_LITERAL);
-
-		// Create resource
-		createResource(eNS_URI);
-	}
-
-
-} // DTDPackageImpl
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDParameterEntityReferenceImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDParameterEntityReferenceImpl.java
deleted file mode 100644
index 7140bdf..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDParameterEntityReferenceImpl.java
+++ /dev/null
@@ -1,610 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.notify.impl.NotificationChainImpl;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.ENamedElement;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDLexicalInfo;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.util.DTDPathnameUtil;
-
-
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Parameter Entity Reference</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- * <li>{@link org.eclipse.wst.dtd.core.internal.emf.internal.impl.DTDParameterEntityReferenceImpl#getEntity <em>Entity</em>}</li>
- * </ul>
- * </p>
- * 
- * @generated
- */
-public class DTDParameterEntityReferenceImpl extends DTDContentImpl implements DTDParameterEntityReference, ENamedElement, DTDContent {
-
-	public String getName() {
-		DTDEntity entity = getEntity();
-		if (entity != null) {
-			return getEntity().getName();
-		} // end of if ()
-		return "";
-	}
-
-	public String getPathname() {
-		return DTDPathnameUtil.makePath(null, "PEnt", getName(), -1);
-	}
-
-	public DTDObject findObject(String relativePath) {
-		return null;
-	}
-
-	// ugly hack for now since we don't have multiple inheritance.
-	// Would rather have all this stuff in a base class but these
-	// classes are inheriting from sometimes different mof classes
-	DTDLexicalInfo lexInfo = new DTDLexicalInfo();
-
-	/**
-	 * Get the value of startOffset.
-	 * 
-	 * @return value of startOffset.
-	 */
-	public int getStartOffset() {
-		return lexInfo.getStartOffset();
-	}
-
-	/**
-	 * Set the value of startOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to startOffset.
-	 */
-	public void setStartOffset(int v) {
-		lexInfo.setStartOffset(v);
-	}
-
-	/**
-	 * Get the value of endOffset.
-	 * 
-	 * @return value of endOffset.
-	 */
-	public int getEndOffset() {
-		return lexInfo.getEndOffset();
-	}
-
-	/**
-	 * Set the value of endOffset.
-	 * 
-	 * @param v
-	 *            Value to assign to endOffset.
-	 */
-	public void setEndOffset(int v) {
-		lexInfo.setEndOffset(v);
-	}
-
-
-	/**
-	 * The cached value of the '{@link #getEntity() <em>Entity</em>}'
-	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getEntity()
-	 * @generated
-	 * @ordered
-	 */
-	protected DTDEntity entity = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected DTDParameterEntityReferenceImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDParameterEntityReference();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntity getEntity() {
-		if (entity != null && entity.eIsProxy()) {
-			DTDEntity oldEntity = entity;
-			entity = (DTDEntity) EcoreUtil.resolve(entity, this);
-			if (entity != oldEntity) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY, oldEntity, entity));
-			}
-		}
-		return entity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public DTDEntity basicGetEntity() {
-		return entity;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public NotificationChain basicSetEntity(DTDEntity newEntity, NotificationChain msgs) {
-		DTDEntity oldEntity = entity;
-		entity = newEntity;
-		if (eNotificationRequired()) {
-			if (msgs == null)
-				msgs = new NotificationChainImpl(4);
-			msgs.add(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY, oldEntity, newEntity));
-		}
-		return msgs;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setEntity(DTDEntity newEntity) {
-		if (newEntity != entity) {
-			NotificationChain msgs = null;
-			if (entity != null)
-				msgs = ((InternalEObject) entity).eInverseRemove(this, DTDPackage.DTD_ENTITY__PARM_ENTITY_REF, DTDEntity.class, msgs);
-			if (newEntity != null)
-				msgs = ((InternalEObject) newEntity).eInverseAdd(this, DTDPackage.DTD_ENTITY__PARM_ENTITY_REF, DTDEntity.class, msgs);
-			msgs = basicSetEntity(newEntity, msgs);
-			if (msgs != null)
-				msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY, newEntity, newEntity));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE, msgs);
-				case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY :
-					if (entity != null)
-						msgs = ((InternalEObject) entity).eInverseRemove(this, DTDPackage.DTD_ENTITY__PARM_ENTITY_REF, DTDEntity.class, msgs);
-					return basicSetEntity((DTDEntity) 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE :
-					return eBasicSetContainer(null, DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE, msgs);
-				case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY :
-					return basicSetEntity(null, 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 DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_FILE__DTD_CONTENT, DTDFile.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE :
-				return getDTDFile();
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY :
-				if (resolve)
-					return getEntity();
-				return basicGetEntity();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE :
-				setDTDFile((DTDFile) newValue);
-				return;
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY :
-				setEntity((DTDEntity) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE :
-				setDTDFile((DTDFile) null);
-				return;
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY :
-				setEntity((DTDEntity) null);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE :
-				return getDTDFile() != null;
-			case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY :
-				return entity != null;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-} // DTDParameterEntityReferenceImpl
-
-// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-// //public class DTDParameterEntityReferenceImpl extends ENamespaceImpl
-// implements DTDParameterEntityReference, ENamespace, DTDContent{
-// -------------------GENERICRULES.JSED-------------------
-
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected DTDEntity entity = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected boolean setEntity = false;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// private DTDContentImpl dtdContentDelegate = null;
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EObject initInstance() {
-// setEMetaObj(eClassDTDParameterEntityReference());
-// initInstanceDelegates();
-// return this;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected void initInstanceDelegates() {
-// super.initInstanceDelegates();
-//
-
-// getDtdContentDelegate().refSetDelegateOwner(this);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public DTDPackage ePackageDTD() {
-// return
-// (DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EClass eClassDTDParameterEntityReference() {
-// return
-// ((DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI)).getDTDParameterEntityReference();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation
-// */
-// public DTDEntity getEntity() {
-// try {
-// if (this.entity == null) return null;
-// this.entity = (DTDEntity) ((InternalEObject)this.entity).resolve(this,
-// DTDPackage.eINSTANCE.getDTDParameterEntityReference_Entity());
-// if (this.entity==null) this.setEntity = false;
-// return this.entity;
-// } catch (Exception e) {
-// return null;
-// }
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setEntity(DTDEntity l) {
-// refSetValueForSVReference(DTDPackage.eINSTANCE.getDTDParameterEntityReference_Entity(),this.entity,l);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetEntity() {
-// refUnsetValueForSVReference(DTDPackage.eINSTANCE.getDTDParameterEntityReference_Entity(),this.entity);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetEntity() {
-// return setEntity;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Object eGet(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eGet(feature);
-// }
-// switch (eClassDTDParameterEntityReference().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY: return getEntity();
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE: return
-// getDTDFile();
-//
-
-// }
-// return super.eGet(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Object refBasicValue(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.refBasicValue(feature);
-// }
-// switch (eClassDTDParameterEntityReference().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY:
-// if (!this.setEntity||this.entity==null) return null;
-// if (((InternalEObject)this.entity).refIsDeleted()) {this.entity=null;
-// this.setEntity=false;}
-// return this.entity;
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE: return
-// ((InternalEObject)getDtdContentDelegate()).refBasicValue(feature);
-//
-
-// }
-// return super.refBasicValue(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean eIsSet(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eIsSet(feature);
-// }
-// switch (eClassDTDParameterEntityReference().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY: return
-// isSetEntity();
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE: return
-// isSetDTDFile();
-//
-
-// }
-// return super.eIsSet(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void eSet(EStructuralFeature feature, Object newValue) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// super.eSet(feature, newValue);
-// }
-// switch (eClassDTDParameterEntityReference().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY: {
-// setEntity((DTDEntity)newValue);
-// return;
-// }
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE: {
-// setDTDFile((DTDFile)newValue);
-// return;
-// }
-//
-
-// }
-// super.eSet(feature, newValue);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Notification eBasicSet(EStructuralFeature feature, Object newValue)
-// {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.eBasicSet(feature, newValue);
-// }
-// switch (eClassDTDParameterEntityReference().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY: {
-// Object oldValue = this.entity;
-// this.entity = (DTDEntity)newValue;
-// this.setEntity = true;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.SET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDParameterEntityReference_Entity(),oldValue,newValue);
-// }
-//
-
-// }
-// return super.eBasicSet(feature, newValue);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void eUnset(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// super.eUnset(feature);
-// }
-// switch (eClassDTDParameterEntityReference().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY: {
-// unsetEntity();
-// return;
-// }
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__DTD_FILE: {
-// unsetDTDFile();
-// return;
-// }
-//
-
-// }
-// super.eUnset(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public Notification refBasicUnsetValue(EStructuralFeature feature) {
-// EStructuralFeature eFeature=null;
-// try {
-// eFeature=(EStructuralFeature)feature;
-// } catch (ClassCastException e) {
-// return super.refBasicUnsetValue(feature);
-// }
-// switch (eClassDTDParameterEntityReference().getEFeatureId(eFeature)) {
-// case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE__ENTITY: {
-// Object oldValue = this.entity;
-// this.entity = null;
-// this.setEntity = false;
-// return new
-// ENotificationImpl((InternalEObject)this,Notification.UNSET,(EStructuralFeature)DTDPackage.eINSTANCE.getDTDParameterEntityReference_Entity(),oldValue,null);
-// }
-//
-
-// }
-// return super.refBasicUnsetValue(feature);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// protected DTDContentImpl getDtdContentDelegate() {
-// if (dtdContentDelegate == null) {
-// DTDPackage pkg =
-// (DTDPackage)EPackage.Registry.INSTANCE.getEPackage(DTDPackage.eNS_URI);
-// dtdContentDelegate=(DTDContentImpl)pkg.eCreateInstance(pkg.DTD_CONTENT);
-// dtdContentDelegate.initInstance();
-// }
-// return dtdContentDelegate;
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public EClass eClassDTDContent() {
-// return getDtdContentDelegate().eClass();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public DTDFile getDTDFile() {
-// return getDtdContentDelegate().getDTDFile();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void setDTDFile(DTDFile value) {
-// getDtdContentDelegate().setDTDFile(value);
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public void unsetDTDFile() {
-// getDtdContentDelegate().unsetDTDFile();
-// }
-// /**
-// * @generated This field/method will be replaced during code generation.
-// */
-// public boolean isSetDTDFile() {
-// return getDtdContentDelegate().isSetDTDFile();
-// }
-// }
-// -------------------GENERICRULES.JSED-------------------
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDRepeatableContentImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDRepeatableContentImpl.java
deleted file mode 100644
index 3979060..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/impl/DTDRepeatableContentImpl.java
+++ /dev/null
@@ -1,265 +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.dtd.core.internal.emf.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent;
-
-/**
- * @generated
- */
-public abstract class DTDRepeatableContentImpl extends DTDElementContentImpl implements DTDRepeatableContent {
-	/**
-	 * The default value of the '{@link #getOccurrence() <em>Occurrence</em>}'
-	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getOccurrence()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final DTDOccurrenceType OCCURRENCE_EDEFAULT = DTDOccurrenceType.ONE_LITERAL;
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected DTDOccurrenceType occurrence = OCCURRENCE_EDEFAULT;
-
-	public DTDRepeatableContentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return DTDPackage.eINSTANCE.getDTDRepeatableContent();
-	}
-
-	public String unparse() {
-		StringBuffer sb = new StringBuffer(128);
-		if (getOccurrence().getValue() != DTDOccurrenceType.ONE) {
-			if (this instanceof DTDEntityReferenceContent) {
-				sb.append("(").append(unparseRepeatableContent()).append(")");
-			}
-			else {
-				sb.append(unparseRepeatableContent());
-			}
-
-			// MOF2EMF Port
-			// EEnumLiteral lit = getOccurrence();
-			DTDOccurrenceType lit = getOccurrence();
-			if (lit != null) {
-				sb.append((char) lit.getValue());
-			}
-		}
-		else {
-			sb.append(unparseRepeatableContent());
-		}
-
-		return sb.toString();
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation
-	 *            JUST_ONE= -1 ONE_OR_MORE=43 OPTIONAL=63 ZERO_OR_MORE=42
-	 */
-	public DTDOccurrenceType getOccurrence() {
-		return occurrence;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public void setOccurrence(DTDOccurrenceType newOccurrence) {
-		DTDOccurrenceType oldOccurrence = occurrence;
-		occurrence = newOccurrence == null ? OCCURRENCE_EDEFAULT : newOccurrence;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, DTDPackage.DTD_REPEATABLE_CONTENT__OCCURRENCE, oldOccurrence, occurrence));
-	}
-
-	/**
-	 * <!-- 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 DTDPackage.DTD_REPEATABLE_CONTENT__GROUP :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_REPEATABLE_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT :
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT, 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 (baseClass == null ? featureID : eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case DTDPackage.DTD_REPEATABLE_CONTENT__GROUP :
-					return eBasicSetContainer(null, DTDPackage.DTD_REPEATABLE_CONTENT__GROUP, msgs);
-				case DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT :
-					return eBasicSetContainer(null, DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT, 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 DTDPackage.DTD_REPEATABLE_CONTENT__GROUP :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_GROUP_CONTENT__CONTENT, DTDGroupContent.class, msgs);
-				case DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT :
-					return eContainer.eInverseRemove(this, DTDPackage.DTD_ELEMENT__CONTENT, DTDElement.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.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_REPEATABLE_CONTENT__GROUP :
-				return getGroup();
-			case DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT :
-				return getElement();
-			case DTDPackage.DTD_REPEATABLE_CONTENT__OCCURRENCE :
-				return getOccurrence();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_REPEATABLE_CONTENT__GROUP :
-				return getGroup() != null;
-			case DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT :
-				return getElement() != null;
-			case DTDPackage.DTD_REPEATABLE_CONTENT__OCCURRENCE :
-				return occurrence != OCCURRENCE_EDEFAULT;
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_REPEATABLE_CONTENT__GROUP :
-				setGroup((DTDGroupContent) newValue);
-				return;
-			case DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT :
-				setElement((DTDElement) newValue);
-				return;
-			case DTDPackage.DTD_REPEATABLE_CONTENT__OCCURRENCE :
-				setOccurrence((DTDOccurrenceType) newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature.getFeatureID(), eFeature.getContainerClass())) {
-			case DTDPackage.DTD_REPEATABLE_CONTENT__GROUP :
-				setGroup((DTDGroupContent) null);
-				return;
-			case DTDPackage.DTD_REPEATABLE_CONTENT__ELEMENT :
-				setElement((DTDElement) null);
-				return;
-			case DTDPackage.DTD_REPEATABLE_CONTENT__OCCURRENCE :
-				setOccurrence(OCCURRENCE_EDEFAULT);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public String toString() {
-		if (eIsProxy())
-			return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (occurrence: ");
-		result.append(occurrence);
-		result.append(')');
-		return result.toString();
-	}
-
-	/*
-	 * @see DTDRepeatableContent#unparseRepeatableContent()
-	 */
-	public String unparseRepeatableContent() {
-		return null;
-	}
-
-	/*
-	 * @see DTDElementContent#getContentName()
-	 */
-	public String getContentName() {
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDAdapterFactory.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDAdapterFactory.java
deleted file mode 100644
index fa06cdf..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDAdapterFactory.java
+++ /dev/null
@@ -1,440 +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.dtd.core.internal.emf.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.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EClassifier;
-import org.eclipse.emf.ecore.EDataType;
-import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EModelElement;
-import org.eclipse.emf.ecore.ENamedElement;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.ETypedElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent;
-
-
-
-public class DTDAdapterFactory extends AdapterFactoryImpl {
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	protected static DTDPackage modelPackage;
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public DTDAdapterFactory() {
-		if (modelPackage == null) {
-			modelPackage = DTDPackage.eINSTANCE;
-		}
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	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 DTDSwitch modelSwitch = new DTDSwitch() {
-		public Object caseDTDElementContent(DTDElementContent object) {
-			return createDTDElementContentAdapter();
-		}
-
-		public Object caseDTDGroupContent(DTDGroupContent object) {
-			return createDTDGroupContentAdapter();
-		}
-
-		public Object caseDTDAttribute(DTDAttribute object) {
-			return createDTDAttributeAdapter();
-		}
-
-		public Object caseDTDElement(DTDElement object) {
-			return createDTDElementAdapter();
-		}
-
-		public Object caseDTDEmptyContent(DTDEmptyContent object) {
-			return createDTDEmptyContentAdapter();
-		}
-
-		public Object caseDTDAnyContent(DTDAnyContent object) {
-			return createDTDAnyContentAdapter();
-		}
-
-		public Object caseDTDPCDataContent(DTDPCDataContent object) {
-			return createDTDPCDataContentAdapter();
-		}
-
-		public Object caseDTDElementReferenceContent(DTDElementReferenceContent object) {
-			return createDTDElementReferenceContentAdapter();
-		}
-
-		public Object caseDTDRepeatableContent(DTDRepeatableContent object) {
-			return createDTDRepeatableContentAdapter();
-		}
-
-		public Object caseDTDFile(DTDFile object) {
-			return createDTDFileAdapter();
-		}
-
-		public Object caseDTDBasicType(DTDBasicType object) {
-			return createDTDBasicTypeAdapter();
-		}
-
-		public Object caseDTDEnumerationType(DTDEnumerationType object) {
-			return createDTDEnumerationTypeAdapter();
-		}
-
-		public Object caseDTDNotation(DTDNotation object) {
-			return createDTDNotationAdapter();
-		}
-
-		public Object caseDTDEntity(DTDEntity object) {
-			return createDTDEntityAdapter();
-		}
-
-		public Object caseDTDEntityContent(DTDEntityContent object) {
-			return createDTDEntityContentAdapter();
-		}
-
-		public Object caseDTDExternalEntity(DTDExternalEntity object) {
-			return createDTDExternalEntityAdapter();
-		}
-
-		public Object caseDTDInternalEntity(DTDInternalEntity object) {
-			return createDTDInternalEntityAdapter();
-		}
-
-		public Object caseDTDParameterEntityReference(DTDParameterEntityReference object) {
-			return createDTDParameterEntityReferenceAdapter();
-		}
-
-		public Object caseDTDEntityReferenceContent(DTDEntityReferenceContent object) {
-			return createDTDEntityReferenceContentAdapter();
-		}
-
-		public Object caseDTDContent(DTDContent object) {
-			return createDTDContentAdapter();
-		}
-
-		public Object caseEModelElement(EModelElement object) {
-			return createEModelElementAdapter();
-		}
-
-		public Object caseENamedElement(ENamedElement object) {
-			return createENamedElementAdapter();
-		}
-
-		public Object caseETypedElement(ETypedElement object) {
-			return createETypedElementAdapter();
-		}
-
-		public Object caseEStructuralFeature(EStructuralFeature object) {
-			return createEStructuralFeatureAdapter();
-		}
-
-		public Object caseEAttribute(EAttribute object) {
-			return createEAttributeAdapter();
-		}
-
-		public Object caseEClassifier(EClassifier object) {
-			return createEClassifierAdapter();
-		}
-
-		public Object caseEClass(EClass object) {
-			return createEClassAdapter();
-		}
-
-		public Object caseEDataType(EDataType object) {
-			return createEDataTypeAdapter();
-		}
-
-		public Object caseEEnum(EEnum object) {
-			return createEEnumAdapter();
-		}
-
-		public Object defaultCase(EObject object) {
-			return createEObjectAdapter();
-		}
-	};
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createAdapter(Notifier target) {
-		return (Adapter) modelSwitch.doSwitch((EObject) target);
-	}
-
-
-	/**
-	 * By default create methods return null so that we can easily ignore
-	 * cases. It's useful to ignore a case when inheritance will catch all the
-	 * cases anyway.
-	 */
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDFileAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDNotationAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDEntityAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDEntityContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDExternalEntityAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDInternalEntityAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDParameterEntityReferenceAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDEntityReferenceContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDRepeatableContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDElementReferenceContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDElementAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDElementContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDEmptyContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * By default create methods return null so that we can easily ignore
-	 * cases. It's useful to ignore a case when inheritance will catch all the
-	 * cases anyway.
-	 */
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDAnyContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDPCDataContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDGroupContentAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDAttributeAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDEnumerationTypeAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createDTDBasicTypeAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createEClassAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createEAttributeAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createEEnumAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createEModelElementAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createENamedElementAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createEStructuralFeatureAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createEDataTypeAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createEObjectAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createETypedElementAdapter() {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Adapter createEClassifierAdapter() {
-		return null;
-	}
-
-} // DTDAdapterFactory
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDMetrics.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDMetrics.java
deleted file mode 100644
index 32c06e3..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDMetrics.java
+++ /dev/null
@@ -1,125 +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.dtd.core.internal.emf.util;
-
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-
-
-public class DTDMetrics {
-	protected DTDFile dtdFile;
-	protected Hashtable elementReferenceMap;
-
-	public DTDMetrics(DTDFile dtdFile) {
-		this.dtdFile = dtdFile;
-	}
-
-	public Hashtable getElementReferences() {
-		if (elementReferenceMap == null) {
-			elementReferenceMap = new Hashtable();
-			new DTDVisitor() {
-
-				public void visitDTDElementReferenceContent(DTDElementReferenceContent elementReferenceContent) {
-					DTDElement dtdElement = elementReferenceContent.getReferencedElement();
-					Object visitation = elementReferenceMap.get(dtdElement);
-					if (visitation == null) {
-						elementReferenceMap.put(dtdElement, visitation = new Vector());
-					}
-					((Vector) visitation).addElement(elementReferenceContent);
-				}
-			}.visitDTDFile(dtdFile);
-		}
-
-		return elementReferenceMap;
-	}
-
-	public int getElementReferenceCount(DTDElement dtdElement) {
-		Object elementReferences = getElementReferences().get(dtdElement);
-		return elementReferences == null ? 0 : ((Vector) elementReferences).size();
-	}
-
-	public DTDElement getLeastReferencedElement() {
-		DTDElement result = null;
-		int lowestReferenceCount = Integer.MAX_VALUE;
-
-		Collection elements = dtdFile.listDTDElement();
-		for (Iterator i = elements.iterator(); i.hasNext();) {
-			DTDElement element = (DTDElement) i.next();
-			int count = getElementReferenceCount(element);
-			if (count < lowestReferenceCount) {
-				result = element;
-				lowestReferenceCount = count;
-			}
-		}
-
-		return result;
-	}
-
-	/**
-	 * @generated
-	 */
-	protected Hashtable getElementReferencesGen() {
-
-		if (elementReferenceMap == null) {
-			elementReferenceMap = new Hashtable();
-			new DTDVisitor() {
-
-				public void visitDTDElementReferenceContent(DTDElementReferenceContent elementReferenceContent) {
-					DTDElement dtdElement = elementReferenceContent.getReferencedElement();
-					Object visitation = elementReferenceMap.get(dtdElement);
-					if (visitation == null) {
-						elementReferenceMap.put(dtdElement, visitation = new Vector());
-					}
-					((Vector) visitation).addElement(elementReferenceContent);
-				}
-			}.visitDTDFile(dtdFile);
-		}
-
-		return elementReferenceMap;
-	}
-
-	/**
-	 * @generated
-	 */
-	protected int getElementReferenceCountGen(DTDElement dtdElement) {
-
-		Object elementReferences = getElementReferences().get(dtdElement);
-		return elementReferences == null ? 0 : ((Vector) elementReferences).size();
-	}
-
-	/**
-	 * @generated
-	 */
-	protected DTDElement getLeastReferencedElementGen() {
-
-		DTDElement result = null;
-		int lowestReferenceCount = Integer.MAX_VALUE;
-
-		Collection elements = dtdFile.listDTDElement();
-		for (Iterator i = elements.iterator(); i.hasNext();) {
-			DTDElement element = (DTDElement) i.next();
-			int count = getElementReferenceCount(element);
-			if (count < lowestReferenceCount) {
-				result = element;
-				lowestReferenceCount = count;
-			}
-		}
-
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDModelBuilder.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDModelBuilder.java
deleted file mode 100644
index 3587f93..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDModelBuilder.java
+++ /dev/null
@@ -1,1856 +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.dtd.core.internal.emf.util;
-
-import java.util.Enumeration;
-import java.util.Iterator;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EEnumLiteral;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.wst.dtd.core.internal.DTDCorePlugin;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicTypeKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDDefaultKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFactory;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.DTDType;
-import org.eclipse.wst.dtd.core.internal.emf.impl.DTDAttributeImpl;
-import org.eclipse.wst.dtd.core.internal.emf.impl.DTDFactoryImpl;
-import org.eclipse.wst.dtd.core.internal.saxparser.AttNode;
-import org.eclipse.wst.dtd.core.internal.saxparser.Attlist;
-import org.eclipse.wst.dtd.core.internal.saxparser.CMBasicNode;
-import org.eclipse.wst.dtd.core.internal.saxparser.CMGroupNode;
-import org.eclipse.wst.dtd.core.internal.saxparser.CMNode;
-import org.eclipse.wst.dtd.core.internal.saxparser.CMNodeType;
-import org.eclipse.wst.dtd.core.internal.saxparser.CMReferenceNode;
-import org.eclipse.wst.dtd.core.internal.saxparser.CMRepeatableNode;
-import org.eclipse.wst.dtd.core.internal.saxparser.DTD;
-import org.eclipse.wst.dtd.core.internal.saxparser.DTDSaxArtifactVisitor;
-import org.eclipse.wst.dtd.core.internal.saxparser.ElementDecl;
-import org.eclipse.wst.dtd.core.internal.saxparser.EntityDecl;
-import org.eclipse.wst.dtd.core.internal.saxparser.ErrorMessage;
-import org.eclipse.wst.dtd.core.internal.saxparser.NotationDecl;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.eclipse.wst.xml.uriresolver.util.IdResolverImpl;
-
-public class DTDModelBuilder extends DTDSaxArtifactVisitor {
-	DTD dtd;
-	DTDUtil dtdUtil;
-	DTDFile dtdFile;
-	ResourceSet resources;
-
-	public DTDModelBuilder(ResourceSet resources, DTDUtil dtdUtil, DTD dtd, DTDFile dtdFile) {
-		this.resources = resources;
-		this.dtdUtil = dtdUtil;
-		this.dtd = dtd;
-		this.dtdFile = dtdFile;
-	}
-
-	public DTDFactoryImpl getFactory() {
-		return (DTDFactoryImpl) dtdUtil.getFactory();
-	}
-
-	public DTDFile getDTDFile() {
-		return dtdFile;
-	}
-
-	public void visitDTD(DTD dtd) {
-		super.visitDTD(dtd);
-
-		// - 2nd pass -
-		// do final processing for Attlists and adding contentModel
-		addAttlistAndContentModel(dtd, dtdFile);
-	}
-
-	public void visitElementDecl(ElementDecl element) {
-		// Element might have been added earlier because it is referenced
-		String declName = element.getNodeName();
-		// System.out.println("process ElementDecl:" + declName );
-		DTDElement dtdelement = (DTDElement) dtdUtil.getElementPool().get(declName);
-		if (dtdelement == null) {
-			// System.out.println("process ElementDecl - not found - create"
-			// );
-			dtdelement = getFactory().createDTDElement();
-			dtdelement.setName(declName);
-			dtdFile.getDTDObject().add(dtdelement);
-			dtdUtil.getElementPool().put(declName, dtdelement);
-		}
-
-		super.visitElementDecl(element);
-	}
-
-	public void visitNotationDecl(NotationDecl notation) {
-		// Notation might have been added earlier because it is referenced
-		// by an entity
-		DTDNotation dtdnot = dtdFile.findNotation(notation.getNodeName());
-		if (dtdnot == null) {
-			dtdnot = getFactory().createDTDNotation();
-			dtdFile.getDTDObject().add(dtdnot);
-		}
-		dtdnot.setName(notation.getNodeName());
-
-		if (notation.getSystemId() != null)
-			dtdnot.setSystemID(notation.getSystemId());
-		if (notation.getPublicId() != null)
-			dtdnot.setPublicID(notation.getPublicId());
-
-		if (notation.getComment() != null)
-			dtdnot.setComment(notation.getComment());
-		if (notation.getErrorMessage() != null) {
-			addErrorMessage(notation.getErrorMessage(), dtdnot);
-		}
-
-		super.visitNotationDecl(notation);
-	}
-
-	public void visitParameterEntityReferenceDecl(EntityDecl entity) {
-		// This is a parameter entity reference.
-		// Add the link to the real entity that it references
-		DTDParameterEntityReference parmEntRef = getFactory().createDTDParameterEntityReference();
-		dtdFile.getDTDObject().add(parmEntRef);
-
-		String entityName = entity.getNodeName();
-
-		// Add the reference to the DTDEntity
-		DTDEntity dtdentity = getDTDFile().findEntity(entityName);
-		if (dtdentity != null) {
-			parmEntRef.setEntity(dtdentity);
-		}
-		if (entity.getErrorMessage() != null) {
-			addErrorMessage(entity.getErrorMessage(), dtdentity);
-		}
-		// System.out.println("adding PE reference: " + declName);
-
-		super.visitParameterEntityReferenceDecl(entity);
-	}
-
-	public void visitExternalEntityDecl(EntityDecl entity) {
-		DTDEntity dtdEntity = createDTDEntity(entity);
-		// System.out.println("adding entity: " + declName);
-		DTDExternalEntity extEntity = getFactory().createDTDExternalEntity();
-		dtdEntity.setContent(extEntity);
-
-		finishExternalEntity(extEntity, entity);
-		// System.out.println(" ext entity toMof: " );
-		if (dtdEntity.isParameterEntity()) {
-
-			dtdUtil.getPEPool().put("%" + entity.getNodeName() + ";", dtdEntity);
-		}
-
-		super.visitExternalEntityDecl(entity);
-	}
-
-	public void visitInternalEntityDecl(EntityDecl entity) {
-		DTDEntity dtdEntity = createDTDEntity(entity);
-
-		DTDInternalEntity intEntity = getFactory().createDTDInternalEntity();
-		dtdEntity.setContent(intEntity);
-		intEntity.setValue(entity.getValue());
-		// System.out.println(" int entity toMof: " );
-		if (dtdEntity.isParameterEntity()) {
-			dtdUtil.getPEPool().put("%" + entity.getNodeName() + ";", dtdEntity);
-		}
-
-		super.visitInternalEntityDecl(entity);
-	}
-
-	private void addAttlistAndContentModel(DTD dtd, DTDFile dFile) {
-		// System.out.println("addAttListAndCotentModel - dtd:" +
-		// dtd.getName());
-		Enumeration en = dtd.externalElements();
-		while (en.hasMoreElements()) {
-			Object e = en.nextElement();
-			if (e instanceof ElementDecl) {
-				DTDElement dtdelement = (DTDElement) dtdUtil.getElementPool().get(((ElementDecl) e).getNodeName());
-				if (dtdelement == null) {
-					dtdelement = getFactory().createDTDElement();
-					dtdFile.getDTDObject().add(dtdelement);
-				}
-				finishElementDecl(dtdelement, (ElementDecl) e);
-			}
-			else if (e instanceof Attlist) {
-				processAttList((Attlist) e);
-			}
-		}
-	}
-
-
-	private void processAttList(Attlist attList) {
-		DTDElement e = (DTDElement) dtdUtil.getElementPool().get(attList.getNodeName());
-		if (e != null) {
-			// Element has been added. Add the attributes
-			// System.out.println(" processAttlist - adding Attlist:" +
-			// attList.getNodeName());
-			createAttributes(e, attList);
-		}
-		else {
-			// System.out.println("!!!!!!!!! element is null ");
-		}
-	}
-
-	// /////////////////////////////////////////////////////////////
-	//
-	// Methods for finishing the import of a DTDExternalEntity
-	//
-	// /////////////////////////////////////////////////////////////
-	void finishExternalEntity(DTDExternalEntity extEntity, EntityDecl entityDecl) {
-		updateSystemID(extEntity, entityDecl);
-		extEntity.setPublicID(entityDecl.getPublicId());
-
-		String notationName = entityDecl.getNotationName();
-		if (notationName != null) {
-			DTDNotation dtdNotation = createOrFindNotation(extEntity, notationName, true);
-			extEntity.setNotation(dtdNotation);
-		}
-	}
-
-	public DTDNotation createOrFindNotation(DTDExternalEntity extEntity, String name, boolean create) {
-		DTDNotation aNotation = extEntity.getDTDEntity().getDTDFile().findNotation(name);
-		if (aNotation != null) {
-			return aNotation;
-		}
-
-		//
-		// Create a notation for the reference
-		//
-		if (create) {
-			aNotation = getFactory().createDTDNotation();
-			dtdFile.getDTDObject().add(aNotation);
-			aNotation.setName(name);
-		}
-		return aNotation;
-	}
-
-	/**
-	 * The SystemID attribute is set to whatever the user enters e.g.
-	 * com/ibm/b2b/xmimodels/xxx.dtd.xmi
-	 * 
-	 * In the unparse() method, parse out the DTD file name from the classpath
-	 * name. e.g. returns xxx.dtd
-	 */
-	private void updateSystemID(DTDExternalEntity extEntity, EntityDecl entityDecl) {
-		String systemId = entityDecl.getSystemId();
-		String publicId = entityDecl.getPublicId();
-		if (systemId != null) {
-			IdResolver idResolver = new IdResolverImpl(dtd.getName());
-			String uri = idResolver.resolveId(publicId, systemId);
-			ExternalDTDModel ed = dtdUtil.getExternalDTDModel(resources, uri);
-			if (ed != null) {
-				DTDFile referenceDtdFile = ed.getExternalDTDFile();
-				extEntity.setEntityReferencedFromAnotherFile(referenceDtdFile);
-				extEntity.setSystemID(systemId);
-			}
-			else {
-				if (entityDecl.getErrorMessage() == null) {
-					ErrorMessage dtdError = new ErrorMessage();
-					dtdError.setErrorMessage(DTDCorePlugin.getDTDString("_ERROR_INCL_FILE_LOAD_FAILURE") + " '" + systemId + "'");
-					addErrorMessage(dtdError, extEntity.getDTDEntity());
-				}
-
-				if (systemId != null) {
-					extEntity.setSystemID(systemId);
-				}
-				else {
-					extEntity.setSystemID("");
-				}
-			}
-		} // end of if ()
-		else {
-			// set the system id to be ""
-			extEntity.setSystemID("");
-		}
-	}
-
-	public DTDEntity createDTDEntity(EntityDecl entity) {
-		// create and do what we can to fill in some basic things
-		DTDEntity dtdEntity = getFactory().createDTDEntity();
-		dtdFile.getDTDObject().add(dtdEntity);
-
-		dtdEntity.setName(entity.getNodeName());
-		dtdEntity.setParameterEntity(entity.isParameter());
-		if (entity.getComment() != null) {
-			dtdEntity.setComment(entity.getComment());
-		}
-		if (entity.getErrorMessage() != null) {
-			addErrorMessage(entity.getErrorMessage(), dtdEntity);
-		}
-
-		return dtdEntity;
-	}
-
-
-	// /////////////////////////////////////////////////////////////
-	//
-	// Methods for finishing the import of a DTDElement
-	//
-	// /////////////////////////////////////////////////////////////
-	public void finishElementDecl(DTDElement dtdElement, ElementDecl ed) {
-		dtdElement.setName(ed.getNodeName());
-
-		CMNode cmNode = ed.getContentModelNode();
-
-		if (ed.getComment() != null) {
-			dtdElement.setComment(ed.getComment());
-		}
-		if (ed.getErrorMessage() != null) {
-			addErrorMessage(ed.getErrorMessage(), dtdElement);
-		}
-
-		if (cmNode instanceof CMBasicNode) {
-			CMBasicNode bn = (CMBasicNode) cmNode;
-			switch (bn.getType()) {
-				case CMNodeType.EMPTY :
-					DTDEmptyContent emptyContent = getFactory().createDTDEmptyContent();
-					dtdElement.setContent(emptyContent);
-					break;
-
-				case CMNodeType.ANY :
-					DTDAnyContent anyContent = getFactory().createDTDAnyContent();
-					dtdElement.setContent(anyContent);
-					break;
-
-				case CMNodeType.PCDATA :
-					DTDPCDataContent pcData = getFactory().createDTDPCDataContent();
-					dtdElement.setContent(pcData);
-			}
-
-		}
-		else if (cmNode instanceof CMReferenceNode) {
-			CMReferenceNode rn = (CMReferenceNode) cmNode;
-			if (rn.getType() == CMNodeType.ENTITY_REFERENCE) {
-				String entityName = rn.getName().trim();
-
-				DTDEntity anEntity = (DTDEntity) dtdUtil.getPEPool().get(entityName);
-				if (anEntity != null) {
-					//
-					// Create an DTDEntityReference and set its referenced
-					// element
-					//
-					DTDEntityReferenceContent enRef = getFactory().createDTDEntityReferenceContent();
-					enRef.setElementReferencedEntity(anEntity);
-
-					DTDOccurrenceType occurrenceType = DTDOccurrenceType.get(computeMofOccurrence(rn));
-					enRef.setOccurrence(occurrenceType);
-
-					dtdElement.setContent(enRef);
-				}
-				else { // create default content
-					DTDEmptyContent emptyContent = getFactory().createDTDEmptyContent();
-					dtdElement.setContent(emptyContent);
-				}
-			}
-			else {
-				//
-				// Find the real element for this element references
-				// If the real element does not yet exist, create it
-				//
-				DTDElement anElement = createOrFindElement(rn.getName(), dtdElement);
-
-				//
-				// Create an DTDElementReference and set its referenced
-				// element
-				//
-				DTDElementReferenceContent elemRef = getFactory().createDTDElementReferenceContent();
-				elemRef.setReferencedElement(anElement);
-
-				DTDOccurrenceType occurrenceType = DTDOccurrenceType.get(computeMofOccurrence(rn));
-				elemRef.setOccurrence(occurrenceType);
-
-				// setContent to DTDElementReference
-				dtdElement.setContent(elemRef);
-
-			}
-		}
-		else if (cmNode instanceof CMGroupNode) {
-			CMGroupNode grpNode = (CMGroupNode) cmNode;
-			DTDGroupContent groupContent = getFactory().createDTDGroupContent();
-			DTDGroupKind groupKind = DTDGroupKind.get(computeMofGroupKind(grpNode.getGroupKind()));
-			groupContent.setGroupKind(groupKind);
-			DTDOccurrenceType occurrenceType = DTDOccurrenceType.get(computeMofOccurrence(grpNode));
-			groupContent.setOccurrence(occurrenceType);
-
-			// just use the locator for the element as the closest guess
-			processGroupContent(groupContent, grpNode);
-			dtdElement.setContent(groupContent);
-		}
-		else if (cmNode == null) {
-			// bad thing happened here, just create a pcdata
-			DTDEmptyContent emptyContent = getFactory().createDTDEmptyContent();
-			dtdElement.setContent(emptyContent);
-		}
-
-
-	}
-
-
-	/**
-	 * Add a new group to the current group
-	 * 
-	 * @param parent -
-	 *            the parent node for this group element
-	 * @param op1Node -
-	 *            the group e.g. (a,b)
-	 * @param op2Node -
-	 *            set only if called by processCM1op e.g. (a,b)+
-	 */
-	void processGroupContent(DTDGroupContent parent, CMGroupNode grpNode) {
-		Enumeration children = grpNode.getChildren().elements();
-		DTDFactory factory = getFactory();
-		while (children.hasMoreElements()) {
-			CMNode cnode = (CMNode) children.nextElement();
-
-			if (cnode instanceof CMGroupNode) {
-				CMGroupNode gNode = (CMGroupNode) cnode;
-				DTDGroupContent groupContent = factory.createDTDGroupContent();
-				DTDGroupKind groupKind = DTDGroupKind.get(computeMofGroupKind(gNode.getGroupKind()));
-				groupContent.setGroupKind(groupKind);
-				DTDOccurrenceType occurrenceType = DTDOccurrenceType.get(computeMofOccurrence(gNode));
-				groupContent.setOccurrence(occurrenceType);
-
-				parent.getContent().add(groupContent);
-				processGroupContent(groupContent, gNode);
-			}
-			else if (cnode instanceof CMBasicNode) {
-				CMBasicNode n = (CMBasicNode) cnode;
-				if (n.getType() == CMNodeType.PCDATA) {
-					// Create a DTDPCDataContent for a leaf PCData node
-					//
-					DTDPCDataContent pcData = factory.createDTDPCDataContent();
-					// Add #PCDATA to the Group, i.e Mixed content model
-					parent.getContent().add(pcData);
-				}
-			}
-			else if (cnode instanceof CMReferenceNode) {
-				CMReferenceNode rn = (CMReferenceNode) cnode;
-				if (rn.getType() == CMNodeType.ELEMENT_REFERENCE) {
-					// System.out.println("CM Element Ref name: " +
-					// rn.getName());
-					//
-					// Create an DTDElementReference and set its referenced
-					// element
-					//
-					DTDElementReferenceContent elemRef = factory.createDTDElementReferenceContent();
-
-					//
-					// Find the real element for this element references
-					// If the real element does not yet exist, create it
-					//
-					DTDElement anElement = createOrFindElement(rn.getName(), elemRef);
-
-					elemRef.setReferencedElement(anElement);
-
-					DTDOccurrenceType occurrenceType = DTDOccurrenceType.get(computeMofOccurrence(rn));
-					elemRef.setOccurrence(occurrenceType);
-
-					// Add DTDElementReference to the Group
-					parent.getContent().add(elemRef);
-				}
-				else // PE Reference
-				{
-					String entityName = rn.getName().trim();
-
-					// System.out.println("CM PE Ref name: " + entityName);
-					DTDEntity anEntity = (DTDEntity) dtdUtil.getPEPool().get(entityName);
-					if (anEntity != null) {
-						//
-						// Create an DTDEntityReference and set its referenced
-						// element
-						//
-						DTDEntityReferenceContent enRef = factory.createDTDEntityReferenceContent();
-						enRef.setElementReferencedEntity(anEntity);
-
-						DTDOccurrenceType occurrenceType = DTDOccurrenceType.get(computeMofOccurrence(rn));
-						enRef.setOccurrence(occurrenceType);
-
-						// Add DTDEntityReference to the Group
-						parent.getContent().add(enRef);
-
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Find the real element that is referenced by the current element
-	 */
-	private DTDElement createOrFindElement(String name, Object obj) {
-		// DTDElement aElement = getDTDFile().findElement(name);
-
-		DTDElement aElement = (DTDElement) dtdUtil.getElementPool().get(name);
-
-		if (aElement != null) {
-			return aElement;
-		}
-
-		String errorMsg = DTDCorePlugin.getDTDString("_ERROR_UNDECLARED_ELEMENT_1");
-		errorMsg += "\"" + name + "\"";
-		errorMsg += DTDCorePlugin.getDTDString("_UI_ERRORPART_UNDECLARED_ELEMENT_2");
-
-		ErrorMessage dtdError = new ErrorMessage();
-
-		dtdError.setErrorMessage(errorMsg);
-		addErrorMessage(dtdError, obj);
-		// System.out.println(errorMsg);
-		// setDTDErrorMessage(errorMsg);
-		getDTDFile().setParseError(true);
-
-		//
-		// Create an empty element for the reference to make it valid
-		//
-
-		DTDFactory factory = getFactory();
-		DTDElement dtdelement = factory.createDTDElement();
-		dtdelement.setName(name);
-
-		DTDEmptyContent emptyContent = factory.createDTDEmptyContent();
-		dtdelement.setContent(emptyContent);
-
-		getDTDFile().getDTDObject().add(dtdelement);
-		dtdUtil.getElementPool().put(name, dtdelement);
-		return dtdelement;
-	}
-
-
-	/**
-	 * Compute the MOF occurrence from the xml4j occurrence
-	 */
-	private int computeMofOccurrence(CMRepeatableNode rnode) {
-		int occurrence = rnode.getOccurrence();
-		int mofoccur = DTDOccurrenceType.ONE;
-
-		if (occurrence == CMNodeType.ZERO_OR_MORE) {
-			mofoccur = DTDOccurrenceType.ZERO_OR_MORE;
-		}
-		else if (occurrence == CMNodeType.ONE_OR_MORE) {
-			mofoccur = DTDOccurrenceType.ONE_OR_MORE;
-		}
-		else if (occurrence == CMNodeType.OPTIONAL) {
-			mofoccur = DTDOccurrenceType.OPTIONAL;
-		}
-		return mofoccur;
-	}
-
-	/**
-	 * Compute the MOF model group from the xml4j model group
-	 */
-	private int computeMofGroupKind(int type) {
-		if (type == CMNodeType.GROUP_CHOICE) {
-			return DTDGroupKind.CHOICE;
-		}
-		else {
-			return DTDGroupKind.SEQUENCE;
-		}
-	}
-
-
-	// /////////////////////////////////////////////////////////////
-	//
-	// Methods for creating the attributes of a DTDElement
-	//
-	// /////////////////////////////////////////////////////////////
-	public void createAttributes(DTDElement element, Attlist attList) {
-		if (attList.getErrorMessage() != null) {
-			addErrorMessage(attList.getErrorMessage(), element);
-		}
-
-		for (int i = 0; i < attList.size(); i++) {
-			AttNode ad = attList.elementAt(i);
-			// DTDAttributeElement dtdAtt=
-			// getDTDAttributeElement(a.getName());
-
-			// only add the AttDef if it is not added yet
-			// ignore the dup AttDef as documented in the XML 1.0 specs
-			// if( dtdAtt==null)
-			addAttribute(element, ad);
-		}
-
-	}
-
-	/**
-	 * Create a DTDAttribute from the xml4j attribute
-	 */
-	public void addAttribute(DTDElement dtdelement, AttNode ad) {
-		DTDAttribute dtdattr = getFactory().createDTDAttribute();
-		dtdelement.getDTDAttribute().add(dtdattr);
-		finishAttribute(dtdattr, ad);
-	}
-
-	// Stuff for populating attribute
-	public void finishAttribute(DTDAttribute dtdattr, AttNode attdef) {
-		boolean parseError = false;
-
-		if (attdef.name.startsWith("%")) {
-			String peName = attdef.name.trim();
-			DTDEntity en = (DTDEntity) dtdUtil.getPEPool().get(peName);
-			if (en != null) {
-				dtdattr.setAttributeNameReferencedEntity(en);
-			}
-		}
-
-		dtdattr.setName(attdef.name);
-
-		int attrType = attdef.getDeclaredType();
-
-		if (attrType == AttNode.PEREFERENCE && attdef.type != null) {
-			String peName = attdef.type.trim();
-			DTDEntity en = (DTDEntity) dtdUtil.getPEPool().get(peName);
-			if (en != null) {
-				dtdattr.setAttributeTypeReferencedEntity(en);
-				setAttrDTDType(dtdattr, getFactory().getDTDBasicType_CDATA()); // hack,
-																				// so
-																				// we
-																				// can
-																				// get
-																				// back
-																				// the
-																				// default
-																				// value
-			}
-			else
-				// set default type
-				setAttrDTDType(dtdattr, getFactory().getDTDBasicType_CDATA());
-
-		}
-		else {
-			switch (attrType) {
-				case AttNode.CDATA :
-					setAttrDTDType(dtdattr, getFactory().getDTDBasicType_CDATA());
-					break;
-
-				case AttNode.ENTITIES :
-					setAttrDTDType(dtdattr, getFactory().getDTDBasicType_ENTITIES());
-					break;
-
-				case AttNode.ENTITY :
-					setAttrDTDType(dtdattr, getFactory().getDTDBasicType_ENTITY());
-					break;
-
-				case AttNode.ID :
-					// check for duplicate ID attribute
-					if (hasIDAttribute(dtdattr)) {
-						String errMsg = DTDCorePlugin.getDTDString("_ERROR_DUP_ID_ATTRIBUTE_1");
-						errMsg += attdef.name + DTDCorePlugin.getDTDString("_UI_ERRORPART_DUP_ID_ATTRIBUTE_2");
-						// dtdattr.getDTDElement().getIElement().setDTDErrorMessage(errMsg);
-						// dtdattr.getDTDElement().getDTDFile().setParseError(true);
-						parseError = true;
-					}
-					setAttrDTDType(dtdattr, getFactory().getDTDBasicType_ID());
-					break;
-
-				case AttNode.IDREF :
-					setAttrDTDType(dtdattr, getFactory().getDTDBasicType_IDREF());
-					break;
-
-				case AttNode.IDREFS :
-					setAttrDTDType(dtdattr, getFactory().getDTDBasicType_IDREFS());
-					break;
-
-				case AttNode.ENUMERATION :
-					setAttrDTDType(dtdattr, createDTDEnumeration(dtdattr, attdef, DTDEnumGroupKind.NAME_TOKEN_GROUP));
-					break;
-
-				case AttNode.NOTATION :
-					setAttrDTDType(dtdattr, createDTDEnumeration(dtdattr, attdef, DTDEnumGroupKind.NOTATION_GROUP));
-					break;
-
-				case AttNode.NMTOKEN :
-					setAttrDTDType(dtdattr, getFactory().getDTDBasicType_NMTOKEN());
-					break;
-
-				case AttNode.NMTOKENS :
-					setAttrDTDType(dtdattr, getFactory().getDTDBasicType_NMTOKENS());
-					break;
-
-				default :
-			// System.out.println("DTDATTR '" +attdef.name + "'Unknown
-			// type..." + attrType);
-			}
-		}
-
-		int attrDefault = attdef.getDefaultType();
-		int defaultKind = DTDDefaultKind.IMPLIED;
-		switch (attrDefault) {
-			case AttNode.FIXED :
-				defaultKind = DTDDefaultKind.FIXED;
-				break;
-
-			case AttNode.IMPLIED :
-				defaultKind = DTDDefaultKind.IMPLIED;
-				break;
-
-			case AttNode.REQUIRED :
-				defaultKind = DTDDefaultKind.REQUIRED;
-				break;
-
-			case AttNode.NOFIXED :
-				defaultKind = DTDDefaultKind.NOFIXED;
-				break;
-
-			default :
-		// System.out.println("DTDATTR '" +attdef.name + "' Unknown default
-		// type... " + attrDefault);
-		}
-
-		DTDDefaultKind defaultKindObj = DTDDefaultKind.get(defaultKind);
-		dtdattr.setDefaultKind(defaultKindObj);
-
-		if (parseError) {
-			return;
-		}
-
-		String defaultValue = attdef.defaultValue;
-		if (defaultValue != null) {
-			if (attrType == AttNode.ENUMERATION || attrType == AttNode.NOTATION) {
-				if (!isDefaultEnumValueValid(attdef, defaultValue)) {
-					String typeString = (attrType == AttNode.ENUMERATION ? "enumeration" : "notation");
-					String errMsg = DTDCorePlugin.getDTDString("_ERROR_INVALID_DEFAULT_ATTR_VALUE_1");
-					errMsg += typeString + DTDCorePlugin.getDTDString("_UI_ERRORPART_INVALID_DEFAULT_ATTR_VALUE_2");
-					errMsg += attdef.name + "'";
-
-					// dtdattr.getDTDElement().getIElement().setDTDErrorMessage(errMsg);
-					// dtdattr.getDTDElement().getDTDFile().setParseError(true);
-					return;
-				}
-			}
-			dtdattr.setDefaultValueString(defaultValue);
-		}
-		// System.out.println("DTDAttr - toMof getDefaultValueString " +
-		// getDefaultValueString());
-		// System.out.println("DTDAttr - toMof getDefaultValue: " +
-		// getDefaultValue());
-	}
-
-	public boolean hasIDAttribute(DTDAttribute dtdattr) {
-		boolean hasID = false;
-
-		DTDElement element = dtdattr.getDTDElement();
-		EList attrs = element.getDTDAttribute();
-
-		Iterator i = attrs.iterator();
-		while (i.hasNext()) {
-			DTDAttribute attr = (DTDAttribute) i.next();
-			DTDType dType = attr.getDTDType();
-			if (dType instanceof DTDBasicType) {
-				if (((DTDBasicType) dType).getKind().getValue() == DTDBasicTypeKind.ID) {
-					hasID = true;
-					break;
-				}
-			}
-		}
-		return hasID;
-	}
-
-	public DTDEnumerationType createDTDEnumeration(DTDAttribute dtdattr, String[] enumValues, int enumKind) {
-		DTDEnumerationType enumeration = getFactory().createDTDEnumerationType();
-		// This is gross, but this is what was done before.
-		DTDAttributeImpl dtdattrimpl = (DTDAttributeImpl) dtdattr;
-		// enum.setID("Enum_" +
-		// ((DTDElement)dtdattrimpl.getMOFDomain()).getName() + "_" +
-		// dtdattr.getName());
-		DTDEnumGroupKind groupKind = DTDEnumGroupKind.get(enumKind);
-		enumeration.setKind(groupKind);
-		// Enumeration values
-		if (enumValues != null) {
-			for (int i = 0; i < enumValues.length; i++) {
-				EEnumLiteral enumLiteral = createEEnumLiteral();
-				// enumVal.setXMIDocument(dtdattr.getXMIDocument());
-				// MOF2EMF Port
-				// enumLiteral.refSetLiteral(enumValues[i]);
-				enumLiteral.setName(enumValues[i]);
-
-				// enumLiteral.setNumber(i);
-				enumeration.getEnumLiterals().add(enumLiteral);
-			}
-		}
-		dtdattr.getDTDElement().getDTDFile().getDTDEnumerationType().add(enumeration);
-		return enumeration;
-	}
-
-	private EEnumLiteral createEEnumLiteral() {
-		EcorePackage ePackage = (EcorePackage) EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
-		// MOF2EMF Port
-		// return ((EcoreFactory)ePackage.getFactory()).createEEnumLiteral();
-		return ePackage.getEcoreFactory().createEEnumLiteral();
-	}
-
-	private DTDEnumerationType createDTDEnumeration(DTDAttribute dtdattr, AttNode attdef, int enumKind) {
-		DTDEnumerationType enumeration = getFactory().createDTDEnumerationType();
-		// This is gross, but this is what was done before.
-		DTDAttributeImpl dtdattrimpl = (DTDAttributeImpl) dtdattr;
-		// enum.setID("Enum_" +
-		// ((DTDElement)dtdattrimpl.getMOFDomain()).getName() + "_" +
-		// dtdattr.getName());
-		DTDEnumGroupKind groupKind = DTDEnumGroupKind.get(enumKind);
-		enumeration.setKind(groupKind);
-		dtdattr.getDTDElement().getDTDFile().getDTDEnumerationType().add(enumeration);
-
-		// Enumeration values
-		Enumeration tokenIter = attdef.elements();
-		if (tokenIter != null) {
-			int i = 0;
-			while (tokenIter.hasMoreElements()) {
-				String val = (String) tokenIter.nextElement();
-				EEnumLiteral enumLiteral = createEEnumLiteral();
-				// enumLiteral.setXMIDocument(dtdattr.getXMIDocument());
-				// MOF2EMF Port
-				// enumLiteral.refSetLiteral(val);
-				enumLiteral.setName(val);
-
-
-				// enumLiteral.setNumber(i++);
-				enumeration.getEnumLiterals().add(enumLiteral);
-			}
-		}
-
-		return enumeration;
-	}
-
-	private boolean isDefaultEnumValueValid(AttNode attdef, String defaultValue) {
-		boolean valid = false;
-		boolean containsPercent = false;
-
-		// Enumeration values
-		Enumeration enumValues = attdef.elements();
-		while (enumValues.hasMoreElements()) {
-			String val = (String) enumValues.nextElement();
-			if (val.equals(defaultValue)) {
-				valid = true;
-				break;
-			}
-			if (val.indexOf('%') >= 0) {
-				containsPercent = true;
-			}
-		}
-		return valid || containsPercent;
-	}
-
-	public void setAttrDTDType(DTDAttribute dtdattr, DTDType type) {
-		dtdattr.setDTDType(type);
-	}
-
-	protected void addErrorMessage(ErrorMessage errMsg, Object obj) {
-		errMsg.setObject(obj);
-		dtdUtil.addErrorMessage(errMsg);
-	}
-
-	// /**
-	// * @generated
-	// */
-	// protected DTDFactoryImpl getFactoryGen() {
-	//
-	// return (DTDFactoryImpl)dtdUtil.getFactory();
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected DTDFile getDTDFileGen() {
-	//
-	// return dtdFile;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitDTDGen(DTD dtd) {
-	//
-	// super.visitDTD(dtd);
-	//
-	//
-	// // - 2nd pass -
-	// // do final processing for Attlists and adding contentModel
-	// addAttlistAndContentModel(dtd,dtdFile);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitElementDeclGen(ElementDecl element) {
-	//
-	// // Element might have been added earlier because it is referenced
-	// String declName = element.getNodeName() ;
-	// // System.out.println("process ElementDecl:" + declName );
-	// DTDElement dtdelement = (DTDElement)
-	// dtdUtil.getElementPool().get(declName);
-	// if (dtdelement == null)
-	// {
-	// // System.out.println("process ElementDecl - not found - create" );
-	// dtdelement = getFactory().createDTDElement();
-	// dtdelement.setName(declName);
-	// dtdFile.getDTDObject().add(dtdelement);
-	// dtdUtil.getElementPool().put(declName,dtdelement);
-	// }
-	//
-	//
-	// super.visitElementDecl(element);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitNotationDeclGen(NotationDecl notation) {
-	//
-	// // Notation might have been added earlier because it is referenced
-	// // by an entity
-	// DTDNotation dtdnot = dtdFile.findNotation( notation.getNodeName() );
-	// if (dtdnot == null)
-	// {
-	// dtdnot = getFactory().createDTDNotation();
-	// dtdFile.getDTDObject().add(dtdnot);
-	// }
-	// dtdnot.setName(notation.getNodeName());
-	//
-	//
-	// if (notation.getSystemId()!= null )
-	// dtdnot.setSystemID(notation.getSystemId());
-	// if (notation.getPublicId()!= null )
-	// dtdnot.setPublicID(notation.getPublicId());
-	//
-	//
-	// if (notation.getComment()!=null)
-	// dtdnot.setComment(notation.getComment());
-	// if (notation.getErrorMessage()!=null)
-	// {
-	// addErrorMessage(notation.getErrorMessage(), dtdnot);
-	// }
-	//
-	//
-	// super.visitNotationDecl(notation);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitParameterEntityReferenceDeclGen(EntityDecl entity)
-	// {
-	//
-	// // This is a parameter entity reference.
-	// // Add the link to the real entity that it references
-	// DTDParameterEntityReference parmEntRef =
-	// getFactory().createDTDParameterEntityReference();
-	// dtdFile.getDTDObject().add(parmEntRef);
-	//
-	//
-	// String entityName = entity.getNodeName();
-	//
-	//
-	// // Add the reference to the DTDEntity
-	// DTDEntity dtdentity = getDTDFile().findEntity(entityName);
-	// if (dtdentity != null)
-	// {
-	// parmEntRef.setEntity(dtdentity);
-	// }
-	// if (entity.getErrorMessage()!=null)
-	// {
-	// addErrorMessage(entity.getErrorMessage(), dtdentity);
-	// }
-	// // System.out.println("adding PE reference: " + declName);
-	//
-	//
-	// super.visitParameterEntityReferenceDecl(entity);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitExternalEntityDeclGen(EntityDecl entity) {
-	//
-	// DTDEntity dtdEntity = createDTDEntity(entity);
-	// // System.out.println("adding entity: " + declName);
-	// DTDExternalEntity extEntity = getFactory().createDTDExternalEntity();
-	// dtdEntity.setContent(extEntity);
-	//
-	//
-	// finishExternalEntity(extEntity, entity);
-	// // System.out.println(" ext entity toMof: " );
-	// if (dtdEntity.isParameterEntity())
-	// {
-	//
-	//
-	// dtdUtil.getPEPool().put("%"+entity.getNodeName()+";", dtdEntity);
-	// }
-	//
-	//
-	// super.visitExternalEntityDecl(entity);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitInternalEntityDeclGen(EntityDecl entity) {
-	//
-	// DTDEntity dtdEntity = createDTDEntity(entity);
-	//
-	//
-	// DTDInternalEntity intEntity = getFactory().createDTDInternalEntity();
-	// dtdEntity.setContent(intEntity);
-	// intEntity.setValue(entity.getValue());
-	// // System.out.println(" int entity toMof: " );
-	// if (dtdEntity.isParameterEntity())
-	// {
-	// dtdUtil.getPEPool().put("%"+entity.getNodeName()+";", dtdEntity);
-	// }
-	//
-	//
-	// super.visitInternalEntityDecl(entity);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void addAttlistAndContentModelGen(DTD dtd, DTDFile dFile) {
-	//
-	// //System.out.println("addAttListAndCotentModel - dtd:" +
-	// dtd.getName());
-	// Enumeration en = dtd.externalElements();
-	// while (en.hasMoreElements())
-	// {
-	// Object e = en.nextElement();
-	// if ( e instanceof ElementDecl )
-	// {
-	// DTDElement dtdelement = (DTDElement) dtdUtil.getElementPool().get(
-	// ((ElementDecl)e).getNodeName() );
-	// if (dtdelement == null)
-	// {
-	// dtdelement = getFactory().createDTDElement();
-	// dtdFile.getDTDObject().add(dtdelement);
-	// }
-	// finishElementDecl(dtdelement, (ElementDecl) e);
-	// }
-	// else if ( e instanceof Attlist )
-	// {
-	// processAttList((Attlist) e);
-	// }
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void processAttListGen(Attlist attList) {
-	//
-	// DTDElement e = (DTDElement)
-	// dtdUtil.getElementPool().get(attList.getNodeName());
-	// if ( e != null )
-	// {
-	// // Element has been added. Add the attributes
-	// //System.out.println(" processAttlist - adding Attlist:" +
-	// attList.getNodeName());
-	// createAttributes(e, attList);
-	// }
-	// else
-	// {
-	// //System.out.println("!!!!!!!!! element is null ");
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void finishExternalEntityGen(DTDExternalEntity extEntity,
-	// EntityDecl entityDecl) {
-	//
-	// updateSystemID(extEntity, entityDecl);
-	// extEntity.setPublicID(entityDecl.getPublicId());
-	//
-	//
-	// String notationName = entityDecl.getNotationName();
-	// if (notationName != null)
-	// {
-	// DTDNotation dtdNotation = createOrFindNotation(extEntity,
-	// notationName,true);
-	// extEntity.setNotation(dtdNotation);
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected DTDNotation createOrFindNotationGen(DTDExternalEntity
-	// extEntity, String name, boolean create) {
-	//
-	// DTDNotation aNotation =
-	// extEntity.getDTDEntity().getDTDFile().findNotation(name);
-	// if (aNotation != null)
-	// {
-	// return aNotation;
-	// }
-	//
-	//
-	// //
-	// // Create a notation for the reference
-	// //
-	// if (create)
-	// {
-	// aNotation = getFactory().createDTDNotation();
-	// dtdFile.getDTDObject().add(aNotation);
-	// aNotation.setName(name);
-	// }
-	// return aNotation;
-	// }
-	// /**
-	// * The SystemID attribute is set to whatever the user enters
-	// * e.g. com/ibm/b2b/xmimodels/xxx.dtd.xmi
-	// *
-	// * In the unparse() method, parse out the DTD file name from
-	// * the classpath name.
-	// * e.g. returns xxx.dtd
-	// */
-	// protected void updateSystemIDGen(DTDExternalEntity extEntity,
-	// EntityDecl entityDecl) {
-	//
-	// String systemId = entityDecl.getSystemId();
-	// String publicId = entityDecl.getPublicId();
-	// if (systemId != null)
-	// {
-	// IdResolver idResolver = new IdResolverImpl(dtd.getName());
-	// String uri = idResolver.resolveId(publicId, systemId);
-	// ExternalDTDModel ed = dtdUtil.getExternalDTDModel(resources, uri);
-	// if (ed != null)
-	// {
-	// DTDFile referenceDtdFile = ed.getExternalDTDFile();
-	// extEntity.setEntityReferencedFromAnotherFile(referenceDtdFile);
-	// extEntity.setSystemID(systemId);
-	// }
-	// else
-	// {
-	// if (entityDecl.getErrorMessage() == null)
-	// {
-	// ErrorMessage dtdError = new ErrorMessage();
-	// dtdError.setErrorMessage(DTDCorePlugin.getDTDString("_ERROR_INCL_FILE_LOAD_FAILURE")
-	// + " '" + systemId + "'");
-	// addErrorMessage(dtdError, extEntity.getDTDEntity());
-	// }
-	//        
-	// if (systemId != null)
-	// {
-	// extEntity.setSystemID(systemId);
-	// }
-	// else
-	// {
-	// extEntity.setSystemID("");
-	// }
-	// }
-	// } // end of if ()
-	// else
-	// {
-	// // set the system id to be ""
-	// extEntity.setSystemID("");
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected DTDEntity createDTDEntityGen(EntityDecl entity) {
-	//
-	// // create and do what we can to fill in some basic things
-	// DTDEntity dtdEntity = getFactory().createDTDEntity();
-	// dtdFile.getDTDObject().add(dtdEntity);
-	//
-	//
-	// dtdEntity.setName(entity.getNodeName());
-	// dtdEntity.setParameterEntity(entity.isParameter());
-	// if (entity.getComment()!=null)
-	// {
-	// dtdEntity.setComment(entity.getComment());
-	// }
-	// if (entity.getErrorMessage()!=null)
-	// {
-	// addErrorMessage(entity.getErrorMessage(), dtdEntity);
-	// }
-	//
-	//
-	// return dtdEntity;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void finishElementDeclGen(DTDElement dtdElement, ElementDecl
-	// ed) {
-	//
-	// dtdElement.setName(ed.getNodeName());
-	//
-	//
-	// CMNode cmNode = ed.getContentModelNode();
-	//
-	//
-	// if (ed.getComment()!=null)
-	// {
-	// dtdElement.setComment(ed.getComment());
-	// }
-	// if (ed.getErrorMessage()!=null)
-	// {
-	// addErrorMessage(ed.getErrorMessage(), dtdElement);
-	// }
-	//
-	//
-	// if (cmNode instanceof CMBasicNode)
-	// {
-	// CMBasicNode bn = (CMBasicNode)cmNode;
-	// switch (bn.getType())
-	// {
-	// case CMNodeType.EMPTY :
-	// DTDEmptyContent emptyContent = getFactory().createDTDEmptyContent();
-	// dtdElement.setContent(emptyContent);
-	// break;
-	//
-	//
-	// case CMNodeType.ANY :
-	// DTDAnyContent anyContent = getFactory().createDTDAnyContent();
-	// dtdElement.setContent(anyContent);
-	// break;
-	//
-	//
-	// case CMNodeType.PCDATA:
-	// DTDPCDataContent pcData = getFactory().createDTDPCDataContent();
-	// dtdElement.setContent(pcData);
-	// }
-	//
-	//
-	// }
-	// else if (cmNode instanceof CMReferenceNode)
-	// {
-	// CMReferenceNode rn = (CMReferenceNode) cmNode;
-	// if (rn.getType() == CMNodeType.ENTITY_REFERENCE)
-	// {
-	// String entityName = rn.getName().trim();
-	//
-	//
-	// DTDEntity anEntity = (DTDEntity) dtdUtil.getPEPool().get(entityName);
-	// if (anEntity!=null)
-	// {
-	// //
-	// // Create an DTDEntityReference and set its referenced element
-	// //
-	// DTDEntityReferenceContent enRef =
-	// getFactory().createDTDEntityReferenceContent();
-	// enRef.setElementReferencedEntity(anEntity);
-	//
-	// DTDOccurrenceType occurrenceType =
-	// DTDOccurrenceType.get(computeMofOccurrence(rn));
-	// enRef.setOccurrence(occurrenceType);
-	//
-	// dtdElement.setContent(enRef);
-	// }
-	// else
-	// { // create default content
-	// DTDEmptyContent emptyContent = getFactory().createDTDEmptyContent();
-	// dtdElement.setContent(emptyContent);
-	// }
-	// }
-	// else
-	// {
-	// //
-	// // Find the real element for this element references
-	// // If the real element does not yet exist, create it
-	// //
-	// DTDElement anElement = createOrFindElement(rn.getName(), dtdElement);
-	//
-	//
-	// //
-	// // Create an DTDElementReference and set its referenced element
-	// //
-	// DTDElementReferenceContent elemRef =
-	// getFactory().createDTDElementReferenceContent();
-	// elemRef.setReferencedElement(anElement);
-	//
-	// DTDOccurrenceType occurrenceType =
-	// DTDOccurrenceType.get(computeMofOccurrence(rn));
-	// elemRef.setOccurrence(occurrenceType);
-	//
-	// // setContent to DTDElementReference
-	// dtdElement.setContent(elemRef);
-	//
-	//
-	// }
-	// }
-	// else if (cmNode instanceof CMGroupNode)
-	// {
-	// CMGroupNode grpNode = (CMGroupNode)cmNode;
-	// DTDGroupContent groupContent = getFactory().createDTDGroupContent();
-	// DTDGroupKind groupKind =
-	// DTDGroupKind.get(computeMofGroupKind(grpNode.getGroupKind()));
-	// groupContent.setGroupKind(groupKind);
-	// DTDOccurrenceType occurrenceType =
-	// DTDOccurrenceType.get(computeMofOccurrence(grpNode));
-	// groupContent.setOccurrence(occurrenceType);
-	//
-	// // just use the locator for the element as the closest guess
-	// processGroupContent(groupContent, grpNode);
-	// dtdElement.setContent(groupContent);
-	// }
-	// else if (cmNode == null)
-	// {
-	// // bad thing happened here, just create a pcdata
-	// DTDEmptyContent emptyContent = getFactory().createDTDEmptyContent();
-	// dtdElement.setContent(emptyContent);
-	// }
-	// }
-	// /**
-	// * Add a new group to the current group
-	// * @param parent - the parent node for this group element
-	// * @param op1Node - the group
-	// * e.g. (a,b)
-	// * @param op2Node - set only if called by processCM1op
-	// * e.g. (a,b)+
-	// */
-	// protected void processGroupContentGen(DTDGroupContent parent,
-	// CMGroupNode grpNode) {
-	//
-	// Enumeration children = grpNode.getChildren().elements();
-	// DTDFactory factory = getFactory();
-	// while (children.hasMoreElements())
-	// {
-	// CMNode cnode = (CMNode) children.nextElement();
-	//
-	//
-	// if (cnode instanceof CMGroupNode)
-	// {
-	// CMGroupNode gNode = (CMGroupNode)cnode;
-	// DTDGroupContent groupContent = factory.createDTDGroupContent();
-	// DTDGroupKind groupKind =
-	// DTDGroupKind.get(computeMofGroupKind(gNode.getGroupKind()));
-	// groupContent.setGroupKind(groupKind);
-	// DTDOccurrenceType occurrenceType =
-	// DTDOccurrenceType.get(computeMofOccurrence(gNode));
-	// groupContent.setOccurrence(occurrenceType);
-	//
-	// parent.getContent().add(groupContent);
-	// processGroupContent(groupContent,gNode);
-	// }
-	// else if (cnode instanceof CMBasicNode)
-	// {
-	// CMBasicNode n = (CMBasicNode)cnode;
-	// if (n.getType() == CMNodeType.PCDATA)
-	// {
-	// // Create a DTDPCDataContent for a leaf PCData node
-	// //
-	// DTDPCDataContent pcData = factory.createDTDPCDataContent();
-	// // Add #PCDATA to the Group, i.e Mixed content model
-	// parent.getContent().add(pcData);
-	// }
-	// }
-	// else if (cnode instanceof CMReferenceNode)
-	// {
-	// CMReferenceNode rn = (CMReferenceNode)cnode;
-	// if (rn.getType()==CMNodeType.ELEMENT_REFERENCE)
-	// {
-	// // System.out.println("CM Element Ref name: " + rn.getName());
-	// //
-	// // Create an DTDElementReference and set its referenced element
-	// //
-	// DTDElementReferenceContent elemRef =
-	// factory.createDTDElementReferenceContent();
-	//
-	//
-	// //
-	// // Find the real element for this element references
-	// // If the real element does not yet exist, create it
-	// //
-	// DTDElement anElement = createOrFindElement(rn.getName(), elemRef);
-	//
-	//
-	// elemRef.setReferencedElement(anElement);
-	// DTDOccurrenceType occurrenceType =
-	// DTDOccurrenceType.get(computeMofOccurrence(rn));
-	// elemRef.setOccurrence(occurrenceType);
-	//
-	// // Add DTDElementReference to the Group
-	// parent.getContent().add(elemRef);
-	// }
-	// else // PE Reference
-	// {
-	// String entityName = rn.getName().trim();
-	//
-	//
-	// // System.out.println("CM PE Ref name: " + entityName);
-	// DTDEntity anEntity = (DTDEntity) dtdUtil.getPEPool().get(entityName);
-	// if (anEntity!=null)
-	// {
-	// //
-	// // Create an DTDEntityReference and set its referenced element
-	// //
-	// DTDEntityReferenceContent enRef =
-	// factory.createDTDEntityReferenceContent();
-	// enRef.setElementReferencedEntity(anEntity);
-	//             
-	// DTDOccurrenceType occurrenceType =
-	// DTDOccurrenceType.get(computeMofOccurrence(rn));
-	// enRef.setOccurrence(occurrenceType);
-	//
-	//
-	// // Add DTDEntityReference to the Group
-	// parent.getContent().add(enRef);
-	//
-	//
-	// }
-	// }
-	// }
-	// }
-	// }
-	// /**
-	// * Find the real element that is referenced by the current element
-	// */
-	// protected DTDElement createOrFindElementGen(String name, Object obj) {
-	//
-	// // DTDElement aElement = getDTDFile().findElement(name);
-	//
-	//
-	// DTDElement aElement = (DTDElement) dtdUtil.getElementPool().get(name);
-	//
-	//
-	// if (aElement != null)
-	// {
-	// return aElement;
-	// }
-	//
-	//
-	// String errorMsg =
-	// DTDCorePlugin.getDTDString("_ERROR_UNDECLARED_ELEMENT_1");
-	// errorMsg += "\"" + name + "\"";
-	// errorMsg +=
-	// DTDCorePlugin.getDTDString("_UI_ERRORPART_UNDECLARED_ELEMENT_2");
-	//
-	//
-	// ErrorMessage dtdError = new ErrorMessage();
-	//     
-	// dtdError.setErrorMessage(errorMsg);
-	// addErrorMessage(dtdError, obj);
-	// // System.out.println(errorMsg);
-	// // setDTDErrorMessage(errorMsg);
-	// getDTDFile().setParseError(true);
-	//
-	//
-	// //
-	// // Create an empty element for the reference to make it valid
-	// //
-	//
-	//
-	// DTDFactory factory = getFactory();
-	// DTDElement dtdelement = factory.createDTDElement();
-	// dtdelement.setName(name);
-	//
-	//
-	// DTDEmptyContent emptyContent = factory.createDTDEmptyContent();
-	// dtdelement.setContent(emptyContent);
-	//
-	//
-	// getDTDFile().getDTDObject().add(dtdelement);
-	// dtdUtil.getElementPool().put(name,dtdelement);
-	// return dtdelement;
-	// }
-	// /**
-	// * Compute the MOF occurrence from the xml4j occurrence
-	// */
-	// protected int computeMofOccurrenceGen(CMRepeatableNode rnode) {
-	//
-	// int occurrence = rnode.getOccurrence();
-	// int mofoccur = DTDOccurrenceType.ONE;
-	//
-	//
-	// if (occurrence == CMNodeType.ZERO_OR_MORE)
-	// {
-	// mofoccur = DTDOccurrenceType.ZERO_OR_MORE;
-	// }
-	// else if (occurrence == CMNodeType.ONE_OR_MORE)
-	// {
-	// mofoccur = DTDOccurrenceType.ONE_OR_MORE;
-	// }
-	// else if (occurrence == CMNodeType.OPTIONAL)
-	// {
-	// mofoccur = DTDOccurrenceType.OPTIONAL;
-	// }
-	// return mofoccur;
-	// }
-	// /**
-	// * Compute the MOF model group from the xml4j model group
-	// */
-	// protected int computeMofGroupKindGen(int type) {
-	//
-	// if (type == CMNodeType.GROUP_CHOICE)
-	// {
-	// return DTDGroupKind.CHOICE;
-	// }
-	// else
-	// {
-	// return DTDGroupKind.SEQUENCE;
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void createAttributesGen(DTDElement element, Attlist attList)
-	// {
-	//
-	// if (attList.getErrorMessage()!=null)
-	// {
-	// addErrorMessage(attList.getErrorMessage(), element);
-	// }
-	//
-	//
-	// for (int i=0;i<attList.size();i++)
-	// {
-	// AttNode ad = (AttNode) attList.elementAt(i);
-	// // DTDAttributeElement dtdAtt= getDTDAttributeElement(a.getName());
-	//
-	//
-	// // only add the AttDef if it is not added yet
-	// // ignore the dup AttDef as documented in the XML 1.0 specs
-	// //if( dtdAtt==null)
-	// addAttribute(element, ad);
-	// }
-	// }
-	// /**
-	// * Create a DTDAttribute from the xml4j attribute
-	// */
-	// protected void addAttributeGen(DTDElement dtdelement, AttNode ad) {
-	//
-	// DTDAttribute dtdattr = getFactory().createDTDAttribute();
-	// dtdelement.getDTDAttribute().add(dtdattr);
-	// finishAttribute(dtdattr, ad);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void finishAttributeGen(DTDAttribute dtdattr, AttNode attdef)
-	// {
-	//
-	// boolean parseError = false;
-	//
-	//
-	// if (attdef.name.startsWith("%"))
-	// {
-	// String peName = attdef.name.trim();
-	// DTDEntity en = (DTDEntity) dtdUtil.getPEPool().get(peName);
-	// if (en!=null)
-	// {
-	// dtdattr.setAttributeNameReferencedEntity(en);
-	// }
-	// }
-	//
-	//
-	// dtdattr.setName(attdef.name);
-	//
-	//
-	// int attrType = attdef.getDeclaredType();
-	//
-	//
-	// if (attrType==AttNode.PEREFERENCE && attdef.type!=null)
-	// {
-	// String peName = attdef.type.trim();
-	// DTDEntity en = (DTDEntity) dtdUtil.getPEPool().get(peName);
-	// if (en!=null)
-	// {
-	// dtdattr.setAttributeTypeReferencedEntity(en);
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_CDATA()); // hack,
-	// so we can get back the default value
-	// }
-	// else //set default type
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_CDATA());
-	//
-	//
-	// }
-	// else
-	// {
-	// switch (attrType)
-	// {
-	// case AttNode.CDATA:
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_CDATA());
-	// break;
-	//
-	//
-	// case AttNode.ENTITIES:
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_ENTITIES());
-	// break;
-	//
-	//
-	// case AttNode.ENTITY:
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_ENTITY());
-	// break;
-	//
-	//
-	// case AttNode.ID:
-	// // check for duplicate ID attribute
-	// if (hasIDAttribute(dtdattr))
-	// {
-	// String errMsg = DTDCorePlugin.getDTDString("_ERROR_DUP_ID_ATTRIBUTE_1");
-	// errMsg += attdef.name +
-	// DTDCorePlugin.getDTDString("_UI_ERRORPART_DUP_ID_ATTRIBUTE_2");
-	// // dtdattr.getDTDElement().getIElement().setDTDErrorMessage(errMsg);
-	// // dtdattr.getDTDElement().getDTDFile().setParseError(true);
-	// parseError = true;
-	// }
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_ID());
-	// break;
-	//
-	//
-	// case AttNode.IDREF:
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_IDREF());
-	// break;
-	//
-	//
-	// case AttNode.IDREFS:
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_IDREFS());
-	// break;
-	//
-	//
-	// case AttNode.ENUMERATION:
-	// setAttrDTDType(dtdattr, createDTDEnumeration(dtdattr, attdef,
-	// DTDEnumGroupKind.NAME_TOKEN_GROUP));
-	// break;
-	//
-	//
-	// case AttNode.NOTATION:
-	// setAttrDTDType(dtdattr, createDTDEnumeration(dtdattr, attdef,
-	// DTDEnumGroupKind.NOTATION_GROUP));
-	// break;
-	//
-	//
-	// case AttNode.NMTOKEN:
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_NMTOKEN());
-	// break;
-	//
-	//
-	// case AttNode.NMTOKENS:
-	// setAttrDTDType(dtdattr, getFactory().getDTDBasicType_NMTOKENS());
-	// break;
-	//
-	//
-	// default:
-	// // System.out.println("DTDATTR '" +attdef.name + "'Unknown type..." +
-	// attrType);
-	// }
-	// }
-	//
-	//
-	// int attrDefault = attdef.getDefaultType();
-	// int defaultKind = DTDDefaultKind.IMPLIED;
-	// switch (attrDefault)
-	// {
-	// case AttNode.FIXED:
-	// defaultKind = DTDDefaultKind.FIXED;
-	// break;
-	//
-	//
-	// case AttNode.IMPLIED:
-	// defaultKind = DTDDefaultKind.IMPLIED;
-	// break;
-	//
-	//
-	// case AttNode.REQUIRED:
-	// defaultKind = DTDDefaultKind.REQUIRED;
-	// break;
-	//
-	//
-	// case AttNode.NOFIXED:
-	// defaultKind = DTDDefaultKind.NOFIXED;
-	// break;
-	//
-	//
-	// default:
-	// // System.out.println("DTDATTR '" +attdef.name + "' Unknown default
-	// type... " + attrDefault);
-	// }
-	//
-	// DTDDefaultKind defaultKindObj = DTDDefaultKind.get(defaultKind);
-	// dtdattr.setDefaultKind(defaultKindObj);
-	//
-	// if (parseError)
-	// {
-	// return;
-	// }
-	//
-	//
-	// String defaultValue = attdef.defaultValue;
-	// if (defaultValue != null)
-	// {
-	// if (attrType == AttNode.ENUMERATION || attrType == AttNode.NOTATION)
-	// {
-	// if (! isDefaultEnumValueValid(attdef,defaultValue))
-	// {
-	// String typeString =
-	// (attrType==AttNode.ENUMERATION?"enumeration":"notation");
-	// String errMsg =
-	// DTDCorePlugin.getDTDString("_ERROR_INVALID_DEFAULT_ATTR_VALUE_1");
-	// errMsg += typeString +
-	// DTDCorePlugin.getDTDString("_UI_ERRORPART_INVALID_DEFAULT_ATTR_VALUE_2");
-	// errMsg += attdef.name + "'";
-	//
-	//
-	// // dtdattr.getDTDElement().getIElement().setDTDErrorMessage(errMsg);
-	// // dtdattr.getDTDElement().getDTDFile().setParseError(true);
-	// return;
-	// }
-	// }
-	// dtdattr.setDefaultValueString(defaultValue);
-	// }
-	// // System.out.println("DTDAttr - toMof getDefaultValueString " +
-	// getDefaultValueString());
-	// // System.out.println("DTDAttr - toMof getDefaultValue: " +
-	// getDefaultValue());
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected boolean hasIDAttributeGen(DTDAttribute dtdattr) {
-	//
-	// boolean hasID = false;
-	//
-	//
-	// DTDElement element = dtdattr.getDTDElement();
-	// EList attrs = element.getDTDAttribute();
-	//
-	//
-	// Iterator i = attrs.iterator();
-	// while (i.hasNext())
-	// {
-	// DTDAttribute attr = (DTDAttribute) i.next();
-	// DTDType dType = attr.getDTDType();
-	// if (dType instanceof DTDBasicType)
-	// {
-	// if ( ((DTDBasicType)dType).getKind().getValue() == DTDBasicTypeKind.ID)
-	// {
-	// hasID = true;
-	// break;
-	// }
-	// }
-	// }
-	// return hasID;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected DTDEnumerationType createDTDEnumerationGen(DTDAttribute
-	// dtdattr, String[] enumValues, int enumKind) {
-	//
-	// DTDEnumerationType enum = getFactory().createDTDEnumerationType();
-	// // This is gross, but this is what was done before.
-	// DTDAttributeImpl dtdattrimpl = (DTDAttributeImpl) dtdattr;
-	// // enum.setID("Enum_" +
-	// ((DTDElement)dtdattrimpl.getMOFDomain()).getName() + "_" +
-	// dtdattr.getName());
-	// DTDEnumGroupKind groupKind = DTDEnumGroupKind.get(enumKind);
-	// enum.setKind(groupKind);
-	// // Enumeration values
-	// if (enumValues!=null)
-	// {
-	// for(int i=0;i<enumValues.length;i++)
-	// {
-	// EEnumLiteral enumLiteral = createEEnumLiteral();
-	// // enumVal.setXMIDocument(dtdattr.getXMIDocument());
-	// enumLiteral.refSetLiteral(enumValues[i]);
-	// // enumLiteral.setNumber(i);
-	// enum.getEnumLiterals().add(enumLiteral);
-	// }
-	// }
-	// dtdattr.getDTDElement().getDTDFile().getDTDEnumerationType().add(enum);
-	// return enum;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected EEnumLiteral createEEnumLiteralGen() {
-	//
-	// EcorePackage ePackage =
-	// (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
-	// return ((EcoreFactory)ePackage.getFactory()).createEEnumLiteral();
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected DTDEnumerationType createDTDEnumerationGen(DTDAttribute
-	// dtdattr, AttNode attdef, int enumKind) {
-	//
-	// DTDEnumerationType enum = getFactory().createDTDEnumerationType();
-	// // This is gross, but this is what was done before.
-	// DTDAttributeImpl dtdattrimpl = (DTDAttributeImpl) dtdattr;
-	// // enum.setID("Enum_" +
-	// ((DTDElement)dtdattrimpl.getMOFDomain()).getName() + "_" +
-	// dtdattr.getName());
-	// DTDEnumGroupKind groupKind = DTDEnumGroupKind.get(enumKind);
-	// enum.setKind(groupKind);
-	// dtdattr.getDTDElement().getDTDFile().getDTDEnumerationType().add(enum);
-	//
-	//
-	// // Enumeration values
-	// Enumeration tokenIter = attdef.elements();
-	// if (tokenIter != null) {
-	// int i=0;
-	// while (tokenIter.hasMoreElements())
-	// {
-	// String val = (String)tokenIter.nextElement();
-	// EEnumLiteral enumLiteral = createEEnumLiteral();
-	// // enumLiteral.setXMIDocument(dtdattr.getXMIDocument());
-	//        
-	//
-	// enumLiteral.refSetLiteral(val);
-	// // enumLiteral.setNumber(i++);
-	// enum.getEnumLiterals().add(enumLiteral);
-	// }
-	// }
-	//
-	//
-	// return enum;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected boolean isDefaultEnumValueValidGen(AttNode attdef, String
-	// defaultValue) {
-	//
-	// boolean valid = false;
-	// boolean containsPercent = false;
-	//
-	//
-	// // Enumeration values
-	// Enumeration enumValues = attdef.elements();
-	// while (enumValues.hasMoreElements())
-	// {
-	// String val = (String)enumValues.nextElement();
-	// if (val.equals(defaultValue))
-	// {
-	// valid = true;
-	// break;
-	// }
-	// if (val.indexOf('%') >= 0)
-	// {
-	// containsPercent = true;
-	// }
-	// }
-	// return valid || containsPercent;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void setAttrDTDTypeGen(DTDAttribute dtdattr, DTDType type) {
-	//
-	// dtdattr.setDTDType(type);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void addErrorMessageGen(ErrorMessage errMsg, Object obj) {
-	//
-	// errMsg.setObject(obj);
-	// dtdUtil.addErrorMessage(errMsg);
-	// }
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDObjectFinder.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDObjectFinder.java
deleted file mode 100644
index 6228b92..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDObjectFinder.java
+++ /dev/null
@@ -1,175 +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.dtd.core.internal.emf.util;
-
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.DTDSourceOffset;
-
-public class DTDObjectFinder extends DTDVisitor {
-	public static final String copyright = "(c) Copyright IBM Corporation 2000, 2002.";
-
-	public class SourceOffset {
-		// Convenience class to find containment of object
-		private int start, end;
-
-		public SourceOffset(int start, int end) {
-			this.start = start;
-			this.end = end;
-		}
-
-		public boolean contains(SourceOffset other) {
-			if (this.start <= other.start && other.start <= this.end) {
-				return true;
-			} // end of if ()
-			return false;
-		}
-
-	}
-
-	SourceOffset searchLocation;
-
-	private SourceOffset offsetObjectFor(DTDSourceOffset s) {
-		return new SourceOffset(s.getStartOffset(), s.getEndOffset());
-	}
-
-	private void checkContainment(DTDObject o) {
-		if (offsetObjectFor((DTDSourceOffset) o).contains(searchLocation)) {
-			closestObject = o;
-		} // end of if ()
-	}
-
-	public DTDObjectFinder(int startOffset, int endOffset) {
-		searchLocation = new SourceOffset(startOffset, endOffset);
-	}
-
-	public void visitDTDNotation(DTDNotation notation) {
-		checkContainment(notation);
-		super.visitDTDNotation(notation);
-	}
-
-	public void visitDTDEntity(DTDEntity entity) {
-		checkContainment(entity);
-		super.visitDTDEntity(entity);
-	}
-
-	public void visitDTDElement(DTDElement element) {
-		checkContainment(element);
-		super.visitDTDElement(element);
-	}
-
-	public void visitDTDAttribute(DTDAttribute attribute) {
-		checkContainment(attribute);
-		super.visitDTDAttribute(attribute);
-	}
-
-	public void visitDTDParameterEntityReference(DTDParameterEntityReference parmEntity) {
-		checkContainment(parmEntity);
-		super.visitDTDParameterEntityReference(parmEntity);
-	}
-
-	public void visitDTDElementContent(DTDElementContent content) {
-		checkContainment(content);
-		super.visitDTDElementContent(content);
-	}
-
-	private DTDObject closestObject = null;
-
-	public DTDObject getClosestObject() {
-		return closestObject;
-	}
-
-	/**
-	 * @generated
-	 */
-	protected SourceOffset offsetObjectForGen(DTDSourceOffset s) {
-
-		return new SourceOffset(s.getStartOffset(), s.getEndOffset());
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void checkContainmentGen(DTDObject o) {
-
-		if (offsetObjectFor((DTDSourceOffset) o).contains(searchLocation)) {
-			closestObject = o;
-		} // end of if ()
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDNotationGen(DTDNotation notation) {
-
-		checkContainment(notation);
-		super.visitDTDNotation(notation);
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDEntityGen(DTDEntity entity) {
-
-		checkContainment(entity);
-		super.visitDTDEntity(entity);
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDElementGen(DTDElement element) {
-
-		checkContainment(element);
-		super.visitDTDElement(element);
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDAttributeGen(DTDAttribute attribute) {
-
-		checkContainment(attribute);
-		super.visitDTDAttribute(attribute);
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDParameterEntityReferenceGen(DTDParameterEntityReference parmEntity) {
-
-		checkContainment(parmEntity);
-		super.visitDTDParameterEntityReference(parmEntity);
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDElementContentGen(DTDElementContent content) {
-
-		checkContainment(content);
-		super.visitDTDElementContent(content);
-	}
-
-	/**
-	 * @generated
-	 */
-	protected DTDObject getClosestObjectGen() {
-
-		return closestObject;
-	}
-}// DTDObjectFinder
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDPathnameUtil.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDPathnameUtil.java
deleted file mode 100644
index 6a16b76..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDPathnameUtil.java
+++ /dev/null
@@ -1,352 +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.dtd.core.internal.emf.util;
-
-
-
-public class DTDPathnameUtil {
-	static public String makePath(String parentPath, String type, String name, int cnt) {
-		String pn = null;
-		name = encode(name);
-		if ((name == null) && (cnt <= 0)) {
-			pn = type;
-		}
-		else if (cnt <= 0) {
-			pn = type + ":" + ((name == null) ? "" : name);
-		}
-		else {
-			pn = type + ":" + ((name == null) ? "" : name) + ":" + cnt;
-		}
-
-		if (parentPath != null) {
-			return parentPath + "." + pn;
-		}
-		else {
-			return pn;
-		}
-	}
-
-	static public Object[] parsePathComponent(String path) {
-		/*
-		 * This routine parse the first component of the path and returns the
-		 * result in an arrray of Strings. result[0] = type (String) result[1] =
-		 * name (String) result[2] = count (Integer) result[3] = the rest of
-		 * the path (String)
-		 * 
-		 * E.g. PathComponent result[0] result[1] result[2] result[3]
-		 * ------------------------------------------------------------- type
-		 * type <null> <null> <null> type.rest type <null> <null> rest
-		 * type:name type name <null> <null> type:name.rest type name <null>
-		 * rest type::n type <null> n <null> type::n.rest type <null> n rest
-		 * type:name:n type name n <null> type:name:n.rest type name n rest
-		 */
-
-		Object[] result = new Object[4];
-		if (path == null)
-			return result;
-
-		int i = path.indexOf('.');
-		int length = path.length();
-
-		if (i < 0) {
-			i = length;
-		}
-
-		String type = null;
-		String name = null;
-		Integer n = null;
-		String rest = null;
-
-		// get the type
-		int j = path.indexOf(':');
-		if (j > i)
-			j = -1;
-		if (j < 0) {
-			type = path.substring(0, i);
-		}
-		else {
-			type = path.substring(0, j);
-
-			// get the name
-			int k = path.indexOf(':', j + 1);
-			if (k > i)
-				k = -1;
-			if (k < 0) {
-				name = path.substring(j + 1, i);
-			}
-			else {
-				name = path.substring(j + 1, k);
-
-				// get the count
-				try {
-					n = new Integer(path.substring(k + 1, i));
-				}
-				catch (Exception exc) {
-				}
-				if ((n != null) && (n.intValue() < 0)) {
-					n = null;
-				}
-			}
-		}
-
-		if ((name != null) && (name.length() == 0)) {
-			name = null;
-		}
-
-		if (i < length) {
-			rest = path.substring(i + 1);
-		}
-
-		result[0] = type;
-		result[1] = decode(name);
-		result[2] = n;
-		result[3] = rest;
-		return result;
-	}
-
-	static private String encode(String s) {
-		if (s == null)
-			return null;
-		StringBuffer o = new StringBuffer(s.length());
-		int len = s.length();
-		for (int i = 0; i < len; i++) {
-			char c = s.charAt(i);
-			if (Character.isLetterOrDigit(c) || (c == '-')) {
-				o.append(c);
-			}
-			else { // if ((c == '.') || (c == ':') || (c == '_') || ...)
-				// convert the character to a 4 digit hex code prefixed by "_"
-				String hex = Integer.toHexString(c);
-				int l = hex.length();
-				if (l == 1) {
-					o.append("_000");
-					o.append(hex);
-				}
-				else if (l == 2) {
-					o.append("_00");
-					o.append(hex);
-				}
-				else if (l == 3) {
-					o.append("_0");
-					o.append(hex);
-				}
-				else {
-					o.append('_');
-					o.append(hex);
-				}
-			}
-		} // for
-		return o.toString();
-	}
-
-	static private String decode(String s) {
-		if (s == null)
-			return null;
-		StringBuffer o = new StringBuffer(s.length());
-		int len = s.length();
-		for (int i = 0; i < len; i++) {
-			char c = s.charAt(i);
-			if (c != '_') {
-				o.append(c);
-			}
-			else { // next 4 characters are the hex code
-				String hex;
-				if (len > i + 4) {
-					hex = s.substring(i + 1, i + 5);
-					i += 4;
-				}
-				else {
-					hex = s.substring(i + 1);
-					i = len - 1;
-				}
-				o.append((char) Integer.parseInt(hex, 16));
-			}
-		} // for
-		return o.toString();
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static String makePathGen(String parentPath, String type, String name, int cnt) {
-
-		String pn = null;
-		name = encode(name);
-		if ((name == null) && (cnt <= 0)) {
-			pn = type;
-		}
-		else if (cnt <= 0) {
-			pn = type + ":" + ((name == null) ? "" : name);
-		}
-		else {
-			pn = type + ":" + ((name == null) ? "" : name) + ":" + cnt;
-		}
-
-		if (parentPath != null) {
-			return parentPath + "." + pn;
-		}
-		else {
-			return pn;
-		}
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static Object[] parsePathComponentGen(String path) {
-
-		/*
-		 * This routine parse the first component of the path and returns the
-		 * result in an arrray of Strings. result[0] = type (String) result[1] =
-		 * name (String) result[2] = count (Integer) result[3] = the rest of
-		 * the path (String)
-		 * 
-		 * E.g. PathComponent result[0] result[1] result[2] result[3]
-		 * ------------------------------------------------------------- type
-		 * type <null> <null> <null> type.rest type <null> <null> rest
-		 * type:name type name <null> <null> type:name.rest type name <null>
-		 * rest type::n type <null> n <null> type::n.rest type <null> n rest
-		 * type:name:n type name n <null> type:name:n.rest type name n rest
-		 */
-
-		Object[] result = new Object[4];
-		if (path == null)
-			return result;
-
-		int i = path.indexOf('.');
-		int length = path.length();
-
-		if (i < 0) {
-			i = length;
-		}
-
-		String type = null;
-		String name = null;
-		Integer n = null;
-		String rest = null;
-
-		// get the type
-		int j = path.indexOf(':');
-		if (j > i)
-			j = -1;
-		if (j < 0) {
-			type = path.substring(0, i);
-		}
-		else {
-			type = path.substring(0, j);
-
-			// get the name
-			int k = path.indexOf(':', j + 1);
-			if (k > i)
-				k = -1;
-			if (k < 0) {
-				name = path.substring(j + 1, i);
-			}
-			else {
-				name = path.substring(j + 1, k);
-
-				// get the count
-				try {
-					n = new Integer(path.substring(k + 1, i));
-				}
-				catch (Exception exc) {
-				}
-				if ((n != null) && (n.intValue() < 0)) {
-					n = null;
-				}
-			}
-		}
-
-		if ((name != null) && (name.length() == 0)) {
-			name = null;
-		}
-
-		if (i < length) {
-			rest = path.substring(i + 1);
-		}
-
-		result[0] = type;
-		result[1] = decode(name);
-		result[2] = n;
-		result[3] = rest;
-		return result;
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static String encodeGen(String s) {
-
-		if (s == null)
-			return null;
-		StringBuffer o = new StringBuffer(s.length());
-		int len = s.length();
-		for (int i = 0; i < len; i++) {
-			char c = s.charAt(i);
-			if (Character.isLetterOrDigit(c) || (c == '-')) {
-				o.append(c);
-			}
-			else { // if ((c == '.') || (c == ':') || (c == '_') || ...)
-				// convert the character to a 4 digit hex code prefixed by "_"
-				String hex = Integer.toHexString(c);
-				int l = hex.length();
-				if (l == 1) {
-					o.append("_000");
-					o.append(hex);
-				}
-				else if (l == 2) {
-					o.append("_00");
-					o.append(hex);
-				}
-				else if (l == 3) {
-					o.append("_0");
-					o.append(hex);
-				}
-				else {
-					o.append('_');
-					o.append(hex);
-				}
-			}
-		} // for
-		return o.toString();
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static String decodeGen(String s) {
-
-		if (s == null)
-			return null;
-		StringBuffer o = new StringBuffer(s.length());
-		int len = s.length();
-		for (int i = 0; i < len; i++) {
-			char c = s.charAt(i);
-			if (c != '_') {
-				o.append(c);
-			}
-			else { // next 4 characters are the hex code
-				String hex;
-				if (len > i + 4) {
-					hex = s.substring(i + 1, i + 5);
-					i += 4;
-				}
-				else {
-					hex = s.substring(i + 1);
-					i = len - 1;
-				}
-				o.append((char) Integer.parseInt(hex, 16));
-			}
-		} // for
-		return o.toString();
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDPrinter.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDPrinter.java
deleted file mode 100644
index 5bcb851..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDPrinter.java
+++ /dev/null
@@ -1,525 +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.dtd.core.internal.emf.util;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDOccurrenceType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDSourceOffset;
-
-
-public class DTDPrinter extends DTDVisitor {
-	StringBuffer sb = new StringBuffer();
-	boolean updateOffset = true;
-
-	public DTDPrinter(boolean updateOffset) {
-		this.updateOffset = updateOffset;
-	}
-
-	public StringBuffer getBuffer() {
-		return sb;
-	}
-
-	public void visitDTDFile(DTDFile file) {
-		super.visitDTDFile(file);
-	}
-
-	public void visitDTDNotation(DTDNotation notation) {
-		generateComment(notation);
-		updateStartOffset(notation, sb.length());
-		sb.append("<!NOTATION ");
-		sb.append(notation.getName()).append(" ");
-
-		String publicID = notation.getPublicID();
-		String systemID = notation.getSystemID();
-		if (publicID == null || publicID.equals("")) {
-			sb.append("SYSTEM ");
-		}
-		else {
-			sb.append("PUBLIC \"").append(publicID).append("\" ");
-		}
-
-		if (systemID == null) {
-			sb.append("\"\"");
-		}
-		else {
-			sb.append("\"").append(systemID).append("\"");
-		}
-		endTag();
-		updateEndOffset(notation, sb.length() - 1); // -1 for the newline char
-		super.visitDTDNotation(notation);
-	}
-
-	public void visitDTDEntity(DTDEntity entity) {
-		generateComment(entity);
-		updateStartOffset(entity, sb.length());
-		sb.append("<!ENTITY ");
-
-		if (entity.isParameterEntity())
-			sb.append("% ");
-
-		sb.append(entity.getName()).append(" ");
-		sb.append(entity.getContent().unparse());
-
-		endTag();
-		updateEndOffset(entity, sb.length() - 1); // -1 for the newline char
-		super.visitDTDEntity(entity);
-	}
-
-	public void visitDTDElement(DTDElement element) {
-		generateComment(element);
-		updateStartOffset(element, sb.length());
-		sb.append("<!ELEMENT " + element.getName());
-		DTDElementContent content = element.getContent();
-		if (content instanceof DTDPCDataContent || content instanceof DTDElementReferenceContent) {
-			sb.append(" (");
-			super.visitDTDElement(element);
-			sb.append(")");
-		} // end of if ()
-		else {
-			sb.append(" ");
-			super.visitDTDElement(element);
-		} // end of else
-		endTag();
-		updateEndOffset(element, sb.length() - 1); // -1 for the newline char
-		visitAttributes(element);
-	}
-
-	public void visitDTDParameterEntityReference(DTDParameterEntityReference parmEntity) {
-		generateComment(parmEntity);
-		updateStartOffset(parmEntity, sb.length());
-		sb.append("%" + parmEntity.getName() + ";\n");
-		updateEndOffset(parmEntity, sb.length() - 1); // -1 for the newline
-														// char
-	}
-
-	public void visitDTDElementContent(DTDElementContent content) {
-		updateStartOffset(content, sb.length());
-		String trailingChars = "";
-		if (content instanceof DTDRepeatableContent) {
-			DTDRepeatableContent repeatContent = (DTDRepeatableContent) content;
-			DTDOccurrenceType occurrenceType = repeatContent.getOccurrence();
-			// Integer occurrence = repeatContent.getOccurrence();
-			if (occurrenceType != null) {
-				int occurType = occurrenceType.getValue();
-				if (occurType != DTDOccurrenceType.ONE) {
-					if (repeatContent instanceof DTDEntityReferenceContent) {
-						sb.append("(");
-						trailingChars = ")";
-					}
-					trailingChars += (char) occurType;
-				}
-			} // end of if ()
-		} // end of if ()
-
-		if (content instanceof DTDGroupContent) {
-			super.visitDTDElementContent(content);
-		} // end of if ()
-		else if (content instanceof DTDElementReferenceContent || content instanceof DTDEntityReferenceContent) {
-			sb.append(((DTDRepeatableContent) content).unparseRepeatableContent());
-		} // end of if ()
-		else {
-			// handle DTDPCDataContent, DTDAnyContent and DTDEmptyContent here
-			sb.append(content.getContentName());
-		} // end of else
-		sb.append(trailingChars);
-		updateEndOffset(content, sb.length());
-	}
-
-	public void visitDTDGroupContent(DTDGroupContent group) {
-		sb.append("(");
-		DTDGroupKind kind = group.getGroupKind();
-		// MOF2EMF Port
-		// Integer groupKind = group.getGroupKind();
-		if (kind == null) {
-			group.setGroupKind(DTDGroupKind.get(DTDGroupKind.SEQUENCE));
-		} // end of if ()
-
-		String con = group.getGroupKind().getValue() == DTDGroupKind.CHOICE ? " | " : ", ";
-
-		// Loop thru the children of the current group
-		Collection content = group.getContent();
-		if (content != null) {
-			boolean firstContent = true;
-			for (Iterator i = content.iterator(); i.hasNext();) {
-				if (!firstContent) {
-					sb.append(con);
-				} // end of if ()
-				else {
-					firstContent = false;
-				} // end of else
-				visitDTDElementContent((DTDElementContent) i.next());
-			}
-		}
-
-		sb.append(")");
-	}
-
-	private void visitAttributes(DTDElement elem) {
-		Collection attrs = elem.getDTDAttribute();
-		Iterator i = attrs.iterator();
-		if (attrs != null && i.hasNext()) {
-			DTDAttribute attrib = (DTDAttribute) i.next();
-			String comment = attrib.getComment();
-			if (comment != null && comment.length() > 0)
-				sb.append("<!--\n ").append(comment).append("\n-->\n");
-			sb.append("<!ATTLIST " + elem.getName() + "\n");
-			sb.append(" ");
-			updateStartOffset(attrib, sb.length());
-			sb.append(attrib.unparse());
-			updateEndOffset(attrib, sb.length());
-			sb.append("\n");
-			for (; i.hasNext();) {
-				attrib = (DTDAttribute) i.next();
-				comment = attrib.getComment();
-				if (comment != null && comment.length() > 0) {
-					sb.append(">\n");
-					if (comment != null && comment.length() > 0)
-						sb.append("<!--\n ").append(comment).append("\n-->\n");
-					sb.append("<!ATTLIST " + elem.getName() + "\n");
-				}
-				sb.append(" ");
-				updateStartOffset(attrib, sb.length());
-				sb.append(attrib.unparse());
-				updateEndOffset(attrib, sb.length());
-				sb.append("\n");
-			}
-			sb.append(">\n");
-		}
-	}
-
-	private void endTag() {
-		sb.append(">\n");
-	}
-
-	private void updateStartOffset(DTDSourceOffset o, int offset) {
-		if (updateOffset) {
-			o.setStartOffset(offset);
-		} // end of if ()
-	}
-
-	private void updateEndOffset(DTDSourceOffset o, int offset) {
-		if (updateOffset) {
-			o.setEndOffset(offset);
-		} // end of if ()
-	}
-
-	private void generateComment(DTDObject dtdObject) {
-		String commentString = null;
-
-		if (dtdObject instanceof DTDElement)
-			commentString = ((DTDElement) dtdObject).getComment();
-		else if (dtdObject instanceof DTDEntity)
-			commentString = ((DTDEntity) dtdObject).getComment();
-		else if (dtdObject instanceof DTDNotation)
-			commentString = ((DTDNotation) dtdObject).getComment();
-
-		if (commentString != null && commentString.length() > 0) {
-			sb.append("<!--").append(commentString).append("-->\n");
-		}
-	}
-
-
-	// /**
-	// * @generated
-	// */
-	// protected StringBuffer getBufferGen() {
-	//
-	// return sb;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitDTDFileGen(DTDFile file) {
-	//
-	// super.visitDTDFile(file);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitDTDNotationGen(DTDNotation notation) {
-	//
-	// generateComment(notation);
-	// updateStartOffset(notation, sb.length());
-	// sb.append("<!NOTATION ");
-	// sb.append(notation.getName()).append(" ");
-	//
-	//
-	// String publicID = notation.getPublicID();
-	// String systemID = notation.getSystemID();
-	// if (publicID == null || publicID.equals(""))
-	// {
-	// sb.append("SYSTEM ");
-	// }
-	// else
-	// {
-	// sb.append("PUBLIC \"").append(publicID).append("\" ");
-	// }
-	//
-	//
-	// if (systemID==null)
-	// {
-	// sb.append("\"\"");
-	// }
-	// else
-	// {
-	// sb.append("\"").append(systemID).append("\"");
-	// }
-	// endTag();
-	// updateEndOffset(notation, sb.length() - 1); // -1 for the newline char
-	// super.visitDTDNotation(notation);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitDTDEntityGen(DTDEntity entity) {
-	//
-	// generateComment(entity);
-	// updateStartOffset(entity, sb.length());
-	// sb.append("<!ENTITY ");
-	//
-	//
-	// if (entity.isParameterEntity())
-	// sb.append("% ");
-	//
-	//
-	// sb.append(entity.getName()).append(" ");
-	// sb.append(entity.getContent().unparse());
-	//
-	//
-	// endTag();
-	// updateEndOffset(entity, sb.length() - 1); // -1 for the newline char
-	// super.visitDTDEntity(entity);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitDTDElementGen(DTDElement element) {
-	//
-	// generateComment(element);
-	// updateStartOffset(element, sb.length());
-	// sb.append("<!ELEMENT " + element.getName());
-	// DTDElementContent content = element.getContent();
-	// if (content instanceof DTDPCDataContent ||
-	// content instanceof DTDElementReferenceContent)
-	// {
-	// sb.append(" (");
-	// super.visitDTDElement(element);
-	// sb.append(")");
-	// } // end of if ()
-	// else
-	// {
-	// sb.append(" ");
-	// super.visitDTDElement(element);
-	// } // end of else
-	// endTag();
-	// updateEndOffset(element, sb.length() - 1); // -1 for the newline char
-	// visitAttributes(element);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void
-	// visitDTDParameterEntityReferenceGen(DTDParameterEntityReference
-	// parmEntity) {
-	//
-	// generateComment(parmEntity);
-	// updateStartOffset(parmEntity, sb.length());
-	// sb.append("%" + parmEntity.getName() + ";\n");
-	// updateEndOffset(parmEntity, sb.length() - 1); // -1 for the newline
-	// char
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitDTDElementContentGen(DTDElementContent content) {
-	//
-	// updateStartOffset(content, sb.length());
-	// String trailingChars = "";
-	// if (content instanceof DTDRepeatableContent )
-	// {
-	// DTDRepeatableContent repeatContent = (DTDRepeatableContent) content;
-	// Integer occurrence = repeatContent.getOccurrence();
-	// if (occurrence != null)
-	// {
-	// int occurType = occurrence.intValue();
-	// if (occurType != DTDOccurrenceType.ONE)
-	// {
-	// if (repeatContent instanceof DTDEntityReferenceContent)
-	// {
-	// sb.append("(");
-	// trailingChars = ")";
-	// }
-	// trailingChars += (char) occurType;
-	// }
-	// } // end of if ()
-	// } // end of if ()
-	//    
-	// if (content instanceof DTDGroupContent)
-	// {
-	// super.visitDTDElementContent(content);
-	// } // end of if ()
-	// else if (content instanceof DTDElementReferenceContent ||
-	// content instanceof DTDEntityReferenceContent)
-	// {
-	// sb.append(((DTDRepeatableContent)content).unparseRepeatableContent());
-	// } // end of if ()
-	// else
-	// {
-	// // handle DTDPCDataContent, DTDAnyContent and DTDEmptyContent here
-	// sb.append(content.getContentName());
-	// } // end of else
-	// sb.append(trailingChars);
-	// updateEndOffset(content, sb.length());
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitDTDGroupContentGen(DTDGroupContent group) {
-	//
-	// sb.append("(");
-	//    
-	// Integer groupKind = group.getGroupKind();
-	// if (groupKind == null)
-	// {
-	// group.setGroupKind(DTDGroupKind.SEQUENCE);
-	// } // end of if ()
-	//    
-	// String con = group.getGroupKind().intValue() == DTDGroupKind.CHOICE ? "
-	// | " : ", ";
-	//
-	//
-	// // Loop thru the children of the current group
-	// Collection content = group.getContent();
-	// if (content != null)
-	// {
-	// boolean firstContent = true;
-	// for (Iterator i = content.iterator(); i.hasNext(); )
-	// {
-	// if (!firstContent)
-	// {
-	// sb.append(con);
-	// } // end of if ()
-	// else
-	// {
-	// firstContent = false;
-	// } // end of else
-	// visitDTDElementContent((DTDElementContent) i.next());
-	// }
-	// }
-	//
-	//
-	// sb.append(")");
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void visitAttributesGen(DTDElement elem) {
-	//
-	// Collection attrs = elem.getDTDAttribute();
-	// Iterator i = attrs.iterator();
-	// if (attrs != null && i.hasNext())
-	// {
-	// DTDAttribute attrib = (DTDAttribute) i.next();
-	// String comment = attrib.getComment();
-	// if (comment!=null && comment.length()>0)
-	// sb.append("<!--\n ").append(comment).append("\n-->\n");
-	// sb.append("<!ATTLIST " + elem.getName() + "\n");
-	// sb.append(" ");
-	// updateStartOffset(attrib, sb.length());
-	// sb.append(attrib.unparse());
-	// updateEndOffset(attrib, sb.length());
-	// sb.append("\n");
-	// for (; i.hasNext(); )
-	// {
-	// attrib = (DTDAttribute) i.next();
-	// comment = attrib.getComment();
-	// if (comment!=null && comment.length()>0)
-	// {
-	// sb.append(">\n");
-	// if (comment!=null && comment.length()>0)
-	// sb.append("<!--\n ").append(comment).append("\n-->\n");
-	// sb.append("<!ATTLIST " + elem.getName() + "\n");
-	// }
-	// sb.append(" ");
-	// updateStartOffset(attrib, sb.length());
-	// sb.append(attrib.unparse());
-	// updateEndOffset(attrib, sb.length());
-	// sb.append("\n");
-	// }
-	// sb.append(">\n");
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void endTagGen() {
-	//
-	// sb.append(">\n");
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void updateStartOffsetGen(DTDSourceOffset o, int offset) {
-	//
-	// if (updateOffset)
-	// {
-	// o.setStartOffset(offset);
-	// } // end of if ()
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void updateEndOffsetGen(DTDSourceOffset o, int offset) {
-	//
-	// if (updateOffset)
-	// {
-	// o.setEndOffset(offset);
-	// } // end of if ()
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void generateCommentGen(DTDObject dtdObject) {
-	//
-	// String commentString = null;
-	//
-	//
-	// if (dtdObject instanceof DTDElement)
-	// commentString = ((DTDElement)dtdObject).getComment();
-	// else if (dtdObject instanceof DTDEntity)
-	// commentString = ((DTDEntity)dtdObject).getComment();
-	// else if (dtdObject instanceof DTDNotation)
-	// commentString = ((DTDNotation)dtdObject).getComment();
-	//
-	//
-	// if ( commentString!=null && commentString.length()>0)
-	// {
-	// sb.append("<!--").append(commentString).append("-->\n");
-	// }
-	// }
-}// DTDPrinter
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDResourceFactoryImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDResourceFactoryImpl.java
deleted file mode 100644
index bbde08a..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDResourceFactoryImpl.java
+++ /dev/null
@@ -1,81 +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.dtd.core.internal.emf.util;
-
-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.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
-
-
-public class DTDResourceFactoryImpl extends ResourceFactoryImpl {
-	public static final String copyright = "(c) Copyright IBM Corporation 2002.";
-
-	public DTDResourceFactoryImpl() {
-		super();
-	}
-
-	public Resource createResource(String filename) {
-		return new DTDResourceImpl(filename);
-	}
-
-	public Resource createResource(URI uri) {
-		return new DTDResourceImpl(uri);
-	}
-
-	public Resource createResource(ResourceSet resources, URI uri) {
-		Resource resource = new DTDResourceImpl(uri);
-		resources.getResources().add(resource);
-		return resource;
-	}
-
-	public Resource createResource(ResourceSet resources, String uri) {
-		Resource resource = new DTDResourceImpl(uri);
-		resources.getResources().add(resource);
-		return resource;
-	}
-
-	public Resource load(String uri) throws Exception {
-		Resource resource = createResource(uri);
-		resource.load(new HashMap());
-		return resource;
-	}
-
-	public Resource load(URI uri) throws Exception {
-		Resource resource = createResource(uri);
-		resource.load(new HashMap());
-		return resource;
-	}
-
-	public Resource load(ResourceSet resources, String uri) throws Exception {
-		return load(resources, uri, new HashMap());
-	}
-
-	public Resource load(ResourceSet resources, URI uri) throws Exception {
-		return load(resources, uri, new HashMap());
-	}
-
-	public Resource load(ResourceSet resources, String uri, Map options) throws Exception {
-		Resource resource = createResource(resources, uri);
-		resource.load(options);
-		return resource;
-	}
-
-	public Resource load(ResourceSet resources, URI uri, Map options) throws Exception {
-		Resource resource = createResource(resources, uri);
-		resource.load(options);
-		return resource;
-	}
-} // DTDResourceFactoryImpl
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDResourceImpl.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDResourceImpl.java
deleted file mode 100644
index 2392c62..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDResourceImpl.java
+++ /dev/null
@@ -1,166 +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.dtd.core.internal.emf.util;
-
-import java.io.OutputStream;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.zip.ZipOutputStream;
-
-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.impl.ResourceImpl;
-import org.eclipse.wst.dtd.core.internal.DTDCorePlugin;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-
-
-public class DTDResourceImpl extends ResourceImpl {
-
-	public DTDResourceImpl() {
-		super();
-	}
-
-	public DTDResourceImpl(String filename) {
-		super(URI.createURI(filename));
-		// System.out.println(">>>> DTDResourceImpl ctor 1");
-	}
-
-	public DTDResourceImpl(URI uri) {
-		super(uri);
-		// System.out.println(">>>> DTDResourceImpl ctor 2");
-	}
-
-	/**
-	 * Returns the resolved object for the given URI
-	 * {@link URI#fragment fragment}.
-	 * <p>
-	 * The fragment encoding will typically be that produced by
-	 * {@link #getURIFragment getURIFragment}.
-	 * </p>
-	 * 
-	 * @param uriFragment
-	 *            the fragment to resolve.
-	 * @return the resolved object for the given fragment.
-	 * @see #getURIFragment(EObject)
-	 * @see org.eclipse.emf.ecore.resource.ResourceSet#getEObject(URI, boolean)
-	 * @see org.eclipse.emf.ecore.util.EcoreUtil#resolve(EObject, org.eclipse.emf.ecore.resource.ResourceSet)
-	 * @see org.eclipse.emf.ecore.InternalEObject#eObjectForURIFragmentSegment(String)
-	 * @throws org.eclipse.emf.common.util.WrappedException
-	 *             if a problem occurs navigating the fragment.
-	 */
-	public EObject getEObject(java.lang.String uriFragment) {
-		EList contents = getContents();
-		if (contents != null) {
-			Iterator i = contents.iterator();
-			while (i.hasNext()) {
-				Object obj = i.next();
-				if (obj instanceof DTDFile) {
-					// there should only be one DTDFile in a DTD extent
-					EObject result = ((DTDFile) obj).findObject(uriFragment);
-					return result;
-				}
-			}
-		}
-		System.out.println(">>> DTDKey Error: cannot find object " + uriFragment);
-		return super.getEObject(uriFragment);
-	}
-
-	/**
-	 * Returns the URI {@link URI#fragment fragment} that, when passed to
-	 * {@link #getEObject getEObject} will return the given object.
-	 * <p>
-	 * In other words, the following is <code>true</code> for any object
-	 * contained by a resource:
-	 * 
-	 * <pre>
-	 * 
-	 *    Resource resource = eObject.eResource();
-	 *    eObject == resource.getEObject(resource.getURIFragment(eObject))
-	 * 
-	 * </pre>
-	 * 
-	 * An implementation may choose to use IDs or to use structured URI
-	 * fragments, as supported by
-	 * {@link org.eclipse.emf.ecore.InternalEObject#eURIFragmentSegment eURIFragmentSegment}.
-	 * </p>
-	 * 
-	 * @param eObject
-	 *            the object to identify.
-	 * @return the URI {@link URI#fragment fragment} for the object.
-	 * @see #getEObject(String)
-	 * @see org.eclipse.emf.ecore.InternalEObject#eURIFragmentSegment(org.eclipse.emf.core.EStructuralFeature,
-	 *      EObject)
-	 */
-	public java.lang.String getURIFragment(EObject eObject) {
-		if (eObject instanceof DTDObject) {
-			return ((DTDObject) eObject).getPathname();
-		}
-		return super.getURIFragment(eObject);
-	}
-
-	private DTDUtil dtdUtil;
-
-	public DTDUtil getDTDUtil() {
-		return dtdUtil;
-	}
-
-	public void setDTDUtil(DTDUtil dtdUtil) {
-		this.dtdUtil = dtdUtil;
-	}
-
-	public void load(Map options) {
-
-		String uriString = getURI().toString();
-		try {
-			DTDUtil dtdUtil = new DTDUtil();
-			dtdUtil.parse(getResourceSet(), uriString);
-			dtdUtil.setResource(this);
-			setDTDUtil(dtdUtil);
-			getContents().add(dtdUtil.getDTDFile());
-
-			// Reset the dirty flag after the resource is loaded
-			setModified(false);
-		}
-		catch (Exception exc) {
-			exc.printStackTrace();
-		}
-	}
-
-	public void save(OutputStream os, Object options) throws Exception {
-		if (contents != null) {
-			Iterator i = contents.iterator();
-			while (i.hasNext()) {
-				Object obj = i.next();
-				if (obj instanceof DTDFile) {
-					try {
-						DTDPrinter printer = new DTDPrinter(true);
-						printer.visitDTDFile((DTDFile) obj);
-
-						String s = printer.getBuffer().toString();
-						os.write(s.getBytes());
-						// Reset the dirty flag after the resource is saved
-						setModified(false);
-					}
-					catch (Exception e) {
-					}
-					break;
-				}
-			}
-		}
-	}
-
-	public void save(ZipOutputStream zos, String entry, String metaModelName) throws Exception {
-		throw new Exception(DTDCorePlugin.getDTDString("_EXC_OPERATION_NOT_SUPPORTED"));
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDSwitch.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDSwitch.java
deleted file mode 100644
index e77b125..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDSwitch.java
+++ /dev/null
@@ -1,489 +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.dtd.core.internal.emf.util;
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EClassifier;
-import org.eclipse.emf.ecore.EDataType;
-import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EModelElement;
-import org.eclipse.emf.ecore.ENamedElement;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.ETypedElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDBasicType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEnumerationType;
-import org.eclipse.wst.dtd.core.internal.emf.DTDExternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDInternalEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPackage;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent;
-
-
-
-public class DTDSwitch {
-	/**
-	 * The cached model package <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	protected static DTDPackage modelPackage;
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public DTDSwitch() {
-		if (modelPackage == null) {
-			modelPackage = DTDPackage.eINSTANCE;
-		}
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object doSwitch(EObject theEObject) {
-		EClass theEClass = theEObject.eClass();
-		if (theEClass.eContainer() == modelPackage) {
-			switch (theEClass.getClassifierID()) {
-				case DTDPackage.DTD_GROUP_CONTENT : {
-					DTDGroupContent dtdGroupContent = (DTDGroupContent) theEObject;
-					Object result = caseDTDGroupContent(dtdGroupContent);
-					if (result == null)
-						result = caseDTDRepeatableContent(dtdGroupContent);
-					if (result == null)
-						result = caseDTDElementContent(dtdGroupContent);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_ATTRIBUTE : {
-					DTDAttribute dtdAttribute = (DTDAttribute) theEObject;
-					Object result = caseDTDAttribute(dtdAttribute);
-					if (result == null)
-						result = caseEAttribute(dtdAttribute);
-					if (result == null)
-						result = caseEStructuralFeature(dtdAttribute);
-					if (result == null)
-						result = caseETypedElement(dtdAttribute);
-					if (result == null)
-						result = caseENamedElement(dtdAttribute);
-					if (result == null)
-						result = caseEModelElement(dtdAttribute);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_ELEMENT : {
-					DTDElement dtdElement = (DTDElement) theEObject;
-					Object result = caseDTDElement(dtdElement);
-					if (result == null)
-						result = caseEClass(dtdElement);
-					if (result == null)
-						result = caseDTDContent(dtdElement);
-					if (result == null)
-						result = caseEClassifier(dtdElement);
-					if (result == null)
-						result = caseENamedElement(dtdElement);
-					if (result == null)
-						result = caseEModelElement(dtdElement);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_EMPTY_CONTENT : {
-					DTDEmptyContent dtdEmptyContent = (DTDEmptyContent) theEObject;
-					Object result = caseDTDEmptyContent(dtdEmptyContent);
-					if (result == null)
-						result = caseDTDElementContent(dtdEmptyContent);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_ANY_CONTENT : {
-					DTDAnyContent dtdAnyContent = (DTDAnyContent) theEObject;
-					Object result = caseDTDAnyContent(dtdAnyContent);
-					if (result == null)
-						result = caseDTDElementContent(dtdAnyContent);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_PC_DATA_CONTENT : {
-					DTDPCDataContent dtdpcDataContent = (DTDPCDataContent) theEObject;
-					Object result = caseDTDPCDataContent(dtdpcDataContent);
-					if (result == null)
-						result = caseDTDElementContent(dtdpcDataContent);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_ELEMENT_REFERENCE_CONTENT : {
-					DTDElementReferenceContent dtdElementReferenceContent = (DTDElementReferenceContent) theEObject;
-					Object result = caseDTDElementReferenceContent(dtdElementReferenceContent);
-					if (result == null)
-						result = caseDTDRepeatableContent(dtdElementReferenceContent);
-					if (result == null)
-						result = caseDTDElementContent(dtdElementReferenceContent);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_FILE : {
-					DTDFile dtdFile = (DTDFile) theEObject;
-					Object result = caseDTDFile(dtdFile);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_BASIC_TYPE : {
-					DTDBasicType dtdBasicType = (DTDBasicType) theEObject;
-					Object result = caseDTDBasicType(dtdBasicType);
-					if (result == null)
-						result = caseEClass(dtdBasicType);
-					if (result == null)
-						result = caseEClassifier(dtdBasicType);
-					if (result == null)
-						result = caseENamedElement(dtdBasicType);
-					if (result == null)
-						result = caseEModelElement(dtdBasicType);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_ENUMERATION_TYPE : {
-					DTDEnumerationType dtdEnumerationType = (DTDEnumerationType) theEObject;
-					Object result = caseDTDEnumerationType(dtdEnumerationType);
-					if (result == null)
-						result = caseEEnum(dtdEnumerationType);
-					if (result == null)
-						result = caseEDataType(dtdEnumerationType);
-					if (result == null)
-						result = caseEClassifier(dtdEnumerationType);
-					if (result == null)
-						result = caseENamedElement(dtdEnumerationType);
-					if (result == null)
-						result = caseEModelElement(dtdEnumerationType);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_NOTATION : {
-					DTDNotation dtdNotation = (DTDNotation) theEObject;
-					Object result = caseDTDNotation(dtdNotation);
-					if (result == null)
-						result = caseDTDContent(dtdNotation);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_ENTITY : {
-					DTDEntity dtdEntity = (DTDEntity) theEObject;
-					Object result = caseDTDEntity(dtdEntity);
-					if (result == null)
-						result = caseDTDContent(dtdEntity);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_EXTERNAL_ENTITY : {
-					DTDExternalEntity dtdExternalEntity = (DTDExternalEntity) theEObject;
-					Object result = caseDTDExternalEntity(dtdExternalEntity);
-					if (result == null)
-						result = caseDTDEntityContent(dtdExternalEntity);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_INTERNAL_ENTITY : {
-					DTDInternalEntity dtdInternalEntity = (DTDInternalEntity) theEObject;
-					Object result = caseDTDInternalEntity(dtdInternalEntity);
-					if (result == null)
-						result = caseDTDEntityContent(dtdInternalEntity);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_PARAMETER_ENTITY_REFERENCE : {
-					DTDParameterEntityReference dtdParameterEntityReference = (DTDParameterEntityReference) theEObject;
-					Object result = caseDTDParameterEntityReference(dtdParameterEntityReference);
-					if (result == null)
-						result = caseDTDContent(dtdParameterEntityReference);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				case DTDPackage.DTD_ENTITY_REFERENCE_CONTENT : {
-					DTDEntityReferenceContent dtdEntityReferenceContent = (DTDEntityReferenceContent) theEObject;
-					Object result = caseDTDEntityReferenceContent(dtdEntityReferenceContent);
-					if (result == null)
-						result = caseDTDRepeatableContent(dtdEntityReferenceContent);
-					if (result == null)
-						result = caseDTDElementContent(dtdEntityReferenceContent);
-					if (result == null)
-						result = defaultCase(theEObject);
-					return result;
-				}
-				default :
-					return defaultCase(theEObject);
-			}
-		}
-		return defaultCase(theEObject);
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDFile(DTDFile object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDNotation(DTDNotation object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDContent(DTDContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDEntity(DTDEntity object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDEntityContent(DTDEntityContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDExternalEntity(DTDExternalEntity object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDInternalEntity(DTDInternalEntity object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDParameterEntityReference(DTDParameterEntityReference object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDEntityReferenceContent(DTDEntityReferenceContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDRepeatableContent(DTDRepeatableContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDElementReferenceContent(DTDElementReferenceContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDElement(DTDElement object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDElementContent(DTDElementContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDEmptyContent(DTDEmptyContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDAnyContent(DTDAnyContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDPCDataContent(DTDPCDataContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDGroupContent(DTDGroupContent object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDAttribute(DTDAttribute object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDEnumerationType(DTDEnumerationType object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseDTDBasicType(DTDBasicType object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-	//
-	// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-	// // public Object caseENamespace(ENamespace object) {
-	// -------------------GENERICRULES.JSED-------------------
-	// return null;
-	// }
-	// -------------------GENERICRULES.JSED-------------------
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseEClass(EClass object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseEAttribute(EAttribute object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseEEnum(EEnum object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseEModelElement(EModelElement object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseENamedElement(ENamedElement object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseEStructuralFeature(EStructuralFeature object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseEDataType(EDataType object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseETypedElement(ETypedElement object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object caseEClassifier(EClassifier object) {
-		return null;
-	}
-
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-	//
-	// +++++++++++++++++++GENERICRULES.JSED+++++++++++++++++++
-	// // public Object caseInternalEClassifier(InternalEClassifier object) {
-	// -------------------GENERICRULES.JSED-------------------
-	// return null;
-	// }
-	// -------------------GENERICRULES.JSED-------------------
-	/**
-	 * @generated This field/method will be replaced during code generation.
-	 */
-	public Object defaultCase(EObject object) {
-		return null;
-	}
-
-} // DTDSwitch
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDUniqueNameHelper.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDUniqueNameHelper.java
deleted file mode 100644
index ac20e40..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDUniqueNameHelper.java
+++ /dev/null
@@ -1,174 +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.dtd.core.internal.emf.util;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-
-
-
-public class DTDUniqueNameHelper {
-	public DTDUniqueNameHelper() {
-
-	}
-
-	static public String getUniqueElementName(DTDFile dtdFile) {
-		List elements = dtdFile.listDTDElement();
-		return getUniqueName(elements, "NewElement");
-	}
-
-	static public String getUniqueEntityName(DTDFile dtdFile) {
-		List entities = dtdFile.listDTDEntity();
-		return getUniqueName(entities, "NewEntity");
-	}
-
-	static public String getUniqueNotationName(DTDFile dtdFile) {
-		List notations = dtdFile.listDTDNotation();
-		return getUniqueName(notations, "NewNotation");
-	}
-
-	static public String getUniqueAttributeName(DTDElement element) {
-		List attrs = element.getDTDAttribute();
-		return getUniqueName(attrs, "NewAttribute");
-	}
-
-	static public String getUniqueName(List objs, String token) {
-		int counter = 1;
-
-		boolean uniqueName = false;
-		while (!uniqueName) {
-			String newName = token + new Integer(counter++);
-			uniqueName = true;
-			Iterator iter = objs.iterator();
-			while (iter.hasNext()) {
-				Object obj = iter.next();
-				String objName = getName(obj);
-				if (objName.equals(newName)) {
-					uniqueName = false;
-					break;
-				}
-			}
-			if (uniqueName) {
-				return newName;
-			}
-		}
-		// we shouldn't get here
-		return "No Name found";
-	}
-
-	static public String getName(Object obj) {
-		if (obj instanceof DTDElement) {
-			return ((DTDElement) obj).getName();
-		}
-		else if (obj instanceof DTDEntity) {
-			return ((DTDEntity) obj).getName();
-		}
-		else if (obj instanceof DTDNotation) {
-			return ((DTDNotation) obj).getName();
-		}
-		else if (obj instanceof DTDAttribute) {
-			return ((DTDAttribute) obj).getName();
-		}
-		return "";
-	}
-
-
-	/**
-	 * @generated
-	 */
-	protected static String getUniqueElementNameGen(DTDFile dtdFile) {
-
-		List elements = dtdFile.listDTDElement();
-		return getUniqueName(elements, "NewElement");
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static String getUniqueEntityNameGen(DTDFile dtdFile) {
-
-		List entities = dtdFile.listDTDEntity();
-		return getUniqueName(entities, "NewEntity");
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static String getUniqueNotationNameGen(DTDFile dtdFile) {
-
-		List notations = dtdFile.listDTDNotation();
-		return getUniqueName(notations, "NewNotation");
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static String getUniqueAttributeNameGen(DTDElement element) {
-
-		List attrs = element.getDTDAttribute();
-		return getUniqueName(attrs, "NewAttribute");
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static String getUniqueNameGen(List objs, String token) {
-
-		int counter = 1;
-
-		boolean uniqueName = false;
-		while (!uniqueName) {
-			String newName = token + new Integer(counter++);
-			uniqueName = true;
-			Iterator iter = objs.iterator();
-			while (iter.hasNext()) {
-				Object obj = iter.next();
-				String objName = getName(obj);
-				if (objName.equals(newName)) {
-					uniqueName = false;
-					break;
-				}
-			}
-			if (uniqueName) {
-				return newName;
-			}
-		}
-		// we shouldn't get here
-		return "No Name found";
-	}
-
-	/**
-	 * @generated
-	 */
-	protected static String getNameGen(Object obj) {
-
-		if (obj instanceof DTDElement) {
-			return ((DTDElement) obj).getName();
-		}
-		else if (obj instanceof DTDEntity) {
-			return ((DTDEntity) obj).getName();
-		}
-		else if (obj instanceof DTDNotation) {
-			return ((DTDNotation) obj).getName();
-		}
-		else if (obj instanceof DTDAttribute) {
-			return ((DTDAttribute) obj).getName();
-		}
-		return "";
-	}
-}// DTDUniqueNameHelper
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDUtil.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDUtil.java
deleted file mode 100644
index c8c7537..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDUtil.java
+++ /dev/null
@@ -1,1217 +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.dtd.core.internal.emf.util;
-
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Vector;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.common.util.BasicEList;
-import org.eclipse.emf.common.util.EList;
-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.impl.ResourceSetImpl;
-import org.eclipse.wst.dtd.core.internal.emf.DTDConstants;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFactory;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.impl.DTDFactoryImpl;
-import org.eclipse.wst.dtd.core.internal.saxparser.DTD;
-import org.eclipse.wst.dtd.core.internal.saxparser.DTDParser;
-import org.eclipse.wst.dtd.core.internal.saxparser.ErrorMessage;
-
-/**
- * Create MOF objects from the parsed DTD If no DTD file is specifed, create
- * the root MOF object
- */
-public class DTDUtil {
-	DTDFactory factory;
-	EList extent;
-	Resource resource;
-	DTDFile dtdFile;
-	String dtdModelFile;
-	boolean expandEntityReferences;
-
-	private Hashtable externalDTDModels = new Hashtable();
-	private Hashtable pePool = new Hashtable();
-	private Hashtable elementPool = new Hashtable();
-
-	private DTDParser parser;
-
-	private Vector errorMsgs = new Vector();
-
-	private static Hashtable utilCache = new Hashtable();
-
-	static public DTDUtil getDTDUtilFor(String filename) {
-		DTDUtil util = (DTDUtil) utilCache.get(filename);
-		if (util == null) {
-			util = new DTDUtil();
-			utilCache.put(filename, util);
-		}
-
-		return util;
-	}
-
-
-	public void parse(String uri) {
-		parse(new ResourceSetImpl(), uri);
-	}
-
-	/**
-	 * Invoke parse to parse a .dtd file into a MOF object model This is
-	 * invoked by the RegisteredDTDParser that registers this parser for MOF
-	 * to use against the .dtd type
-	 * 
-	 * @param filename -
-	 *            the fully qualifed name of a .dtd file
-	 */
-	public void parse(ResourceSet resources, String filename) {
-		// Get the dtd name from the file name
-		Path path = new Path(filename);
-		IPath iPath = path.removeFileExtension();
-		String dtdName = iPath.toFile().getName();
-
-		try {
-			parser = new DTDParser(false);
-			if (expandEntityReferences) {
-				parser.setExpandEntityReferences(expandEntityReferences);
-			}
-			parser.parse(filename);
-		}
-		catch (IOException ex) {
-			ex.printStackTrace(System.err);
-		}
-
-		dtdModelFile = filename;
-
-		factory = DTDFactoryImpl.instance();
-
-		extent = new BasicEList();
-
-		dtdFile = factory.createDTDFile();
-		extent.add(dtdFile);
-
-		dtdFile.setName(dtdName);
-
-		populateDTD(resources, expandEntityReferences);
-	}
-
-	public DTDFactory getFactory() {
-		return factory;
-	}
-
-	public DTDFile getDTDFile() {
-		return dtdFile;
-	}
-
-	public Hashtable getPEPool() {
-		return pePool;
-	}
-
-	public Hashtable getElementPool() {
-		return elementPool;
-	}
-
-	public EList getContents() {
-		return extent;
-	}
-
-	public void setResource(Resource resource) {
-		this.resource = resource;
-	}
-
-	public Resource getResource(Resource resource) {
-		return resource;
-	}
-
-	public void setexpandEntityReferences(boolean expandEntityReferences) {
-		this.expandEntityReferences = expandEntityReferences;
-	}
-
-	public boolean getExpandEntityReferences() {
-		return expandEntityReferences;
-	}
-
-	/**
-	 * Return true if the model has been modified
-	 */
-	public boolean isModelDirty() {
-		if (resource != null) {
-			return resource.isModified();
-		}
-		return false;
-	}
-
-	/**
-	 * Save the .dtd file
-	 */
-	public boolean save() {
-		try {
-			Map options = new HashMap();
-			resource.save(options);
-			return true;
-		}
-		catch (Exception ex) {
-			System.out.println("Save model exception " + ex);
-			ex.printStackTrace();
-			return false;
-		}
-	}
-
-	public boolean saveAs(String newFilename) {
-		resource.setURI(URI.createURI(newFilename));
-		boolean ok = save();
-
-		if (ok) {
-			Path path = new Path(newFilename);
-			IPath iPath = path.removeFileExtension();
-			String dtdName = iPath.toFile().getName();
-
-			dtdFile.setName(dtdName);
-		}
-		return ok;
-	}
-
-	public boolean saveDTDFile(String filename) {
-		boolean result = true;
-		try {
-			PrintWriter pw = new PrintWriter(new FileWriter(filename), true);
-			DTDPrinter printer = new DTDPrinter(true);
-			printer.visitDTDFile(dtdFile);
-
-			String s = printer.getBuffer().toString();
-			pw.println(s);
-			pw.close();
-		}
-
-		catch (Exception e) {
-			result = false;
-		}
-		return result;
-	}
-
-	public String getDTDSource(boolean includeError) {
-		return dtdFile.unparse(includeError); // true = include error lines
-	}
-
-	/**
-	 * Create MOF objects from DTD
-	 */
-	private void populateDTD(ResourceSet resources, boolean expandEntityReferences) {
-		Vector dtdList = parser.getDTDList();
-
-		// create XMIModel for the included DTDs
-		if (dtdList.size() > 0) {
-			if (!expandEntityReferences) {
-				for (int i = dtdList.size() - 1; i > 0; i--) {
-					DTD dtd = (DTD) dtdList.elementAt(i);
-					loadIncludedDTD(resources, dtd);
-				}
-
-				DTD dtd = (DTD) dtdList.elementAt(0);
-				populateDTD(resources, dtd, dtdFile); // populate the main
-														// DTD
-				// validateWithModel(dtd);
-			}
-			else {
-				for (int i = dtdList.size() - 1; i >= 0; i--) {
-					DTD dtd = (DTD) dtdList.elementAt(i);
-					populateDTD(resources, dtd, dtdFile);
-					// validateWithModel(dtd);
-				}
-			}
-		}
-	}
-
-	// return the instance unique to this DTDUtil file that represents an
-	// externally loaded dtd (will create if one doesn't exist yet)
-	public ExternalDTDModel getExternalDTDModel(ResourceSet resources, String uri) {
-		if (expandEntityReferences) {
-			return null;
-		}
-
-		// DefaultMsgLogger.write("External DTD name: " + uri);
-
-		if (externalDTDModels.containsKey(uri)) {
-			return (ExternalDTDModel) externalDTDModels.get(uri);
-		}
-		else {
-			ExternalDTDModel extModel = new ExternalDTDModel();
-			if (extModel.loadModel(resources, uri)) {
-				externalDTDModels.put(uri, extModel);
-				return extModel;
-			}
-		}
-		return null;
-	}
-
-	// load xmiModels for included DTDs
-	private void loadIncludedDTD(ResourceSet resources, DTD dtd) {
-		ExternalDTDModel extModel = getExternalDTDModel(resources, dtd.getName());
-		if (extModel != null) {
-			// now fill our hash tables for elements and parameter entities
-			// so that we know what can be referenced by our main dtd
-			DTDFile file = extModel.getExternalDTDFile();
-			Collection elementList = file.listDTDElement();
-			Collection entityList = file.listDTDEntity();
-
-			Iterator i = elementList.iterator();
-			while (i.hasNext()) {
-				DTDObject object = (DTDObject) i.next();
-				elementPool.put(getBaseName(object), object);
-			}
-
-			i = entityList.iterator();
-			while (i.hasNext()) {
-				DTDEntity entity = (DTDEntity) i.next();
-				if (entity.isParameterEntity()) {
-					pePool.put(getBaseName(entity), entity);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Create MOF objects from DTD
-	 * 
-	 * 1) will create the corresponding DTD Mof object for EntityDecl,
-	 * NotationDecl and ElementDecl declarations during the 1st pass 2) During
-	 * the 2nd pass, it will add the contentModel and Attlist to all
-	 * ElementDecl.
-	 * 
-	 */
-	private void populateDTD(ResourceSet resources, DTD dtd, DTDFile dFile) {
-		DTDModelBuilder modelBuilder = new DTDModelBuilder(resources, this, dtd, dFile);
-
-		modelBuilder.visitDTD(dtd);
-	}
-
-
-	public void emptyErrorMessages() {
-		errorMsgs.removeAllElements();
-	}
-
-	public void addErrorMessage(ErrorMessage error) {
-		int vectorSize = errorMsgs.size();
-		boolean add = true;
-
-		if (vectorSize != 0) {
-			int index = 0;
-
-			while (add == true && index < vectorSize) {
-				if (((ErrorMessage) errorMsgs.elementAt(index)).equals(error)) {
-					add = false;
-				}
-				else {
-					index++;
-				}
-			}
-		}
-
-		if (add) {
-			errorMsgs.addElement(error);
-		}
-	}
-
-	public Vector getErrors() {
-		return errorMsgs;
-	}
-
-	// This gets the name without any pseudo namespace prefix
-	public static String getBaseName(DTDObject obj) {
-		return getName(obj, null);
-	}
-
-	// This gets the name with pseudo namespace prefixes if dtdFile is not
-	// null
-	public static String getName(DTDObject obj, DTDFile dtdFile) {
-		String name = "";
-		if (obj instanceof DTDEntity) {
-			DTDEntity entity = (DTDEntity) obj;
-			if (dtdFile != null && !entity.getDTDFile().equals(dtdFile)) {
-				name = new Path(entity.getDTDFile().getName()).lastSegment() + ": ";
-			}
-			name += "%" + ((DTDEntity) obj).getName() + ";";
-		}
-		else if (obj instanceof DTDElement) {
-			DTDElement element = (DTDElement) obj;
-			if (dtdFile != null && !element.getDTDFile().equals(dtdFile)) {
-				name = new Path(element.getDTDFile().getName()).lastSegment() + ": ";
-			}
-			name += ((DTDElement) obj).getName();
-		}
-		else if (obj instanceof DTDElementContent) {
-			return ((DTDElementContent) obj).getContentName();
-		}
-		return name;
-	}
-
-	public static String getGroupType(int groupKind, int occurrence) {
-		String type = null;
-
-		switch (groupKind) {
-			case DTDGroupKind.SEQUENCE :
-				type = "DTDSequence";
-				break;
-			case DTDGroupKind.CHOICE :
-				type = "DTDChoice";
-				break;
-		}
-
-		type += getRepeatableTypeSuffix(occurrence);
-		return type;
-	}
-
-	public static String getReferenceType(int occurrence) {
-		String type = "DTDReference";
-		type += getRepeatableTypeSuffix(occurrence);
-		return type;
-	}
-
-	private static String getRepeatableTypeSuffix(int occurrence) {
-		return "(" + (char) occurrence + ")";
-	}
-
-	public static void main(String args[]) {
-		System.out.println("\nStarting ...");
-
-		if (args.length != 1)
-			System.out.println("usage: DtdUtil inputfile.dtd");
-
-		java.io.File inputFile = new File(args[0]);
-
-		String dtdFileName = "";
-		try {
-			dtdFileName = inputFile.getCanonicalPath();
-		}
-		catch (IOException ex) {
-		}
-
-		String dtdModelName = dtdFileName;
-
-		if (DTDConstants.DTD_EXTENSION.equals(new Path(dtdFileName).getFileExtension())) {
-			dtdModelName = new Path(dtdFileName).removeFileExtension().lastSegment();
-		}
-		DTDUtil d2m = new DTDUtil();
-		// TODO: fix port
-		// d2m.parse(dtdFileName);
-		try {
-			d2m.saveAs(dtdModelName + "." + DTDConstants.DTD_XMI_EXTENSION);
-		}
-		catch (Exception e) {
-			System.out.println("Exception thrown during model save: " + e);
-		}
-		System.out.println("Done.");
-	}
-
-	public org.eclipse.core.runtime.IPath getPath() {
-		Path currentDTDPath = new Path(dtdModelFile);
-		if (currentDTDPath.segmentCount() > 1) {
-			return currentDTDPath.removeLastSegments(1).addTrailingSeparator();
-		}
-
-		return new Path("");
-	}
-
-	// /**
-	// * @generated
-	// */
-	// protected static DTDUtil getDTDUtilForGen(String filename) {
-	//
-	// DTDUtil util = (DTDUtil) utilCache.get(filename);
-	// if (util == null)
-	// {
-	// util = new DTDUtil();
-	// utilCache.put(filename, util);
-	// }
-	//    
-	// return util;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void parseGen(String uri) {
-	//                           
-	// parse(new ResourceSetImpl(), uri);
-	// }
-	// /**
-	// * Invoke parse to parse a .dtd file into a MOF object model
-	// * This is invoked by the RegisteredDTDParser that registers this parser
-	// for MOF to use
-	// * against the .dtd type
-	// * @param filename - the fully qualifed name of a .dtd file
-	// */
-	// protected void parseGen(ResourceSet resources, String filename) {
-	//
-	// // Get the dtd name from the file name
-	// Path path = new Path(filename);
-	// IPath iPath = path.removeFileExtension();
-	// String dtdName = iPath.toFile().getName();
-	//
-	//
-	// try
-	// {
-	// parser = new DTDParser(false);
-	// if (expandEntityReferences)
-	// {
-	// parser.setExpandEntityReferences(expandEntityReferences);
-	// }
-	// parser.parse(filename);
-	// }
-	// catch(IOException ex)
-	// {
-	// ex.printStackTrace(System.err);
-	// }
-	//
-	//
-	// dtdModelFile = filename;
-	//
-	//
-	// factory = DTDFactoryImpl.instance();
-	//
-	//
-	// extent = new BasicEList();
-	//
-	//
-	// dtdFile = factory.createDTDFile();
-	// extent.add(dtdFile);
-	//
-	//
-	// dtdFile.setName(dtdName);
-	//
-	//
-	// populateDTD(resources, expandEntityReferences);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected DTDFactory getFactoryGen() {
-	//
-	// return factory;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected DTDFile getDTDFileGen() {
-	//
-	// return dtdFile;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected Hashtable getPEPoolGen() {
-	//
-	// return pePool;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected Hashtable getElementPoolGen() {
-	//
-	// return elementPool;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected EList getExtentGen() {
-	//
-	// return extent;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void setResourceGen(Resource resource) {
-	//
-	// this.resource = resource;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected Resource getResourceGen(Resource resource) {
-	//
-	// return resource;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void setexpandEntityReferencesGen(boolean
-	// expandEntityReferences) {
-	//
-	// this.expandEntityReferences = expandEntityReferences;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected boolean getExpandEntityReferencesGen() {
-	//
-	// return expandEntityReferences;
-	// }
-	// /**
-	// * Return true if the model has been modified
-	// */
-	// protected boolean isModelDirtyGen() {
-	//
-	// if (resource != null)
-	// {
-	// return resource.isModified();
-	// }
-	// return false;
-	// }
-	// /**
-	// * Save the .dtd file
-	// */
-	// protected boolean saveGen() {
-	//
-	// try
-	// {
-	// resource.save();
-	// return true;
-	// }
-	// catch (Exception ex)
-	// {
-	// System.out.println("Save model exception " + ex);
-	// ex.printStackTrace();
-	// return false;
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected boolean saveAsGen(String newFilename) {
-	//
-	// resource.setURI(newFilename);
-	// boolean ok = save();
-	//
-	//
-	// if (ok)
-	// {
-	// Path path = new Path(newFilename);
-	// IPath iPath = path.removeFileExtension();
-	// String dtdName = iPath.toFile().getName();
-	//
-	//
-	// dtdFile.setName(dtdName);
-	// }
-	// return ok;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected boolean saveDTDFileGen(String filename) {
-	//
-	// boolean result=true;
-	// try
-	// {
-	// PrintWriter pw = new PrintWriter(new FileWriter(filename),true);
-	// DTDPrinter printer = new DTDPrinter(true);
-	// printer.visitDTDFile(dtdFile);
-	//
-	//
-	// String s = printer.getBuffer().getName().toString();
-	// pw.println(s);
-	// pw.close();
-	// }
-	//
-	//
-	// catch (Exception e)
-	// {
-	// result = false;
-	// }
-	// return result;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected String getDTDSourceGen(boolean includeError) {
-	//
-	// return dtdFile.unparse(includeError); // true = include error lines
-	// }
-	// /**
-	// * Create MOF objects from DTD
-	// */
-	// protected void populateDTDGen(ResourceSet resources, boolean
-	// expandEntityReferences) {
-	//
-	// Vector dtdList = parser.getDTDList();
-	//
-	//
-	// // create XMIModel for the included DTDs
-	// if ( dtdList.size() > 0)
-	// {
-	// if (!expandEntityReferences)
-	// {
-	// for (int i=dtdList.size() - 1; i > 0; i--)
-	// {
-	// DTD dtd = (DTD) dtdList.elementAt(i);
-	// loadIncludedDTD(resources, dtd);
-	// }
-	//
-	//
-	// DTD dtd = (DTD) dtdList.elementAt(0);
-	// populateDTD(resources, dtd, dtdFile); // populate the main DTD
-	// // validateWithModel(dtd);
-	// }
-	// else
-	// {
-	// for (int i = dtdList.size() - 1; i >= 0; i--)
-	// {
-	// DTD dtd = (DTD) dtdList.elementAt(i);
-	// populateDTD(resources, dtd, dtdFile);
-	// // validateWithModel(dtd);
-	// }
-	// }
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected ExternalDTDModel getExternalDTDModelGen(ResourceSet
-	// resources, String uri) {
-	//
-	// if (expandEntityReferences)
-	// {
-	// return null;
-	// }
-	//       
-	// DefaultMsgLogger.write("External DTD name: " + uri);
-	//
-	//
-	// if (externalDTDModels.containsKey(uri))
-	// {
-	// return (ExternalDTDModel) externalDTDModels.get(uri);
-	// }
-	// else
-	// {
-	// ExternalDTDModel extModel = new ExternalDTDModel();
-	// if (extModel.loadModel(resources, uri))
-	// {
-	// externalDTDModels.put(uri, extModel);
-	// return extModel;
-	// }
-	// }
-	// return null;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void loadIncludedDTDGen(ResourceSet resources, DTD dtd) {
-	//
-	// ExternalDTDModel extModel = getExternalDTDModel(resources,
-	// dtd.getName());
-	// if (extModel != null)
-	// {
-	// // now fill our hash tables for elements and parameter entities
-	// // so that we know what can be referenced by our main dtd
-	// DTDFile file = extModel.getExternalDTDFile();
-	// Collection elementList = file.listDTDElement();
-	// Collection entityList = file.listDTDEntity();
-	//
-	//
-	// Iterator i = elementList.iterator();
-	// while (i.hasNext())
-	// {
-	// DTDObject object = (DTDObject) i.next();
-	// elementPool.put(getBaseName(object), object);
-	// }
-	//      
-	// i = entityList.iterator();
-	// while (i.hasNext())
-	// {
-	// DTDEntity entity = (DTDEntity) i.next();
-	// if (entity.isParameterEntity())
-	// {
-	// pePool.put(getBaseName(entity), entity);
-	// }
-	// }
-	// }
-	// }
-	// /**
-	// * Create MOF objects from DTD
-	// *
-	// * 1) will create the corresponding DTD Mof object for EntityDecl,
-	// NotationDecl
-	// * and ElementDecl declarations during the 1st pass
-	// * 2) During the 2nd pass, it will add the contentModel and Attlist to
-	// all
-	// * ElementDecl.
-	// *
-	// */
-	// protected void populateDTDGen(ResourceSet resources, DTD dtd, DTDFile
-	// dFile) {
-	//
-	// DTDModelBuilder modelBuilder = new DTDModelBuilder(resources, this,
-	// dtd, dFile);
-	//
-	//
-	// modelBuilder.visitDTD(dtd);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void emptyErrorMessagesGen() {
-	//
-	// errorMsgs.removeAllElements();
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void addErrorMessageGen(ErrorMessage error) {
-	//
-	// int vectorSize = errorMsgs.size();
-	// boolean add = true;
-	//
-	//
-	// if (vectorSize != 0)
-	// {
-	// int index = 0;
-	//
-	//
-	// while (add == true && index < vectorSize)
-	// {
-	// if (((ErrorMessage) errorMsgs.elementAt(index)).equals(error))
-	// {
-	// add =false;
-	// }
-	// else
-	// {
-	// index++;
-	// }
-	// }
-	// }
-	//
-	//
-	// if (add)
-	// {
-	// errorMsgs.addElement(error);
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected Vector getErrorsGen() {
-	//
-	// return errorMsgs;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected boolean validateDTDGen() {
-	//
-	// String tempDTDFile=getPath().toOSString()+"tempValidatingFileName.dtd";
-	// try
-	// {
-	// saveDTDFile(tempDTDFile);
-	//
-	//
-	// parser = new DTDParser(false);
-	// if (FileUtility.fileExists(tempDTDFile))
-	// {
-	// parser.parse(tempDTDFile);
-	// }
-	// Vector dtdList = parser.getDTDList();
-	// if ( dtdList.size() > 0)
-	// {
-	// // reset the errors and update what we have in the element pool
-	// emptyErrorMessages();
-	// updateElementHashtable();
-	//
-	//
-	// // TODO: do we just validate the current one?
-	// validateWithModel((DTD)dtdList.elementAt(0));
-	// }
-	// }
-	// catch(IOException ex)
-	// {
-	// ex.printStackTrace(System.err);
-	// FileUtility.delete(tempDTDFile);
-	// }
-	// FileUtility.delete(tempDTDFile);
-	//
-	//
-	// return dtdFile.isParseError();
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void validateWithModelGen(DTD dtd) {
-	//
-	// Enumeration en = dtd.externalElements();
-	// while (en.hasMoreElements())
-	// {
-	// Object e = en.nextElement();
-	//
-	//
-	// if ( e instanceof EntityDecl )
-	// {
-	// EntityDecl entity = (EntityDecl) e;
-	// ErrorMessage errMsg = entity.getErrorMessage();
-	// if ( errMsg!= null)
-	// {
-	// addErrorMessage(errMsg);
-	// // dtdFile.setParseError(true);
-	// }
-	// }
-	// else if ( e instanceof ElementDecl )
-	// {
-	// ElementDecl elem = (ElementDecl) e;
-	// ErrorMessage errMsg = elem.getErrorMessage();
-	// DTDElement dtdelement = (DTDElement)
-	// getElementPool().get(elem.getNodeName());
-	//
-	//
-	// if ( errMsg!= null)
-	// {
-	// addErrorMessage(errMsg);
-	// }
-	// checkForMissingElementReferences(dtdelement);
-	// }
-	// else if ( e instanceof NotationDecl )
-	// {
-	// NotationDecl notation = (NotationDecl) e;
-	// ErrorMessage errMsg = notation.getErrorMessage();
-	// if ( errMsg!= null)
-	// {
-	// addErrorMessage(errMsg);
-	// }
-	// }
-	// else if ( e instanceof Attlist )
-	// {
-	// Attlist attList = (Attlist) e;
-	// ErrorMessage errMsg = attList.getErrorMessage();
-	// if ( errMsg!= null)
-	// {
-	// addErrorMessage(errMsg);
-	// }
-	// }
-	// }
-	//
-	//
-	// checkForDuplicateIDAttribute();
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void updateElementHashtableGen() {
-	//
-	// elementPool.clear();
-	// CreateListItems itemsHelper = new CreateListItems(dtdFile);
-	//
-	//
-	// Vector allElements = itemsHelper.getElements();
-	// // go through all the dtdFiles and list the elements
-	// int numElements = allElements.size();
-	//
-	//
-	// for (int i = 0; i < numElements; i++)
-	// {
-	// DTDElement element = (DTDElement) allElements.elementAt(i);
-	// elementPool.put(getBaseName(element), element);
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void updateEntityHashtableGen() {
-	//
-	// updateHashTable(pePool, dtdFile.listDTDEntity());
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void updateHashTableGen(Hashtable h, Collection dtdObjects) {
-	//
-	// h.clear();
-	// Iterator i = dtdObjects.iterator();
-	// while (i.hasNext())
-	// {
-	// String name = "";
-	// DTDObject o = (DTDObject) i.next();
-	// name = getBaseName(o);
-	// h.put(name,o);
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected static String getBaseNameGen(DTDObject obj) {
-	//
-	// return getName(obj, null);
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected static String getNameGen(DTDObject obj, DTDFile dtdFile) {
-	//
-	// String name = "";
-	// if (obj instanceof DTDEntity)
-	// {
-	// DTDEntity entity = (DTDEntity) obj;
-	// if (dtdFile != null &&
-	// !entity.getDTDFile().equals(dtdFile))
-	// {
-	// name = new Path(entity.getDTDFile().getName()).lastSegment() + ": ";
-	// }
-	// name += "%" + ((DTDEntity)obj).getName() + ";";
-	// }
-	// else if (obj instanceof DTDElement)
-	// {
-	// DTDElement element = (DTDElement) obj;
-	// if (dtdFile != null &&
-	// !element.getDTDFile().equals(dtdFile))
-	// {
-	// name = new Path(element.getDTDFile().getName()).lastSegment() + ": ";
-	// }
-	// name += ((DTDElement)obj).getName();
-	// }
-	// else if (obj instanceof DTDElementContent)
-	// {
-	// return ((DTDElementContent) obj).getContentName();
-	// }
-	// return name;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void checkForMissingElementReferencesGen(DTDElement element)
-	// {
-	//
-	// String dtdString = null;
-	// if ( element == null )
-	// return;
-	//
-	//
-	// Vector elementRefs = new Vector();
-	// findElementReferences(element.getContent(),elementRefs);
-	//
-	//
-	// Enumeration en = elementRefs.elements();
-	// while (en.hasMoreElements())
-	// {
-	// String elementRefName = "";
-	// DTDObject dtdObject = (DTDObject) en.nextElement();
-	//
-	//
-	// if ( dtdObject instanceof DTDElement)
-	// {
-	// elementRefName = ((DTDElement)dtdObject).getName();
-	// if ( getElementPool().get(elementRefName) == null)
-	// {
-	// if (dtdString == null)
-	// {
-	// dtdString = getDTDSource(false);
-	// }
-	// String errorMsg = "Element \"" + element.getName() + "\", refers to
-	// undeclared element "
-	// + "\"" + elementRefName + "\", in content model.\n";
-	// ErrorMessage dtdError = new ErrorMessage();
-	// dtdError.setErrorMessage(errorMsg);
-	// SourceLocationHelper.LineColumn lineColumn =
-	// SourceLocationHelper.offsetToLineColumn(dtdString,
-	// element.getStartOffset());
-	// dtdError.setErrorLine(lineColumn.getLine());
-	// dtdError.setErrorColumn(lineColumn.getColumn());
-	// addErrorMessage(dtdError);
-	// }
-	// }
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void findElementReferencesGen(DTDElementContent content,
-	// Vector result) {
-	//
-	//
-	// if (content instanceof DTDElementReferenceContent)
-	// {
-	// result.addElement(((DTDElementReferenceContent)content).getReferencedElement());
-	// }
-	// else if (content instanceof DTDEntityReferenceContent)
-	// {
-	// result.addElement(((DTDEntityReferenceContent)content).getElementReferencedEntity());
-	// }
-	// else if (content instanceof DTDGroupContent)
-	// {
-	// DTDGroupContent group = (DTDGroupContent)content;
-	// EList contents = group.getContent();
-	// Iterator i = contents.iterator();
-	// while (i.hasNext())
-	// {
-	// findElementReferences((DTDElementContent) i.next(), result);
-	// }
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected void checkForDuplicateIDAttributeGen() {
-	//
-	// String dtdString = null;
-	// Collection elements = dtdFile.listDTDElement();
-	// Iterator i = elements.iterator();
-	// while (i.hasNext())
-	// {
-	// DTDElement element = (DTDElement) i.next();
-	// Iterator k = element.getDTDAttribute().iterator();
-	// boolean saw1stID = false;
-	// while (k.hasNext())
-	// {
-	// DTDAttribute attr = (DTDAttribute) k.next();
-	// DTDType dType = attr.getDTDType();
-	// if (dType instanceof DTDBasicType)
-	// {
-	// if ( ((DTDBasicType)dType).getKind().intValue() == DTDBasicTypeKind.ID)
-	// {
-	// if (saw1stID)
-	// {
-	// if (dtdString == null)
-	// {
-	// dtdString = getDTDSource(false);
-	// }
-	// String errMsg = DTDPlugin.getDTDString("_ERROR_DUP_ID_ATTRIBUTE_1");
-	// errMsg += attr.getName() +
-	// DTDPlugin.getDTDString("_UI_ERRORPART_DUP_ID_ATTRIBUTE_2");
-	//              
-	// ErrorMessage dtdError = new ErrorMessage();
-	// dtdError.setErrorMessage(errMsg);
-	// SourceLocationHelper.LineColumn lineColumn =
-	// SourceLocationHelper.offsetToLineColumn(dtdString,
-	// attr.getStartOffset());
-	// dtdError.setErrorLine(lineColumn.getLine());
-	// dtdError.setErrorColumn(lineColumn.getColumn());
-	// dtdError.setObject(attr);
-	// addErrorMessage(dtdError);
-	// // dtdFile.setParseError(true);
-	// break;
-	// }
-	// else
-	// {
-	// saw1stID = true;
-	// }
-	// }
-	// }
-	// }
-	// }
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected static String getGroupTypeGen(int groupKind, int occurrence)
-	// {
-	//
-	// String type = null;
-	//
-	//
-	// switch (groupKind)
-	// {
-	// case DTDGroupKind.SEQUENCE:
-	// type = "DTDSequence";
-	// break;
-	// case DTDGroupKind.CHOICE:
-	// type = "DTDChoice";
-	// break;
-	// }
-	//
-	//
-	// type += getRepeatableTypeSuffix(occurrence);
-	// return type;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected static String getReferenceTypeGen(int occurrence) {
-	//
-	// String type = "DTDReference";
-	// type += getRepeatableTypeSuffix(occurrence);
-	// return type;
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected static String getRepeatableTypeSuffixGen(int occurrence) {
-	//
-	// return "(" + (char)occurrence + ")";
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected static void mainGen(String[] args) {
-	//
-	// System.out.println("\nStarting ...");
-	//
-	//
-	// if (args.length != 1)
-	// System.out.println("usage: DtdUtil inputfile.dtd");
-	//
-	//
-	// java.io.File inputFile = new File(args[0]);
-	//
-	//
-	// String dtdFileName = "";
-	// try
-	// {
-	// dtdFileName = inputFile.getCanonicalPath();
-	// }
-	// catch(IOException ex)
-	// {}
-	//
-	//
-	// String dtdModelName = dtdFileName;
-	//
-	//
-	// if (DTDConstants.DTD_EXTENSION.equals(new
-	// Path(dtdFileName).getFileExtension()))
-	// {
-	// dtdModelName= new
-	// Path(dtdFileName).removeFileExtension().lastSegment();
-	// }
-	// DTDUtil d2m = new DTDUtil();
-	// // TODO: fix port
-	// // d2m.parse(dtdFileName);
-	// try
-	// {
-	// d2m.saveAs(dtdModelName + "." + DTDConstants.DTD_XMI_EXTENSION);
-	// }
-	// catch (Exception e)
-	// {
-	// System.out.println("Exception thrown during model save: " + e);
-	// }
-	// System.out.println("Done.");
-	// }
-	// /**
-	// * @generated
-	// */
-	// protected org.eclipse.core.runtime.IPath getPathGen() {
-	//
-	// Path currentDTDPath = new Path(dtdModelFile);
-	// if (currentDTDPath.segmentCount() > 1)
-	// {
-	// return currentDTDPath.removeLastSegments(1).addTrailingSeparator();
-	// }
-	//    
-	// return new Path("");
-	// }
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDVisitor.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDVisitor.java
deleted file mode 100644
index f65a422..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/DTDVisitor.java
+++ /dev/null
@@ -1,315 +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.dtd.core.internal.emf.util;
-
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.emf.DTDAnyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDAttribute;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElement;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDElementReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEmptyContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntity;
-import org.eclipse.wst.dtd.core.internal.emf.DTDEntityReferenceContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDGroupKind;
-import org.eclipse.wst.dtd.core.internal.emf.DTDNotation;
-import org.eclipse.wst.dtd.core.internal.emf.DTDObject;
-import org.eclipse.wst.dtd.core.internal.emf.DTDPCDataContent;
-import org.eclipse.wst.dtd.core.internal.emf.DTDParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.emf.DTDRepeatableContent;
-
-
-
-public class DTDVisitor {
-
-	public DTDVisitor() {
-	}
-
-	public void visitDTDFile(DTDFile file) {
-		Collection notations = file.listDTDNotation();
-		for (Iterator i = notations.iterator(); i.hasNext();) {
-			visitDTDNotation((DTDNotation) i.next());
-		}
-
-		Collection entities = file.listDTDEntity();
-		for (Iterator i = entities.iterator(); i.hasNext();) {
-			visitDTDEntity((DTDEntity) i.next());
-		}
-
-		Collection objects = file.listDTDElementAndDTDParameterEntityReference();
-		for (Iterator i = objects.iterator(); i.hasNext();) {
-			DTDObject object = (DTDObject) i.next();
-			if (object instanceof DTDElement) {
-				visitDTDElement((DTDElement) object);
-			} // end of if ()
-			else {
-				visitDTDParameterEntityReference((DTDParameterEntityReference) object);
-			} // end of if ()
-		}
-
-	}
-
-	public void visitDTDNotation(DTDNotation notation) {
-	}
-
-	public void visitDTDEntity(DTDEntity entity) {
-	}
-
-	public void visitDTDElement(DTDElement element) {
-		visitDTDElementContent(element.getContent());
-		visitDTDAttributeList(element.getDTDAttribute());
-	}
-
-	public void visitDTDParameterEntityReference(DTDParameterEntityReference parmEntity) {
-
-	}
-
-	public void visitDTDElementContent(DTDElementContent content) {
-		// System.out.println("visitDTDElementContent : " + content);
-		if (content instanceof DTDEmptyContent) {
-			visitDTDEmptyContent((DTDEmptyContent) content);
-		}
-		else if (content instanceof DTDAnyContent) {
-			visitDTDAnyContent((DTDAnyContent) content);
-		}
-		else if (content instanceof DTDPCDataContent) {
-			visitDTDPCDataContent((DTDPCDataContent) content);
-		}
-		if (content instanceof DTDRepeatableContent) {
-			if (content instanceof DTDGroupContent) {
-				visitDTDGroupContent((DTDGroupContent) content);
-			}
-			else if (content instanceof DTDElementReferenceContent) {
-				visitDTDElementReferenceContent((DTDElementReferenceContent) content);
-			}
-			else {
-				visitDTDEntityReferenceContent((DTDEntityReferenceContent) content);
-			} // end of else
-
-			// System.out.println("occurrence: " +
-			// (char)((DTDRepeatableContent)content).getOccurrence());
-		}
-	}
-
-	public void visitDTDEmptyContent(DTDEmptyContent dtdEmptyContent) {
-		// System.out.println("content: EMPTY");
-	}
-
-	public void visitDTDAnyContent(DTDAnyContent dtdAnyContent) {
-		// System.out.println("content: ANY");
-	}
-
-	public void visitDTDPCDataContent(DTDPCDataContent pcDataContent) {
-		// System.out.println("content: PCDATA");
-	}
-
-	public void visitDTDGroupContent(DTDGroupContent groupContent) {
-		if (groupContent.getGroupKind().getValue() == DTDGroupKind.SEQUENCE) {
-			// System.out.println("content: Sequence");
-		}
-		else // if (contentgetGroupKind() == DTDGroupKind.CHOICE)
-		{
-			// System.out.println("content: Choice");
-		}
-
-		Collection groupContents = groupContent.getContent();
-		for (Iterator i = groupContents.iterator(); i.hasNext();) {
-			visitDTDElementContent((DTDElementContent) i.next());
-		}
-	}
-
-	public void visitDTDElementReferenceContent(DTDElementReferenceContent elementReferenceContent) {
-	}
-
-	public void visitDTDEntityReferenceContent(DTDEntityReferenceContent entityReferenceContent) {
-	}
-
-	public void visitDTDAttributeList(List attrs) {
-		Iterator iter = attrs.iterator();
-
-		while (iter.hasNext()) {
-			visitDTDAttribute((DTDAttribute) iter.next());
-		} // end of while ()
-	}
-
-	public void visitDTDAttribute(DTDAttribute attribute) {
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDFileGen(DTDFile file) {
-
-		Collection notations = file.listDTDNotation();
-		for (Iterator i = notations.iterator(); i.hasNext();) {
-			visitDTDNotation((DTDNotation) i.next());
-		}
-
-		Collection entities = file.listDTDEntity();
-		for (Iterator i = entities.iterator(); i.hasNext();) {
-			visitDTDEntity((DTDEntity) i.next());
-		}
-
-		Collection objects = file.listDTDElementAndDTDParameterEntityReference();
-		for (Iterator i = objects.iterator(); i.hasNext();) {
-			DTDObject object = (DTDObject) i.next();
-			if (object instanceof DTDElement) {
-				visitDTDElement((DTDElement) object);
-			} // end of if ()
-			else {
-				visitDTDParameterEntityReference((DTDParameterEntityReference) object);
-			} // end of if ()
-		}
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDNotationGen(DTDNotation notation) {
-
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDEntityGen(DTDEntity entity) {
-
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDElementGen(DTDElement element) {
-
-		visitDTDElementContent(element.getContent());
-		visitDTDAttributeList(element.getDTDAttribute());
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDParameterEntityReferenceGen(DTDParameterEntityReference parmEntity) {
-
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDElementContentGen(DTDElementContent content) {
-
-		// System.out.println("visitDTDElementContent : " + content);
-		if (content instanceof DTDEmptyContent) {
-			visitDTDEmptyContent((DTDEmptyContent) content);
-		}
-		else if (content instanceof DTDAnyContent) {
-			visitDTDAnyContent((DTDAnyContent) content);
-		}
-		else if (content instanceof DTDPCDataContent) {
-			visitDTDPCDataContent((DTDPCDataContent) content);
-		}
-		if (content instanceof DTDRepeatableContent) {
-			if (content instanceof DTDGroupContent) {
-				visitDTDGroupContent((DTDGroupContent) content);
-			}
-			else if (content instanceof DTDElementReferenceContent) {
-				visitDTDElementReferenceContent((DTDElementReferenceContent) content);
-			}
-			else {
-				visitDTDEntityReferenceContent((DTDEntityReferenceContent) content);
-			} // end of else
-
-			// System.out.println("occurrence: " +
-			// (char)((DTDRepeatableContent)content).getOccurrence());
-		}
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDEmptyContentGen(DTDEmptyContent dtdEmptyContent) {
-
-		// System.out.println("content: EMPTY");
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDAnyContentGen(DTDAnyContent dtdAnyContent) {
-
-		// System.out.println("content: ANY");
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDPCDataContentGen(DTDPCDataContent pcDataContent) {
-
-		// System.out.println("content: PCDATA");
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDGroupContentGen(DTDGroupContent groupContent) {
-
-		if (groupContent.getGroupKind().getValue() == DTDGroupKind.SEQUENCE) {
-			// System.out.println("content: Sequence");
-		}
-		else // if (contentgetGroupKind() == DTDGroupKind.CHOICE)
-		{
-			// System.out.println("content: Choice");
-		}
-
-		Collection groupContents = groupContent.getContent();
-		for (Iterator i = groupContents.iterator(); i.hasNext();) {
-			visitDTDElementContent((DTDElementContent) i.next());
-		}
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDElementReferenceContentGen(DTDElementReferenceContent elementReferenceContent) {
-
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDEntityReferenceContentGen(DTDEntityReferenceContent entityReferenceContent) {
-
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDAttributeListGen(List attrs) {
-
-		Iterator iter = attrs.iterator();
-
-		while (iter.hasNext()) {
-			visitDTDAttribute((DTDAttribute) iter.next());
-		} // end of while ()
-	}
-
-	/**
-	 * @generated
-	 */
-	protected void visitDTDAttributeGen(DTDAttribute attribute) {
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/ExternalDTDModel.java b/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/ExternalDTDModel.java
deleted file mode 100644
index 1ac41ee..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/org/eclipse/wst/dtd/core/internal/emf/util/ExternalDTDModel.java
+++ /dev/null
@@ -1,85 +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.dtd.core.internal.emf.util;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.wst.dtd.core.internal.emf.DTDFile;
-
-
-/**
- * Load another DTD model - use when there is external entity references from
- * another model
- */
-public class ExternalDTDModel {
-	DTDFile dtdFile = null;
-
-	public ExternalDTDModel() {
-	}
-
-	public DTDFile getExternalDTDFile() {
-		return dtdFile;
-	}
-
-	/**
-	 * Load the DTD model specified by the uri e.g.
-	 * file:C:/eclipse/examples/purchaseorder.dtd
-	 */
-	public boolean loadModel(ResourceSet resources, String uri) {
-		boolean rc = true;
-
-		if (uri == null || uri.equals("")) {
-			return false;
-		}
-
-		try {
-			// todo... Investigate why we can not create a new DTDUtil to load
-			// the external
-			// without breaking the bvt test bucket on the oagis cases.
-			// Are depending on mof's built in caching via
-			// resources.load(uri)?
-			//
-			URI uriObj = URI.createURI(uri);
-			Resource r = resources.createResource(uriObj);
-			Map options = new HashMap();
-			r.load(options);
-
-			for (Iterator i = resources.getResources().iterator(); i.hasNext();) {
-				DTDFile currentFile = (DTDFile) ((Resource) i.next()).getContents().get(0);
-				String currentURI = currentFile.eResource().getURI().toString();
-				// note : mof stores a slightly different uri than the one we
-				// passed in to resources.load(uri)
-				// In the 'file:' protocol case, the call
-				// resource.load("file:D:\x.dtd") will store a resource with
-				// uri "D:\x.dtd".
-				// This is why we use 'endswith()' instead of 'equals()' to
-				// compare.
-				if (uri.endsWith(currentURI)) {
-					dtdFile = currentFile;
-					break;
-				}
-			}
-			if (dtdFile == null) {
-				rc = false;
-			}
-		}
-		catch (Exception ex) {
-			rc = false;
-		}
-		return rc;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/rose/DTD.cat b/bundles/org.eclipse.wst.dtd.core/emfmodel/rose/DTD.cat
deleted file mode 100644
index 36996e0..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/rose/DTD.cat
+++ /dev/null
@@ -1,3812 +0,0 @@
-

-(object Petal

-    version    	45

-    _written   	"Rose 7.5.0103.1920"

-    charSet    	0)

-

-(object Class_Category "dtd"

-    is_unit    	TRUE

-    is_loaded  	TRUE

-    attributes 	(list Attribute_Set

-	(object Attribute

-	    tool       	"IDL"

-	    name       	"uuid"

-	    value      	(value Text "DCE:935d5730-850b-11e1-0000-005cf4691c4c:1"))

-	(object Attribute

-	    tool       	"Ecore"

-	    name       	"packageName"

-	    value      	(value Text "dtd"))

-	(object Attribute

-	    tool       	"Ecore"

-	    name       	"basePackage"

-	    value      	(value Text "com.ibm.etools"))

-	(object Attribute

-	    tool       	"Ecore"

-	    name       	"prefix"

-	    value      	(value Text "DTD")))

-    quid       	"3857B1C00293"

-    exportControl 	"Public"

-    logical_models 	(list unit_reference_list

-	(object Class "DTDElementContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935d5730-850b-11e1-0001-005cf4691c4c:1")))

-	    quid       	"37CBEACF0213"

-	    abstract   	TRUE)

-	(object Class "DTDGroupContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-0000-005cf4691c4c:1")))

-	    quid       	"37CBEAEF0232"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0001-005cf4691c4c:1")))

-		    quid       	"37D9AD920363"

-		    supplier   	"Logical View::dtd::DTDRepeatableContent"

-		    quidu      	"37D9AD4C01D1"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "groupKind"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0002-005cf4691c4c:1")))

-		    quid       	"37EFC9EC0189"

-		    type       	"DTDGroupKind"

-		    quidu      	"37EFCA550216"

-		    exportControl 	"Public")))

-	(object Class "DTDAttribute"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-0003-005cf4691c4c:1")))

-	    quid       	"37CC187900EA"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0004-005cf4691c4c:1")))

-		    quid       	"39B7F15901DA"

-		    supplier   	"Logical View::ecore::EAttribute"

-		    quidu      	"39238472039D"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "comment"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0005-005cf4691c4c:1")))

-		    quid       	"3839DC9A013B"

-		    type       	"String"

-		    exportControl 	"Public")

-		(object ClassAttribute "defaultKind"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0006-005cf4691c4c:1")))

-		    quid       	"37E144BF0261"

-		    type       	"DTDDefaultKind"

-		    quidu      	"37E144DC03AD"

-		    exportControl 	"Public")

-		(object ClassAttribute "defaultValueString"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0007-005cf4691c4c:1")))

-		    quid       	"396B9BBF006B"

-		    type       	"String"

-		    exportControl 	"Public")))

-	(object Class "DTDOccurrenceType"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-0008-005cf4691c4c:1")))

-	    quid       	"37CC19AF007D"

-	    documentation 	

-|ONE=49 

-|OPTIONAL=63 ONE_OR_MORE=43 ZERO_OR_MORE=42

-	    

-	    stereotype 	"enumeration")

-	(object Class "DTDElement"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-0009-005cf4691c4c:1")))

-	    quid       	"37D9AAF70071"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-000a-005cf4691c4c:1")))

-		    quid       	"39B7F0AF02A8"

-		    supplier   	"Logical View::ecore::EClass"

-		    quidu      	"3903D5BF000A")

-		(object Inheritance_Relationship

-		    quid       	"39FE2B83029B"

-		    supplier   	"Logical View::dtd::DTDContent"

-		    quidu      	"39FE2B5E02DE"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "comment"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-000b-005cf4691c4c:1")))

-		    quid       	"3839DC810062"

-		    type       	"String"

-		    exportControl 	"Public")))

-	(object Class "DTDEmptyContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-000c-005cf4691c4c:1")))

-	    quid       	"37D9AB47037A"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-000d-005cf4691c4c:1")))

-		    quid       	"37D9ABF30327"

-		    supplier   	"Logical View::dtd::DTDElementContent"

-		    quidu      	"37CBEACF0213")))

-	(object Class "DTDAnyContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-000e-005cf4691c4c:1")))

-	    quid       	"37D9AB500304"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-000f-005cf4691c4c:1")))

-		    quid       	"37D9ABEE0207"

-		    supplier   	"Logical View::dtd::DTDElementContent"

-		    quidu      	"37CBEACF0213")))

-	(object Class "DTDPCDataContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-0010-005cf4691c4c:1")))

-	    quid       	"37D9AB5C0135"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0011-005cf4691c4c:1")))

-		    quid       	"37D9ABE90278"

-		    supplier   	"Logical View::dtd::DTDElementContent"

-		    quidu      	"37CBEACF0213")))

-	(object Class "DTDElementReferenceContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-0012-005cf4691c4c:1")))

-	    quid       	"37D9AB7D0010"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0013-005cf4691c4c:1")))

-		    quid       	"37D9AD8C03AA"

-		    supplier   	"Logical View::dtd::DTDRepeatableContent"

-		    quidu      	"37D9AD4C01D1")))

-	(object Class "DTDRepeatableContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-0014-005cf4691c4c:1")))

-	    quid       	"37D9AD4C01D1"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0015-005cf4691c4c:1")))

-		    quid       	"37D9ADB703C0"

-		    supplier   	"Logical View::dtd::DTDElementContent"

-		    quidu      	"37CBEACF0213"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "occurrence"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0016-005cf4691c4c:1")))

-		    quid       	"37CC18A90148"

-		    documentation 	"JUST_ONE= -1  ONE_OR_MORE=43 OPTIONAL=63 ZERO_OR_MORE=42"

-		    type       	"DTDOccurrenceType"

-		    quidu      	"37CC19AF007D"

-		    exportControl 	"Public"))

-	    abstract   	TRUE)

-	(object Class "DTDFile"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:935eddd0-850b-11e1-0017-005cf4691c4c:1")))

-	    quid       	"37D9B08E018F"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0018-005cf4691c4c:1")))

-		    quid       	"39B7F07F0118"

-		    supplier   	"Logical View::ecore::eNamedElement"

-		    quidu      	"3903D4EE0014"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "comment"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-0019-005cf4691c4c:1")))

-		    quid       	"3839DBEF012B"

-		    type       	"String"

-		    exportControl 	"Public")

-		(object ClassAttribute "parseError"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:935eddd0-850b-11e1-001a-005cf4691c4c:1")))

-		    quid       	"388C995F025B"

-		    type       	"boolean"

-		    exportControl 	"Public")))

-	(object Class "DTDDefaultKind"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-0000-005cf4691c4c:1")))

-	    quid       	"37E144DC03AD"

-	    documentation 	"IMPLIED=1 REQUIRED=2 FIXED=3 NOFIXED=4"

-	    stereotype 	"enumeration")

-	(object Class "DTDBasicType"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-0001-005cf4691c4c:1")))

-	    quid       	"37E1464F00DA"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-0002-005cf4691c4c:1")))

-		    quid       	"39B7F2800315"

-		    supplier   	"Logical View::ecore::EClass"

-		    quidu      	"3903D5BF000A"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "kind"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-0003-005cf4691c4c:1")))

-		    quid       	"37E1468A0016"

-		    type       	"DTDBasicTypeKind"

-		    quidu      	"37E14905022C"

-		    exportControl 	"Public")))

-	(object Class "DTDEnumerationType"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-0004-005cf4691c4c:1")))

-	    quid       	"37E146680306"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-0005-005cf4691c4c:1")))

-		    quid       	"39B7F2810302"

-		    supplier   	"Logical View::ecore::EEnum"

-		    quidu      	"39A473E901D4"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "kind"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-0006-005cf4691c4c:1")))

-		    quid       	"37E146AC03B8"

-		    type       	"DTDEnumGroupKind"

-		    quidu      	"37E149B201AD"

-		    exportControl 	"Public")))

-	(object Class "DTDBasicTypeKind"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-0007-005cf4691c4c:1")))

-	    quid       	"37E14905022C"

-	    documentation 	"NONE=0 CDATA=1 ID=2 IDREF=3 IDREFS=4 ENTITY=5 ENTITIES=6 NMTOKEN=7 NMTOKENS=8"

-	    stereotype 	"enumeration")

-	(object Class "DTDEnumGroupKind"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-0008-005cf4691c4c:1")))

-	    quid       	"37E149B201AD"

-	    documentation 	"NAME_TOKEN_GROUP=1 NOTATION_GROUP=2"

-	    stereotype 	"enumeration")

-	(object Class "DTDGroupKind"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-0009-005cf4691c4c:1")))

-	    quid       	"37EFCA550216"

-	    documentation 	"SEQUENCE=1 CHOICE=2"

-	    stereotype 	"enumeration")

-	(object Class "DTDNotation"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-000a-005cf4691c4c:1")))

-	    quid       	"37EFD0EF00C9"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-000b-005cf4691c4c:1")))

-		    quid       	"39B7F0E30234"

-		    supplier   	"Logical View::ecore::eNamedElement"

-		    quidu      	"3903D4EE0014")

-		(object Inheritance_Relationship

-		    quid       	"39FE2B850118"

-		    supplier   	"Logical View::dtd::DTDContent"

-		    quidu      	"39FE2B5E02DE"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "comment"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-000c-005cf4691c4c:1")))

-		    quid       	"3839DC0A024C"

-		    type       	"String"

-		    exportControl 	"Public")

-		(object ClassAttribute "systemID"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-000d-005cf4691c4c:1")))

-		    quid       	"37EFD1020397"

-		    type       	"string"

-		    exportControl 	"Public")

-		(object ClassAttribute "publicID"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-000e-005cf4691c4c:1")))

-		    quid       	"37EFD10E018C"

-		    type       	"string"

-		    exportControl 	"Public")))

-	(object Class "DTDEntity"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-000f-005cf4691c4c:1")))

-	    quid       	"37EFD12B03C8"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-0010-005cf4691c4c:1")))

-		    quid       	"39B7F0E701EA"

-		    supplier   	"Logical View::ecore::eNamedElement"

-		    quidu      	"3903D4EE0014")

-		(object Inheritance_Relationship

-		    quid       	"39FE2B860304"

-		    supplier   	"Logical View::dtd::DTDContent"

-		    quidu      	"39FE2B5E02DE"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "comment"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-0011-005cf4691c4c:1")))

-		    quid       	"3839DC37008E"

-		    type       	"String"

-		    exportControl 	"Public")

-		(object ClassAttribute "parameterEntity"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-0012-005cf4691c4c:1")))

-		    quid       	"37EFD13C017E"

-		    type       	"boolean"

-		    exportControl 	"Public")))

-	(object Class "DTDEntityContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-0013-005cf4691c4c:1")))

-	    quid       	"37EFD19D0083"

-	    abstract   	TRUE)

-	(object Class "DTDExternalEntity"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:9361eb10-850b-11e1-0014-005cf4691c4c:1")))

-	    quid       	"37EFD1F803E1"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:9361eb10-850b-11e1-0015-005cf4691c4c:1")))

-		    quid       	"37EFD32400F3"

-		    supplier   	"Logical View::dtd::DTDEntityContent"

-		    quidu      	"37EFD19D0083"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "systemID"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0000-005cf4691c4c:1")))

-		    quid       	"37EFD2E50161"

-		    type       	"string"

-		    exportControl 	"Public")

-		(object ClassAttribute "publicID"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0001-005cf4691c4c:1")))

-		    quid       	"37EFD2EC01F7"

-		    type       	"string"

-		    exportControl 	"Public")))

-	(object Class "DTDInternalEntity"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0002-005cf4691c4c:1")))

-	    quid       	"37EFD2BA026E"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0003-005cf4691c4c:1")))

-		    quid       	"37EFD32B032E"

-		    supplier   	"Logical View::dtd::DTDEntityContent"

-		    quidu      	"37EFD19D0083"))

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "value"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0004-005cf4691c4c:1")))

-		    quid       	"37EFD2CB0268"

-		    type       	"string"

-		    exportControl 	"Public")))

-	(object Class "DTDParameterEntityReference"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0005-005cf4691c4c:1")))

-	    quid       	"385287CA0163"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0006-005cf4691c4c:1")))

-		    quid       	"39B7F0D10076"

-		    supplier   	"Logical View::ecore::eNamedElement"

-		    quidu      	"3903D4EE0014")

-		(object Inheritance_Relationship

-		    quid       	"39FE2B8A0287"

-		    supplier   	"Logical View::dtd::DTDContent"

-		    quidu      	"39FE2B5E02DE")))

-	(object Class "DTDEntityReferenceContent"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0007-005cf4691c4c:1")))

-	    quid       	"3852900E0127"

-	    superclasses 	(list inheritance_relationship_list

-		(object Inheritance_Relationship

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0008-005cf4691c4c:1")))

-		    quid       	"38529044011B"

-		    supplier   	"Logical View::dtd::DTDRepeatableContent"

-		    quidu      	"37D9AD4C01D1")))

-	(object Class "XMLSchemaDefinedType"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0009-005cf4691c4c:1")))

-	    quid       	"389F0C6D010E"

-	    documentation 	

-|NONE=-1

-|STRING=1

-|BOOLEAN=2

-|FLOAT=3

-|DOUBLE=4

-|DECIMAL=5

-|TIMEINSTANT=6

-|TIMEDURATION=7

-|RECURRINGINSTANT=8

-|BINARY=9

-|URI=10

-|INTEGER=11

-|DATE=12

-|TIME=13

-	    

-	    stereotype 	"enumeration")

-	(object Class "DTDContent"

-	    quid       	"39FE2B5E02DE"

-	    abstract   	TRUE)

-	(object Association "$UNNAMED$0"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-000a-005cf4691c4c:1")))

-	    quid       	"37CBEB6F005D"

-	    roles      	(list role_list

-		(object Role "content"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-000b-005cf4691c4c:1")))

-		    quid       	"37CBEB70006D"

-		    label      	"content"

-		    supplier   	"Logical View::dtd::DTDElementContent"

-		    quidu      	"37CBEACF0213"

-		    client_cardinality 	(value cardinality "1..n")

-		    Constraints 	"ordered"

-		    Containment 	"By Value"

-		    is_navigable 	TRUE)

-		(object Role "group"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-000c-005cf4691c4c:1")))

-		    quid       	"37CBEB7000AB"

-		    label      	"group"

-		    supplier   	"Logical View::dtd::DTDGroupContent"

-		    quidu      	"37CBEAEF0232"

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

-		    is_navigable 	TRUE

-		    is_aggregate 	TRUE)))

-	(object Association "$UNNAMED$1"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-000d-005cf4691c4c:1")))

-	    quid       	"37D9AC0E00CD"

-	    roles      	(list role_list

-		(object Role "element"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-000e-005cf4691c4c:1")))

-		    quid       	"37D9AC0F039F"

-		    label      	"element"

-		    supplier   	"Logical View::dtd::DTDElement"

-		    quidu      	"37D9AAF70071"

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

-		    is_navigable 	TRUE

-		    is_aggregate 	TRUE)

-		(object Role "content"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-000f-005cf4691c4c:1")))

-		    quid       	"37D9AC0F03A9"

-		    label      	"content"

-		    supplier   	"Logical View::dtd::DTDElementContent"

-		    quidu      	"37CBEACF0213"

-		    client_cardinality 	(value cardinality "1")

-		    Containment 	"By Value"

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$2"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0010-005cf4691c4c:1")))

-	    quid       	"37D9AF11001A"

-	    roles      	(list role_list

-		(object Role "elementReference"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0011-005cf4691c4c:1")))

-		    quid       	"37D9AF1B0209"

-		    label      	"elementReference"

-		    supplier   	"Logical View::dtd::DTDElementReferenceContent"

-		    quidu      	"37D9AB7D0010"

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

-		(object Role "referencedElement"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0012-005cf4691c4c:1")))

-		    quid       	"37D9AF1B020A"

-		    label      	"referencedElement"

-		    supplier   	"Logical View::dtd::DTDElement"

-		    quidu      	"37D9AAF70071"

-		    client_cardinality 	(value cardinality "1")

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$3"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0013-005cf4691c4c:1")))

-	    quid       	"37EFD1C902DF"

-	    roles      	(list role_list

-		(object Role "$UNNAMED$4"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0014-005cf4691c4c:1")))

-		    quid       	"37EFD1CA031D"

-		    supplier   	"Logical View::dtd::DTDEntity"

-		    quidu      	"37EFD12B03C8"

-		    is_navigable 	TRUE

-		    is_aggregate 	TRUE)

-		(object Role "content"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0015-005cf4691c4c:1")))

-		    quid       	"37EFD1CA0327"

-		    label      	"content"

-		    supplier   	"Logical View::dtd::DTDEntityContent"

-		    quidu      	"37EFD19D0083"

-		    client_cardinality 	(value cardinality "1")

-		    Containment 	"By Value"

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$5"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0016-005cf4691c4c:1")))

-	    quid       	"37EFD34400E5"

-	    roles      	(list role_list

-		(object Role "notation"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0017-005cf4691c4c:1"))

-			(object Attribute

-			    tool       	"eCore"

-			    name       	"isTransient"

-			    value      	TRUE)

-			(object Attribute

-			    tool       	"Ecore"

-			    name       	"isTransient"

-			    value      	TRUE))

-		    quid       	"37EFD3450209"

-		    label      	"notation"

-		    supplier   	"Logical View::dtd::DTDNotation"

-		    quidu      	"37EFD0EF00C9"

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

-		    is_navigable 	TRUE)

-		(object Role "entity"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0018-005cf4691c4c:1")))

-		    quid       	"37EFD3450213"

-		    label      	"entity"

-		    supplier   	"Logical View::dtd::DTDExternalEntity"

-		    quidu      	"37EFD1F803E1"

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

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$6"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0019-005cf4691c4c:1")))

-	    quid       	"38528979005F"

-	    roles      	(list role_list

-		(object Role "parmEntityRef"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-001a-005cf4691c4c:1")))

-		    quid       	"3852897C0352"

-		    label      	"parmEntityRef"

-		    supplier   	"Logical View::dtd::DTDParameterEntityReference"

-		    quidu      	"385287CA0163"

-		    client_cardinality 	(value cardinality "1")

-		    is_navigable 	TRUE)

-		(object Role "entity"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-001b-005cf4691c4c:1")))

-		    quid       	"3852897C0353"

-		    label      	"entity"

-		    supplier   	"Logical View::dtd::DTDEntity"

-		    quidu      	"37EFD12B03C8"

-		    client_cardinality 	(value cardinality "1")

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$7"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-001c-005cf4691c4c:1")))

-	    quid       	"385294EB0243"

-	    roles      	(list role_list

-		(object Role "entityReference"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-001d-005cf4691c4c:1"))

-			(object Attribute

-			    tool       	"eCore"

-			    name       	"isTransient"

-			    value      	TRUE))

-		    quid       	"385294EF03BB"

-		    label      	"entityReference"

-		    supplier   	"Logical View::dtd::DTDEntityReferenceContent"

-		    quidu      	"3852900E0127"

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

-		    is_navigable 	TRUE)

-		(object Role "elementReferencedEntity"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-001e-005cf4691c4c:1")))

-		    quid       	"385294EF03BC"

-		    label      	"elementReferencedEntity"

-		    supplier   	"Logical View::dtd::DTDEntity"

-		    quidu      	"37EFD12B03C8"

-		    client_cardinality 	(value cardinality "1")

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$8"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-001f-005cf4691c4c:1")))

-	    quid       	"3852972D02CB"

-	    roles      	(list role_list

-		(object Role "attributeNameReference"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0020-005cf4691c4c:1"))

-			(object Attribute

-			    tool       	"eCore"

-			    name       	"isTransient"

-			    value      	TRUE))

-		    quid       	"385297360291"

-		    label      	"attributeNameReference"

-		    supplier   	"Logical View::dtd::DTDAttribute"

-		    quidu      	"37CC187900EA"

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

-		    is_navigable 	TRUE)

-		(object Role "attributeNameReferencedEntity"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0021-005cf4691c4c:1")))

-		    quid       	"38529736029B"

-		    label      	"attributeNameReferencedEntity"

-		    supplier   	"Logical View::dtd::DTDEntity"

-		    quidu      	"37EFD12B03C8"

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

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$9"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0022-005cf4691c4c:1")))

-	    quid       	"38B68A7302B8"

-	    roles      	(list role_list

-		(object Role "$UNNAMED$10"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0023-005cf4691c4c:1")))

-		    quid       	"38B68A780084"

-		    supplier   	"Logical View::dtd::DTDExternalEntity"

-		    quidu      	"37EFD1F803E1")

-		(object Role "entityReferencedFromAnotherFile"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0024-005cf4691c4c:1")))

-		    quid       	"38B68A78008E"

-		    label      	"entityReferencedFromAnotherFile"

-		    supplier   	"Logical View::dtd::DTDFile"

-		    quidu      	"37D9B08E018F"

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

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$11"

-	    attributes 	(list Attribute_Set

-		(object Attribute

-		    tool       	"IDL"

-		    name       	"uuid"

-		    value      	(value Text "DCE:936371b0-850b-11e1-0025-005cf4691c4c:1")))

-	    quid       	"38BD4908013D"

-	    roles      	(list role_list

-		(object Role "attributeTypeReference"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0026-005cf4691c4c:1"))

-			(object Attribute

-			    tool       	"eCore"

-			    name       	"isTransient"

-			    value      	TRUE))

-		    quid       	"38BD49140130"

-		    label      	"attributeTypeReference"

-		    supplier   	"Logical View::dtd::DTDAttribute"

-		    quidu      	"37CC187900EA"

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

-		    is_navigable 	TRUE)

-		(object Role "attributeTypeReferencedEntity"

-		    attributes 	(list Attribute_Set

-			(object Attribute

-			    tool       	"IDL"

-			    name       	"uuid"

-			    value      	(value Text "DCE:936371b0-850b-11e1-0027-005cf4691c4c:1")))

-		    quid       	"38BD4914014E"

-		    label      	"attributeTypeReferencedEntity"

-		    supplier   	"Logical View::dtd::DTDEntity"

-		    quidu      	"37EFD12B03C8"

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

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$12"

-	    quid       	"39FE2A9500CC"

-	    roles      	(list role_list

-		(object Role "$UNNAMED$13"

-		    quid       	"39FE2A950311"

-		    supplier   	"Logical View::dtd::DTDElement"

-		    quidu      	"37D9AAF70071"

-		    is_navigable 	TRUE

-		    is_aggregate 	TRUE)

-		(object Role "$UNNAMED$14"

-		    quid       	"39FE2A95031B"

-		    supplier   	"Logical View::dtd::DTDAttribute"

-		    quidu      	"37CC187900EA"

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

-		    Containment 	"By Value"

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$15"

-	    quid       	"39FE2BBE02DC"

-	    roles      	(list role_list

-		(object Role "$UNNAMED$16"

-		    quid       	"39FE2BBF01B1"

-		    supplier   	"Logical View::dtd::DTDFile"

-		    quidu      	"37D9B08E018F"

-		    is_navigable 	TRUE

-		    is_aggregate 	TRUE)

-		(object Role "$UNNAMED$17"

-		    quid       	"39FE2BBF01BB"

-		    supplier   	"Logical View::dtd::DTDContent"

-		    quidu      	"39FE2B5E02DE"

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

-		    Containment 	"By Value"

-		    is_navigable 	TRUE)))

-	(object Association "$UNNAMED$18"

-	    quid       	"39FE30D8033E"

-	    roles      	(list role_list

-		(object Role "$UNNAMED$19"

-		    quid       	"39FE30D90105"

-		    supplier   	"Logical View::dtd::DTDFile"

-		    quidu      	"37D9B08E018F"

-		    is_navigable 	TRUE

-		    is_aggregate 	TRUE)

-		(object Role "$UNNAMED$20"

-		    quid       	"39FE30D90137"

-		    supplier   	"Logical View::dtd::DTDEnumerationType"

-		    quidu      	"37E146680306"

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

-		    Containment 	"By Value"

-		    is_navigable 	TRUE))))

-    logical_presentations 	(list unit_reference_list

-	(object ClassDiagram "Main"

-	    quid       	"37CAB0E60177"

-	    title      	"Main"

-	    zoom       	98

-	    max_height 	28350

-	    max_width  	21600

-	    origin_x   	0

-	    origin_y   	0

-	    items      	(list diagram_item_list

-		(object NoteView @1

-		    location   	(3264, 240)

-		    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   	(2910, 65)

-			fill_color 	13434879

-			nlines     	7

-			max_width  	673

-			label      	

-|DTDElement's, 

-|DTDParameterEntityReference's, DTDEntity's, and DTDNotation's are added to DTDFile's using the

-|ownedElement relationship

-|between MOFNamespace

-|and MOFObject

-			)

-		    line_color 	3342489

-		    fill_color 	13434879

-		    width      	733

-		    height     	363)

-		(object ClassView "Class" "Logical View::dtd::DTDInternalEntity" @2

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1824, 1872)

-		    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   	(1647, 1817)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	354

-			justify    	0

-			label      	"DTDInternalEntity")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37EFD2BA026E"

-		    width      	372

-		    height     	134

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDElement" @3

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(592, 1200)

-		    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   	(417, 1145)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	350

-			justify    	0

-			label      	"DTDElement")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37D9AAF70071"

-		    compartment 	(object Compartment

-			Parent_View 	@3

-			location   	(417, 1204)

-			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     	1

-			max_width  	371)

-		    width      	368

-		    height     	134

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDEntityContent" @4

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1520, 1488)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	TRUE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@4

-			location   	(1341, 1438)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	358

-			justify    	0

-			label      	"DTDEntityContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37EFD19D0083"

-		    width      	376

-		    height     	124

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritTreeView "" @5

-		    location   	(1520, 1640)

-		    line_color 	3342489

-		    fill_color 	13434879

-		    supplier   	@4

-		    vertices   	(list Points

-			(1520, 1640)

-			(1520, 1550)))

-		(object ClassView "Class" "Logical View::dtd::DTDParameterEntityReference" @6

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(2480, 1216)

-		    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   	(2186, 1166)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	588

-			justify    	0

-			label      	"DTDParameterEntityReference")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"385287CA0163"

-		    width      	606

-		    height     	124

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDEntity" @7

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1520, 1216)

-		    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   	(1270, 1137)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	500

-			justify    	0

-			label      	"DTDEntity")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37EFD12B03C8"

-		    compartment 	(object Compartment

-			Parent_View 	@7

-			location   	(1270, 1196)

-			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  	525)

-		    width      	518

-		    height     	182

-		    annotation 	8

-		    autoResize 	TRUE)

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

-		    location   	(1546, 1366)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37EFD1C902DF"

-		    roleview_list 	(list RoleViews

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

-			    Parent_View 	@8

-			    location   	(-54, 246)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37EFD1CA031D"

-			    client     	@8

-			    supplier   	@7

-			    line_style 	3

-			    origin_attachment 	(1546, 1366)

-			    terminal_attachment 	(1546, 1307))

-			(object RoleView "content" @10

-			    Parent_View 	@8

-			    location   	(-54, 246)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @11

-				Parent_View 	@10

-				location   	(1443, 1407)

-				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  	191

-				justify    	0

-				label      	"+content"

-				pctDist    	0.699248

-				height     	104

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37EFD1CA0327"

-			    client     	@8

-			    supplier   	@4

-			    line_style 	3

-			    origin_attachment 	(1546, 1366)

-			    terminal_attachment 	(1546, 1426)

-			    label      	(object SegLabel @12

-				Parent_View 	@10

-				location   	(1568, 1408)

-				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.721804

-				height     	22

-				orientation 	0))))

-		(object AssociationViewNew "$UNNAMED$6" @13

-		    location   	(1978, 1256)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"38528979005F"

-		    roleview_list 	(list RoleViews

-			(object RoleView "parmEntityRef" @14

-			    Parent_View 	@13

-			    location   	(602, 488)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @15

-				Parent_View 	@14

-				location   	(2038, 1299)

-				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  	328

-				justify    	0

-				label      	"+parmEntityRef"

-				pctDist    	0.305419

-				height     	43

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"3852897C0352"

-			    client     	@13

-			    supplier   	@6

-			    line_style 	3

-			    origin_attachment 	(1978, 1256)

-			    terminal_attachment 	(2177, 1256)

-			    label      	(object SegLabel @16

-				Parent_View 	@14

-				location   	(2141, 1228)

-				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.826484

-				height     	29

-				orientation 	0))

-			(object RoleView "entity" @17

-			    Parent_View 	@13

-			    location   	(602, 488)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @18

-				Parent_View 	@17

-				location   	(1862, 1217)

-				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  	150

-				justify    	0

-				label      	"+entity"

-				pctDist    	0.589109

-				height     	40

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"3852897C0353"

-			    client     	@13

-			    supplier   	@7

-			    line_style 	3

-			    origin_attachment 	(1978, 1256)

-			    terminal_attachment 	(1779, 1256)

-			    label      	(object SegLabel @19

-				Parent_View 	@17

-				location   	(1823, 1309)

-				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.776923

-				height     	53

-				orientation 	0))))

-		(object ClassView "Class" "Logical View::ecore::eNamedElement" @20

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(1488, 176)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	TRUE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@20

-			location   	(1352, 131)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	272

-			justify    	0

-			label      	"eNamedElement")

-		    icon_style 	"Icon"

-		    line_color 	12615680

-		    fill_color 	16777175

-		    quidu      	"3903D4EE0014"

-		    width      	290

-		    height     	115

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::ecore::EClass" @21

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(576, 960)

-		    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 	@21

-			location   	(492, 863)

-			fill_color 	13434879

-			nlines     	2

-			max_width  	168

-			justify    	0

-			label      	"EClass")

-		    icon_style 	"Icon"

-		    line_color 	12615680

-		    fill_color 	16777175

-		    quidu      	"3903D5BF000A"

-		    width      	186

-		    height     	218

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritView "" @22

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F0AF02A8"

-		    client     	@3

-		    supplier   	@21

-		    line_style 	3

-		    origin_attachment 	(571, 1132)

-		    terminal_attachment 	(571, 1069))

-		(object ClassView "Class" "Logical View::ecore::eNamedElement" @23

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(2560, 864)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	TRUE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@23

-			location   	(2424, 819)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	272

-			justify    	0

-			label      	"eNamedElement")

-		    icon_style 	"Icon"

-		    line_color 	12615680

-		    fill_color 	16777175

-		    quidu      	"3903D4EE0014"

-		    width      	290

-		    height     	115

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritTreeView "" @24

-		    location   	(2560, 1036)

-		    line_color 	12615680

-		    fill_color 	13434879

-		    supplier   	@23

-		    vertices   	(list Points

-			(2560, 1036)

-			(2560, 921)))

-		(object InheritView "" @25

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F0E701EA"

-		    client     	@7

-		    supplier   	@23

-		    line_style 	3

-		    origin_attachment 	(1669, 1125)

-		    terminal_attachment 	(1669, 1036)

-		    drawSupplier 	@24)

-		(object InheritView "" @26

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F0D10076"

-		    client     	@6

-		    supplier   	@23

-		    line_style 	3

-		    origin_attachment 	(2618, 1153)

-		    terminal_attachment 	(2618, 1036)

-		    drawSupplier 	@24)

-		(object ClassView "Class" "Logical View::dtd::DTDNotation" @27

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(992, 1232)

-		    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 	@27

-			location   	(817, 1129)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	350

-			justify    	0

-			label      	"DTDNotation")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37EFD0EF00C9"

-		    compartment 	(object Compartment

-			Parent_View 	@27

-			location   	(817, 1188)

-			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  	371)

-		    width      	368

-		    height     	230

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDExternalEntity" @28

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1344, 1872)

-		    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 	@28

-			location   	(1158, 1793)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	372

-			justify    	0

-			label      	"DTDExternalEntity")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37EFD1F803E1"

-		    width      	390

-		    height     	182

-		    annotation 	8

-		    autoResize 	TRUE)

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

-		    location   	(969, 1677)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37EFD34400E5"

-		    roleview_list 	(list RoleViews

-			(object RoleView "notation" @30

-			    Parent_View 	@29

-			    location   	(-247, 205)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @31

-				Parent_View 	@30

-				location   	(834, 1390)

-				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  	203

-				justify    	0

-				label      	"+notation"

-				pctDist    	0.870734

-				height     	136

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37EFD3450209"

-			    client     	@29

-			    supplier   	@27

-			    line_style 	3

-			    origin_attachment 	(969, 1677)

-			    terminal_attachment 	(969, 1347)

-			    label      	(object SegLabel @32

-				Parent_View 	@30

-				location   	(1040, 1388)

-				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  	72

-				justify    	0

-				label      	"0..1"

-				pctDist    	0.877934

-				height     	71

-				orientation 	1))

-			(object RoleView "entity" @33

-			    Parent_View 	@29

-			    location   	(-247, 205)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @34

-				Parent_View 	@33

-				location   	(1082, 1786)

-				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  	150

-				justify    	0

-				label      	"+entity"

-				pctDist    	0.800000

-				height     	42

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37EFD3450213"

-			    client     	@29

-			    supplier   	@28

-			    vertices   	(list Points

-				(969, 1677)

-				(969, 1827)

-				(1149, 1827))

-			    line_style 	3

-			    origin_attachment 	(969, 1677)

-			    terminal_attachment 	(1149, 1827)

-			    label      	(object SegLabel @35

-				Parent_View 	@33

-				location   	(1104, 1853)

-				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..n"

-				pctDist    	0.863501

-				height     	26

-				orientation 	1))))

-		(object InheritView "" @36

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37EFD32400F3"

-		    client     	@28

-		    supplier   	@4

-		    line_style 	3

-		    origin_attachment 	(1274, 1781)

-		    terminal_attachment 	(1274, 1640)

-		    drawSupplier 	@5)

-		(object ClassView "Class" "Logical View::dtd::DTDContent" @37

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(1472, 800)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	TRUE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@37

-			location   	(1344, 750)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	256

-			justify    	0

-			label      	"DTDContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"39FE2B5E02DE"

-		    width      	274

-		    height     	124

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritTreeView "" @38

-		    location   	(1472, 990)

-		    line_color 	3342489

-		    fill_color 	13434879

-		    supplier   	@37

-		    vertices   	(list Points

-			(1472, 990)

-			(1472, 862)))

-		(object InheritView "" @39

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"39FE2B83029B"

-		    client     	@3

-		    supplier   	@37

-		    line_style 	3

-		    origin_attachment 	(719, 1132)

-		    terminal_attachment 	(719, 990)

-		    drawSupplier 	@38)

-		(object InheritView "" @40

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"39FE2B860304"

-		    client     	@7

-		    supplier   	@37

-		    line_style 	3

-		    origin_attachment 	(1452, 1124)

-		    terminal_attachment 	(1452, 990)

-		    drawSupplier 	@38)

-		(object InheritView "" @41

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"39FE2B8A0287"

-		    client     	@6

-		    supplier   	@37

-		    line_style 	3

-		    origin_attachment 	(2347, 1154)

-		    terminal_attachment 	(2347, 990)

-		    drawSupplier 	@38)

-		(object ClassView "Class" "Logical View::dtd::DTDFile" @42

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1488, 448)

-		    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 	@42

-			location   	(1281, 369)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	414

-			justify    	0

-			label      	"DTDFile")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37D9B08E018F"

-		    compartment 	(object Compartment

-			Parent_View 	@42

-			location   	(1281, 428)

-			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  	425)

-		    width      	432

-		    height     	182

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object AssociationViewNew "$UNNAMED$9" @43

-		    location   	(354, 1049)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"38B68A7302B8"

-		    roleview_list 	(list RoleViews

-			(object RoleView "$UNNAMED$10" @44

-			    Parent_View 	@43

-			    location   	(-109, 207)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"38B68A780084"

-			    client     	@43

-			    supplier   	@28

-			    vertices   	(list Points

-				(354, 1049)

-				(354, 1781)

-				(1149, 1781))

-			    line_style 	3

-			    origin_attachment 	(354, 1049)

-			    terminal_attachment 	(1149, 1781))

-			(object RoleView "entityReferencedFromAnotherFile" @45

-			    Parent_View 	@43

-			    location   	(-109, 207)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @46

-				Parent_View 	@45

-				location   	(296, 4537)

-				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  	732

-				justify    	0

-				label      	"+entityReferencedFromAnotherFile"

-				pctDist    	-2.283333

-				height     	59

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"38B68A78008E"

-			    client     	@43

-			    supplier   	@42

-			    vertices   	(list Points

-				(354, 1049)

-				(354, 439)

-				(1272, 439))

-			    line_style 	3

-			    origin_attachment 	(354, 1049)

-			    terminal_attachment 	(1272, 439)

-			    label      	(object SegLabel @47

-				Parent_View 	@45

-				location   	(1206, 500)

-				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..1"

-				pctDist    	0.957129

-				height     	61

-				orientation 	1))))

-		(object InheritView "" @48

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F07F0118"

-		    client     	@42

-		    supplier   	@20

-		    line_style 	3

-		    origin_attachment 	(1488, 357)

-		    terminal_attachment 	(1488, 233))

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

-		    location   	(1472, 638)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"39FE2BBE02DC"

-		    roleview_list 	(list RoleViews

-			(object RoleView "$UNNAMED$16" @50

-			    Parent_View 	@49

-			    location   	(0, -162)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"39FE2BBF01B1"

-			    client     	@49

-			    supplier   	@42

-			    line_style 	3

-			    origin_attachment 	(1472, 638)

-			    terminal_attachment 	(1472, 539))

-			(object RoleView "$UNNAMED$17" @51

-			    Parent_View 	@49

-			    location   	(0, -162)

-			    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      	"39FE2BBF01BB"

-			    client     	@49

-			    supplier   	@37

-			    line_style 	3

-			    origin_attachment 	(1472, 638)

-			    terminal_attachment 	(1472, 738)

-			    label      	(object SegLabel @52

-				Parent_View 	@51

-				location   	(1526, 712)

-				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..n"

-				pctDist    	0.736248

-				height     	54

-				orientation 	0))))

-		(object ClassView "Class" "Logical View::dtd::DTDEnumerationType" @53

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    location   	(2448, 464)

-		    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 	@53

-			location   	(2184, 385)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	528

-			justify    	0

-			label      	"DTDEnumerationType")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37E146680306"

-		    compartment 	(object Compartment

-			Parent_View 	@53

-			location   	(2184, 444)

-			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  	546)

-		    width      	546

-		    height     	182

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object AssociationViewNew "$UNNAMED$18" @54

-		    location   	(1939, 449)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"39FE30D8033E"

-		    roleview_list 	(list RoleViews

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

-			    Parent_View 	@54

-			    location   	(-461, -31)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"39FE30D90105"

-			    client     	@54

-			    supplier   	@42

-			    line_style 	3

-			    origin_attachment 	(1939, 449)

-			    terminal_attachment 	(1704, 449))

-			(object RoleView "$UNNAMED$20" @56

-			    Parent_View 	@54

-			    location   	(-461, -31)

-			    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      	"39FE30D90137"

-			    client     	@54

-			    supplier   	@53

-			    line_style 	3

-			    origin_attachment 	(1939, 449)

-			    terminal_attachment 	(2175, 449)

-			    label      	(object SegLabel @57

-				Parent_View 	@56

-				location   	(2120, 486)

-				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..n"

-				pctDist    	0.767837

-				height     	37

-				orientation 	1))))

-		(object InheritView "" @58

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F0E30234"

-		    client     	@27

-		    supplier   	@23

-		    line_style 	3

-		    origin_attachment 	(1064, 1116)

-		    terminal_attachment 	(1064, 1036)

-		    drawSupplier 	@24)

-		(object InheritView "" @59

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"39FE2B850118"

-		    client     	@27

-		    supplier   	@37

-		    line_style 	3

-		    origin_attachment 	(941, 1117)

-		    terminal_attachment 	(941, 990)

-		    drawSupplier 	@38)

-		(object InheritView "" @60

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37EFD32B032E"

-		    client     	@2

-		    supplier   	@4

-		    line_style 	3

-		    origin_attachment 	(1782, 1805)

-		    terminal_attachment 	(1782, 1640)

-		    drawSupplier 	@5)))

-	(object ClassDiagram "ElementDefinition"

-	    quid       	"37E14330032F"

-	    title      	"ElementDefinition"

-	    zoom       	100

-	    max_height 	28350

-	    max_width  	21600

-	    origin_x   	0

-	    origin_y   	426

-	    items      	(list diagram_item_list

-		(object ClassView "Class" "Logical View::dtd::DTDEmptyContent" @61

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(467, 1448)

-		    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 	@61

-			location   	(281, 1403)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	372

-			justify    	0

-			label      	"DTDEmptyContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37D9AB47037A"

-		    width      	390

-		    height     	114

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDAnyContent" @62

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(886, 1445)

-		    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 	@62

-			location   	(728, 1400)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	316

-			justify    	0

-			label      	"DTDAnyContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37D9AB500304"

-		    width      	334

-		    height     	114

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDPCDataContent" @63

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1298, 1451)

-		    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 	@63

-			location   	(1099, 1406)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	398

-			justify    	0

-			label      	"DTDPCDataContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37D9AB5C0135"

-		    width      	416

-		    height     	114

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDRepeatableContent" @64

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1888, 1456)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	TRUE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@64

-			location   	(1572, 1404)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	632

-			justify    	0

-			label      	"DTDRepeatableContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37D9AD4C01D1"

-		    width      	650

-		    height     	128

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritTreeView "" @65

-		    location   	(1878, 1618)

-		    line_color 	3342489

-		    fill_color 	13434879

-		    supplier   	@64

-		    vertices   	(list Points

-			(1878, 1618)

-			(1878, 1520)))

-		(object ClassView "Class" "Logical View::ecore::EAttribute" @66

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(1936, 400)

-		    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 	@66

-			location   	(1855, 325)

-			fill_color 	13434879

-			nlines     	2

-			max_width  	162

-			justify    	0

-			label      	"EAttribute")

-		    icon_style 	"Icon"

-		    line_color 	12615680

-		    fill_color 	16777175

-		    quidu      	"39238472039D"

-		    height     	174

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::ecore::EClass" @67

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(928, 384)

-		    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 	@67

-			location   	(847, 309)

-			fill_color 	13434879

-			nlines     	2

-			max_width  	162

-			justify    	0

-			label      	"EClass")

-		    icon_style 	"Icon"

-		    line_color 	12615680

-		    fill_color 	16777175

-		    quidu      	"3903D5BF000A"

-		    height     	174

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDGroupContent" @68

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(2192, 1776)

-		    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 	@68

-			location   	(1931, 1727)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	522

-			justify    	0

-			label      	"DTDGroupContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37CBEAEF0232"

-		    width      	540

-		    height     	122

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritView "" @69

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37D9AD920363"

-		    client     	@68

-		    supplier   	@64

-		    line_style 	3

-		    origin_attachment 	(2221, 1714)

-		    terminal_attachment 	(2221, 1618)

-		    drawSupplier 	@65)

-		(object ClassView "Class" "Logical View::dtd::DTDEntityReferenceContent" @70

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1488, 1760)

-		    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 	@70

-			location   	(1223, 1715)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	530

-			justify    	0

-			label      	"DTDEntityReferenceContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"3852900E0127"

-		    width      	548

-		    height     	114

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritView "" @71

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"38529044011B"

-		    client     	@70

-		    supplier   	@64

-		    line_style 	3

-		    origin_attachment 	(1474, 1702)

-		    terminal_attachment 	(1474, 1618)

-		    drawSupplier 	@65)

-		(object ClassView "Class" "Logical View::dtd::DTDElementContent" @72

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(912, 1056)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	TRUE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@72

-			location   	(704, 1008)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	416

-			justify    	0

-			label      	"DTDElementContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37CBEACF0213"

-		    width      	434

-		    height     	120

-		    annotation 	8

-		    autoResize 	TRUE)

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

-		    location   	(2289, 1048)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37CBEB6F005D"

-		    roleview_list 	(list RoleViews

-			(object RoleView "content" @74

-			    Parent_View 	@73

-			    location   	(1025, 8)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @75

-				Parent_View 	@74

-				location   	(1223, 1001)

-				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  	168

-				justify    	0

-				label      	"+content"

-				pctDist    	0.919424

-				height     	48

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37CBEB70006D"

-			    client     	@73

-			    supplier   	@72

-			    line_style 	3

-			    origin_attachment 	(2289, 1048)

-			    terminal_attachment 	(1129, 1048)

-			    label      	(object SegLabel @76

-				Parent_View 	@74

-				location   	(1186, 1083)

-				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  	72

-				justify    	0

-				label      	"1..*"

-				pctDist    	0.951381

-				height     	35

-				orientation 	0)

-			    label      	(object SegLabel @77

-				Parent_View 	@74

-				location   	(1246, 941)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	3

-				anchor_loc 	1

-				nlines     	1

-				max_width  	159

-				justify    	0

-				label      	"{ordered}"

-				pctDist    	0.900000

-				height     	108

-				orientation 	1))

-			(object RoleView "group" @78

-			    Parent_View 	@73

-			    location   	(1025, 8)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @79

-				Parent_View 	@78

-				location   	(2535, 1745)

-				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  	144

-				justify    	0

-				label      	"+group"

-				pctDist    	0.937744

-				height     	41

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37CBEB7000AB"

-			    client     	@73

-			    supplier   	@68

-			    vertices   	(list Points

-				(2289, 1048)

-				(2587, 1048)

-				(2587, 1785)

-				(2462, 1785))

-			    line_style 	3

-			    origin_attachment 	(2289, 1048)

-			    terminal_attachment 	(2462, 1785)

-			    label      	(object SegLabel @80

-				Parent_View 	@78

-				location   	(2526, 1827)

-				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..1"

-				pctDist    	0.945085

-				height     	42

-				orientation 	0))))

-		(object InheritTreeView "" @81

-		    location   	(910, 1291)

-		    line_color 	3342489

-		    fill_color 	13434879

-		    supplier   	@72

-		    vertices   	(list Points

-			(910, 1291)

-			(910, 1116)))

-		(object InheritView "" @82

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37D9ABE90278"

-		    client     	@63

-		    supplier   	@72

-		    line_style 	3

-		    origin_attachment 	(1297, 1394)

-		    terminal_attachment 	(1297, 1291)

-		    drawSupplier 	@81)

-		(object InheritView "" @83

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37D9ABF30327"

-		    client     	@61

-		    supplier   	@72

-		    line_style 	3

-		    origin_attachment 	(466, 1391)

-		    terminal_attachment 	(466, 1291)

-		    drawSupplier 	@81)

-		(object InheritView "" @84

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37D9ABEE0207"

-		    client     	@62

-		    supplier   	@72

-		    line_style 	3

-		    origin_attachment 	(881, 1388)

-		    terminal_attachment 	(881, 1291)

-		    drawSupplier 	@81)

-		(object InheritView "" @85

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37D9ADB703C0"

-		    client     	@64

-		    supplier   	@72

-		    line_style 	3

-		    origin_attachment 	(1903, 1392)

-		    terminal_attachment 	(1903, 1291)

-		    drawSupplier 	@81)

-		(object ClassView "Class" "Logical View::dtd::DTDElementReferenceContent" @86

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(784, 1760)

-		    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 	@86

-			location   	(492, 1715)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	584

-			justify    	0

-			label      	"DTDElementReferenceContent")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37D9AB7D0010"

-		    width      	602

-		    height     	114

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritView "" @87

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37D9AD8C03AA"

-		    client     	@86

-		    supplier   	@64

-		    line_style 	3

-		    origin_attachment 	(650, 1703)

-		    terminal_attachment 	(650, 1618)

-		    drawSupplier 	@65)

-		(object ClassView "Class" "Logical View::dtd::DTDEntity" @88

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1488, 2064)

-		    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 	@88

-			location   	(1244, 1992)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	488

-			justify    	0

-			label      	"DTDEntity")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37EFD12B03C8"

-		    width      	506

-		    height     	168

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object AssociationViewNew "$UNNAMED$7" @89

-		    location   	(1480, 1898)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"385294EB0243"

-		    roleview_list 	(list RoleViews

-			(object RoleView "entityReference" @90

-			    Parent_View 	@89

-			    location   	(312, -70)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @91

-				Parent_View 	@90

-				location   	(1280, 1842)

-				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  	312

-				justify    	0

-				label      	"+entityReference"

-				pctDist    	0.693750

-				height     	201

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"385294EF03BB"

-			    client     	@89

-			    supplier   	@70

-			    line_style 	3

-			    origin_attachment 	(1480, 1898)

-			    terminal_attachment 	(1480, 1817)

-			    label      	(object SegLabel @92

-				Parent_View 	@90

-				location   	(1534, 1842)

-				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.693750

-				height     	54

-				orientation 	1))

-			(object RoleView "elementReferencedEntity" @93

-			    Parent_View 	@89

-			    location   	(312, -70)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @94

-				Parent_View 	@93

-				location   	(1220, 1954)

-				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  	480

-				justify    	0

-				label      	"+elementReferencedEntity"

-				pctDist    	0.685315

-				height     	261

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"385294EF03BC"

-			    client     	@89

-			    supplier   	@88

-			    line_style 	3

-			    origin_attachment 	(1480, 1898)

-			    terminal_attachment 	(1480, 1980)

-			    label      	(object SegLabel @95

-				Parent_View 	@93

-				location   	(1524, 1958)

-				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.734234

-				height     	44

-				orientation 	0))))

-		(object ClassView "Class" "Logical View::dtd::DTDElement" @96

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(912, 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 	@96

-			location   	(744, 702)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	336

-			justify    	0

-			label      	"DTDElement")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37D9AAF70071"

-		    width      	354

-		    height     	124

-		    annotation 	8

-		    autoResize 	TRUE)

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

-		    location   	(912, 904)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37D9AC0E00CD"

-		    roleview_list 	(list RoleViews

-			(object RoleView "element" @98

-			    Parent_View 	@97

-			    location   	(-25, 96)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @99

-				Parent_View 	@98

-				location   	(1014, 865)

-				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  	168

-				justify    	0

-				label      	"+element"

-				pctDist    	0.428571

-				height     	102

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37D9AC0F039F"

-			    client     	@97

-			    supplier   	@96

-			    line_style 	0

-			    label      	(object SegLabel @100

-				Parent_View 	@98

-				location   	(857, 850)

-				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..1"

-				pctDist    	0.598214

-				height     	56

-				orientation 	0))

-			(object RoleView "content" @101

-			    Parent_View 	@97

-			    location   	(-25, 96)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @102

-				Parent_View 	@101

-				location   	(1014, 964)

-				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  	168

-				justify    	0

-				label      	"+content"

-				pctDist    	0.664063

-				height     	102

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37D9AC0F03A9"

-			    client     	@97

-			    supplier   	@72

-			    line_style 	0

-			    label      	(object SegLabel @103

-				Parent_View 	@101

-				location   	(871, 962)

-				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.640625

-				height     	42

-				orientation 	1))))

-		(object AssociationViewNew "$UNNAMED$2" @104

-		    location   	(123, 1122)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"37D9AF11001A"

-		    roleview_list 	(list RoleViews

-			(object RoleView "elementReference" @105

-			    Parent_View 	@104

-			    location   	(-981, 642)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @106

-				Parent_View 	@105

-				location   	(321, 1825)

-				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  	348

-				justify    	0

-				label      	"+elementReference"

-				pctDist    	0.840035

-				height     	56

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37D9AF1B0209"

-			    client     	@104

-			    supplier   	@86

-			    vertices   	(list Points

-				(123, 1122)

-				(123, 1769)

-				(483, 1769))

-			    line_style 	3

-			    origin_attachment 	(123, 1122)

-			    terminal_attachment 	(483, 1769)

-			    label      	(object SegLabel @107

-				Parent_View 	@105

-				location   	(422, 1726)

-				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.940559

-				height     	44

-				orientation 	0))

-			(object RoleView "referencedElement" @108

-			    Parent_View 	@104

-			    location   	(-981, 642)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @109

-				Parent_View 	@108

-				location   	(532, 686)

-				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  	360

-				justify    	0

-				label      	"+referencedElement"

-				pctDist    	0.799650

-				height     	43

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"37D9AF1B020A"

-			    client     	@104

-			    supplier   	@96

-			    vertices   	(list Points

-				(123, 1122)

-				(123, 728)

-				(735, 728))

-			    line_style 	3

-			    origin_attachment 	(123, 1122)

-			    terminal_attachment 	(735, 728)

-			    label      	(object SegLabel @110

-				Parent_View 	@108

-				location   	(701, 773)

-				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.966965

-				height     	45

-				orientation 	1))))

-		(object InheritView "" @111

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F0AF02A8"

-		    client     	@96

-		    supplier   	@67

-		    line_style 	3

-		    origin_attachment 	(923, 690)

-		    terminal_attachment 	(923, 470))

-		(object ClassView "Class" "Logical View::dtd::DTDAttribute" @112

-		    ShowCompartmentStereotypes 	TRUE

-		    SuppressOperation 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1888, 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 	@112

-			location   	(1612, 657)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	552

-			justify    	0

-			label      	"DTDAttribute")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37CC187900EA"

-		    width      	570

-		    height     	214

-		    annotation 	8

-		    autoResize 	TRUE)

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

-		    location   	(2775, 1628)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"3852972D02CB"

-		    roleview_list 	(list RoleViews

-			(object RoleView "attributeNameReference" @114

-			    Parent_View 	@113

-			    location   	(1591, -564)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @115

-				Parent_View 	@114

-				location   	(2422, 808)

-				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  	468

-				justify    	0

-				label      	"+attributeNameReference"

-				pctDist    	0.829630

-				height     	39

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"385297360291"

-			    client     	@113

-			    supplier   	@112

-			    vertices   	(list Points

-				(2775, 1628)

-				(2775, 768)

-				(2173, 768))

-			    line_style 	3

-			    origin_attachment 	(2775, 1628)

-			    terminal_attachment 	(2173, 768)

-			    label      	(object SegLabel @116

-				Parent_View 	@114

-				location   	(2222, 871)

-				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.966649

-				height     	102

-				orientation 	0))

-			(object RoleView "attributeNameReferencedEntity" @117

-			    Parent_View 	@113

-			    location   	(1591, -564)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @118

-				Parent_View 	@117

-				location   	(2076, 2090)

-				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  	588

-				justify    	0

-				label      	"+attributeNameReferencedEntity"

-				pctDist    	0.771469

-				height     	35

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"38529736029B"

-			    client     	@113

-			    supplier   	@88

-			    vertices   	(list Points

-				(2775, 1628)

-				(2775, 2055)

-				(1741, 2055))

-			    line_style 	3

-			    origin_attachment 	(2775, 1628)

-			    terminal_attachment 	(1741, 2055)

-			    label      	(object SegLabel @119

-				Parent_View 	@117

-				location   	(1813, 2018)

-				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..1"

-				pctDist    	0.951442

-				height     	38

-				orientation 	1))))

-		(object AssociationViewNew "$UNNAMED$11" @120

-		    location   	(2945, 1891)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"38BD4908013D"

-		    roleview_list 	(list RoleViews

-			(object RoleView "attributeTypeReference" @121

-			    Parent_View 	@120

-			    location   	(1489, -676)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @122

-				Parent_View 	@121

-				location   	(2435, 656)

-				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  	444

-				justify    	0

-				label      	"+attributeTypeReference"

-				pctDist    	0.866026

-				height     	54

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"38BD49140130"

-			    client     	@120

-			    supplier   	@112

-			    vertices   	(list Points

-				(2945, 1891)

-				(2945, 708)

-				(2173, 708))

-			    line_style 	3

-			    origin_attachment 	(2945, 1891)

-			    terminal_attachment 	(2173, 708)

-			    label      	(object SegLabel @123

-				Parent_View 	@121

-				location   	(2345, 603)

-				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.912538

-				height     	107

-				orientation 	1))

-			(object RoleView "attributeTypeReferencedEntity" @124

-			    Parent_View 	@120

-			    location   	(1489, -676)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @125

-				Parent_View 	@124

-				location   	(1679, 2299)

-				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  	576

-				justify    	0

-				label      	"+attributeTypeReferencedEntity"

-				pctDist    	0.828601

-				height     	56

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"38BD4914014E"

-			    client     	@120

-			    supplier   	@88

-			    vertices   	(list Points

-				(2945, 1891)

-				(2945, 2243)

-				(1438, 2243)

-				(1438, 2148))

-			    line_style 	3

-			    origin_attachment 	(2945, 1891)

-			    terminal_attachment 	(1438, 2148)

-			    label      	(object SegLabel @126

-				Parent_View 	@124

-				location   	(1365, 2178)

-				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..1"

-				pctDist    	0.984774

-				height     	74

-				orientation 	0))))

-		(object InheritView "" @127

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F15901DA"

-		    client     	@112

-		    supplier   	@66

-		    line_style 	3

-		    origin_attachment 	(1950, 645)

-		    terminal_attachment 	(1950, 486))

-		(object AssociationViewNew "$UNNAMED$12" @128

-		    location   	(1346, 752)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"39FE2A9500CC"

-		    roleview_list 	(list RoleViews

-			(object RoleView "$UNNAMED$13" @129

-			    Parent_View 	@128

-			    location   	(-542, -16)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"39FE2A950311"

-			    client     	@128

-			    supplier   	@96

-			    line_style 	3

-			    origin_attachment 	(1346, 752)

-			    terminal_attachment 	(1089, 752))

-			(object RoleView "$UNNAMED$14" @130

-			    Parent_View 	@128

-			    location   	(-542, -16)

-			    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      	"39FE2A95031B"

-			    client     	@128

-			    supplier   	@112

-			    line_style 	3

-			    origin_attachment 	(1346, 752)

-			    terminal_attachment 	(1603, 752)

-			    label      	(object SegLabel @131

-				Parent_View 	@130

-				location   	(1544, 791)

-				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.773390

-				height     	39

-				orientation 	1))))))

-	(object ClassDiagram "AttributeDefinition"

-	    quid       	"37E144570257"

-	    title      	"AttributeDefinition"

-	    zoom       	100

-	    max_height 	28350

-	    max_width  	21600

-	    origin_x   	0

-	    origin_y   	0

-	    items      	(list diagram_item_list

-		(object ClassView "Class" "Logical View::dtd::DTDAttribute" @132

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(512, 656)

-		    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 	@132

-			location   	(236, 539)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	552

-			justify    	0

-			label      	"DTDAttribute")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37CC187900EA"

-		    width      	570

-		    height     	258

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDBasicType" @133

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1264, 656)

-		    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 	@133

-			location   	(1017, 584)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	494

-			justify    	0

-			label      	"DTDBasicType")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37E1464F00DA"

-		    width      	512

-		    height     	168

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::dtd::DTDEnumerationType" @134

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1904, 656)

-		    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 	@134

-			location   	(1646, 584)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	516

-			justify    	0

-			label      	"DTDEnumerationType")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"37E146680306"

-		    width      	534

-		    height     	168

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object NoteView @135

-		    location   	(912, 1120)

-		    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 	@135

-			location   	(492, 926)

-			nlines     	9

-			max_width  	805

-			label      	

-|A DTD attribute's type and initial

-|value are represented using the eType and default value stored in eAttribute. The eType will always be either DTDBasicType (subclass of eClass) or DTDEnumerationType (subclass of eEnum).

-			)

-		    fill_color 	16777215

-		    width      	865

-		    height     	400)

-		(object AttachView "" @136

-		    stereotype 	TRUE

-		    client     	@132

-		    supplier   	@135

-		    line_style 	0)

-		(object ClassView "Class" "Logical View::ecore::EClass" @137

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(1264, 272)

-		    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 	@137

-			location   	(1183, 197)

-			fill_color 	13434879

-			nlines     	2

-			max_width  	162

-			justify    	0

-			label      	"EClass")

-		    icon_style 	"Icon"

-		    line_color 	12615680

-		    fill_color 	16777175

-		    quidu      	"3903D5BF000A"

-		    height     	174

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::ecore::EEnum" @138

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(1904, 272)

-		    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 	@138

-			location   	(1823, 197)

-			fill_color 	13434879

-			nlines     	2

-			max_width  	162

-			justify    	0

-			label      	"EEnum")

-		    icon_style 	"Icon"

-		    line_color 	12615680

-		    fill_color 	16777175

-		    quidu      	"39A473E901D4"

-		    height     	174

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritView "" @139

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F2800315"

-		    client     	@133

-		    supplier   	@137

-		    line_style 	3

-		    origin_attachment 	(1260, 572)

-		    terminal_attachment 	(1260, 359))

-		(object InheritView "" @140

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F2810302"

-		    client     	@134

-		    supplier   	@138

-		    line_style 	3

-		    origin_attachment 	(1903, 572)

-		    terminal_attachment 	(1903, 359))

-		(object ClassView "Class" "Logical View::ecore::EAttribute" @141

-		    ShowCompartmentStereotypes 	TRUE

-		    location   	(528, 272)

-		    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 	@141

-			location   	(447, 197)

-			fill_color 	13434879

-			nlines     	2

-			max_width  	162

-			justify    	0

-			label      	"EAttribute")

-		    icon_style 	"Icon"

-		    line_color 	12615680

-		    fill_color 	16777175

-		    quidu      	"39238472039D"

-		    height     	174

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object InheritView "" @142

-		    stereotype 	TRUE

-		    line_color 	12615680

-		    quidu      	"39B7F15901DA"

-		    client     	@132

-		    supplier   	@141

-		    line_style 	3

-		    origin_attachment 	(520, 527)

-		    terminal_attachment 	(520, 359))))))

diff --git a/bundles/org.eclipse.wst.dtd.core/emfmodel/rose/dtdmodel.mdl b/bundles/org.eclipse.wst.dtd.core/emfmodel/rose/dtdmodel.mdl
deleted file mode 100644
index ce5627a..0000000
--- a/bundles/org.eclipse.wst.dtd.core/emfmodel/rose/dtdmodel.mdl
+++ /dev/null
@@ -1,7526 +0,0 @@
-

-(object Petal

-    version    	45

-    _written   	"Rose 7.5.0103.1920"

-    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"))

-    quid       	"3E36BEB60133"

-    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       	"3A0C75F401F7"

-	exportControl 	"Public"

-	global     	TRUE

-	logical_models 	(list unit_reference_list)

-	logical_presentations 	(list unit_reference_list

-	    (object UseCaseDiagram "Main"

-		quid       	"3A0C75F4020B"

-		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       	"3A0C75F401F6"

-	exportControl 	"Public"

-	global     	TRUE

-	subsystem  	"Component View"

-	quidu      	"3A0C75F401F8"

-	logical_models 	(list unit_reference_list

-	    (object Class_Category "ecore"

-		is_unit    	TRUE

-		is_loaded  	FALSE

-		file_name  	"$VABASE_PLUGINS_PATH\\org.eclipse.emf.ecore\\src\\model\\org.eclipse.emf.ECore.cat"

-		quid       	"39A5ED04004E")

-	    (object Class_Category "dtd"

-		is_unit    	TRUE

-		is_loaded  	FALSE

-		file_name  	"$VABASE_PLUGINS_PATH\\org.eclipse.wst.dtd\\src\\rose\\DTD.cat"

-		quid       	"3857B1C00293"))

-	logical_presentations 	(list unit_reference_list

-	    (object ClassDiagram "Main"

-		quid       	"3A0C75F401FF"

-		title      	"Main"

-		zoom       	100

-		max_height 	28350

-		max_width  	21600

-		origin_x   	0

-		origin_y   	0

-		items      	(list diagram_item_list

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

-			location   	(960, 304)

-			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   	(816, 220)

-			    fill_color 	13434879

-			    nlines     	2

-			    max_width  	288

-			    justify    	0

-			    label      	"ecore")

-			icon_style 	"Icon"

-			line_color 	3342489

-			fill_color 	13434879

-			quidu      	"39A5ED04004E"

-			width      	300

-			height     	180)

-		    (object CategoryView "Logical View::dtd" @2

-			location   	(368, 256)

-			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   	(224, 172)

-			    fill_color 	13434879

-			    nlines     	2

-			    max_width  	288

-			    justify    	0

-			    label      	"dtd")

-			icon_style 	"Icon"

-			line_color 	3342489

-			fill_color 	13434879

-			quidu      	"3857B1C00293"

-			width      	300

-			height     	180)))))

-    root_subsystem 	(object SubSystem "Component View"

-	quid       	"3A0C75F401F8"

-	physical_models 	(list unit_reference_list)

-	physical_presentations 	(list unit_reference_list

-	    (object Module_Diagram "Main"

-		quid       	"3A0C75F4020A"

-		title      	"Main"

-		zoom       	100

-		max_height 	28350

-		max_width  	21600

-		origin_x   	0

-		origin_y   	0

-		items      	(list diagram_item_list))))

-    process_structure 	(object Processes

-	quid       	"3A0C75F401F9"

-	ProcsNDevs 	(list

-	    (object Process_Diagram "Deployment View"

-		quid       	"3A0C75F401FB"

-		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       	"DDL"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"DDL"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"DDL"

-			name       	"Directory"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"DDL"

-			name       	"DataBase"

-			value      	("DataBaseSet" 800))

-		    (object Attribute

-			tool       	"DDL"

-			name       	"DataBaseSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"DDL"

-				name       	"ANSI"

-				value      	800)

-			    (object Attribute

-				tool       	"DDL"

-				name       	"Oracle"

-				value      	801)

-			    (object Attribute

-				tool       	"DDL"

-				name       	"SQLServer"

-				value      	802)

-			    (object Attribute

-				tool       	"DDL"

-				name       	"Sybase"

-				value      	803)

-			    (object Attribute

-				tool       	"DDL"

-				name       	"Watcom"

-				value      	804)))

-		    (object Attribute

-			tool       	"DDL"

-			name       	"PrimaryKeyColumnName"

-			value      	"Id")

-		    (object Attribute

-			tool       	"DDL"

-			name       	"PrimaryKeyColumnType"

-			value      	"NUMBER(5)")

-		    (object Attribute

-			tool       	"DDL"

-			name       	"ViewName"

-			value      	"V_")

-		    (object Attribute

-			tool       	"DDL"

-			name       	"TableName"

-			value      	"T_")

-		    (object Attribute

-			tool       	"DDL"

-			name       	"InheritSuffix"

-			value      	"_V")

-		    (object Attribute

-			tool       	"DDL"

-			name       	"DropClause"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"DDL"

-			name       	"BaseViews"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"DDL"

-			name       	"DDLScriptFilename"

-			value      	"DDL1.SQL")))

-	    (object Attribute

-		tool       	"DDL"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"DDL"

-			name       	"ColumnType"

-			value      	"VARCHAR")

-		    (object Attribute

-			tool       	"DDL"

-			name       	"Length"

-			value      	"")

-		    (object Attribute

-			tool       	"DDL"

-			name       	"NullsOK"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"DDL"

-			name       	"PrimaryKey"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"DDL"

-			name       	"Unique"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"DDL"

-			name       	"CompositeUnique"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"DDL"

-			name       	"CheckConstraint"

-			value      	"")))

-	    (object Attribute

-		tool       	"DDL"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"IDL"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"StopOnError"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"Directory"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GeneratePreserveRegions"

-			value      	TRUE)))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"ImplementationType"

-			value      	"")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"ConstValue"

-			value      	"")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GenerateDefaultSpecifier"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"DefaultSpecifier"

-			value      	"")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IDLElement"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IDLSpecificationType"

-			value      	("IDLSpecSet" 22))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IDLSpecSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Interface"

-				value      	22)

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Typedef"

-				value      	54)

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Enumeration"

-				value      	8)

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Const"

-				value      	71)

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Exception"

-				value      	61)

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Struct"

-				value      	51)

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Union"

-				value      	81)))))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"CmIdentification"

-			value      	(value Text "  %X%  @(#) plugins/org.eclipse.wst.dtd/src/rose/dtdmodel.mdl, org.eclipse.wst.dtd, wtpM1, 20041122"))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"FileName"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GenerateIDLModule"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"InclusionProtectionSymbol"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"AdditionalIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IncludeBySimpleName"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Module-Body"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"CmIdentification"

-			value      	(value Text "  %X%  @(#) plugins/org.eclipse.wst.dtd/src/rose/dtdmodel.mdl, org.eclipse.wst.dtd, wtpM1, 20041122"))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"FileName"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"AdditionalIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IncludeBySimpleName"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"OperationIsOneWay"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"Context"

-			value      	"")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"Raises"

-			value      	"")))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"CaseSpecifier"

-			value      	"")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GenerateDataMember"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"DataMemberName"

-			value      	"$relationship")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IsReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IsConst"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"ConstValue"

-			value      	"")))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Has"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"NameIfUnlabeled"

-			value      	"the_$supplier")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GenerateDataMember"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"DataMemberName"

-			value      	"$relationship")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GenerateForwardReference"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IsReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"BoundedHasRelType"

-			value      	("HasRelTypeSet" 47))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"HasRelTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Array"

-				value      	24)

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Sequence"

-				value      	47)))))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"NameIfUnlabeled"

-			value      	"the_$supplier")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GenerateDataMember"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"DataMemberName"

-			value      	"$relationship")

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GenerateForwardReference"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"IsReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"IDL"

-			name       	"BoundedRoleType"

-			value      	("AssocTypeSet" 47))

-		    (object Attribute

-			tool       	"IDL"

-			name       	"AssocTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Array"

-				value      	24)

-			    (object Attribute

-				tool       	"IDL"

-				name       	"Sequence"

-				value      	47)))))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Uses"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"GenerateForwardReference"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"default__Subsystem"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"IDL"

-			name       	"Directory"

-			value      	"AUTO GENERATE")))

-	    (object Attribute

-		tool       	"IDL"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"SCC"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"eCore"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"eCore"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"eCore"

-			name       	"Codegen Name"

-			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       	"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       	"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       	"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       	"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       	"DefaultCodeBody"

-			value      	"[statement]")

-		    (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       	"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       	"Renames"

-			value      	"")

-		    (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       	"InitialCodeBody"

-			value      	"${default}")

-		    (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      	224)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Body"

-				value      	2)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Renaming"

-				value      	222)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Separate"

-				value      	223)))

-		    (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       	"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       	"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       	"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       	"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       	"DefaultCodeBody"

-			value      	"[statement]")

-		    (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       	"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       	"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       	"InitialCodeBody"

-			value      	"${default}")

-		    (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      	224)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Body"

-				value      	2)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Abstract"

-				value      	221)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Renaming"

-				value      	222)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"RenamingAsBody"

-				value      	231)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Separate"

-				value      	223)))

-		    (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       	"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       	"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       	"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       	"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%  @(#) plugins/org.eclipse.wst.dtd/src/rose/dtdmodel.mdl, org.eclipse.wst.dtd, wtpM1, 20041122"))

-		    (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%  @(#) plugins/org.eclipse.wst.dtd/src/rose/dtdmodel.mdl, org.eclipse.wst.dtd, wtpM1, 20041122"))

-		    (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       	"ViewCounter"

-			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       	"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       	"TablePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ViewPrefix"

-			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       	"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       	"TableSpaceID"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SourceId"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SourceType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"CorrelationName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SelectClause"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsUpdateable"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"CheckOption"

-			value      	"None")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsSnapShot"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsDistinct"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"PersistToServer"

-			value      	"")

-		    (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       	"NotShowRoseIDDlg"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ShowCodegenDlg"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateRoseID"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateDefaultReturnLine"

-			value      	TRUE)

-		    (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       	"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       	"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      	".;C:\\IBM\\SQLLIB\\java\\db2java.zip;C:\\IBM\\SQLLIB\\java\\db2jcc.jar;C:\\IBM\\SQLLIB\\java\\sqlj.zip;C:\\IBM\\SQLLIB\\bin;C:\\IBM\\SQLLIB\\java\\common.jar")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ReferenceClasspath"

-			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       	"VAJavaWorkingFolder"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"InstanceVariablePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ClassVariablePrefix"

-			value      	"")

-		    (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      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavaCommentStyle"

-			value      	TRUE)

-		    (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       	"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       	"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       	"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       	"ServletXMLFilePath"

-			value      	"")))

-	    (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       	"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       	"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       	"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       	"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       	"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      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowExplicitInstantiations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowProtectedInheritance"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"OneByValueContainer"

-			value      	"$targetClass")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OneByReferenceContainer"

-			value      	"$targetClass *")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OptionalByValueContainer"

-			value      	"OptionalByValue(sizeof($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(sizeof($targetClass),$limit)")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedBoundedByValueContainer"

-			value      	"BoundedSetByValue(sizeof($targetClass),$limit)")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BoundedByReferenceContainer"

-			value      	"BoundedListByReference($limit)")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedBoundedByReferenceContainer"

-			value      	"BoundedSetByReference($limit)")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnboundedByValueContainer"

-			value      	"UnboundedListByValue(sizeof($targetClass))")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedUnboundedByValueContainer"

-			value      	"UnboundedSetByValue(sizeof($targetClass))")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnboundedByReferenceContainer"

-			value      	"UnboundedListByReference")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedUnboundedByReferenceContainer"

-			value      	"UnboundedSetByReference")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedByValueContainer"

-			value      	"AssociationByValue(sizeof($qualtype), sizeof($qualcont))")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedQualifiedByValueContainer"

-			value      	"DictionaryByValue(sizeof($qualtype), sizeof($qualcont))")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedByReferenceContainer"

-			value      	"AssociationByReference(sizeof($qualtype), sizeof($qualcont))")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedQualifiedByReferenceContainer"

-			value      	"DictionaryByReference(sizeof($qualtype), sizeof($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       	"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       	"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%  @(#) plugins/org.eclipse.wst.dtd/src/rose/dtdmodel.mdl, org.eclipse.wst.dtd, wtpM1, 20041122"))

-		    (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%  @(#) plugins/org.eclipse.wst.dtd/src/rose/dtdmodel.mdl, org.eclipse.wst.dtd, wtpM1, 20041122"))

-		    (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       	"GenerateFriendBody"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateFriendDecl"

-			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       	"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       	"TopLink"

-		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       	"Ecore"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"packageName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsURI"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"basePackage"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"prefix"

-			value      	"")))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"classifierName"

-			value      	"")))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"operationName"

-			value      	"")))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"attributeName"

-			value      	"")

-		    (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       	"isID"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"referenceName"

-			value      	"")

-		    (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))))

-	quid       	"3A0C75F401FA"))

diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/DTDFile.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/DTDFile.gif
deleted file mode 100644
index 64ee536..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/DTDFile.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/any.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/any.gif
deleted file mode 100644
index 7017d91..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/any.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/attribute.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/attribute.gif
deleted file mode 100644
index 00bb7b4..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/attribute.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/attribute_list.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/attribute_list.gif
deleted file mode 100644
index 795eb5e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/attribute_list.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/comment.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/comment.gif
deleted file mode 100644
index 28c2ccb..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/comment.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/element.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/element.gif
deleted file mode 100644
index 01f4889..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/element.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/element_ref.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/element_ref.gif
deleted file mode 100644
index 749acfc..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/element_ref.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/emptycontent.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/emptycontent.gif
deleted file mode 100644
index bc8e66c..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/emptycontent.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/entity.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/entity.gif
deleted file mode 100644
index 6a91888..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/entity.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/entity_reference.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/entity_reference.gif
deleted file mode 100644
index d30b26b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/entity_reference.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_el.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_el.gif
deleted file mode 100644
index 801c133..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_el.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_ent.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_ent.gif
deleted file mode 100644
index 2fb2ca7..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_ent.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_not.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_not.gif
deleted file mode 100644
index 5909668..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_not.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_unrec.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_unrec.gif
deleted file mode 100644
index 6fd82e6..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/fldr_unrec.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/folder_attlist_obj.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/folder_attlist_obj.gif
deleted file mode 100644
index f849c75..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/folder_attlist_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/folder_comments_obj.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/folder_comments_obj.gif
deleted file mode 100644
index c9f0945..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/folder_comments_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/genhtmform_wiz.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/genhtmform_wiz.gif
deleted file mode 100644
index 5f54702..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/genhtmform_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/newdtd_wiz.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/newdtd_wiz.gif
deleted file mode 100644
index 2c115ff..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/newdtd_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/notation.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/notation.gif
deleted file mode 100644
index ce9df98..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/notation.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/one.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/one.gif
deleted file mode 100644
index 694c26f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/one.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/onechoice.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/onechoice.gif
deleted file mode 100644
index d13ba2e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/onechoice.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormore.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormore.gif
deleted file mode 100644
index 8b2b357..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormore.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormorechoice.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormorechoice.gif
deleted file mode 100644
index 96398c0..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormorechoice.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormoresequence.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormoresequence.gif
deleted file mode 100644
index 041db27..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/oneormoresequence.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/onesequence.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/onesequence.gif
deleted file mode 100644
index 5f9658e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/onesequence.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optional.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optional.gif
deleted file mode 100644
index e7422d7..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optional.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optionalchoice.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optionalchoice.gif
deleted file mode 100644
index fb4f9bd..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optionalchoice.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optionalsequence.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optionalsequence.gif
deleted file mode 100644
index f8d5289..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/optionalsequence.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/txtext.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/txtext.gif
deleted file mode 100644
index efa7a38..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/txtext.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/unrecognized_content.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/unrecognized_content.gif
deleted file mode 100644
index 358997d..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/unrecognized_content.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormore.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormore.gif
deleted file mode 100644
index daf514d..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormore.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormorechoice.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormorechoice.gif
deleted file mode 100644
index a1ac131..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormorechoice.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormoresequence.gif b/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormoresequence.gif
deleted file mode 100644
index 8ed4cb7..0000000
--- a/bundles/org.eclipse.wst.dtd.core/icons/full/obj16/zeroormoresequence.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.core/plugin.properties b/bundles/org.eclipse.wst.dtd.core/plugin.properties
deleted file mode 100644
index 9372406..0000000
--- a/bundles/org.eclipse.wst.dtd.core/plugin.properties
+++ /dev/null
@@ -1,309 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-
-providerName=Eclipse.org
-pluginName=Structured Source DTD Core
-nlFeatureName=Structured Source DTD Core NL Support
-
-! Strings for DTDBasicTypeImpl type descriptions
-_UI_NONE_DESC=None
-
-!! NOTE TO TRANSLATOR: Do not translate following text in parentheses on following 10 lines i.e.(CDATA)
-_UI_CHARACTER_DATA_DESC=Character Data (CDATA)
-_UI_IDENTIFIER_DESC=Identifier (ID)
-_UI_ID_REFERENCE_DESC=ID Reference (IDREF)
-_UI_ID_REFERENCES_DESC=ID References (IDREFS)
-_UI_ENTITY_NAME_DESC=Entity Name (ENTITY)
-_UI_ENTITY_NAMES_DESC=Entity Names (ENTITIES)
-_UI_NAME_TOKEN_DESC=Name Token (NMTOKEN)
-_UI_NAME_TOKENS_DESC=Name Tokens (NMTOKENS)
-_UI_ENUM_NAME_TOKENS_DESC=Enumerated Name Tokens
-_UI_ENUM_NOTATION_DESC=Enumerated NOTATION
-
-!dtd/util/CreateListItems.java
-_UI_LABEL_NONE=(none)
-
-! Strings from sed/model
-
-! Attribute.java
-_UI_LABEL_ATTR_DEFAULT_VAL=Attribute Default Change Value
-_UI_LABEL_ATTR_DEFAULT_KIND=Change Attribute Default Value
-_UI_LABEL_ATTR_TYPE=Change Attribute Type
-
-! AttributeEnumList
-_UI_LABEL_ATTR_ENUM_ITEMS=Change Attribute Enumeration Value
-
-! AttributeList
-_UI_LABEL_ATTR_LIST_ADD=Add Attribute
-
-! CMGroupNode
-_UI_LABEL_CM_GRP_NODE_CONNECTOR=Change Connector
-_UI_LABEL_CM_GRP_NODE_INSERT_ELEMENT=Insert Element
-_UI_LABEL_CM_GRP_NODE_ADD_GRP=Add Group
-_UI_LABEL_CM_GRP_NODE_ADD_CHILD=Add Child Element
-
-! CMNode
-_UI_LABEL_CM_NODE_MIX_CONTENT=Mixed Content
-_UI_LABEL_CM_NODE_CHILD_CONTENT=Children Content
-_UI_LABEL_CM_NODE_SET_MIX_CONTENT=Set Mixed Content
-_UI_LABEL_CM_NODE_SET_CHILD_CONTENT=Set Children Content
-
-!! NOTE TO TRANSLATOR - USAGE: "Set <variable content> Content"
-_UI_LABEL_CM_NODE_SET=Set
-_UI_LABEL_CM_NODE_CONTENT=Content
-
-!! NOTE TO TRANSLATOR - DO NOT TRANSLATE FOLLOWING 3 LINES
-_UI_LABEL_CM_NODE_PCDATA=(#PCDATA)
-_UI_LABEL_CM_NODE_ANY=ANY
-_UI_LABEL_CM_NODE_EMPTY=EMPTY
-
-! CMRepeatableNode
-_UI_LABEL_CM_REP_NODE_CHG_OCCUR=Change Occurrence
-
-! Comment
-_UI_LABEL_COMMENT_CHG=Comment Change
-
-! DTDFile
-_UI_LABEL_DTD_FILE_ADD_ELEMENT=Add Element
-_UI_LABEL_DTD_FILE_ADD_ENTITY=Add Entity
-_UI_LABEL_DTD_FILE_ADD_COMMENT=Add Comment
-_UI_LABEL_DTD_FILE_ADD_PARM_ENTITY_REF=Add Parameter Entity Reference
-_UI_LABEL_DTD_FILE_ADD_NOTATION=Add Notation
-_UI_LABEL_DTD_FILE_ADD_ATTR_LIST=Add Attribute List
-_UI_LABEL_DTD_FILE_DELETE=Delete
-
-! DTDNode
-_UI_LABEL_DTD_NODE_NAME_CHG=Name Change
-_UI_LABEL_DTD_NODE_DELETE=Delete
-
-! Element
-_UI_LABEL_ELEMENT_ADD_ATTR=Add Attribute
-_UI_LABEL_ELEMENT_ADD_GRP=Add Group
-_UI_LABEL_ELEMENT_ADD_CHILD=Add Child Element
-
-! Entity
-_UI_LABEL_ENTITY_SET_PARM_ENTITY=Set Parameter Entity
-_UI_LABEL_ENTITY_SET_GENERAL_ENTITY=Set General Entity
-_UI_LABEL_ENTITY_SET_EXT_ENTITY=Set External Entity
-_UI_LABEL_ENTITY_SET_INT_ENTITY=Set Internal Entity
-_UI_LABEL_ENTITY_VALUE_CHG=Entity Value Change
-
-!! NOTE TO TRANSLATOR - USAGE: "NDATA Change"
-_UI_LABEL_ENTITY_NDATA_CHANGE=Change
-
-! ExternalNode
-_UI_LABEL_EXT_NODE_PUBLIC_ID_CHG=Public ID Change
-_UI_LABEL_EXT_NODE_SYSTEM_ID_CHG=System ID Change
-
-! NodeList
-_UI_LABEL_NODE_LIST_ELEMENTS=Elements
-_UI_LABEL_NODE_LIST_ENTITIES=Entities
-_UI_LABEL_NODE_LIST_NOTATIONS=Notations
-_UI_LABEL_NODE_LIST_COMMENTS=Comments
-_UI_LABEL_NODE_LIST_OTHER=Other
-_UI_LABEL_NODE_LIST_ATTRIBUTES=Attributes
-
-! ParameterEntityReference
-_UI_LABEL_PARM_ENTITY_REF_CHG_ENTITY_REF=Change Entity Reference
-_UI_LABEL_PARM_ENTITY_REF_COMMENT_CHG=Comment Change
-
-! TopLevelNode
-_UI_LABEL_TOP_LEVEL_NODE_DELETE=Delete
-#
-Structured_DTD_Document_Factory_Extension.name=Structured DTD Document Factory Extension
-DTD_Content_Type_Extension_Element.name=DTD Content Type
-
-_UI_PLUGIN_NAME  = DTD Model
-
-_GEN_MENU_LABEL   = &Generate
-_GEN_ACTION_LABEL = &XML Schema...
-
-! Strings for DTDBasicTypeImpl type descriptions
-_UI_NONE_DESC              = None
-
-!! NOTE TO TRANSLATOR: Do not translate following text in parentheses on following 10 lines i.e.(CDATA)
-_UI_CHARACTER_DATA_DESC    = Character Data (CDATA)
-_UI_IDENTIFIER_DESC        = Identifier (ID)
-_UI_ID_REFERENCE_DESC      = ID Reference (IDREF)
-_UI_ID_REFERENCES_DESC     = ID References (IDREFS)
-_UI_ENTITY_NAME_DESC       = Entity Name (ENTITY)
-_UI_ENTITY_NAMES_DESC      = Entity Names (ENTITIES)
-_UI_NAME_TOKEN_DESC        = Name Token (NMTOKEN)
-_UI_NAME_TOKENS_DESC       = Name Tokens (NMTOKENS)
-_UI_ENUM_NAME_TOKENS_DESC  = Enumerated Name Tokens
-_UI_ENUM_NOTATION_DESC     = Enumerated NOTATION
-
-!dtd/util/CreateListItems.java
-_UI_LABEL_NONE  = (none)
-
-! Strings from sed/model
-
-! Attribute.java
-_UI_LABEL_ATTR_DEFAULT_VAL  = Attribute Default Change Value
-_UI_LABEL_ATTR_DEFAULT_KIND = Change Attribute Default Value
-_UI_LABEL_ATTR_TYPE         = Change Attribute Type
-
-! AttributeEnumList
-_UI_LABEL_ATTR_ENUM_ITEMS    = Change Attribute Enumeration Value
-
-! AttributeList
-_UI_LABEL_ATTR_LIST_ADD = Add Attribute
-
-! CMGroupNode
-_UI_LABEL_CM_GRP_NODE_CONNECTOR      = Change Connector
-_UI_LABEL_CM_GRP_NODE_INSERT_ELEMENT = Insert Element
-_UI_LABEL_CM_GRP_NODE_ADD_GRP        = Add Group
-_UI_LABEL_CM_GRP_NODE_ADD_CHILD      = Add Child Element
-
-! CMNode
-_UI_LABEL_CM_NODE_MIX_CONTENT = Mixed Content
-_UI_LABEL_CM_NODE_CHILD_CONTENT = Children Content
-_UI_LABEL_CM_NODE_SET_MIX_CONTENT = Set Mixed Content
-_UI_LABEL_CM_NODE_SET_CHILD_CONTENT = Set Children Content
-
-!! NOTE TO TRANSLATOR - USAGE: "Set <variable content> Content"
-_UI_LABEL_CM_NODE_SET = Set
-_UI_LABEL_CM_NODE_CONTENT = Content
-
-!! NOTE TO TRANSLATOR - DO NOT TRANSLATE FOLLOWING 3 LINES
-_UI_LABEL_CM_NODE_PCDATA = (#PCDATA)
-_UI_LABEL_CM_NODE_ANY    = ANY
-_UI_LABEL_CM_NODE_EMPTY    = EMPTY
-
-! CMRepeatableNode
- _UI_LABEL_CM_REP_NODE_CHG_OCCUR = Change Occurrence
- 
-! Comment
-_UI_LABEL_COMMENT_CHG = Comment Change
-
-! DTDFile
-_UI_LABEL_DTD_FILE_ADD_ELEMENT = Add Element
-_UI_LABEL_DTD_FILE_ADD_ENTITY = Add Entity
-_UI_LABEL_DTD_FILE_ADD_COMMENT = Add Comment
-_UI_LABEL_DTD_FILE_ADD_PARM_ENTITY_REF = Add Parameter Entity Reference
-_UI_LABEL_DTD_FILE_ADD_NOTATION = Add Notation
-_UI_LABEL_DTD_FILE_ADD_ATTR_LIST = Add Attribute List
-_UI_LABEL_DTD_FILE_DELETE = Delete
-
-! DTDNode
-_UI_LABEL_DTD_NODE_NAME_CHG = Name Change
-_UI_LABEL_DTD_NODE_DELETE = Delete
-
-! Element
-_UI_LABEL_ELEMENT_ADD_ATTR = Add Attribute
-_UI_LABEL_ELEMENT_ADD_GRP = Add Group
-_UI_LABEL_ELEMENT_ADD_CHILD = Add Child Element
-
-! Entity
-_UI_LABEL_ENTITY_SET_PARM_ENTITY = Set Parameter Entity
-_UI_LABEL_ENTITY_SET_GENERAL_ENTITY = Set General Entity
-_UI_LABEL_ENTITY_SET_EXT_ENTITY = Set External Entity
-_UI_LABEL_ENTITY_SET_INT_ENTITY = Set Internal Entity
-_UI_LABEL_ENTITY_VALUE_CHG = Entity Value Change
-
-!! NOTE TO TRANSLATOR - USAGE: "NDATA Change"
-_UI_LABEL_ENTITY_NDATA_CHANGE = Change
-
-! ExternalNode
-_UI_LABEL_EXT_NODE_PUBLIC_ID_CHG = Public ID Change
-_UI_LABEL_EXT_NODE_SYSTEM_ID_CHG = System ID Change
-
-! NodeList
-_UI_LABEL_NODE_LIST_ELEMENTS = Elements
-_UI_LABEL_NODE_LIST_ENTITIES = Entities
-_UI_LABEL_NODE_LIST_NOTATIONS = Notations
-_UI_LABEL_NODE_LIST_COMMENTS = Comments
-_UI_LABEL_NODE_LIST_OTHER = Other
-
-! ParameterEntityReference
-_UI_LABEL_PARM_ENTITY_REF_CHG_ENTITY_REF = Change Entity Reference
-_UI_LABEL_PARM_ENTITY_REF_COMMENT_CHG = Comment Change
-
-! TopLevelNode
-_UI_LABEL_TOP_LEVEL_NODE_DELETE = Delete
-
-! DTD2XSDWizard.java
-_UI_WIZARD_DTD2XSD_TITLE     = Generate
-_UI_GENERATE_XSD_TITLE       = Generate XML Schema
-_UI_GENERATE_XSD_DESCRIPTION = Generate an XML schema from the selected DTD file.
-_UI_PAGE_GEN_OPTIONS_TITLE   = XML Schema Generation Options
-_UI_PAGE_GEN_OPTIONS_DESC    = Select how you want your XML schema generated
-_UI_GENERATE_XSD_LONG_DESC   = You can create one XML schema file that includes the selected DTD and any of the DTDs it references.  Alternatively, you can create individual schema files that correspond to the selected DTD and any of the DTDs it references.
-_UI_GROUP_OPTIONS            = Options
-_UI_BUTTON_GEN_ONE_SCHEMA    = &Create one XML schema that includes all the DTD files
-_UI_BUTTON_GEN_MULTI_SCHEMAS = Create an &XML schema for each DTD file
-
-! GenerateXMLSchemaActionDelegate.java
-_UI_DIALOG_GENERATION_SUCCESS_TITLE   = XML Schema Generated
-_UI_DIALOG_GENERATION_SUCCESS_MESSAGE = The XML Schema file has been successfully generated.
-_UI_DIALOG_TITLE_INVALID_GRAMMAR = Invalid Grammar
-_UI_DIALOG_MESSAGE_INVALID_GRAMMAR = The grammar file contains errors. If you proceed, an incorrect result file will be generated. Do you want to continue?
-
-_ERROR_INCL_FILE_LOAD_FAILURE       = Failed to load included file
-
-! usage: _ERROR_UNDECLARED_ELEMENT_1  + <elementName> + _PARTERROR_UNDECLARED_ELEMENT_2
-_ERROR_UNDECLARED_ELEMENT_1         = Reference to undeclared element '
-_UI_ERRORPART_UNDECLARED_ELEMENT_2  =' in content model.
-
-! usage: _ERROR_UNDECLARED_PARAMETER_ENTITY_1  + <elementName> + _PARTERROR_UNDECLARED_PARAMETER_ENTITY_2
-_ERROR_UNDECLARED_PARAMETER_ENTITY_1         = Reference to undeclared parameter entity '
-_UI_ERRORPART_UNDECLARED_PARAMETER_ENTITY_2  =' in content model.
-
-! usage: _ERROR_DUP_ID_ATTRIBUTE_1  + <attributeName> + _PARTERROR_DUP_ID_ATTRIBUTE_2
-_ERROR_DUP_ID_ATTRIBUTE_1         = Duplicate ID attribute '
-_UI_ERRORPART_DUP_ID_ATTRIBUTE_2  = '. Only one ID attribute can be specified per ELEMENT type.
-
-! usage: _WARN_UNDECLARED_ATTRIBUTE_NAME1  + <attributeName> + _PARTWARN_UNDECLARED_ATTRIBUTE_NAME2
-_WARN_UNDECLARED_ATTRIBUTE_NAME1   = Reference to undeclared element '
-_PARTWARN_UNDECLARED_ATTRIBUTE_NAME2 = ' in attribute list name.
-
-! usage:_ERROR_INVALID_DEFAULT_ATTR_VALUE_1 + <typeString> + _PARTERROR_INVALID_DEFAULT_ATTR_VALUE_2 + <attributeName>
-_ERROR_INVALID_DEFAULT_ATTR_VALUE_1         = Invalid default
-_UI_ERRORPART_INVALID_DEFAULT_ATTR_VALUE_2  =  value for attribute '
-
-_EXC_OPERATION_NOT_SUPPORTED  = Operation not supported
-
-! usage:_ERROR_UNDECLARED_PARAMETER_ENTITY_REF_1 + <typeString> + _PARTERROR_UNDECLARED_PARAMETER_ENTITY_REF_2 + <attributeName>
-_ERROR_UNDECLARED_PARAMETER_ENTITY_REF_1         = Reference to undeclared parameter entity '
-_UI_ERRORPART_UNDECLARED_PARAMETER_ENTITY_REF_2  = '.
-
-_EXC_OPERATION_NOT_SUPPORTED  = Operation not supported
-
-! Note to translator
-! Same string used in XMVAL.properties file for XML Validator component
-_UI_PROBLEMS_VALIDATING_REFERENCED_FILE = Problems validating referenced file, "{0}".
-
-!NOTE TO TRANSLATOR: (_ERROR_BAD_FILENAME_EXTENSION + string + _UI_LABEL_OR + string) or (_ERROR_BAD_FILENAME_EXTENSION)
-_ERROR_BAD_FILENAME_EXTENSION         = The file name must end with
-_ERROR_FILE_ALREADY_EXISTS            = The same name already exists.
-
-_UI_LABEL_OR = or
-
-_UI_MENU_VALIDATE_DTD               = &Validate DTD File
-
-!
-! Validate DTD 
-!
-_UI_DIALOG_DTD_INVALID_TITLE  = Validation Failed
-_UI_DIALOG_DTD_VALID_TITLE    = Validation Succeeded
-_UI_DIALOG_DTD_VALID_TEXT     = The DTD file is valid.
-_UI_DIALOG_DTD_INVALID_TEXT   = The DTD file is not valid. See the Problems view for error messages.
-_UI_DIALOG_DTD_LIMIT_EXCEEDED  = The DTD file is not valid.  The message limit for the Problems view has been exceeded.  To see all the messages increase the limit and validate again.
-
-
-_UI_XML_DTD_VALIDATOR                = DTD Validator
-
-!
-! Referenced Element Validation
-!
-_ERROR_REF_ELEMENT_UNDEFINED = The element {0} has not been declared.
diff --git a/bundles/org.eclipse.wst.dtd.core/plugin.xml b/bundles/org.eclipse.wst.dtd.core/plugin.xml
deleted file mode 100644
index 43001a9..0000000
--- a/bundles/org.eclipse.wst.dtd.core/plugin.xml
+++ /dev/null
@@ -1,108 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-	id="org.eclipse.wst.dtd.core"
-	name="%pluginName"
-	version="1.0.0"
-	provider-name="%providerName"
-	class="org.eclipse.wst.dtd.core.internal.DTDCorePlugin">
-
-	<runtime>
-		<library name="dtdcore.jar">
-			<export name="*" />
-		</library>
-	</runtime>
-	<requires>
-		<import plugin="org.eclipse.core.resources"/>
-		<import plugin="org.eclipse.core.runtime" />
-		<import plugin="org.eclipse.emf.ecore"/>
-		<import plugin="org.eclipse.jface.text" />
-		<import plugin="org.eclipse.ui" />
-		<import plugin="org.eclipse.wst.common.uriresolver"/>
-		<import plugin="org.eclipse.wst.sse.core" />
-		<import plugin="org.eclipse.wst.validation"/>
-		<import plugin="org.eclipse.wst.xml.core" />
-		<import plugin="org.eclipse.wst.xml.uriresolver"/>
-	</requires>
-
-
-	<extension point="org.eclipse.wst.sse.core.modelHandler">
-		<modelHandler
-			class="org.eclipse.wst.dtd.core.internal.modelhandler.ModelHandlerForDTD"
-			associatedContentTypeId="org.eclipse.wst.dtd.core.dtdsource"
-			id="org.eclipse.wst.dtd.core.internal.modelhandler">
-		</modelHandler>
-	</extension>
-	<extension
-		point="org.eclipse.wst.sse.core.builderdelegate"
-		id="org.eclipse.wst.dtd.core.builderdelegate.todo">
-		<participant
-			class="org.eclipse.wst.dtd.core.internal.builder.delegates.DTDTaskTagSeeker"
-			contentType="org.eclipse.wst.dtd.core.dtdsource"
-		/>
-	</extension>
-
-   <extension point="org.eclipse.core.filebuffers.documentCreation"
-         id="org.eclipse.wst.dtd.core.documentfactories"
-         name="%Structured_DTD_Document_Factory_Extension.name">
-      <factory
-            contentTypeId="org.eclipse.wst.dtd.core.dtdsource"
-            class="org.eclipse.wst.sse.core.filebuffers.BasicStructuredDocumentFactory"/>
-   </extension>
-
-	<extension point="org.eclipse.team.core.fileTypes">
-		<fileTypes
-			type="text"
-			extension="dtd" />
-		<fileTypes
-			type="text"
-			extension="mod" />
-		<fileTypes
-			type="text"
-			extension="ent" />
-	</extension>
-	
-	   <extension
-         point="org.eclipse.core.runtime.contentTypes">
-         <content-type
-               file-extensions="dtd,mod,ent"
-               priority="normal"
-               name="%DTD_Content_Type_Extension_Element.name"
-               id="dtdsource"
-               base-type="org.eclipse.core.runtime.text"
-			   default-charset="UTF-8">
-			<describer class="org.eclipse.wst.dtd.core.internal.content.ContentDescriberForDTD"/>
-		</content-type>
-   </extension>
-	
-   <extension
-         point="org.eclipse.emf.ecore.extension_parser">
-      <parser
-            type="dtd"
-            class="org.eclipse.wst.dtd.core.internal.emf.util.DTDResourceFactoryImpl">
-      </parser>
-   </extension>
-   <extension
-         point="org.eclipse.emf.ecore.extension_parser">
-      <parser
-            type="ent"
-            class="org.eclipse.wst.dtd.core.internal.emf.util.DTDResourceFactoryImpl">
-      </parser>
-   </extension>
-   <extension
-         point="org.eclipse.emf.ecore.generated_package">
-      <package
-            uri="DTD.xmi"
-            class="org.eclipse.wst.dtd.core.internal.emf.impl.DTDPackageImpl">
-      </package>
-   </extension>
-
-   <extension
-         point="org.eclipse.wst.xml.core.documentFactories">
-      <factory
-            type="dtd, ent, mod, xml"
-            class="org.eclipse.wst.dtd.core.internal.contentmodel.CMDocumentFactoryDTD">
-      </factory>
-   </extension>
-	
-</plugin>
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/AttNode.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/AttNode.java
deleted file mode 100644
index fb585a1..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/AttNode.java
+++ /dev/null
@@ -1,95 +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.dtd.core.internal.saxparser;
-
-import java.util.Enumeration;
-import java.util.Vector;
-
-public final class AttNode {
-	//
-	// attType
-	//
-	public static final int CDATA = 0, ID = 1, IDREF = 2, IDREFS = 3, ENTITY = 4, ENTITIES = 5, NMTOKEN = 6, NMTOKENS = 7, NOTATION = 8, ENUMERATION = 9, PEREFERENCE = 10;
-
-	//
-	// Keep this array in-sync with the ATTTYPE definitions
-	//
-	private static final String[] fgAttTypeString = {"CDATA", // 0
-				"ID", // 1
-				"IDREF", // 2
-				"IDREFS", // 3
-				"ENTITY", // 4
-				"ENTITIES", // 5
-				"NMTOKEN", // 6
-				"NMTOKENS", // 7
-				"NOTATION", // 8
-				"ENUMERATION", // 9 (replaced with "NMTOKEN" by SAX
-								// AttributeList handler)
-				"%ENTITYREFERENCE;"};
-
-	//
-	// attDefaultType
-	//
-	public static final int NOFIXED = 1, // AttValue
-				REQUIRED = 2, // #REQUIRED
-				IMPLIED = 3, // #IMPLIED
-				FIXED = 4; // #FIXED AttValue
-
-	public String name = null;
-	public String type = null;
-	public String defaultType = null;
-	public String defaultValue = null;
-	public Vector enumList = null; // list of Notations or Enum values
-
-	public int getDeclaredType() {
-		int t = -1;
-		if (type == null)
-			return t;
-
-		if (type.startsWith("%") && type.endsWith(";"))
-			return PEREFERENCE;
-
-		for (int i = 0; i < fgAttTypeString.length; i++) {
-			if (type.equals(fgAttTypeString[i])) {
-				t = i;
-				break;
-			}
-		}
-		return t;
-	}
-
-	public Enumeration elements() {
-		if (enumList == null)
-			enumList = new Vector();
-		return enumList.elements();
-	}
-
-	public int getDefaultType() {
-		if (defaultType == null)
-			return -1;
-
-		if (defaultType.startsWith("%") && defaultType.endsWith(";"))
-			return PEREFERENCE;
-		else if (defaultType.equals("#REQUIRED"))
-			return REQUIRED;
-		else if (defaultType.equals("#IMPLIED"))
-			return IMPLIED;
-		else if (defaultType.equals("#FIXED"))
-			return FIXED;
-		else
-			return NOFIXED;
-	}
-
-	public String toString() {
-		return "Att Name: " + name + " Type: " + type + " defaultType: " + defaultType + " defaultValue: " + defaultValue;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/Attlist.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/Attlist.java
deleted file mode 100644
index e42e421..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/Attlist.java
+++ /dev/null
@@ -1,146 +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.dtd.core.internal.saxparser;
-
-import java.util.Enumeration;
-import java.util.Vector;
-
-public class Attlist extends BaseNode {
-	Vector attDefs = new Vector();
-
-	/**
-	 * Constructor.
-	 * 
-	 * @param name
-	 *            This attribute list's name; this value is also known as the
-	 *            Element type.
-	 */
-	public Attlist(String name, String ownerDTD) {
-		this(name, ownerDTD, null, null);
-	}
-
-	public Attlist(String name, String ownerDTD, String comment, ErrorMessage errorMessage) {
-		super(name, ownerDTD, comment, errorMessage);
-	}
-
-
-	/**
-	 * Adds the specified attribute definition to the end of this attribute
-	 * list .
-	 * 
-	 * @param attDef
-	 *            Attribute definition to add to this atribute list.
-	 * @return =true if the attribute definition does not already exist in
-	 *         this attribute list; otherwise, =false.
-	 * @see #elementAt
-	 * @see #getAttDef
-	 * @see #contains
-	 * @see #size
-	 */
-	public boolean addElement(AttNode attDef) {
-		if (contains(attDef.name))
-			return false;
-		this.attDefs.addElement(attDef);
-		return true;
-	}
-
-	/**
-	 * Returns the attribute definition at the specified <var>index</var> in
-	 * this attribute list
-	 * 
-	 * @param index
-	 *            Index into this list of attribute definitions.
-	 * @return Attribute definition at the specified index, or <var>null</var>
-	 *         if an invalid index.
-	 * @see #addElement
-	 * @see #getAttDef
-	 * @see #contains
-	 * @see #size
-	 */
-	public AttNode elementAt(int index) {
-		return (AttNode) this.attDefs.elementAt(index);
-	}
-
-	/**
-	 * Returns the attribute definition that matches the specified attribute
-	 * definition name in this attribute list.
-	 * 
-	 * @param attDefName
-	 *            Attribute definition name to match in this attribute list.
-	 * @return The matching attribute definition, or <var>null</var> if the
-	 *         attribute is not currently defined.
-	 * @see #addElement
-	 * @see #elementAt
-	 * @see #contains
-	 * @see #size
-	 * @see #elements
-	 */
-	public AttNode getAttDef(String attDefName) {
-		for (int i = 0; i < size(); i++) {
-			AttNode ad = elementAt(i);
-			if (attDefName.equals(ad.name))
-				return ad;
-		}
-		return null;
-	}
-
-	/**
-	 * Returns whether the specified attribute definition name is currently
-	 * defined in this attribute list.
-	 * 
-	 * @param attDefName
-	 *            Attribute definition name to match in this attribute list.
-	 * @return =true if <var>attDefName</var> is defined; otherwise, =false.
-	 * @see #addElement
-	 * @see #elementAt
-	 * @see #getAttDef
-	 * @see #size
-	 * @see #elements
-	 */
-	public boolean contains(String attDefName) {
-		return null != getAttDef(attDefName);
-	}
-
-	/**
-	 * Returns the number of attribute definitions in this attribute list.
-	 * 
-	 * @return Number of attribute list definitions, or <var>null</var> if no
-	 *         definitions defined.
-	 * @see #addElement
-	 * @see #elementAt
-	 * @see #getAttDef
-	 * @see #contains
-	 */
-	public int size() {
-		return this.attDefs.size();
-	}
-
-	/**
-	 * Returns an enumeration of all attribute definitions in this attribute
-	 * list.
-	 * 
-	 * @return An enumeration of all attribute definitions, or <var>null</var>
-	 *         if none specified.
-	 * @see #addElement
-	 * @see #elementAt
-	 * @see #getAttDef
-	 * @see #contains
-	 * @see #size
-	 */
-	public Enumeration elements() {
-		return this.attDefs.elements();
-	}
-
-	void setAttDefs(Vector attrs) {
-		attDefs = attrs;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/BaseNode.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/BaseNode.java
deleted file mode 100644
index e944b30..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/BaseNode.java
+++ /dev/null
@@ -1,66 +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.dtd.core.internal.saxparser;
-
-
-public abstract class BaseNode {
-	protected String name = null;
-	protected ErrorMessage errorMessage = null;
-	// protected String errorMessage = null;
-	protected String comment = null;
-	protected String ownerDTD = null;
-
-	/** Default constructor. */
-	public BaseNode(String name, String ownerDTD) {
-		this(name, ownerDTD, null, null);
-	}
-
-	public BaseNode(String name, String ownerDTD, String comment, ErrorMessage errorMessage) {
-		this.name = name;
-		this.ownerDTD = ownerDTD;
-		this.comment = comment;
-		this.errorMessage = errorMessage;
-	}
-
-	public String getNodeName() {
-		return name;
-	}
-
-	public void setNodeName(String name) {
-		this.name = name;
-	}
-
-	public String getOwnerDTD() {
-		return ownerDTD;
-	}
-
-	public void setOwnerDTD(String owner) {
-		ownerDTD = owner;
-	}
-
-	public String getComment() {
-		return comment;
-	}
-
-	public void setComment(String comment) {
-		this.comment = comment;
-	}
-
-	public ErrorMessage getErrorMessage() {
-		return errorMessage;
-	}
-
-	public void setErrorMessage(ErrorMessage message) {
-		errorMessage = message;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMBasicNode.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMBasicNode.java
deleted file mode 100644
index f95dcf5..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMBasicNode.java
+++ /dev/null
@@ -1,42 +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.dtd.core.internal.saxparser;
-
-public class CMBasicNode extends CMNode {
-	private int type = CMNodeType.EMPTY; // possible types :
-
-	// CMNodeType.EMPTY
-	// CMNodeType.ANY
-	// CMNodeType.PCDATA
-
-	/** Default constructor. */
-	public CMBasicNode(String refName) {
-		super(refName);
-	}
-
-	public CMBasicNode(String refName, int type) {
-		super(refName);
-		this.type = type;
-	}
-
-	public int getType() {
-		return type;
-	}
-
-	public void setType(int type) {
-		this.type = type;
-	}
-
-	public String toString() {
-		return " BasicNodeName: " + getName() + " Type: " + getType() + "\n";
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMGroupNode.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMGroupNode.java
deleted file mode 100644
index d1781e4..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMGroupNode.java
+++ /dev/null
@@ -1,62 +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.dtd.core.internal.saxparser;
-
-import java.util.Enumeration;
-import java.util.Vector;
-
-public class CMGroupNode extends CMRepeatableNode {
-	private int type = CMNodeType.GROUP;
-	private int groupKind = CMNodeType.GROUP_SEQUENCE;
-	private Vector children = new Vector();
-
-	public CMGroupNode() {
-		super("GROUP");
-	}
-
-	public int getType() {
-		return type;
-	}
-
-	// implement super class
-	public void setType(int type) {
-		// can't change - only one type allows
-	}
-
-	public int getGroupKind() {
-		return groupKind;
-	}
-
-	public void setGroupKind(int kind) {
-		groupKind = kind;
-	}
-
-	public Vector getChildren() {
-		return children;
-	}
-
-	public void addChild(CMNode child) {
-		children.addElement(child);
-	}
-
-	public String toString() {
-		String result = "Group ( - kind: " + getGroupKind() + " OccType: " + getOccurrence() + "\n";
-
-		Enumeration en = children.elements();
-		while (en.hasMoreElements()) {
-			result += " " + en.nextElement();
-		}
-
-		result += "Group )";
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMNode.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMNode.java
deleted file mode 100644
index 1682a27b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMNode.java
+++ /dev/null
@@ -1,30 +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.dtd.core.internal.saxparser;
-
-public abstract class CMNode {
-	private String refName;
-
-	/** Default constructor. */
-	public CMNode(String refName) {
-		this.refName = refName;
-	}
-
-	public String getName() {
-		return refName;
-	}
-
-	public abstract int getType();
-
-	public abstract void setType(int type);
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMNodeType.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMNodeType.java
deleted file mode 100644
index 4e85db9..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMNodeType.java
+++ /dev/null
@@ -1,30 +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.dtd.core.internal.saxparser;
-
-public interface CMNodeType {
-	static public int EMPTY = 1;
-	static public int ANY = 2;
-	static public int PCDATA = 3;
-	static public int ELEMENT_REFERENCE = 4;
-	static public int ENTITY_REFERENCE = 5;
-	static public int GROUP = 6;
-
-	static public int ONE = 7;
-	static public int OPTIONAL = 8;
-	static public int ONE_OR_MORE = 9;
-	static public int ZERO_OR_MORE = 10;
-
-	static public int GROUP_CHOICE = 11;
-	static public int GROUP_SEQUENCE = 12;
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMReferenceNode.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMReferenceNode.java
deleted file mode 100644
index 657105f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMReferenceNode.java
+++ /dev/null
@@ -1,38 +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.dtd.core.internal.saxparser;
-
-public class CMReferenceNode extends CMRepeatableNode {
-	private int type = CMNodeType.ELEMENT_REFERENCE;
-
-	public CMReferenceNode(String refName) {
-		this(refName, CMNodeType.ELEMENT_REFERENCE);
-	}
-
-	public CMReferenceNode(String refName, int type) {
-		super(refName);
-		this.type = type;
-	}
-
-
-	public int getType() {
-		return type;
-	}
-
-	public void setType(int type) {
-		this.type = type;
-	}
-
-	public String toString() {
-		return " RefName: " + getName() + " Type: " + getType() + " OccType: " + getOccurrence() + "\n";
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMRepeatableNode.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMRepeatableNode.java
deleted file mode 100644
index cf6e112..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/CMRepeatableNode.java
+++ /dev/null
@@ -1,34 +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.dtd.core.internal.saxparser;
-
-public abstract class CMRepeatableNode extends CMNode {
-	private int occType = CMNodeType.ONE;
-
-	public CMRepeatableNode(String refName) {
-		super(refName);
-	}
-
-	public CMRepeatableNode(String refName, int occType) {
-		super(refName);
-		this.occType = occType;
-	}
-
-	public int getOccurrence() {
-		return occType;
-	}
-
-	public void setOccurrence(int occType) {
-		this.occType = occType;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTD.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTD.java
deleted file mode 100644
index d86f9b1..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTD.java
+++ /dev/null
@@ -1,89 +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.dtd.core.internal.saxparser;
-
-import java.util.Enumeration;
-import java.util.Vector;
-
-public class DTD {
-	//
-	// Constants
-	//
-
-	Vector externalElements = new Vector();
-	String name = null;
-
-	boolean isExceptionDuringParse = false;
-
-	//
-	// Constructors
-	//
-
-	/**
-	 * Constructor.
-	 */
-
-	/**
-	 * Constructor.
-	 * 
-	 * @param name
-	 *            The file name of this DTD.
-	 * @see #getName
-	 * @see #setName
-	 */
-	public DTD(String name) {
-		this.name = name;
-	}
-
-	/**
-	 * Returns this DTD's file name.
-	 * 
-	 * @return This DTD's file name, or <var>null</var> if no name.
-	 */
-	public String getName() {
-		return this.name;
-	}
-
-	/**
-	 * Sets this DTD's file name.
-	 * 
-	 * @param name
-	 *            This DTD's name.
-	 * @see #getName
-	 */
-	public void setName(String name) {
-		this.name = name;
-	}
-
-	/**
-	 * Returns an Enumeration instance of all external subset children of this
-	 * DTD.
-	 * 
-	 * @return An enumeration of all external subset children of this DTD.
-	 */
-	public Enumeration externalElements() {
-		return externalElements.elements();
-	}
-
-	public void addDecl(BaseNode decl) {
-		externalElements.addElement(decl);
-	}
-
-	public void setIsExceptionDuringParse(boolean on) {
-		isExceptionDuringParse = on;
-	}
-
-	public boolean getIsExceptionDuringParse() {
-		return isExceptionDuringParse;
-	}
-
-} // class DTD
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDParser.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDParser.java
deleted file mode 100644
index 4f67608..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDParser.java
+++ /dev/null
@@ -1,771 +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.dtd.core.internal.saxparser;
-
-import java.io.StringReader;
-import java.io.UnsupportedEncodingException;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Stack;
-import java.util.Vector;
-
-import javax.xml.parsers.SAXParser;
-import javax.xml.parsers.SAXParserFactory;
-
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.eclipse.wst.xml.uriresolver.util.IdResolverImpl;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.xml.sax.ContentHandler;
-import org.xml.sax.DTDHandler;
-import org.xml.sax.ErrorHandler;
-import org.xml.sax.InputSource;
-import org.xml.sax.Locator;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXParseException;
-import org.xml.sax.XMLReader;
-import org.xml.sax.ext.DeclHandler;
-import org.xml.sax.ext.LexicalHandler;
-import org.xml.sax.helpers.DefaultHandler;
-
-public class DTDParser extends DefaultHandler implements ContentHandler, DTDHandler, ErrorHandler, DeclHandler, LexicalHandler {
-	private String contentString = "";
-	private String declString = "";
-
-	/* Canonical output. */
-	protected boolean canonical;
-
-	protected XMLReader reader;
-	int entityDepth;
-
-	// dmw 11/15 private field never read locally
-	// private Vector declElements;
-	private String comment = null;
-	private ErrorMessage errorMessage = null;
-	private List errorMessages = new ArrayList();
-	private DeclNode previousDeclNode = null;
-	private DeclNode currentDeclNode = null;
-	private BaseNode lastBaseNode = null;
-
-	private boolean entityEnd = false;
-	private int lineNumber;
-
-	private DTD currentDTD = null;
-	private Vector dtdList = new Vector();
-
-	private Stack dtdStack = new Stack();
-	private Stack peRefStack = new Stack();
-	private Stack parsingPERefStack = new Stack();
-
-	private EntityPool entityPool = new EntityPool();
-	private String expandedEntityValue = null;
-	private Hashtable elementPool = new Hashtable();
-
-	boolean parsingExternalPEReference = false;
-	protected boolean expandEntityReferences = true;
-
-	private Locator locator = null;
-
-	private Locator getLocator() {
-		return locator;
-	}
-
-	public void setDocumentLocator(Locator locator) {
-		this.locator = locator;
-	}
-
-	public DTDParser(boolean canonical) throws UnsupportedEncodingException {
-		this(null, canonical);
-	}
-
-	protected DTDParser(String encoding, boolean canonical) throws UnsupportedEncodingException {
-
-		if (encoding == null)
-			encoding = "UTF-8";
-
-		this.canonical = canonical;
-		try {
-			SAXParser sparser = SAXParserFactory.newInstance().newSAXParser();
-			reader = sparser.getXMLReader();
-			reader.setProperty("http://xml.org/sax/properties/declaration-handler", this);
-			reader.setProperty("http://xml.org/sax/properties/lexical-handler", this);
-			reader.setContentHandler(this);
-			reader.setDTDHandler(this);
-			reader.setErrorHandler(this);
-			reader.setEntityResolver(this);
-		}
-		catch (Exception e) {
-			e.printStackTrace();
-		}
-
-	}
-
-	/* Prints the output from the SAX callbacks. */
-	public void parse(String uri) {
-		try {
-			boolean isReadable = URIHelper.isReadableURI(uri, true);
-			if (!isReadable) {
-				throw new Exception("DTD parse error. Can not read the specified URI : " + uri);
-			}
-
-			String document = "<!DOCTYPE root SYSTEM \"" + uri + "\"><root/>";
-			entityDepth = 0;
-			currentDTD = new DTD(uri);
-			reader.parse(new InputSource(new StringReader(document)));
-		}
-		catch (SAXParseException se) {
-			if (currentDTD != null)
-				currentDTD.setIsExceptionDuringParse(true);
-		}
-		catch (Exception e) {
-			if (currentDTD != null)
-				currentDTD.setIsExceptionDuringParse(true);
-		}
-
-	}
-
-	/*
-	 * @deprecated Entity references are always expanded.
-	 */
-	public void setExpandEntityReferences(boolean expandEntityReferences) {
-		this.expandEntityReferences = true;
-	}
-
-	/*
-	 * @deprecated Entity references are always expanded.
-	 */
-	public boolean getExpandEntityReferences() {
-		return expandEntityReferences;
-	}
-
-	public Vector getDTDList() {
-		return dtdList;
-	}
-
-	public Hashtable getElementPool() {
-		return elementPool;
-	}
-
-	public EntityPool getEntityPool() {
-		return entityPool;
-	}
-
-	public List getErrorMessages() {
-		return errorMessages;
-	}
-
-	//
-	// DocumentHandler methods
-	//
-
-	public void startDocument() {
-	}
-
-	public void endDocument() {
-	}
-
-	public void processingInstruction(String target, String data) {
-	}
-
-	//
-	// DTDHandler methods
-	//
-
-	public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException {
-	}
-
-	public void notationDecl(String name, String publicId, String systemId) throws SAXException {
-		startDeclaration(DeclNode.NOTATION);
-		declString = "<!NOTATION";
-		if (entityDepth == 1 || parsingExternalPEReference) {
-			String xs = " ";
-			xs += name;
-			if (publicId == null)
-				xs += " SYSTEM " + "\"" + systemId + "\"";
-			else
-				xs += " PUBLIC " + "\"" + publicId + "\" " + "\"" + systemId + "\"";
-			contentString += xs;
-			parseCurrentDeclaration();
-		}
-	}
-
-	//
-	// DeclHandler methods
-	//
-
-	public void elementDecl(String name, String model) throws SAXException {
-		startDeclaration(DeclNode.ELEMENT);
-		declString = "<!ELEMENT";
-
-		// KB: With early versions of Xerces 2.x, startEntity("[dtd]") used to
-		// be called before this method
-		// so entityDepth was 1. Using JAXP changed that and startEntity() is
-		// not called back anymore.
-		// Because of this, we need to handle the case where entityDepth == 0
-		// as well.
-		if (entityDepth == 0 || entityDepth == 1 || parsingExternalPEReference)
-			parseCurrentDeclarationHelper(name + " " + model);
-	}
-
-	protected String attributeString = "";
-
-	public void attributeDecl(String eName, String aName, String type, String valueDefault, String value) throws SAXException {
-		startDeclaration(DeclNode.ATTLIST);
-		declString = "<!ATTLIST";
-
-		attributeString += " " + aName;
-		if (type != null)
-			attributeString += " " + type;
-		if (valueDefault != null)
-			attributeString += " " + valueDefault;
-		if (value != null)
-			attributeString += " '" + value + "'";
-
-		attributeString = eName + " " + attributeString + ">";
-		parseCurrentDeclarationHelper(attributeString);
-		attributeString = "";
-	}
-
-	public void internalEntityDecl(String name, String value) throws SAXException {
-		startDeclaration(DeclNode.INTERNAL_ENTITY);
-		declString = "<!ENTITY";
-
-		boolean isPEDecl = false;
-		String localName = name;
-		if (entityDepth == 1 || parsingExternalPEReference) {
-			// build up a string: e.g. " % STRDOM "(#PCDATA)">"
-			String xs = " ";
-			if (name.startsWith("%")) {
-				isPEDecl = true;
-				localName = name.substring(1);
-				xs += "% ";
-				xs += name.substring(1);
-			}
-			else
-				xs += name;
-
-			xs += " \"" + value + "\">";
-
-			contentString += xs;
-			// save expanded entity value
-			expandedEntityValue = value;
-			parseCurrentDeclaration();
-
-		}
-	}
-
-	public void externalEntityDecl(String name, String publicId, String systemId) throws SAXException {
-		startDeclaration(DeclNode.EXTERNAL_ENTITY);
-		declString = "<!ENTITY";
-
-		if (entityDepth == 1 || parsingExternalPEReference) {
-			// build up a string:
-			// ex1) " % FIELD SYSTEM "oagis_fields.dtd">"
-			// ex2) " % FIELD PUBLIC "FOO">"
-			String xs = " ";
-			if (name.startsWith("%")) {
-				xs += "% ";
-				xs += name.substring(1);
-			}
-			else
-				xs += name;
-
-			if (systemId != null)
-				xs += " SYSTEM \"" + systemId + "\">";
-			else if (publicId != null)
-				xs += " PUBLIC \"" + publicId + "\">";
-
-			contentString += xs;
-			parseCurrentDeclaration();
-		}
-	}
-
-	//
-	// LexicalHandler methods
-	//
-
-	public void startCDATA() throws SAXException {
-	}
-
-	public void endCDATA() throws SAXException {
-	}
-
-	public void startDTD(String name, String publicId, String systemId) throws SAXException {
-		dtdList.removeAllElements();
-		dtdList.addElement(currentDTD);
-	}
-
-	/**
-	 * Report the end of DTD declarations.
-	 * 
-	 * @exception SAXException
-	 *                The application may raise an exception.
-	 * @see #startDTD
-	 */
-	public void endDTD() throws SAXException {
-		startDeclaration(DeclNode.END_DTD);
-	}
-
-	/**
-	 * Report the beginning of an entity.
-	 * 
-	 * The start and end of the document entity are not reported. The start
-	 * and end of the external DTD subset are reported using the pseudo-name
-	 * "[dtd]". All other events must be properly nested within start/end
-	 * entity events.
-	 * 
-	 * @param name
-	 *            The name of the entity. If it is a parameter entity, the
-	 *            name will begin with '%'.
-	 * @exception SAXException
-	 *                The application may raise an exception.
-	 * @see #endEntity
-	 */
-
-	public void startEntity(String name) throws SAXException {
-		if (name.equals("[dtd]")) {
-			startDeclaration(DeclNode.START_ENTITY_DTD);
-		}
-		else if (currentDeclNode == null) {
-			// PE reference in markupdecl section
-			if (name.startsWith("%")) {
-				String peName = name.substring(1);
-				EntityDecl en = entityPool.referPara(peName);
-
-				peRefStack.push(name);
-				parsingPERefStack.push(new Boolean(parsingExternalPEReference));
-
-				String systemId = en.getSystemId();
-				String publicId = en.getPublicId();
-				if (systemId == null) {
-					parsingExternalPEReference = false;
-				}
-				else {
-					IdResolver idResolver = new IdResolverImpl(currentDTD.getName());
-					String uri = idResolver.resolveId(publicId, systemId);
-					if (!isDTDLoaded(uri)) {
-						// not loaded
-						// out.println(" DTD not loaded .. create new DTD: "
-						// );
-						dtdStack.push(currentDTD);
-						DTD newDTD = new DTD(uri);
-						dtdList.addElement(newDTD);
-						currentDTD = newDTD;
-						parsingExternalPEReference = true;
-					}
-					else {
-						// out.println(" DTD already loaded .. " );
-						parsingExternalPEReference = false;
-					}
-				}
-			}
-		}
-		else if (entityDepth == 1 || parsingExternalPEReference) {
-			String xs = (String) reader.getProperty("http://xml.org/sax/properties/xml-string");
-			contentString += xs;
-		}
-		entityDepth++;
-	}
-
-	/**
-	 * Report the end of an entity.
-	 * 
-	 * @param name
-	 *            The name of the entity that is ending.
-	 * @exception SAXException
-	 *                The application may raise an exception.
-	 * @see #startEntity
-	 */
-	public void endEntity(String name) throws SAXException {
-		if (name.equals("[dtd]")) {
-			startDeclaration(DeclNode.END_ENTITY_DTD);
-		}
-		else if (!peRefStack.empty()) {
-			parseExternalPEReference(name);
-		}
-		else if (entityDepth == 1 || parsingExternalPEReference) {
-			if (!contentString.endsWith(name + ";")) {
-				String xs = (String) reader.getProperty("http://xml.org/sax/properties/xml-string");
-				contentString += xs;
-			}
-		}
-		entityDepth--;
-		entityEnd = true;
-	}
-
-	protected boolean parseExternalPEReference(String name) {
-		if (!peRefStack.empty()) {
-			if (((String) peRefStack.peek()).equals(name)) {
-				peRefStack.pop();
-				if (parsingExternalPEReference) {
-					currentDTD = (DTD) dtdStack.pop();
-					addPEReferenceNode(name);
-				}
-				parsingExternalPEReference = ((Boolean) parsingPERefStack.pop()).booleanValue();
-				return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Report an XML comment anywhere in the document.
-	 * 
-	 * This callback will be used for comments inside or outside the document
-	 * element, including comments in the external DTD subset (if read).
-	 * 
-	 * @param ch
-	 *            An array holding the characters in the comment.
-	 * @param start
-	 *            The starting position in the array.
-	 * @param length
-	 *            The number of characters to use from the array.
-	 * @exception SAXException
-	 *                The application may raise an exception.
-	 */
-	public void comment(char ch[], int start, int length) throws SAXException {
-		startDeclaration(DeclNode.COMMENT);
-
-		if (comment == null)
-			comment = new String(ch);
-		else
-			comment += "\n" + new String(ch); // append all comments.
-		// The comment will get reset after
-		// it has been attached to the following
-		// declaration.
-	}
-
-	//
-	// ErrorHandler methods
-	//
-
-	/* Warning. */
-	public void warning(SAXParseException ex) {
-		String error = "[Source Line] " + declString + contentString + "\n";
-		error += "[Warning    ] " + getLocationString(ex) + ": " + ex.getMessage();
-		setErrorInformation(ex, "warning");
-
-		parseCurrentDeclaration();
-	}
-
-	/* Error. */
-	public void error(SAXParseException ex) {
-		String error = "[Source Line] " + declString + contentString + "\n";
-		error += "[Error   ] " + getLocationString(ex) + ": " + ex.getMessage();
-		setErrorInformation(ex, "error");
-
-		parseCurrentDeclaration();
-	}
-
-	/* Fatal error. */
-	public void fatalError(SAXParseException ex) throws SAXException {
-		String error = "[Source Line] " + declString + contentString + "\n";
-		error += "[Fatal Error] " + getLocationString(ex) + ": " + ex.getMessage();
-		setErrorInformation(ex, "fatal");
-
-		parseCurrentDeclaration();
-	}
-
-	/* Returns a string of the location. */
-	private String getLocationString(SAXParseException ex) {
-		StringBuffer str = new StringBuffer();
-
-		String systemId = ex.getSystemId();
-		if (systemId != null) {
-			int index = systemId.lastIndexOf('/');
-			if (index != -1)
-				systemId = systemId.substring(index + 1);
-			str.append(systemId);
-		}
-		str.append(':');
-		str.append(ex.getLineNumber());
-		str.append(':');
-		str.append(ex.getColumnNumber());
-
-		return str.toString();
-
-	}
-
-	private void startDeclaration(int type) {
-		if (type == DeclNode.END_DTD || type == DeclNode.END_ENTITY_DTD || type == DeclNode.COMMENT || type == DeclNode.ERROR) {
-			previousDeclNode = currentDeclNode;
-			currentDeclNode = null;
-		}
-		else {
-			currentDeclNode = new DeclNode(type);
-			contentString = "";
-			declString = "";
-			expandedEntityValue = null;
-		}
-	}
-
-	private void parseCurrentDeclaration() {
-		parseCurrentDeclarationHelper(contentString);
-		contentString = "";
-	}
-
-	private void parseCurrentDeclarationHelper(String declarationString) {
-		DTDScanner scanner;
-		String name;
-
-		if (currentDeclNode == null && previousDeclNode != null && entityEnd) {
-			currentDeclNode = previousDeclNode;
-		}
-
-		// save the previous declNode
-		if (currentDeclNode != null) {
-			BaseNode baseNode = null;
-			// strip out the ending markup symbol ">"
-			if (declarationString.endsWith(">"))
-				declarationString = declarationString.substring(0, declarationString.length() - 1);
-
-			int sIndex;
-			String cString;
-			int type = currentDeclNode.getType();
-			switch (type) {
-				case DeclNode.ELEMENT : {
-					name = TString.word(declarationString, 1);
-
-					// strip out the name
-					sIndex = declarationString.indexOf(name) + name.length();
-					cString = declarationString.substring(sIndex);
-
-					baseNode = new ElementDecl(name, currentDTD.getName());
-					scanner = new DTDScanner(currentDTD.getName(), cString);
-					CMNode contentModel = scanner.scanContentModel();
-					if (contentModel == null && errorMessage == null) {
-						createErrorMessage("Expecting '(' in content model", "error");
-					}
-
-					((ElementDecl) baseNode).setContentModelNode(contentModel);
-					elementPool.put(name, baseNode);
-					break;
-				}
-				case DeclNode.INTERNAL_ENTITY :
-				case DeclNode.EXTERNAL_ENTITY : {
-					if (!parseExternalPEReference(declarationString)) {
-						scanner = new DTDScanner(currentDTD.getName(), declarationString);
-						baseNode = scanner.scanEntityDecl();
-						// System.out.println("----baseNode (" +
-						// declarationString + ")" + baseNode);
-						if (type == DeclNode.INTERNAL_ENTITY && expandedEntityValue != null) {
-							((EntityDecl) baseNode).expandedValue = expandedEntityValue;
-						}
-						if (baseNode != null) {
-							entityPool.add((EntityDecl) baseNode);
-						}
-					}
-
-					break;
-				}
-				case DeclNode.NOTATION : {
-					scanner = new DTDScanner(currentDTD.getName(), declarationString);
-					baseNode = scanner.scanNotationDecl();
-					break;
-				}
-				case DeclNode.ATTLIST : {
-					name = TString.word(declarationString, 1);
-
-					// strip out the name
-					sIndex = declarationString.indexOf(name) + name.length();
-					cString = declarationString.substring(sIndex);
-
-					baseNode = new Attlist(name, currentDTD.getName());
-					scanner = new DTDScanner(currentDTD.getName(), cString.trim());
-					Vector attrs = scanner.scanAttlistDecl(entityPool);
-					String errorString = scanner.getErrorString();
-
-					if (attrs.size() > 0) {
-						((Attlist) baseNode).setAttDefs(attrs);
-					}
-					if (errorString != null) {
-						createErrorMessage(errorString, "error");
-					}
-					break;
-				}
-				default : {
-					currentDeclNode = null;
-				}
-			}
-
-			if (baseNode != null) {
-				if (comment != null) {
-					baseNode.setComment(comment);
-					comment = null;
-				}
-
-				if (errorMessage != null) {
-					baseNode.setErrorMessage(errorMessage);
-					errorMessage = null;
-				}
-
-				if (currentDeclNode != null) {
-					currentDTD.addDecl(baseNode);
-				}
-				lastBaseNode = baseNode;
-			}
-
-			currentDeclNode = null;
-		}
-		else {
-			if (lastBaseNode != null && errorMessage != null && lastBaseNode.getErrorMessage() == null) {
-				lastBaseNode.setErrorMessage(errorMessage);
-				errorMessage = null;
-			}
-		}
-	}
-
-	private void addPEReferenceNode(String name) {
-		if (name.startsWith("%")) {
-			name = name.substring(1); // strip out the % from entity name
-		}
-		EntityDecl e = new EntityDecl(name, currentDTD.getName(), null, true);
-		e.setEntityReferenced(true);
-		e.setErrorMessage(errorMessage);
-		errorMessage = null;
-		currentDTD.addDecl(e);
-	}
-
-	void printBaseNodes() {
-		Enumeration dtds = dtdList.elements();
-		while (dtds.hasMoreElements()) {
-			DTD dtd = (DTD) dtds.nextElement();
-			Enumeration en = dtd.externalElements();
-
-			while (en.hasMoreElements()) {
-				BaseNode n = (BaseNode) en.nextElement();
-			}
-		}
-	}
-
-	private boolean isDTDLoaded(String uri) {
-		boolean loaded = false;
-		String list = "";
-		if (dtdList != null) {
-			Enumeration en = dtdList.elements();
-			while (en.hasMoreElements()) {
-				DTD dtd = (DTD) en.nextElement();
-				list += dtd.getName();
-				list += ",";
-				if (dtd.getName().equals(uri)) {
-					loaded = true;
-					break;
-				}
-			}
-		}
-		return loaded;
-	}
-
-	public InputSource resolveEntity(String publicId, String systemId) throws SAXException {
-		InputSource result = null;
-		IdResolver idResolver = new IdResolverImpl(currentDTD.getName());
-		String uri = idResolver.resolveId(publicId, systemId);
-		result = new InputSource(uri);
-		return result;
-	}
-
-	//
-	// Main
-	//
-
-	/** Main program entry point. */
-	public static void main(String argv[]) {
-
-		// is there anything to do?
-		if (argv.length == 0) {
-			printUsage();
-			System.exit(1);
-		}
-
-		// vars
-		boolean canonical = false;
-		boolean expandEntityReferences = false;
-		DTDParser parser;
-
-		// check parameters
-		for (int i = 0; i < argv.length; i++) {
-			String arg = argv[i];
-
-			// options
-			if (arg.startsWith("-")) {
-
-				if (arg.equals("-c")) {
-					canonical = true;
-					continue;
-				}
-
-				if (arg.equals("-x")) {
-					expandEntityReferences = true;
-					continue;
-				}
-
-				if (arg.equals("-h")) {
-					printUsage();
-					System.exit(1);
-				}
-			}
-			try {
-				parser = new DTDParser(canonical);
-				parser.setExpandEntityReferences(expandEntityReferences);
-				parser.parse(arg);
-			}
-			catch (Exception e) {
-				e.printStackTrace();
-			}
-		}
-
-	} // main(String[])
-
-	/** Prints the usage. */
-	private static void printUsage() {
-
-		System.err.println("usage: java sax.DTDParser (options) uri ...");
-		System.err.println();
-		System.err.println("options:");
-		System.err.println("  -c       Canonical XML output.");
-		System.err.println("  -x       Expand entity references.");
-		System.err.println("  -h       This help screen.");
-
-	} // printUsage()
-
-	private void setErrorInformation(SAXParseException ex, String severity) {
-		errorMessage = new ErrorMessage();
-
-		if (ex.getLineNumber() == -1) {
-			errorMessage.setErrorLine(lineNumber);
-		}
-		else {
-			errorMessage.setErrorLine(ex.getLineNumber());
-		}
-
-
-		errorMessage.setErrorMessage(ex.getMessage());
-		errorMessage.setErrorColumn(ex.getColumnNumber());
-		errorMessage.setSeverity(severity);
-		errorMessages.add(errorMessage);
-	}
-
-	private void createErrorMessage(String message, String severity) {
-		errorMessage = new ErrorMessage();
-
-		Locator locator = getLocator();
-
-		errorMessage.setErrorLine(locator.getLineNumber());
-		errorMessage.setErrorColumn(locator.getColumnNumber());
-
-		errorMessage.setErrorMessage(message);
-		errorMessage.setSeverity(severity);
-
-		errorMessages.add(errorMessage);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDSaxArtifactVisitor.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDSaxArtifactVisitor.java
deleted file mode 100644
index ed96bb1..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDSaxArtifactVisitor.java
+++ /dev/null
@@ -1,64 +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.dtd.core.internal.saxparser;
-
-import java.util.Enumeration;
-
-
-
-public class DTDSaxArtifactVisitor {
-	public void visitDTD(DTD dtd) {
-		Enumeration en = dtd.externalElements();
-
-		while (en.hasMoreElements()) {
-			Object e = en.nextElement();
-			if (e instanceof EntityDecl) {
-				visitEntityDecl((EntityDecl) e);
-			}
-			else if (e instanceof ElementDecl) {
-				visitElementDecl((ElementDecl) e);
-			}
-			else if (e instanceof NotationDecl) {
-				visitNotationDecl((NotationDecl) e);
-			}
-		}
-	}
-
-	public void visitNotationDecl(NotationDecl notation) {
-	}
-
-	public void visitElementDecl(ElementDecl element) {
-	}
-
-	public void visitEntityDecl(EntityDecl entity) {
-		if (entity.isEntityReferenced()) {
-			visitParameterEntityReferenceDecl(entity);
-		}
-		else {
-			if (entity.isExternal()) {
-				visitExternalEntityDecl(entity);
-			}
-			else {
-				visitInternalEntityDecl(entity);
-			}
-		}
-	}
-
-	public void visitParameterEntityReferenceDecl(EntityDecl entity) {
-	}
-
-	public void visitExternalEntityDecl(EntityDecl entity) {
-	}
-
-	public void visitInternalEntityDecl(EntityDecl entity) {
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDScanner.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDScanner.java
deleted file mode 100644
index 257117d..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DTDScanner.java
+++ /dev/null
@@ -1,1137 +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.dtd.core.internal.saxparser;
-
-import java.util.Enumeration;
-import java.util.Vector;
-
-/**
- * Scanning / parsing the content string from the Decl statement
- * 
- * @version
- */
-public class DTDScanner {
-	// element content model strings
-	private static final char[] empty_string = {'E', 'M', 'P', 'T', 'Y'};
-	private static final char[] any_string = {'A', 'N', 'Y'};
-	private static final char[] pcdata_string = {'#', 'P', 'C', 'D', 'A', 'T', 'A'};
-
-	// attribute type and default type strings
-	private static final char[] cdata_string = {'C', 'D', 'A', 'T', 'A'};
-	private static final char[] id_string = {'I', 'D'};
-	private static final char[] ref_string = {'R', 'E', 'F'};
-	private static final char[] entit_string = {'E', 'N', 'T', 'I', 'T'};
-	private static final char[] ies_string = {'I', 'E', 'S'};
-	private static final char[] nmtoken_string = {'N', 'M', 'T', 'O', 'K', 'E', 'N'};
-	private static final char[] notation_string = {'N', 'O', 'T', 'A', 'T', 'I', 'O', 'N'};
-	private static final char[] required_string = {'#', 'R', 'E', 'Q', 'U', 'I', 'R', 'E', 'D'};
-	private static final char[] implied_string = {'#', 'I', 'M', 'P', 'L', 'I', 'E', 'D'};
-	private static final char[] fixed_string = {'#', 'F', 'I', 'X', 'E', 'D'};
-
-	private static final char[] system_string = {'S', 'Y', 'S', 'T', 'E', 'M'};
-	private static final char[] public_string = {'P', 'U', 'B', 'L', 'I', 'C'};
-	private static final char[] ndata_string = {'N', 'D', 'A', 'T', 'A'};
-
-	private int[] fOpStack = null;
-	private CMGroupNode[] fGrpStack = null;
-
-	private EntityPool entityPool;
-
-	/* Attribute Def scanner state */
-	static final int Att_Scanner_State_Name = 1, Att_Scanner_State_Type = 2, Att_Scanner_State_DefaultType = 3, Att_Scanner_State_DefaultValue = 4;
-
-	private StringParser contentString;
-	private String cData;
-	private int prevNodeOffset = 0;
-	private int nodeOffset = 1;
-	private String ownerDTD;
-
-	private String errorString;
-
-	public DTDScanner(String ownerDTD, String cm) {
-		// System.out.println("Cm: " + cm);
-		contentString = new StringParser(cm);
-		cData = cm;
-		this.ownerDTD = ownerDTD;
-	}
-
-	//
-	// [46] contentspec ::= 'EMPTY' | 'ANY' | Mixed | children
-	//
-	// Specific to VisualDTD : also allows %PEReference;
-	//
-	public CMNode scanContentModel() {
-		CMNode cmNode = null;
-		contentString.skipPastSpaces();
-		if (contentString.skippedString(empty_string)) {
-			cmNode = new CMBasicNode("EMPTY", CMNodeType.EMPTY);
-		}
-		else if (contentString.skippedString(any_string)) {
-			cmNode = new CMBasicNode("ANY", CMNodeType.ANY);
-		}
-		else if (contentString.lookingAtChar('%', true)) {
-			cmNode = new CMReferenceNode(contentString.getData(), CMNodeType.ENTITY_REFERENCE);
-		}
-		else if (!contentString.lookingAtChar('(', true)) {
-			// This means that the contentmodel string is bad...
-			// System.out.println("!!! exception - no (");
-			return cmNode;
-		}
-		else {
-			// System.out.println("Remaining String = " +
-			// contentString.getRemainingString());
-
-			contentString.skipPastSpaces();
-			boolean skippedPCDATA = contentString.skippedString(pcdata_string);
-			if (skippedPCDATA) {
-				cmNode = scanMixed();
-			}
-			else {
-				cmNode = scanChildren();
-			}
-
-		}
-		return cmNode;
-	}
-
-	//
-	// [51] Mixed ::= '(' S? '#PCDATA' (S? '|' S? Name)* S? ')*' | '(' S?
-	// '#PCDATA' S? ')'
-	//
-	// Called after scanning past '(' S? '#PCDATA'
-	//
-	private CMNode scanMixed() {
-		// System.out.println("ScanMixed...");
-		CMGroupNode cmNode = new CMGroupNode();
-		cmNode.setGroupKind(CMNodeType.GROUP_CHOICE);
-		cmNode.addChild(new CMBasicNode("#PCDATA", CMNodeType.PCDATA));
-
-		// int prevNodeIndex = -1;
-		boolean starRequired = false;
-
-
-		while (true) {
-			if (contentString.lookingAtSpace(true)) {
-				contentString.skipPastSpaces();
-			}
-			prevNodeOffset = contentString.getCurrentOffset();
-
-			if (!contentString.lookingAtChar('|', true)) {
-				if (!contentString.lookingAtChar(')', true)) {
-					break;
-				}
-				if (contentString.lookingAtChar('*', true)) {
-					cmNode.setOccurrence(CMNodeType.ZERO_OR_MORE);
-				}
-				else if (starRequired) {
-					// System.out.println(" * is required ... ");
-				}
-				break;
-			}
-
-			if (contentString.lookingAtSpace(true)) {
-				contentString.skipPastSpaces();
-			}
-
-			nodeOffset = contentString.getCurrentOffset();
-			if (nodeOffset != -1) {
-				// skip pass "|"
-				prevNodeOffset = nodeOffset;
-			}
-
-			starRequired = true;
-			contentString.skipPastNameAndPEReference(')');
-			nodeOffset = contentString.getCurrentOffset();
-
-			if (nodeOffset == -1)
-				break;
-
-			// add leave node
-			int len = nodeOffset - prevNodeOffset;
-			String refName = contentString.getString(prevNodeOffset, len);
-			prevNodeOffset = nodeOffset;
-			if (refName.startsWith("%"))
-				cmNode.addChild(new CMReferenceNode(refName, CMNodeType.ENTITY_REFERENCE));
-			else
-				cmNode.addChild(new CMReferenceNode(refName, CMNodeType.ELEMENT_REFERENCE));
-
-		} // end while
-
-
-		if (cmNode.getChildren().size() == 1) {
-			// simplify the contentModel if the CMGroupNode only has one child
-			// node.
-			return (CMBasicNode) cmNode.getChildren().elementAt(0);
-		}
-
-		return cmNode;
-	}
-
-	//
-	// [47] children ::= (choice | seq) ('?' | '*' | '+')?
-	// [49] choice ::= '(' S? cp ( S? '|' S? cp )* S? ')'
-	// [50] seq ::= '(' S? cp ( S? ',' S? cp )* S? ')'
-	// [48] cp ::= (Name | choice | seq) ('?' | '*' | '+')?
-	//
-	// Called after scanning past '('
-
-	private CMNode scanChildren() {
-
-		// System.out.println("scanChildren...");
-
-		if (contentString.lookingAtSpace(true)) {
-			contentString.skipPastSpaces();
-		}
-
-		prevNodeOffset = contentString.getCurrentOffset();
-		nodeOffset = contentString.getCurrentOffset();
-		int depth = 1;
-		initializeContentModelStack(depth);
-		int len;
-
-		String nodeName;
-		CMGroupNode cmNode = new CMGroupNode();
-		fGrpStack[depth] = cmNode;
-
-		while (true) {
-
-			// System.out.println(" Begin outter while loop ..." );
-			if (contentString.lookingAtChar('(', true)) {
-				if (contentString.lookingAtSpace(true)) {
-					// skip past any white spaces after the '('
-					contentString.skipPastSpaces();
-				}
-
-				depth++;
-				initializeContentModelStack(depth);
-				fGrpStack[depth] = new CMGroupNode();
-				fGrpStack[depth - 1].addChild(fGrpStack[depth]);
-				continue;
-			}
-
-			prevNodeOffset = contentString.getCurrentOffset();
-			contentString.skipPastNameAndPEReference(')');
-			nodeOffset = contentString.getCurrentOffset();
-
-			/*
-			 * System.out.println(" prevNodeOFfset " + prevNodeOffset);
-			 * System.out.println(" currentNodeOFfset " + nodeOffset);
-			 */
-
-			len = nodeOffset - prevNodeOffset;
-
-			if (nodeOffset == -1 || len < 1) {
-				break;
-			}
-
-			nodeName = contentString.getString(prevNodeOffset, len);
-
-			CMRepeatableNode rn;
-			if (nodeName.startsWith("%")) {
-				rn = new CMReferenceNode(nodeName, CMNodeType.ENTITY_REFERENCE);
-			}
-			else {
-				rn = new CMReferenceNode(nodeName, CMNodeType.ELEMENT_REFERENCE);
-			}
-
-			fGrpStack[depth].addChild(rn);
-
-			prevNodeOffset = nodeOffset;
-
-			if (contentString.lookingAtChar('?', true)) {
-				rn.setOccurrence(CMNodeType.OPTIONAL);
-			}
-			else if (contentString.lookingAtChar('*', true)) {
-				rn.setOccurrence(CMNodeType.ZERO_OR_MORE);
-			}
-			else if (contentString.lookingAtChar('+', true)) {
-				rn.setOccurrence(CMNodeType.ONE_OR_MORE);
-			}
-
-			if (contentString.lookingAtSpace(true)) {
-				contentString.skipPastSpaces();
-			}
-
-			prevNodeOffset = contentString.getCurrentOffset();
-
-			while (true) {
-				// System.out.println(" Begin inner while loop ... depth " +
-				// depth );
-				if (fOpStack[depth] != CMNodeType.GROUP_SEQUENCE && contentString.lookingAtChar('|', true)) {
-					fOpStack[depth] = CMNodeType.GROUP_CHOICE;
-					fGrpStack[depth].setGroupKind(CMNodeType.GROUP_CHOICE);
-					if (contentString.lookingAtSpace(true))
-						contentString.skipPastSpaces();
-					break;
-				}
-				else if (fOpStack[depth] != CMNodeType.GROUP_CHOICE && contentString.lookingAtChar(',', true)) {
-					fOpStack[depth] = CMNodeType.GROUP_SEQUENCE;
-					fGrpStack[depth].setGroupKind(CMNodeType.GROUP_SEQUENCE);
-					if (contentString.lookingAtSpace(true))
-						contentString.skipPastSpaces();
-					break;
-				}
-				else {
-					if (contentString.lookingAtSpace(true)) {
-						contentString.skipPastSpaces();
-					}
-					if (!contentString.lookingAtChar(')', true)) {
-						// System.out.println(" error ) not found");
-					}
-					// end of the curent group node
-					if (contentString.lookingAtChar('?', true)) {
-						fGrpStack[depth].setOccurrence(CMNodeType.OPTIONAL);
-					}
-					else if (contentString.lookingAtChar('*', true)) {
-						fGrpStack[depth].setOccurrence(CMNodeType.ZERO_OR_MORE);
-					}
-					else if (contentString.lookingAtChar('+', true)) {
-						fGrpStack[depth].setOccurrence(CMNodeType.ONE_OR_MORE);
-					}
-					depth--;
-					if (depth == 0) {
-						break;
-					}
-					if (contentString.lookingAtSpace(true))
-						contentString.skipPastSpaces();
-
-					// System.out.println(" End end inner while loop ... depth
-					// " + depth );
-
-				}
-			} // inner while
-
-			if (depth == 0) {
-				break;
-			}
-		} // outer while
-
-		if (cmNode.getChildren().size() == 1) {
-			// simplify the contentModel if the CMGroupNode only has one child
-			// node and that node is an element ref.
-			CMRepeatableNode rn = (CMRepeatableNode) cmNode.getChildren().elementAt(0);
-			if (rn instanceof CMReferenceNode) {
-				CMReferenceNode ref = (CMReferenceNode) rn;
-				if (ref.getType() == CMNodeType.ELEMENT_REFERENCE) {
-					if (ref.getOccurrence() == CMNodeType.ONE) {
-						ref.setOccurrence(cmNode.getOccurrence());
-						return ref;
-					}
-					else if (cmNode.getOccurrence() == CMNodeType.ONE) {
-						return ref;
-					}
-				} // end of if ()
-			}
-		}
-
-		return cmNode;
-	}
-
-	//
-	// [52] AttlistDecl ::= '<!ATTLIST' S Name AttDef* S? '>'
-	// [53] AttDef ::= S Name S AttType S DefaultDecl
-	// [60] DefaultDecl ::= '#REQUIRED' | '#IMPLIED' | (('#FIXED' S)?
-	// AttValue)
-	//
-
-	public Vector scanAttlistDecl(EntityPool entityPool) {
-		Vector attList = new Vector();
-		this.entityPool = entityPool;
-
-		int scannerState = Att_Scanner_State_Name;
-		;
-		AttNode attNode;
-
-		while (true) {
-			attNode = new AttNode();
-
-			// System.out.println(" scanner state: " + scannerState);
-
-			// scanning att name
-			if (scannerState == Att_Scanner_State_Name) {
-				// System.out.println("scan att Name...");
-				scannerState = checkForAttributeWithPEReference(attNode, scannerState);
-				if (scannerState == -1) {
-					return attList;
-				}
-			}
-
-			// scanning att type
-			if (scannerState == Att_Scanner_State_Type) {
-				// System.out.println("scan att type...");
-
-				if (contentString.skippedString(cdata_string)) {
-					attNode.type = new String(cdata_string);
-					scannerState = Att_Scanner_State_DefaultType;
-				}
-				else if (contentString.skippedString(id_string)) {
-					if (!contentString.skippedString(ref_string)) {
-						attNode.type = new String(id_string);
-					}
-					else if (!contentString.lookingAtChar('S', true)) {
-						attNode.type = "IDREF";
-					}
-					else {
-						attNode.type = "IDREFS";
-					}
-					scannerState = Att_Scanner_State_DefaultType;
-				}
-				else if (contentString.skippedString(entit_string)) {
-					if (contentString.lookingAtChar('Y', true)) {
-						attNode.type = "ENTITY";
-					}
-					else if (contentString.skippedString(ies_string)) {
-						attNode.type = "ENTITIES";
-					}
-					scannerState = Att_Scanner_State_DefaultType;
-				}
-				else if (contentString.skippedString(nmtoken_string)) {
-					if (contentString.lookingAtChar('S', true)) {
-						attNode.type = "NMTOKENS";
-					}
-					else {
-						attNode.type = "NMTOKEN";
-					}
-					scannerState = Att_Scanner_State_DefaultType;
-				}
-				else if (contentString.skippedString(notation_string)) {
-					if (contentString.lookingAtSpace(true)) {
-						contentString.skipPastSpaces();
-					}
-					if (!contentString.lookingAtChar('(', true)) {
-						System.out.println(" missing ( in notation ");
-					}
-					attNode.type = "NOTATION";
-					attNode.enumList = scanEnumeration(contentString, true);
-					scannerState = Att_Scanner_State_DefaultType;
-				}
-				else if (contentString.lookingAtChar('(', true)) {
-					attNode.type = "ENUMERATION";
-					attNode.enumList = scanEnumeration(contentString, false);
-					scannerState = Att_Scanner_State_DefaultType;
-				}
-				else {
-					scannerState = checkForAttributeWithPEReference(attNode, scannerState);
-					if (scannerState == Att_Scanner_State_Type) {
-						setErrorString("Failed to find type for attribute '" + attNode.name + "'.  Please refer to the original DTD file.");
-						// we failed to find a type for this attribute
-						return attList;
-					}
-				}
-			}
-
-			if (scannerState == Att_Scanner_State_DefaultType) {
-				contentString.skipPastSpaces();
-				// System.out.println("scan default type...");
-				if (contentString.skippedString(required_string)) {
-					attNode.defaultType = new String(required_string);
-				}
-				else if (contentString.skippedString(implied_string)) {
-					attNode.defaultType = new String(implied_string);
-				}
-				else {
-					if (contentString.skippedString(fixed_string)) {
-						contentString.skipPastSpaces();
-						attNode.defaultType = new String(fixed_string);
-					}
-					else
-						// "default"
-						attNode.defaultType = "NOFIXED";
-
-					if (contentString.lookingAtSpace(true))
-						contentString.skipPastSpaces();
-					attNode.defaultValue = scanDefaultAttValue(contentString);
-				}
-				scannerState = Att_Scanner_State_Name; // next
-			}
-
-
-			attList.addElement(attNode);
-			if (contentString.lookingAtSpace(true))
-				contentString.skipPastSpaces();
-			nodeOffset = contentString.getCurrentOffset();
-
-			if (nodeOffset >= cData.length())
-				return attList;
-
-			prevNodeOffset = contentString.getCurrentOffset();
-
-		}// end while loop
-	}
-
-	//
-	// content model stack
-	//
-	private void initializeContentModelStack(int depth) {
-		if (fOpStack == null) {
-			fOpStack = new int[8];
-			fGrpStack = new CMGroupNode[8];
-		}
-		else if (depth == fOpStack.length) {
-			int[] newStack = new int[depth * 2];
-			System.arraycopy(fOpStack, 0, newStack, 0, depth);
-			fOpStack = newStack;
-
-			CMGroupNode[] newGrpStack = new CMGroupNode[depth * 2];
-			System.arraycopy(fGrpStack, 0, newGrpStack, 0, depth);
-			fGrpStack = newGrpStack;
-		}
-		fOpStack[depth] = -1;
-		fGrpStack[depth] = null;
-	}
-
-	//
-	private int checkForAttributeWithPEReference(AttNode attNode, int scannerState) {
-		int state = -1;
-		int len;
-		String rawText;
-		EntityDecl pEntity;
-
-		// System.out.println(" checkforATTPERReference- start scannerState: "
-		// + scannerState);
-		if (scannerState == Att_Scanner_State_Name) {
-			contentString.skipPastNameAndPEReference(' ');
-			nodeOffset = contentString.getCurrentOffset();
-			len = nodeOffset - prevNodeOffset;
-
-			rawText = contentString.getString(prevNodeOffset, len);
-			attNode.name = rawText;
-
-			// System.out.println("State_name : " + rawText);
-
-			if (rawText.startsWith("%") && rawText.endsWith(";")) {
-				String pe = rawText.substring(1, rawText.length() - 1);
-
-				pEntity = entityPool.referPara(pe);
-				if (pEntity != null) {
-					// System.out.println(" name :" + rawText +" expandTo:" +
-					// pEntity.expandedValue);
-					state = whatIsTheNextAttributeScanningState(pEntity.expandedValue, scannerState);
-					// System.out.println("checkForAttrwithPER - nextstate: "
-					// + state);
-				}
-				else
-					state = Att_Scanner_State_Type;
-			}
-			else
-				state = Att_Scanner_State_Type;
-
-		}
-		else if (scannerState == Att_Scanner_State_Type) {
-			if (contentString.lookingAtChar('%', true)) {
-				rawText = getPEName();
-				attNode.type = "%" + rawText;
-				String peName = rawText.substring(0, rawText.length() - 1);
-				// System.out.println("State_type : pe- " + peName);
-				pEntity = entityPool.referPara(peName);
-				if (pEntity != null) {
-					state = whatIsTheNextAttributeScanningState(pEntity.expandedValue, scannerState);
-				}
-				else
-					state = Att_Scanner_State_DefaultType;
-			}
-			else
-				state = Att_Scanner_State_Type;
-		}
-		else if (scannerState == Att_Scanner_State_DefaultType) {
-			if (contentString.lookingAtChar('%', true)) {
-				rawText = getPEName();
-				attNode.defaultType = rawText;
-				// System.out.println("State_defaultType : " + rawText);
-				pEntity = entityPool.referPara(rawText.substring(1, rawText.length() - 1));
-				if (pEntity != null) {
-					state = whatIsTheNextAttributeScanningState(pEntity.expandedValue, scannerState);
-				}
-				else
-					state = Att_Scanner_State_DefaultValue;
-			}
-			else
-				state = Att_Scanner_State_DefaultType;
-		}
-		else if (scannerState == Att_Scanner_State_DefaultValue) {
-			if (contentString.lookingAtChar('%', true)) {
-				rawText = getPEName();
-				attNode.defaultValue = rawText;
-				// System.out.println("State_defaultValue : " + rawText);
-
-				pEntity = entityPool.referPara(rawText.substring(1, rawText.length() - 1));
-				if (pEntity != null) {
-					state = whatIsTheNextAttributeScanningState(pEntity.expandedValue, scannerState);
-				}
-				else
-					state = Att_Scanner_State_DefaultValue;
-			}
-			else
-				state = Att_Scanner_State_DefaultValue;
-		}
-
-		if (contentString.lookingAtSpace(true))
-			contentString.skipPastSpaces();
-		prevNodeOffset = contentString.getCurrentOffset();
-		return state;
-	}
-
-	private String getPEName() {
-		prevNodeOffset = contentString.getCurrentOffset();
-		contentString.skipToChar(';', true);
-		nodeOffset = contentString.getCurrentOffset();
-		int len = nodeOffset - prevNodeOffset;
-		return contentString.getString(prevNodeOffset, len);
-	}
-
-	private int whatIsTheNextAttributeScanningState(String attrContentString, int currentState) {
-		StringParser sp = new StringParser(attrContentString.trim());
-
-
-		int nextState = currentState;
-		int nOffset = 0;
-
-		/*
-		 * System.out.println("WhatistheNext AttContentStringt : " +
-		 * attrContentString); System.out.println("WhatistheNext
-		 * AttContentStringL : " + attrContentString.length());
-		 * System.out.println("WhatistheNext currentstate : " + currentState);
-		 */
-
-		while (true) {
-			// System.out.println("WhatistheNext inside whil nextstate : " +
-			// nextState);
-			if (nextState == Att_Scanner_State_Name) { // the current
-														// scanning state is
-														// Attr Name, is the
-														// next part Attr Type
-														// ?
-				if (isAttrName(sp)) {
-					nextState = Att_Scanner_State_Type;
-				}
-			}
-			else if (nextState == Att_Scanner_State_Type) { // the current
-															// scanning state
-															// is Attr Type,
-															// is the next
-															// part Default
-															// Attr Type ?
-
-				if (isAttrType(sp)) {
-					nextState = Att_Scanner_State_DefaultType;
-				}
-				else
-					System.out.println("WhatistheNext Attr Part - is not an Attr Type");
-
-			}
-
-			if (nextState == Att_Scanner_State_DefaultType) {
-
-				int dType = isAttrDefaultType(sp);
-				// System.out.println("WhatistheNext inside dType : " +
-				// dType);
-				if (dType == 1) // #REQUIRED or #IMPLIED
-				{
-					nextState = Att_Scanner_State_Name;
-				}
-				else {
-					if (dType == 2) // #FIXED
-					{
-						// need to look at this again
-						nextState = Att_Scanner_State_DefaultType;
-					}
-
-					if (scanDefaultAttValue(sp) != null) {
-						nextState = Att_Scanner_State_Name;
-
-					}
-				}
-			}
-
-			sp.skipPastSpaces();
-
-			if (nOffset == sp.getCurrentOffset())
-				break;
-
-			nOffset = sp.getCurrentOffset();
-
-			if (nOffset >= attrContentString.length() || nOffset == -1)
-				break;
-
-		} // end while
-
-		return nextState;
-	}
-
-
-	private boolean isAttrName(StringParser sp) {
-		// System.out.println("isAttrName - sp:" + sp.fData);
-		// System.out.println("isAttrName - currentOffset:" +
-		// sp.getCurrentOffset());
-		boolean isAttrName = false;
-		int prev = sp.getCurrentOffset();
-		sp.skipPastName(' ');
-		if ((sp.getCurrentOffset() - prev) > 0)
-			isAttrName = true;
-		return isAttrName;
-
-	}
-
-	private boolean isAttrType(StringParser sp) {
-		// System.out.println("isAttrType - sp:" + sp.fData);
-		// System.out.println("isAttrType - currentOffset:" +
-		// sp.getCurrentOffset());
-		boolean isAttrType = false;
-		if (sp.skippedString(cdata_string)) {
-			isAttrType = true;
-		}
-		else if (sp.skippedString(id_string)) {
-			if (!sp.skippedString(ref_string)) {
-				isAttrType = true; // ID
-			}
-			else if (!sp.lookingAtChar('S', true)) {
-				isAttrType = true; // IDREFS
-			}
-			else {
-				isAttrType = true; // IDREF
-			}
-		}
-		else if (sp.skippedString(entit_string)) {
-			if (sp.lookingAtChar('Y', true)) {
-				isAttrType = true; // ENTITY
-			}
-			else if (sp.skippedString(ies_string)) {
-				isAttrType = true; // ENTITITES
-			}
-		}
-		else if (sp.skippedString(nmtoken_string)) {
-			if (sp.lookingAtChar('S', true)) {
-				isAttrType = true; // NMTOKENS
-			}
-			else {
-				isAttrType = true; // NMTOKEN
-			}
-		}
-		else if (sp.skippedString(notation_string)) {
-			if (!sp.lookingAtChar('(', true)) {
-				// System.out.println(" missing ( in notation ");
-			}
-			Vector enumList = scanEnumeration(sp, true);
-			if (enumList == null || enumList.size() == 0)
-				isAttrType = false;
-			else
-				isAttrType = true;
-		}
-		else if (sp.lookingAtChar('(', true)) {
-			// "ENUMERATION";
-			Vector enumList = scanEnumeration(sp, false);
-			if (enumList == null || enumList.size() == 0)
-				isAttrType = false;
-			else
-				isAttrType = true;
-		}
-
-		return isAttrType;
-
-	}
-
-	/*
-	 * return 0 - not default type 1 - #REQUIRED or #IMPLIED 2 - #FIXED
-	 */
-
-	private int isAttrDefaultType(StringParser sp) {
-		// System.out.println("isAttrDefaultType - sp:" + sp.fData);
-		int result = 0;
-		if (sp.skippedString(required_string)) {
-			result = 1;
-		}
-		else if (sp.skippedString(implied_string)) {
-			result = 1;
-		}
-		else if (sp.skippedString(fixed_string)) {
-			result = 2;
-		}
-		return result;
-	}
-
-	//
-	// [58] NotationType ::= 'NOTATION' S '(' S? Name (S? '|' S? Name)* S? ')'
-	// [59] Enumeration ::= '(' S? Nmtoken (S? '|' S? Nmtoken)* S? ')'
-	//
-	// Called after scanning '('
-	//
-	private Vector scanEnumeration(StringParser sp, boolean isNotationType) {
-		// System.out.println(" scanEnum ...");
-		Vector enumList = null;
-		int len;
-
-		if (sp.lookingAtSpace(true))
-			sp.skipPastSpaces();
-
-		int prevNodeOffset = sp.getCurrentOffset();
-		int nodeOffset;
-
-		String nodeName;
-
-		while (true) {
-
-			if (isNotationType)
-				sp.skipPastNameAndPEReference(')');
-			else
-				sp.skipPastNmtokenAndPEReference(')');
-
-			nodeOffset = sp.getCurrentOffset();
-
-			if (nodeOffset == -1) {
-				return enumList;
-			}
-
-			len = nodeOffset - prevNodeOffset;
-			nodeName = sp.getString(prevNodeOffset, len);
-
-			if (enumList == null)
-				enumList = new Vector();
-
-			enumList.addElement(nodeName);
-
-			if (sp.lookingAtSpace(true))
-				sp.skipPastSpaces();
-
-			if (!sp.lookingAtChar('|', true)) {
-				if (!sp.lookingAtChar(')', true)) {
-					System.out.println("scanning enum values - error missing ')'");
-					break;
-				}
-				break;
-			}
-
-			if (sp.lookingAtSpace(true))
-				sp.skipPastSpaces();
-
-			prevNodeOffset = sp.getCurrentOffset();
-		}
-		return enumList;
-	}
-
-	//
-	// [10] AttValue ::= '"' ([^<&"] | Reference)* '"'
-	// | "'" ([^<&'] | Reference)* "'"
-	//
-	/**
-	 * Scan the default value in an attribute declaration
-	 * 
-	 * @param elementType
-	 *            handle to the element that owns the attribute
-	 * @param attrName
-	 *            handle in the string pool for the attribute name
-	 * @return handle in the string pool for the default attribute value
-	 * @exception java.lang.Exception
-	 */
-	public String scanDefaultAttValue(StringParser sp) {
-		String value = null;
-		// System.out.println("scan default ATT Value... sp:" + sp.fData);
-
-		sp.skipPastSpaces();
-
-		boolean single;
-		if (!(single = sp.lookingAtChar('\'', true)) && !sp.lookingAtChar('\"', true)) {
-			return value;
-		}
-
-		char qchar = single ? '\'' : '\"';
-		int sOffset = sp.getCurrentOffset();
-		sp.skipToChar(qchar, true);
-		int len = sp.getCurrentOffset() - sOffset - 1;
-		if (len == 0)
-			value = "";
-		else
-			value = sp.getString(sOffset, len);
-
-		return value;
-	}
-
-	void printAttList(Vector attrs) {
-		Enumeration en = attrs.elements();
-		while (en.hasMoreElements()) {
-			AttNode an = (AttNode) en.nextElement();
-			// System.out.println("attNode: " + an);
-		}
-
-	}
-
-	//
-	// [70] EntityDecl ::= GEDecl | PEDecl
-	// [71] GEDecl ::= '<!ENTITY' S Name S EntityDef S? '>'
-	// [72] PEDecl ::= '<!ENTITY' S '%' S Name S PEDef S? '>'
-	// [73] EntityDef ::= EntityValue | (ExternalID NDataDecl?)
-	// [74] PEDef ::= EntityValue | ExternalID
-	// [75] ExternalID ::= 'SYSTEM' S SystemLiteral
-	// | 'PUBLIC' S PubidLiteral S SystemLiteral
-	// [76] NDataDecl ::= S 'NDATA' S Name
-	// [9] EntityValue ::= '"' ([^%&"] | PEReference | Reference)* '"'
-	// | "'" ([^%&'] | PEReference | Reference)* "'"
-	//
-	// Called after scanning 'ENTITY'
-	//
-	public EntityDecl scanEntityDecl() {
-		prevNodeOffset = 1;
-		nodeOffset = 1;
-		int len;
-		boolean isPEDecl = false;
-		EntityDecl entityDecl = null;
-
-		String name = null;
-		String ndata = null;
-
-		if (contentString.lookingAtSpace(true)) {
-			contentString.skipPastSpaces();
-			if (!contentString.lookingAtChar('%', true)) {
-				isPEDecl = false; // <!ENTITY x "x">
-			}
-			else if (contentString.lookingAtSpace(true)) {
-				isPEDecl = true; // <!ENTITY % x "x">
-			}
-			prevNodeOffset = contentString.getCurrentOffset();
-			contentString.skipPastName(' ');
-			nodeOffset = contentString.getCurrentOffset();
-			len = nodeOffset - prevNodeOffset;
-			if (len > 0) {
-				name = contentString.getString(prevNodeOffset, len);
-				prevNodeOffset = nodeOffset;
-			}
-		}
-
-		if (name == null)
-			return null;
-
-		contentString.skipPastSpaces();
-		prevNodeOffset = contentString.getCurrentOffset();
-
-		boolean single;
-		if ((single = contentString.lookingAtChar('\'', true)) || contentString.lookingAtChar('\"', true)) {
-			String value = scanEntityValue(single);
-			entityDecl = new EntityDecl(name, ownerDTD, value, isPEDecl);
-		}
-		else {
-			// external entity
-			ExternalID xID = scanExternalID();
-			if (xID != null) {
-				if (!isPEDecl) // general entity
-				{
-					boolean unparsed = false;
-					contentString.skipPastSpaces();
-					unparsed = contentString.skippedString(ndata_string);
-					if (unparsed) {
-						contentString.skipPastSpaces();
-						prevNodeOffset = contentString.getCurrentOffset();
-						contentString.skipPastName(' ');
-						nodeOffset = contentString.getCurrentOffset();
-						len = nodeOffset - prevNodeOffset;
-						ndata = contentString.getString(prevNodeOffset, len);
-					}
-				}
-				entityDecl = new EntityDecl(name, ownerDTD, xID, isPEDecl, ndata);
-			}
-		}
-		return entityDecl;
-	}
-
-
-	//
-	// [82] NotationDecl ::= '<!NOTATION' S Name S (ExternalID | PublicID) S?
-	// '>'
-	// [75] ExternalID ::= 'SYSTEM' S SystemLiteral
-	// | 'PUBLIC' S PubidLiteral S SystemLiteral
-	// [83] PublicID ::= 'PUBLIC' S PubidLiteral
-	//
-	// Called after scanning 'NOTATION'
-	//
-	public NotationDecl scanNotationDecl() {
-		prevNodeOffset = 1;
-		nodeOffset = 1;
-		int len;
-		boolean isPEDecl = false;
-		NotationDecl notationDecl = null;
-
-		String name = null;
-
-		if (contentString.lookingAtSpace(true)) {
-			contentString.skipPastSpaces();
-			prevNodeOffset = contentString.getCurrentOffset();
-			contentString.skipPastName(' ');
-			nodeOffset = contentString.getCurrentOffset();
-			len = nodeOffset - prevNodeOffset;
-			if (len > 0) {
-				name = contentString.getString(prevNodeOffset, len);
-				prevNodeOffset = nodeOffset;
-			}
-		}
-
-		if (name == null)
-			return null;
-
-		contentString.skipPastSpaces();
-		prevNodeOffset = contentString.getCurrentOffset();
-
-		notationDecl = new NotationDecl(name, ownerDTD);
-
-		ExternalID xID = scanExternalID();
-		if (xID != null) {
-			if (xID.getSystemLiteral() != null) {
-				notationDecl.setSystemId(xID.getSystemLiteral());
-			}
-			if (xID.getPubIdLiteral() != null) {
-				notationDecl.setPublicId(xID.getPubIdLiteral());
-			}
-		}
-
-		return notationDecl;
-	}
-
-
-	private String scanEntityValue(boolean single) {
-		char qchar = single ? '\'' : '\"';
-		prevNodeOffset = contentString.getCurrentOffset();
-		contentString.skipToChar(qchar, false);
-		int len = contentString.getCurrentOffset() - prevNodeOffset;
-		String value = contentString.getString(prevNodeOffset, len);
-		return value;
-	}
-
-	//
-	// [75] ExternalID ::= 'SYSTEM' S SystemLiteral
-	// | 'PUBLIC' S PubidLiteral S SystemLiteral
-	private ExternalID scanExternalID() {
-		ExternalID xID = null;
-		char qchar = '\"';
-		if (contentString.skippedString(system_string)) {
-			if (!contentString.lookingAtSpace(true)) {
-				return null;
-			}
-			contentString.skipPastSpaces();
-
-			if (contentString.lookingAtChar('\'', true))
-				qchar = '\'';
-			else if (contentString.lookingAtChar('\"', true))
-				qchar = '\"';
-
-			prevNodeOffset = contentString.getCurrentOffset();
-			contentString.skipToChar(qchar, true);
-			int len = contentString.getCurrentOffset() - prevNodeOffset - 1;
-			String systemId = contentString.getString(prevNodeOffset, len);
-			// System.out.println("systemid..." + systemId);
-			xID = new ExternalID(systemId);
-		}
-		else if (contentString.skippedString(public_string)) {
-			if (!contentString.lookingAtSpace(true)) {
-				return null;
-			}
-
-			contentString.skipPastSpaces();
-			if (contentString.lookingAtChar('\'', true))
-				qchar = '\'';
-			else if (contentString.lookingAtChar('\"', true))
-				qchar = '\"';
-
-			// publicLiteral
-			prevNodeOffset = contentString.getCurrentOffset();
-			contentString.skipToChar(qchar, true);
-			int len = contentString.getCurrentOffset() - prevNodeOffset - 1;
-			String publicId = contentString.getString(prevNodeOffset, len);
-
-			// systemLiteral
-			contentString.skipPastSpaces();
-			if (contentString.lookingAtChar('\'', true))
-				qchar = '\'';
-			else if (contentString.lookingAtChar('\"', true))
-				qchar = '\"';
-			prevNodeOffset = contentString.getCurrentOffset();
-			contentString.skipToChar(qchar, true);
-			len = contentString.getCurrentOffset() - prevNodeOffset - 1;
-
-			if (len > 0) {
-				String systemId = contentString.getString(prevNodeOffset, len);
-				xID = new ExternalID(publicId, systemId);
-			}
-			else {
-				xID = new ExternalID(publicId, null);
-			}
-		}
-		return xID;
-	}
-
-	//
-	// [83] PublicID ::= 'PUBLIC' S PubidLiteral
-	//
-
-	// dmw 11/15 private method never read locally
-	// TODO: change to private if used, otherwise should be removed
-	String scanPublicID() {
-		String pID = null;
-		if (contentString.skippedString(public_string)) {
-			if (!contentString.lookingAtSpace(true)) {
-				return pID;
-			}
-			contentString.skipPastSpaces();
-			prevNodeOffset = contentString.getCurrentOffset();
-
-			contentString.skipToChar(' ', true);
-			int len = contentString.getCurrentOffset() - prevNodeOffset;
-			pID = contentString.getString(prevNodeOffset, len);
-		}
-
-		return pID;
-	}
-
-	//
-	// Main
-	//
-
-	/** Main program entry point. */
-	public static void main(String argv[]) {
-
-		// is there anything to do?
-		if (argv.length == 0) {
-			System.exit(1);
-		}
-
-		// DTDScanner sc = new DTDScanner(argv[0]);
-		DTDScanner sc = new DTDScanner("hello.dtd", " gif SYSTEM \"GIF File\" ");
-
-		NotationDecl n = sc.scanNotationDecl();
-		System.out.println("Noation Name: " + n.getNodeName());
-		System.out.println("SystemId: " + n.getSystemId());
-
-
-		// Attributes
-		// Vector lists = sc.scanAttlistDecl();
-		// sc.printAttList(lists);
-
-		// System.out.println("CM: " + sc.scanContentModel());
-
-	} // main(String[])
-
-	/**
-	 * Gets the errorString
-	 * 
-	 * @return Returns a String
-	 */
-	public String getErrorString() {
-		return errorString;
-	}
-
-	/**
-	 * Sets the errorString
-	 * 
-	 * @param errorString
-	 *            The errorString to set
-	 */
-	public void setErrorString(String errorString) {
-		this.errorString = errorString;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DeclNode.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DeclNode.java
deleted file mode 100644
index d71c49d..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/DeclNode.java
+++ /dev/null
@@ -1,103 +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.dtd.core.internal.saxparser;
-
-public class DeclNode {
-	static public final int INVALID = -1;
-	static public final int ELEMENT = 1;
-	static public final int ATTLIST = 2;
-	static public final int ENTITY = 3;
-	static public final int INTERNAL_ENTITY = 4;
-	static public final int EXTERNAL_ENTITY = 5;
-	static public final int INTERNAL_GENERAL_ENTITY = 6;
-	static public final int INTERNAL_PARAMETER_ENTITY = 7;
-	static public final int EXTERNAL_GENERAL_ENTITY = 8;
-	static public final int EXTERNAL_PARAMETER_ENTITY = 9;
-	static public final int PARAMETER_ENTITY_REFERENCE = 10;
-	static public final int NOTATION = 11;
-	static public final int COMMENT = 12;
-
-	static public final int START_DTD = 21;
-	static public final int END_DTD = 22;
-	static public final int START_ENTITY_DTD = 23;
-	static public final int END_ENTITY_DTD = 24;
-	static public final int ERROR = 25;
-
-	public int type = INVALID;
-	private String declName = null;
-	private String contentString = null;
-	private String errorMessage = null;
-	private String comment = null;
-
-	//
-	// Constants
-	//
-
-	/** Default constructor. */
-	public DeclNode(int type) {
-		this(null, type, null);
-	}
-
-	public DeclNode(String name, int type, String contentString) {
-		this.declName = name;
-		this.type = type;
-		this.contentString = contentString;
-	}
-
-	public String getDeclName() {
-		return declName;
-	}
-
-	public void setDeclName(String name) {
-		declName = name;
-	}
-
-	public int getType() {
-		return type;
-	}
-
-	public void setType(int type) {
-		this.type = type;
-	}
-
-	public String getErrorMessage() {
-		return errorMessage;
-	}
-
-	public void setErrorMessage(String message) {
-		errorMessage = message;
-	}
-
-	public String getContentString() {
-		return contentString;
-	}
-
-	public void setContentString(String content) {
-		this.contentString = content;
-	}
-
-	public String getComment() {
-		return comment;
-	}
-
-	public void setComment(String comment) {
-		this.comment = comment;
-	}
-
-	public String toString()
-
-	{
-		return "Node Name: " + declName + " Type: " + type + " ContentString: " + contentString;
-	}
-
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ElementDecl.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ElementDecl.java
deleted file mode 100644
index 3e87167..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ElementDecl.java
+++ /dev/null
@@ -1,33 +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.dtd.core.internal.saxparser;
-
-public class ElementDecl extends BaseNode {
-	CMNode contentModelNode = null;
-
-	public ElementDecl(String name, String ownerDTD) {
-		this(name, ownerDTD, null, null);
-	}
-
-	public ElementDecl(String name, String ownerDTD, String comment, ErrorMessage errorMessage) {
-		super(name, ownerDTD, comment, errorMessage);
-	}
-
-	public CMNode getContentModelNode() {
-		return contentModelNode;
-	}
-
-	public void setContentModelNode(CMNode cmnode) {
-		contentModelNode = cmnode;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/EntityDecl.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/EntityDecl.java
deleted file mode 100644
index 673c99f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/EntityDecl.java
+++ /dev/null
@@ -1,242 +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.dtd.core.internal.saxparser;
-
-public class EntityDecl extends BaseNode {
-	boolean isParameter = false;
-	String expandedValue = null; // Always <var>null</var> for external
-									// Entities
-	String value = null; // Always <var>null</var> for external Entities
-	ExternalID externalID = null; // Always <var>null</var> for internal
-									// Entities
-	String ndata = null; // Always <var>null</var> for internal Entities
-
-	boolean parsed = false;
-	DTDParser dtd = null; // Always null, except when it has been parsed.
-
-	boolean entityReferenced = false;
-
-	/**
-	 * Constructor for internal Entities.
-	 * 
-	 * @param name
-	 *            Name of this Entity.
-	 * @param value
-	 *            The XML-encoded value that was directly assigned to the
-	 *            Entity.
-	 * @param isParameter
-	 *            =true if a parameter Entity; otherwise =false.
-	 */
-	public EntityDecl(String name, String ownerDTD, String value, boolean isParameter) {
-		super(name, ownerDTD, null, null);
-		this.value = value;
-		this.isParameter = isParameter;
-	}
-
-	/**
-	 * Constructor for external Entities.
-	 * 
-	 * @param name
-	 *            Name of the Entity.
-	 * @param externalID
-	 *            The reference(s) to the external entity to retrieve.
-	 * @param isParameter
-	 *            =true if a parameter Entity; otherwise =false.
-	 * @param ndata
-	 *            The notation associated with the binary Entity, or <var>null</var>
-	 *            if the Entity is a text Entity.
-	 * @see sax.ExternalID
-	 */
-	public EntityDecl(String name, String ownerDTD, ExternalID externalID, boolean isParameter, String ndata) {
-		super(name, ownerDTD, null, null);
-		this.externalID = externalID;
-		this.isParameter = isParameter;
-		this.ndata = ndata;
-	}
-
-	/**
-	 * Returns whether this Entity is a parameter Entity.
-	 * 
-	 * @return =true if an internal parameter Entity; otherwise =false.
-	 */
-	public boolean isParameter() {
-		return this.isParameter;
-	}
-
-	/**
-	 * Returns the value of this Entity.
-	 * 
-	 * @return The XML-encoded value that was directly assigned to the
-	 *         internal Entity; otherwise, <var>null</var>.
-	 */
-	public String getValue() {
-		return this.value;
-	}
-
-	public boolean isEntityReferenced() {
-		return entityReferenced;
-	}
-
-	public void setEntityReferenced(boolean reference) {
-		entityReferenced = reference;
-	}
-
-
-	/**
-	 * Returns the system identifier of the Notation. A system identifier is a
-	 * URI, which may be used to retrieve an external entity's content.
-	 * <p>
-	 * This method is defined by DOM.
-	 * 
-	 * @return The system identifier, or <var>null</var> if the identifier is
-	 *         not defined.
-	 * @see org.eclipcse.wst.dtd.parser.ExternalID#getSystemLiteral
-	 */
-	public String getSystemId() {
-		if (externalID == null)
-			return null;
-		else
-			return this.externalID.getSystemLiteral();
-	}
-
-	/**
-	 * Sets the system identifier of the Notation. A system identifier is a
-	 * URI, which may be used to retrieve an external entity's content.
-	 * <p>
-	 * This method is defined by DOM.
-	 * 
-	 * @param systemIdentifier
-	 *            The system identifier.
-	 * @see org.eclipcse.wst.dtd.parser.ExternalID
-	 */
-	public void setSystemId(String systemIdentifier) {
-		// System.out.println("setSYstemId - externalId: " + externalID);
-		this.externalID = new ExternalID(this.externalID.getPubIdLiteral(), systemIdentifier);
-	}
-
-	/**
-	 * Returns the public identifier of the Notation. This value is only valid
-	 * if the identifier is defined as <var>public</var> (as opposed to
-	 * <var>system</var>). Public identifiers may be used to try to generate
-	 * an alternative URI in order to retrieve the an external entities
-	 * content. If retrieval fails using the public identifier, an attempt
-	 * must be made to retrieve content using the system identifier.
-	 * <p>
-	 * This method is defined by DOM.
-	 * 
-	 * @return The public identifier, or <var>null</var> if the identifier is
-	 *         not defined.
-	 * @see org.eclipcse.wst.dtd.parser.ExternalID
-	 */
-	public String getPublicId() {
-		if (externalID == null)
-			return null;
-		else
-			return this.externalID.getPubIdLiteral();
-	}
-
-	/**
-	 * Sets the public identifier of the Notation. This value is only valid if
-	 * the identifier is defined as <var>public</var> (as opposed to
-	 * <var>system</var>). Public identifiers may be used to try to generate
-	 * an alternative URI in order to retrieve the an external entities
-	 * content. If retrieval fails using the public identifier, an attempt
-	 * must be made to retrieve content using the system identifier.
-	 * <p>
-	 * This method is defined by DOM.
-	 * 
-	 * @param publicIdentifier
-	 *            The public identifier.
-	 * @see #getPublicId
-	 * @see org.eclipcse.wst.dtd.parser.ExternalID
-	 */
-	public void setPublicId(String publicIdentifier) {
-		this.externalID = new ExternalID(publicIdentifier, this.externalID.getSystemLiteral());
-	}
-
-	/**
-	 * Returns the external ID of this Entity.
-	 * 
-	 * @return The reference(s) to the external entity to retrieve; otherwise,
-	 *         <var>null</var>.
-	 * @see org.eclipcse.wst.dtd.parser.ExternalID
-	 */
-	public ExternalID getExternalID() {
-		return this.externalID;
-	}
-
-	/**
-	 * Returns whether this entity value is external.
-	 * 
-	 * @return =true if entity is external; otherwise, =false.
-	 * @see org.eclipcse.wst.dtd.parser.ExternalID
-	 */
-	public boolean isExternal() {
-		return this.externalID != null;
-	}
-
-	/**
-	 * Returns the notation associated with this Entity.
-	 * 
-	 * @return The notation associated with the external binary Entity,
-	 *         otherwise, <var>null</var>.
-	 */
-	public String getNotation() {
-		return this.ndata;
-	}
-
-	public void setNotation(String ndata) {
-		this.ndata = ndata;
-	}
-
-	/**
-	 * Returns the notation associated with this Entity.
-	 * <p>
-	 * This method is defined by DOM.
-	 * 
-	 * @return The notation associated with the external binary Entity,
-	 *         otherwise, <var>null</var>.
-	 */
-	public String getNotationName() {
-		return this.ndata;
-	}
-
-	/**
-	 * <p>
-	 * This method is defined by DOM.
-	 * 
-	 * public void setNotationName(String arg) { this.ndata = arg; }
-	 */
-
-	/**
-	 * Returns whether there is a notation associated with this entity value.
-	 * 
-	 * @return =true if the external binary entity contains a notation;
-	 *         otherwise, =false.
-	 */
-	public boolean isNotation() {
-		return this.ndata != null;
-	}
-
-	public void setValue(String s) {
-		this.value = s;
-	}
-
-	public void setParsed(boolean p) {
-		this.parsed = p;
-	}
-
-	public boolean getParsed() {
-		return this.parsed;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/EntityPool.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/EntityPool.java
deleted file mode 100644
index c43e414..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/EntityPool.java
+++ /dev/null
@@ -1,72 +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.dtd.core.internal.saxparser;
-
-import java.util.Enumeration;
-import java.util.Hashtable;
-
-public class EntityPool {
-	private Hashtable m_entity = new Hashtable();
-	private Hashtable m_para = new Hashtable(); // parameter references
-
-	public EntityPool() {
-	}
-
-	public boolean add(EntityDecl entity) {
-		String name = entity.getNodeName();
-		if (entity.isParameter()) {
-			if (m_para.containsKey(name))
-				return false;
-			m_para.put(name, entity);
-		}
-		else {
-			if (m_entity.containsKey(name))
-				return false;
-			m_entity.put(name, entity);
-		}
-		return true;
-	}
-
-	public EntityDecl refer(String name) {
-		return (EntityDecl) m_entity.get(name);
-	}
-
-	public EntityDecl referPara(String name) {
-		return (EntityDecl) m_para.get(name);
-	}
-
-	/**
-	 * Return an <CODE>Enumeration</CODE> of <CODE>EntityDecl</CODE>.
-	 * 
-	 * @see org.eclipcse.wst.dtd.parser.EntityDecl
-	 */
-	public Enumeration elements() {
-		return m_entity.elements();
-	}
-
-	/**
-	 * Return an <CODE>Enumeration</CODE> of <CODE>EntityDecl</CODE> for
-	 * parameter entities.
-	 * 
-	 * @see org.eclipcse.wst.dtd.parser.EntityDecl
-	 */
-	public Enumeration parameterEntityElements() {
-		return m_para.elements();
-	}
-
-	/**
-	 * For DTD#getEntities();
-	 */
-	Hashtable getEntityHash() {
-		return this.m_entity;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ErrorMessage.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ErrorMessage.java
deleted file mode 100644
index 618dc2f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ErrorMessage.java
+++ /dev/null
@@ -1,114 +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.dtd.core.internal.saxparser;
-
-
-
-public class ErrorMessage {
-	private int errorLine, errorColumn, severity;
-	private String errorString;
-
-
-	public ErrorMessage() {
-	}
-
-	public void setErrorMessage(String error) {
-		errorString = error;
-	}
-
-	public void setSeverity(int severity) {
-		this.severity = severity;
-	}
-
-	public void setSeverity(String severity) {
-		if (severity == "warning") {
-			this.severity = 0;
-		}
-		else if (severity == "error") {
-			this.severity = 1;
-		}
-		else if (severity == "fatal") {
-			this.severity = 2;
-		}
-	}
-
-	public void setErrorLine(int line) {
-		errorLine = line;
-	}
-
-	public void setErrorColumn(int column) {
-		errorColumn = column;
-	}
-
-	public String getErrorMessage() {
-		return errorString;
-	}
-
-	public int getSeverity() {
-		return severity;
-	}
-
-	public int getErrorLine() {
-		return errorLine;
-	}
-
-	public int getErrorColumn() {
-		return errorColumn;
-	}
-
-	private int startOffset = -1;
-
-	public void setErrorStartOffset(int start) {
-		startOffset = start;
-	}
-
-	public int getErrorStartOffset() {
-		return startOffset;
-	}
-
-	private int endOffset = -1;
-
-	public void setErrorEndOffset(int end) {
-		endOffset = end;
-	}
-
-	public int getErrorEndOffset() {
-		return endOffset;
-	}
-
-
-	Object object;
-
-	/**
-	 * Get the value of the closest object to the error.
-	 * 
-	 * @return value of object.
-	 */
-	public Object getObject() {
-		return object;
-	}
-
-	/**
-	 * Set the value of closest object to the error.
-	 * 
-	 * @param v
-	 *            Value to assign to object.
-	 */
-	public void setObject(Object v) {
-		this.object = v;
-	}
-
-
-	public void addNewErrorMessageLine(String newLine) {
-		errorString += "\n" + newLine;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ExternalID.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ExternalID.java
deleted file mode 100644
index f33b3f0..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/ExternalID.java
+++ /dev/null
@@ -1,154 +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.dtd.core.internal.saxparser;
-
-public class ExternalID {
-	private static final int T_SYSTEM = 0;
-	private static final int T_PUBLIC = 1;
-
-	int type = T_PUBLIC;
-	String publicID = null;
-	String systemID = null;
-
-	/**
-	 * Constructor for system IDs.
-	 * 
-	 * @param systemID
-	 *            URI, which may be used to retrieve an external entity's
-	 *            content.
-	 */
-	public ExternalID(String systemID) {
-		this.type = T_SYSTEM;
-		this.publicID = null;
-		this.systemID = systemID;
-	}
-
-	/**
-	 * Constructor for public and system IDs.
-	 * 
-	 * @param publicID
-	 *            Identifier to be used to try to generate an alternative URI
-	 *            in order to retrieve the external entity's content, or
-	 *            <var>null</var> if a system identitier is to be
-	 *            constructed.
-	 * @param systemID
-	 *            URI, which may be used to retrieve an external entity's
-	 *            content.
-	 */
-	public ExternalID(String publicID, String systemID) {
-		this.type = T_PUBLIC;
-		this.publicID = publicID;
-		this.systemID = systemID;
-		if (null == this.publicID)
-			this.type = T_SYSTEM;
-	}
-
-	/**
-	 * Returns if this external ID is a system ID (or public ID).
-	 * 
-	 * @return System ID=true, Public ID=false.
-	 * @see #isPublic
-	 */
-	public boolean isSystem() {
-		return this.type == T_SYSTEM;
-	}
-
-	/**
-	 * Returns if this external ID is a public ID (or system ID).
-	 * 
-	 * @return Public ID=true, System ID=false.
-	 * @see #isSystem
-	 */
-	public boolean isPublic() {
-		return this.type == T_PUBLIC;
-	}
-
-	/**
-	 * Returns the system identifier of this external ID. A system identifier
-	 * is a URI, which may be used to retrieve an external entity's content.
-	 * 
-	 * @return The system identifier, or <var>null</var> if the identifier is
-	 *         not defined.
-	 * @see #getPubidLiteral
-	 */
-	public String getSystemLiteral() {
-		return this.systemID;
-	}
-
-	/**
-	 * Returns the public identifier of this external ID. This value is only
-	 * valid if the identifier is defined as <var>public</var> (as opposed to
-	 * <var>system</var>). Public identifiers may be used to try to generate
-	 * an alternative URI in order to retrieve an external entity's content.
-	 * If retrieval fails using the public identifier, an attempt must be made
-	 * to retrieve content using the system identifier.
-	 * 
-	 * @return The public identifier, or <var>null</var> if the identifier is
-	 *         not defined.
-	 * @see #getSystemLiteral
-	 */
-	public String getPubIdLiteral() {
-		return this.publicID;
-	}
-
-	/**
-	 * Returns this external ID in the format it was declared: <CODE>SYSTEM
-	 * &quot;<VAR>systemID</VAR>&quot;</CODE> or <CODE>PUBLIC &quot;<VAR>publicID</VAR>&quot;
-	 * &quot;<VAR>systemID</VAR>&quot;</CODE>.
-	 * 
-	 * @return XML string representing the content of the external ID (never
-	 *         <var>null</var>).
-	 */
-	public String toString() {
-		String ret;
-		if (isSystem()) {
-			ret = "SYSTEM \"" + getSystemLiteral() + "\"";
-		}
-		else if (null != getSystemLiteral()) {
-			ret = "PUBLIC \"" + getPubIdLiteral() + "\" \"" + getSystemLiteral() + "\"";
-		}
-		else {
-			ret = "PUBLIC \"" + getPubIdLiteral() + "\""; // for NOTATION
-		}
-		return ret;
-	}
-
-	/**
-	 * 
-	 */
-	public boolean equals(Object obj) {
-		if (obj == null)
-			return false;
-		if (!(obj instanceof ExternalID))
-			return false;
-		ExternalID eid = (ExternalID) obj;
-		if (!((eid.publicID == null && this.publicID == null) || eid.publicID != null && eid.publicID.equals(this.publicID)))
-			return false;
-		if (!((eid.systemID == null && this.systemID == null) || eid.systemID != null && eid.systemID.equals(this.systemID)))
-			return false;
-		return true;
-	}
-
-
-	/**
-	 * 
-	 */
-	public int hashCode() {
-		int retval = 0;
-		if (publicID != null)
-			retval = publicID.hashCode();
-		if (systemID != null)
-			retval += systemID.hashCode();
-		return retval;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/NotationDecl.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/NotationDecl.java
deleted file mode 100644
index 57d4e2f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/NotationDecl.java
+++ /dev/null
@@ -1,77 +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.dtd.core.internal.saxparser;
-
-/**
- * Notations are how the Document Type Description (DTD) records hints about
- * the format of an XML "unparsed entity" -- in other words, non-XML data
- * bound to this document type, which some applications may wish to consult
- * when manipulating the document. A Notation represents a name-value pair,
- * with its nodeName being set to the declared name of the notation.
- */
-public class NotationDecl extends BaseNode {
-	/** Public identifier. */
-	protected String publicId = null;
-
-	/** System identifier. */
-	protected String systemId = null;
-
-	//
-	// Constructors
-	//
-
-	/** Factory constructor. */
-	public NotationDecl(String name, String ownerDTD) {
-		super(name, ownerDTD);
-	}
-
-	//
-	// Notation methods
-	//
-
-	/**
-	 * The Public Identifier for this Notation. If no public identifier was
-	 * specified, this will be null.
-	 */
-	public String getPublicId() {
-		return publicId;
-	} // getPublicId():String
-
-	/**
-	 * The System Identifier for this Notation. If no system identifier was
-	 * specified, this will be null.
-	 */
-	public String getSystemId() {
-		return systemId;
-	} // getSystemId():String
-
-	//
-	// Public methods
-	//
-
-	/**
-	 * NON-DOM: The Public Identifier for this Notation. If no public
-	 * identifier was specified, this will be null.
-	 */
-	public void setPublicId(String id) {
-		publicId = id;
-	} // setPublicId(String)
-
-	/**
-	 * NON-DOM: The System Identifier for this Notation. If no system
-	 * identifier was specified, this will be null.
-	 */
-	public void setSystemId(String id) {
-		systemId = id;
-	} // setSystemId(String)
-
-} // class NotationImpl
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/StringParser.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/StringParser.java
deleted file mode 100644
index e18e259..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/StringParser.java
+++ /dev/null
@@ -1,450 +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.dtd.core.internal.saxparser;
-
-/**
- * Reader for processing/parsing xml string
- * 
- * @version
- */
-public class StringParser {
-	String fData = null;
-	int fEndOffset;
-	int fMostRecentChar;
-	int fCurrentOffset;
-	boolean fCalledCharPropInit = false;
-
-	public StringParser(String data) {
-		fData = data;
-		fCurrentOffset = 0;
-		fEndOffset = fData.length();
-		fMostRecentChar = fEndOffset == 0 ? -1 : fData.charAt(0);
-	}
-
-	public String getString(int offset, int length) {
-		if (length == 0)
-			return "";
-		return fData.substring(offset, offset + length);
-	}
-
-	public String getData() {
-		return fData;
-	}
-
-	public String getRemainingString() {
-		return fData.substring(getCurrentOffset());
-	}
-
-	public int getCurrentOffset() {
-		return fCurrentOffset;
-	}
-
-	//
-	//
-	public int loadNextChar() {
-		if (++fCurrentOffset >= fEndOffset) {
-			fMostRecentChar = -1;
-		}
-		else {
-			fMostRecentChar = fData.charAt(fCurrentOffset);
-		}
-		return fMostRecentChar;
-	}
-
-	//
-	//
-	public boolean lookingAtChar(char chr, boolean skipPastChar) {
-		int ch = fMostRecentChar;
-		if (ch != chr) {
-			return false;
-		}
-		if (skipPastChar) {
-			if (++fCurrentOffset >= fEndOffset) {
-				fMostRecentChar = -1;
-			}
-			else {
-				fMostRecentChar = fData.charAt(fCurrentOffset);
-			}
-		}
-		return true;
-	}
-
-	//
-	//
-	//
-	public boolean lookingAtValidChar(boolean skipPastChar) {
-		int ch = fMostRecentChar;
-		if (ch < 0xD800) {
-			if (ch < 0x20 && ch != 0x09 && ch != 0x0A && ch != 0x0D) {
-				return false;
-			}
-			if (skipPastChar) {
-				if (++fCurrentOffset >= fEndOffset) {
-					fMostRecentChar = -1;
-				}
-				else {
-					fMostRecentChar = fData.charAt(fCurrentOffset);
-				}
-			}
-			return true;
-		}
-		if (ch > 0xFFFD) {
-			return false;
-		}
-		if (ch < 0xDC00) {
-			if (fCurrentOffset + 1 >= fEndOffset) {
-				return false;
-			}
-			ch = fData.charAt(fCurrentOffset + 1);
-			if (ch < 0xDC00 || ch >= 0xE000) {
-				return false;
-			}
-			else if (!skipPastChar) {
-				return true;
-			}
-			else {
-				fCurrentOffset++;
-			}
-		}
-		else if (ch < 0xE000) {
-			return false;
-		}
-		if (skipPastChar) {
-			if (++fCurrentOffset >= fEndOffset) {
-				fMostRecentChar = -1;
-			}
-			else {
-				fMostRecentChar = fData.charAt(fCurrentOffset);
-			}
-		}
-		return true;
-	}
-
-	//
-	//
-	//
-	public boolean lookingAtSpace(boolean skipPastChar) {
-		int ch = fMostRecentChar;
-		if (ch > 0x20)
-			return false;
-		if (ch == 0x20 || ch == 0x0A || ch == 0x0D || ch == 0x09) {
-			if (skipPastChar) {
-				loadNextChar();
-			}
-			return true;
-		}
-		return false;
-	}
-
-	//
-	//
-	//
-	public void skipToChar(char chr, boolean skipPastChar) {
-		//
-		// REVISIT - this will skip invalid characters without reporting them.
-		//
-		int ch = fMostRecentChar;
-		while (true) {
-			if (ch == chr) {
-				if (skipPastChar) {
-					loadNextChar();
-				}
-				return;
-			}
-			if (ch == -1) {
-				return;
-			}
-			ch = loadNextChar();
-		}
-	}
-
-	//
-	//
-	//
-	public void skipPastSpaces() {
-		int ch = fMostRecentChar;
-		if (ch == -1) {
-			// changeReaders().skipPastSpaces();
-			return;
-		}
-		while (true) {
-			if (ch > 0x20 || (ch != 0x20 && ch != 0x0A && ch != 0x09 && ch != 0x0D)) {
-				fMostRecentChar = ch;
-				return;
-			}
-			if (++fCurrentOffset >= fEndOffset) {
-				return;
-			}
-			ch = fData.charAt(fCurrentOffset);
-		}
-	}
-
-	//
-	//
-	//
-
-	public void skipPastNameAndPEReference(char fastcheck) {
-		int ch = fMostRecentChar;
-
-		if (ch != '%') {
-			if (ch < 0x80) {
-				if (ch == -1 || XMLCharacterProperties.fgAsciiInitialNameChar[ch] == 0)
-					return;
-			}
-			else {
-				if (!fCalledCharPropInit) {
-					XMLCharacterProperties.initCharFlags();
-					fCalledCharPropInit = true;
-				}
-				if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0)
-					return;
-			}
-		}
-		while (true) {
-			ch = loadNextChar();
-			if (fastcheck == ch)
-				return;
-			if (ch == '%' || ch == ';') {
-				continue;
-			}
-
-			if (ch < 0x80) {
-				if (ch == -1 || XMLCharacterProperties.fgAsciiNameChar[ch] == 0)
-					return;
-			}
-			else {
-				if (!fCalledCharPropInit) {
-					XMLCharacterProperties.initCharFlags();
-					fCalledCharPropInit = true;
-				}
-				if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_NameCharFlag) == 0)
-					return;
-			}
-		}
-	}
-
-	public void skipPastName(char fastcheck) {
-		int ch = fMostRecentChar;
-		// System.out.println("skippastName ch: " +ch);
-
-		if (ch < 0x80) {
-			if (ch == -1 || XMLCharacterProperties.fgAsciiInitialNameChar[ch] == 0)
-				return;
-		}
-		else {
-			if (!fCalledCharPropInit) {
-				XMLCharacterProperties.initCharFlags();
-				fCalledCharPropInit = true;
-			}
-			if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_InitialNameCharFlag) == 0)
-				return;
-		}
-
-		while (true) {
-			ch = loadNextChar();
-			if (fastcheck == ch)
-				return;
-			if (ch < 0x80) {
-				if (ch == -1 || XMLCharacterProperties.fgAsciiNameChar[ch] == 0)
-					return;
-			}
-			else {
-				if (!fCalledCharPropInit) {
-					XMLCharacterProperties.initCharFlags();
-					fCalledCharPropInit = true;
-				}
-				if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_NameCharFlag) == 0)
-					return;
-			}
-		}
-	}
-
-	//
-	//
-	//
-
-	public void skipPastNmtoken(char fastcheck) {
-		int ch = fMostRecentChar;
-		while (true) {
-			if (fastcheck == ch)
-				return;
-			if (ch < 0x80) {
-				if (ch == -1 || XMLCharacterProperties.fgAsciiNameChar[ch] == 0)
-					return;
-			}
-			else {
-				if (!fCalledCharPropInit) {
-					XMLCharacterProperties.initCharFlags();
-					fCalledCharPropInit = true;
-				}
-				if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_NameCharFlag) == 0)
-					return;
-			}
-			ch = loadNextChar();
-		}
-	}
-
-	public void skipPastNmtokenAndPEReference(char fastcheck) {
-		int ch = fMostRecentChar;
-		while (true) {
-			if (fastcheck == ch)
-				return;
-			if (ch == '%' || ch == ';') {
-				ch = loadNextChar();
-				continue;
-			}
-			if (ch < 0x80) {
-				if (ch == -1 || XMLCharacterProperties.fgAsciiNameChar[ch] == 0)
-					return;
-			}
-			else {
-				if (!fCalledCharPropInit) {
-					XMLCharacterProperties.initCharFlags();
-					fCalledCharPropInit = true;
-				}
-				if ((XMLCharacterProperties.fgCharFlags[ch] & XMLCharacterProperties.E_NameCharFlag) == 0)
-					return;
-			}
-			ch = loadNextChar();
-		}
-	}
-
-	//
-	//
-	//
-	public boolean skippedString(char[] s) {
-		int ch = fMostRecentChar;
-		if (ch != s[0]) {
-			return false;
-		}
-		if (fCurrentOffset + s.length > fEndOffset)
-			return false;
-		for (int i = 1; i < s.length; i++) {
-			if (fData.charAt(fCurrentOffset + i) != s[i])
-				return false;
-		}
-		fCurrentOffset += (s.length - 1);
-		loadNextChar();
-		return true;
-	}
-
-	//
-	//
-	//
-	public int scanInvalidChar() throws Exception {
-		int ch = fMostRecentChar;
-		loadNextChar();
-		return ch;
-	}
-
-	//
-	//
-	//
-	/*
-	 * public int scanCharRef(boolean hex) throws Exception { int ch =
-	 * fMostRecentChar; if (ch == -1) // return
-	 * changeReaders().scanCharRef(hex); return ch; int num = 0; if (hex) { if
-	 * (ch > 'f' || XMLCharacterProperties.fgAsciiXDigitChar[ch] == 0) return
-	 * XMLEntityHandler.CHARREF_RESULT_INVALID_CHAR; num = ch - (ch < 'A' ?
-	 * '0' : (ch < 'a' ? 'A' : 'a') - 10); } else { if (ch < '0' || ch > '9')
-	 * return XMLEntityHandler.CHARREF_RESULT_INVALID_CHAR; num = ch - '0'; }
-	 * boolean toobig = false; while (true) { ch = loadNextChar(); if (ch ==
-	 * -1) return XMLEntityHandler.CHARREF_RESULT_SEMICOLON_REQUIRED; if (hex) {
-	 * if (ch > 'f' || XMLCharacterProperties.fgAsciiXDigitChar[ch] == 0)
-	 * break; } else { if (ch < '0' || ch > '9') break; } if (hex) { int dig =
-	 * ch - (ch < 'A' ? '0' : (ch < 'a' ? 'A' : 'a') - 10); num = (num << 4) +
-	 * dig; } else { int dig = ch - '0'; num = (num * 10) + dig; } if (num >
-	 * 0x10FFFF) { toobig = true; num = 0; } } if (ch != ';') return
-	 * XMLEntityHandler.CHARREF_RESULT_SEMICOLON_REQUIRED; loadNextChar(); if
-	 * (toobig) return XMLEntityHandler.CHARREF_RESULT_OUT_OF_RANGE; return
-	 * num; }
-	 */
-	//
-	//
-	//
-	/*
-	 * public int scanStringLiteral() throws Exception { boolean single; if
-	 * (!(single = lookingAtChar('\'', true)) && !lookingAtChar('\"', true)) {
-	 * return XMLEntityHandler.STRINGLIT_RESULT_QUOTE_REQUIRED; } int offset =
-	 * fCurrentOffset; char qchar = single ? '\'' : '\"'; while
-	 * (!lookingAtChar(qchar, false)) { if (!lookingAtValidChar(true)) {
-	 * return XMLEntityHandler.STRINGLIT_RESULT_INVALID_CHAR; } } // int
-	 * stringIndex = addString(offset, fCurrentOffset - offset); int
-	 * stringIndex = addString(offset, fCurrentOffset - offset);
-	 * lookingAtChar(qchar, true); // move past qchar return stringIndex; }
-	 */
-
-	//
-	//
-	public boolean scanAttValue(char qchar) {
-		int offset = fCurrentOffset;
-		boolean result = true;
-		while (true) {
-			if (lookingAtChar(qchar, false)) {
-				break;
-			}
-			if (lookingAtChar(' ', true)) {
-				continue;
-			}
-			if (!lookingAtValidChar(true)) {
-				result = false;
-			}
-		}
-		lookingAtChar(qchar, true);
-		return result;
-	}
-
-	//
-	// [9] EntityValue ::= '"' ([^%&"] | PEReference | Reference)* '"'
-	// | "'" ([^%&'] | PEReference | Reference)* "'"
-	//
-	// The values in the following table are defined as:
-	//
-	// 0 - not special
-	// 1 - quote character
-	// 2 - reference
-	// 3 - peref
-	// 4 - invalid
-	//
-	public static final byte fgAsciiEntityValueChar[] = {4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 4, 4, 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 1, 0, 0, 3, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, // '\"',
-																																																			// '%',
-																																																			// '&',
-																																																			// '\''
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-	/*
-	 * public int scanEntityValue(int qchar, boolean createString) throws
-	 * Exception { int offset = fCurrentOffset; int ch = fMostRecentChar;
-	 * while (true) { if (ch == -1) { changeReaders(); // do not call next
-	 * reader, our caller may need to change the parameters return
-	 * XMLEntityHandler.ENTITYVALUE_RESULT_END_OF_INPUT; } if (ch < 0x80) {
-	 * switch (fgAsciiEntityValueChar[ch]) { case 1: // quote char if (ch ==
-	 * qchar) { if (!createString) return
-	 * XMLEntityHandler.ENTITYVALUE_RESULT_FINISHED; int length =
-	 * fCurrentOffset - offset; int result = length == 0 ?
-	 * StringPool.EMPTY_STRING : addString(offset, length); loadNextChar();
-	 * return result; } // the other quote character is not special // fall
-	 * through case 0: // non-special char if (++fCurrentOffset >= fEndOffset) {
-	 * if (oweTrailingSpace) { oweTrailingSpace = false; ch = fMostRecentChar = ' '; }
-	 * else { ch = fMostRecentChar = -1; } } else { ch = fMostRecentChar =
-	 * fData.charAt(fCurrentOffset); } continue; case 2: // reference return
-	 * XMLEntityHandler.ENTITYVALUE_RESULT_REFERENCE; case 3: // peref return
-	 * XMLEntityHandler.ENTITYVALUE_RESULT_PEREF; case 4: // invalid return
-	 * XMLEntityHandler.ENTITYVALUE_RESULT_INVALID_CHAR; } } else if (ch <
-	 * 0xD800) { ch = loadNextChar(); } else if (ch >= 0xE000 && (ch <= 0xFFFD ||
-	 * (ch >= 0x10000 && ch <= 0x10FFFF))) { // // REVISIT - needs more code
-	 * to check surrogates. // ch = loadNextChar(); } else { return
-	 * XMLEntityHandler.ENTITYVALUE_RESULT_INVALID_CHAR; } } }
-	 */
-
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/TString.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/TString.java
deleted file mode 100644
index a547c63..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/TString.java
+++ /dev/null
@@ -1,350 +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.dtd.core.internal.saxparser;
-
-import java.util.StringTokenizer;
-
-/**
- * This class provides static methods for some of the very used IString
- * operations
- */
-
-public class TString {
-	private static final String ALPHABET = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
-	private static final String ALPHANUMERIC = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
-	private static final String NUMERIC = "0123456789";
-
-	// change all occurrences of oldPat to newPat
-	public static String change(String in, String oldPat, String newPat) {
-		if (oldPat.length() == 0)
-			return in;
-		if (oldPat.length() == 1 && newPat.length() == 1)
-			return in.replace(oldPat.charAt(0), newPat.charAt(0));
-
-		int lastIndex = 0;
-		int newIndex = 0;
-		StringBuffer newString = new StringBuffer();
-		for (;;) {
-			newIndex = in.indexOf(oldPat, lastIndex);
-			if (newIndex != -1) {
-				newString.append(in.substring(lastIndex, newIndex) + newPat);
-				lastIndex = newIndex + oldPat.length();
-			}
-			else {
-				newString.append(in.substring(lastIndex));
-				break;
-			}
-		}
-		return newString.toString();
-	}
-
-	// change the occurrences of oldPat to newPat starting at startPosition
-	// for number of numChanges
-	// Note: the 1st char in the string has position of 0
-
-	public static String change(String in, String oldPat, String newPat, int startPos, int numChanges) {
-		if (oldPat.length() == 0)
-			return in;
-		if (oldPat.length() == 1 && newPat.length() == 1)
-			return in.replace(oldPat.charAt(0), newPat.charAt(0));
-
-		int inLen = in.length();
-
-		if (startPos >= inLen)
-			return in;
-
-		int lastIndex = startPos;
-		int newIndex = 0;
-		int countChanges = 0;
-
-
-		StringBuffer newString = new StringBuffer();
-
-		for (;;) {
-			newIndex = in.indexOf(oldPat, lastIndex);
-			if (newIndex != -1) {
-				newString.append(in.substring(lastIndex, newIndex) + newPat);
-				lastIndex = newIndex + oldPat.length();
-				countChanges++;
-			}
-			else {
-				newString.append(in.substring(lastIndex));
-				break;
-			}
-
-			if (countChanges == numChanges) {
-				newString.append(in.substring(lastIndex));
-				break;
-			}
-		}
-
-		return newString.toString();
-	}
-
-	public static String word(String in, int i) {
-		StringTokenizer st = new StringTokenizer(in);
-		if (i <= 0 || i > st.countTokens())
-			return "";
-		else {
-			String ret = new String();
-			while (st.hasMoreTokens()) {
-				ret = st.nextToken();
-				if (--i == 0)
-					return ret;
-			}
-		}
-		return "";
-	}
-
-	public static String words(String in, int i) {
-		StringTokenizer st = new StringTokenizer(in);
-		if (i <= 0 || i > st.countTokens())
-			return "";
-		else {
-			while (st.hasMoreTokens()) {
-				if (--i == 0)
-					break;
-				st.nextToken();
-			}
-			if (st.hasMoreTokens())
-				return st.nextToken("");
-			else
-				return "";
-		}
-	}
-
-	public static String appendSpaces(String in, int len) {
-		if (len < 1)
-			return in;
-
-		StringBuffer sb = new StringBuffer(in);
-		for (int i = 0; i < len; i++) {
-			sb.append(" ");
-		}
-		return sb.toString();
-	}
-
-	public static int numWords(String in) {
-		StringTokenizer st = new StringTokenizer(in);
-		return st.countTokens();
-	}
-
-	// return the first index within srcString that is not in the validString
-	// example:
-	// srcString = "abcdefg"
-	// validString = "bcfg"
-	// return = 0 (i.e. char a is not in "bcfg") - 1st index = 0
-
-	public static int indexOfAnyBut(String srcString, String validString) {
-		int result = -1;
-		int srcLen = srcString.length();
-
-		// walk backward to find if a char within srcString is in validString
-		for (int i = 0; i < srcLen; i++) {
-			// not found, stop it
-			if (validString.indexOf(srcString.charAt(i)) == -1) {
-				result = i;
-				break;
-			}
-
-		}
-
-		return result;
-	}
-
-	// return the last index within srcString that is not in the validString
-	// example:
-	// srcString = "abcdefg"
-	// validString = "bcfg"
-	// return = 4 (i.e. char e is not in "bcfg") - 1st index = 0
-
-	public static int lastIndexOfAnyBut(String srcString, String validString) {
-		int result = -1;
-		int srcLen = srcString.length();
-
-		// walk backward to find if a char within srcString is in validString
-		for (int i = srcLen - 1; i >= 0; i--) {
-			// not found, stop it
-			if (validString.indexOf(srcString.charAt(i)) == -1) {
-				result = i;
-				break;
-			}
-
-		}
-
-		return result;
-	}
-
-	// return number of occurrences of searchChar within srcString
-	// example:
-	// srcString = "::f::f::g"
-	// seachrChar = ':'
-	// return = 6
-
-	public static int occurrenceOf(String srcString, char searchChar) {
-		int result = 0;
-		// walk backward to find if a char within srcString is in validString
-		if (srcString.length() > 0) {
-
-			for (int i = 0; i < srcString.length(); i++) {
-				// found, increment the count
-				if (searchChar == srcString.charAt(i))
-					result++;
-			}
-		}
-
-		return result;
-	}
-
-	// strip the leading pString in the srcString
-	// example:
-	// srcString = "::f::f::g"
-	// pString "::"
-	// return = "f::f::g"
-
-	public static String stripLeading(String srcString, String pString) {
-		String result;
-
-		if (srcString.startsWith(pString)) // leading patString found
-			result = srcString.substring(pString.length(), srcString.length());
-		else
-			// not found
-			result = srcString;
-
-		return result;
-	}
-
-	// strip the trailing pString in the srcString
-	// example:
-	// srcString = "f::f::g::"
-	// pString "::"
-	// return = "f::f::g"
-
-	public static String stripTrailing(String srcString, String pString) {
-		String result;
-
-		if (srcString.endsWith(pString)) // leading patString found
-			result = srcString.substring(0, srcString.lastIndexOf(pString));
-		else
-			// not found
-			result = srcString;
-
-		return result;
-	}
-
-	/**
-	 * strip the trailing blanks in the src
-	 */
-	public static String stripTrailingBlanks(String src) {
-
-		if (src != null) {
-			while (src.length() > 0) {
-				if (src.endsWith(" "))
-					src = src.substring(0, src.length() - 1);
-				else
-					break;
-			}
-		}
-
-		return src;
-	}
-
-
-
-	// return a string that contains number of copies of srcString
-	// example:
-	// srcString = "abc"
-	// numberOfCopies = 2
-	// return string = "abcabc"
-
-	public static String copy(String srcString, int numberOfCopies) {
-		StringBuffer result = new StringBuffer();
-
-		if (numberOfCopies > 0) {
-			for (int i = 1; i <= numberOfCopies; i++)
-				result.append(srcString);
-		}
-		else
-			result = new StringBuffer(srcString);
-
-		return result.toString();
-	}
-
-	//
-	// return true if all chars in srcString are in {a...z} or {A...Z}
-
-	public static boolean isAlphabetic(String srcString) {
-		return (lastIndexOfAnyBut(srcString, ALPHABET) == -1);
-	}
-
-	//
-	// return true if all chars in srcString are in {a...z,} or {A...Z}
-	// {0...9}
-
-	public static boolean isAlphanumeric(String srcString) {
-		return (lastIndexOfAnyBut(srcString, ALPHANUMERIC) == -1);
-	}
-
-
-	//
-	// return true if all chars are in '0' - '9'
-
-	public static boolean isDigits(String srcString) {
-		return (lastIndexOfAnyBut(srcString, NUMERIC) == -1);
-	}
-
-
-	public static boolean isEmptyOrNull(String string) {
-		return string == null || string.length() == 0;
-	}
-
-
-	//
-	// return the string after the matching token is removed
-	public static String match(String in, String token) throws Exception {
-		if (in == null)
-			return null;
-
-		in = in.trim();
-		if (in.startsWith(token))
-			return in.substring(token.length(), in.length());
-		else
-			throw new Exception("Expected: " + token + " but got:" + word(in, 1));
-	}
-
-	public static long getLong(String str) {
-		try {
-			return Long.parseLong(str);
-		}
-		catch (Exception m) {
-			return 0;
-		}
-	}
-
-	// return true if the " " appears within srcString
-	// example:
-	// srcString = "a m"
-	// return = true
-
-	public static boolean containsDoubleBlanks(String srcString) {
-		String bb = "  ";
-		char b = bb.charAt(0);
-
-		if (srcString.length() > 0) {
-			for (int i = 0; i < (srcString.length() - 1); i++) {
-				if ((b == srcString.charAt(i)) & (b == srcString.charAt(i + 1)))
-					return true;
-			}
-		}
-		return false;
-	}
-};
diff --git a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/XMLCharacterProperties.java b/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/XMLCharacterProperties.java
deleted file mode 100644
index c7d2f32..0000000
--- a/bundles/org.eclipse.wst.dtd.core/saxparser/org/eclipse/wst/dtd/core/internal/saxparser/XMLCharacterProperties.java
+++ /dev/null
@@ -1,448 +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.dtd.core.internal.saxparser;
-
-/**
- * A class representing properties of characters according to various W3C
- * recommendations
- * 
- * XMLCharacterProperties provides convenience methods for commonly used
- * character tests.
- * 
- * For performance reasons, the tables used by the convenience methods are
- * also public, and are directly accessed by performance critical routines.
- * 
- */
-
-public final class XMLCharacterProperties {
-	/*
-	 * [26] VersionNum ::= ([a-zA-Z0-9_.:] | '-')+
-	 * 
-	 * Note: This is the same as the ascii portion of the NameChar definition.
-	 */
-	/**
-	 * Check to see if a string is a valid version string according to [26] in
-	 * the XML 1.0 Recommendation
-	 * 
-	 * @param version
-	 *            string to check
-	 * @return true if version is a valid version string
-	 */
-	public static boolean validVersionNum(String version) {
-		if (version.length() == 0)
-			return false;
-		for (int i = 0; i < version.length(); i++) {
-			char ch = version.charAt(i);
-			if (ch > 'z' || fgAsciiNameChar[ch] == 0)
-				return false;
-		}
-		return true;
-	}
-
-	/*
-	 * [81] EncName ::= [A-Za-z] ([A-Za-z0-9._] | '-')*
-	 */
-	/**
-	 * Check to see if a string is a valid encoding name according to [81] in
-	 * the XML 1.0 Recommendation
-	 * 
-	 * @param encoding
-	 *            string to check
-	 * @return true if encoding is a valid encoding name
-	 */
-	public static boolean validEncName(String encoding) {
-		if (encoding.length() == 0)
-			return false;
-		char ch = encoding.charAt(0);
-		if (ch > 'z' || fgAsciiAlphaChar[ch] == 0)
-			return false;
-		for (int i = 1; i < encoding.length(); i++) {
-			ch = encoding.charAt(i);
-			if (ch > 'z' || fgAsciiEncNameChar[ch] == 0)
-				return false;
-		}
-		return true;
-	}
-
-	/*
-	 * [13] PubidChar ::= #x20 | #xD | #xA | [a-zA-Z0-9] |
-	 * [-'()+,./:=?;!*#@$_%]
-	 */
-	/**
-	 * Check to see if a string is a valid public identifier according to [13]
-	 * in the XML 1.0 Recommendation
-	 * 
-	 * @param publicId
-	 *            string to check
-	 * @return true if publicId is a valid public identifier
-	 */
-	public static int validPublicId(String publicId) {
-		if (publicId.length() == 0)
-			return -1;
-		for (int i = 0; i < publicId.length(); i++) {
-			char ch = publicId.charAt(i);
-			if (ch > 'z' || fgAsciiPubidChar[ch] == 0)
-				return i;
-		}
-		return -1;
-	}
-
-	/*
-	 * [5] Name ::= (Letter | '_' | ':') (NameChar)*
-	 */
-	/**
-	 * Check to see if a string is a valid Name according to [5] in the XML
-	 * 1.0 Recommendation
-	 * 
-	 * @param name
-	 *            string to check
-	 * @return true if name is a valid Name
-	 */
-	public static boolean validName(String name) {
-		XMLCharacterProperties.initCharFlags();
-		if (name.length() == 0)
-			return false;
-		char ch = name.charAt(0);
-		if (ch > 'z') {
-			if ((fgCharFlags[ch] & E_InitialNameCharFlag) == 0)
-				return false;
-		}
-		else if (fgAsciiInitialNameChar[ch] == 0)
-			return false;
-		for (int i = 1; i < name.length(); i++) {
-			ch = name.charAt(i);
-			if (ch > 'z') {
-				if ((fgCharFlags[ch] & E_NameCharFlag) == 0)
-					return false;
-			}
-			else if (fgAsciiNameChar[ch] == 0)
-				return false;
-		}
-		return true;
-	}
-
-	/*
-	 * from the namespace rec [5] NCName ::= (Letter | '_' | ':')
-	 * (NameNCChar)*
-	 */
-	/**
-	 * Check to see if a string is a valid NCName according to [5] from the
-	 * XML Namespaces 1.0 Recommendation
-	 * 
-	 * @param name
-	 *            string to check
-	 * @return true if name is a valid NCName
-	 */
-	public static boolean validNCName(String name) {
-		XMLCharacterProperties.initCharFlags();
-		if (name.length() == 0)
-			return false;
-		char ch = name.charAt(0);
-		if (ch > 'z') {
-			if ((fgCharFlags[ch] & E_InitialNameCharFlag) == 0)
-				return false;
-		}
-		else if (fgAsciiInitialNCNameChar[ch] == 0)
-			return false;
-		for (int i = 1; i < name.length(); i++) {
-			ch = name.charAt(i);
-			if (ch > 'z') {
-				if ((fgCharFlags[ch] & E_NameCharFlag) == 0)
-					return false;
-			}
-			else if (fgAsciiNCNameChar[ch] == 0)
-				return false;
-		}
-		return true;
-	}
-
-
-	/*
-	 * [7] Nmtoken ::= (NameChar)+
-	 */
-	/**
-	 * Check to see if a string is a valid Nmtoken according to [7] in the XML
-	 * 1.0 Recommendation
-	 * 
-	 * @param nmtoken
-	 *            string to checj
-	 * @return true if nmtoken is a valid Nmtoken
-	 */
-	public static boolean validNmtoken(String nmtoken) {
-		XMLCharacterProperties.initCharFlags();
-		if (nmtoken.length() == 0)
-			return false;
-		for (int i = 0; i < nmtoken.length(); i++) {
-			char ch = nmtoken.charAt(i);
-			if (ch > 'z') {
-				if ((fgCharFlags[ch] & E_NameCharFlag) == 0)
-					return false;
-			}
-			else if (fgAsciiNameChar[ch] == 0) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	/*
-	 * Here are tables used to build character properties.
-	 */
-	public static final byte fgAsciiXDigitChar[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, // '0'
-																																																													// -
-																																																													// '9'
-				0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 'A' - 'F'
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 'a'
-																												// -
-																												// 'f'
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-	public static final byte fgAsciiAlphaChar[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'A'
-																																																																									// -
-																																																																									// 'O'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, // 'P' - 'Z'
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'a' - 'o'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 // 'p' - 'z'
-	};
-	public static final byte fgAsciiEncNameChar[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, // '-'
-																																																		// is
-																																																		// 0x2D
-																																																		// and
-																																																		// '.'
-																																																		// is
-																																																		// 0x2E
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, // '0' - '9'
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'A' - 'O'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, // 'P' - 'Z'
-																// and '_' is
-																// 0x5F
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'a' - 'o'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 // 'p' - 'z'
-	};
-	public static final byte fgAsciiPubidChar[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, // ' ',
-																																																	// '!',
-																																																	// '#',
-																																																	// '$',
-																																																	// '%',
-				// '\'', '(', ')', '*', '+', ',', '-', '.', '/'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, // '0' - '9',
-																// ':', ';',
-																// '=', '?'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // '@', 'A' -
-																// 'O'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, // 'P' - 'Z'
-																// and '_' is
-																// 0x5F
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'a' - 'o'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 // 'p' - 'z'
-	};
-	public static final byte fgAsciiInitialNameChar[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, // ':'
-																																																															// is
-																																																															// 0x3A
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'A' - 'O'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, // 'P' - 'Z'
-																// and '_' is
-																// 0x5F
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'a' - 'o'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 // 'p' - 'z'
-	};
-	public static final byte fgAsciiNameChar[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, // '-'
-																																																	// is
-																																																	// 0x2D
-																																																	// and
-																																																	// '.'
-																																																	// is
-																																																	// 0x2E
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, // '0' - '9'
-																// and ':' is
-																// 0x3A
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'A' - 'O'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, // 'P' - 'Z'
-																// and '_' is
-																// 0x5F
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'a' - 'o'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 // 'p' - 'z'
-	};
-	public static final byte fgAsciiInitialNCNameChar[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // ':'
-																																																															// is
-																																																															// 0x3A
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'A' - 'O'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, // 'P' - 'Z'
-																// and '_' is
-																// 0x5F
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'a' - 'o'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 // 'p' - 'z'
-	};
-	public static final byte fgAsciiNCNameChar[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, // '-'
-																																																	// is
-																																																	// 0x2D
-																																																	// and
-																																																	// '.'
-																																																	// is
-																																																	// 0x2E
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, // '0' - '9'
-																// and ':' is
-																// 0x3A
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'A' - 'O'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, // 'P' - 'Z'
-																// and '_' is
-																// 0x5F
-				0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 'a' - 'o'
-				1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0 // 'p' - 'z'
-	};
-	public static final byte fgAsciiCharData[] = {4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 4, 4, 4, 4, 4, 4, // tab
-																									// is
-																									// 0x09
-				4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, // '&'
-																												// is
-																												// 0x26
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, // '<' is 0x3C
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, // ']'
-																												// is
-																												// 0x5D
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-	public static final byte fgAsciiWSCharData[] = {4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 4, 4, 5, 4, 4, // tab
-																									// is
-																									// 0x09,
-																									// LF
-																									// is
-																									// 0x0A,
-																									// CR
-																									// is
-																									// 0x0D
-				4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, // ' '
-																												// is
-																												// 0x20,
-																												// '&'
-																												// is
-																												// 0x26
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, // '<' is 0x3C
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, // ']'
-																												// is
-																												// 0x5D
-				0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-	public static final byte E_CharDataFlag = 1 << 0;
-	public static final byte E_InitialNameCharFlag = 1 << 1;
-	public static final byte E_NameCharFlag = 1 << 2;
-	public static byte[] fgCharFlags = null;
-
-	public static synchronized void initCharFlags() {
-		if (fgCharFlags == null) {
-			fgCharFlags = new byte[0x10000];
-			setFlagForRange(fgCharDataRanges, E_CharDataFlag);
-			setFlagForRange(fgInitialNameCharRanges, (byte) (E_InitialNameCharFlag | E_NameCharFlag));
-			setFlagForRange(fgNameCharRanges, E_NameCharFlag);
-		}
-	}
-
-	private static void setFlagForRange(char[] ranges, byte flag) {
-		int i;
-		int ch;
-		for (i = 0; (ch = ranges[i]) != 0; i += 2) {
-			int endch = ranges[i + 1];
-			while (ch <= endch)
-				fgCharFlags[ch++] |= flag;
-		}
-		for (i++; (ch = ranges[i]) != 0; i++)
-			fgCharFlags[ch] |= flag;
-	}
-
-	/*
-	 * [2] Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] // any Unicode character,
-	 * excluding the | [#xE000-#xFFFD] | [#x10000-#x10FFFF] // surrogate
-	 * blocks, FFFE, and FFFF. [14] CharData ::= [^<&]* - ([^<&]* ']]>' [^<&]*)
-	 * 
-	 * We will use Char - ( [^<&] | ']' | #xA | #xD ) and handle the special
-	 * cases inline.
-	 */
-	private static final char fgCharDataRanges[] = {0x0020, 0x0025, // '&' is
-																	// 0x0026
-				0x0027, 0x003B, // '<' is 0x003C
-				0x003D, 0x005C, // ']' is 0x005D
-				0x005E, 0xD7FF, 0xE000, 0xFFFD, 0x0000, 0x0009, // tab
-				0x0000};
-	/*
-	 * [5] Name ::= (Letter | '_' | ':') (NameChar)* [4] NameChar ::= Letter |
-	 * Digit | '.' | '-' | '_' | ':' | CombiningChar | Extender [84] Letter
-	 * ::= BaseChar | Ideographic [85] BaseChar ::= <see standard> [86]
-	 * Ideographic ::= <see standard> [87] CombiningChar ::= <see standard>
-	 * [88] Digit ::= <see standard> [89] Extender ::= <see standard>
-	 */
-	private static final char fgInitialNameCharRanges[] = {
-	//
-				// Ranges:
-				//
-				// BaseChar ranges
-				//
-				0x0041, 0x005A, 0x0061, 0x007A, 0x00C0, 0x00D6, 0x00D8, 0x00F6, 0x00F8, 0x0131, 0x0134, 0x013E, 0x0141, 0x0148, 0x014A, 0x017E, 0x0180, 0x01C3, 0x01CD, 0x01F0, 0x01F4, 0x01F5, 0x01FA, 0x0217, 0x0250, 0x02A8, 0x02BB, 0x02C1, 0x0388, 0x038A, 0x038E, 0x03A1, 0x03A3, 0x03CE, 0x03D0, 0x03D6, 0x03E2, 0x03F3, 0x0401, 0x040C, 0x040E, 0x044F, 0x0451, 0x045C, 0x045E, 0x0481, 0x0490, 0x04C4, 0x04C7, 0x04C8, 0x04CB, 0x04CC, 0x04D0, 0x04EB, 0x04EE, 0x04F5, 0x04F8, 0x04F9, 0x0531, 0x0556, 0x0561, 0x0586, 0x05D0, 0x05EA, 0x05F0, 0x05F2, 0x0621, 0x063A, 0x0641, 0x064A, 0x0671, 0x06B7, 0x06BA, 0x06BE, 0x06C0, 0x06CE, 0x06D0, 0x06D3, 0x06E5, 0x06E6, 0x0905, 0x0939, 0x0958, 0x0961, 0x0985, 0x098C, 0x098F, 0x0990, 0x0993, 0x09A8, 0x09AA, 0x09B0, 0x09B6, 0x09B9, 0x09DC, 0x09DD, 0x09DF, 0x09E1, 0x09F0, 0x09F1, 0x0A05, 0x0A0A, 0x0A0F, 0x0A10, 0x0A13, 0x0A28, 0x0A2A, 0x0A30, 0x0A32, 0x0A33, 0x0A35, 0x0A36, 0x0A38, 0x0A39, 0x0A59, 0x0A5C, 0x0A72, 0x0A74, 0x0A85, 0x0A8B, 0x0A8F, 0x0A91,
-				0x0A93, 0x0AA8, 0x0AAA, 0x0AB0, 0x0AB2, 0x0AB3, 0x0AB5, 0x0AB9, 0x0B05, 0x0B0C, 0x0B0F, 0x0B10, 0x0B13, 0x0B28, 0x0B2A, 0x0B30, 0x0B32, 0x0B33, 0x0B36, 0x0B39, 0x0B5C, 0x0B5D, 0x0B5F, 0x0B61, 0x0B85, 0x0B8A, 0x0B8E, 0x0B90, 0x0B92, 0x0B95, 0x0B99, 0x0B9A, 0x0B9E, 0x0B9F, 0x0BA3, 0x0BA4, 0x0BA8, 0x0BAA, 0x0BAE, 0x0BB5, 0x0BB7, 0x0BB9, 0x0C05, 0x0C0C, 0x0C0E, 0x0C10, 0x0C12, 0x0C28, 0x0C2A, 0x0C33, 0x0C35, 0x0C39, 0x0C60, 0x0C61, 0x0C85, 0x0C8C, 0x0C8E, 0x0C90, 0x0C92, 0x0CA8, 0x0CAA, 0x0CB3, 0x0CB5, 0x0CB9, 0x0CE0, 0x0CE1, 0x0D05, 0x0D0C, 0x0D0E, 0x0D10, 0x0D12, 0x0D28, 0x0D2A, 0x0D39, 0x0D60, 0x0D61, 0x0E01, 0x0E2E, 0x0E32, 0x0E33, 0x0E40, 0x0E45, 0x0E81, 0x0E82, 0x0E87, 0x0E88, 0x0E94, 0x0E97, 0x0E99, 0x0E9F, 0x0EA1, 0x0EA3, 0x0EAA, 0x0EAB, 0x0EAD, 0x0EAE, 0x0EB2, 0x0EB3, 0x0EC0, 0x0EC4, 0x0F40, 0x0F47, 0x0F49, 0x0F69, 0x10A0, 0x10C5, 0x10D0, 0x10F6, 0x1102, 0x1103, 0x1105, 0x1107, 0x110B, 0x110C, 0x110E, 0x1112, 0x1154, 0x1155, 0x115F, 0x1161, 0x116D, 0x116E,
-				0x1172, 0x1173, 0x11AE, 0x11AF, 0x11B7, 0x11B8, 0x11BC, 0x11C2, 0x1E00, 0x1E9B, 0x1EA0, 0x1EF9, 0x1F00, 0x1F15, 0x1F18, 0x1F1D, 0x1F20, 0x1F45, 0x1F48, 0x1F4D, 0x1F50, 0x1F57, 0x1F5F, 0x1F7D, 0x1F80, 0x1FB4, 0x1FB6, 0x1FBC, 0x1FC2, 0x1FC4, 0x1FC6, 0x1FCC, 0x1FD0, 0x1FD3, 0x1FD6, 0x1FDB, 0x1FE0, 0x1FEC, 0x1FF2, 0x1FF4, 0x1FF6, 0x1FFC, 0x212A, 0x212B, 0x2180, 0x2182, 0x3041, 0x3094, 0x30A1, 0x30FA, 0x3105, 0x312C, 0xAC00, 0xD7A3,
-				//
-				// Ideographic ranges
-				//
-				0x3021, 0x3029, 0x4E00, 0x9FA5,
-				//
-				// Ranges end marker
-				//
-				0x0000,
-				//
-				// Single char values
-				//
-				0x003A, // ':'
-				0x005F, // '_'
-				//
-				// BaseChar singles
-				//
-				0x0386, 0x038C, 0x03DA, 0x03DC, 0x03DE, 0x03E0, 0x0559, 0x06D5, 0x093D, 0x09B2, 0x0A5E, 0x0A8D, 0x0ABD, 0x0AE0, 0x0B3D, 0x0B9C, 0x0CDE, 0x0E30, 0x0E84, 0x0E8A, 0x0E8D, 0x0EA5, 0x0EA7, 0x0EB0, 0x0EBD, 0x1100, 0x1109, 0x113C, 0x113E, 0x1140, 0x114C, 0x114E, 0x1150, 0x1159, 0x1163, 0x1165, 0x1167, 0x1169, 0x1175, 0x119E, 0x11A8, 0x11AB, 0x11BA, 0x11EB, 0x11F0, 0x11F9, 0x1F59, 0x1F5B, 0x1F5D, 0x1FBE, 0x2126, 0x212E,
-				//
-				// Ideographic singles
-				//
-				0x3007,
-				//
-				// Singles end marker
-				//
-				0x0000};
-	private static final char fgNameCharRanges[] = {
-	//
-				// Ranges:
-				//
-				0x002D, 0x002E, // '-' and '.'
-				//
-				// CombiningChar ranges
-				//
-				0x0300, 0x0345, 0x0360, 0x0361, 0x0483, 0x0486, 0x0591, 0x05A1, 0x05A3, 0x05B9, 0x05BB, 0x05BD, 0x05C1, 0x05C2, 0x064B, 0x0652, 0x06D6, 0x06DC, 0x06DD, 0x06DF, 0x06E0, 0x06E4, 0x06E7, 0x06E8, 0x06EA, 0x06ED, 0x0901, 0x0903, 0x093E, 0x094C, 0x0951, 0x0954, 0x0962, 0x0963, 0x0981, 0x0983, 0x09C0, 0x09C4, 0x09C7, 0x09C8, 0x09CB, 0x09CD, 0x09E2, 0x09E3, 0x0A40, 0x0A42, 0x0A47, 0x0A48, 0x0A4B, 0x0A4D, 0x0A70, 0x0A71, 0x0A81, 0x0A83, 0x0ABE, 0x0AC5, 0x0AC7, 0x0AC9, 0x0ACB, 0x0ACD, 0x0B01, 0x0B03, 0x0B3E, 0x0B43, 0x0B47, 0x0B48, 0x0B4B, 0x0B4D, 0x0B56, 0x0B57, 0x0B82, 0x0B83, 0x0BBE, 0x0BC2, 0x0BC6, 0x0BC8, 0x0BCA, 0x0BCD, 0x0C01, 0x0C03, 0x0C3E, 0x0C44, 0x0C46, 0x0C48, 0x0C4A, 0x0C4D, 0x0C55, 0x0C56, 0x0C82, 0x0C83, 0x0CBE, 0x0CC4, 0x0CC6, 0x0CC8, 0x0CCA, 0x0CCD, 0x0CD5, 0x0CD6, 0x0D02, 0x0D03, 0x0D3E, 0x0D43, 0x0D46, 0x0D48, 0x0D4A, 0x0D4D, 0x0E34, 0x0E3A, 0x0E47, 0x0E4E, 0x0EB4, 0x0EB9, 0x0EBB, 0x0EBC, 0x0EC8, 0x0ECD, 0x0F18, 0x0F19, 0x0F71, 0x0F84, 0x0F86, 0x0F8B,
-				0x0F90, 0x0F95, 0x0F99, 0x0FAD, 0x0FB1, 0x0FB7, 0x20D0, 0x20DC, 0x302A, 0x302F,
-				//
-				// Digit ranges
-				//
-				0x0030, 0x0039, 0x0660, 0x0669, 0x06F0, 0x06F9, 0x0966, 0x096F, 0x09E6, 0x09EF, 0x0A66, 0x0A6F, 0x0AE6, 0x0AEF, 0x0B66, 0x0B6F, 0x0BE7, 0x0BEF, 0x0C66, 0x0C6F, 0x0CE6, 0x0CEF, 0x0D66, 0x0D6F, 0x0E50, 0x0E59, 0x0ED0, 0x0ED9, 0x0F20, 0x0F29,
-				//
-				// Extender ranges
-				//
-				0x3031, 0x3035, 0x309D, 0x309E, 0x30FC, 0x30FE,
-				//
-				// Ranges end marker
-				//
-				0x0000,
-				//
-				// Single char values
-				//
-				// CombiningChar singles
-				//
-				0x05BF, 0x05C4, 0x0670, 0x093C, 0x094D, 0x09BC, 0x09BE, 0x09BF, 0x09D7, 0x0A02, 0x0A3C, 0x0A3E, 0x0A3F, 0x0ABC, 0x0B3C, 0x0BD7, 0x0D57, 0x0E31, 0x0EB1, 0x0F35, 0x0F37, 0x0F39, 0x0F3E, 0x0F3F, 0x0F97, 0x0FB9, 0x20E1, 0x3099, 0x309A,
-				//
-				// Extender singles
-				//
-				0x00B7, 0x02D0, 0x02D1, 0x0387, 0x0640, 0x0E46, 0x0EC6, 0x3005,
-				//
-				// Singles end marker
-				//
-				0x0000};
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/contenttype/ContentTypeIdForDTD.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/contenttype/ContentTypeIdForDTD.java
deleted file mode 100644
index e37e189..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/contenttype/ContentTypeIdForDTD.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.dtd.core.contenttype;
-
-/**
- * <p>
- * This class, with its one field, is a convenience to provide compile-time
- * safety when referring to the DTD contentType ID.
- * </p>
- * 
- * <p>
- * This class is not meant to be instantiated or subclassed.
- * </p>
- */
-
-public final class ContentTypeIdForDTD {
-	/**
-	 * The value of the ContentTypeID_DTD id field will match what is
-	 * specified in org.eclipse.wst.dtd.core/plugin.xml for the DTD content
-	 * type.
-	 * 
-	 * This value is intentionally set through a default protected method so
-	 * that it will not be inlined.
-	 */
-	public final static String ContentTypeID_DTD = getConstantString();
-
-	private ContentTypeIdForDTD() {
-		super();
-	}
-
-	/**
-	 * @return the DTD Content Type Identifier ID as a String
-	 */
-	static String getConstantString() {
-		return "org.eclipse.wst.dtd.core.dtdsource"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/document/DTDModel.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/document/DTDModel.java
deleted file mode 100644
index ce3c022..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/document/DTDModel.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.document;
-
-/**
- * <p>
- * An interface implemented by the SSE-based DTD model.
- * </p>
- * 
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- */
-public interface DTDModel {
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Attribute.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Attribute.java
deleted file mode 100644
index 5afcd50..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Attribute.java
+++ /dev/null
@@ -1,376 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.Hashtable;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-// base class for an Element's contentmodel
-public class Attribute extends DTDNode {
-
-	public static final String CDATA = DTDCorePlugin.getDTDString("_UI_CHARACTER_DATA_DESC"); //$NON-NLS-1$
-	public static final String ENTITIES = DTDCorePlugin.getDTDString("_UI_ENTITY_NAMES_DESC"); //$NON-NLS-1$
-	public static final String ENTITY = DTDCorePlugin.getDTDString("_UI_ENTITY_NAME_DESC"); //$NON-NLS-1$
-	public static final String ENUMERATED_NAME = DTDCorePlugin.getDTDString("_UI_ENUM_NAME_TOKENS_DESC"); //$NON-NLS-1$
-	public static final String ENUMERATED_NOTATION = DTDCorePlugin.getDTDString("_UI_ENUM_NOTATION_DESC"); //$NON-NLS-1$
-	public static final String FIXED = "#FIXED"; //$NON-NLS-1$
-	public static final String ID = DTDCorePlugin.getDTDString("_UI_IDENTIFIER_DESC"); //$NON-NLS-1$
-	public static final String IDREF = DTDCorePlugin.getDTDString("_UI_ID_REFERENCE_DESC"); //$NON-NLS-1$
-	public static final String IDREFS = DTDCorePlugin.getDTDString("_UI_ID_REFERENCES_DESC"); //$NON-NLS-1$
-
-	public static final String IMPLIED = "#IMPLIED"; //$NON-NLS-1$
-	public static final String NMTOKEN = DTDCorePlugin.getDTDString("_UI_NAME_TOKEN_DESC"); //$NON-NLS-1$
-	public static final String NMTOKENS = DTDCorePlugin.getDTDString("_UI_NAME_TOKENS_DESC"); //$NON-NLS-1$
-	public static final String REQUIRED = "#REQUIRED"; //$NON-NLS-1$
-
-	protected static Hashtable typeHash = new Hashtable();
-
-	public static final String[] types = {CDATA, ID, IDREF, IDREFS, ENTITY, ENTITIES, NMTOKEN, NMTOKENS, ENUMERATED_NAME, ENUMERATED_NOTATION};
-
-	{
-		typeHash.put(DTDRegionTypes.CDATA_KEYWORD, CDATA);
-		typeHash.put(DTDRegionTypes.ID_KEYWORD, ID);
-		typeHash.put(DTDRegionTypes.IDREF_KEYWORD, IDREF);
-		typeHash.put(DTDRegionTypes.IDREFS_KEYWORD, IDREFS);
-		typeHash.put(DTDRegionTypes.ENTITY_KEYWORD, ENTITY);
-		typeHash.put(DTDRegionTypes.ENTITIES_KEYWORD, ENTITIES);
-		typeHash.put(DTDRegionTypes.NMTOKEN_KEYWORD, NMTOKEN);
-		typeHash.put(DTDRegionTypes.NMTOKENS_KEYWORD, NMTOKENS);
-		typeHash.put(DTDRegionTypes.NOTATION_KEYWORD, ENUMERATED_NOTATION);
-		// this one's a special case since there is no keyword for
-		// enumerated name tokens
-		typeHash.put("()", ENUMERATED_NAME); //$NON-NLS-1$
-
-		// now put the reverse in place. This gives us a 2 way lookup
-		// for when we want to retrieve the value and when we want to set it
-		typeHash.put(CDATA, "CDATA"); //$NON-NLS-1$
-		typeHash.put(ID, "ID"); //$NON-NLS-1$
-		typeHash.put(IDREF, "IDREF"); //$NON-NLS-1$
-		typeHash.put(IDREFS, "IDREFS"); //$NON-NLS-1$
-		typeHash.put(ENTITY, "ENTITY"); //$NON-NLS-1$
-		typeHash.put(ENTITIES, "ENTITIES"); //$NON-NLS-1$
-		typeHash.put(NMTOKEN, "NMTOKEN"); //$NON-NLS-1$
-		typeHash.put(NMTOKENS, "NMTOKENS"); //$NON-NLS-1$
-		typeHash.put(ENUMERATED_NAME, ""); //$NON-NLS-1$
-		typeHash.put(ENUMERATED_NOTATION, "NOTATION"); //$NON-NLS-1$
-	}
-
-	private AttributeEnumList enumList = null;
-
-	// public static final String IMPLIED = "IMPLIED";
-
-	public Attribute(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode);
-	}
-
-	public String getDefaultKind() {
-		ITextRegion defaultKindRegion = getDefaultKindRegion();
-		if (defaultKindRegion != null) {
-			return getStructuredDTDDocumentRegion().getText(defaultKindRegion);
-		}
-
-		return ""; //$NON-NLS-1$
-	}
-
-	public ITextRegion getDefaultKindRegion() {
-		RegionIterator iter = iterator();
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (region.getType() == DTDRegionTypes.IMPLIED_KEYWORD || region.getType() == DTDRegionTypes.REQUIRED_KEYWORD || region.getType() == DTDRegionTypes.FIXED_KEYWORD) {
-				return region;
-			}
-		}
-		return null;
-	}
-
-	public String getDefaultValue() {
-		ITextRegion defaultValue = getNextQuotedLiteral(iterator());
-		if (defaultValue != null) {
-			return getValueFromQuotedRegion(defaultValue);
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public AttributeEnumList getEnumList() {
-		return enumList;
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.ATTRIBUTEICON);
-	}
-
-	public ITextRegion getNameRegion() {
-		return getNextRegion(iterator(), DTDRegionTypes.ATTRIBUTE_NAME);
-	}
-
-	public ITextRegion getNextQuotedLiteral(RegionIterator iter) {
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (region.getType().equals(DTDRegionTypes.SINGLEQUOTED_LITERAL) || region.getType().equals(DTDRegionTypes.DOUBLEQUOTED_LITERAL)) {
-				return region;
-			}
-		}
-		return null;
-	}
-
-	protected int getOffsetAfterType() {
-		ITextRegion typeRegion = getTypeRegion();
-
-		String type = getType();
-		boolean isEnumeration = type.equals(ENUMERATED_NAME) || type.equals(ENUMERATED_NOTATION);
-		if (isEnumeration) {
-			// now check if maybe this is an enumeration
-			if (getEnumList() != null) {
-				return getEnumList().getEndOffset();
-			}
-		}
-		if (typeRegion != null) {
-			return getStructuredDTDDocumentRegion().getEndOffset(typeRegion);
-		}
-		else {
-			ITextRegion nameRegion = getNameRegion();
-			return getStructuredDTDDocumentRegion().getEndOffset(nameRegion);
-			// // create one
-			// typeRegion =
-			// findOrCreateTypeRegion((String)typeHash.get(CDATA));
-		}
-	}
-
-	public String getType() {
-		ITextRegion region = getTypeRegion();
-		if (region != null) {
-			String type = (String) typeHash.get(region.getType());
-			if (type == null) {
-				// just return the text of the type region since this may be
-				// an entity representing the type;
-				return getStructuredDTDDocumentRegion().getText(region);
-			}
-			return type;
-		}
-		else if (getEnumList() != null) {
-			// enumerated name tokens don't have a type keyword. just
-			// the existence of the left paren is enough
-			return (String) typeHash.get("()"); //$NON-NLS-1$
-		}
-
-		return ""; //$NON-NLS-1$
-	}
-
-	public ITextRegion getTypeRegion() {
-		RegionIterator iter = iterator();
-
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (region.getType() == DTDRegionTypes.CDATA_KEYWORD || region.getType() == DTDRegionTypes.ID_KEYWORD || region.getType() == DTDRegionTypes.IDREF_KEYWORD || region.getType() == DTDRegionTypes.IDREFS_KEYWORD || region.getType() == DTDRegionTypes.ENTITY_KEYWORD || region.getType() == DTDRegionTypes.ENTITIES_KEYWORD || region.getType() == DTDRegionTypes.NMTOKEN_KEYWORD || region.getType() == DTDRegionTypes.NMTOKENS_KEYWORD || region.getType() == DTDRegionTypes.NOTATION_KEYWORD || region.getType() == DTDRegionTypes.PARM_ENTITY_TYPE) {
-				return region;
-			}
-		}
-		return null;
-	}
-
-	public String getValueFromQuotedRegion(ITextRegion region) {
-		String type = region.getType();
-		if (type.equals(DTDRegionTypes.SINGLEQUOTED_LITERAL) || type.equals(DTDRegionTypes.DOUBLEQUOTED_LITERAL)) {
-			String text = getStructuredDTDDocumentRegion().getText(region);
-			return text.substring(1, text.length() - 1);
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public void resolveRegions() {
-		removeChildNodes();
-		RegionIterator iter = iterator();
-
-		while (iter.hasNext()) {
-			ITextRegion currentRegion = iter.next();
-			if (currentRegion.getType().equals(DTDRegionTypes.LEFT_PAREN)) {
-				enumList = new AttributeEnumList(getDTDFile(), getStructuredDTDDocumentRegion());
-			}
-			if (enumList != null) {
-				enumList.addRegion(currentRegion);
-				if (currentRegion.getType() == DTDRegionTypes.RIGHT_PAREN) {
-					return;
-				}
-			}
-		}
-
-	}
-
-	public void setDefaultKind(Object requestor, String kind) {
-
-		ITextRegion defaultKindRegion = getDefaultKindRegion();
-		String oldDefaultKind = defaultKindRegion == null ? "" : getStructuredDTDDocumentRegion().getText(defaultKindRegion); //$NON-NLS-1$
-		if (!kind.equals(oldDefaultKind)) {
-			String newText = kind;
-			int startOffset = 0;
-			int length = 0;
-			if (defaultKindRegion != null) {
-				startOffset = getStructuredDTDDocumentRegion().getStartOffset(defaultKindRegion);
-				length = getStructuredDTDDocumentRegion().getEndOffset(defaultKindRegion) - startOffset;
-			}
-			else {
-				startOffset = getOffsetAfterType();
-				newText = " " + newText; //$NON-NLS-1$
-			}
-
-			ITextRegion defaultValue = getNextQuotedLiteral(iterator());
-
-			if (kind.equals(Attribute.FIXED) || kind.equals("")) { //$NON-NLS-1$
-				if (defaultValue == null) {
-					// we are changing to fixed and wehave no quoted region.
-					// put in an empty value
-					newText += " \"\""; //$NON-NLS-1$
-				}
-			}
-			else {
-				if (defaultValue != null) {
-					length = getStructuredDTDDocumentRegion().getEndOffset(defaultValue) - startOffset;
-				}
-			}
-			replaceText(requestor, startOffset, length, newText);
-			// do something if there is no "kind" region
-		}
-	}
-
-	public void setDefaultKind(String kind) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ATTR_DEFAULT_KIND")); //$NON-NLS-1$
-		setDefaultKind(this, kind);
-		endRecording(this);
-	}
-
-	public void setDefaultValue(Object requestor, String value, boolean fixed) {
-		ITextRegion defaultValue = getNextQuotedLiteral(iterator());
-		String quoteChar = value.indexOf("\"") == -1 ? "\"" : "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		int startOffset = 0;
-		int endOffset = 0;
-		String newText = ""; //$NON-NLS-1$
-
-		String oldValue = getDefaultValue();
-		boolean oldKindIsFixed = getDefaultKind().equals(Attribute.FIXED);
-		if (oldValue.equals(value) && fixed == oldKindIsFixed) {
-			// nothing to do
-			return;
-		}
-
-		if (defaultValue != null) {
-			startOffset = getStructuredDTDDocumentRegion().getStartOffset(defaultValue);
-			endOffset = getStructuredDTDDocumentRegion().getEndOffset(defaultValue);
-		}
-
-		ITextRegion defaultKindRegion = getDefaultKindRegion();
-		if (defaultKindRegion != null) {
-			startOffset = getStructuredDTDDocumentRegion().getStartOffset(defaultKindRegion);
-			endOffset = endOffset == 0 ? getStructuredDTDDocumentRegion().getEndOffset(defaultKindRegion) : endOffset;
-		}
-		else {
-			if (startOffset == 0) {
-				endOffset = startOffset = getOffsetAfterType();
-				newText += " "; //$NON-NLS-1$
-			}
-			ITextRegion typeRegion = getTypeRegion();
-			if (typeRegion == null && getEnumList() == null) {
-				// tack on a default type
-				// newText += "CDATA ";
-			}
-		}
-		if (fixed) {
-			newText += "#FIXED "; //$NON-NLS-1$
-		}
-		else {
-			if (getDefaultKind().equals("") && value.equals("")) { //$NON-NLS-1$ //$NON-NLS-2$
-				// if not fixed and value is "" then reset the default kind to
-				// implied
-				newText += "#IMPLIED"; //$NON-NLS-1$
-			}
-		}
-
-		if (!getType().equals("") && !value.equals("")) { //$NON-NLS-1$ //$NON-NLS-2$
-			newText += quoteChar + value + quoteChar;
-		}
-		replaceText(requestor, startOffset, endOffset - startOffset, newText);
-	}
-
-	public void setDefaultValue(String value, boolean fixed) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ATTR_DEFAULT_VAL")); //$NON-NLS-1$
-		setDefaultValue(this, value, fixed);
-		endRecording(this);
-	}
-
-	public void setType(Object requestor, String type) {
-		String oldType = getType();
-		if (!type.equals(oldType)) {
-			boolean wasEnumeration = oldType.equals(ENUMERATED_NAME) || oldType.equals(ENUMERATED_NOTATION);
-			boolean isEnumeration = type.equals(ENUMERATED_NAME) || type.equals(ENUMERATED_NOTATION);
-			String newText = ""; //$NON-NLS-1$
-			int startOffset = 0;
-			int endOffset = 0;
-
-			if (wasEnumeration && !isEnumeration) {
-				// get rid of the old enumlist
-				AttributeEnumList enumList = getEnumList();
-				if (enumList != null) {
-					startOffset = enumList.getStartOffset();
-					endOffset = enumList.getEndOffset();
-				}
-			}
-
-			ITextRegion region = getTypeRegion();
-			if (region != null) {
-				startOffset = getStructuredDTDDocumentRegion().getStartOffset(region);
-				if (endOffset == 0) {
-					endOffset = getStructuredDTDDocumentRegion().getEndOffset(region);
-				}
-			}
-			else if (startOffset == 0) {
-				ITextRegion nameRegion = getNameRegion();
-				newText += " "; //$NON-NLS-1$
-				endOffset = startOffset = getStructuredDTDDocumentRegion().getEndOffset(nameRegion);
-			}
-
-			String newTypeWord = (String) typeHash.get(type);
-			if (newTypeWord == null) {
-				// then this must be a parm entity being used in the type
-				// use the type text directly
-				newTypeWord = type;
-			}
-
-			newText += newTypeWord;
-
-			if (isEnumeration && !wasEnumeration) {
-				// put in a new numlist
-				boolean isSpaceNeeded = !type.equals(ENUMERATED_NAME);
-				newText += isSpaceNeeded ? " " : ""; //$NON-NLS-1$ //$NON-NLS-2$
-				newText += "()"; //$NON-NLS-1$
-			}
-			replaceText(requestor, startOffset, endOffset - startOffset, newText);
-			if (newTypeWord.equals("") && !type.equals(ENUMERATED_NAME)) { //$NON-NLS-1$
-				// the set the defaultkind to ""
-				// setDefaultKind(requestor, "");
-				setDefaultValue(requestor, "", false); //$NON-NLS-1$
-			}
-
-		}
-	}
-
-	public void setType(String type) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ATTR_TYPE")); //$NON-NLS-1$
-		setType(this, type);
-		endRecording(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/AttributeEnumList.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/AttributeEnumList.java
deleted file mode 100644
index ac3b096..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/AttributeEnumList.java
+++ /dev/null
@@ -1,72 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public class AttributeEnumList extends DTDNode {
-
-	private ArrayList list = new ArrayList();
-
-	public AttributeEnumList(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode);
-	}
-
-	public Image getImage() {
-		// never exposed in tree
-		return null;
-	}
-
-	// return the items that are in this enumerated list
-	public List getItems() {
-		list.clear();
-		RegionIterator iter = iterator();
-		while (iter.hasNext()) {
-			ITextRegion name = getNextRegion(iter, DTDRegionTypes.NAME);
-			if (name != null) {
-				list.add(getStructuredDTDDocumentRegion().getText(name));
-			}
-		}
-		return list;
-	}
-
-	public void setItems(Object requestor, String[] items) {
-		if (items != null) {
-			String text = "("; //$NON-NLS-1$
-			for (int i = 0; i < items.length; i++) {
-				if (i > 0) {
-					text += " | " + items[i]; //$NON-NLS-1$
-				}
-				else {
-					text += items[i];
-				}
-			}
-			text += ")"; //$NON-NLS-1$
-			replaceText(requestor, getStartOffset(), getNodeLength(), text);
-		}
-	}
-
-	public void setItems(String[] items) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ATTR_ENUM_ITEMS")); //$NON-NLS-1$
-		setItems(this, items);
-		endRecording(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/AttributeList.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/AttributeList.java
deleted file mode 100644
index 6d1036e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/AttributeList.java
+++ /dev/null
@@ -1,118 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.ArrayList;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public class AttributeList extends NamedTopLevelNode {
-	public AttributeList(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode, DTDRegionTypes.ATTLIST_TAG);
-	}
-
-	public void addAttribute(String name) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ATTR_LIST_ADD")); //$NON-NLS-1$
-
-		DTDNode lastAttribute = (DTDNode) getLastChild();
-		if (lastAttribute != null) {
-			replaceText(this, lastAttribute.getEndOffset(), 0, "\n\t" + name + " CDATA #IMPLIED"); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		else {
-			ITextRegion nameRegion = getNameRegion();
-			if (nameRegion != null) {
-				replaceText(this, getStructuredDTDDocumentRegion().getEndOffset(nameRegion), 0, "\n\t" + name + " CDATA #IMPLIED"); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-
-		}
-
-		endRecording(this);
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.ATTRIBUTELISTICON);
-	}
-
-	public void insertIntoModel(Object requestor, Attribute reference, Attribute node, boolean isAfter) {
-		int offset = 0;
-		String newText = ""; //$NON-NLS-1$
-		String nodeText = node.getFullNodeText();
-		if (!isAfter) {
-			offset = reference.getStartOffset();
-		}
-		else {
-			// try and get next child
-			Attribute attr = (Attribute) reference.getNextSibling();
-			if (attr != null) {
-				offset = attr.getStartOffset();
-			}
-			else {
-				// just use the end offset
-				offset = reference.getWhitespaceEndOffset();
-			}
-		}
-		newText += nodeText;// + (isLastChild ? "\n" : "\n\t");
-		if (!node.hasTrailingWhitespace()) {
-			newText += "\n\t"; //$NON-NLS-1$
-		}
-		replaceText(requestor, offset, 0, newText);
-	}
-
-	public void resolveRegions() {
-		removeChildNodes();
-		RegionIterator iter = iterator();
-
-		if (getNameRegion() != null) {
-			// we skip past the name token is our name
-			skipPastName(iter);
-		}
-
-		ArrayList children = new ArrayList();
-		Attribute attribute = null;
-		boolean trailingWhitespace = false;
-		while (iter.hasNext()) {
-			ITextRegion currentRegion = iter.next();
-			if (currentRegion.getType().equals(DTDRegionTypes.ATTRIBUTE_NAME)) {
-				attribute = new Attribute(getDTDFile(), getStructuredDTDDocumentRegion());
-				children.add(attribute);
-				appendChild(attribute);
-				trailingWhitespace = false;
-			}
-			if (attribute != null && currentRegion.getType() != DTDRegionTypes.END_TAG) {
-				if (!trailingWhitespace) {
-					attribute.addRegion(currentRegion);
-				}
-				else {
-					if (currentRegion.getType() == DTDRegionTypes.WHITESPACE) {
-						attribute.addWhitespaceRegion(currentRegion);
-					}
-				}
-
-				// the following prevents extra whitespace from being picked
-				// up by the attribute
-				if (currentRegion.getType() == DTDRegionTypes.REQUIRED_KEYWORD || currentRegion.getType() == DTDRegionTypes.IMPLIED_KEYWORD || currentRegion.getType() == DTDRegionTypes.SINGLEQUOTED_LITERAL || currentRegion.getType() == DTDRegionTypes.DOUBLEQUOTED_LITERAL) {
-					trailingWhitespace = true;
-				}
-			}
-		}
-		int numKids = children.size();
-		for (int i = 0; i < numKids; i++) {
-			((Attribute) children.get(i)).resolveRegions();
-		} // end of for ()
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMBasicNode.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMBasicNode.java
deleted file mode 100644
index 918db18..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMBasicNode.java
+++ /dev/null
@@ -1,165 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-/*
- * CMBasicNode combines all the different content types into one. The idea
- * behind this is to allow arbitrary name changes to not require a tree
- * update.
- */
-public class CMBasicNode extends CMRepeatableNode {
-
-	// static final int EMPTY = 0;
-	// static final int ANY = 1;
-	// static final int PCDATA = 2;
-
-	public CMBasicNode(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode);
-	}
-
-	public Image getImage() {
-		final String name = getName();
-		ITextRegion pcdata = getNextRegion(iterator(), DTDRegionTypes.CONTENT_PCDATA);
-		if (pcdata != null) {
-			return DTDCorePlugin.getInstance().getImage(DTDResource.PCDATAICON);
-		}
-
-		if (isRootElementContent()) {
-			if (name.equals(EMPTY)) {
-				return DTDCorePlugin.getInstance().getImage(DTDResource.EMPTYICON);
-			}
-			else if (name.equals(ANY)) {
-				return DTDCorePlugin.getInstance().getImage(DTDResource.ANYICON);
-			}
-		}
-
-		// Otherwise this is just an element reference node. Just return
-		// what CMRepeatableNode would give us
-		return super.getImage();
-	}
-
-	public ITextRegion getNameRegion() {
-		RegionIterator iter = iterator();
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (region.getType() == DTDRegionTypes.NAME || region.getType() == DTDRegionTypes.CONTENT_PCDATA) {
-				return region;
-			}
-		}
-		return null;
-	}
-
-	// returns the occurrencetoken, or the token where the occurrence token
-	// should appear after
-	public ITextRegion getOccurrenceRegion() {
-		RegionIterator iter = iterator();
-		skipPastName(iter);
-		if (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (region.getType() == DTDRegionTypes.OCCUR_TYPE) {
-				return region;
-			}
-		}
-		return getNameRegion();
-	}
-
-	public String getType() {
-		ITextRegion pcdata = getNextRegion(iterator(), DTDRegionTypes.CONTENT_PCDATA);
-		if (pcdata != null) {
-			return PCDATA;
-		}
-
-		if (isRootElementContent()) {
-			final String name = getName();
-			if (isRootElementContent()) {
-				if (name.equals(EMPTY)) {
-					return EMPTY;
-				}
-				else if (name.equals(ANY)) {
-					return ANY;
-				}
-				else {
-					// otherwise just return it's name as the type
-					return name;
-				}
-
-			}
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public boolean isEmptyAnyOrPCData() {
-		if (isPCData()) {
-			return true;
-		}
-
-
-		final String name = getName();
-		if (isRootElementContent()) {
-			if (name.equals(EMPTY) || name.equals(ANY)) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	public boolean isPCData() {
-		ITextRegion pcdata = getNextRegion(iterator(), DTDRegionTypes.CONTENT_PCDATA);
-		if (pcdata != null) {
-			return true;
-		}
-		return false;
-	}
-
-	// public Node insertRegion(Region token)
-	// {
-	// if (!tokenStream.containsToken(token) && token.getType() ==
-	// Token.OCCUR_TYPE)
-	// {
-	// // then add it so that our range contains it
-	// insertIntoTokenStream(token);
-	// }
-	// return this;
-	// }
-
-	public boolean isReference() {
-		return !isEmptyAnyOrPCData();
-	}
-
-	public void setName(Object requestor, String name) {
-		// beginRecording(requestor, "Name Change");
-
-		super.setName(requestor, name);
-		if (!isReference()) {
-			// if it is no longer a reference node, remove the occurrence
-			// token
-			setOccurrence(requestor, CMRepeatableNode.ONCE);
-		}
-
-		// endRecording(requestor);
-	}
-
-	/*
-	 * public static String getName(int type) { switch (type) { case EMPTY:
-	 * return emptyString; case ANY: return anyString; case PCDATA: return
-	 * pcdataString; default: break; } // end of switch () return ""; }
-	 */
-
-}// CMBasicNode
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMGroupNode.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMGroupNode.java
deleted file mode 100644
index d39c461..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMGroupNode.java
+++ /dev/null
@@ -1,430 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.List;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.dtd.core.internal.util.DTDUniqueNameHelper;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public class CMGroupNode extends CMRepeatableNode {
-
-	public static final char CHOICE = '|';
-	public static final char SEQUENCE = ',';
-
-	protected char connector = SEQUENCE;
-
-	// protected ArrayList children = new ArrayList();
-
-	public CMGroupNode(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode);
-	}
-
-	public void addChild() {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_GRP_NODE_ADD_CHILD")); //$NON-NLS-1$
-		DTDNode lastNode = (DTDNode) getLastChild();
-		String elementName = DTDUniqueNameHelper.getUniqueName(getChildrenList(), "ChildNode"); //$NON-NLS-1$
-		if (lastNode != null) {
-			replaceText(this, lastNode.getEndOffset(), 0, String.valueOf(getConnector()) + elementName); //$NON-NLS-1$
-		}
-		else {
-			replaceText(this, getStartOffset() + 1, 0, elementName); //$NON-NLS-1$
-		}
-
-		endRecording(this);
-	}
-
-	public void addGroup() {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_GRP_NODE_ADD_GRP")); //$NON-NLS-1$
-		DTDNode lastNode = (DTDNode) getLastChild();
-		if (lastNode != null) {
-			replaceText(this, lastNode.getEndOffset(), 0, String.valueOf(getConnector()) + " ()"); //$NON-NLS-1$
-		}
-		else {
-			replaceText(this, getStartOffset() + 1, 0, "()"); //$NON-NLS-1$
-		}
-
-		endRecording(this);
-	}
-
-	public void delete(Object requestor, DTDNode child) {
-		Object[] children = getChildren();
-
-		if (children.length == 1 && getFirstChild() == child) {
-			replaceText(requestor, child.getStartOffset(), child.getNodeLength(), null);
-			return;
-		}
-
-		for (int i = 0; i < children.length - 1; i++) {
-			DTDNode childA = (DTDNode) children[i];
-			DTDNode childB = (DTDNode) children[i + 1];
-
-			boolean childADeleted = childA == child;
-			boolean childBDeleted = childB == child;
-			if (childADeleted || childBDeleted) {
-				// we found the child
-				int startOffset = childADeleted ? childA.getStartOffset() : childA.getEndOffset();
-				int endOffset = childADeleted ? childB.getStartOffset() : childB.getEndOffset();
-				replaceText(requestor, startOffset, endOffset - startOffset, ""); //$NON-NLS-1$
-				removeChild(child);
-				break;
-			}
-		}
-	}
-
-	/**
-	 * Get the value of connector.
-	 * 
-	 * @return value of connector.
-	 */
-	public char getConnector() {
-		Object[] children = getChildren();
-		for (int i = 0; i < children.length - 1; i++) {
-			DTDNode childA = (DTDNode) children[i];
-			DTDNode childB = (DTDNode) children[i + 1];
-
-			// create a stream between the two siblings and walk it
-			// note that this stream includes the last region of the first
-			// sibling and the first region of the next sibling.
-			// both these should be ignored
-			RegionIterator iter = new RegionIterator(getStructuredDTDDocumentRegion(), childA.getEndOffset(), childB.getStartOffset());
-			// stream.setFirstRegion(childA.getLastRegion());
-			// stream.setLastRegion(childB.getFirstRegion());
-			// Iterator iter = stream.iterator();
-			// skip the first region which is the last region of childA
-			// do we need this now ?
-			// iter.next();
-			ITextRegion currentRegion = null;
-			while (iter.hasNext() && currentRegion != childB.getStartRegion()) {
-				currentRegion = iter.next();
-				if (currentRegion.getType() == DTDRegionTypes.CONNECTOR) {
-					connector = getStructuredDTDDocumentRegion().getText(currentRegion).charAt(0);
-					return connector;
-				}
-			}
-		}
-		return connector;
-	}
-
-	public Image getImage() {
-		DTDCorePlugin resourcePlugin = DTDCorePlugin.getInstance();
-		switch (getConnector()) {
-			case SEQUENCE :
-				return resourcePlugin.getImage(DTDResource.ONESEQUENCEICON);
-			/*
-			 * switch (getOccurrence()) { case ONCE : return
-			 * resourcePlugin.getImage(DTDResource.ONESEQUENCEICON); case
-			 * OPTIONAL : return
-			 * resourcePlugin.getImage(DTDResource.OPTIONALSEQUENCEICON); case
-			 * ONE_OR_MORE : return
-			 * resourcePlugin.getImage(DTDResource.ONEORMORESEQUENCEICON);
-			 * case ZERO_OR_MORE : return
-			 * resourcePlugin.getImage(DTDResource.ZEROORMORESEQUENCEICON); }
-			 */
-			case CHOICE :
-				return resourcePlugin.getImage(DTDResource.ONECHOICEICON);
-		/*
-		 * switch (getOccurrence()) { case ONCE : return
-		 * resourcePlugin.getImage(DTDResource.ONECHOICEICON); case OPTIONAL :
-		 * return resourcePlugin.getImage(DTDResource.OPTIONALCHOICEICON);
-		 * case ONE_OR_MORE : return
-		 * resourcePlugin.getImage(DTDResource.ONEORMORECHOICEICON); case
-		 * ZERO_OR_MORE : return
-		 * resourcePlugin.getImage(DTDResource.ZEROORMORECHOICEICON); }
-		 */
-		}
-		return null;
-	}
-
-	public String getName() {
-		return ""; //$NON-NLS-1$
-	}
-
-	// returns the occurrenceregion, or the last region where the occurrence
-	// region should appear after
-	public ITextRegion getOccurrenceRegion() {
-		int nesting = 0;
-
-		// we skip past the first left paren we see since that is the
-		// beginning of our own node
-		RegionIterator iter = iterator();
-		// we assume the first region is the '('
-		iter.next();
-		ITextRegion currentRegion = null;
-		while (iter.hasNext() && nesting >= 0) {
-			currentRegion = iter.next();
-			if (currentRegion.getType() == DTDRegionTypes.LEFT_PAREN) {
-				nesting++;
-			}
-			if (currentRegion.getType() == DTDRegionTypes.RIGHT_PAREN) {
-				nesting--;
-			}
-		}
-		if (nesting < 0) {
-			// This means we have passed over the right paren that marks the
-			// end of our grouping.
-			// Look for an occurrence region
-			while (iter.hasNext()) {
-				currentRegion = iter.next();
-				if (currentRegion.getType() == DTDRegionTypes.OCCUR_TYPE) {
-					return currentRegion;
-				}
-			}
-		}
-		// if we're here, this means that there is no occur region. return the
-		// last region
-		return iter.previous();
-	}
-
-	public String getType() {
-		if (isRootElementContent()) {
-			if (getFirstChild() != null) {
-				CMNode node = (CMNode) getFirstChild();
-				if (node.getType().equals(PCDATA)) {
-					return MIXED;
-				}
-				else {
-					return CHILDREN;
-				}
-			}
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public void insertChildNode(Object requestor, String nodeText, int position) {
-		Object[] children = getChildren();
-
-		int startOffset = 0;
-		String newText = ""; //$NON-NLS-1$
-		if (position < children.length) {
-			DTDNode reference = (DTDNode) children[position];
-			startOffset = reference.getStartOffset();
-			newText = nodeText + " " + String.valueOf(getConnector()) + " "; //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		else if (position == children.length) {
-			// add to end
-			DTDNode reference = (DTDNode) children[position - 1];
-			startOffset = reference.getEndOffset();
-			newText = " " + String.valueOf(getConnector()) + " " + nodeText; //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		replaceText(requestor, startOffset, 0, newText);
-	}
-
-	public void insertChildNode(String nodeText, int position) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_GRP_NODE_INSERT_ELEMENT")); //$NON-NLS-1$
-		insertChildNode(this, nodeText, position);
-		endRecording(this);
-	}
-
-	public void insertIntoModel(Object requestor, CMNode reference, CMNode node, boolean isAfter) {
-		String nodeText = node.getNodeText();
-		List children = getChildrenList();
-
-		int index = children.indexOf(reference);
-		if (index == -1) {
-			// no reference node, add it to the end??
-			index = children.size();
-		}
-		else {
-			// got an index. if we want to add after, increase by 1
-			index = isAfter ? index + 1 : index;
-		}
-		insertChildNode(requestor, nodeText, index);
-	}
-
-	public void resolveRegions() {
-		int nesting = 0;
-		// children.clear();
-		removeChildNodes();
-		DTDNode currentGroupNode = null;
-		CMBasicNode currentReferenceNode = null;
-		RegionIterator iter = iterator();
-		// we assume the first region is the '('
-		iter.next();
-		while (iter.hasNext() && nesting >= 0) {
-			ITextRegion currentRegion = iter.next();
-			if (nesting == 0) {
-				if (currentRegion.getType().equals(DTDRegionTypes.CONTENT_PCDATA)) {
-					currentGroupNode = currentReferenceNode = null;
-					DTDNode pcData = new CMBasicNode(getDTDFile(), getStructuredDTDDocumentRegion());
-					pcData.addRegion(currentRegion);
-					appendChild(pcData);
-					// children.add(pcData);
-				}
-				else if (currentRegion.getType().equals(DTDRegionTypes.NAME)) {
-					// we have hit a new reference node. Make sure we reset
-					// the groupnode var so it doesn't collect more regions
-					currentGroupNode = null;
-					currentReferenceNode = new CMBasicNode(getDTDFile(), getStructuredDTDDocumentRegion());
-					currentReferenceNode.addRegion(currentRegion);
-					appendChild(currentReferenceNode);
-					// children.add(currentReferenceNode);
-				}
-				else if (currentRegion.getType().equals(DTDRegionTypes.OCCUR_TYPE)) {
-					// we could potentially flag an error here if we hit an
-					// occurrence type and currentRefNode and currentGroupNode
-					// are null
-					if (currentReferenceNode != null) {
-						// currentReferenceNode.setOccurrence(currentRegion.getText().toCharArray()[0]);
-						currentReferenceNode.addRegion(currentRegion);
-						currentReferenceNode = null;
-					}
-				}
-				else if (currentRegion.getType().equals(DTDRegionTypes.CONNECTOR)) {
-					// note that if connector is already set and it is
-					// different from the current connector region, then we
-					// have an error!
-					// setConnector(currentRegion.getText().toCharArray()[0]);
-				}
-				else if (currentRegion.getType().equals(DTDRegionTypes.LEFT_PAREN)) {
-					if (currentGroupNode == null) {
-						// we have hit a new group. Make sure we reset the
-						// referencenode var so it doesn't collect any more
-						// regions
-						currentReferenceNode = null;
-						currentGroupNode = new CMGroupNode(getDTDFile(), getStructuredDTDDocumentRegion());
-						appendChild(currentGroupNode);
-						// children.add(currentGroupNode);
-					}
-				}
-			}
-
-			if (currentRegion.getType().equals(DTDRegionTypes.LEFT_PAREN)) {
-				nesting++;
-			}
-			if (currentRegion.getType().equals(DTDRegionTypes.RIGHT_PAREN)) {
-				nesting--;
-				if (nesting == 0 && currentGroupNode != null) {
-					currentGroupNode.addRegion(currentRegion);
-					// peek at next region to see if it is an occur region. if
-					// so, add it to the groupnode
-					if (iter.hasNext()) {
-						ITextRegion nextRegion = iter.next();
-						if (nextRegion.getType().equals(DTDRegionTypes.OCCUR_TYPE)) {
-							currentGroupNode.addRegion(nextRegion);
-						}
-						else {
-							// Otherwise, push it back as the next item to be
-							// retrieved by a future next() call
-							iter.previous();
-						}
-					}
-					currentGroupNode = null;
-				}
-			}
-			if (currentGroupNode != null) {
-				currentGroupNode.addRegion(currentRegion);
-			}
-		}
-
-		if (nesting < 0) {
-			// This means we have passed over the right paren that marks the
-			// end of our grouping.
-			// Look for an occurrence region
-			while (iter.hasNext()) {
-				ITextRegion currentRegion = iter.next();
-				if (currentRegion.getType().equals(DTDRegionTypes.OCCUR_TYPE)) {
-					// setOccurrence(currentRegion.getText().toCharArray()[0]);
-				}
-			} // end of while ()
-		}
-
-		// for (org.w3c.dom.Node child = getFirstChild(); child != null; child
-		// = child.getNextSibling())
-		// {
-		// System.out.println("child found = " + child);
-		// }
-
-		Object[] children = getChildren();
-		// System.out.println("children legnth = " + children.length);
-
-		for (int i = 0; i < children.length; i++) {
-			DTDNode currentNode = (DTDNode) children[i];
-			currentNode.resolveRegions();
-		} // end of while ()
-
-	}
-
-	/**
-	 * Set the value of connector.
-	 * 
-	 * @param v
-	 *            Value to assign to connector.
-	 */
-	public void setConnector(char v) {
-		if (connector != v) {
-			connector = v;
-			// walk through our kids and see if there is a connector between
-			// each sibling. if not, create one and set the connector. if
-			// there is
-			// then just change the text of the connector
-			Object[] children = getChildren();
-			if (children.length <= 1) {
-				// there won't be any connector existing between the children
-				// just notify a change in the node and return;
-				getDTDFile().notifyNodeChanged(this);
-				return;
-			}
-			beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_GRP_NODE_CONNECTOR")); //$NON-NLS-1$
-			for (int i = 0; i < children.length - 1; i++) {
-				DTDNode childA = (DTDNode) children[i];
-				DTDNode childB = (DTDNode) children[i + 1];
-
-				// create a stream between the two siblings and walk it
-				// note that this stream includes the last region of the first
-				// sibling and the first region of the next sibling.
-				// both these should be ignored
-				RegionIterator iter = new RegionIterator(getStructuredDTDDocumentRegion(), childA.getEndOffset(), childB.getStartOffset());
-				// skip the first region which is the last region of childA
-
-				// do we still need this
-				// iter.next();
-				ITextRegion currentRegion = null;
-				boolean foundConnector = false;
-				while (iter.hasNext() && currentRegion != childB.getStartRegion()) {
-					currentRegion = iter.next();
-					if (currentRegion.getType() == DTDRegionTypes.CONNECTOR) {
-						foundConnector = true;
-						// Region oldRegion = currentRegion.createCopy();
-						// found a connector! on to the next sibling pair
-						// currentRegion.updateText(String.valueOf(v));
-						replaceText(this, getStructuredDTDDocumentRegion().getStartOffset(currentRegion), 1, String.valueOf(connector));
-						// changeStructuredDocument(oldRegion, currentRegion);
-						break;
-					}
-				}
-
-				if (!foundConnector) {
-					// if we're here, that means we need to insert a new
-					// connector region after childA
-					replaceText(this, childA.getEndOffset(), 0, String.valueOf(connector));
-					// DTDRegion connectorRegion = new
-					// DTDRegion(DTDRegionTypes.CONNECTOR,
-					// childA.getEndOffset(), 1);
-					// insertIntoStructuredDocument(connectorRegion);
-				}
-			}
-			endRecording(this);
-		}
-	}
-
-	// public Object[] getChildren()
-	// {
-	// return children.toArray();
-	// }
-}// CMGroupNode
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMNode.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMNode.java
deleted file mode 100644
index 9e70c4a..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMNode.java
+++ /dev/null
@@ -1,135 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-
-// base class for an Element's contentmodel
-public abstract class CMNode extends DTDNode {
-	public static final String ANY = DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_ANY"); //$NON-NLS-1$
-	public static final String CHILDREN = DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_CHILD_CONTENT"); //$NON-NLS-1$
-
-	public static final String EMPTY = DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_EMPTY"); //$NON-NLS-1$
-	public static final String MIXED = DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_MIX_CONTENT"); //$NON-NLS-1$
-	public static final String PCDATA = DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_PCDATA"); //$NON-NLS-1$
-
-
-	boolean rootElementContent;
-
-	public CMNode(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode);
-	}
-
-	// this is only valid to ask if the content is a root element content
-	abstract public String getType();
-
-	/**
-	 * Get the value of rootElementContent. This tells us whether this element
-	 * content's parent is a direct decendent of the containing element
-	 * 
-	 * @return value of rootElementContent.
-	 */
-	public boolean isRootElementContent() {
-		return rootElementContent;
-	}
-
-	// if this is a root element, change the content to children
-	// ie . (child1)
-	public void setChildrenContent(String newChild) {
-		if (isRootElementContent()) {
-			if (!newChild.equals("")) { //$NON-NLS-1$
-				beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_SET_CHILD_CONTENT")); //$NON-NLS-1$
-				replaceText(this, getStartOffset(), getNodeLength(), "(" + newChild + ")"); //$NON-NLS-1$ //$NON-NLS-2$
-				endRecording(this);
-				return;
-			}
-
-			if (!getType().equals(CHILDREN)) {
-				beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_SET_CHILD_CONTENT")); //$NON-NLS-1$
-				if (this instanceof CMBasicNode) {
-					replaceText(this, getStartOffset(), getNodeLength(), "(newChild)"); //$NON-NLS-1$
-				}
-				else {
-					// now must convert from mixed content to this one. must
-					// preserve the remaining children
-					CMGroupNode group = (CMGroupNode) this;
-					CMNode firstChild = (CMNode) group.getFirstChild();
-					if (firstChild.getType().equals(PCDATA)) {
-						group.delete(firstChild);
-					}
-				}
-
-				endRecording(this);
-			}
-		}
-	}
-
-	public void setContent(String content) {
-		if (isRootElementContent()) {
-			beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_SET") + " " + content + " " + DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_CONTENT")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-			replaceText(this, getStartOffset(), getNodeLength(), content);
-			endRecording(this);
-		}
-	}
-
-	// if this is a root element, change the content to mixed
-	// ie . (#PCDATA, child1)
-	public void setMixedContent() {
-		if (isRootElementContent()) {
-			if (!getType().equals(MIXED)) {
-				beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_NODE_SET_MIX_CONTENT")); //$NON-NLS-1$
-				if (this instanceof CMBasicNode) {
-					replaceText(this, getStartOffset(), getNodeLength(), "(#PCDATA | newChild)*"); //$NON-NLS-1$
-				}
-				else {
-					// now must convert from children content to this one.
-					// must
-					// preserve the children
-					CMGroupNode group = (CMGroupNode) this;
-					group.setConnector(CMGroupNode.CHOICE);
-					group.setOccurrence(CMRepeatableNode.ZERO_OR_MORE);
-					CMNode firstChild = (CMNode) group.getFirstChild();
-					if (!firstChild.getType().equals(PCDATA)) {
-						group.insertChildNode("#PCDATA", 0); //$NON-NLS-1$
-					}
-				}
-				endRecording(this);
-			}
-		}
-	}
-
-	/**
-	 * Set the value of rootElementContent.
-	 * 
-	 * @param v
-	 *            Value to assign to rootElementContent.
-	 */
-	public void setRootElementContent(boolean v) {
-		this.rootElementContent = v;
-	}
-
-	// public void delete()
-	// {
-	// if (isRootElementContent())
-	// {
-	// // then the superclasses delete will be fine
-	// super.delete();
-	// return;
-	// }
-
-	// CMGroupNode parent = (CMGroupNode) getParentNode();
-	// parent.removeChildNode(this);
-	// }
-
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMRepeatableNode.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMRepeatableNode.java
deleted file mode 100644
index 18c117b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/CMRepeatableNode.java
+++ /dev/null
@@ -1,81 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public abstract class CMRepeatableNode extends CMNode {
-
-	public static final char ONCE = '1';
-	public static final char ONE_OR_MORE = '+';
-	public static final char OPTIONAL = '?';
-	public static final char ZERO_OR_MORE = '*';
-
-
-	public CMRepeatableNode(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode);
-	}
-
-	public Image getImage() {
-		DTDCorePlugin resourcePlugin = DTDCorePlugin.getInstance();
-		return resourcePlugin.getImage(DTDResource.ELEMENTREFICON);
-	}
-
-	public char getOccurrence() {
-		ITextRegion occurRegion = getOccurrenceRegion();
-		if (occurRegion != null && occurRegion.getType() == DTDRegionTypes.OCCUR_TYPE) {
-			return getStructuredDTDDocumentRegion().getText(occurRegion).charAt(0);
-		}
-		return CMRepeatableNode.ONCE;
-	}
-
-	// returns the occurrenceregion, or the last region where the occurrence
-	// region should appear after
-	abstract public ITextRegion getOccurrenceRegion();
-
-	public void setOccurrence(char occurrence) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_CM_REP_NODE_CHG_OCCUR")); //$NON-NLS-1$
-		setOccurrence(this, occurrence);
-		endRecording(this);
-	}
-
-	public void setOccurrence(Object requestor, char occurrence) {
-		if (getOccurrence() != occurrence) {
-			ITextRegion region = getOccurrenceRegion();
-			if (region != null) {
-				if (region.getType().equals(DTDRegionTypes.OCCUR_TYPE)) {
-					if (occurrence == CMRepeatableNode.ONCE) {
-						// we need to remove the occur region from the flat
-						// model;
-						getDTDFile().getStructuredDocument().replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(region), 1, ""); //$NON-NLS-1$
-					}
-					else {
-						// Region oldOccur = region.createCopy();
-						getDTDFile().getStructuredDocument().replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(region), 1, String.valueOf(occurrence));
-						// changeStructuredDocument(oldOccur, region);
-					}
-				}
-				else if (occurrence != CMRepeatableNode.ONCE) {
-					// System.out.println(getString());
-					// we need to create an occurrenceRegion
-					replaceText(requestor, getStructuredDTDDocumentRegion().getEndOffset(region), 0, String.valueOf(occurrence));
-				}
-			}
-		}
-	}
-
-}// CMRepeatableNode
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Comment.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Comment.java
deleted file mode 100644
index 5205702..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Comment.java
+++ /dev/null
@@ -1,75 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public class Comment extends NamedTopLevelNode {
-
-	public class StartEndPair {
-		public int startOffset, endOffset;
-	}
-
-	public Comment(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode, DTDRegionTypes.COMMENT_START);
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.COMMENTICON);
-	}
-
-	public String getName() {
-		String text = getText();
-		if (text.length() <= 30) {
-			return text;
-		}
-		else {
-			return text.substring(0, 29) + "..."; //$NON-NLS-1$
-		}
-	}
-
-	private void getStartAndEndOffsetForText(StartEndPair pair) {
-		RegionIterator iter = iterator();
-		ITextRegion commentStartTag = getStartTag(iter);
-		ITextRegion endCommentTag = getNextRegion(iter, DTDRegionTypes.COMMENT_END);
-		pair.endOffset = getStructuredDTDDocumentRegion().getEndOffset();
-		if (commentStartTag != null) {
-			pair.startOffset = getStructuredDTDDocumentRegion().getEndOffset(commentStartTag);
-		}
-		if (endCommentTag != null) {
-			pair.endOffset = getStructuredDTDDocumentRegion().getStartOffset(endCommentTag);
-		}
-	}
-
-	public String getText() {
-		String text = getStructuredDTDDocumentRegion().getText();
-		int flatNodeStart = getStructuredDTDDocumentRegion().getStartOffset();
-		StartEndPair pair = new StartEndPair();
-		getStartAndEndOffsetForText(pair);
-		return text.substring(pair.startOffset - flatNodeStart, pair.endOffset - flatNodeStart);
-	}
-
-	public void setText(String newText) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_COMMENT_CHG")); //$NON-NLS-1$
-		StartEndPair pair = new StartEndPair();
-		getStartAndEndOffsetForText(pair);
-		replaceText(this, pair.startOffset, pair.endOffset - pair.startOffset, newText);
-		endRecording(this);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDCorePlugin.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDCorePlugin.java
deleted file mode 100644
index c7addb9..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDCorePlugin.java
+++ /dev/null
@@ -1,104 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.text.MessageFormat;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-public class DTDCorePlugin extends AbstractUIPlugin {
-	private static DTDCorePlugin instance;
-
-	public static Image getDTDImage(String iconName) {
-		return getInstance().getImage(iconName);
-	}
-
-	public static ImageDescriptor getDTDImageDescriptor(String iconName) {
-		String thisID = getInstance().getBundle().getSymbolicName();
-		return AbstractUIPlugin.imageDescriptorFromPlugin(thisID, iconName);
-	}
-
-	public static String getDTDString(String key) {
-		// In case it is invoked from a command line
-		if (getInstance() == null) {
-			return ""; //$NON-NLS-1$
-		}
-
-		return getInstance().getString(key);
-	}
-
-	public synchronized static DTDCorePlugin getInstance() {
-		return instance;
-	}
-
-	public static DTDCorePlugin getPlugin() {
-		return instance;
-	}
-
-	private ResourceBundle resourceBundle;
-
-	public DTDCorePlugin() {
-		super();
-		instance = this;
-	}
-
-	public Image getImage(String iconName) {
-		ImageRegistry imageRegistry = getImageRegistry();
-		Image image = imageRegistry.get(iconName);
-
-		if (image == null) {
-			String thisID = getInstance().getBundle().getSymbolicName();
-			imageRegistry.put(iconName, imageDescriptorFromPlugin(thisID, iconName));
-			image = imageRegistry.get(iconName);
-		}
-
-		return image;
-	}
-
-	public ResourceBundle getResourceBundle() {
-		if (resourceBundle == null) {
-			try {
-				resourceBundle = Platform.getResourceBundle(getBundle());
-			}
-			catch (java.util.MissingResourceException exception) {
-			}
-		}
-		return resourceBundle;
-	}
-
-	/**
-	 * This gets the string resource.
-	 */
-	public String getString(String key) {
-		return getResourceBundle().getString(key);
-	}
-
-	/**
-	 * This gets the string resource and does one substitution.
-	 */
-	public String getString(String key, Object s1) {
-		return MessageFormat.format(getString(key), new Object[]{s1});
-	}
-
-	/**
-	 * This gets the string resource and does two substitutions.
-	 */
-	public String getString(String key, Object s1, Object s2) {
-		return MessageFormat.format(getString(key), new Object[]{s1, s2});
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDFile.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDFile.java
deleted file mode 100644
index da59fc4..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDFile.java
+++ /dev/null
@@ -1,660 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.document.DTDModelImpl;
-import org.eclipse.wst.dtd.core.internal.event.IDTDFileListener;
-import org.eclipse.wst.dtd.core.internal.event.NodesEvent;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.util.DTDExternalReferenceRemover;
-import org.eclipse.wst.dtd.core.internal.util.DTDModelUpdater;
-import org.eclipse.wst.dtd.core.internal.util.DTDNotationReferenceRemover;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.events.NewDocumentEvent;
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.RegionsReplacedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentRegionsReplacedEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-
-public class DTDFile implements IndexedRegion {
-	protected NodeList attlistList = new NodeList(this, DTDRegionTypes.ATTLIST_TAG);
-	protected NodeList commentList = new NodeList(this, DTDRegionTypes.COMMENT_START);
-
-	boolean creatingNewModel = false;
-	protected DTDModelImpl dtdModel;
-
-	protected NodeList elementList = new NodeList(this, DTDRegionTypes.ELEMENT_TAG);
-	protected NodeList entityList = new NodeList(this, DTDRegionTypes.ENTITY_TAG);
-
-	protected List folderList = null;
-
-	private boolean isMovingNode = false;
-
-	protected List lists = new ArrayList();
-
-	protected List modelListeners = new ArrayList();
-
-	protected List nodeList = new ArrayList();
-	protected NodeList notationList = new NodeList(this, DTDRegionTypes.NOTATION_TAG);
-	protected NodeList unrecognizedList = new NodeList(this, DTDRegionTypes.UNKNOWN_CONTENT);
-
-	public DTDFile(DTDModelImpl dtdModel) {
-		this.dtdModel = dtdModel;
-	}
-
-	public void addDTDFileListener(IDTDFileListener listener) {
-		modelListeners.add(listener);
-	}
-
-	protected void addNode(DTDNode node) {
-		addNode(nodeList.size(), node);
-	}
-
-	protected void addNode(int index, DTDNode node) {
-		nodeList.add(index, node);
-		/*
-		 * if (index < nodeList.size()) { insertBefore(node, (DTDNode)
-		 * nodeList.get(index)); } else { appendChild(node); }
-		 */
-	}
-
-	public DTDNode buildNode(IStructuredDocumentRegion flatNode) {
-		// ITextRegionList regions = flatNode.getRegions();
-		DTDNode node = null;
-		if (isElement(flatNode)) {
-			// then this is an element
-			node = new Element(this, flatNode);
-		}
-		else if (isEntity(flatNode)) {
-			node = new Entity(this, flatNode);
-		}
-		else if (isNotation(flatNode)) {
-			node = new Notation(this, flatNode);
-		}
-		else if (isAttributeList(flatNode)) {
-			node = new AttributeList(this, flatNode);
-		}
-		else if (isComment(flatNode)) {
-			node = new Comment(this, flatNode);
-		}
-		else if (isParameterEntityReference(flatNode)) {
-			node = new ParameterEntityReference(this, flatNode);
-		}
-		else if (!flatNode.getText().trim().equals("")) { //$NON-NLS-1$
-			node = new Unrecognized(this, flatNode);
-		}
-		if (node != null) {
-			insertNode(node);
-			node.resolveRegions();
-		}
-		return node;
-	}
-
-	public void buildNodes(IStructuredDocumentRegionList list) {
-		NodesEvent addedDTDNodes = new NodesEvent();
-
-		TopLevelNode previousNode = null;
-		for (int i = 0; i < list.getLength(); i++) {
-			IStructuredDocumentRegion flatNode = list.item(i);
-			TopLevelNode node = (TopLevelNode) buildNode(flatNode);
-			// if we don't create a node, then we assume that the flat
-			// node was whitespace. Tack it on to a previous toplevel
-			// node
-			if (node != null) {
-				previousNode = node;
-				addedDTDNodes.add(node);
-			}
-			else {
-				if (previousNode != null) {
-					previousNode.addWhitespaceStructuredDocumentRegion(flatNode);
-				}
-			}
-		}
-
-		if (addedDTDNodes.getNodes().size() > 0)// &&
-		// creatingNewModel == false)
-		{
-			// now tell people about the additions
-			notifyNodesAdded(addedDTDNodes);
-		}
-	}
-
-	// Implements IndexedRegion
-
-	public boolean contains(int testPosition) {
-		return getStartOffset() <= testPosition && testPosition <= getEndOffset();
-	}
-
-	public void createAttributeList(DTDNode node, String name, boolean isAfter) {
-		getDTDModel().beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_FILE_ADD_ATTR_LIST")); //$NON-NLS-1$
-		String newStream = "<!ATTLIST " + name + ">\n"; //$NON-NLS-1$ //$NON-NLS-2$
-		int offset = getInsertOffset(node, isAfter);
-		getStructuredDocument().replaceText(this, offset, 0, newStream);
-		getDTDModel().endRecording(this);
-	}
-
-	public void createComment(DTDNode node, String name, boolean isAfter) {
-		getDTDModel().beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_FILE_ADD_COMMENT")); //$NON-NLS-1$
-		String newStream = "<!-- " + name + " -->\n"; //$NON-NLS-1$ //$NON-NLS-2$
-		int offset = getInsertOffset(node, isAfter);
-		getStructuredDocument().replaceText(this, offset, 0, newStream);
-		getDTDModel().endRecording(this);
-	}
-
-	public void createElement(DTDNode node, String name, boolean isAfter) {
-		getDTDModel().beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_FILE_ADD_ELEMENT")); //$NON-NLS-1$
-		String newStream = "<!ELEMENT " + name + " EMPTY>\n"; //$NON-NLS-1$ //$NON-NLS-2$
-		int offset = getInsertOffset(node, isAfter);
-		getStructuredDocument().replaceText(this, offset, 0, newStream);
-		getDTDModel().endRecording(this);
-	}
-
-	public void createEntity(DTDNode node, String name, boolean isAfter) {
-		getDTDModel().beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_FILE_ADD_ENTITY")); //$NON-NLS-1$
-		String newStream = "<!ENTITY " + name + " \"\">\n"; //$NON-NLS-1$//$NON-NLS-2$
-		int offset = getInsertOffset(node, isAfter);
-		getStructuredDocument().replaceText(this, offset, 0, newStream);
-		getDTDModel().endRecording(this);
-	}
-
-	public void createNotation(DTDNode node, String name, boolean isAfter) {
-		getDTDModel().beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_FILE_ADD_NOTATION")); //$NON-NLS-1$
-		String newStream = "<!NOTATION " + name + " SYSTEM \"\">\n"; //$NON-NLS-1$ //$NON-NLS-2$
-		int offset = getInsertOffset(node, isAfter);
-		getStructuredDocument().replaceText(this, offset, 0, newStream);
-		getDTDModel().endRecording(this);
-	}
-
-	public void createParameterEntityReference(DTDNode node, String name, boolean isAfter) {
-		getDTDModel().beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_FILE_ADD_PARM_ENTITY_REF")); //$NON-NLS-1$
-		String newStream = name + "\n"; //$NON-NLS-1$
-		int offset = getInsertOffset(node, isAfter);
-		getStructuredDocument().replaceText(this, offset, 0, newStream);
-		getDTDModel().endRecording(this);
-	}
-
-	public void deleteNode(DTDNode node) {
-		getDTDModel().beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_FILE_DELETE")); //$NON-NLS-1$
-		deleteNode(this, node);
-		getDTDModel().endRecording(this);
-	}
-
-	public void deleteNode(Object requestor, DTDNode node) {
-		DTDNode parent = (DTDNode) node.getParentNode();
-		if (parent != null) {
-			parent.delete(requestor, node);
-		}
-		else {
-			if (!isMovingNode) {
-				DTDModelUpdater updater = new DTDModelUpdater();
-				updater.objectAboutToBeDeleted(requestor, node);
-				if (node instanceof ParameterEntityReference) {
-					Entity referencedEntity = ((ParameterEntityReference) node).getEntityObject();
-					if (referencedEntity != null) {
-						// remove references to all elements and parm entities
-						// contained in our current model
-						DTDExternalReferenceRemover remover = new DTDExternalReferenceRemover();
-						remover.externalReferenceAboutToChange(requestor, referencedEntity);
-					}
-				}
-				else if (node instanceof Notation) {
-					Notation notation = ((Notation) node);
-					DTDNotationReferenceRemover remover = new DTDNotationReferenceRemover();
-					remover.notationAboutToBeDeleted(requestor, notation);
-				}
-			}
-
-			// no parent? then delete up until the start of the next node
-			// if it is a top level node
-			int startOffset = node.getStartOffset();
-			int endOffset = node.getWhitespaceEndOffset();
-			if (node instanceof TopLevelNode) {
-				endOffset = getInsertOffset(node, true);
-			}
-			getStructuredDocument().replaceText(requestor, startOffset, endOffset - startOffset, ""); //$NON-NLS-1$
-		}
-	}
-
-	public NodeList getComments() {
-		return commentList;
-	}
-
-	public DTDModelImpl getDTDModel() {
-		return dtdModel;
-	}
-
-	public NodeList getElementsAndParameterEntityReferences() {
-		return elementList;
-	}
-
-	public int getEndOffset() {
-		IStructuredDocumentRegion region = getStructuredDocument().getFirstStructuredDocumentRegion();
-		if (region != null)
-			return region.getEndOffset();
-		else
-			return 1;
-	}
-
-	public NodeList getEntities() {
-		return entityList;
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.DTDFILEICON);
-	}
-
-
-
-	public int getInsertOffset(DTDNode node, boolean isAfter) {
-		int offset = 0;
-		if (node != null) {
-			if (isAfter) {
-				// then get the next node and use it's start offset
-				int index = getNodes().indexOf(getNode(node.getStructuredDTDDocumentRegion()));
-
-				DTDNode afterNode = null;
-				if (index + 1 < getNodes().size()) {
-					afterNode = (DTDNode) getNodes().get(index + 1);
-				}
-				if (afterNode != null) {
-					offset = afterNode.getStructuredDTDDocumentRegion().getStartOffset();
-				}
-				else {
-					// add to end
-					if (getStructuredDocument().getLastStructuredDocumentRegion() != null) {
-						offset = getStructuredDocument().getLastStructuredDocumentRegion().getEndOffset();
-					}
-				}
-			}
-			else {
-				offset = node.getStructuredDTDDocumentRegion().getStartOffset();
-			}
-		}
-		else {
-			// add to end
-			if (getStructuredDocument().getLastStructuredDocumentRegion() != null) {
-				offset = getStructuredDocument().getLastStructuredDocumentRegion().getEndOffset();
-			}
-		}
-		return offset;
-	}
-
-	public String getName() {
-		org.eclipse.core.runtime.Path path = new org.eclipse.core.runtime.Path(getDTDModel().getId().toString());
-		return path.lastSegment();
-	}
-
-	public DTDNode getNode(IStructuredDocumentRegion flatNode) {
-		for (int i = 0; i < nodeList.size(); i++) {
-			DTDNode node = (DTDNode) nodeList.get(i);
-			if (node.getStructuredDTDDocumentRegion() == flatNode) {
-				return node;
-			}
-		}
-		return null;
-	}
-
-	public IndexedRegion getNodeAt(int offset) {
-		DTDNode node = getTopLevelNodeAt(offset);
-		if (node != null) {
-			return node.getDeepestNode(offset);
-		}
-		return null;
-	}
-
-	public IndexedRegion getNodeAt(int startOffset, int endOffset) {
-		DTDNode node = getTopLevelNodeAt(startOffset);
-		if (node != null) {
-			return node.getDeepestNode(startOffset, endOffset);
-		}
-		return null;
-	}
-
-	public List getNodeLists() {
-		if (folderList == null) {
-			folderList = new ArrayList();
-			folderList.add(notationList);
-			folderList.add(entityList);
-			folderList.add(elementList);
-			// http://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4200
-			// folderList.add(attlistList);
-			// folderList.add(commentList);
-			folderList.add(unrecognizedList);
-		}
-		return folderList;
-	}
-
-	public List getNodes() {
-		return nodeList;
-	}
-
-	public NodeList getNotations() {
-		return notationList;
-	}
-
-	public int getStartOffset() {
-		IStructuredDocumentRegion region = getStructuredDocument().getFirstStructuredDocumentRegion();
-		if (region != null)
-			return region.getStartOffset();
-		else
-			return 1;
-	}
-
-	public IStructuredDocument getStructuredDocument() {
-		return dtdModel.getStructuredDocument();
-	}
-
-	public DTDNode getTopLevelNodeAt(int offset) {
-		for (int i = 0; i < nodeList.size(); i++) {
-			DTDNode node = (DTDNode) nodeList.get(i);
-			if (node.contains(offset)) {
-				return node;
-			}
-		}
-		return null;
-	}
-
-	public NodeList getUnrecognized() {
-		return unrecognizedList;
-	}
-
-	public void insertIntoModel(Object requestor, DTDNode reference, DTDNode node, boolean isAfter) {
-		String nodeText = ""; //$NON-NLS-1$
-		if (node instanceof TopLevelNode) {
-			nodeText = ((TopLevelNode) node).getFullText();
-		}
-		else {
-			nodeText = node.getNodeText();
-		}
-		int offset = getInsertOffset(reference, isAfter);
-		getStructuredDocument().replaceText(requestor, offset, 0, nodeText);
-	}
-
-
-	public void insertNode(DTDNode node) {
-		int startOffset = node.getStartOffset();
-		int insertIndex = -1;
-		// System.out.println("startoffset = " + startOffset);
-		for (int i = 0; i < getNodes().size(); i++) {
-			DTDNode currentNode = (DTDNode) getNodes().get(i);
-			// System.out.println("currentNode endOffset = "
-			// +currentNode.getEndOffset());
-
-			if (currentNode.getEndOffset() > startOffset) {
-				// System.out.println("endoffset " +
-				// currentNode.getEndOffset() + " > " + startOffset);
-				insertIndex = i;
-				break;
-			}
-		}
-		if (insertIndex == -1) {
-			insertIndex = getNodes().size();
-		}
-
-
-		// System.out.println("insert index = " + insertIndex);
-
-		addNode(insertIndex, node);
-	}
-
-	// it is assumed that flatnode contains at least 3 regions
-	public boolean isAttributeList(IStructuredDocumentRegion flatNode) {
-		if (flatNode.getRegions().size() >= 3) {
-			ITextRegion second = flatNode.getRegions().get(1);
-			ITextRegion third = flatNode.getRegions().get(2);
-			if (second.getType().equals(DTDRegionTypes.EXCLAMATION) && third.getType().equals(DTDRegionTypes.ATTLIST_TAG)) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	// it is assumed that flatnode contains at least 3 regions
-	public boolean isComment(IStructuredDocumentRegion flatNode) {
-		if (flatNode.getRegions().size() >= 2) {
-			ITextRegion region = flatNode.getRegions().get(1);
-			if (region.getType().equals(DTDRegionTypes.COMMENT_START)) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	// it is assumed that flatnode contains at least 3 regions
-	public boolean isElement(IStructuredDocumentRegion flatNode) {
-		if (flatNode.getRegions().size() >= 3) {
-			ITextRegion second = flatNode.getRegions().get(1);
-			ITextRegion third = flatNode.getRegions().get(2);
-			if (second.getType().equals(DTDRegionTypes.EXCLAMATION) && third.getType().equals(DTDRegionTypes.ELEMENT_TAG)) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	// it is assumed that flatnode contains at least 3 regions
-	public boolean isEntity(IStructuredDocumentRegion flatNode) {
-		if (flatNode.getRegions().size() >= 3) {
-			ITextRegion second = flatNode.getRegions().get(1);
-			ITextRegion third = flatNode.getRegions().get(2);
-			if (second.getType().equals(DTDRegionTypes.EXCLAMATION) && third.getType().equals(DTDRegionTypes.ENTITY_TAG)) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	// it is assumed that flatnode contains at least 3 regions
-	public boolean isNotation(IStructuredDocumentRegion flatNode) {
-		if (flatNode.getRegions().size() >= 3) {
-			ITextRegion second = flatNode.getRegions().get(1);
-			ITextRegion third = flatNode.getRegions().get(2);
-			if (second.getType().equals(DTDRegionTypes.EXCLAMATION) && third.getType().equals(DTDRegionTypes.NOTATION_TAG)) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	// it is assumed that flatnode contains at least 3 regions
-	public boolean isParameterEntityReference(IStructuredDocumentRegion flatNode) {
-		if (flatNode.getRegions().size() == 1) {
-			ITextRegion region = flatNode.getRegions().get(0);
-			if (region.getType().equals(DTDRegionTypes.ENTITY_PARM)) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	boolean isSameTopLevelType(DTDNode affectedNode) {
-		IStructuredDocumentRegion flatNode = affectedNode.getStructuredDTDDocumentRegion();
-		// return true if the flatnode still matches what the affectedNode
-		// is representing
-		if (affectedNode instanceof Element && isElement(flatNode)) {
-			return true;
-		}
-		if (affectedNode instanceof Entity && isEntity(flatNode)) {
-			return true;
-		}
-		if (affectedNode instanceof Comment && isComment(flatNode)) {
-			return true;
-		}
-		if (affectedNode instanceof AttributeList && isAttributeList(flatNode)) {
-			return true;
-		}
-		if (affectedNode instanceof Notation && isNotation(flatNode)) {
-			return true;
-		}
-		if (affectedNode instanceof Unrecognized && isUnrecognized(flatNode)) {
-			return true;
-		}
-		return false;
-	}
-
-	public boolean isUnrecognized(IStructuredDocumentRegion flatNode) {
-		return !isElement(flatNode) && !isEntity(flatNode) && !isNotation(flatNode) && !isParameterEntityReference(flatNode) && !isAttributeList(flatNode) && !isComment(flatNode);
-	}
-
-	public void moveNode(Object requestor, DTDNode referenceNode, DTDNode nodeToMove, boolean isAfter) {
-		isMovingNode = true;
-
-		deleteNode(requestor, nodeToMove);
-		insertIntoModel(requestor, referenceNode, nodeToMove, isAfter);
-		isMovingNode = false;
-	}
-
-	public void newModel(NewDocumentEvent event) {
-		creatingNewModel = true;
-		nodeList.clear();
-		NodesEvent removeEvent = new NodesEvent();
-		removeEvent.getNodes().addAll(nodeList);
-		notifyNodesRemoved(removeEvent);
-		/* removeChildNodes(); */
-
-		if (event.getStructuredDocument() != null && event.getStructuredDocument().getRegionList() != null) {
-			buildNodes(event.getStructuredDocument().getRegionList());
-		}
-		creatingNewModel = false;
-	}
-
-	public void nodesReplaced(StructuredDocumentRegionsReplacedEvent event) {
-		IStructuredDocumentRegionList oldNodes = event.getOldStructuredDocumentRegions();
-		NodesEvent removedDTDNodes = new NodesEvent();
-		for (int i = 0; i < oldNodes.getLength(); i++) {
-			IStructuredDocumentRegion flatNode = oldNodes.item(i);
-
-			for (Iterator iter = getNodes().iterator(); iter.hasNext();) {
-				DTDNode node = (DTDNode) iter.next();
-				if (node.getStructuredDTDDocumentRegion() == flatNode) {
-					removedDTDNodes.add(node);
-				}
-			}
-		}
-
-		buildNodes(event.getNewStructuredDocumentRegions());
-
-		if (removedDTDNodes.getNodes().size() > 0) {
-			notifyNodesRemoved(removedDTDNodes);
-			removeNodes(removedDTDNodes.getNodes());
-		}
-	}
-
-	public void notifyNodeChanged(DTDNode node) {
-		Iterator iter = modelListeners.iterator();
-		while (iter.hasNext()) {
-			IDTDFileListener listener = (IDTDFileListener) iter.next();
-			listener.nodeChanged(node);
-		}
-	}
-
-	public void notifyNodesAdded(NodesEvent addedNodes) {
-		Iterator iter = modelListeners.iterator();
-		while (iter.hasNext()) {
-			IDTDFileListener listener = (IDTDFileListener) iter.next();
-			listener.nodesAdded(addedNodes);
-		}
-	}
-
-	protected void notifyNodesRemoved(NodesEvent event) {
-		Iterator iter = modelListeners.iterator();
-		while (iter.hasNext()) {
-			IDTDFileListener listener = (IDTDFileListener) iter.next();
-			listener.nodesRemoved(event);
-		}
-	}
-
-	public void rebuildNodes(List nodes) {
-		// remove the old nodes
-		removeNodes(nodes);
-
-		// now rebuild them
-		NodesEvent addedDTDNodes = new NodesEvent();
-		Iterator dtdNodes = nodes.iterator();
-		while (dtdNodes.hasNext()) {
-			DTDNode dtdNode = (DTDNode) dtdNodes.next();
-			// System.out.println("rebuilding " +
-			// dtdNode.getStructuredDocumentRegion().getText());
-
-			DTDNode node = buildNode(dtdNode.getStructuredDTDDocumentRegion());
-			if (node != null) {
-				addedDTDNodes.add(node);
-			}
-		}
-		if (addedDTDNodes.getNodes().size() > 0) {
-			// now tell people about the additions
-			notifyNodesAdded(addedDTDNodes);
-		}
-	}
-
-	public void regionChanged(RegionChangedEvent event) {
-		ITextRegion changedRegion = event.getRegion();
-		IStructuredDocumentRegion flatNode = event.getStructuredDocumentRegion();
-		DTDNode affectedNode = (DTDNode) getNodeAt(flatNode.getStartOffset(changedRegion), flatNode.getEndOffset(changedRegion));
-		if (affectedNode != null) {
-			// no need to resolve regions as it is just a change
-			// affectedNode.resolveRegions();
-			notifyNodeChanged(affectedNode);
-		}
-	}
-
-	public void regionsReplaced(RegionsReplacedEvent event) {
-		List nodesToRebuild = new ArrayList();
-		IStructuredDocumentRegion flatNode = event.getStructuredDocumentRegion();
-		DTDNode affectedNode = getNode(flatNode);
-
-		if (!isSameTopLevelType(affectedNode)) {
-			nodesToRebuild.add(affectedNode);
-			rebuildNodes(nodesToRebuild);
-		}
-		else {
-			affectedNode.resolveRegions();
-			notifyNodeChanged(affectedNode);
-			// now try and determine which ones were added
-			NodesEvent addedDTDNodes = new NodesEvent();
-			ITextRegionList newRegions = event.getNewRegions();
-			int size = newRegions.size();
-			for (int i = 0; i < size; i++) {
-				ITextRegion region = newRegions.get(i);
-				DTDNode deepestNode = affectedNode.getDeepestNode(flatNode.getStartOffset(region), flatNode.getEndOffset(region));
-				if (!addedDTDNodes.getNodes().contains(deepestNode)) {
-					addedDTDNodes.add(deepestNode);
-				}
-			}
-			if (addedDTDNodes.getNodes().size() > 0) {
-				notifyNodesAdded(addedDTDNodes);
-			}
-		}
-	}
-
-	public void removeDTDFileListener(IDTDFileListener listener) {
-		modelListeners.remove(listener);
-	}
-
-	protected void removeNodes(List nodes) {
-		getNodes().removeAll(nodes);
-		/*
-		 * for (int i = 0; i < nodes.size(); i++) {
-		 * removeChild((DTDNode)nodes.get(i)); } // end of for ()
-		 */
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDNode.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDNode.java
deleted file mode 100644
index a53c519..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDNode.java
+++ /dev/null
@@ -1,330 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.document.DTDModelImpl;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.internal.text.TextRegionListImpl;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.internal.document.NodeContainer;
-import org.w3c.dom.Node;
-
-
-public abstract class DTDNode extends NodeContainer implements IndexedRegion {
-
-	// these are characteroffsets
-	protected DTDFile dtdFile;
-
-	// flat node that contains this node
-	protected IStructuredDocumentRegion flatNode;
-
-	protected TextRegionListImpl regions = new TextRegionListImpl();
-
-	protected TextRegionListImpl whitespace = new TextRegionListImpl();
-
-	public DTDNode(DTDFile dtdFile, IStructuredDocumentRegion flatNode) {
-		this.dtdFile = dtdFile;
-		this.flatNode = flatNode;
-	}
-
-	public void addRegion(ITextRegion region) {
-		/*
-		 * if (startRegion == null) { startRegion = region; } endRegion =
-		 * region;
-		 */
-		regions.add(region);
-	}
-
-	public void addWhitespaceRegion(ITextRegion region) {
-		whitespace.add(region);
-	}
-
-	public void beginRecording(Object requestor, String label) {
-		getDTDFile().getDTDModel().beginRecording(requestor, label);
-	}
-
-	public Node cloneNode(boolean deepest) {
-		return null;
-	}
-
-	public boolean contains(int testPosition) {
-		return containsRange(testPosition, testPosition);
-	}
-
-	public boolean containsRange(int start, int end) {
-		return getStartOffset() <= start && end <= getEndOffset();
-	}
-
-	public void delete(DTDNode child) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_NODE_DELETE")); //$NON-NLS-1$
-		delete(this, child);
-		endRecording(this);
-	}
-
-	public void delete(Object requestor, DTDNode child) {
-		replaceText(requestor, child.getStartOffset(), child.getFullNodeLength(), ""); //$NON-NLS-1$
-	}
-
-	public void endRecording(Object requestor) {
-		getDTDFile().getDTDModel().endRecording(requestor);
-	}
-
-	public Object[] getChildren() {
-		return getChildrenList().toArray();
-	}
-
-	public List getChildrenList() {
-		Node child = getFirstChild();
-		if (child != null) {
-			List children = new ArrayList();
-			for (; child != null; child = child.getNextSibling()) {
-				children.add(child);
-			}
-			return children;
-		}
-		else {
-			return Collections.EMPTY_LIST;
-		}
-	}
-
-	public DTDNode getDeepestNode(int offset) {
-		if (contains(offset)) {
-			// now see if a child contains this offset
-			Object[] children = getChildren();
-			for (int i = 0; i < children.length; i++) {
-				DTDNode child = (DTDNode) children[i];
-				DTDNode deepest = child.getDeepestNode(offset);
-				if (deepest != null) {
-					return deepest;
-				}
-			} // end of for ()
-			return this;
-		}
-		return null;
-	}
-
-	public DTDNode getDeepestNode(int start, int end) {
-		if (containsRange(start, end)) {
-			// now see if a child contains this offset
-			Object[] children = getChildren();
-			for (int i = 0; i < children.length; i++) {
-				DTDNode child = (DTDNode) children[i];
-				DTDNode deepest = child.getDeepestNode(start, end);
-				if (deepest != null) {
-					return deepest;
-				}
-			} // end of for ()
-			return this;
-		}
-		return null;
-	}
-
-	public DTDFile getDTDFile() {
-		return dtdFile;
-	}
-
-	public int getEndOffset() {
-		return getStructuredDTDDocumentRegion().getEndOffset(getEndRegion());
-	}
-
-	public ITextRegion getEndRegion() {
-		return regions.get(regions.size() - 1);// endRegion;
-	}
-
-	/**
-	 */
-	public FactoryRegistry getFactoryRegistry() {
-		DTDModelImpl model = dtdFile.getDTDModel();
-		if (model != null) {
-			FactoryRegistry reg = model.getFactoryRegistry();
-			if (reg != null)
-				return reg;
-		}
-		return null;
-	}
-
-	public int getFullNodeLength() {
-		return getWhitespaceEndOffset() - getStartOffset();
-	}
-
-	public String getFullNodeText() {
-		String text = getNodeText();
-		if (whitespace.size() > 0) {
-			RegionIterator iter = new RegionIterator(whitespace);
-			while (iter.hasNext()) {
-				ITextRegion region = iter.next();
-				text += getStructuredDTDDocumentRegion().getText(region);
-			}
-		}
-		return text;
-	}
-
-	abstract public Image getImage();
-
-	public String getName() {
-		ITextRegion region = getNameRegion();
-		if (region != null) {
-			return getStructuredDTDDocumentRegion().getText(region);
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public ITextRegion getNameRegion() {
-		RegionIterator iter = iterator();
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (region.getType() == DTDRegionTypes.NAME) {
-				return region;
-			}
-		}
-		return null;
-	}
-
-	// return the first token containing the specified token type
-	public ITextRegion getNextRegion(RegionIterator iter, String type) {
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (region.getType().equals(type)) {
-				return region;
-			}
-		}
-		return null;
-	}
-
-	public int getNodeLength() {
-		return getEndOffset() - getStartOffset();
-	}
-
-	public String getNodeName() {
-		return getName();
-	}
-
-	public String getNodeText() {
-		StringBuffer sb = new StringBuffer();
-
-		RegionIterator iter = iterator();
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			sb.append(getStructuredDTDDocumentRegion().getText(region));
-		}
-		return sb.toString();
-	}
-
-	public short getNodeType() {
-		return -1;
-	}
-
-	public int getStartOffset() {
-		return getStructuredDTDDocumentRegion().getStartOffset(getStartRegion());
-	}
-
-	// private Region startRegion,endRegion;
-	public ITextRegion getStartRegion() {
-		return regions.get(0);
-		// return startRegion;
-	}
-
-	/**
-	 * Get the value of flatNode.
-	 * 
-	 * @return value of flatNode.
-	 * 
-	 * ISSUE:named changed not to be confused with default access protected
-	 * super class method, but should re-think if this is correct technique.
-	 * Perhaps getFirstRegion?
-	 */
-	public IStructuredDocumentRegion getStructuredDTDDocumentRegion() {
-		return flatNode;
-	}
-
-	// return end offset including whitespace
-	// or just the end offset if there is no whitespace
-	public int getWhitespaceEndOffset() {
-		if (whitespace.size() > 0) {
-			ITextRegion region = whitespace.get(whitespace.size() - 1);
-			return getStructuredDTDDocumentRegion().getEndOffset(region);
-		}
-
-		return getEndOffset();
-	}
-
-	public boolean hasTrailingWhitespace() {
-		return whitespace.size() > 0;
-	}
-
-	public RegionIterator iterator() {
-		// System.out.println("create region iter " + this.getClass() + " with
-		// start , end = " + getStartOffset() + ", " +getEndOffset());
-		return new RegionIterator(regions);
-	}
-
-	public void replaceText(Object requestor, int start, int length, String newText) {
-		getDTDFile().getStructuredDocument().replaceText(requestor, start, length, newText);
-	}
-
-	public void resolveRegions() {
-	}
-
-	public void setName(Object requestor, String name) {
-		if (!getName().equals(name)) {
-			ITextRegion nameRegion = getNameRegion();
-			if (nameRegion != null) {
-				// nameToken.updateText(name);
-				getDTDFile().getDTDModel().getReferenceUpdater().nameAboutToChange(requestor, this, name);
-				replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(nameRegion), nameRegion.getLength(), name);
-			}
-		}
-	}
-
-	public void setName(String name) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_NODE_NAME_CHG")); //$NON-NLS-1$
-		setName(this, name);
-		endRecording(this);
-	}
-
-	/**
-	 * Set the value of flatNode.
-	 * 
-	 * @param v
-	 *            Value to assign to flatNode. ISSUE:named changed not to be
-	 *            confused with default access protected super class method,
-	 *            but should re-think if this is correct technique
-	 */
-	void setStructuredDTDDocumentRegion(IStructuredDocumentRegion v) {
-		this.flatNode = v;
-	}
-
-	// skips past next name token in the iterator
-	protected void skipPastName(RegionIterator iter) {
-		while (iter.hasNext()) {
-			ITextRegion currentRegion = iter.next();
-			if (currentRegion.getType() == DTDRegionTypes.NAME) {
-				break;
-			}
-		}
-	}
-
-	public boolean supports(java.lang.String feature, java.lang.String version) {
-		return false;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDResource.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDResource.java
deleted file mode 100644
index d411ba2..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/DTDResource.java
+++ /dev/null
@@ -1,57 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-
-public interface DTDResource {
-	// Enumeration Constants
-	public static final String ANYICON = "icons/full/obj16/any.gif"; //$NON-NLS-1$
-	public static final String ATTRIBUTEICON = "icons/full/obj16/attribute.gif"; //$NON-NLS-1$
-	public static final String ATTRIBUTELISTICON = "icons/full/obj16/attribute_list.gif"; //$NON-NLS-1$
-	public static final String COMMENTICON = "icons/full/obj16/comment.gif"; //$NON-NLS-1$
-
-	public static final String DTDFILEICON = "icons/full/obj16/DTDFile.gif"; //$NON-NLS-1$
-	public static final String ELEMENTICON = "icons/full/obj16/element.gif"; //$NON-NLS-1$
-	public static final String ELEMENTREFICON = "icons/full/obj16/element_ref.gif"; //$NON-NLS-1$
-	public static final String EMPTYICON = "icons/full/obj16/emptycontent.gif"; //$NON-NLS-1$
-	public static final String ENTITYICON = "icons/full/obj16/entity.gif"; //$NON-NLS-1$
-	public static final String ENTITYREFERENCEICON = "icons/full/obj16/entity_reference.gif"; //$NON-NLS-1$
-	public static final String FLDR_ATTLIST = "icons/full/obj16/folder_attlist_obj.gif"; //$NON-NLS-1$
-	public static final String FLDR_COMM = "icons/full/obj16/folder_comments_obj.gif"; //$NON-NLS-1$
-
-	public static final String FLDR_EL = "icons/full/obj16/fldr_el.gif"; //$NON-NLS-1$
-	public static final String FLDR_ENT = "icons/full/obj16/fldr_ent.gif"; //$NON-NLS-1$
-	public static final String FLDR_NOT = "icons/full/obj16/fldr_not.gif"; //$NON-NLS-1$
-	public static final String FLDR_UNREC = "icons/full/obj16/fldr_unrec.gif"; //$NON-NLS-1$
-
-	public static final String NEWDTD = "icons/full/obj16/newdtd_wiz.gif"; //$NON-NLS-1$
-	public static final String NEWHTMLFORM = "icons/full/obj16/genhtmform_wiz.gif"; //$NON-NLS-1$
-	public static final String NOTATIONICON = "icons/full/obj16/notation.gif"; //$NON-NLS-1$
-
-	public static final String ONECHOICEICON = "icons/full/obj16/onechoice.gif"; //$NON-NLS-1$
-
-	public static final String ONEICON = "icons/full/obj16/one.gif"; //$NON-NLS-1$
-	public static final String ONEORMORECHOICEICON = "icons/full/obj16/oneormorechoice.gif"; //$NON-NLS-1$
-	public static final String ONEORMOREICON = "icons/full/obj16/oneormore.gif"; //$NON-NLS-1$
-	public static final String ONEORMORESEQUENCEICON = "icons/full/obj16/oneormoresequence.gif"; //$NON-NLS-1$
-
-	public static final String ONESEQUENCEICON = "icons/full/obj16/onesequence.gif"; //$NON-NLS-1$
-	public static final String OPTIONALCHOICEICON = "icons/full/obj16/optionalchoice.gif"; //$NON-NLS-1$
-	public static final String OPTIONALICON = "icons/full/obj16/optional.gif"; //$NON-NLS-1$
-	public static final String OPTIONALSEQUENCEICON = "icons/full/obj16/optionalsequence.gif"; //$NON-NLS-1$
-	public static final String PCDATAICON = "icons/full/obj16/txtext.gif"; //$NON-NLS-1$
-	public static final String UNRECOGNIZEDICON = "icons/full/obj16/unrecognized_content.gif"; //$NON-NLS-1$
-	public static final String ZEROORMORECHOICEICON = "icons/full/obj16/zeroormorechoice.gif"; //$NON-NLS-1$
-	public static final String ZEROORMOREICON = "icons/full/obj16/zeroormore.gif"; //$NON-NLS-1$
-	public static final String ZEROORMORESEQUENCEICON = "icons/full/obj16/zeroormoresequence.gif"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Element.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Element.java
deleted file mode 100644
index d289894..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Element.java
+++ /dev/null
@@ -1,202 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.w3c.dom.Node;
-
-
-public class Element extends NamedTopLevelNode {
-
-	List attListList = new ArrayList();
-
-	List attributes = new ArrayList();
-
-	protected CMNode contentModel;
-
-	public Element(DTDFile dtdFile, IStructuredDocumentRegion flatNode) {
-		super(dtdFile, flatNode, DTDRegionTypes.ELEMENT_TAG);
-	}
-
-	public void addAttribute(String name) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ELEMENT_ADD_ATTR")); //$NON-NLS-1$
-		List attLists = getAttributeLists();
-		if (attLists.size() == 0) {
-			getDTDFile().createAttributeList(this, getName(), true);
-			attLists = getAttributeLists();
-		}
-		if (attLists.size() > 0) {
-			AttributeList attList = (AttributeList) attLists.get(attLists.size() - 1);
-			attList.addAttribute(name);
-		}
-		endRecording(this);
-	}
-
-	public void addChild() {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ELEMENT_ADD_CHILD")); //$NON-NLS-1$
-		addContent(this, " EMPTY"); //$NON-NLS-1$
-		endRecording(this);
-	}
-
-	protected void addContent(Object requestor, String content) {
-		ITextRegion whitespace = getWhitespaceAfterName();
-		int startOffset = 0;
-		int length = 0;
-		if (whitespace != null) {
-			startOffset = getStructuredDTDDocumentRegion().getStartOffset(whitespace);
-			length = whitespace.getLength() >= 2 ? 1 : 0;
-		}
-		else {
-			ITextRegion nameRegion = getNameRegion();
-			if (nameRegion != null) {
-				startOffset = getStructuredDTDDocumentRegion().getEndOffset(nameRegion);
-			}
-			else {
-				ITextRegion elementTag = getNextRegion(iterator(), DTDRegionTypes.ELEMENT_TAG);
-				startOffset = getStructuredDTDDocumentRegion().getEndOffset(elementTag);
-			}
-		}
-		replaceText(requestor, startOffset, length, content);
-	}
-
-	public void addGroup() {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ELEMENT_ADD_GRP")); //$NON-NLS-1$
-		addContent(this, " ()"); //$NON-NLS-1$
-		endRecording(this);
-	}
-
-	public Node cloneNode(boolean deep) {
-		return new Element(dtdFile, flatNode);
-	}
-
-	public List getAttributeLists() {
-		attListList.clear();
-		String elementName = getName();
-		Iterator iter = dtdFile.getNodes().iterator();
-		while (iter.hasNext()) {
-			DTDNode node = (DTDNode) iter.next();
-			if (node instanceof AttributeList && node.getName().equals(elementName)) {
-				attListList.add(node);
-			}
-		}
-		return attListList;
-	}
-
-
-
-	public CMNode getContentModel() {
-		// Object[] children = getChildren()
-		return (CMNode) getFirstChild();// contentModel;
-	}
-
-	public List getElementAttributes() {
-		attributes.clear();
-		Iterator attLists = getAttributeLists().iterator();
-		while (attLists.hasNext()) {
-			AttributeList attList = (AttributeList) attLists.next();
-
-			Object[] children = attList.getChildren();
-			for (int i = 0; i < children.length; i++) {
-				attributes.add(children[i]);
-			}
-		}
-		return attributes;
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.ELEMENTICON);
-	}
-
-	public short getNodeType() {
-		return Node.ELEMENT_NODE;
-	}
-
-	public void replaceContentModel(Object requestor, CMNode node) {
-		int offset = 0;
-		int length = 0;
-		String nodeText = node.getNodeText();
-		CMNode contentModel = getContentModel();
-		if (contentModel != null) {
-			offset = contentModel.getStartOffset();
-			length = contentModel.getWhitespaceEndOffset() - offset;
-			replaceText(requestor, offset, length, nodeText);
-		}
-		else {
-			addContent(requestor, nodeText);
-		}
-	}
-
-	public void resolveRegions() {
-		// System.out.println("element node stream = " +
-		// tokenStream.getString());
-		contentModel = null;
-		removeChildNodes();
-		RegionIterator iter = iterator();
-
-		if (getNameRegion() != null) {
-			// we skip past the name token is our name
-			skipPastName(iter);
-		}
-
-		while (iter.hasNext()) {
-			ITextRegion currentRegion = iter.next();
-
-			if (contentModel == null) {
-				if (currentRegion.getType().equals(DTDRegionTypes.NAME)) {
-					contentModel = new CMBasicNode(getDTDFile(), getStructuredDTDDocumentRegion());
-				}
-				else if (currentRegion.getType().equals(DTDRegionTypes.CONTENT_PCDATA)) {
-					contentModel = new CMBasicNode(getDTDFile(), getStructuredDTDDocumentRegion());
-				}
-				else if (currentRegion.getType().equals(DTDRegionTypes.LEFT_PAREN)) {
-					contentModel = new CMGroupNode(getDTDFile(), getStructuredDTDDocumentRegion());
-				}
-			}
-
-			if (contentModel != null) {
-				if (!currentRegion.getType().equals(DTDRegionTypes.END_TAG)) {
-					// content model gets all regions except for the '>'
-					contentModel.addRegion(currentRegion);
-				}
-				else {
-					// if it is equal to the end tag, then don't add anymore
-					// regions
-					// for the content model
-					break;
-				}
-
-			}
-
-		}
-		if (contentModel != null) {
-			appendChild(contentModel);
-			// this is the root element content so set it true
-			contentModel.setRootElementContent(true);
-			// now tell the content model to resolve it's regions
-			contentModel.resolveRegions();
-
-		}
-	}
-
-	public void setContentModel(CMNode contentModel) {
-		this.contentModel = contentModel;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Entity.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Entity.java
deleted file mode 100644
index 4d11afa..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Entity.java
+++ /dev/null
@@ -1,333 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-// external node contains code to help set and get public ids
-public class Entity extends ExternalNode {
-
-	private static String setExternalEntity = DTDCorePlugin.getDTDString("_UI_LABEL_ENTITY_SET_EXT_ENTITY"); //$NON-NLS-1$
-	private static String setGeneralEntity = DTDCorePlugin.getDTDString("_UI_LABEL_ENTITY_SET_GENERAL_ENTITY"); //$NON-NLS-1$
-	private static String setInternalEntity = DTDCorePlugin.getDTDString("_UI_LABEL_ENTITY_SET_INT_ENTITY"); //$NON-NLS-1$
-
-	private static String setParameterEntity = DTDCorePlugin.getDTDString("_UI_LABEL_ENTITY_SET_PARM_ENTITY"); //$NON-NLS-1$
-
-	public Entity(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode, DTDRegionTypes.ENTITY_TAG);
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.ENTITYICON);
-	}
-
-
-	/**
-	 * Get the value of notationName.
-	 * 
-	 * @return value of notationName.
-	 */
-	public String getNotationName() {
-		ITextRegion ndataRegion = getNextRegion(iterator(), DTDRegionTypes.NDATA_VALUE);
-		if (ndataRegion != null) {
-			return getStructuredDTDDocumentRegion().getText(ndataRegion);
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public ITextRegion getPercentRegion() {
-		return getNextRegion(iterator(), DTDRegionTypes.PERCENT);
-	}
-
-	/**
-	 * Get the value of value.
-	 * 
-	 * @return value of value.
-	 */
-	public String getValue() {
-		if (!isExternalEntity()) {
-			ITextRegion valueRegion = getNextQuotedLiteral(iterator());
-			if (valueRegion != null) {
-				return getValueFromQuotedRegion(valueRegion);
-			}
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	/**
-	 * Get the value of externalEntity.
-	 * 
-	 * @return value of externalEntity.
-	 */
-	public boolean isExternalEntity() {
-		return getPublicKeywordRegion(iterator()) != null || getSystemKeywordRegion(iterator()) != null;
-	}
-
-	/**
-	 * Get the value of isParameterEntity.
-	 * 
-	 * @return value of isParameterEntity.
-	 */
-	public boolean isParameterEntity() {
-		return getPercentRegion() != null;
-	}
-
-	private void removeNData(Object requestor) {
-		ITextRegion ndataRegion = null;
-
-		// see if we have an NDATA keyword
-		ndataRegion = getNextRegion(iterator(), DTDRegionTypes.NDATA_KEYWORD);
-		int startOffset = 0, endOffset = 0;
-		if (ndataRegion != null) {
-			startOffset = getStructuredDTDDocumentRegion().getStartOffset(ndataRegion);
-			endOffset = getStructuredDTDDocumentRegion().getEndOffset(ndataRegion);
-		}
-		ITextRegion value = getNextRegion(iterator(), DTDRegionTypes.NDATA_VALUE);
-		if (value != null) {
-			if (startOffset == 0) {
-				startOffset = getStructuredDTDDocumentRegion().getStartOffset(value);
-			}
-			endOffset = getStructuredDTDDocumentRegion().getEndOffset(value);
-		}
-		replaceText(requestor, startOffset, endOffset - startOffset, ""); //$NON-NLS-1$
-	}
-
-	/**
-	 * Set the value of externalEntity.
-	 * 
-	 * @param v
-	 *            Value to assign to externalEntity.
-	 */
-	public void setExternalEntity(boolean isExternalEntity) {
-		if (isExternalEntity() != isExternalEntity) {
-			// externalEntity = v;
-			beginRecording(this, isExternalEntity ? setExternalEntity : setInternalEntity);
-			if (isExternalEntity) {
-				// we need to get rid of the value literal
-				ITextRegion quote = getNextRegion(iterator(), DTDRegionTypes.SINGLEQUOTED_LITERAL);
-				if (quote == null) {
-					quote = getNextRegion(iterator(), DTDRegionTypes.DOUBLEQUOTED_LITERAL);
-				}
-				if (quote != null) {
-					replaceText(this, getStructuredDTDDocumentRegion().getStartOffset(quote), quote.getLength(), ""); //$NON-NLS-1$
-				}
-				setSystemID(""); //$NON-NLS-1$
-			}
-			else {
-				// we need to get rid of text between end of name region and
-				// the last double quoted literal
-				RegionIterator iter = iterator();
-				ITextRegion keyword = getSystemKeywordRegion(iter);
-				int startOffset = 0;
-				int length = 0;
-				if (keyword == null) {
-					// reset the iterator
-					iter = iterator();
-					keyword = getPublicKeywordRegion(iter);
-				}
-				if (keyword != null) {
-					startOffset = getStructuredDTDDocumentRegion().getStartOffset(keyword);
-					// start with a length just equal to the keyword for now
-					length = keyword.getLength();
-				}
-				else {
-					// reset the iterator since we didn't find the keyword
-					iter = iterator();
-					// just go from after the name
-					startOffset = getStructuredDTDDocumentRegion().getEndOffset(getNameRegion());
-				}
-
-				// now that we have the start, look for the end
-				ITextRegion lastRegion = null;
-
-				if (lastRegion == null) {
-					// then look for last quoted literal
-					while (iter.hasNext()) {
-						ITextRegion literal = getNextQuotedLiteral(iter);
-						if (literal != null) {
-							lastRegion = literal;
-						}
-					}
-				}
-
-				if (lastRegion != null) {
-					length = getStructuredDTDDocumentRegion().getEndOffset(lastRegion) - startOffset;
-				}
-				replaceText(this, startOffset, length, "\"\""); //$NON-NLS-1$
-				removeNData(this);
-			}
-			endRecording(this);
-		}
-	}
-
-	public void setNotationName(Object requestor, String newNotation) {
-		if (!getNotationName().equals(newNotation)) {
-			if (!newNotation.equals("")) { //$NON-NLS-1$
-				// 
-				ITextRegion ndataRegion = getNextRegion(iterator(), DTDRegionTypes.NDATA_VALUE);
-				if (ndataRegion != null) {
-					replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(ndataRegion), ndataRegion.getLength(), newNotation);
-				}
-				else {
-					// time to create one
-					int startOffset = 0;
-					String string = ""; //$NON-NLS-1$
-					RegionIterator iter = iterator();
-					ITextRegion ndataKeyword = getNextRegion(iter, DTDRegionTypes.NDATA_KEYWORD);
-					if (ndataKeyword == null) {
-						// we'll need to create one after the last quoted
-						// literal
-						// Reset iterator
-						string += " NDATA "; //$NON-NLS-1$
-						iter = iterator();
-						ITextRegion lastQuotedLiteral = null;
-						while (iter.hasNext()) {
-							ITextRegion literal = getNextQuotedLiteral(iter);
-							if (literal != null) {
-								lastQuotedLiteral = literal;
-							}
-						}
-						if (lastQuotedLiteral != null) {
-							startOffset = getStructuredDTDDocumentRegion().getEndOffset(lastQuotedLiteral);
-						}
-						else {
-							// created after the system or public keyword
-							ITextRegion keyword = getPublicKeywordRegion(iterator());
-							if (keyword == null) {
-								keyword = getSystemKeywordRegion(iterator());
-							}
-							// we shouldn't be null here since we check if we
-							// were external already
-							startOffset = getStructuredDTDDocumentRegion().getEndOffset(keyword);
-						}
-
-					}
-					else {
-						startOffset = getStructuredDTDDocumentRegion().getEndOffset(ndataKeyword);
-					}
-					replaceText(requestor, startOffset, 0, string + newNotation);
-				}
-			}
-			else {
-				// need to remove the ndata stuff
-				removeNData(requestor);
-			}
-		}
-	}
-
-	/**
-	 * Set the value of notationName.
-	 * 
-	 * @param newNotation
-	 *            Value to assign to notationName.
-	 */
-	public void setNotationName(String newNotation) {
-		beginRecording(this, "NDATA " + DTDCorePlugin.getDTDString("_UI_LABEL_ENTITY_NDATA_CHANGE")); //$NON-NLS-1$ //$NON-NLS-2$
-		setNotationName(this, newNotation);
-		endRecording(this);
-	}
-
-	/**
-	 * Set the value of isParameterEntity.
-	 * 
-	 * @param v
-	 *            Value to assign to isParameterEntity.
-	 */
-	public void setParameterEntity(boolean v) {
-		if (isParameterEntity() != v) {
-			beginRecording(this, v ? setParameterEntity : setGeneralEntity);
-			if (v) {
-				RegionIterator iter = iterator();
-				ITextRegion startTag = getNextRegion(iter, DTDRegionTypes.ENTITY_TAG);
-				int startOffset = 0, length = 0;
-
-				if (iter.hasNext()) {
-					ITextRegion region = iter.next();
-					startOffset = getStructuredDTDDocumentRegion().getStartOffset(region);
-					if (region.getType() == DTDRegionTypes.WHITESPACE && region.getLength() > 1) {
-						length = 1;
-					}
-				}
-				else {
-					startOffset = getStructuredDTDDocumentRegion().getEndOffset(startTag);
-				}
-				replaceText(this, startOffset, length, " %"); //$NON-NLS-1$
-				// now get rid of any NData since it is only allowed if the
-				// entity is a general entity and not a parameter entity
-				removeNData(this);
-			}
-			else {
-				// get rid of percent region
-				ITextRegion percentRegion = getPercentRegion();
-				replaceText(this, getStructuredDTDDocumentRegion().getStartOffset(percentRegion), percentRegion.getLength(), ""); //$NON-NLS-1$
-			}
-
-			endRecording(this);
-		}
-	}
-
-	/**
-	 * Set the value of value.
-	 * 
-	 * @param v
-	 *            Value to assign to value.
-	 */
-	public void setValue(Object requestor, String v) {
-		if (!isExternalEntity()) {
-			if (!getValue().equals(v)) {
-				// then it makes sense to change the value
-				ITextRegion valueRegion = getNextQuotedLiteral(iterator());
-				String quoteChar = v.indexOf("\"") == -1 ? "\"" : "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				if (valueRegion != null) {
-					replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(valueRegion), valueRegion.getLength(), quoteChar + v + quoteChar);
-				}
-				else {
-					int startOffset = 0;
-					RegionIterator iter = iterator();
-					ITextRegion region = getNextRegion(iter, DTDRegionTypes.NAME);
-					if (region == null) {
-						// create it after the percent if there is one
-						region = getPercentRegion();
-					}
-					if (region == null) {
-						// if still null, then create it after the element tag
-						region = getStartTag(iterator());
-					}
-
-					if (region != null) {
-						startOffset = getStructuredDTDDocumentRegion().getEndOffset(region);
-						replaceText(requestor, startOffset, 0, quoteChar + v + quoteChar);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Set the value of value.
-	 * 
-	 * @param v
-	 *            Value to assign to value.
-	 */
-	public void setValue(String v) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_ENTITY_VALUE_CHG")); //$NON-NLS-1$
-		setValue(this, v);
-		endRecording(this);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/ExternalNode.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/ExternalNode.java
deleted file mode 100644
index 28f236f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/ExternalNode.java
+++ /dev/null
@@ -1,250 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-// base class for nodes that can contain external content
-public abstract class ExternalNode extends NamedTopLevelNode {
-
-	String publicID;
-
-	String systemID;
-
-	public ExternalNode(DTDFile file, IStructuredDocumentRegion flatNode, String tagType) {
-		super(file, flatNode, tagType);
-	}
-
-	public ITextRegion getNextQuotedLiteral(RegionIterator iter) {
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (region.getType().equals(DTDRegionTypes.SINGLEQUOTED_LITERAL) || region.getType().equals(DTDRegionTypes.DOUBLEQUOTED_LITERAL)) {
-				return region;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Get the value of publicID.
-	 * 
-	 * @return value of publicID.
-	 */
-	public String getPublicID() {
-		ITextRegion publicValue = getPublicValueRegion();
-		if (publicValue != null) {
-			return getValueFromQuotedRegion(publicValue);
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public ITextRegion getPublicKeywordRegion(RegionIterator iter) {
-		return getNextRegion(iter, DTDRegionTypes.PUBLIC_KEYWORD);
-	}
-
-	public ITextRegion getPublicValueRegion() {
-		RegionIterator iter = iterator();
-
-		ITextRegion publicKeyword = getPublicKeywordRegion(iter);
-
-		if (publicKeyword != null && iter.hasNext()) {
-			ITextRegion quotedLiteral = getNextQuotedLiteral(iter);
-			if (quotedLiteral != null) {
-				return quotedLiteral;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Get the value of systemID.
-	 * 
-	 * @return value of systemID.
-	 */
-	public String getSystemID() {
-		ITextRegion systemValue = getSystemValueRegion();
-		if (systemValue != null) {
-			return getValueFromQuotedRegion(systemValue);
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public ITextRegion getSystemKeywordRegion(RegionIterator iter) {
-		return getNextRegion(iter, DTDRegionTypes.SYSTEM_KEYWORD);
-	}
-
-	public ITextRegion getSystemValueRegion() {
-		RegionIterator iter = iterator();
-
-		ITextRegion systemKeyword = getSystemKeywordRegion(iter);
-		if (systemKeyword != null && iter.hasNext()) {
-			ITextRegion quotedLiteral = getNextQuotedLiteral(iter);
-			if (quotedLiteral != null) {
-				return quotedLiteral;
-			}
-		}
-		else {
-			// try and see if there is a second quoted literal after a public
-			// keyword
-			iter = iterator();
-			ITextRegion publicKeyword = getPublicKeywordRegion(iter);
-
-			if (publicKeyword != null && iter.hasNext()) {
-				ITextRegion quotedLiteral = getNextQuotedLiteral(iter);
-				if (quotedLiteral != null && iter.hasNext()) {
-					// now get the second quoted literal
-					quotedLiteral = getNextQuotedLiteral(iter);
-					if (quotedLiteral != null) {
-						// got it!
-						return quotedLiteral;
-					}
-				}
-			}
-		}
-		return null;
-	}
-
-	public String getValueFromQuotedRegion(ITextRegion region) {
-		String type = region.getType();
-		if (type.equals(DTDRegionTypes.SINGLEQUOTED_LITERAL) || type.equals(DTDRegionTypes.DOUBLEQUOTED_LITERAL)) {
-			String text = getStructuredDTDDocumentRegion().getText(region);
-			return text.substring(1, text.length() - 1);
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	/**
-	 * Set the value of publicID.
-	 * 
-	 * @param v
-	 *            Value to assign to publicID.
-	 */
-	public void setPublicID(Object requestor, String v) {
-		if (!v.equals(publicID)) {
-			publicID = v;
-			ITextRegion publicValue = getPublicValueRegion();
-			ITextRegion publicKeyword = getPublicKeywordRegion(iterator());
-			ITextRegion systemKeyword = getSystemKeywordRegion(iterator());
-			ITextRegion systemValue = getSystemValueRegion();
-
-			if (v.equals("")) { //$NON-NLS-1$
-				if (publicKeyword != null) {
-					// time to get rid of the public keyword and value
-					// and replace it with the system one
-					int startOffset = getStructuredDTDDocumentRegion().getStartOffset(publicKeyword);
-					String newString = "SYSTEM"; //$NON-NLS-1$
-					if (systemValue == null) {
-						newString += " \"\""; //$NON-NLS-1$
-					}
-					replaceText(requestor, startOffset, getStructuredDTDDocumentRegion().getEndOffset(publicValue) - startOffset, newString);
-				}
-			}
-			else {
-				// here were setting a non empty value
-				String quoteChar = v.indexOf("\"") == -1 ? "\"" : "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				if (publicValue != null) {
-					replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(publicValue), publicValue.getLength(), quoteChar + publicID + quoteChar);
-				}
-				else {
-					// time to create stuff
-					if (publicKeyword != null) {
-						// then just put our new value after the keyword
-						replaceText(requestor, getStructuredDTDDocumentRegion().getEndOffset(publicKeyword), 0, " " + quoteChar + v + quoteChar); //$NON-NLS-1$
-					}
-					else {
-						// we need the public keyword as well
-						if (systemKeyword != null) {
-							replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(systemKeyword), systemKeyword.getLength(), "PUBLIC " + quoteChar + v + quoteChar); //$NON-NLS-1$
-						}
-						else {
-							ITextRegion nameRegion = getNameRegion();
-							replaceText(requestor, getStructuredDTDDocumentRegion().getEndOffset(nameRegion), 0, " PUBLIC " + quoteChar + v + quoteChar); //$NON-NLS-1$
-						}
-					}
-				}
-			}
-		}
-	}
-
-
-	/**
-	 * Set the value of publicID.
-	 * 
-	 * @param v
-	 *            Value to assign to publicID.
-	 */
-	public void setPublicID(String v) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_EXT_NODE_PUBLIC_ID_CHG")); //$NON-NLS-1$
-		setPublicID(this, v);
-		endRecording(this);
-	}
-
-	/**
-	 * Set the value of systemID.
-	 * 
-	 * @param v
-	 *            Value to assign to systemID.
-	 */
-	public void setSystemID(Object requestor, String v) {
-		if (!v.equals(systemID) || (getPublicKeywordRegion(iterator()) == null && getSystemKeywordRegion(iterator()) == null)) {
-			systemID = v;
-			String quoteChar = v.indexOf("\"") == -1 ? "\"" : "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-			ITextRegion systemValue = getSystemValueRegion();
-			if (systemValue != null) {
-				replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(systemValue), systemValue.getLength(), quoteChar + systemID + quoteChar);
-			}
-			else {
-				ITextRegion systemKeyword = getSystemKeywordRegion(iterator());
-
-				// time to create stuff
-				if (systemKeyword != null) {
-					// then just put our new value after the keyword
-					replaceText(requestor, getStructuredDTDDocumentRegion().getEndOffset(systemKeyword), 0, " " + quoteChar + v + quoteChar); //$NON-NLS-1$
-				}
-				else {
-					// see if we have a public keyword
-					ITextRegion publicKeyword = getPublicKeywordRegion(iterator());
-					if (publicKeyword == null) {
-						ITextRegion nameRegion = getNameRegion();
-
-						replaceText(requestor, getStructuredDTDDocumentRegion().getEndOffset(nameRegion), 0, " SYSTEM " + quoteChar + v + quoteChar); //$NON-NLS-1$
-					}
-					else {
-						// put it after the public value region
-						ITextRegion publicValueRegion = getPublicValueRegion();
-						replaceText(requestor, getStructuredDTDDocumentRegion().getEndOffset(publicValueRegion), 0, " " + quoteChar + v + quoteChar); //$NON-NLS-1$
-					}
-
-				}
-			}
-
-		}
-	}
-
-
-	/**
-	 * Set the value of systemID.
-	 * 
-	 * @param v
-	 *            Value to assign to systemID.
-	 */
-	public void setSystemID(String v) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_EXT_NODE_SYSTEM_ID_CHG")); //$NON-NLS-1$
-		setSystemID(this, v);
-		endRecording(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Logger.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Logger.java
deleted file mode 100644
index 39c11cb..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Logger.java
+++ /dev/null
@@ -1,143 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-/**
- * Small convenience class to log messages to plugin's log file and also, if
- * desired, the console. This class should only be used by classes in this
- * plugin. Other plugins should make their own copy, with appropriate ID.
- */
-public class Logger {
-	private static final String PLUGIN_ID = "org.eclipse.wst.dtd.core"; //$NON-NLS-1$
-
-	public static final int ERROR = IStatus.ERROR; // 4
-	public static final int ERROR_DEBUG = 200 + ERROR;
-	public static final int INFO = IStatus.INFO; // 1
-	public static final int INFO_DEBUG = 200 + INFO;
-
-	public static final int OK = IStatus.OK; // 0
-
-	public static final int OK_DEBUG = 200 + OK;
-
-	private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
-	public static final int WARNING = IStatus.WARNING; // 2
-	public static final int WARNING_DEBUG = 200 + WARNING;
-
-	/**
-	 * Adds message to log.
-	 * 
-	 * @param level
-	 *            severity level of the message (OK, INFO, WARNING, ERROR,
-	 *            OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
-	 * @param message
-	 *            text to add to the log
-	 * @param exception
-	 *            exception thrown
-	 */
-	protected static void _log(int level, String message, Throwable exception) {
-		if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
-			if (!isDebugging())
-				return;
-		}
-
-		int severity = IStatus.OK;
-		switch (level) {
-			case INFO_DEBUG :
-			case INFO :
-				severity = IStatus.INFO;
-				break;
-			case WARNING_DEBUG :
-			case WARNING :
-				severity = IStatus.WARNING;
-				break;
-			case ERROR_DEBUG :
-			case ERROR :
-				severity = IStatus.ERROR;
-		}
-		Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null)
-			Platform.getLog(bundle).log(statusObj);
-	}
-
-	/**
-	 * Prints message to log if category matches /debug/tracefilter option.
-	 * 
-	 * @param message
-	 *            text to print
-	 * @param category
-	 *            category of the message, to be compared with
-	 *            /debug/tracefilter
-	 */
-	protected static void _trace(String category, String message, Throwable exception) {
-		if (!isDebugging())
-			return;
-
-		String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
-		if (traceFilter != null) {
-			StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens()) {
-				String cat = tokenizer.nextToken().trim();
-				if (category.equals(cat)) {
-					Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
-					Bundle bundle = Platform.getBundle(PLUGIN_ID);
-					if (bundle != null)
-						Platform.getLog(bundle).log(statusObj);
-					return;
-				}
-			}
-		}
-	}
-
-	/**
-	 * @return true if the platform is debugging
-	 */
-	public static boolean isDebugging() {
-		return Platform.inDebugMode();
-	}
-
-	public static void log(int level, String message) {
-		_log(level, message, null);
-	}
-
-	public static void log(int level, String message, Throwable exception) {
-		_log(level, message, exception);
-	}
-
-	public static void logException(String message, Throwable exception) {
-		_log(ERROR, message, exception);
-	}
-
-	public static void logException(Throwable exception) {
-		_log(ERROR, exception.getMessage(), exception);
-	}
-
-	public static void trace(String category, String message) {
-		_trace(category, message, null);
-	}
-
-	public static void traceException(String category, String message, Throwable exception) {
-		_trace(category, message, exception);
-	}
-
-	public static void traceException(String category, Throwable exception) {
-		_trace(category, exception.getMessage(), exception);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/NamedTopLevelNode.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/NamedTopLevelNode.java
deleted file mode 100644
index e216a37..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/NamedTopLevelNode.java
+++ /dev/null
@@ -1,135 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-// interface for nodes that can exist at the top level in a dtdfile
-// eg. entity, notation, element, comment, attlist, or unrecognized stuff (ie
-// <junk dkfjdl>
-public abstract class NamedTopLevelNode extends TopLevelNode {
-
-	private String tagStartType;
-
-	public NamedTopLevelNode(DTDFile dtdFile, IStructuredDocumentRegion flatNode, String type) {
-		super(dtdFile, flatNode);
-		tagStartType = type;
-	}
-
-	public ITextRegion getNameRegion() {
-		// name region is located after the whitespace (which is after
-		// the elementtag
-		RegionIterator iter = iterator();
-		ITextRegion startTag = getNextRegion(iter, tagStartType);
-
-		if (!iter.hasNext()) {
-			return null;
-		}
-
-		ITextRegion region = iter.next();
-		if (!region.getType().equals(DTDRegionTypes.WHITESPACE)) {
-			return null;
-		}
-
-		if (!iter.hasNext()) {
-			return null;
-		}
-
-		region = iter.next();
-		if (region.getType().equals(DTDRegionTypes.NAME)) {
-			return region;
-		}
-
-		// we normally stop here, but for entities, we have to see if we are
-		// at a '%'. if so, we skip that and find the name after the
-		// whitespace again
-		if (tagStartType == DTDRegionTypes.ENTITY_TAG && region.getType().equals(DTDRegionTypes.PERCENT) && iter.hasNext()) {
-			region = iter.next();
-
-			if (!region.getType().equals(DTDRegionTypes.WHITESPACE)) {
-				return null;
-			}
-
-			if (!iter.hasNext()) {
-				return null;
-			}
-
-			region = iter.next();
-			if (region.getType().equals(DTDRegionTypes.NAME)) {
-				return region;
-			}
-		}
-
-		return null;
-	}
-
-	public ITextRegion getStartTag(RegionIterator iter) {
-		return getNextRegion(iter, tagStartType);
-	}
-
-	public ITextRegion getWhitespaceAfterName() {
-		ITextRegion nameRegion = getNameRegion();
-		RegionIterator iter = iterator();
-		// skip past the element tag region
-		ITextRegion elementTagRegion = getNextRegion(iter, tagStartType);
-		boolean foundName = false;
-		while (iter.hasNext()) {
-			ITextRegion region = iter.next();
-			if (!foundName && nameRegion != null && region == nameRegion) {
-				foundName = true;
-			}
-
-			if (region.getType().equals(DTDRegionTypes.WHITESPACE)) {
-				// there is no name region or we have already passed it
-				if (nameRegion == null || foundName) {
-					return region;
-				}
-			}
-		}
-		return null;
-	}
-
-	public void setName(Object requestor, String name) {
-		ITextRegion nameRegion = getNameRegion();
-		if (nameRegion != null) {
-			super.setName(requestor, name);
-		}
-		else {
-			RegionIterator iter = iterator();
-			ITextRegion elementTagRegion = getNextRegion(iter, tagStartType);
-			int replaceLength = 0;
-			if (iter.hasNext()) {
-				ITextRegion region = iter.next();
-				if (region.getType().equals(DTDRegionTypes.WHITESPACE)) {
-					if (region.getLength() >= 2) {
-						// there are 2 spaces between 'ELEMENT' and the
-						// content
-						// Change replace length to 1 so that the new name and
-						// the content are separated by a single space
-						replaceLength = 1;
-					}
-				}
-			}
-
-			// beginRecording(requestor, "Name Change");
-			String newText = " " + name; //$NON-NLS-1$
-			replaceText(requestor, getStructuredDTDDocumentRegion().getEndOffset(elementTagRegion), replaceLength, newText);
-			// endRecording(requestor);
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/NodeList.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/NodeList.java
deleted file mode 100644
index 193ee86..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/NodeList.java
+++ /dev/null
@@ -1,109 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-
-
-public class NodeList {
-	protected DTDFile dtdFile;
-
-	ArrayList listNodes = new ArrayList();
-
-	protected String listType;
-
-	public NodeList(DTDFile dtdFile, String tokenType) {
-		listType = tokenType;
-		this.dtdFile = dtdFile;
-	}
-
-	public Image getImage() {
-		if (listType == DTDRegionTypes.ELEMENT_TAG) {
-			return DTDCorePlugin.getInstance().getImage(DTDResource.FLDR_EL);
-		}
-		else if (listType == DTDRegionTypes.ENTITY_TAG) {
-			return DTDCorePlugin.getInstance().getImage(DTDResource.FLDR_ENT);
-		}
-		else if (listType == DTDRegionTypes.NOTATION_TAG) {
-			return DTDCorePlugin.getInstance().getImage(DTDResource.FLDR_NOT);
-		}
-		else if (listType == DTDRegionTypes.COMMENT_START) {
-			return DTDCorePlugin.getInstance().getImage(DTDResource.FLDR_COMM);
-		}
-		else if (listType == DTDRegionTypes.ATTLIST_TAG) {
-			return DTDCorePlugin.getInstance().getImage(DTDResource.FLDR_ATTLIST);
-		}
-		else if (listType == DTDRegionTypes.UNKNOWN_CONTENT) {
-			return DTDCorePlugin.getInstance().getImage(DTDResource.FLDR_UNREC);
-		}
-		else
-			return null;
-	}
-
-	public String getListType() {
-		return listType;
-	}
-
-	public String getName() {
-		if (listType == DTDRegionTypes.ELEMENT_TAG) {
-			return DTDCorePlugin.getDTDString("_UI_LABEL_NODE_LIST_ELEMENTS"); //$NON-NLS-1$
-		}
-		else if (listType == DTDRegionTypes.ENTITY_TAG) {
-			return DTDCorePlugin.getDTDString("_UI_LABEL_NODE_LIST_ENTITIES"); //$NON-NLS-1$
-		}
-		else if (listType == DTDRegionTypes.NOTATION_TAG) {
-			return DTDCorePlugin.getDTDString("_UI_LABEL_NODE_LIST_NOTATIONS"); //$NON-NLS-1$
-		}
-		else if (listType == DTDRegionTypes.COMMENT_START) {
-			return DTDCorePlugin.getDTDString("_UI_LABEL_NODE_LIST_COMMENTS"); //$NON-NLS-1$
-		}
-		else if (listType == DTDRegionTypes.ATTLIST_TAG) {
-			return DTDCorePlugin.getDTDString("_UI_LABEL_NODE_LIST_ATTRIBUTES"); //$NON-NLS-1$
-		}
-		else if (listType == DTDRegionTypes.UNKNOWN_CONTENT) {
-			return DTDCorePlugin.getDTDString("_UI_LABEL_NODE_LIST_OTHER"); //$NON-NLS-1$
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	public ArrayList getNodes() {
-		listNodes.clear();
-		Iterator iter = dtdFile.getNodes().iterator();
-		while (iter.hasNext()) {
-			DTDNode node = (DTDNode) iter.next();
-			if (listType == DTDRegionTypes.ELEMENT_TAG && (node instanceof Element || node instanceof ParameterEntityReference)) {
-				listNodes.add(node);
-			}
-			else if (listType == DTDRegionTypes.ATTLIST_TAG && node instanceof AttributeList) {
-				listNodes.add(node);
-			}
-			else if (listType == DTDRegionTypes.ENTITY_TAG && node instanceof Entity) {
-				listNodes.add(node);
-			}
-			else if (listType == DTDRegionTypes.NOTATION_TAG && node instanceof Notation) {
-				listNodes.add(node);
-			}
-			else if (listType == DTDRegionTypes.COMMENT_START && node instanceof Comment) {
-				listNodes.add(node);
-			}
-			else if (listType == DTDRegionTypes.UNKNOWN_CONTENT && node instanceof Unrecognized) {
-				listNodes.add(node);
-			}
-		}
-		return listNodes;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Notation.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Notation.java
deleted file mode 100644
index 00800c3..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Notation.java
+++ /dev/null
@@ -1,29 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-
-
-public class Notation extends ExternalNode {
-
-	public Notation(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode, DTDRegionTypes.NOTATION_TAG);
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.NOTATIONICON);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/ParameterEntityReference.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/ParameterEntityReference.java
deleted file mode 100644
index 288d9c6..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/ParameterEntityReference.java
+++ /dev/null
@@ -1,112 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.List;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public class ParameterEntityReference extends NamedTopLevelNode {
-
-
-
-	public class StartEndPair {
-		public int startOffset, endOffset;
-	}
-
-	private Entity cachedEntity = null;
-
-	public ParameterEntityReference(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode, DTDRegionTypes.COMMENT_START);
-	}
-
-	public Entity getEntityObject() {
-		if (cachedEntity != null && !cachedEntity.getName().equals(getReferencedEntity())) {
-			// if we have a cached entity, but the name doesnt match,
-			// null it now, so we perform a lookup
-			cachedEntity = null;
-		}
-
-		if (cachedEntity == null) {
-			List nodes = getDTDFile().getNodes();
-			for (int i = 0; i < nodes.size(); i++) {
-				DTDNode node = (DTDNode) nodes.get(i);
-				if (node instanceof Entity) {
-					Entity entity = (Entity) node;
-					if (entity.isParameterEntity() && entity.getName().equals(getReferencedEntity())) {
-						cachedEntity = entity;
-					}
-				}
-			}
-		}
-		return cachedEntity;
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.ENTITYREFERENCEICON);
-	}
-
-	public String getName() {
-		return getStructuredDTDDocumentRegion().getText();
-	}
-
-	public String getReferencedEntity() {
-		String text = getName();
-		return getName().substring(1, text.length() - 1);
-	}
-
-	private void getStartAndEndOffsetForText(StartEndPair pair) {
-		RegionIterator iter = iterator();
-		ITextRegion commentStartTag = getStartTag(iter);
-		ITextRegion endCommentTag = getNextRegion(iter, DTDRegionTypes.COMMENT_END);
-		pair.endOffset = getStructuredDTDDocumentRegion().getEndOffset();
-		if (commentStartTag != null) {
-			pair.startOffset = getStructuredDTDDocumentRegion().getEndOffset(commentStartTag);
-		}
-		if (endCommentTag != null) {
-			pair.endOffset = getStructuredDTDDocumentRegion().getEndOffset(endCommentTag);
-		}
-	}
-
-	public String getText() {
-		String text = getStructuredDTDDocumentRegion().getText();
-		int flatNodeStart = getStructuredDTDDocumentRegion().getStartOffset();
-		StartEndPair pair = new StartEndPair();
-		getStartAndEndOffsetForText(pair);
-		return text.substring(pair.startOffset - flatNodeStart, pair.endOffset - flatNodeStart);
-	}
-
-	public void setReferencedEntity(Object requestor, String name) {
-		replaceText(requestor, getStructuredDTDDocumentRegion().getStartOffset(), getStructuredDTDDocumentRegion().getLength(), "%" + name + ";"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-	public void setReferencedEntity(String name) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_PARM_ENTITY_REF_CHG_ENTITY_REF")); //$NON-NLS-1$
-		setReferencedEntity(this, name);
-		endRecording(this);
-	}
-
-	public void setText(String newText) {
-		beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_PARM_ENTITY_REF_COMMENT_CHG")); //$NON-NLS-1$
-		StartEndPair pair = new StartEndPair();
-		getStartAndEndOffsetForText(pair);
-		replaceText(this, pair.startOffset, pair.endOffset - pair.startOffset, newText);
-		endRecording(this);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/TopLevelNode.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/TopLevelNode.java
deleted file mode 100644
index f37739f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/TopLevelNode.java
+++ /dev/null
@@ -1,84 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.wst.dtd.core.internal.text.RegionIterator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-// interface for nodes that can exist at the top level in a dtdfile
-// eg. entity, notation, element, comment, attlist, or unrecognized stuff (ie
-// <junk dkfjdl>
-public abstract class TopLevelNode extends DTDNode {
-
-	private ArrayList flatNodes = new ArrayList();
-
-	public TopLevelNode(DTDFile dtdFile, IStructuredDocumentRegion flatNode) {
-		super(dtdFile, flatNode);
-		flatNodes.add(flatNode);
-	}
-
-	public void addWhitespaceStructuredDocumentRegion(IStructuredDocumentRegion node) {
-		flatNodes.add(node);
-	}
-
-	// specialize this so we delete the objects flat node range
-	// AND any whitespace
-	public void delete() {
-		beginRecording(getDTDFile(), DTDCorePlugin.getDTDString("_UI_LABEL_TOP_LEVEL_NODE_DELETE")); //$NON-NLS-1$
-		IStructuredDocumentRegion first = (IStructuredDocumentRegion) flatNodes.get(0);
-		IStructuredDocumentRegion last = (IStructuredDocumentRegion) flatNodes.get(flatNodes.size() - 1);
-		int startOffset = first.getStartOffset();
-		int endOffset = last.getEndOffset();
-
-		replaceText(getDTDFile(), startOffset, endOffset - startOffset, ""); //$NON-NLS-1$
-		endRecording(getDTDFile());
-	}
-
-	public ITextRegion getEndRegion() {
-		int size = flatNode.getRegions().size();
-		if (size > 0) {
-			return flatNode.getRegions().get(size - 1);
-		}
-		return null;
-	}
-
-	// includes what gettext gives us plus any whitespace
-	// trailing it
-	public String getFullText() {
-		StringBuffer sb = new StringBuffer();
-		Iterator iter = flatNodes.iterator();
-		while (iter.hasNext()) {
-			IStructuredDocumentRegion fNode = (IStructuredDocumentRegion) iter.next();
-			sb.append(fNode.getText());
-		}
-		return sb.toString();
-	}
-
-	public ITextRegion getStartRegion() {
-		if (flatNode.getRegions().size() > 0) {
-			return flatNode.getRegions().get(0);
-		}
-		return null;
-	}
-
-	public RegionIterator iterator() {
-		// System.out.println("create region iter " + this.getClass() + " with
-		// start , end = " + getStartOffset() + ", " +getEndOffset());
-		return new RegionIterator(flatNode, getStartOffset(), getEndOffset());
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Unrecognized.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Unrecognized.java
deleted file mode 100644
index 4c98e54..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/Unrecognized.java
+++ /dev/null
@@ -1,39 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-
-
-public class Unrecognized extends TopLevelNode {
-
-	public Unrecognized(DTDFile file, IStructuredDocumentRegion flatNode) {
-		super(file, flatNode);
-	}
-
-	public Image getImage() {
-		return DTDCorePlugin.getInstance().getImage(DTDResource.UNRECOGNIZEDICON);
-	}
-
-	public String getName() {
-		String text = getStructuredDTDDocumentRegion().getText();
-		if (text.length() <= 30) {
-			return text;
-		}
-		else {
-			return text.substring(0, 29) + "..."; //$NON-NLS-1$
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/builder/delegates/DTDTaskTagSeeker.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/builder/delegates/DTDTaskTagSeeker.java
deleted file mode 100644
index bfb13a5..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/builder/delegates/DTDTaskTagSeeker.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.builder.delegates;
-
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.sse.core.participants.TaskTagSeeker;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public class DTDTaskTagSeeker extends TaskTagSeeker {
-	protected boolean isCommentRegion(IStructuredDocumentRegion region, ITextRegion textRegion) {
-		return textRegion.getType().equals(DTDRegionTypes.COMMENT_CONTENT);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/content/AbstractContentDescriber.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/content/AbstractContentDescriber.java
deleted file mode 100644
index b10a51e..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/content/AbstractContentDescriber.java
+++ /dev/null
@@ -1,210 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.content;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.content.IContentDescriber;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.ITextContentDescriber;
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.IContentDescriptionExtended;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-
-public abstract class AbstractContentDescriber implements ITextContentDescriber {
-
-	private final static QualifiedName[] SUPPORTED_OPTIONS = {IContentDescription.CHARSET, IContentDescription.BYTE_ORDER_MARK, IContentDescriptionExtended.DETECTED_CHARSET, IContentDescriptionExtended.UNSUPPORTED_CHARSET, IContentDescriptionExtended.APPROPRIATE_DEFAULT};
-
-	private void calculateSupportedOptions(InputStream contents, IContentDescription description) throws IOException {
-		if (isRelevent(description)) {
-			IResourceCharsetDetector detector = getDetector();
-			detector.set(contents);
-			handleCalculations(description, detector);
-		}
-	}
-
-	/**
-	 * @param contents
-	 * @param description
-	 * @throws IOException
-	 */
-	private void calculateSupportedOptions(Reader contents, IContentDescription description) throws IOException {
-		if (isRelevent(description)) {
-			IResourceCharsetDetector detector = getDetector();
-			detector.set(contents);
-			handleCalculations(description, detector);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.IContentDescriber#describe(java.io.InputStream,
-	 *      org.eclipse.core.runtime.content.IContentDescription)
-	 */
-	public int describe(InputStream contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.VALID;
-
-		calculateSupportedOptions(contents, description);
-
-		// assume if we're called at all that we are valid (few types could be
-		// disproved, maybe XML -- or, maybe if exception occurs above?)
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.ITextContentDescriber#describe(java.io.Reader,
-	 *      org.eclipse.core.runtime.content.IContentDescription)
-	 */
-	public int describe(Reader contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.VALID;
-
-		calculateSupportedOptions(contents, description);
-
-		// assume if we're called at all that we are valid (few types could be
-		// disproved, maybe XML -- or, maybe if exception occurs above?)
-		return result;
-	}
-
-	protected abstract IResourceCharsetDetector getDetector();
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.IContentDescriber#getSupportedOptions()
-	 */
-	public QualifiedName[] getSupportedOptions() {
-
-		return SUPPORTED_OPTIONS;
-	}
-
-	/**
-	 * @param description
-	 * @param detector
-	 * @throws IOException
-	 */
-	protected void handleCalculations(IContentDescription description, IResourceCharsetDetector detector) throws IOException {
-		// note: if we're asked for one, we set them all. I need to be sure if
-		// called
-		// mulitiple times (one for each, say) that we don't waste time
-		// processing same
-		// content again.
-		EncodingMemento encodingMemento = detector.getEncodingMemento();
-		// TODO: I need to verify to see if this BOM work is always done
-		// by text type.
-		Object detectedByteOrderMark = encodingMemento.getUnicodeBOM();
-		if (detectedByteOrderMark != null) {
-			Object existingByteOrderMark = description.getProperty(IContentDescription.BYTE_ORDER_MARK);
-			// not sure why would ever be different, so if is different, may
-			// need to "push" up into base.
-			if (!detectedByteOrderMark.equals(existingByteOrderMark))
-				description.setProperty(IContentDescription.BYTE_ORDER_MARK, detectedByteOrderMark);
-		}
-
-
-		if (!encodingMemento.isValid()) {
-			// note: after setting here, its the mere presence of
-			// IContentDescriptionExtended.UNSUPPORTED_CHARSET
-			// in the resource's description that can be used to determine if
-			// invalid
-			// in those cases, the "detected" property contains an
-			// "appropriate default" to use.
-			description.setProperty(IContentDescriptionExtended.UNSUPPORTED_CHARSET, encodingMemento.getInvalidEncoding());
-			description.setProperty(IContentDescriptionExtended.APPROPRIATE_DEFAULT, encodingMemento.getAppropriateDefault());
-		}
-
-		Object detectedCharset = encodingMemento.getDetectedCharsetName();
-		Object javaCharset = encodingMemento.getJavaCharsetName();
-
-		// we always include detected, if its different than java
-		handleDetectedSpecialCase(description, detectedCharset, javaCharset);
-
-		if (javaCharset != null) {
-			Object existingCharset = description.getProperty(IContentDescription.CHARSET);
-			if (javaCharset.equals(existingCharset)) {
-				handleDetectedSpecialCase(description, detectedCharset, javaCharset);
-			}
-			else {
-				// we may need to add what we found, but only need to add
-				// if different from default.the
-				Object defaultCharset = getDetector().getSpecDefaultEncoding();
-				if (defaultCharset != null) {
-					if (!defaultCharset.equals(javaCharset)) {
-						description.setProperty(IContentDescription.CHARSET, javaCharset);
-					}
-				}
-				else {
-					// assuming if there is no spec default, we always need to
-					// add, I'm assuming
-					description.setProperty(IContentDescription.CHARSET, javaCharset);
-				}
-			}
-		}
-
-		// avoid adding anything if not absolutly needed, since always
-		// "cached" per session
-		// description.setProperty(IContentDescriptionExtended.ENCODING_MEMENTO,
-		// encodingMemento);
-	}
-
-	private void handleDetectedSpecialCase(IContentDescription description, Object detectedCharset, Object javaCharset) {
-		// since equal, we don't need to add, but if our detected version is
-		// different than
-		// javaCharset, then we should add it. This will happen, for example,
-		// if there's
-		// differences in case, or differences due to override properties
-		if (detectedCharset != null) {
-			// if (!detectedCharset.equals(javaCharset)) {
-			// description.setProperty(IContentDescriptionExtended.DETECTED_CHARSET,
-			// detectedCharset);
-			// }
-
-			// Once we detected a charset, we should set the property even
-			// though it's the same as javaCharset
-			// because there are clients that rely on this property to
-			// determine if the charset is actually detected in file or not.
-			description.setProperty(IContentDescriptionExtended.DETECTED_CHARSET, detectedCharset);
-		}
-	}
-
-	/**
-	 * @param description
-	 * @return
-	 */
-	private boolean isRelevent(IContentDescription description) {
-		boolean result = false;
-		if (description == null)
-			result = false;
-		else if (description.isRequested(IContentDescription.BYTE_ORDER_MARK))
-			result = true;
-		else if (description.isRequested(IContentDescription.CHARSET))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.APPROPRIATE_DEFAULT))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.DETECTED_CHARSET))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.UNSUPPORTED_CHARSET))
-			result = true;
-		// else if
-		// (description.isRequested(IContentDescriptionExtended.ENCODING_MEMENTO))
-		// result = true;
-		return result;
-	}
-
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/content/ContentDescriberForDTD.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/content/ContentDescriberForDTD.java
deleted file mode 100644
index 75c1eca..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/content/ContentDescriberForDTD.java
+++ /dev/null
@@ -1,28 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.content;
-
-import org.eclipse.core.runtime.content.ITextContentDescriber;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-import org.eclipse.wst.xml.core.internal.contenttype.XMLResourceEncodingDetector;
-
-
-
-public class ContentDescriberForDTD extends AbstractContentDescriber implements ITextContentDescriber {
-
-	// same rules as for XML
-	protected IResourceCharsetDetector getDetector() {
-		return new XMLResourceEncodingDetector();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java
deleted file mode 100644
index 2d9c2c4..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/document/DTDModelImpl.java
+++ /dev/null
@@ -1,272 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.document;
-
-import java.io.File;
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.dtd.core.document.DTDModel;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Entity;
-import org.eclipse.wst.dtd.core.internal.NodeList;
-import org.eclipse.wst.dtd.core.internal.event.IDTDFileListener;
-import org.eclipse.wst.dtd.core.internal.event.NodesEvent;
-import org.eclipse.wst.dtd.core.internal.util.DTDReferenceUpdater;
-import org.eclipse.wst.dtd.core.internal.util.LabelValuePair;
-import org.eclipse.wst.sse.core.AbstractStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.events.IStructuredDocumentListener;
-import org.eclipse.wst.sse.core.events.NewDocumentEvent;
-import org.eclipse.wst.sse.core.events.NoChangeEvent;
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.RegionsReplacedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentRegionsReplacedEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-
-
-public final class DTDModelImpl extends AbstractStructuredModel implements IStructuredDocumentListener, DTDModel {
-
-	public static boolean deleteFile(String fileName) {
-		boolean result = false;
-
-		// create the temp File object
-		File file = new File(fileName);
-		if (file.exists())
-			result = file.delete();
-		return result;
-	}
-
-	private DTDFile document;
-
-	// private List errorMessages = new ArrayList();
-
-	// entity reference names found in the conditional IGNORE sections
-	private Vector ignoredEntityRefs;
-
-	private boolean refreshRequired = false;
-
-	protected DTDReferenceUpdater refUpdater = new DTDReferenceUpdater();
-
-	public DTDModelImpl() {
-		super();
-		document = new DTDFile(this);
-		document.addDTDFileListener(new IDTDFileListener() {
-
-			public void nodeChanged(DTDNode node) {
-				if (node instanceof Entity) {
-					Entity entity = (Entity) node;
-					if (entity.isParameterEntity() && entity.isExternalEntity()) {
-						// just say they have changed for now
-						setReferencedModelsChanged();
-					}
-				}
-			}
-
-			public void nodesAdded(NodesEvent event) {
-				checkIfExternalReferencesChanged(event);
-			}
-
-			public void nodesRemoved(NodesEvent event) {
-				checkIfExternalReferencesChanged(event);
-			}
-		});
-	}
-
-	public void beginRecording(Object requester, String label) {
-		super.beginRecording(requester, label);
-		// clear reference updater cache
-		getReferenceUpdater().clearCache();
-	}
-
-	private void checkIfExternalReferencesChanged(NodesEvent event) {
-		Iterator iter = event.getNodes().iterator();
-		while (iter.hasNext()) {
-			DTDNode node = (DTDNode) iter.next();
-			if (node instanceof Entity) {
-				Entity entity = (Entity) node;
-				if (entity.isParameterEntity() && entity.isExternalEntity()) {
-					// just say they have changed for now
-					setReferencedModelsChanged();
-				}
-			}
-		}
-	}
-
-	//
-	// The following function helps determine the list of things that
-	// can be used in a parameter entity reference content
-	// Optional parameter is to allow the currently used DTDEntity to
-	// be included in the combobox.
-	//
-	public LabelValuePair[] createParmEntityContentItems(Entity entity) {
-		NodeList entities = getDTDFile().getEntities();
-
-		Vector items = new Vector();
-
-		if (entity != null) {
-			String name = "%" + entity.getName() + ";"; //$NON-NLS-1$ //$NON-NLS-2$
-			items.addElement(new LabelValuePair(name, name));
-		}
-
-		for (Iterator i = entities.getNodes().iterator(); i.hasNext();) {
-			Entity entityAt = (Entity) i.next();
-			if (entityAt.isParameterEntity() && entityAt.isExternalEntity()) {
-				String name = "%" + entityAt.getName() + ";"; //$NON-NLS-1$ //$NON-NLS-2$
-				items.addElement(new LabelValuePair(name, name));
-			}
-		}
-		LabelValuePair[] comboArray = new LabelValuePair[items.size()];
-		items.copyInto(comboArray);
-		return comboArray;
-	}
-
-	public void endRecording(Object requester) {
-		super.endRecording(requester);
-		// clear reference updater cache
-		getReferenceUpdater().clearCache();
-	}
-
-
-	public DTDFile getDTDFile() {
-		return document;
-	}
-
-	// Returns entity reference names that are in
-	// the conditional IGNORE sections.
-	public Vector getIgnoredEntityRefs() {
-		if (ignoredEntityRefs == null)
-			ignoredEntityRefs = new Vector();
-		return ignoredEntityRefs;
-	}
-
-	public IndexedRegion getIndexedRegion(int offset) {
-		if (this.document == null)
-			return null;
-		// System.out.println("getNode at " + offset + " returning = " +
-		// this.document.getNodeAt(offset));
-
-		return this.document.getNodeAt(offset);
-	}
-
-	public DTDReferenceUpdater getReferenceUpdater() {
-		return refUpdater;
-	}
-
-	public boolean isReferencedModelsChanged() {
-		return refreshRequired;
-	}
-
-	public boolean isRefreshRequired() {
-		return refreshRequired;
-	}
-
-	public void newModel(NewDocumentEvent flatModelEvent) {
-		document.newModel(flatModelEvent);
-		// System.out.println("\nnewmodel");
-		outputStructuredDocument(flatModelEvent);
-	}
-
-	public void noChange(NoChangeEvent flatModelEvent) {
-		// System.out.println("\nnochange");
-		outputStructuredDocument(flatModelEvent);
-
-	}
-
-	public void nodesReplaced(StructuredDocumentRegionsReplacedEvent flatModelEvent) {
-		// System.out.println("\nnodesreplaced");
-		document.nodesReplaced(flatModelEvent);
-		outputStructuredDocument(flatModelEvent);
-
-	}
-
-	public void outputStructuredDocument(StructuredDocumentEvent flatModelEvent) {
-		// System.out.println("structuredDocument source = '" +
-		// flatModelEvent.getStructuredDocument().getText() + "'");
-		// System.out.println("new String = '" +
-		// flatModelEvent.getOriginalChanges() +"'");
-		// System.out.println("deleted String = '" +
-		// flatModelEvent.getDeletedText() +"'");
-		// Enumeration e =
-		// flatModelEvent.getStructuredDocument().getNodes().elements();
-		// int i = 0;
-		// for (; e.hasMoreElements(); i++)
-		// {
-		// BasicStructuredDocumentRegion node =
-		// (BasicStructuredDocumentRegion) e.nextElement();
-		// outputStructuredDocumentRegion(node);
-		// System.out.println(" " + i +". " + node.hashCode() + " '"
-		// +node.getText() + "'");
-		// }
-	}
-
-	public void outputStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		// int size = flatNode.getNumberOfRegions();
-		// for (int i = 0; i < size; i++)
-		// {
-		// Region region = (Region) flatNode.getRegions().get(i);
-		// System.out.println(i + ". " + region.getType());
-
-		// } // end of for ()
-
-	}
-
-	public void regionChanged(RegionChangedEvent flatModelEvent) {
-		// System.out.println("\nregion changed");
-		document.regionChanged(flatModelEvent);
-		// System.out.println("= " +
-		// flatModelEvent.getStructuredDocumentRegion().getText());
-		// System.out.println("region changed " +
-		// flatModelEvent.getRegion().hashCode() + " = " +
-		// flatModelEvent.getRegion());
-
-		outputStructuredDocument(flatModelEvent);
-	}
-
-	public void regionsReplaced(RegionsReplacedEvent flatModelEvent) {
-		// System.out.println("\nregion replaced");
-		document.regionsReplaced(flatModelEvent);
-		outputStructuredDocument(flatModelEvent);
-	}
-
-	public void setReferencedModelsChanged() {
-		refreshRequired = true;
-	}
-
-	public void setRefreshRequired(boolean value) {
-		refreshRequired = value;
-	}
-
-
-	/**
-	 * @param newStructuredDocument
-	 *            org.eclipse.wst.sse.core.text.IStructuredDocument
-	 */
-	public void setStructuredDocument(IStructuredDocument newStructuredDocument) {
-		IStructuredDocument oldStructuredDocument = super.getStructuredDocument();
-		if (newStructuredDocument == oldStructuredDocument)
-			return; // noting to do
-
-		if (oldStructuredDocument != null)
-			oldStructuredDocument.removeDocumentChangingListener(this);
-		super.setStructuredDocument(newStructuredDocument);
-		if (newStructuredDocument.getLength() > 0) {
-			newModel(new NewDocumentEvent(newStructuredDocument, this));
-		}
-		if (newStructuredDocument != null)
-			newStructuredDocument.addDocumentChangingListener(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/AbstractResourceEncodingDetector.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/AbstractResourceEncodingDetector.java
deleted file mode 100644
index e9c89af..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/AbstractResourceEncodingDetector.java
+++ /dev/null
@@ -1,262 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.encoding;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-import java.nio.charset.Charset;
-import java.nio.charset.IllegalCharsetNameException;
-import java.nio.charset.UnsupportedCharsetException;
-
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.sse.core.internal.encoding.CodedIO;
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-import org.eclipse.wst.sse.core.internal.encoding.util.ByteReader;
-
-
-public abstract class AbstractResourceEncodingDetector implements IResourceCharsetDetector {
-
-	protected EncodingMemento fEncodingMemento;
-
-	protected boolean fHeaderParsed;
-
-	protected Reader fReader;
-
-	/**
-	 * 
-	 */
-	public AbstractResourceEncodingDetector() {
-		super();
-	}
-
-	/**
-	 * Note: once this instance is created, trace info still needs to be
-	 * appended by caller, depending on the context its created.
-	 */
-	private void createEncodingMemento(String detectedCharsetName) {
-		fEncodingMemento = new EncodingMemento();
-		fEncodingMemento.setJavaCharsetName(getAppropriateJavaCharset(detectedCharsetName));
-		fEncodingMemento.setDetectedCharsetName(detectedCharsetName);
-		// TODO: if detectedCharset and spec default is
-		// null, need to use "work
-		// bench based" defaults.
-		fEncodingMemento.setAppropriateDefault(getSpecDefaultEncoding());
-	}
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 * 
-	 * @param detectedCharsetName
-	 * @param reason
-	 */
-	final protected void createEncodingMemento(String detectedCharsetName, String reason) {
-		createEncodingMemento(detectedCharsetName);
-	}
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 */
-	final protected void ensureInputSet() {
-		if (fReader == null) {
-			throw new IllegalStateException("input must be set before use"); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * This method can return null, if invalid charset name (in which case
-	 * "appropriateDefault" should be used, if a name is really need for some
-	 * "save anyway" cases).
-	 * 
-	 * @param detectedCharsetName
-	 * @return
-	 */
-	private String getAppropriateJavaCharset(String detectedCharsetName) {
-		String result = null;
-		// 1. Check explicit mapping overrides from
-		// property file -- its here we pick up "rules" for cases
-		// that are not even in Java
-		result = CodedIO.checkMappingOverrides(detectedCharsetName);
-		// 2. Use the "canonical" name from JRE mappings
-		// Note: see Charset JavaDoc, the name you get one
-		// with can be alias,
-		// the name you get back is "standard" name.
-		Charset javaCharset = null;
-		try {
-			javaCharset = Charset.forName(detectedCharsetName);
-		}
-		catch (UnsupportedCharsetException e) {
-			// only set invalid, if result is same as detected -- they won't
-			// be equal if
-			// overridden
-			if (result != null && result.equals(detectedCharsetName)) {
-				fEncodingMemento.setInvalidEncoding(detectedCharsetName);
-			}
-		}
-		catch (IllegalCharsetNameException e) {
-			// only set invalid, if result is same as detected -- they won't
-			// be equal if
-			// overridden
-			if (result != null && result.equals(detectedCharsetName)) {
-				fEncodingMemento.setInvalidEncoding(detectedCharsetName);
-			}
-		}
-		// give priority to java cononical name, if present
-		if (javaCharset != null) {
-			result = javaCharset.name();
-			// but still allow overrides
-			result = CodedIO.checkMappingOverrides(result);
-		}
-		return result;
-	}
-
-	public String getEncoding() throws IOException {
-		return getEncodingMemento().getDetectedCharsetName();
-	}
-
-	// to ensure consist overall rules used, we'll mark as
-	// final,
-	// and require subclasses to provide certain pieces of
-	// the
-	// implementation
-	public EncodingMemento getEncodingMemento() throws IOException {
-		ensureInputSet();
-		if (!fHeaderParsed) {
-			parseInput();
-			// we keep track of if header's already been
-			// parse, so can make
-			// multiple 'get' calls, without causing
-			// reparsing.
-			fHeaderParsed = true;
-			// Note: there is a "hidden assumption" here
-			// that an empty
-			// string in content should be treated same as
-			// not present.
-		}
-		if (fEncodingMemento == null) {
-			handleSpecDefault();
-		}
-		if (fEncodingMemento == null) {
-			// safty net
-			fEncodingMemento = new NullMemento();
-		}
-		return fEncodingMemento;
-	}
-
-	/**
-	 * This is to return a default encoding -- as specified by an industry
-	 * content type spec -- when not present in the stream, for example, XML
-	 * specifies UTF-8, JSP specifies ISO-8859-1. This method should return
-	 * null if there is no such "spec default".
-	 */
-	abstract public String getSpecDefaultEncoding();
-
-	public EncodingMemento getSpecDefaultEncodingMemento() {
-		resetAll();
-		EncodingMemento result = null;
-		String enc = getSpecDefaultEncoding();
-		if (enc != null) {
-			createEncodingMemento(enc, EncodingMemento.DEFAULTS_ASSUMED_FOR_EMPTY_INPUT);
-			fEncodingMemento.setAppropriateDefault(enc);
-			result = fEncodingMemento;
-		}
-		return result;
-	}
-
-	private void handleSpecDefault() {
-		String encodingName;
-		encodingName = getSpecDefaultEncoding();
-		if (encodingName != null) {
-			// createEncodingMemento(encodingName,
-			// EncodingMemento.USED_CONTENT_TYPE_DEFAULT);
-			fEncodingMemento = new EncodingMemento();
-			fEncodingMemento.setJavaCharsetName(encodingName);
-			fEncodingMemento.setAppropriateDefault(encodingName);
-		}
-	}
-
-	/**
-	 * Every subclass must provide a way to parse the input. This method has
-	 * several critical responsibilities:
-	 * <li>set the fEncodingMemento field appropriately, according to the
-	 * results of the parse of fReader.</li>
-	 * <li>set fHarderParsed to true, to avoid wasted re-parsing.</li>
-	 */
-	abstract protected void parseInput() throws IOException;
-
-	/**
-	 * 
-	 */
-	private void resetAll() {
-		fReader = null;
-		fHeaderParsed = false;
-		fEncodingMemento = null;
-	}
-
-	/**
-	 * 
-	 */
-	public void set(InputStream inputStream) {
-		resetAll();
-		fReader = new ByteReader(inputStream);
-		try {
-			fReader.mark(CodedIO.MAX_MARK_SIZE);
-		}
-		catch (IOException e) {
-			// impossible, since we know ByteReader
-			// supports marking
-			throw new Error(e);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void set(IStorage iStorage) throws CoreException {
-		resetAll();
-		InputStream inputStream = iStorage.getContents();
-		InputStream resettableStream = new BufferedInputStream(inputStream, CodedIO.MAX_BUF_SIZE);
-		resettableStream.mark(CodedIO.MAX_MARK_SIZE);
-		set(resettableStream);
-		// TODO we'll need to "remember" IFile, or
-		// get its (or its project's) settings, in case
-		// those are needed to handle cases when the
-		// encoding is not in the file stream.
-	}
-
-	/**
-	 * Note: this is not part of interface to help avoid confusion ... it
-	 * expected this Reader is a well formed character reader ... that is, its
-	 * all ready been determined to not be a unicode marked input stream. And,
-	 * its assumed to be in the correct position, at position zero, ready to
-	 * read first character.
-	 */
-	public void set(Reader reader) {
-		resetAll();
-		fReader = reader;
-		if (!fReader.markSupported()) {
-			fReader = new BufferedReader(fReader);
-		}
-		try {
-			fReader.mark(CodedIO.MAX_MARK_SIZE);
-		}
-		catch (IOException e) {
-			// impossble, since we just checked if markable
-			throw new Error(e);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/DTDDocumentCharsetDetector.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/DTDDocumentCharsetDetector.java
deleted file mode 100644
index 04ab61f..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/DTDDocumentCharsetDetector.java
+++ /dev/null
@@ -1,60 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-/*
- * Created on 28-Aug-03
- * 
- * 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.dtd.core.internal.encoding;
-
-import java.io.IOException;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.wst.sse.core.document.DocumentReader;
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-import org.eclipse.wst.xml.core.encoding.XMLDocumentCharsetDetector;
-
-
-/**
- * @author kboo
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public final class DTDDocumentCharsetDetector extends AbstractResourceEncodingDetector implements IDocumentCharsetDetector {
-
-	public String getSpecDefaultEncoding() {
-		// by default, UTF-8 as per XML spec
-		final String enc = "UTF-8"; //$NON-NLS-1$
-		return enc;
-	}
-
-	/**
-	 * 
-	 */
-
-	protected void parseInput() throws IOException {
-		IDocumentCharsetDetector documentEncodingDetector = new XMLDocumentCharsetDetector();
-		documentEncodingDetector.set(fReader);
-		fEncodingMemento = documentEncodingDetector.getEncodingMemento();
-
-	}
-
-	public void set(IDocument document) {
-		set(new DocumentReader(document, 0));
-
-
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/DTDDocumentLoader.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/DTDDocumentLoader.java
deleted file mode 100644
index de584c7..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/DTDDocumentLoader.java
+++ /dev/null
@@ -1,64 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.encoding;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionParser;
-import org.eclipse.wst.dtd.core.internal.text.DTDStructuredDocumentReParser;
-import org.eclipse.wst.dtd.core.internal.text.StructuredTextPartitionerForDTD;
-import org.eclipse.wst.sse.core.document.AbstractDocumentLoader;
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.document.IEncodedDocument;
-import org.eclipse.wst.sse.core.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-
-
-public final class DTDDocumentLoader extends AbstractDocumentLoader {
-
-	public DTDDocumentLoader() {
-		super();
-	}
-
-	public IDocumentPartitioner getDefaultDocumentPartitioner() {
-		return new StructuredTextPartitionerForDTD();
-	}
-
-	public IDocumentCharsetDetector getDocumentEncodingDetector() {
-		if (fDocumentEncodingDetector == null) {
-			fDocumentEncodingDetector = new DTDDocumentCharsetDetector();
-		}
-		return fDocumentEncodingDetector;
-	}
-
-	public RegionParser getParser() {
-		return new DTDRegionParser();
-	}
-
-	protected String getSpecDefaultEncoding() {
-		String enc = "UTF-8"; //$NON-NLS-1$
-		return enc;
-	}
-
-	protected IEncodedDocument newEncodedDocument() {
-		IStructuredDocument document = StructuredDocumentFactory.getNewStructuredDocumentInstance(getParser());
-		DTDStructuredDocumentReParser reParser = new DTDStructuredDocumentReParser();
-		reParser.setStructuredDocument(document);
-		if (document instanceof BasicStructuredDocument) {
-			((BasicStructuredDocument) document).setReParser(reParser);
-		}
-		return document;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/NullMemento.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/NullMemento.java
deleted file mode 100644
index 0cd01fc..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/encoding/NullMemento.java
+++ /dev/null
@@ -1,36 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.encoding;
-
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.NonContentBasedEncodingRules;
-
-
-
-/**
- * This class can be used in place of an EncodingMemento (its super class),
- * when there is not in fact ANY encoding information. For example, when a
- * structuredDocument is created directly from a String
- */
-public class NullMemento extends EncodingMemento {
-	/**
-	 * 
-	 */
-	public NullMemento() {
-		super();
-		String defaultCharset = NonContentBasedEncodingRules.useDefaultNameRules(null);
-		setJavaCharsetName(defaultCharset);
-		setAppropriateDefault(defaultCharset);
-		setDetectedCharsetName(null);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/event/IDTDFileListener.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/event/IDTDFileListener.java
deleted file mode 100644
index fe29fb5..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/event/IDTDFileListener.java
+++ /dev/null
@@ -1,24 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.event;
-
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-
-public interface IDTDFileListener {
-
-	public void nodeChanged(DTDNode node);
-
-	public void nodesAdded(NodesEvent event);
-
-	public void nodesRemoved(NodesEvent event);
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/event/NodesEvent.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/event/NodesEvent.java
deleted file mode 100644
index 89974e8..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/event/NodesEvent.java
+++ /dev/null
@@ -1,32 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.event;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-
-
-public final class NodesEvent {
-	private ArrayList changedNodes = new ArrayList();
-
-	public void add(DTDNode changedNode) {
-		changedNodes.add(changedNode);
-	}
-
-	public List getNodes() {
-		return changedNodes;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/modelhandler/DTDModelLoader.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/modelhandler/DTDModelLoader.java
deleted file mode 100644
index f5c54c9..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/modelhandler/DTDModelLoader.java
+++ /dev/null
@@ -1,47 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.modelhandler;
-
-import org.eclipse.wst.dtd.core.internal.document.DTDModelImpl;
-import org.eclipse.wst.dtd.core.internal.encoding.DTDDocumentLoader;
-import org.eclipse.wst.sse.core.AbstractModelLoader;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IModelLoader;
-import org.eclipse.wst.sse.core.document.IDocumentLoader;
-
-
-
-public final class DTDModelLoader extends AbstractModelLoader {
-	public DTDModelLoader() {
-		super();
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		if (documentLoaderInstance == null) {
-			documentLoaderInstance = new DTDDocumentLoader();
-		}
-		return documentLoaderInstance;
-	}
-
-	public IModelLoader newInstance() {
-		return new DTDModelLoader();
-	}
-
-	public IStructuredModel newModel() {
-		IStructuredModel model = new DTDModelImpl();
-		// now done in create
-		// model.setStructuredDocument(createNewStructuredDocument());
-		// model.setFactoryRegistry(defaultFactoryRegistry());
-		return model;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/modelhandler/ModelHandlerForDTD.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/modelhandler/ModelHandlerForDTD.java
deleted file mode 100644
index 392de31..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/modelhandler/ModelHandlerForDTD.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.modelhandler;
-
-import org.eclipse.wst.dtd.core.internal.encoding.DTDDocumentCharsetDetector;
-import org.eclipse.wst.dtd.core.internal.encoding.DTDDocumentLoader;
-import org.eclipse.wst.sse.core.IModelLoader;
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.modelhandler.AbstractModelHandler;
-import org.eclipse.wst.sse.core.modelhandler.IModelHandler;
-
-
-public final class ModelHandlerForDTD extends AbstractModelHandler implements IModelHandler {
-	private static String AssociatedContentTypeId = "org.eclipse.wst.dtd.core.dtdsource"; //$NON-NLS-1$
-	private static String ModelHandlerID = "org.eclipse.wst.dtd.core.internal.modelhandler"; //$NON-NLS-1$
-
-	public ModelHandlerForDTD() {
-		super();
-		setId(ModelHandlerID);
-		setAssociatedContentTypeId(AssociatedContentTypeId);
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		return new DTDDocumentLoader();
-	}
-
-	public IDocumentCharsetDetector getEncodingDetector() {
-		return new DTDDocumentCharsetDetector();
-	}
-
-	public IModelLoader getModelLoader() {
-		return new DTDModelLoader();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegion.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegion.java
deleted file mode 100644
index f2c7aa2..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegion.java
+++ /dev/null
@@ -1,32 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.parser;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.parser.ContextRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-
-
-
-public class DTDRegion extends ContextRegion {
-
-
-	public DTDRegion(String newContext, int newStart, int newLength) {
-		super(newContext, newStart, newLength, newLength);
-	}
-
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion flatnode, String changes, int requestStart, int requestLength) {
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionFactory.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionFactory.java
deleted file mode 100644
index 30607a6..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionFactory.java
+++ /dev/null
@@ -1,26 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.parser;
-
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-public class DTDRegionFactory implements DTDRegionTypes {
-	public static ITextRegion createRegion(String tokenKind, int start, int length) {
-		ITextRegion region = null;
-		if (tokenKind != null) {
-			region = new DTDRegion(tokenKind, start, length);
-		}
-		return region;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionParser.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionParser.java
deleted file mode 100644
index 470074a..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionParser.java
+++ /dev/null
@@ -1,271 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.parser;
-
-import java.io.Reader;
-import java.io.StringReader;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Vector;
-
-import org.eclipse.wst.dtd.core.internal.text.DTDStructuredDocumentRegionFactory;
-import org.eclipse.wst.dtd.core.internal.tokenizer.DTDTokenizer;
-import org.eclipse.wst.dtd.core.internal.tokenizer.Token;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public class DTDRegionParser implements RegionParser {
-	private Vector cachedRegions = null;
-	private DTDTokenizer tokenizer = null;
-	private IStructuredDocumentRegion cachedNode = null; // top of node
-															// chain
-
-	public RegionParser newInstance() {
-		return new DTDRegionParser();
-	}
-
-	private IStructuredDocumentRegion addNewNodes(IStructuredDocumentRegion lastNode, Vector regions) {
-		IStructuredDocumentRegion leadingSpaceNode = null;
-		IStructuredDocumentRegion contentNode = null;
-		IStructuredDocumentRegion trailingSpaceNode = null;
-		LinkedList nodeSeeds = new LinkedList();
-		int nRegions = regions.size();
-		int leadingSpaceEnd = -1;
-		int trailingSpaceBegin = nRegions;
-
-		// find leading space
-		nodeSeeds.clear();
-		for (int i = 0; i < nRegions; i++) {
-			ITextRegion region = (ITextRegion) regions.get(i);
-			String type = region.getType();
-			if (isBlankRegion(type)) {
-				leadingSpaceEnd = i;
-				nodeSeeds.addLast(region);
-			}
-			else {
-				break;
-			}
-		}
-		if (!nodeSeeds.isEmpty()) {
-			leadingSpaceNode = createNode(nodeSeeds);
-			if (lastNode != null) {
-				lastNode.setNext(leadingSpaceNode);
-				leadingSpaceNode.setPrevious(lastNode);
-			}
-			lastNode = leadingSpaceNode;
-		}
-
-		// find trailing space
-		if (leadingSpaceEnd < nRegions - 1) {
-			nodeSeeds.clear();
-			for (int i = nRegions - 1; 0 <= i; i--) {
-				ITextRegion region = (ITextRegion) regions.get(i);
-				String type = ((ITextRegion) regions.get(i)).getType();
-				if (isBlankRegion(type)) {
-					trailingSpaceBegin = i;
-					nodeSeeds.addFirst(region);
-				}
-				else {
-					break;
-				}
-			}
-			if (!nodeSeeds.isEmpty()) {
-				trailingSpaceNode = createNode(nodeSeeds);
-			}
-
-			nodeSeeds.clear();
-			for (int i = leadingSpaceEnd + 1; i < trailingSpaceBegin; i++) {
-				nodeSeeds.addLast(regions.get(i));
-			}
-			if (!nodeSeeds.isEmpty()) {
-				contentNode = createNode(nodeSeeds);
-				if (lastNode != null) {
-					lastNode.setNext(contentNode);
-					contentNode.setPrevious(lastNode);
-				}
-				lastNode = contentNode;
-			}
-			if (trailingSpaceNode != null) {
-				lastNode.setNext(trailingSpaceNode);
-				trailingSpaceNode.setPrevious(lastNode);
-				lastNode = trailingSpaceNode;
-			}
-		}
-
-		return lastNode;
-	}
-
-	private IStructuredDocumentRegion createNode(LinkedList regions) {
-		if (regions.size() == 0) {
-			return null;
-		}
-
-		IStructuredDocumentRegion node = DTDStructuredDocumentRegionFactory.createStructuredDocumentRegion(DTDStructuredDocumentRegionFactory.DTD_GENERIC);
-		int start = ((ITextRegion) regions.getFirst()).getStart();
-		int length = ((ITextRegion) regions.getLast()).getEnd() - start;
-		node.setStart(start);
-		node.setLength(length);
-		for (ListIterator i = regions.listIterator(0); i.hasNext();) {
-			ITextRegion region = (ITextRegion) i.next();
-			node.addRegion(region);
-			region.adjustStart(-start);
-		}
-		node.setEnded(true);
-
-		return node;
-	}
-
-	private IStructuredDocumentRegion createNodeChain(List regions) {
-		IStructuredDocumentRegion headNode = null;
-		IStructuredDocumentRegion lastNode = null;
-		Vector nodeSeeds = new Vector();
-
-		for (Iterator e = regions.iterator(); e.hasNext();) {
-			ITextRegion region = (ITextRegion) e.next();
-			String type = region.getType();
-			// If the following regions appear,
-			// a previous node is closed in front of it.
-			if (!nodeSeeds.isEmpty() && isBeginningRegion(type)) {
-				lastNode = addNewNodes(lastNode, nodeSeeds);
-				nodeSeeds.clear();
-			}
-			nodeSeeds.addElement(region);
-
-			// The following regions close the current node.
-			if (!nodeSeeds.isEmpty() && isEndingRegion(type)) {
-				lastNode = addNewNodes(lastNode, nodeSeeds);
-				nodeSeeds.clear();
-			}
-
-			if (headNode == null && lastNode != null) {
-				headNode = findFirstNode(lastNode);
-			}
-		}
-
-		// close current node forcibly.
-		if (!nodeSeeds.isEmpty()) {
-			lastNode = addNewNodes(lastNode, nodeSeeds);
-			if (headNode == null && lastNode != null) {
-				headNode = findFirstNode(lastNode);
-			}
-		}
-		return headNode;
-	}
-
-	private IStructuredDocumentRegion findFirstNode(IStructuredDocumentRegion node) {
-		IStructuredDocumentRegion firstNode = node;
-		IStructuredDocumentRegion prevNode = null;
-		while ((prevNode = firstNode.getPrevious()) != null) {
-			firstNode = prevNode;
-		}
-		return firstNode;
-	}
-
-	public IStructuredDocumentRegion getDocumentRegions() {
-		if (cachedNode != null) {
-			return cachedNode;
-		}
-
-		List regions = getRegions();
-		IStructuredDocumentRegion headNode = createNodeChain(regions);
-		cachedNode = headNode;
-
-		return headNode;
-	}
-
-	public List getRegions() {
-		if (cachedRegions != null) {
-			return cachedRegions;
-		}
-
-		Vector regions = new Vector();
-		Token currentToken = null;
-		do {
-			try {
-				currentToken = (Token) tokenizer.yylex();
-				if (currentToken != null) {
-					ITextRegion region = DTDRegionFactory.createRegion(currentToken.getType(), currentToken.getStartOffset(), currentToken.getLength());
-					regions.add(region);
-				}
-			}
-			catch (java.io.FileNotFoundException e) {
-				System.out.println("File not found"); //$NON-NLS-1$
-			}
-			catch (java.io.IOException e) {
-				System.out.println("Error opening file"); //$NON-NLS-1$
-			}
-		}
-		while (currentToken != null);
-
-		cachedRegions = regions;
-		return regions;
-	}
-
-	public void reset(Reader reader) {
-		if (tokenizer == null) {
-			try {
-				tokenizer = new DTDTokenizer(reader);
-			}
-			catch (ArrayIndexOutOfBoundsException e) {
-				System.out.println("Usage : java DTDTokenizer <inputfile>"); //$NON-NLS-1$
-			}
-		}
-		else {
-			try {
-				tokenizer.yyreset(reader);
-			}
-			catch (java.io.IOException e) {
-				System.out.println("Error opening file"); //$NON-NLS-1$
-			}
-		}
-
-		cachedNode = null;
-		cachedRegions = null;
-	}
-
-	/**
-	 * An additional offset for use with any position-dependant parsing rules
-	 */
-	public void reset(Reader reader, int offset) {
-		reset(reader);
-	}
-
-	public void reset(String input) {
-		reset(new StringReader(input));
-	}
-
-	public void reset(String input, int offset) {
-		reset(input);
-	}
-
-	// never used
-	DTDTokenizer getTokenizer() {
-		return tokenizer;
-	}
-
-	private boolean isBeginningRegion(String type) {
-		return (type == DTDRegionTypes.START_TAG) || (type == DTDRegionTypes.ENTITY_PARM);
-	}
-
-	private boolean isBlankRegion(String type) {
-		return (type == DTDRegionTypes.WHITESPACE);
-	}
-
-	private boolean isEndingRegion(String type) {
-		return (type == DTDRegionTypes.END_TAG) || (type == DTDRegionTypes.ENTITY_PARM) || (type == DTDRegionTypes.COMMENT_END);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionTypes.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionTypes.java
deleted file mode 100644
index 50ecd6b..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/parser/DTDRegionTypes.java
+++ /dev/null
@@ -1,76 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.parser;
-
-public interface DTDRegionTypes {
-	public static final String regionPrefix = "org.eclipse.wst.dtd.core.internal.util.parser.DTDRegionTypes."; //$NON-NLS-1$
-
-	public static final String NAME = regionPrefix + "NAME"; //$NON-NLS-1$
-	public static final String START_TAG = regionPrefix + "START_TAG"; //$NON-NLS-1$
-	public static final String END_TAG = regionPrefix + "END_TAG"; //$NON-NLS-1$
-	public static final String LEFT_PAREN = regionPrefix + "LEFT_PAREN"; //$NON-NLS-1$
-	public static final String RIGHT_PAREN = regionPrefix + "RIGHT_PAREN"; //$NON-NLS-1$
-	public static final String WHITESPACE = regionPrefix + "WHITESPACE"; //$NON-NLS-1$
-	public static final String CONNECTOR = regionPrefix + "CONNECTOR"; //$NON-NLS-1$
-
-	public static final String OCCUR_TYPE = regionPrefix + "OCCUR_TYPE"; //$NON-NLS-1$
-	public static final String EXCLAMATION = regionPrefix + "EXCLAMATION"; //$NON-NLS-1$
-	public static final String PERCENT = regionPrefix + "PERCENT"; //$NON-NLS-1$
-	public static final String SEMICOLON = regionPrefix + "SEMICOLON"; //$NON-NLS-1$
-	public static final String COMMENT_START = regionPrefix + "COMMENT"; //$NON-NLS-1$
-	public static final String COMMENT_CONTENT = regionPrefix + "COMMENT_CONTENT"; //$NON-NLS-1$
-	public static final String COMMENT_END = regionPrefix + "COMMENT_END"; //$NON-NLS-1$
-
-	public static final String NOTATION_TAG = regionPrefix + "NOTATION_TAG"; //$NON-NLS-1$
-	public static final String NOTATION_CONTENT = regionPrefix + "NOTATION_CONTENT"; //$NON-NLS-1$
-
-	public static final String ENTITY_TAG = regionPrefix + "ENTITY_TAG"; //$NON-NLS-1$
-	public static final String ENTITY_PARM = regionPrefix + "ENTITY_PARM"; //$NON-NLS-1$
-	public static final String ENTITY_CONTENT = regionPrefix + "ENTITY_CONTENT"; //$NON-NLS-1$
-	public static final String NDATA_VALUE = regionPrefix + "NDATA_VALUE"; //$NON-NLS-1$
-
-	public static final String ELEMENT_TAG = regionPrefix + "ELEMENT_TAG"; //$NON-NLS-1$
-	public static final String ELEMENT_CONTENT = regionPrefix + "ELEMENT_CONTENT"; //$NON-NLS-1$
-	public static final String CONTENT_EMPTY = regionPrefix + "CONTENT_EMPTY"; //$NON-NLS-1$
-	public static final String CONTENT_ANY = regionPrefix + "CONTENT_ANY"; //$NON-NLS-1$
-	public static final String CONTENT_PCDATA = regionPrefix + "CONTENT_PCDATA"; //$NON-NLS-1$
-
-	public static final String ATTLIST_TAG = regionPrefix + "ATTLIST_TAG"; //$NON-NLS-1$
-
-	public static final String SYSTEM_KEYWORD = regionPrefix + "SYSTEM_KEYWORD"; //$NON-NLS-1$
-	public static final String PUBLIC_KEYWORD = regionPrefix + "PUBLIC_KEYWORD"; //$NON-NLS-1$
-	public static final String NDATA_KEYWORD = regionPrefix + "NDATA_KEYWORD"; //$NON-NLS-1$
-	public static final String SINGLEQUOTED_LITERAL = regionPrefix + "SINGLEQUOTED_LITERAL"; //$NON-NLS-1$
-	public static final String DOUBLEQUOTED_LITERAL = regionPrefix + "DOUBLEQUOTED_LITERAL"; //$NON-NLS-1$
-	public static final String UNKNOWN_CONTENT = regionPrefix + "UNKNOWN_CONTENT"; //$NON-NLS-1$
-
-	public static final String ATTRIBUTE_NAME = regionPrefix + "ATTRIBUTE_NAME"; //$NON-NLS-1$
-
-	// attribute type keywords
-	public static final String CDATA_KEYWORD = regionPrefix + "CDATA_KEYWORD"; //$NON-NLS-1$
-	public static final String ID_KEYWORD = regionPrefix + "ID_KEYWORD"; //$NON-NLS-1$
-	public static final String IDREF_KEYWORD = regionPrefix + "IDREF_KEYWORD"; //$NON-NLS-1$
-	public static final String IDREFS_KEYWORD = regionPrefix + "IDREFS_KEYWORD"; //$NON-NLS-1$
-	public static final String ENTITY_KEYWORD = regionPrefix + "ENTITY_KEYWORD"; //$NON-NLS-1$
-	public static final String ENTITIES_KEYWORD = regionPrefix + "ENTITIES_KEYWORD"; //$NON-NLS-1$
-	public static final String NMTOKEN_KEYWORD = regionPrefix + "NMTOKEN_KEYWORD"; //$NON-NLS-1$
-	public static final String NMTOKENS_KEYWORD = regionPrefix + "NMTOKENS_KEYWORD"; //$NON-NLS-1$
-	public static final String NOTATION_KEYWORD = regionPrefix + "NOTATION_KEYWORD"; //$NON-NLS-1$
-	public static final String ENUM_CHOICE = regionPrefix + "ENUM_CHOICE"; //$NON-NLS-1$
-	public static final String PARM_ENTITY_TYPE = regionPrefix + "PARM_ENTITY_TYPE"; //$NON-NLS-1$
-
-	// attribute defaults keywords
-	public static final String REQUIRED_KEYWORD = regionPrefix + "REQUIRED_KEYWORD"; //$NON-NLS-1$
-	public static final String IMPLIED_KEYWORD = regionPrefix + "IMPLIED_KEYWORD"; //$NON-NLS-1$
-	public static final String FIXED_KEYWORD = regionPrefix + "FIXED_KEYWORD"; //$NON-NLS-1$
-}// DTDRegionTypes
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/DTDStructuredDocumentReParser.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/DTDStructuredDocumentReParser.java
deleted file mode 100644
index b4d24ea..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/DTDStructuredDocumentReParser.java
+++ /dev/null
@@ -1,41 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.text;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.text.StructuredDocumentReParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredTextReParser;
-
-
-public class DTDStructuredDocumentReParser extends StructuredDocumentReParser {
-
-	public StructuredDocumentEvent checkForCrossStructuredDocumentRegionBoundryCases() {
-		IStructuredDocumentRegion startNode = fStructuredDocument.getRegionAtCharacterOffset(fStart);
-		IStructuredDocumentRegion endNode = fStructuredDocument.getRegionAtCharacterOffset(fStart + fLengthToReplace - 1);
-		return reparse(startNode.getStart(), endNode.getEnd());
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.internal.text.StructuredDocumentReParser#newInstance()
-	 */
-	public IStructuredTextReParser newInstance() {
-		return new DTDStructuredDocumentReParser();
-	}
-
-	protected StructuredDocumentEvent reparse(IStructuredDocumentRegion dirtyStart, IStructuredDocumentRegion dirtyEnd) {
-		return super.reparse(dirtyStart, dirtyEnd);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/DTDStructuredDocumentRegionFactory.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/DTDStructuredDocumentRegionFactory.java
deleted file mode 100644
index 816ffac..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/DTDStructuredDocumentRegionFactory.java
+++ /dev/null
@@ -1,33 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.text;
-
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-
-
-public class DTDStructuredDocumentRegionFactory {
-	public static final int DTD_GENERIC = 5;
-
-	public static IStructuredDocumentRegion createStructuredDocumentRegion(int type) {
-		IStructuredDocumentRegion instance = null;
-		switch (type) {
-			case DTD_GENERIC :
-				instance = new BasicStructuredDocumentRegion();
-				break;
-			default :
-				break;
-		}
-		return instance;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/RegionIterator.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/RegionIterator.java
deleted file mode 100644
index e04c4e4..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/RegionIterator.java
+++ /dev/null
@@ -1,84 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.text;
-
-import java.util.NoSuchElementException;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-
-
-public class RegionIterator {
-
-	private int currentIndex;
-
-	// private IStructuredDocumentRegion flatNode;
-	private ITextRegionList regions;
-	// private int startOffset, endOffset;
-	private ITextRegion startRegion, endRegion;
-
-	public RegionIterator(IStructuredDocumentRegion node) {
-		this(node, node.getStart(), node.getEnd());
-	}
-
-	public RegionIterator(IStructuredDocumentRegion node, int startOffset, int endOffset) {
-		regions = node.getRegions();
-		startRegion = node.getRegionAtCharacterOffset(startOffset);
-		endRegion = node.getRegionAtCharacterOffset(endOffset - 1);
-
-		for (int i = 0; i < regions.size(); i++) {
-			ITextRegion region = regions.get(i);
-			if (startRegion == region) {
-				currentIndex = i;
-				break;
-			}
-		}
-	}
-
-	public RegionIterator(ITextRegionList regions) {
-		this.regions = regions;
-		startRegion = regions.get(0);
-		endRegion = regions.get(regions.size() - 1);
-		currentIndex = 0;
-		// this(node, node.getStart(), node.getEnd());
-	}
-
-	public boolean hasNext() {
-		if (currentIndex < regions.size()) {
-			return currentIndex <= regions.indexOf(endRegion);
-		}
-		return false;
-	}
-
-	public boolean hasPrevious() {
-		if (currentIndex >= 0) {
-			return currentIndex >= regions.indexOf(startRegion);
-		}
-		return false;
-	}
-
-	public ITextRegion next() {
-		if (hasNext()) {
-			return regions.get(currentIndex++);
-		}
-		throw new NoSuchElementException();
-	}
-
-	public ITextRegion previous() {
-		if (hasPrevious()) {
-			return regions.get(--currentIndex);
-		}
-		throw new NoSuchElementException();
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/StructuredTextPartitionerForDTD.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/StructuredTextPartitionerForDTD.java
deleted file mode 100644
index 99f5d9c..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/text/StructuredTextPartitionerForDTD.java
+++ /dev/null
@@ -1,42 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.text;
-
-import org.eclipse.wst.dtd.core.text.IDTDPartitions;
-import org.eclipse.wst.sse.core.internal.text.rules.StructuredTextPartitioner;
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-
-public class StructuredTextPartitionerForDTD extends StructuredTextPartitioner {
-
-	public StructuredTextPartitionerForDTD() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.text.rules.StructuredTextPartitioner#getDefault()
-	 */
-	public String getDefault() {
-		return IDTDPartitions.DTD_DEFAULT;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.text.rules.StructuredTextPartitioner#initLegalContentTypes()
-	 */
-	protected void initLegalContentTypes() {
-		fSupportedTypes = new String[]{IDTDPartitions.DTD_DEFAULT, IStructuredPartitions.UNKNOWN_PARTITION};
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/DTDTokenizer.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/DTDTokenizer.java
deleted file mode 100644
index c7ab6f6..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/DTDTokenizer.java
+++ /dev/null
@@ -1,1091 +0,0 @@
-/* The following code was generated by JFlex 1.3.5 on 3/14/05 9:37 PM */
-
-/*******************************************************************************
- * 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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.eclipse.wst.dtd.core.internal.tokenizer;
-
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-
-/** 
- * Generate with "dtdskeleton".
- *
- * It removes some unused fields and avoids some compiler warnings 
- */
-
-
-/**
- * This class is a scanner generated by 
- * <a href="http://www.jflex.de/">JFlex</a> 1.3.5
- * on 3/14/05 9:37 PM from the specification file
- * <tt>file:/D:/eclipse.wtp/workspace/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtd.flex</tt>
- */
-public class DTDTokenizer {
-
-  /** This character denotes the end of file */
-  final public static int YYEOF = -1;
-
-  /** initial size of the lookahead buffer */
-  final private static int YY_BUFFERSIZE = 16384;
-
-  /** lexical states */
-  final public static int ATTRIBUTE_ENUMERATION = 13;
-  final public static int NOTATION_NAME = 6;
-  final public static int ELEMENT_CHILD = 1;
-  final public static int ENTITY_CONTENT = 4;
-  final public static int COMMENT_CONTENT = 8;
-  final public static int ATTLIST_NAME = 9;
-  final public static int EXTERNALID_CONTENT = 7;
-  final public static int ELEMENT_CONTENT = 1;
-  final public static int ELEMENT_MIXED = 1;
-  final public static int ELEMENT_MIXED_OR_CHILD = 1;
-  final public static int ATTRIBUTE_CONTENT = 11;
-  final public static int ENTITY_NAME = 3;
-  final public static int ATTRIBUTE_DEFAULT = 12;
-  final public static int ELEMENT_NAME = 2;
-  final public static int YYINITIAL = 0;
-  final public static int NDATA_CONTENT = 5;
-  final public static int ATTLIST_CONTENT = 10;
-  final public static int NODE = 1;
-
-  /** 
-   * Translates characters to character classes
-   */
-  final private static String yycmap_packed = 
-    "\10\0\1\0\1\5\1\3\1\0\1\0\1\2\22\0\1\5\1\6"+
-    "\1\1\1\37\1\0\1\23\1\0\1\46\1\42\1\43\1\4\1\7"+
-    "\1\45\1\12\1\0\1\0\12\0\1\0\1\10\1\11\1\0\1\13"+
-    "\1\4\1\0\1\25\1\31\1\32\1\33\1\14\1\35\2\0\1\21"+
-    "\1\0\1\36\1\15\1\16\1\17\1\24\1\27\1\40\1\34\1\26"+
-    "\1\20\1\30\2\0\1\41\1\22\1\0\1\0\1\0\2\0\1\0"+
-    "\1\0\32\0\1\0\1\44\uff83\0";
-
-  /** 
-   * Translates characters to character classes
-   */
-  final private static char [] yycmap = yy_unpack_cmap(yycmap_packed);
-
-  /** 
-   * Translates a state to a row index in the transition table
-   */
-  final private static int yy_rowMap [] = { 
-        0,    39,    78,   117,   156,   195,   234,   273,   312,   351, 
-      390,   429,   468,   507,   546,   585,   624,    39,    39,    39, 
-      663,   702,   741,   780,   819,    39,    39,   858,   897,    39, 
-       39,   936,   936,   975,  1014,  1053,  1092,  1131,  1170,  1209, 
-     1248,  1287,  1326,  1365,  1404,  1443,    39,  1482,  1521,  1560, 
-     1599,  1638,    39,  1677,  1716,  1755,  1794,  1833,  1872,    39, 
-       39,  1911,  1950,  1989,  2028,  2067,  2106,    39,    39,    39, 
-     2145,  2184,  2223,  2262,  2301,  2340,  2379,   897,  2418,   975, 
-     2457,  2496,  2535,  2574,   975,  2613,  2652,  2691,  2730,  1560, 
-     2769,  2808,  2847,  2886,  2925,  2964,  3003,  3042,  3081,  3120, 
-     1950,  3159,  3198,  3237,  3276,  3315,  1950,    39,  3354,  3393, 
-     3432,    39,  3471,  3510,  3549,    39,  3588,  3627,    39,  3666, 
-     3705,  3744,    39,    39,  3783,  3822,  3861,  3900,  3939,  3978, 
-     4017,  4056,    39,  4095,  4134,  4173,    39,  4212,  4251,  4290, 
-     4329,  4368,  4407,  4446,  4485,  4524,  4563,  4602,  4641,  4680, 
-     4719,  4758,  4797,  4836,  4875,  4914,  4953,  4992,  5031,  5070, 
-     5109,  5148,  5187,  5226,  5265,  5304,  5343,   975,  5382,  5421, 
-     5460,  5499,  5538,  5577,  1560,  5616,  5655,  5694,  5733,  5772, 
-     5811,  5850,   546,  5889,  5928,  5967,  6006,   975,   975,   975, 
-     6045,  1560,  6084,  6123,  1560,  6162,  6201,  6240,  1950,   546, 
-     6279,   546,   819,  6318,  6357,  6396,  6435,  6474,  6513,   546, 
-     6552,  1560,  1560,  1560,  1950,  6591,    39,  1950
-  };
-
-  /** 
-   * The packed transition table of the DFA (part 0)
-   */
-  final private static String yy_packed0 = 
-    "\2\17\2\20\1\17\1\20\1\21\1\17\1\22\1\23"+
-    "\1\17\1\24\1\25\2\17\1\26\3\17\1\27\1\17"+
-    "\1\30\21\17\47\0\2\31\2\20\1\32\1\20\1\0"+
-    "\1\32\1\31\1\33\1\31\1\33\23\31\1\34\2\31"+
-    "\1\35\1\36\2\37\1\31\2\40\2\20\1\0\1\20"+
-    "\3\40\1\33\1\40\1\33\7\40\1\41\16\40\4\0"+
-    "\1\40\1\42\1\43\2\20\1\42\1\20\3\42\1\33"+
-    "\1\42\1\33\12\42\1\44\1\45\16\42\1\46\2\47"+
-    "\2\20\1\47\1\20\3\47\1\33\1\47\1\33\33\47"+
-    "\2\50\2\20\1\0\1\20\2\0\1\50\1\33\1\50"+
-    "\1\33\26\50\4\0\1\50\1\42\1\43\2\20\1\42"+
-    "\1\20\3\42\1\33\1\42\1\33\3\42\1\51\6\42"+
-    "\1\52\1\53\16\42\1\46\2\54\2\55\1\54\1\55"+
-    "\4\54\1\56\1\57\33\54\2\60\2\20\1\42\1\20"+
-    "\2\42\1\60\1\33\1\60\1\33\26\60\4\42\1\60"+
-    "\2\61\2\20\1\42\1\20\2\42\1\61\1\33\1\61"+
-    "\1\33\26\61\4\42\1\61\1\62\1\63\1\64\1\65"+
-    "\1\62\1\66\3\62\1\33\1\62\1\33\1\67\2\62"+
-    "\1\70\1\62\1\71\10\62\1\72\4\62\1\73\2\62"+
-    "\1\74\2\75\1\62\1\76\1\77\1\100\2\20\1\77"+
-    "\1\20\3\77\1\33\1\77\1\33\23\77\1\101\6\77"+
-    "\1\102\2\103\2\20\1\103\1\20\3\103\1\33\1\103"+
-    "\1\33\26\103\1\104\1\105\1\106\2\103\2\17\2\0"+
-    "\1\17\2\0\1\17\2\0\1\17\1\0\7\17\1\0"+
-    "\23\17\2\0\2\20\1\0\1\20\53\0\1\107\34\0"+
-    "\2\17\2\0\1\17\2\0\1\17\2\0\1\17\1\0"+
-    "\1\17\1\110\1\17\1\111\3\17\1\0\25\17\2\0"+
-    "\1\17\2\0\1\17\2\0\1\17\1\0\7\17\1\0"+
-    "\1\112\22\17\2\113\2\0\1\113\2\0\1\113\2\0"+
-    "\1\113\1\0\7\113\1\0\23\113\2\17\2\0\1\17"+
-    "\2\0\1\17\2\0\1\17\1\0\4\17\1\114\2\17"+
-    "\1\0\23\17\2\31\6\0\1\31\1\0\1\31\1\0"+
-    "\26\31\4\0\3\31\6\0\1\31\1\0\1\31\1\0"+
-    "\13\31\1\115\12\31\4\0\1\31\2\0\2\116\1\0"+
-    "\1\116\31\0\1\117\7\0\2\40\4\0\3\40\1\0"+
-    "\1\40\1\0\26\40\4\0\1\40\2\42\2\0\1\42"+
-    "\1\0\3\42\1\0\1\42\1\0\33\42\1\43\1\120"+
-    "\2\121\1\43\1\121\3\43\1\121\1\43\1\121\33\43"+
-    "\2\42\2\0\1\42\1\0\3\42\1\0\1\42\1\0"+
-    "\6\42\1\122\26\42\2\0\1\42\1\0\3\42\1\0"+
-    "\1\42\1\0\14\42\1\123\16\42\2\46\2\124\1\46"+
-    "\1\124\3\46\1\124\1\46\1\124\32\46\1\125\2\47"+
-    "\2\0\1\47\1\0\3\47\1\0\1\47\1\0\33\47"+
-    "\2\50\6\0\1\50\1\0\1\50\1\0\26\50\4\0"+
-    "\1\50\2\42\2\0\1\42\1\0\3\42\1\0\1\42"+
-    "\1\0\17\42\1\126\15\42\2\0\1\42\1\0\3\42"+
-    "\1\0\1\42\1\0\6\42\1\127\26\42\2\0\1\42"+
-    "\1\0\3\42\1\0\1\42\1\0\14\42\1\130\16\42"+
-    "\12\54\2\0\35\54\2\55\1\54\1\55\4\54\2\0"+
-    "\33\54\12\0\1\131\34\0\2\60\2\0\1\42\1\0"+
-    "\2\42\1\60\1\0\1\60\1\0\26\60\4\42\1\60"+
-    "\2\61\2\0\1\42\1\0\2\42\1\61\1\0\1\61"+
-    "\1\0\26\61\4\42\1\61\2\62\2\0\1\62\1\0"+
-    "\3\62\1\0\1\62\1\0\26\62\3\0\2\62\1\63"+
-    "\1\132\2\133\1\63\1\133\3\63\1\133\1\63\1\133"+
-    "\26\63\3\133\2\63\3\0\1\65\50\0\1\66\41\0"+
-    "\2\62\2\0\1\62\1\0\3\62\1\0\1\62\1\0"+
-    "\3\62\1\134\22\62\3\0\4\62\2\0\1\62\1\0"+
-    "\3\62\1\0\1\62\1\0\2\62\1\135\5\62\1\136"+
-    "\15\62\3\0\4\62\2\0\1\62\1\0\3\62\1\0"+
-    "\1\62\1\0\17\62\1\137\6\62\3\0\4\62\2\0"+
-    "\1\62\1\0\3\62\1\0\1\62\1\0\17\62\1\140"+
-    "\6\62\3\0\4\62\2\0\1\62\1\0\3\62\1\0"+
-    "\1\62\1\0\5\62\1\141\12\62\1\142\1\143\4\62"+
-    "\3\0\2\62\2\76\2\144\1\76\1\144\3\76\1\144"+
-    "\1\76\1\144\26\76\3\144\1\76\1\132\2\77\2\0"+
-    "\1\77\1\0\3\77\1\0\1\77\1\0\33\77\1\100"+
-    "\1\145\2\146\1\100\1\146\3\100\1\146\1\100\1\146"+
-    "\33\100\2\77\2\0\1\77\1\0\3\77\1\0\1\77"+
-    "\1\0\5\77\1\147\12\77\1\150\1\151\11\77\2\102"+
-    "\2\152\1\102\1\152\3\102\1\152\1\102\1\152\32\102"+
-    "\1\153\2\103\2\0\1\103\1\0\3\103\1\0\1\103"+
-    "\1\0\26\103\3\0\2\103\12\0\1\154\34\0\2\17"+
-    "\2\0\1\17\2\0\1\17\2\0\1\17\1\0\1\155"+
-    "\6\17\1\0\25\17\2\0\1\17\2\0\1\17\2\0"+
-    "\1\17\1\0\4\17\1\156\2\17\1\0\25\17\2\0"+
-    "\1\17\2\0\1\17\2\0\1\17\1\0\4\17\1\157"+
-    "\2\17\1\0\23\17\2\113\2\0\1\113\2\0\1\113"+
-    "\1\160\1\0\1\113\1\0\7\113\1\0\23\113\2\17"+
-    "\2\0\1\17\2\0\1\17\2\0\1\17\1\0\4\17"+
-    "\1\161\2\17\1\0\23\17\2\31\6\0\1\31\1\0"+
-    "\1\31\1\0\16\31\1\162\7\31\4\0\1\31\27\0"+
-    "\1\163\17\0\1\121\1\164\45\121\2\42\2\0\1\42"+
-    "\1\0\3\42\1\0\1\42\1\0\12\42\1\165\22\42"+
-    "\2\0\1\42\1\0\3\42\1\0\1\42\1\0\15\42"+
-    "\1\166\15\42\46\124\1\167\2\42\2\0\1\42\1\0"+
-    "\3\42\1\0\1\42\1\0\11\42\1\170\23\42\2\0"+
-    "\1\42\1\0\3\42\1\0\1\42\1\0\12\42\1\171"+
-    "\22\42\2\0\1\42\1\0\3\42\1\0\1\42\1\0"+
-    "\15\42\1\172\15\42\13\0\1\173\33\0\1\133\1\174"+
-    "\45\133\2\62\2\0\1\62\1\0\3\62\1\0\1\62"+
-    "\1\0\4\62\1\175\21\62\3\0\4\62\2\0\1\62"+
-    "\1\0\3\62\1\0\1\62\1\0\4\62\1\176\21\62"+
-    "\3\0\4\62\2\0\1\62\1\0\3\62\1\0\1\62"+
-    "\1\0\4\62\1\177\21\62\3\0\4\62\2\0\1\62"+
-    "\1\0\3\62\1\0\1\62\1\0\20\62\1\200\5\62"+
-    "\3\0\4\62\2\0\1\62\1\0\3\62\1\0\1\62"+
-    "\1\0\11\62\1\201\14\62\3\0\4\62\2\0\1\62"+
-    "\1\0\3\62\1\0\1\62\1\0\2\62\1\202\23\62"+
-    "\3\0\4\62\2\0\1\62\1\0\3\62\1\0\1\62"+
-    "\1\0\1\203\25\62\3\0\4\62\2\0\1\62\1\0"+
-    "\3\62\1\0\1\62\1\0\5\62\1\204\20\62\3\0"+
-    "\2\62\46\144\1\174\1\146\1\205\45\146\2\77\2\0"+
-    "\1\77\1\0\3\77\1\0\1\77\1\0\2\77\1\206"+
-    "\32\77\2\0\1\77\1\0\3\77\1\0\1\77\1\0"+
-    "\1\207\34\77\2\0\1\77\1\0\3\77\1\0\1\77"+
-    "\1\0\5\77\1\210\25\77\46\152\1\211\2\17\2\0"+
-    "\1\17\2\0\1\17\2\0\1\17\1\0\2\17\1\212"+
-    "\4\17\1\0\25\17\2\0\1\17\2\0\1\17\2\0"+
-    "\1\17\1\0\5\17\1\213\1\17\1\0\25\17\2\0"+
-    "\1\17\2\0\1\17\2\0\1\17\1\0\7\17\1\0"+
-    "\1\17\1\214\23\17\2\0\1\17\2\0\1\17\2\0"+
-    "\1\17\1\0\1\17\1\215\5\17\1\0\23\17\2\31"+
-    "\6\0\1\31\1\0\1\31\1\0\17\31\1\216\6\31"+
-    "\4\0\1\31\32\0\1\217\14\0\2\42\2\0\1\42"+
-    "\1\0\3\42\1\0\1\42\1\0\4\42\1\220\30\42"+
-    "\2\0\1\42\1\0\3\42\1\0\1\42\1\0\1\42"+
-    "\1\221\33\42\2\0\1\42\1\0\3\42\1\0\1\42"+
-    "\1\0\4\42\1\222\30\42\2\0\1\42\1\0\3\42"+
-    "\1\0\1\42\1\0\4\42\1\223\30\42\2\0\1\42"+
-    "\1\0\3\42\1\0\1\42\1\0\1\42\1\224\31\42"+
-    "\2\62\2\0\1\62\1\0\3\62\1\0\1\62\1\0"+
-    "\5\62\1\225\20\62\3\0\4\62\2\0\1\62\1\0"+
-    "\3\62\1\0\1\62\1\0\10\62\1\226\15\62\3\0"+
-    "\4\62\2\0\1\62\1\0\3\62\1\0\1\62\1\0"+
-    "\11\62\1\227\14\62\3\0\4\62\2\0\1\62\1\0"+
-    "\3\62\1\0\1\62\1\0\1\230\25\62\3\0\4\62"+
-    "\2\0\1\62\1\0\3\62\1\0\1\62\1\0\4\62"+
-    "\1\231\21\62\3\0\4\62\2\0\1\62\1\0\3\62"+
-    "\1\0\1\62\1\0\13\62\1\232\12\62\3\0\4\62"+
-    "\2\0\1\62\1\0\3\62\1\0\1\62\1\0\24\62"+
-    "\1\233\1\62\3\0\4\62\2\0\1\62\1\0\3\62"+
-    "\1\0\1\62\1\0\25\62\1\234\3\0\2\62\2\77"+
-    "\2\0\1\77\1\0\3\77\1\0\1\77\1\0\13\77"+
-    "\1\235\21\77\2\0\1\77\1\0\3\77\1\0\1\77"+
-    "\1\0\24\77\1\236\10\77\2\0\1\77\1\0\3\77"+
-    "\1\0\1\77\1\0\25\77\1\237\5\77\2\17\2\0"+
-    "\1\17\2\0\1\17\2\0\1\17\1\0\1\240\6\17"+
-    "\1\0\25\17\2\0\1\17\2\0\1\17\2\0\1\17"+
-    "\1\0\4\17\1\241\2\17\1\0\25\17\2\0\1\17"+
-    "\2\0\1\17\2\0\1\17\1\0\4\17\1\242\2\17"+
-    "\1\0\25\17\2\0\1\17\2\0\1\17\2\0\1\17"+
-    "\1\0\5\17\1\243\1\17\1\0\23\17\2\31\6\0"+
-    "\1\31\1\0\1\31\1\0\11\31\1\244\14\31\4\0"+
-    "\1\31\33\0\1\245\13\0\2\42\2\0\1\42\1\0"+
-    "\3\42\1\0\1\42\1\0\1\246\34\42\2\0\1\42"+
-    "\1\0\3\42\1\0\1\42\1\0\5\42\1\247\27\42"+
-    "\2\0\1\42\1\0\3\42\1\0\1\42\1\0\11\42"+
-    "\1\250\23\42\2\0\1\42\1\0\3\42\1\0\1\42"+
-    "\1\0\1\251\34\42\2\0\1\42\1\0\3\42\1\0"+
-    "\1\42\1\0\5\42\1\252\25\42\2\62\2\0\1\62"+
-    "\1\0\3\62\1\0\1\62\1\0\4\62\1\253\21\62"+
-    "\3\0\4\62\2\0\1\62\1\0\3\62\1\0\1\62"+
-    "\1\0\22\62\1\254\3\62\3\0\4\62\2\0\1\62"+
-    "\1\0\3\62\1\0\1\62\1\0\4\62\1\255\21\62"+
-    "\3\0\4\62\2\0\1\62\1\0\3\62\1\0\1\62"+
-    "\1\0\21\62\1\256\4\62\3\0\4\62\2\0\1\62"+
-    "\1\0\3\62\1\0\1\62\1\0\11\62\1\257\14\62"+
-    "\3\0\4\62\2\0\1\62\1\0\3\62\1\0\1\62"+
-    "\1\0\1\62\1\260\24\62\3\0\4\62\2\0\1\62"+
-    "\1\0\3\62\1\0\1\62\1\0\14\62\1\261\11\62"+
-    "\3\0\4\62\2\0\1\62\1\0\3\62\1\0\1\62"+
-    "\1\0\1\262\25\62\3\0\2\62\2\77\2\0\1\77"+
-    "\1\0\3\77\1\0\1\77\1\0\1\77\1\263\33\77"+
-    "\2\0\1\77\1\0\3\77\1\0\1\77\1\0\14\77"+
-    "\1\264\20\77\2\0\1\77\1\0\3\77\1\0\1\77"+
-    "\1\0\1\265\32\77\2\17\2\0\1\17\2\0\1\17"+
-    "\2\0\1\17\1\0\3\17\1\266\3\17\1\0\25\17"+
-    "\2\0\1\17\2\0\1\17\2\0\1\17\1\0\6\17"+
-    "\1\267\1\0\25\17\2\0\1\17\2\0\1\17\2\0"+
-    "\1\17\1\0\5\17\1\270\1\17\1\0\25\17\2\0"+
-    "\1\17\2\0\1\17\2\0\1\17\1\0\7\17\1\0"+
-    "\2\17\1\271\20\17\2\31\6\0\1\31\1\0\1\31"+
-    "\1\0\4\31\1\272\21\31\4\0\1\31\25\0\1\273"+
-    "\21\0\2\42\2\0\1\42\1\0\3\42\1\0\1\42"+
-    "\1\0\2\42\1\274\32\42\2\0\1\42\1\0\3\42"+
-    "\1\0\1\42\1\0\16\42\1\274\16\42\2\0\1\42"+
-    "\1\0\3\42\1\0\1\42\1\0\2\42\1\275\32\42"+
-    "\2\0\1\42\1\0\3\42\1\0\1\42\1\0\16\42"+
-    "\1\276\14\42\2\62\2\0\1\62\1\0\3\62\1\0"+
-    "\1\62\1\0\5\62\1\277\1\300\17\62\3\0\4\62"+
-    "\2\0\1\62\1\0\3\62\1\0\1\62\1\0\1\301"+
-    "\25\62\3\0\4\62\2\0\1\62\1\0\3\62\1\0"+
-    "\1\62\1\0\5\62\1\302\20\62\3\0\4\62\2\0"+
-    "\1\62\1\0\3\62\1\0\1\62\1\0\12\62\1\303"+
-    "\13\62\3\0\4\62\2\0\1\62\1\0\3\62\1\0"+
-    "\1\62\1\0\5\62\1\234\20\62\3\0\4\62\2\0"+
-    "\1\62\1\0\3\62\1\0\1\62\1\0\5\62\1\304"+
-    "\20\62\3\0\4\62\2\0\1\62\1\0\3\62\1\0"+
-    "\1\62\1\0\17\62\1\132\6\62\3\0\2\62\2\77"+
-    "\2\0\1\77\1\0\3\77\1\0\1\77\1\0\5\77"+
-    "\1\305\27\77\2\0\1\77\1\0\3\77\1\0\1\77"+
-    "\1\0\5\77\1\306\27\77\2\0\1\77\1\0\3\77"+
-    "\1\0\1\77\1\0\17\77\1\307\13\77\2\17\2\0"+
-    "\1\17\2\0\1\17\2\0\1\17\1\0\4\17\1\310"+
-    "\2\17\1\0\25\17\2\0\1\17\2\0\1\17\2\0"+
-    "\1\17\1\0\7\17\1\0\1\311\24\17\2\0\1\17"+
-    "\2\0\1\17\2\0\1\17\1\0\4\17\1\312\2\17"+
-    "\1\0\23\17\2\31\6\0\1\31\1\0\1\31\1\0"+
-    "\11\31\1\313\14\31\4\0\1\31\20\0\1\314\26\0"+
-    "\2\62\2\0\1\62\1\0\3\62\1\0\1\62\1\0"+
-    "\1\315\25\62\3\0\4\62\2\0\1\62\1\0\3\62"+
-    "\1\0\1\62\1\0\3\62\1\316\22\62\3\0\4\62"+
-    "\2\0\1\62\1\0\3\62\1\0\1\62\1\0\10\62"+
-    "\1\317\15\62\3\0\4\62\2\0\1\62\1\0\3\62"+
-    "\1\0\1\62\1\0\20\62\1\234\5\62\3\0\2\62"+
-    "\2\77\2\0\1\77\1\0\3\77\1\0\1\77\1\0"+
-    "\1\320\34\77\2\0\1\77\1\0\3\77\1\0\1\77"+
-    "\1\0\20\77\1\321\12\77\2\17\2\0\1\17\2\0"+
-    "\1\17\2\0\1\17\1\0\3\17\1\322\3\17\1\0"+
-    "\23\17\25\0\1\323\21\0\2\62\2\0\1\62\1\0"+
-    "\3\62\1\0\1\62\1\0\12\62\1\324\13\62\3\0"+
-    "\4\62\2\0\1\62\1\0\3\62\1\0\1\62\1\0"+
-    "\12\62\1\325\13\62\3\0\4\62\2\0\1\62\1\0"+
-    "\3\62\1\0\1\62\1\0\3\62\1\326\22\62\3\0"+
-    "\2\62\2\77\2\0\1\77\1\0\3\77\1\0\1\77"+
-    "\1\0\17\77\1\327\15\77\2\0\1\77\1\0\3\77"+
-    "\1\0\1\77\1\0\1\330\32\77\2\0\2\323\1\0"+
-    "\1\323\35\0\1\331\3\0\2\77\2\0\1\77\1\0"+
-    "\3\77\1\0\1\77\1\0\17\77\1\332\13\77";
-
-  /** 
-   * The transition table of the DFA
-   */
-  final private static int yytrans [] = yy_unpack();
-
-
-  /* error codes */
-  final private static int YY_UNKNOWN_ERROR = 0;
-  final static int YY_ILLEGAL_STATE = 1;
-  final private static int YY_NO_MATCH = 2;
-  final private static int YY_PUSHBACK_2BIG = 3;
-
-  /* error messages for the codes above */
-  final private static String YY_ERROR_MSG[] = {
-    "Unkown internal scanner error",
-    "Internal error: unknown state",
-    "Error: could not match input",
-    "Error: pushback value was too large"
-  };
-
-  /**
-   * YY_ATTRIBUTE[aState] contains the attributes of state <code>aState</code>
-   */
-  private final static byte YY_ATTRIBUTE[] = {
-     0,  8,  0,  0,  1,  1,  0,  1,  0,  1,  1,  1,  1,  1,  1,  1, 
-     1,  9,  9,  9,  1,  1,  1,  1,  1,  9,  9,  1,  1,  9,  9,  1, 
-     1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  9,  1, 
-     1,  1,  1,  1,  9,  1,  1,  1,  1,  1,  1,  9,  9,  1,  1,  1, 
-     1,  1,  1,  9,  9,  9,  0,  1,  1,  1,  0,  1,  1,  0,  0,  1, 
-     0,  1,  1,  0,  1,  1,  1,  1,  0,  1,  0,  1,  1,  1,  1,  1, 
-     1,  1,  1,  0,  1,  0,  1,  1,  1,  0,  1,  9,  1,  1,  1,  9, 
-     1,  1,  0,  9,  1,  1,  9,  1,  1,  1,  9,  9,  1,  1,  1,  1, 
-     1,  1,  1,  1,  9,  1,  1,  1,  9,  1,  1,  1,  1,  1,  0,  1, 
-     1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1, 
-     1,  1,  1,  1,  0,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1, 
-     1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  0,  1,  1,  1,  1,  1, 
-     1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  0,  1,  1,  1,  1, 
-     1,  1,  0,  1,  1,  1,  1,  1,  9,  1
-  };
-
-  /** the input device */
-  private java.io.Reader yy_reader;
-
-  /** the current state of the DFA */
-  private int yy_state;
-
-  /** the current lexical state */
-  private int yy_lexical_state = YYINITIAL;
-
-  /** this buffer contains the current text to be matched and is
-      the source of the yytext() string */
-  private char yy_buffer[] = new char[YY_BUFFERSIZE];
-
-  /** the textposition at the last accepting state */
-  private int yy_markedPos;
-
-  /** the textposition at the last state to be included in yytext */
-  private int yy_pushbackPos;
-
-  /** the current text position in the buffer */
-  private int yy_currentPos;
-
-  /** startRead marks the beginning of the yytext() string in the buffer */
-  private int yy_startRead;
-
-  /** endRead marks the last character in the buffer, that has been read
-      from input */
-  private int yy_endRead;
-
-  /** number of newlines encountered up to the start of the matched text */
-  private int yyline;
-
-  /** the number of characters up to the start of the matched text */
-  private int yychar;
-
-  /**
-   * the number of characters from the last newline up to the start of the 
-   * matched text
-   */
-  int yycolumn; 
-
-  /** yy_atEOF == true <=> the scanner is at the EOF */
-  private boolean yy_atEOF;
-
-  /* user code: */
-	int node_count = 0;
-	String currentString;
-
-	private Token createToken(String type) {
-		return new Token(type, yytext(), yyline, yychar + startOffset, yylength());
-	}
-
-	private int startOffset = 0;
-	public void setStartOffset(int offset) {
-		this.startOffset = offset;
-	}
-
-	public void setLine(int line) {
-		this.yyline = line;
-	}
-
-
-  /**
-   * Creates a new scanner
-   * There is also a java.io.InputStream version of this constructor.
-   *
-   * @param   in  the java.io.Reader to read input from.
-   */
-  public DTDTokenizer(java.io.Reader in) {
-    this.yy_reader = in;
-  }
-
-  /**
-   * Creates a new scanner.
-   * There is also java.io.Reader version of this constructor.
-   *
-   * @param   in  the java.io.Inputstream to read input from.
-   */
-  public DTDTokenizer(java.io.InputStream in) {
-    this(new java.io.InputStreamReader(in));
-  }
-
-  /** 
-   * Unpacks the split, compressed DFA transition table.
-   *
-   * @return the unpacked transition table
-   */
-  private static int [] yy_unpack() {
-    int [] trans = new int[6630];
-    int offset = 0;
-    offset = yy_unpack(yy_packed0, offset, trans);
-    return trans;
-  }
-
-  /** 
-   * Unpacks the compressed DFA transition table.
-   *
-   * @param packed   the packed transition table
-   * @return         the index of the last entry
-   */
-  private static int yy_unpack(String packed, int offset, int [] trans) {
-    int i = 0;       /* index in packed string  */
-    int j = offset;  /* index in unpacked array */
-    int l = packed.length();
-    while (i < l) {
-      int count = packed.charAt(i++);
-      int value = packed.charAt(i++);
-      value--;
-      do trans[j++] = value; while (--count > 0);
-    }
-    return j;
-  }
-
-  /** 
-   * Unpacks the compressed character translation table.
-   *
-   * @param packed   the packed character translation table
-   * @return         the unpacked character translation table
-   */
-  private static char [] yy_unpack_cmap(String packed) {
-    char [] map = new char[0x10000];
-    int i = 0;  /* index in packed string  */
-    int j = 0;  /* index in unpacked array */
-    while (i < 130) {
-      int  count = packed.charAt(i++);
-      char value = packed.charAt(i++);
-      do map[j++] = value; while (--count > 0);
-    }
-    return map;
-  }
-
-
-  /**
-   * Refills the input buffer.
-   *
-   * @return      <code>false</code>, iff there was new input.
-   * 
-   * @exception   java.io.IOException  if any I/O-Error occurs
-   */
-  private boolean yy_refill() throws java.io.IOException {
-
-    /* first: make room (if you can) */
-    if (yy_startRead > 0) {
-      System.arraycopy(yy_buffer, yy_startRead, 
-                       yy_buffer, 0, 
-                       yy_endRead-yy_startRead);
-
-      /* translate stored positions */
-      yy_endRead-= yy_startRead;
-      yy_currentPos-= yy_startRead;
-      yy_markedPos-= yy_startRead;
-      yy_pushbackPos-= yy_startRead;
-      yy_startRead = 0;
-    }
-
-    /* is the buffer big enough? */
-    if (yy_currentPos >= yy_buffer.length) {
-      /* if not: blow it up */
-      char newBuffer[] = new char[yy_currentPos*2];
-      System.arraycopy(yy_buffer, 0, newBuffer, 0, yy_buffer.length);
-      yy_buffer = newBuffer;
-    }
-
-    /* finally: fill the buffer with new input */
-    int numRead = yy_reader.read(yy_buffer, yy_endRead, 
-                                            yy_buffer.length-yy_endRead);
-
-    if (numRead < 0) {
-      return true;
-    }
-    else {
-      yy_endRead+= numRead;  
-      return false;
-    }
-  }
-
-    
-  /**
-   * Closes the input stream.
-   */
-  final public void yyclose() throws java.io.IOException {
-    yy_atEOF = true;            /* indicate end of file */
-    yy_endRead = yy_startRead;  /* invalidate buffer    */
-
-    if (yy_reader != null)
-      yy_reader.close();
-  }
-
-
-  /**
-   * Closes the current stream, and resets the
-   * scanner to read from a new input stream.
-   *
-   * All internal variables are reset, the old input stream 
-   * <b>cannot</b> be reused (internal buffer is discarded and lost).
-   * Lexical state is set to <tt>YY_INITIAL</tt>.
-   *
-   * @param reader   the new input stream 
-   */
-  final public void yyreset(java.io.Reader reader) throws java.io.IOException {
-    yyclose();
-    yy_reader = reader;
-    yy_atEOF  = false;
-    yy_endRead = yy_startRead = 0;
-    yy_currentPos = yy_markedPos = yy_pushbackPos = 0;
-    yyline = yychar = yycolumn = 0;
-    yy_lexical_state = YYINITIAL;
-  }
-
-
-  /**
-   * Returns the current lexical state.
-   */
-  final public int yystate() {
-    return yy_lexical_state;
-  }
-
-
-  /**
-   * Enters a new lexical state
-   *
-   * @param newState the new lexical state
-   */
-  final public void yybegin(int newState) {
-    yy_lexical_state = newState;
-  }
-
-
-  /**
-   * Returns the text matched by the current regular expression.
-   */
-  final public String yytext() {
-    return new String( yy_buffer, yy_startRead, yy_markedPos-yy_startRead );
-  }
-
-
-  /**
-   * Returns the character at position <tt>pos</tt> from the 
-   * matched text. 
-   * 
-   * It is equivalent to yytext().charAt(pos), but faster
-   *
-   * @param pos the position of the character to fetch. 
-   *            A value from 0 to yylength()-1.
-   *
-   * @return the character at position pos
-   */
-  final public char yycharat(int pos) {
-    return yy_buffer[yy_startRead+pos];
-  }
-
-
-  /**
-   * Returns the length of the matched text region.
-   */
-  final public int yylength() {
-    return yy_markedPos-yy_startRead;
-  }
-
-
-  /**
-   * Reports an error that occured while scanning.
-   *
-   * In a wellformed scanner (no or only correct usage of 
-   * yypushback(int) and a match-all fallback rule) this method 
-   * will only be called with things that "Can't Possibly Happen".
-   * If this method is called, something is seriously wrong
-   * (e.g. a JFlex bug producing a faulty scanner etc.).
-   *
-   * Usual syntax/scanner level error handling should be done
-   * in error fallback rules.
-   *
-   * @param   errorCode  the code of the errormessage to display
-   */
-  private void yy_ScanError(int errorCode) {
-    String message;
-    try {
-      message = YY_ERROR_MSG[errorCode];
-    }
-    catch (ArrayIndexOutOfBoundsException e) {
-      message = YY_ERROR_MSG[YY_UNKNOWN_ERROR];
-    }
-
-    throw new Error(message);
-  } 
-
-
-  /**
-   * Pushes the specified amount of characters back into the input stream.
-   *
-   * They will be read again by then next call of the scanning method
-   *
-   * @param number  the number of characters to be read again.
-   *                This number must not be greater than yylength()!
-   */
-  private void yypushback(int number)  {
-    if ( number > yylength() )
-      yy_ScanError(YY_PUSHBACK_2BIG);
-
-    yy_markedPos -= number;
-  }
-
-
-  /**
-   * Resumes scanning until the next regular expression is matched,
-   * the end of input is encountered or an I/O-Error occurs.
-   *
-   * @return      the next token
-   * @exception   java.io.IOException  if any I/O-Error occurs
-   */
-  public Yytoken yylex() throws java.io.IOException {
-    int yy_input;
-    int yy_action;
-
-    // cached fields:
-    int yy_currentPos_l;
-    int yy_markedPos_l;
-    int yy_endRead_l = yy_endRead;
-    char [] yy_buffer_l = yy_buffer;
-    char [] yycmap_l = yycmap;
-
-    int [] yytrans_l = yytrans;
-    int [] yy_rowMap_l = yy_rowMap;
-    byte [] yy_attr_l = YY_ATTRIBUTE;
-
-    while (true) {
-      yy_markedPos_l = yy_markedPos;
-
-      yychar+= yy_markedPos_l-yy_startRead;
-
-      yy_action = -1;
-
-      yy_currentPos_l = yy_currentPos = 
-                       yy_startRead = yy_markedPos_l;
-  
-      yy_state = yy_lexical_state;
-
-
-      yy_forAction: {
-        while (true) {
-    
-          if (yy_currentPos_l < yy_endRead_l)
-            yy_input = yy_buffer_l[yy_currentPos_l++];
-          else if (yy_atEOF) {
-            yy_input = YYEOF;
-            break yy_forAction;
-          }
-          else {
-            // store back cached positions
-            yy_currentPos  = yy_currentPos_l;
-            yy_markedPos   = yy_markedPos_l;
-            boolean eof = yy_refill();
-            // get translated positions and possibly new buffer
-            yy_currentPos_l  = yy_currentPos;
-            yy_markedPos_l   = yy_markedPos;
-            yy_buffer_l      = yy_buffer;
-            yy_endRead_l     = yy_endRead;
-            if (eof) {
-              yy_input = YYEOF;
-              break yy_forAction;
-            }
-            else {
-              yy_input = yy_buffer_l[yy_currentPos_l++];
-            }
-          }
-          int yy_next = yytrans_l[ yy_rowMap_l[yy_state] + yycmap_l[yy_input] ];
-          if (yy_next == -1) break yy_forAction;
-          yy_state = yy_next;
-
-          int yy_attributes = yy_attr_l[yy_state];
-          if ( (yy_attributes & 1) == 1 ) {
-            yy_action = yy_state; 
-            yy_markedPos_l = yy_currentPos_l; 
-            if ( (yy_attributes & 8) == 8 ) break yy_forAction;
-          }
-
-        }
-      }
-
-      // store back cached position
-      yy_markedPos = yy_markedPos_l;
-
-      switch (yy_action) {
-
-        case 26: 
-          {  yypushback(yylength()); yybegin(YYINITIAL);  }
-        case 219: break;
-        case 89: 
-        case 123: 
-          {  yypushback(yylength()); yybegin(ATTRIBUTE_DEFAULT);  }
-        case 220: break;
-        case 12: 
-        case 62: 
-        case 63: 
-        case 64: 
-        case 65: 
-        case 102: 
-        case 103: 
-        case 104: 
-        case 133: 
-        case 134: 
-        case 135: 
-        case 156: 
-        case 157: 
-        case 158: 
-        case 178: 
-        case 179: 
-        case 180: 
-        case 196: 
-        case 197: 
-        case 207: 
-        case 208: 
-        case 215: 
-          {  yypushback(yylength()); yybegin(ATTLIST_CONTENT);  }
-        case 221: break;
-        case 51: 
-        case 52: 
-          {  yypushback(yylength()); yybegin(ATTLIST_CONTENT);  }
-        case 222: break;
-        case 205: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.NMTOKEN_KEYWORD);  }
-        case 223: break;
-        case 194: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.IDREFS_KEYWORD);  }
-        case 224: break;
-        case 191: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.ENTITY_KEYWORD);  }
-        case 225: break;
-        case 107: 
-          {  yybegin(COMMENT_CONTENT); return createToken(DTDRegionTypes.COMMENT_START);  }
-        case 226: break;
-        case 48: 
-          {  yybegin(ATTRIBUTE_CONTENT); return createToken(DTDRegionTypes.ATTRIBUTE_NAME);  }
-        case 227: break;
-        case 39: 
-          {  yybegin(EXTERNALID_CONTENT); return createToken(DTDRegionTypes.NAME);  }
-        case 228: break;
-        case 106: 
-        case 136: 
-          {  yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.SINGLEQUOTED_LITERAL);  }
-        case 229: break;
-        case 100: 
-        case 132: 
-          {  yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.DOUBLEQUOTED_LITERAL);  }
-        case 230: break;
-        case 202: 
-        case 216: 
-          {  return createToken(DTDRegionTypes.CONTENT_PCDATA);  }
-        case 231: break;
-        case 189: 
-          {  return createToken(DTDRegionTypes.PUBLIC_KEYWORD);  }
-        case 232: break;
-        case 188: 
-          {  return createToken(DTDRegionTypes.SYSTEM_KEYWORD);  }
-        case 233: break;
-        case 14: 
-        case 20: 
-        case 21: 
-        case 23: 
-        case 71: 
-        case 72: 
-        case 73: 
-        case 75: 
-        case 108: 
-        case 109: 
-        case 110: 
-        case 112: 
-        case 137: 
-        case 138: 
-        case 139: 
-        case 140: 
-        case 159: 
-        case 160: 
-        case 161: 
-        case 162: 
-        case 181: 
-        case 183: 
-        case 184: 
-        case 200: 
-          {  return createToken(DTDRegionTypes.UNKNOWN_CONTENT);  }
-        case 234: break;
-        case 4: 
-        case 33: 
-        case 34: 
-        case 35: 
-        case 36: 
-        case 37: 
-        case 81: 
-        case 82: 
-        case 116: 
-        case 117: 
-        case 143: 
-        case 144: 
-        case 165: 
-        case 166: 
-          {  return createToken(DTDRegionTypes.UNKNOWN_CONTENT);  }
-        case 235: break;
-        case 7: 
-        case 40: 
-        case 41: 
-        case 42: 
-        case 85: 
-        case 86: 
-        case 87: 
-        case 119: 
-        case 120: 
-        case 121: 
-        case 145: 
-        case 146: 
-        case 147: 
-        case 168: 
-        case 169: 
-          {  return createToken(DTDRegionTypes.UNKNOWN_CONTENT);  }
-        case 236: break;
-        case 9: 
-          {  return createToken(DTDRegionTypes.UNKNOWN_CONTENT);  }
-        case 237: break;
-        case 10: 
-          {  return createToken(DTDRegionTypes.UNKNOWN_CONTENT);  }
-        case 238: break;
-        case 43: 
-        case 45: 
-        case 46: 
-          {  return createToken(DTDRegionTypes.COMMENT_CONTENT);  }
-        case 239: break;
-        case 60: 
-          {  return createToken(DTDRegionTypes.UNKNOWN_CONTENT);  }
-        case 240: break;
-        case 198: 
-          {  return createToken(DTDRegionTypes.FIXED_KEYWORD);  }
-        case 241: break;
-        case 214: 
-          {  yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.IMPLIED_KEYWORD);  }
-        case 242: break;
-        case 212: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.NMTOKENS_KEYWORD);  }
-        case 243: break;
-        case 211: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.ENTITIES_KEYWORD);  }
-        case 244: break;
-        case 209: 
-          {  yybegin(NOTATION_NAME); return createToken(DTDRegionTypes.NOTATION_TAG);  }
-        case 245: break;
-        case 201: 
-          {  yybegin(ATTLIST_NAME); return createToken(DTDRegionTypes.ATTLIST_TAG);  }
-        case 246: break;
-        case 199: 
-          {  yybegin(ELEMENT_NAME); return createToken(DTDRegionTypes.ELEMENT_TAG);  }
-        case 247: break;
-        case 182: 
-          {  yybegin(ENTITY_NAME); return createToken(DTDRegionTypes.ENTITY_TAG);  }
-        case 248: break;
-        case 167: 
-          {  yybegin(NDATA_CONTENT); return createToken(DTDRegionTypes.NDATA_KEYWORD);  }
-        case 249: break;
-        case 111: 
-          {  return createToken(DTDRegionTypes.ENTITY_PARM);  }
-        case 250: break;
-        case 94: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.ID_KEYWORD);  }
-        case 251: break;
-        case 25: 
-          {  return createToken(DTDRegionTypes.OCCUR_TYPE);  }
-        case 252: break;
-        case 16: 
-          {  return createToken(DTDRegionTypes.EXCLAMATION);  }
-        case 253: break;
-        case 15: 
-          {  return createToken(DTDRegionTypes.WHITESPACE);  }
-        case 254: break;
-        case 11: 
-        case 49: 
-        case 50: 
-        case 54: 
-        case 55: 
-        case 56: 
-        case 57: 
-        case 58: 
-        case 61: 
-        case 91: 
-        case 92: 
-        case 93: 
-        case 95: 
-        case 96: 
-        case 97: 
-        case 98: 
-        case 124: 
-        case 125: 
-        case 126: 
-        case 127: 
-        case 128: 
-        case 129: 
-        case 130: 
-        case 131: 
-        case 148: 
-        case 149: 
-        case 150: 
-        case 151: 
-        case 152: 
-        case 153: 
-        case 154: 
-        case 155: 
-        case 170: 
-        case 171: 
-        case 172: 
-        case 175: 
-        case 176: 
-        case 177: 
-        case 190: 
-        case 192: 
-        case 193: 
-        case 195: 
-        case 204: 
-        case 206: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.PARM_ENTITY_TYPE);  }
-        case 255: break;
-        case 28: 
-          {  return createToken(DTDRegionTypes.LEFT_PAREN);  }
-        case 256: break;
-        case 29: 
-          {  return createToken(DTDRegionTypes.RIGHT_PAREN);  }
-        case 257: break;
-        case 44: 
-          {  return createToken(DTDRegionTypes.WHITESPACE);  }
-        case 258: break;
-        case 53: 
-          {  return createToken(DTDRegionTypes.WHITESPACE);  }
-        case 259: break;
-        case 59: 
-          {  yypushback(yylength()); yybegin(ATTRIBUTE_ENUMERATION);  }
-        case 260: break;
-        case 67: 
-          {  return createToken(DTDRegionTypes.LEFT_PAREN);  }
-        case 261: break;
-        case 68: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.RIGHT_PAREN);  }
-        case 262: break;
-        case 69: 
-          {  return createToken(DTDRegionTypes.ENUM_CHOICE);  }
-        case 263: break;
-        case 31: 
-          {  yybegin(ENTITY_CONTENT); return createToken(DTDRegionTypes.NAME);  }
-        case 264: break;
-        case 47: 
-          {  yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.NAME);  }
-        case 265: break;
-        case 187: 
-          {  yypushback(yylength()); yybegin(EXTERNALID_CONTENT);  }
-        case 266: break;
-        case 213: 
-          {  yybegin(ATTRIBUTE_ENUMERATION); return createToken(DTDRegionTypes.NOTATION_KEYWORD);  }
-        case 267: break;
-        case 174: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.CDATA_KEYWORD);  }
-        case 268: break;
-        case 173: 
-          {  yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.IDREF_KEYWORD);  }
-        case 269: break;
-        case 217: 
-          {  yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.REQUIRED_KEYWORD);  }
-        case 270: break;
-        case 122: 
-          {  yybegin(YYINITIAL); return createToken(DTDRegionTypes.COMMENT_END);  }
-        case 271: break;
-        case 84: 
-        case 118: 
-          {  return createToken(DTDRegionTypes.SINGLEQUOTED_LITERAL);  }
-        case 272: break;
-        case 79: 
-        case 115: 
-          {  return createToken(DTDRegionTypes.DOUBLEQUOTED_LITERAL);  }
-        case 273: break;
-        case 24: 
-        case 27: 
-        case 76: 
-        case 113: 
-        case 141: 
-        case 163: 
-        case 185: 
-          {  return createToken(DTDRegionTypes.NAME);  }
-        case 274: break;
-        case 5: 
-        case 38: 
-          {  yybegin(YYINITIAL); return createToken(DTDRegionTypes.NDATA_VALUE);  }
-        case 275: break;
-        case 13: 
-        case 66: 
-          {  return createToken(DTDRegionTypes.NAME);  }
-        case 276: break;
-        case 18: 
-          {  return createToken(DTDRegionTypes.START_TAG);  }
-        case 277: break;
-        case 17: 
-          {  return createToken(DTDRegionTypes.SEMICOLON);  }
-        case 278: break;
-        case 30: 
-          {  return createToken(DTDRegionTypes.CONNECTOR);  }
-        case 279: break;
-        case 22: 
-          {  return createToken(DTDRegionTypes.PERCENT);  }
-        case 280: break;
-        case 19: 
-          {  return createToken(DTDRegionTypes.END_TAG);  }
-        case 281: break;
-        case 32: 
-          {  return createToken(DTDRegionTypes.PERCENT);  }
-        case 282: break;
-        default: 
-          if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
-            yy_atEOF = true;
-            return null;
-          } 
-          else {
-            yy_ScanError(YY_NO_MATCH);
-          }
-      }
-    }
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/Token.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/Token.java
deleted file mode 100644
index f8dbaba..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/Token.java
+++ /dev/null
@@ -1,61 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.tokenizer;
-
-public class Token extends Yytoken {
-	public static final int COMMENT_START = 9;
-	public static final int CONNECTOR = 6;
-	public static final int CONTENT_ANY = 43;
-	public static final int CONTENT_EMPTY = 42;
-	public static final int CONTENT_PCDATA = 44;
-	public static final int ELEMENT_CONTENT = 41;
-
-	public static final int ELEMENT_TAG = 40;
-	public static final int END_TAG = 2;
-	public static final int ENTITY_CONTENT = 32;
-	public static final int ENTITY_PARM = 31;
-
-	public static final int ENTITY_TAG = 30;
-	public static final int EXCLAMATION = 8;
-	public static final int LEFT_PAREN = 3;
-	public static final int NAME = 0;
-	public static final int NOTATION_CONTENT = 21;
-
-
-	public static final int NOTATION_TAG = 20;
-
-	// public static final int CONNECT_CHOICE = 5;
-	// public static final int CONNECT_SEQUENCE = 6;
-	// public static final int OCCUR_OPTIONAL = 7;
-	// public static final int OCCUR_ONE_OR_MORE = 8;
-	// public static final int OCCUR_ZERO_OR_MORE = 9;
-	public static final int OCCUR_TYPE = 7;
-	public static final int RIGHT_PAREN = 4;
-	public static final int START_TAG = 1;
-	public static final int WHITESPACE = 5;
-
-
-	public Token(String type) {
-		super(type);
-	}
-
-	public Token(String type, String text, int line, int charBegin, int length) {
-		super(type, text, line, charBegin, length);
-	}
-
-	public Token createCopy() {
-		Token copy = new Token(getType(), getText(), getStartLine(), getStartOffset(), getLength());
-		return copy;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/Yytoken.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/Yytoken.java
deleted file mode 100644
index 120da07..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/Yytoken.java
+++ /dev/null
@@ -1,89 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.tokenizer;
-
-class Yytoken {
-	public int m_charBegin;
-	public int m_length;
-	public int m_line;
-	public String m_text;
-	public String m_type;
-
-	Yytoken(String type) {
-		m_type = type;
-	}
-
-	Yytoken(String type, String text, int line, int charBegin, int length) {
-		m_type = type;
-		m_text = new String(text);
-		m_line = line;
-		m_charBegin = charBegin;
-		m_length = length;
-	}
-
-	public void delete(int start, int length) {
-		int stringStart = start - m_charBegin;
-		String oldString = m_text;
-		m_text = oldString.substring(0, stringStart);
-		m_text += oldString.substring(stringStart + length);
-
-		m_length = m_text.length();
-		System.out.println("new string = " + m_text); //$NON-NLS-1$
-
-	}
-
-	public boolean equals(Yytoken other) {
-		return m_type == other.getType() && m_text.equals(other.getText()) && m_line == other.getStartLine() && m_charBegin == other.getStartOffset() && m_length == other.getLength();
-	}
-
-	public int getEndOffset() {
-		return m_charBegin + m_length;
-	}
-
-	public int getLength() {
-		return m_length;
-	}
-
-	public int getStartLine() {
-		return m_line;
-	}
-
-	public int getStartOffset() {
-		return m_charBegin;
-	}
-
-	public String getText() {
-		return m_text;
-	}
-
-	public String getType() {
-		return m_type;
-	}
-
-	public void setStartOffset(int startOffset) {
-		m_charBegin = startOffset;
-	}
-
-	public String toString() {
-		return "Text   : " + m_text + "\ntype : " + m_type + "\nline  : " + m_line + "\ncBeg. : " + m_charBegin + "\ncEnd. : " + getEndOffset() + "\ncLength. : " + m_length; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
-	}
-
-	public void updateOffset(int delta) {
-		m_charBegin += delta;
-	}
-
-	public void updateText(String newText) {
-		m_text = newText;
-		m_length = newText.length();
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtd.flex b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtd.flex
deleted file mode 100644
index e3a14aa..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtd.flex
+++ /dev/null
@@ -1,327 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.eclipse.wst.dtd.core.internal.tokenizer;
-
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-
-/** 
- * Generate with "dtdskeleton".
- *
- * It removes some unused fields and avoids some compiler warnings 
- */
-
-%%
-
-%{
-	int node_count = 0;
-	String currentString;
-
-	private Token createToken(String type) {
-		return new Token(type, yytext(), yyline, yychar + startOffset, yylength());
-	}
-
-	private int startOffset = 0;
-	public void setStartOffset(int offset) {
-		this.startOffset = offset;
-	}
-
-	public void setLine(int line) {
-		this.yyline = line;
-	}
-%}
-
-%class DTDTokenizer
-%public
-%unicode
-%char
-
-%state NODE
-%state ELEMENT_NAME
-%state ELEMENT_CONTENT
-%state ELEMENT_MIXED_OR_CHILD
-%state ELEMENT_MIXED
-%state ELEMENT_CHILD
-%state ENTITY_NAME
-%state ENTITY_CONTENT
-%state NDATA_CONTENT
-
-%state NOTATION_NAME
-%state EXTERNALID_CONTENT
-
-%state COMMENT_CONTENT
-%state ATTLIST_NAME
-%state ATTLIST_CONTENT
-%state ATTRIBUTE_CONTENT
-%state ATTRIBUTE_DEFAULT
-%state ATTRIBUTE_ENUMERATION
-
-
-ALPHA=[A-Za-z]
-DIGIT=[0-9]
-NONNEWLINE_WHITE_SPACE_CHAR=[\ \t\b\012]
-STRING_TEXT=(\\\"|[^\n\r\"]|\\{WHITE_SPACE_CHAR}+\\)*
-COMMENT_TEXT=([^*/\n]|[^*\n]"/"[^*\n]|[^/\n]"*"[^/\n]|"*"[^/\n]|"/"[^*\n])*
-Ident = {ALPHA}({ALPHA}|{DIGIT}|_)*
-InputCharacter = [^\r\n]
-
-LineTerminator = \r|\n|\r\n
-
-/* 3 - White Space */
-S              =    (\x20 | \x09 | \x0D | \x0A)+
-NonLineTerminatorWhitespace = (\x20 | \x09)+
-
-WhiteSpace     = {LineTerminator} | [ \t\f]
-
-/* 84 */
-/*Letter         =    {BaseChar} | {Ideographic}
-
-/* 85 */
-BaseChar       =    [\u0041-\u005A] | [\u0061-\u007A] | [\u00C0-\u00D6] | [\u00D8-\u00F6] | [\u00F8-\u00FF] | [\u0100-\u0131] | [\u0134-\u013E] | [\u0141-\u0148] | [\u014A-\u017E] | [\u0180-\u01C3] | [\u01CD-\u01F0] | [\u01F4-\u01F5] | [\u01FA-\u0217] | [\u0250-\u02A8] | [\u02BB-\u02C1] | \u0386 | [\u0388-\u038A] | \u038C | [\u038E-\u03A1] | [\u03A3-\u03CE] | [\u03D0-\u03D6] | \u03DA | \u03DC | \u03DE | \u03E0 | [\u03E2-\u03F3] | [\u0401-\u040C] | [\u040E-\u044F] | [\u0451-\u045C] | [\u045E-\u0481] | [\u0490-\u04C4] | [\u04C7-\u04C8] | [\u04CB-\u04CC] | [\u04D0-\u04EB] | [\u04EE-\u04F5] | [\u04F8-\u04F9] | [\u0531-\u0556] | \u0559 | [\u0561-\u0586] | [\u05D0-\u05EA] | [\u05F0-\u05F2] | [\u0621-\u063A] | [\u0641-\u064A] | [\u0671-\u06B7] | [\u06BA-\u06BE] | [\u06C0-\u06CE] | [\u06D0-\u06D3] | \u06D5 | [\u06E5-\u06E6] | [\u0905-\u0939] | \u093D | [\u0958-\u0961] | [\u0985-\u098C] | [\u098F-\u0990] | [\u0993-\u09A8] | [\u09AA-\u09B0] | \u09B2 | [\u09B6-\u09B9] | [\u09DC-\u09DD] | [\u09DF-\u09E1] | [\u09F0-\u09F1] | [\u0A05-\u0A0A] | [\u0A0F-\u0A10] | [\u0A13-\u0A28] | [\u0A2A-\u0A30] | [\u0A32-\u0A33] | [\u0A35-\u0A36] | [\u0A38-\u0A39] | [\u0A59-\u0A5C] | \u0A5E | [\u0A72-\u0A74] | [\u0A85-\u0A8B] | \u0A8D | [\u0A8F-\u0A91] | [\u0A93-\u0AA8] | [\u0AAA-\u0AB0] | [\u0AB2-\u0AB3] | [\u0AB5-\u0AB9] | \u0ABD | \u0AE0 | [\u0B05-\u0B0C] | [\u0B0F-\u0B10] | [\u0B13-\u0B28] | [\u0B2A-\u0B30] | [\u0B32-\u0B33] | [\u0B36-\u0B39] | \u0B3D | [\u0B5C-\u0B5D] | [\u0B5F-\u0B61] | [\u0B85-\u0B8A] | [\u0B8E-\u0B90] | [\u0B92-\u0B95] | [\u0B99-\u0B9A] | \u0B9C | [\u0B9E-\u0B9F] | [\u0BA3-\u0BA4] | [\u0BA8-\u0BAA] | [\u0BAE-\u0BB5] | [\u0BB7-\u0BB9] | [\u0C05-\u0C0C] | [\u0C0E-\u0C10] | [\u0C12-\u0C28] | [\u0C2A-\u0C33] | [\u0C35-\u0C39] | [\u0C60-\u0C61] | [\u0C85-\u0C8C] | [\u0C8E-\u0C90] | [\u0C92-\u0CA8] | [\u0CAA-\u0CB3] | [\u0CB5-\u0CB9] | \u0CDE | [\u0CE0-\u0CE1] | [\u0D05-\u0D0C] | [\u0D0E-\u0D10] | [\u0D12-\u0D28] | [\u0D2A-\u0D39] | [\u0D60-\u0D61] | [\u0E01-\u0E2E] | \u0E30 | [\u0E32-\u0E33] | [\u0E40-\u0E45] | [\u0E81-\u0E82] | \u0E84 | [\u0E87-\u0E88] | \u0E8A | \u0E8D | [\u0E94-\u0E97] | [\u0E99-\u0E9F] | [\u0EA1-\u0EA3] | \u0EA5 | \u0EA7 | [\u0EAA-\u0EAB] | [\u0EAD-\u0EAE] | \u0EB0 | [\u0EB2-\u0EB3] | \u0EBD | [\u0EC0-\u0EC4] | [\u0F40-\u0F47] | [\u0F49-\u0F69] | [\u10A0-\u10C5] | [\u10D0-\u10F6] | \u1100 | [\u1102-\u1103] | [\u1105-\u1107] | \u1109 | [\u110B-\u110C] | [\u110E-\u1112] | \u113C | \u113E | \u1140 | \u114C | \u114E | \u1150 | [\u1154-\u1155] | \u1159 | [\u115F-\u1161] | \u1163 | \u1165 | \u1167 | \u1169 | [\u116D-\u116E] | [\u1172-\u1173] | \u1175 | \u119E | \u11A8 | \u11AB | [\u11AE-\u11AF] | [\u11B7-\u11B8] | \u11BA | [\u11BC-\u11C2] | \u11EB | \u11F0 | \u11F9 | [\u1E00-\u1E9B] | [\u1EA0-\u1EF9] | [\u1F00-\u1F15] | [\u1F18-\u1F1D] | [\u1F20-\u1F45] | [\u1F48-\u1F4D] | [\u1F50-\u1F57] | \u1F59 | \u1F5B | \u1F5D | [\u1F5F-\u1F7D] | [\u1F80-\u1FB4] | [\u1FB6-\u1FBC] | \u1FBE | [\u1FC2-\u1FC4] | [\u1FC6-\u1FCC] | [\u1FD0-\u1FD3] | [\u1FD6-\u1FDB] | [\u1FE0-\u1FEC] | [\u1FF2-\u1FF4] | [\u1FF6-\u1FFC] | \u2126 | [\u212A-\u212B] | \u212E | [\u2180-\u2182] | [\u3041-\u3094] | [\u30A1-\u30FA] | [\u3105-\u312C] | [\uAC00-\uD7A3]  
-
-/* 86 */
-Ideographic    =    [\u4E00-\u9FA5] | \u3007 | [\u3021-\u3029]  
-
-/* 4 */  /* is '.' to be escaped?? */
-NameChar       =    {Letter} | {Digit} | . | - | _ | : | {CombiningChar} | {Extender}
-
-/* 5 */
-Name           = ({Letter} | _ | :) {NameChar}* 
-
-/* 87 */
-CombiningChar  =    [\u0300-\u0345] | [\u0360-\u0361] | [\u0483-\u0486] | [\u0591-\u05A1] | [\u05A3-\u05B9] | [\u05BB-\u05BD] | \u05BF | [\u05C1-\u05C2] | \u05C4 | [\u064B-\u0652] | \u0670 | [\u06D6-\u06DC] | [\u06DD-\u06DF] | [\u06E0-\u06E4] | [\u06E7-\u06E8] | [\u06EA-\u06ED] | [\u0901-\u0903] | \u093C | [\u093E-\u094C] | \u094D | [\u0951-\u0954] | [\u0962-\u0963] | [\u0981-\u0983] | \u09BC | \u09BE | \u09BF | [\u09C0-\u09C4] | [\u09C7-\u09C8] | [\u09CB-\u09CD] | \u09D7 | [\u09E2-\u09E3] | \u0A02 | \u0A3C | \u0A3E | \u0A3F | [\u0A40-\u0A42] | [\u0A47-\u0A48] | [\u0A4B-\u0A4D] | [\u0A70-\u0A71] | [\u0A81-\u0A83] | \u0ABC | [\u0ABE-\u0AC5] | [\u0AC7-\u0AC9] | [\u0ACB-\u0ACD] | [\u0B01-\u0B03] | \u0B3C | [\u0B3E-\u0B43] | [\u0B47-\u0B48] | [\u0B4B-\u0B4D] | [\u0B56-\u0B57] | [\u0B82-\u0B83] | [\u0BBE-\u0BC2] | [\u0BC6-\u0BC8] | [\u0BCA-\u0BCD] | \u0BD7 | [\u0C01-\u0C03] | [\u0C3E-\u0C44] | [\u0C46-\u0C48] | [\u0C4A-\u0C4D] | [\u0C55-\u0C56] | [\u0C82-\u0C83] | [\u0CBE-\u0CC4] | [\u0CC6-\u0CC8] | [\u0CCA-\u0CCD] | [\u0CD5-\u0CD6] | [\u0D02-\u0D03] | [\u0D3E-\u0D43] | [\u0D46-\u0D48] | [\u0D4A-\u0D4D] | \u0D57 | \u0E31 | [\u0E34-\u0E3A] | [\u0E47-\u0E4E] | \u0EB1 | [\u0EB4-\u0EB9] | [\u0EBB-\u0EBC] | [\u0EC8-\u0ECD] | [\u0F18-\u0F19] | \u0F35 | \u0F37 | \u0F39 | \u0F3E | \u0F3F | [\u0F71-\u0F84] | [\u0F86-\u0F8B] | [\u0F90-\u0F95] | \u0F97 | [\u0F99-\u0FAD] | [\u0FB1-\u0FB7] | \u0FB9 | [\u20D0-\u20DC] | \u20E1 | [\u302A-\u302F] | \u3099 | \u309A  
-
-/* 88 */
-Digit          =    [\u0030-\u0039] | [\u0660-\u0669] | [\u06F0-\u06F9] | [\u0966-\u096F] | [\u09E6-\u09EF] | [\u0A66-\u0A6F] | [\u0AE6-\u0AEF] | [\u0B66-\u0B6F] | [\u0BE7-\u0BEF] | [\u0C66-\u0C6F] | [\u0CE6-\u0CEF] | [\u0D66-\u0D6F] | [\u0E50-\u0E59] | [\u0ED0-\u0ED9] | [\u0F20-\u0F29]  
-
-/* 89 */
-Extender       =    \u00B7 | \u02D0 | \u02D1 | \u0387 | \u0640 | \u0E46 | \u0EC6 | \u3005 | [\u3031-\u3035] | [\u309D-\u309E] | [\u30FC-\u30FE]  
-*/
-
-Letter         = [a-zA-Z]
-NameChar       = {Letter} | [0-9]
-//Name           = ({Letter} | _ | :) {NameChar}* 
-//Name           = [^\x20\x09\x0D\x0A]+
-Name           = [^\x20\x09\x0D\x0A\|,\!\?\+\*\(\)<>]+
-ElementRefName = [^\x20\x09\x0D\x0A\|,\?\+\*\(\)<>]+
-EntityName     = [^\x20\x09\x0D\x0A\|,\?\*\(\)<>]+
-ParmEntityName = [^\x20\x09\x0D\x0A\!%;<>]+
-
-CommentStart   = \!--
-CommentContent = [^->]+
-CommentEnd     = -->
-ElementStart   = ELEMENT
-ElementContent = [^<>]*
-
-EntityStart    = ENTITY
-Entity_Parm    = %{S}
-EntityContent  = {S}[^<>]*
-
-NotationStart  = NOTATION
-NotationContent = {S}[^<>]*
-AttList        = ATTLIST
-ExternalParmEntityRef = %{ParmEntityName};
-EndTag         = >
-StartTag       = <
-System         = SYSTEM
-Public         = PUBLIC
-NData          = NDATA
-
-// these are attribute type keywords
-//   we reuse NOTATION from NotationStart
-//   we reuse ENTITY from EntityStart
-CData          = CDATA
-ID             = ID
-IDRef          = IDREF
-IDRefs         = IDREFS
-Entities       = ENTITIES
-NMToken        = NMTOKEN
-NMTokens       = NMTOKENS
-
-// these are attribute defaults keywords
-Required       = #REQUIRED
-Implied        = #IMPLIED
-Fixed          = #FIXED
-
-
-Empty          = EMPTY
-Any            = ANY
-PcData         = #PCDATA
-LeftParen      = \(
-RightParen     = \)
-
-Percent        = %
-Semicolon      = ;
-Plus           = \+
-Choice  = \|
-Sequence = ,
-Connector      = {Choice}|{Sequence}
-OccurOptional  = \?
-OccurOneOrMore = \+
-OccurZeroOrMore = \*
-OccurType      = {OccurOptional}|{OccurOneOrMore}|{OccurZeroOrMore}
-Exclamation   = \!
-SingleQuotedLiteral = '[^']*'
-DoubleQuotedLiteral = \"[^\"]*\"
-NonTagContent = [^\x20\x09\x0D\x0A<>]*
-NonEnumContent = [^\x20\x09\x0D\x0A<>\(\)\|]*
-
-%%
-
-<YYINITIAL> {
-  {StartTag}       { return createToken(DTDRegionTypes.START_TAG); }
-  {EndTag}         { return createToken(DTDRegionTypes.END_TAG); }
-  {Exclamation}    { return createToken(DTDRegionTypes.EXCLAMATION); }
-  {Percent}        { return createToken(DTDRegionTypes.PERCENT); }
-  {Semicolon}      { return createToken(DTDRegionTypes.SEMICOLON); }
-
-  {ElementStart}   { yybegin(ELEMENT_NAME); return createToken(DTDRegionTypes.ELEMENT_TAG); }
-  {CommentStart}   { yybegin(COMMENT_CONTENT); return createToken(DTDRegionTypes.COMMENT_START); }
-  {EntityStart}    { yybegin(ENTITY_NAME); return createToken(DTDRegionTypes.ENTITY_TAG); }
-  {NotationStart}  { yybegin(NOTATION_NAME); return createToken(DTDRegionTypes.NOTATION_TAG); }
-  {AttList}        { yybegin(ATTLIST_NAME); return createToken(DTDRegionTypes.ATTLIST_TAG); }
-
-  {ExternalParmEntityRef}   { return createToken(DTDRegionTypes.ENTITY_PARM); }
-// just a parmentityname by itself is no good.  we use this
-// to capture garbage content at the top level
-  {ParmEntityName}          { return createToken(DTDRegionTypes.UNKNOWN_CONTENT); }
-
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-}
-
-<ELEMENT_NAME> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {PcData}|\({S}*{PcData}{S}*\) { return createToken(DTDRegionTypes.CONTENT_PCDATA); }
-  {Name}           { return createToken(DTDRegionTypes.NAME); }
-
-  {LeftParen}      { return createToken(DTDRegionTypes.LEFT_PAREN); }
-  {Connector}      { return createToken(DTDRegionTypes.CONNECTOR); }    
-  {OccurType}      { return createToken(DTDRegionTypes.OCCUR_TYPE); }
-  {RightParen}     { return createToken(DTDRegionTypes.RIGHT_PAREN); }
-
-  {StartTag}       { yypushback(yylength()); yybegin(YYINITIAL); }
-  {EndTag}         { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-// ******** <!ATTLIST...>
-<ATTLIST_NAME> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {Name}           { yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.NAME); }
-  {NonTagContent}  { return createToken(DTDRegionTypes.UNKNOWN_CONTENT); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-<ATTLIST_CONTENT> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {Name}           { yybegin(ATTRIBUTE_CONTENT); return createToken(DTDRegionTypes.ATTRIBUTE_NAME); }
-  {NonTagContent}  { return createToken(DTDRegionTypes.UNKNOWN_CONTENT); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-<ATTRIBUTE_CONTENT> {
-  {LineTerminator} { yypushback(yylength()); yybegin(ATTLIST_CONTENT); }
-  {NonLineTerminatorWhitespace}
-                   { return createToken(DTDRegionTypes.WHITESPACE); }
-  {CData}          { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.CDATA_KEYWORD); }  
-
-  {ID}             { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.ID_KEYWORD); }       
-  {IDRef}          { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.IDREF_KEYWORD); }  
-  {IDRefs}         { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.IDREFS_KEYWORD); }  
-  {EntityStart}    { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.ENTITY_KEYWORD); }  
-  {Entities}       { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.ENTITIES_KEYWORD); }  
-  {NMToken}        { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.NMTOKEN_KEYWORD); }  
-  {NMTokens}       { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.NMTOKENS_KEYWORD); }  
-  {NotationStart}  { yybegin(ATTRIBUTE_ENUMERATION); return createToken(DTDRegionTypes.NOTATION_KEYWORD); }  
-
-  {Required} | {Implied} | {Fixed} | {SingleQuotedLiteral} | { DoubleQuotedLiteral}
-                   { yypushback(yylength()); yybegin(ATTRIBUTE_DEFAULT); }
-
-  {LeftParen}      { yypushback(yylength()); yybegin(ATTRIBUTE_ENUMERATION); }  
-  {NonEnumContent} { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.PARM_ENTITY_TYPE); }
-  {NonEnumContent}|{RightParen}|{Choice}  { return createToken(DTDRegionTypes.UNKNOWN_CONTENT); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-<ATTRIBUTE_DEFAULT> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {Required}       { yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.REQUIRED_KEYWORD); }
-  {Implied}        { yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.IMPLIED_KEYWORD); }
-  {Fixed}          { return createToken(DTDRegionTypes.FIXED_KEYWORD); }
-  {SingleQuotedLiteral}  { yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.SINGLEQUOTED_LITERAL); }
-  {DoubleQuotedLiteral}  { yybegin(ATTLIST_CONTENT); return createToken(DTDRegionTypes.DOUBLEQUOTED_LITERAL); }
-  {NonTagContent}   { yypushback(yylength()); yybegin(ATTLIST_CONTENT); } //return createToken(DTDRegionTypes.UNKNOWN_CONTENT); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-<ATTRIBUTE_ENUMERATION> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {LeftParen}      { return createToken(DTDRegionTypes.LEFT_PAREN); }
-  {Choice}         { return createToken(DTDRegionTypes.ENUM_CHOICE); }
-  {RightParen}     { yybegin(ATTRIBUTE_DEFAULT); return createToken(DTDRegionTypes.RIGHT_PAREN); }
-  {NonEnumContent}   { return createToken(DTDRegionTypes.NAME); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-
-// ******** <!ENTITY...>
-<ENTITY_NAME> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {Percent}        { return createToken(DTDRegionTypes.PERCENT); }
-  {EntityName}     { yybegin(ENTITY_CONTENT); return createToken(DTDRegionTypes.NAME); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-<ENTITY_CONTENT> {
-//  {EntityContent} { yybegin(YYINITIAL); return createToken(DTDRegionTypes.ENTITY_CONTENT); }
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {System} | {Public} { yypushback(yylength()); yybegin(EXTERNALID_CONTENT); }
-  {SingleQuotedLiteral}  { return createToken(DTDRegionTypes.SINGLEQUOTED_LITERAL); }
-  {DoubleQuotedLiteral}  { return createToken(DTDRegionTypes.DOUBLEQUOTED_LITERAL); }
-  {NonTagContent}   { return createToken(DTDRegionTypes.UNKNOWN_CONTENT); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-
-// ******** <!NOTATION...>
-<NOTATION_NAME> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {Name}           { yybegin(EXTERNALID_CONTENT); return createToken(DTDRegionTypes.NAME); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-<EXTERNALID_CONTENT> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {System}         { return createToken(DTDRegionTypes.SYSTEM_KEYWORD); }  
-  {Public}         { return createToken(DTDRegionTypes.PUBLIC_KEYWORD); }  
-  {SingleQuotedLiteral}  { return createToken(DTDRegionTypes.SINGLEQUOTED_LITERAL); }
-  {DoubleQuotedLiteral}  { return createToken(DTDRegionTypes.DOUBLEQUOTED_LITERAL); }
-  {NData}          { yybegin(NDATA_CONTENT); return createToken(DTDRegionTypes.NDATA_KEYWORD); }
-  {NonTagContent}   { return createToken(DTDRegionTypes.UNKNOWN_CONTENT); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-
-<NDATA_CONTENT> {
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {NonTagContent}  { yybegin(YYINITIAL); return createToken(DTDRegionTypes.NDATA_VALUE); }
-  {StartTag} | {EndTag} { yypushback(yylength()); yybegin(YYINITIAL); }
-}
-  
-
-// ******** <!-- ...>
-<COMMENT_CONTENT> {
-  {CommentEnd}  { yybegin(YYINITIAL); return createToken(DTDRegionTypes.COMMENT_END); }
-  {S}              { return createToken(DTDRegionTypes.WHITESPACE); }
-  {CommentContent} | "-" | ">"  { return createToken(DTDRegionTypes.COMMENT_CONTENT); }
-}
-
-
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtdskeleton b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtdskeleton
deleted file mode 100644
index 3dbe086..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/tokenizer/dtdskeleton
+++ /dev/null
@@ -1,317 +0,0 @@
-
-  /** This character denotes the end of file */
-  final public static int YYEOF = -1;
-
-  /** initial size of the lookahead buffer */
---- final private static int YY_BUFFERSIZE = ...;
-
-  /** lexical states */
----  lexical states, charmap
-
-  /* error codes */
-  final private static int YY_UNKNOWN_ERROR = 0;
-  final static int YY_ILLEGAL_STATE = 1;
-  final private static int YY_NO_MATCH = 2;
-  final private static int YY_PUSHBACK_2BIG = 3;
-
-  /* error messages for the codes above */
-  final private static String YY_ERROR_MSG[] = {
-    "Unkown internal scanner error",
-    "Internal error: unknown state",
-    "Error: could not match input",
-    "Error: pushback value was too large"
-  };
-
---- isFinal list
-  /** the input device */
-  private java.io.Reader yy_reader;
-
-  /** the current state of the DFA */
-  private int yy_state;
-
-  /** the current lexical state */
-  private int yy_lexical_state = YYINITIAL;
-
-  /** this buffer contains the current text to be matched and is
-      the source of the yytext() string */
-  private char yy_buffer[] = new char[YY_BUFFERSIZE];
-
-  /** the textposition at the last accepting state */
-  private int yy_markedPos;
-
-  /** the textposition at the last state to be included in yytext */
-  private int yy_pushbackPos;
-
-  /** the current text position in the buffer */
-  private int yy_currentPos;
-
-  /** startRead marks the beginning of the yytext() string in the buffer */
-  private int yy_startRead;
-
-  /** endRead marks the last character in the buffer, that has been read
-      from input */
-  private int yy_endRead;
-
-  /** number of newlines encountered up to the start of the matched text */
-  private int yyline;
-
-  /** the number of characters up to the start of the matched text */
-  private int yychar;
-
-  /**
-   * the number of characters from the last newline up to the start of the 
-   * matched text
-   */
-  int yycolumn; 
-
-  /** yy_atEOF == true <=> the scanner is at the EOF */
-  private boolean yy_atEOF;
-
---- user class code
-
-  /**
-   * Creates a new scanner
-   * There is also a java.io.InputStream version of this constructor.
-   *
-   * @param   in  the java.io.Reader to read input from.
-   */
---- constructor declaration
-
-
-  /**
-   * Refills the input buffer.
-   *
-   * @return      <code>false</code>, iff there was new input.
-   * 
-   * @exception   java.io.IOException  if any I/O-Error occurs
-   */
-  private boolean yy_refill() throws java.io.IOException {
-
-    /* first: make room (if you can) */
-    if (yy_startRead > 0) {
-      System.arraycopy(yy_buffer, yy_startRead, 
-                       yy_buffer, 0, 
-                       yy_endRead-yy_startRead);
-
-      /* translate stored positions */
-      yy_endRead-= yy_startRead;
-      yy_currentPos-= yy_startRead;
-      yy_markedPos-= yy_startRead;
-      yy_pushbackPos-= yy_startRead;
-      yy_startRead = 0;
-    }
-
-    /* is the buffer big enough? */
-    if (yy_currentPos >= yy_buffer.length) {
-      /* if not: blow it up */
-      char newBuffer[] = new char[yy_currentPos*2];
-      System.arraycopy(yy_buffer, 0, newBuffer, 0, yy_buffer.length);
-      yy_buffer = newBuffer;
-    }
-
-    /* finally: fill the buffer with new input */
-    int numRead = yy_reader.read(yy_buffer, yy_endRead, 
-                                            yy_buffer.length-yy_endRead);
-
-    if (numRead < 0) {
-      return true;
-    }
-    else {
-      yy_endRead+= numRead;  
-      return false;
-    }
-  }
-
-    
-  /**
-   * Closes the input stream.
-   */
-  final public void yyclose() throws java.io.IOException {
-    yy_atEOF = true;            /* indicate end of file */
-    yy_endRead = yy_startRead;  /* invalidate buffer    */
-
-    if (yy_reader != null)
-      yy_reader.close();
-  }
-
-
-  /**
-   * Closes the current stream, and resets the
-   * scanner to read from a new input stream.
-   *
-   * All internal variables are reset, the old input stream 
-   * <b>cannot</b> be reused (internal buffer is discarded and lost).
-   * Lexical state is set to <tt>YY_INITIAL</tt>.
-   *
-   * @param reader   the new input stream 
-   */
-  final public void yyreset(java.io.Reader reader) throws java.io.IOException {
-    yyclose();
-    yy_reader = reader;
-    yy_atEOF  = false;
-    yy_endRead = yy_startRead = 0;
-    yy_currentPos = yy_markedPos = yy_pushbackPos = 0;
-    yyline = yychar = yycolumn = 0;
-    yy_lexical_state = YYINITIAL;
-  }
-
-
-  /**
-   * Returns the current lexical state.
-   */
-  final public int yystate() {
-    return yy_lexical_state;
-  }
-
-
-  /**
-   * Enters a new lexical state
-   *
-   * @param newState the new lexical state
-   */
-  final public void yybegin(int newState) {
-    yy_lexical_state = newState;
-  }
-
-
-  /**
-   * Returns the text matched by the current regular expression.
-   */
-  final public String yytext() {
-    return new String( yy_buffer, yy_startRead, yy_markedPos-yy_startRead );
-  }
-
-
-  /**
-   * Returns the character at position <tt>pos</tt> from the 
-   * matched text. 
-   * 
-   * It is equivalent to yytext().charAt(pos), but faster
-   *
-   * @param pos the position of the character to fetch. 
-   *            A value from 0 to yylength()-1.
-   *
-   * @return the character at position pos
-   */
-  final public char yycharat(int pos) {
-    return yy_buffer[yy_startRead+pos];
-  }
-
-
-  /**
-   * Returns the length of the matched text region.
-   */
-  final public int yylength() {
-    return yy_markedPos-yy_startRead;
-  }
-
-
-  /**
-   * Reports an error that occured while scanning.
-   *
-   * In a wellformed scanner (no or only correct usage of 
-   * yypushback(int) and a match-all fallback rule) this method 
-   * will only be called with things that "Can't Possibly Happen".
-   * If this method is called, something is seriously wrong
-   * (e.g. a JFlex bug producing a faulty scanner etc.).
-   *
-   * Usual syntax/scanner level error handling should be done
-   * in error fallback rules.
-   *
-   * @param   errorCode  the code of the errormessage to display
-   */
---- yy_ScanError declaration  
-    String message;
-    try {
-      message = YY_ERROR_MSG[errorCode];
-    }
-    catch (ArrayIndexOutOfBoundsException e) {
-      message = YY_ERROR_MSG[YY_UNKNOWN_ERROR];
-    }
-
---- throws clause
-  } 
-
-
-  /**
-   * Pushes the specified amount of characters back into the input stream.
-   *
-   * They will be read again by then next call of the scanning method
-   *
-   * @param number  the number of characters to be read again.
-   *                This number must not be greater than yylength()!
-   */
---- yypushback decl (contains yy_ScanError exception)
-    if ( number > yylength() )
-      yy_ScanError(YY_PUSHBACK_2BIG);
-
-    yy_markedPos -= number;
-  }
-
-
---- yy_doEof
-  /**
-   * Resumes scanning until the next regular expression is matched,
-   * the end of input is encountered or an I/O-Error occurs.
-   *
-   * @return      the next token
-   * @exception   java.io.IOException  if any I/O-Error occurs
-   */
---- yylex declaration
-    int yy_input;
-    int yy_action;
-
-    // cached fields:
-    int yy_currentPos_l;
-    int yy_markedPos_l;
-    int yy_endRead_l = yy_endRead;
-    char [] yy_buffer_l = yy_buffer;
-    char [] yycmap_l = yycmap;
-
---- local declarations
-
-    while (true) {
-      yy_markedPos_l = yy_markedPos;
-
---- start admin (line, char, col count)
-      yy_action = -1;
-
-      yy_currentPos_l = yy_currentPos = 
-                       yy_startRead = yy_markedPos_l;
-  
---- start admin (lexstate etc)
-
-      yy_forAction: {
-        while (true) {
-    
---- next input, line, col, char count, next transition, isFinal action
-            yy_action = yy_state; 
-            yy_markedPos_l = yy_currentPos_l; 
---- line count update
-          }
-
-        }
-      }
-
-      // store back cached position
-      yy_markedPos = yy_markedPos_l;
---- char count update
-
-      switch (yy_action) {
-
---- actions
-        default: 
-          if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
-            yy_atEOF = true;
---- eofvalue
-          } 
-          else {
---- no match
-          }
-      }
-    }
-  }
-
---- main
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDBatchNodeDelete.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDBatchNodeDelete.java
deleted file mode 100644
index ab4b9dc..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDBatchNodeDelete.java
+++ /dev/null
@@ -1,57 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-
-
-public class DTDBatchNodeDelete {
-	protected DTDFile dtdFile;
-
-	protected List nodes = new ArrayList();
-
-	public DTDBatchNodeDelete(DTDFile dtdFile) {
-		this.dtdFile = dtdFile;
-	}
-
-	public void addNode(DTDNode node) {
-		// first check if the node is contained by anyone
-		for (int i = 0; i < nodes.size(); i++) {
-			DTDNode currentNode = (DTDNode) nodes.get(i);
-
-			if (currentNode.containsRange(node.getStartOffset(), node.getEndOffset())) {
-				// then no need to add the node to the list to be deleted
-				return;
-			}
-
-			if (node.getStartOffset() < currentNode.getStartOffset() && node.getEndOffset() <= currentNode.getStartOffset()) {
-				nodes.add(i, node);
-				return;
-			}
-		}
-		// if we get here, then add it to the end
-		nodes.add(node);
-	}
-
-	public void deleteNodes(Object requestor) {
-		for (int i = nodes.size() - 1; i >= 0; i--) {
-			DTDNode node = (DTDNode) nodes.get(i);
-			dtdFile.deleteNode(requestor, (DTDNode) nodes.get(i));
-		}
-		nodes.clear();
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDExternalReferenceRemover.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDExternalReferenceRemover.java
deleted file mode 100644
index c03d271..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDExternalReferenceRemover.java
+++ /dev/null
@@ -1,145 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.CMBasicNode;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.dtd.core.internal.Entity;
-
-
-/*
- * This class is responsible for updating the model when items are deleted or
- * so that items referenced by it are cleaned up note that top level nodes are
- * queued up for deletion so that iteration over the list of nodes from the
- * dtdfile is not messed up. Note that when an external parmeter entity
- * changes, the client of the model (e.g. editor) must be a DTDFileListener
- * implementing the listener's interface to keep the model's referential
- * integrity (See DTDModelImpl for example).
- */
-
-public class DTDExternalReferenceRemover extends DTDVisitor {
-
-	protected DTDBatchNodeDelete batchDelete;
-	protected List externalElementsAndParmEntities = new ArrayList();
-
-	protected boolean isParmEntity = false;
-
-	protected boolean isUpdating = false;
-	protected DTDNode nodeToDelete;
-	protected String oldRefName = ""; //$NON-NLS-1$
-	protected Object requestor;
-
-	public DTDExternalReferenceRemover() {
-
-	}
-
-	public synchronized void externalReferenceAboutToChange(Object requestor, Entity entity) {
-		if (isUpdating) {
-			return;
-		}
-		if (!entity.isParameterEntity() || !entity.isExternalEntity()) {
-			// if it is not an external parameter entity, ignore as well
-			return;
-		}
-
-		isUpdating = true;
-		this.requestor = requestor;
-
-		DTDFile dtdFile = entity.getDTDFile();
-		if (batchDelete == null) {
-			batchDelete = new DTDBatchNodeDelete(dtdFile);
-		}
-
-		// See the comment at the head of this file regarding
-		// external parameter entities.
-		// externalElementsAndParmEntities =
-		// dtdFile.getDTDModel().getExternalModels().getElementContentNames(entity.getPublicID(),
-		// dtdFile.getDTDModel().resolveID(entity.getPublicID(),
-		// entity.getSystemID()));
-
-		visit(dtdFile);
-
-		batchDelete.deleteNodes(requestor);
-
-		isUpdating = false;
-	}
-
-	public boolean isMatchingName(String name) {
-		return externalElementsAndParmEntities.contains(name);
-	}
-
-	public void visitAttribute(Attribute attr) {
-		super.visitAttribute(attr);
-		String attrName = attr.getName();
-		String attrType = attr.getType();
-
-		if (isParameterEntityRef(attrName)) {
-			if (isMatchingName(attrName)) {
-				attr.setName(requestor, "TempName"); //$NON-NLS-1$
-			}
-		}
-		if (isParameterEntityRef(attrType)) {
-			if (isMatchingName(attrType)) {
-				attr.setType(requestor, Attribute.CDATA);
-			}
-		}
-	}
-
-	public void visitAttributeList(AttributeList attList) {
-		super.visitAttributeList(attList);
-		String attListName = attList.getName();
-		if (isParameterEntityRef(attListName)) {
-			if (isMatchingName(attListName)) {
-				attList.setName(requestor, "TempName"); //$NON-NLS-1$
-			}
-		}
-	}
-
-	public void visitElement(Element element) {
-		String elementName = element.getName();
-		if (isParameterEntityRef(elementName)) {
-			if (isMatchingName(elementName)) {
-				element.setName(requestor, "TempName"); //$NON-NLS-1$
-			}
-		}
-		super.visitElement(element);
-	}
-
-	public void visitReference(CMBasicNode node) {
-		super.visitReference(node);
-		String refName = node.getName();
-		if (isMatchingName(refName)) {
-			DTDNode parent = (DTDNode) node.getParentNode();
-			batchDelete.addNode(node);
-			// parent.delete(requestor, node);
-		}
-	}
-
-	// public void
-	// visitExternalParameterEntityReference(ParameterEntityReference
-	// parmEntityRef)
-	// {
-	// super.visitExternalParameterEntityReference(parmEntityRef);
-	// if (isParmEntity && parmEntityRef.getName().equals(oldRefName))
-	// {
-	// nodesToDelete.add(parmEntityRef);
-	// }
-	// }
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDModelUpdater.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDModelUpdater.java
deleted file mode 100644
index 21bf476..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDModelUpdater.java
+++ /dev/null
@@ -1,135 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.CMBasicNode;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.dtd.core.internal.Entity;
-import org.eclipse.wst.dtd.core.internal.ParameterEntityReference;
-
-
-// this class is responsible for updating the model when items
-// are deleted or a external parm entity changes so that
-// items referenced by it are cleaned up
-// note that top level nodes are queued up for deletion so that
-// iteration over the list of nodes from the dtdfile is not messed up
-public class DTDModelUpdater extends DTDVisitor {
-
-	protected boolean isParmEntity = false;
-
-	protected boolean isUpdating = false;
-
-	protected List nodesToDelete = new ArrayList();
-	protected DTDNode nodeToDelete;
-	protected String oldRefName = ""; //$NON-NLS-1$
-	protected Object requestor;
-
-	public DTDModelUpdater() {
-
-	}
-
-	public synchronized void objectAboutToBeDeleted(Object requestor, DTDNode node) {
-		if (isUpdating) {
-			return;
-		}
-		if (!(node instanceof Entity || node instanceof Element)) {
-			// just ignore if it is not one of these
-			return;
-		}
-		if (node instanceof Entity && !((Entity) node).isParameterEntity()) {
-			// if it is not a parameter entity, ignore as well
-			return;
-		}
-
-
-		isUpdating = true;
-		this.requestor = requestor;
-		this.nodeToDelete = node;
-		oldRefName = node.getName();
-		isParmEntity = false;
-		nodesToDelete.clear();
-
-		if (node instanceof Entity) {
-			isParmEntity = true;
-			oldRefName = "%" + oldRefName + ";"; //$NON-NLS-1$ //$NON-NLS-2$
-		}
-
-		DTDFile dtdFile = node.getDTDFile();
-		visit(dtdFile);
-
-		for (int i = 0; i < nodesToDelete.size(); i++) {
-			dtdFile.deleteNode(requestor, (DTDNode) nodesToDelete.get(i));
-		}
-
-		isUpdating = false;
-	}
-
-	public void visitAttribute(Attribute attr) {
-		super.visitAttribute(attr);
-		if (isParmEntity) {
-			if (attr.getName().equals(oldRefName)) {
-				attr.setName(requestor, "TempName"); //$NON-NLS-1$
-			}
-			if (attr.getType().equals(oldRefName)) {
-				attr.setType(requestor, Attribute.CDATA);
-			}
-		}
-		// check the attr name and the attr type to see if it
-		// needs updating
-	}
-
-	public void visitAttributeList(AttributeList attList) {
-		super.visitAttributeList(attList);
-		if (attList.getName().equals(oldRefName)) {
-			if (isParmEntity) {
-				attList.setName(requestor, "TempName"); //$NON-NLS-1$
-			}
-			else {
-				// save up for later deletion
-				nodesToDelete.add(attList);
-			}
-		}
-	}
-
-	public void visitElement(Element element) {
-		if (isParmEntity) {
-			if (element.getName().equals(oldRefName)) {
-				element.setName(requestor, "TempName"); //$NON-NLS-1$
-			}
-		}
-		super.visitElement(element);
-	}
-
-	public void visitExternalParameterEntityReference(ParameterEntityReference parmEntityRef) {
-		super.visitExternalParameterEntityReference(parmEntityRef);
-		if (isParmEntity && parmEntityRef.getName().equals(oldRefName)) {
-			nodesToDelete.add(parmEntityRef);
-		}
-	}
-
-	public void visitReference(CMBasicNode node) {
-		super.visitReference(node);
-
-		if (node.getName().equals(oldRefName)) {
-			DTDNode parent = (DTDNode) node.getParentNode();
-			parent.delete(requestor, node);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDNotationReferenceRemover.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDNotationReferenceRemover.java
deleted file mode 100644
index 35cbf84..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDNotationReferenceRemover.java
+++ /dev/null
@@ -1,93 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.AttributeEnumList;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Entity;
-import org.eclipse.wst.dtd.core.internal.Notation;
-
-
-public class DTDNotationReferenceRemover {
-	protected Notation notation;
-	protected String notationName;
-
-	protected Object requestor;
-
-	public DTDNotationReferenceRemover() {
-
-	}
-
-	public void notationAboutToBeDeleted(Object requestor, Notation notation) {
-		this.requestor = requestor;
-		this.notation = notation;
-		notationName = notation.getName();
-
-		visit(notation.getDTDFile());
-	}
-
-	public void visit(DTDFile file) {
-		List nodes = file.getNodes();
-		for (int i = 0; i < nodes.size(); i++) {
-			DTDNode currentNode = (DTDNode) nodes.get(i);
-			if (currentNode instanceof Entity) {
-				visitEntity((Entity) currentNode);
-			}
-			else if (currentNode instanceof AttributeList) {
-				visitAttributeList((AttributeList) currentNode);
-			}
-		}
-	}
-
-	public void visitAttribute(Attribute attr) {
-		if (attr.getType().equals(Attribute.ENUMERATED_NOTATION)) {
-			AttributeEnumList enumList = attr.getEnumList();
-			List notationNames = enumList.getItems();
-			Iterator iter = notationNames.iterator();
-			boolean updateRequired = false;
-			while (iter.hasNext()) {
-				String notation = (String) iter.next();
-				if (notation.equals(notationName)) {
-					updateRequired = true;
-					iter.remove();
-				}
-			}
-			if (updateRequired) {
-				String[] newItems = new String[notationNames.size()];
-				notationNames.toArray(newItems);
-				enumList.setItems(requestor, newItems);
-			}
-		}
-	}
-
-	public void visitAttributeList(AttributeList attList) {
-		Attribute attr = (Attribute) attList.getFirstChild();
-		while (attr != null) {
-			visitAttribute(attr);
-			attr = (Attribute) attr.getNextSibling();
-		}
-	}
-
-	public void visitEntity(Entity entity) {
-		if (entity.getNotationName().equals(notationName)) {
-			entity.setNotationName(requestor, ""); //$NON-NLS-1$
-		}
-	}
-
-}// DTDNotationRemover
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDReferenceUpdater.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDReferenceUpdater.java
deleted file mode 100644
index 26931d8..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDReferenceUpdater.java
+++ /dev/null
@@ -1,196 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.AttributeEnumList;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.CMBasicNode;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.dtd.core.internal.Entity;
-import org.eclipse.wst.dtd.core.internal.Notation;
-import org.eclipse.wst.dtd.core.internal.ParameterEntityReference;
-
-
-// this class is responsible for updating any dtd node in
-// response to a change in the node that they reference
-public class DTDReferenceUpdater extends DTDVisitor {
-	protected boolean isNotation = false;
-
-	protected boolean isParmEntity = false;
-
-	protected boolean isUpdating = false;
-	protected String newName = ""; //$NON-NLS-1$
-	protected String oldRefName = "", newRefName = ""; //$NON-NLS-1$ //$NON-NLS-2$
-	protected DTDNode referencedNode = null;
-
-	// the references List is a cache of the DTDNodes that are changed
-	// as a result of a call to nameAboutToChange(). The idea is that
-	// if a subsequent call comes in that changes the name of the same
-	// object for which this cache exists for, then we optimize the
-	// path by just walking the cache
-	private List references = new ArrayList();
-	protected Object requestor;
-
-	public DTDReferenceUpdater() {
-
-	}
-
-	public void clearCache() {
-		referencedNode = null;
-		references.clear();
-	}
-
-	public synchronized void nameAboutToChange(Object requestor, DTDNode referencedNode, String newName) {
-		if (isUpdating) {
-			return;
-		}
-		if (!(referencedNode instanceof Entity || referencedNode instanceof Element || referencedNode instanceof Notation)) {
-			// just ignore if it is not one of these
-			return;
-		}
-		if (referencedNode instanceof Entity && !((Entity) referencedNode).isParameterEntity()) {
-			// if it is not a parameter entity, ignore as well
-			return;
-		}
-
-		isUpdating = true;
-		this.requestor = requestor;
-		oldRefName = referencedNode.getName();
-		this.newName = newRefName = newName;
-		isParmEntity = false;
-		isNotation = referencedNode instanceof Notation;
-
-		if (referencedNode instanceof Entity) {
-			isParmEntity = true;
-			oldRefName = "%" + oldRefName + ";"; //$NON-NLS-1$ //$NON-NLS-2$
-			newRefName = "%" + newRefName + ";"; //$NON-NLS-1$ //$NON-NLS-2$
-		}
-
-		if (this.referencedNode != null) {
-			// check if the previous referenced node that was changed
-			// is the same as the one that is coming in. if so, just
-			// change the previous regions
-			if (this.referencedNode == referencedNode) {
-				quickUpdate();
-				isUpdating = false;
-				return;
-			}
-		}
-
-		// clear the cache if we get here
-		this.referencedNode = referencedNode;
-		references.clear();
-		DTDFile dtdFile = referencedNode.getDTDFile();
-		visit(dtdFile);
-		isUpdating = false;
-	}
-
-	protected void quickUpdate() {
-		for (int i = 0; i < references.size(); i++) {
-			DTDNode node = (DTDNode) references.get(i);
-			if (node instanceof Element) {
-				visitElement((Element) node);
-			}
-			else if (node instanceof AttributeList) {
-				visitAttributeList((AttributeList) node);
-			}
-			else if (node instanceof Attribute) {
-				visitAttribute((Attribute) node);
-			}
-			else if (node instanceof CMBasicNode) {
-				visitReference((CMBasicNode) node);
-			}
-			else if (node instanceof ParameterEntityReference) {
-				visitExternalParameterEntityReference((ParameterEntityReference) node);
-			}
-		}
-	}
-
-	public void visitAttribute(Attribute attr) {
-		super.visitAttribute(attr);
-		if (isParmEntity) {
-			// check the attr name and the attr type to see if it
-			// needs updating
-			if (attr.getName().equals(oldRefName)) {
-				attr.setName(requestor, newRefName);
-				references.add(attr);
-			}
-			if (attr.getType().equals(oldRefName)) {
-				attr.setType(requestor, newRefName);
-				references.add(attr);
-			}
-		}
-		else if (isNotation && attr.getType().equals(Attribute.ENUMERATED_NOTATION)) {
-			AttributeEnumList enumList = attr.getEnumList();
-			List items = enumList.getItems();
-			boolean updateNeeded = false;
-			for (int i = 0; i < items.size(); i++) {
-				String notationName = (String) items.get(i);
-				if (notationName.equals(oldRefName)) {
-					updateNeeded = true;
-					items.set(i, newName);
-				}
-			}
-			if (updateNeeded) {
-				String[] newItems = new String[items.size()];
-
-				enumList.setItems((String[]) items.toArray(newItems));
-			}
-		}
-
-	}
-
-	public void visitAttributeList(AttributeList attList) {
-		if (!isNotation && attList.getName().equals(oldRefName)) {
-			attList.setName(requestor, newRefName);
-			references.add(attList);
-		}
-		super.visitAttributeList(attList);
-	}
-
-	public void visitElement(Element element) {
-		if (isParmEntity) {
-			if (element.getName().equals(oldRefName)) {
-				element.setName(requestor, newRefName);
-				references.add(element);
-			}
-		}
-		super.visitElement(element);
-	}
-
-	public void visitExternalParameterEntityReference(ParameterEntityReference parmEntityRef) {
-		super.visitExternalParameterEntityReference(parmEntityRef);
-		if (parmEntityRef.getName().equals(oldRefName)) {
-			parmEntityRef.setReferencedEntity(requestor, newName);
-			references.add(parmEntityRef);
-		}
-	}
-
-	public void visitReference(CMBasicNode node) {
-		super.visitReference(node);
-		if (isParameterEntityRef(oldRefName) && !isParmEntity) {
-			return;
-		}
-
-		if (node.getName().equals(oldRefName)) {
-			node.setName(requestor, newRefName);
-			references.add(node);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDSAXParser.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDSAXParser.java
deleted file mode 100644
index ae272fd..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDSAXParser.java
+++ /dev/null
@@ -1,170 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.parsers.SAXParser;
-
-import org.xml.sax.Parser;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXNotRecognizedException;
-import org.xml.sax.SAXNotSupportedException;
-import org.xml.sax.XMLReader;
-
-/**
- * TODO: Kihup and Nitin, reevaluate the use and implementation of this class
- */
-
-// import org.apache.xerces.parsers.SAXParser;
-// import org.apache.xerces.xni.Augmentations;
-// import org.apache.xerces.xni.XMLLocator;
-// import org.apache.xerces.xni.XMLString;
-// import org.apache.xerces.xni.XNIException;
-public class DTDSAXParser extends SAXParser {
-
-	private List ignoredEntityRefs = new ArrayList();
-
-	// private XMLLocator locator;
-	//
-	public List getIgnoredEntityRefs() {
-		return ignoredEntityRefs;
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see javax.xml.parsers.SAXParser#getParser()
-	 */
-	public Parser getParser() throws SAXException {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see javax.xml.parsers.SAXParser#getProperty(java.lang.String)
-	 */
-	public Object getProperty(String name) throws SAXNotRecognizedException, SAXNotSupportedException {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see javax.xml.parsers.SAXParser#getXMLReader()
-	 */
-	public XMLReader getXMLReader() throws SAXException {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	//
-	// public XMLLocator getLocator()
-	// {
-	// return locator;
-	// }
-	//
-	// public void startDocument
-	// (XMLLocator locator,
-	// String encoding,
-	// Augmentations augs)
-	// {
-	// this.locator = locator;
-	// super.startDocument(locator,encoding,augs);
-	// }
-	//
-	// public void ignoredCharacters(XMLString text, Augmentations augs)
-	// throws XNIException
-	// {
-	// String s =
-	// text.length > 0 ? new String(text.ch,text.offset,text.length) : "";
-	// //System.out.println("ignoredCharacters: " + s);
-	//
-	// StringTokenizer tokenizer = new StringTokenizer(s,";");
-	// try
-	// {
-	// String token = null;
-	// while (tokenizer.hasMoreTokens())
-	// {
-	// token = tokenizer.nextToken();
-	// if (isEntityRef(token))
-	// registerEntityRef(token);
-	// }
-	// }
-	// catch (NoSuchElementException e)
-	// {
-	// e.printStackTrace();
-	// }
-	// }
-	//
-	// TODO: never used
-	boolean isEntityRef(String token) {
-		// Looking for the pattern "nnnn%nnnnn".
-		if (token.indexOf('%') != -1)
-			return true; // candidate for entity reference
-		else
-			return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see javax.xml.parsers.SAXParser#isNamespaceAware()
-	 */
-	public boolean isNamespaceAware() {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see javax.xml.parsers.SAXParser#isValidating()
-	 */
-	public boolean isValidating() {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	// TODO: never used
-	void registerEntityRef(String token) {
-		int index = token.lastIndexOf('%');
-		if (index == -1)
-			return;
-
-		String refName = token.substring(index, token.length());
-		// System.out.println("entity ref name is: " + refName);
-		if (refName.indexOf(' ') != -1 || refName.indexOf('\t') != -1 || refName.indexOf('\n') != -1)
-			return;
-		else
-			// we found entity reference
-			ignoredEntityRefs.add(refName + ";"); //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see javax.xml.parsers.SAXParser#setProperty(java.lang.String,
-	 *      java.lang.Object)
-	 */
-	public void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException {
-		// TODO Auto-generated method stub
-
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDUniqueNameHelper.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDUniqueNameHelper.java
deleted file mode 100644
index 9c339d8..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDUniqueNameHelper.java
+++ /dev/null
@@ -1,95 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.CMBasicNode;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.dtd.core.internal.Entity;
-import org.eclipse.wst.dtd.core.internal.Notation;
-
-
-public class DTDUniqueNameHelper {
-
-	static public String getName(Object obj) {
-		if (obj instanceof Element) {
-			return ((Element) obj).getName();
-		}
-		else if (obj instanceof Entity) {
-			return ((Entity) obj).getName();
-		}
-		else if (obj instanceof Notation) {
-			return ((Notation) obj).getName();
-		}
-		else if (obj instanceof Attribute) {
-			return ((Attribute) obj).getName();
-		}
-		else if (obj instanceof CMBasicNode) // Model Group Content
-		{
-			return ((CMBasicNode) obj).getName();
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	static public String getUniqueAttributeName(Element element) {
-		List attrs = element.getElementAttributes();
-		return getUniqueName(attrs, "NewAttribute"); //$NON-NLS-1$
-	}
-
-	static public String getUniqueElementName(DTDFile dtdFile) {
-		List elements = dtdFile.getElementsAndParameterEntityReferences().getNodes();
-		return getUniqueName(elements, "NewElement"); //$NON-NLS-1$
-	}
-
-	static public String getUniqueEntityName(DTDFile dtdFile) {
-		List entities = dtdFile.getEntities().getNodes();
-		return getUniqueName(entities, "NewEntity"); //$NON-NLS-1$
-	}
-
-	static public String getUniqueName(List objs, String token) {
-		int counter = 1;
-
-		boolean uniqueName = false;
-		while (!uniqueName) {
-			String newName = token + new Integer(counter++);
-			uniqueName = true;
-			Iterator iter = objs.iterator();
-			while (iter.hasNext()) {
-				Object obj = iter.next();
-				String objName = getName(obj);
-				if (objName.equals(newName)) {
-					uniqueName = false;
-					break;
-				}
-			}
-			if (uniqueName) {
-				return newName;
-			}
-		}
-		// we shouldn't get here
-		return "No Name found"; //$NON-NLS-1$
-	}
-
-	static public String getUniqueNotationName(DTDFile dtdFile) {
-		List notations = dtdFile.getNotations().getNodes();
-		return getUniqueName(notations, "NewNotation"); //$NON-NLS-1$
-	}
-
-	public DTDUniqueNameHelper() {
-	}
-
-} // DTDUniqueNameHelper
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDVisitor.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDVisitor.java
deleted file mode 100644
index d3e6d01..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/DTDVisitor.java
+++ /dev/null
@@ -1,108 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.CMBasicNode;
-import org.eclipse.wst.dtd.core.internal.CMGroupNode;
-import org.eclipse.wst.dtd.core.internal.CMNode;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.dtd.core.internal.ParameterEntityReference;
-
-
-public class DTDVisitor {
-
-	public DTDVisitor() {
-
-	}
-
-	// utility method
-	public boolean isParameterEntityRef(String reference) {
-		if (reference.length() > 0) {
-			return reference.charAt(0) == '%' && reference.charAt(reference.length() - 1) == ';';
-		}
-		return false;
-	}
-
-	public void visit(DTDFile file) {
-		List nodes = file.getNodes();
-		for (int i = 0; i < nodes.size(); i++) {
-			DTDNode currentNode = (DTDNode) nodes.get(i);
-			if (currentNode instanceof Element) {
-				visitElement((Element) currentNode);
-			}
-			else if (currentNode instanceof AttributeList) {
-				visitAttributeList((AttributeList) currentNode);
-			}
-			else if (currentNode instanceof ParameterEntityReference) {
-				visitExternalParameterEntityReference((ParameterEntityReference) currentNode);
-			}
-		}
-	}
-
-	public void visitAttribute(Attribute attr) {
-	}
-
-	public void visitAttributeList(AttributeList attList) {
-		// note that we don't visit attributes here because we
-		// want the element to visit them with it's consolidated list
-		// that it creates by gathering all attribute lists together
-	}
-
-	public void visitAttributes(List attributes) {
-		int size = attributes.size();
-		for (int i = 0; i < size; i++) {
-			Attribute attr = (Attribute) attributes.get(i);
-			visitAttribute(attr);
-		}
-	}
-
-	public void visitContentNode(CMNode content) {
-		if (content instanceof CMBasicNode) {
-			CMBasicNode basicNode = (CMBasicNode) content;
-			if (basicNode.isReference()) {
-				visitReference(basicNode);
-			}
-		}
-		else if (content instanceof CMGroupNode) {
-			visitGroupNode((CMGroupNode) content);
-		}
-	}
-
-	public void visitElement(Element element) {
-		CMNode content = element.getContentModel();
-		visitContentNode(content);
-		visitAttributes(element.getElementAttributes());
-	}
-
-	public void visitExternalParameterEntityReference(ParameterEntityReference parmEntityRef) {
-	}
-
-	public void visitGroupNode(CMGroupNode group) {
-		List children = group.getChildrenList();
-		int size = children.size();
-		for (int i = 0; i < size; i++) {
-			visitContentNode((CMNode) children.get(i));
-		}
-	}
-
-	public void visitReference(CMBasicNode node) {
-	}
-
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/LabelValuePair.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/LabelValuePair.java
deleted file mode 100644
index f51d872..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/internal/util/LabelValuePair.java
+++ /dev/null
@@ -1,30 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.core.internal.util;
-
-import org.eclipse.jface.util.Assert;
-
-public class LabelValuePair {
-
-	public String fLabel;
-	public Object fValue;
-
-	/**
-	 * Creates a new name/value item
-	 */
-	public LabelValuePair(String label, Object value) {
-		Assert.isTrue(label != null);
-		fLabel = label;
-		fValue = value;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/text/IDTDPartitions.java b/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/text/IDTDPartitions.java
deleted file mode 100644
index d5e6f45..0000000
--- a/bundles/org.eclipse.wst.dtd.core/src/org/eclipse/wst/dtd/core/text/IDTDPartitions.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package org.eclipse.wst.dtd.core.text;
-
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-
-/**
- * This interface is not intended to be implemented.
- * It defines the partitioning for DTD and all its partitions.
- * Clients should reference the partition type Strings defined here directly.
- * 
- * @since 1.0
- */
-public interface IDTDPartitions {
-	
-	String DTD_PARTITIONING = IStructuredPartitions.STRUCTURED_PARTITIONING;
-	
-	String DTD_DEFAULT = "org.eclipse.wst.dtd.DEFAULT"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/.classpath b/bundles/org.eclipse.wst.dtd.ui/.classpath
deleted file mode 100644
index 80ae42f..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src" exported="false" />
-	<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/bundles/org.eclipse.wst.dtd.ui/.cvsignore b/bundles/org.eclipse.wst.dtd.ui/.cvsignore
deleted file mode 100644
index e17a345..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/.cvsignore
+++ /dev/null
@@ -1,6 +0,0 @@
-bin
-runtime
-dtdui.jar
-*.zip
-build.xml
-temp.folder
diff --git a/bundles/org.eclipse.wst.dtd.ui/.options b/bundles/org.eclipse.wst.dtd.ui/.options
deleted file mode 100644
index 35173eb..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.wst.dtd.ui/projectionperf=false
diff --git a/bundles/org.eclipse.wst.dtd.ui/.project b/bundles/org.eclipse.wst.dtd.ui/.project
deleted file mode 100644
index 16b209c..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/.project
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.dtd.ui</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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index c4c04bf..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Wed Jan 12 15:55:38 EST 2005
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=error
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.source=1.3
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-eclipse.preferences.version=1
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=500
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
diff --git a/bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 0e3f292..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-#Thu Dec 16 07:40:58 EST 2004
-compilers.p.unused-element-or-attribute=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=0
-compilers.p.unknown-class=0
-compilers.p.unknown-attribute=0
-compilers.p.no-required-att=0
-eclipse.preferences.version=1
-compilers.p.unresolved-import=0
-compilers.p.illegal-att-value=0
-compilers.use-project=true
diff --git a/bundles/org.eclipse.wst.dtd.ui/README.txt b/bundles/org.eclipse.wst.dtd.ui/README.txt
deleted file mode 100644
index 5a653fe..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/README.txt
+++ /dev/null
@@ -1 +0,0 @@
-The dtd implementation of the sse editor.
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.dtd.ui/build.properties b/bundles/org.eclipse.wst.dtd.ui/build.properties
deleted file mode 100644
index fd5b05a..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/build.properties
+++ /dev/null
@@ -1,21 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-bin.includes = plugin.xml,\
-               *.jar,\
-               icons/,\
-               plugin.properties
-source.dtdui.jar = src/
-src.includes = plugin.xml,\
-               icons/,\
-               build.xml,\
-               plugin.properties
diff --git a/bundles/org.eclipse.wst.dtd.ui/buildnotes_dtd.html b/bundles/org.eclipse.wst.dtd.ui/buildnotes_dtd.html
deleted file mode 100644
index 7fa6bf5..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/buildnotes_dtd.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta
-	http-equiv="Content-Type"
-	content="text/html; charset=ISO-8859-1" />
-<meta
-	name="GENERATOR"
-	content="WTP" />
-<meta
-	http-equiv="Content-Style-Type"
-	content="text/css" />
-<link
-	href="theme/Master.css"
-	rel="stylesheet"
-	type="text/css" />
-<title>Build Notes for DTD Component</title>
-</head>
-<body>
-<h2>Build Notes for DTD <br />
-<br />
-M3, 02/23/2005</h2>
-
-<h3>What's new in this drop</h3><h3>API Changes from previous Build/Milestone</h3>
-<h3>Problem reports fixed</h3>
-
-
-</body>
-</html>
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/DTDFile.gif b/bundles/org.eclipse.wst.dtd.ui/icons/DTDFile.gif
deleted file mode 100644
index 211c437..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/DTDFile.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_Attribute.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_Attribute.gif
deleted file mode 100644
index 00bb7b4..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_Attribute.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_Element.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_Element.gif
deleted file mode 100644
index 01f4889..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_Element.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_ElementToConModel.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_ElementToConModel.gif
deleted file mode 100644
index 1a8236b..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_ElementToConModel.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_GroupToConModel.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_GroupToConModel.gif
deleted file mode 100644
index 8168fb3..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/ctool16/ADD_GroupToConModel.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_Attribute.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_Attribute.gif
deleted file mode 100644
index a7fb780..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_Attribute.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_Element.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_Element.gif
deleted file mode 100644
index 3755e5e..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_Element.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_ElementToConModel.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_ElementToConModel.gif
deleted file mode 100644
index 1a58e11..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_ElementToConModel.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_GroupToConModel.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_GroupToConModel.gif
deleted file mode 100644
index d525a21..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/dtool16/ADD_GroupToConModel.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_Attribute.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_Attribute.gif
deleted file mode 100644
index 00bb7b4..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_Attribute.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_Element.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_Element.gif
deleted file mode 100644
index 01f4889..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_Element.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_ElementToConModel.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_ElementToConModel.gif
deleted file mode 100644
index 1a8236b..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_ElementToConModel.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_GroupToConModel.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_GroupToConModel.gif
deleted file mode 100644
index 8168fb3..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/etool16/ADD_GroupToConModel.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Comment.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Comment.gif
deleted file mode 100644
index 39611d6..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Comment.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Entity.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Entity.gif
deleted file mode 100644
index cb41506..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Entity.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Entity_Reference.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Entity_Reference.gif
deleted file mode 100644
index 5efa9b9..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Entity_Reference.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Notation.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Notation.gif
deleted file mode 100644
index 57ad089..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/ADD_Notation.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/newdtd_wiz.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/newdtd_wiz.gif
deleted file mode 100644
index 2c115ff..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/newdtd_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/organize_dtd_logically.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/organize_dtd_logically.gif
deleted file mode 100644
index 093c6ba..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/organize_dtd_logically.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/sort.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/sort.gif
deleted file mode 100644
index 23c5d0b..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/sort.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/validate.gif b/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/validate.gif
deleted file mode 100644
index 86196e9..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/full/obj16/validate.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/icons/sourceEditor.gif b/bundles/org.eclipse.wst.dtd.ui/icons/sourceEditor.gif
deleted file mode 100644
index 75ebdb8..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/icons/sourceEditor.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.dtd.ui/plugin.properties b/bundles/org.eclipse.wst.dtd.ui/plugin.properties
deleted file mode 100644
index d3c271c..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/plugin.properties
+++ /dev/null
@@ -1,352 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-! Properties file for component: XMDTD - XML Tools DTD Editor
-! Packaged for translation in:  xml.zip
-
-!plugin.xml
-providerName=Eclipse.org
-pluginName=SSE DTD Source Editor
-nlFeatureName=SSE DTD Source Editor NL Support
-DTD_Source_Page_Editor.name=DTD Source Page Editor
-_UI_WIZARD_NEW_DTD=DTD File
-_UI_CREATE_NEW_DTD_FILE=Create a new DTD file
-_UI_XML_TOOLS_PREFERENCE_PAGE=XML
-_UI_DTD_EDITOR_PREFERENCE=DTD
-
-! GenerateDTDActionDelegate - XML validation check
-_UI_DIALOG_TITLE_XML_ERROR=Invalid XML
-_UI_DIALOG_INFO_XML_INVALID=The XML file contains errors. Open it in the XML editor and validate it for details.
-
-!
-! Preference Page
-!
-_UI_SEPARATE_DESIGN_AND_SOURCE_VIEW=Separate design and source view
-_UI_COMBINED_DESIGN_AND_SOURCE_VIEW=Combined design and source view
-_UI_LABEL_EDITOR_LAYOUT=Editor Layout
-_UI_LABEL_DTD_FILES=DTD Files
-_UI_LABEL_DTD_STYLES=DTD Styles
-
-!AddAttributeAction
-_UI_DEFAULT_NEW_ATTRIBUTE=Attribute
-_UI_ACTION_DTD_ADD_ATTRIBUTE=Add Attribute
-_UI_ACTION_DTD_ADD_ELEMENT=Add Element
-
-!actions/AddGroupToContentModelAction.java
-_UI_ACTION_ADD_GROUP=Add &Group
-
-!AddEntityAction
-_UI_ACTION_ADD_ENTITY=Add &Entity
-
-
-! Flat Page Header Text
-_UI_PAGE_HEADING_ELEMENT=Element
-_UI_PAGE_HEADING_ATTRIBUTE=Attribute
-_UI_PAGE_HEADING_NOTATION=Notation
-_UI_PAGE_HEADING_PARAM_ENTITY_REF=External Parameter Entity Reference
-_UI_PAGE_HEADING_ENTITY=Entity
-_UI_PAGE_HEADING_COMMENT=Comment
-_UI_PAGE_HEADING_ATTLIST=Attribute List
-_UI_PAGE_HEADING_CONTENT_MODEL=Content Model
-_UI_PAGE_HEADING_CONTENT_MODEL_GROUP=Content Model Group
-
-!BlankWindow
-_UI_LABEL_VIEW_NOT_AVAILABLE=View is not available for selected object.
-
-!AttributeWindow
-_UI_ACTION_NOTATION_INFO=Attribute Information
-_UI_LABEL_ATTRIBUTE_NAME=Name:
-_UI_LABEL_ATTRIBUTE_TYPE=Type:
-_UI_RADIO_DEFAULT=Default
-_UI_GROUP_ENUMERATED_DEFAULTS=Enumerated defaults
-_UI_BUTTON_ADD=Add  >>
-_UI_BUTTON_REMOVE=<< Remove
-_UI_CHKBOX_DEFAULT=Default
-_UI_GROUP_ELEMENT_COMMENT=Comment
-_UI_CHKBOX_ENUMERATED_DEFAULT=Default
-_UI_CHKBOX_NOTATION_COMBO=Default
-_UI_GROUP_ATTRIBUTE=Attribute default value
-
-!ContentWindow  & ElementWindow
-_UI_LABEL_DTD_NAME=Name
-_UI_GROUP_OCCURRENCE=Occurrence
-
-!the following four symbols are also used in dtdeditor/presentation/GroupContentWindow.java
-!! NOTE TO TRANSLATOR: Please keep the characters in parentheses in translated text i.e. (1)
-_UI_RADIO_JUST_ONCE=Just once (1)
-_UI_RADIO_ONE_OR_MORE=One or more (+)
-_UI_RADIO_OPTIONAL=Optional (?)
-_UI_RADIO_ZERO_OR_MORE=Zero or more (*)
-
-!context menu for .dtd files
-_UI_MENU_GENERATE=&Generate
-_UI_MENU_JAVA=&Java Beans...
-_UI_MENU_XML_SCHEMA=XML &Schema...
-_UI_MENU_HTML_FORM=&HTML Form...
-
-!presentation/DTDContextContributor.java
-_UI_MENU_GENERATE_JAVA=Generate &Java Beans...
-_UI_MENU_GENERATE_XML_SCHEMA=Generate &XML Schema...
-_UI_MENU_GENERATE_HTML_FORM=Generate &HTML Form...
-_UI_MENU_GENERATE_SAMPLE_XML=Generate XM&L...
-_UI_MENU_VALIDATE_DTD=&Validate DTD
-_UI_TOOLTIP_VALIDATE_DTD=Validate the current state of the DTD
-_UI_TOOLTIP_GENERATE_HTML=Generate an HTML form for the DTD
-_UI_TOOLTIP_GENERATE_SAMPLE_XML=Generate an XML from the DTD
-_UI_TOOLTIP_GENERATE_XML_SCHEMA=Generate an XML Schema from the DTD
-_UI_TOOLTIP_GENERATE_JAVA=Generate Java Beans for the DTD
-
-_UI_ACTION_DELETE=Delete
-_UI_ACTION_CONTEXT_ADD_NOTATION=Add &Notation
-_UI_TOOLTIP_ADD_NOTATION=Add a notation to the DTD.
-_UI_ACTION_CONTEXT_ADD_ENTITY=Add &Entity
-_UI_TOOLTIP_ADD_ENTITY=Add an entity to the DTD.
-_UI_ACTION_CONTEXT_ADD_ELEMENT=Add Ele&ment
-_UI_TOOLTIP_ADD_ELEMENT=Add an element to the DTD.
-_UI_ACTION_CONTEXT_ADD_ATTRIBUTE=Add Attribute
-_UI_TOOLTIP_ADD_ATTRIBUTE_SELECTED=Add an attribute to the selected element.
-_UI_ACTION_ADD_ATTRIBUTELIST=Add Attribute &List
-_UI_TOOLTIP_ADD_ATTRIBUTELIST_SELECTED=Add an attribute list to the selected element.
-_UI_ACTION_ADD_GROUP_CONTENT=Add Group To Con&tent Model
-_UI_TOOLTIP_ADD_GROUP=Add a group to the content model of the selected group or element.
-_UI_ACTION_ADD_ELEMENT_CONTENT=Add Element To C&ontent Model
-_UI_TOOLTIP_ADD_ELEMENT_CONTENT=Add an element to the content model.
-_UI_MENU_DTD_EDITOR=&DTD
-_UI_TOOLTIP_ADD_COMMENT=Add a comment to the DTD.
-
-!presentation/DTDEditor.java
-_UI_WORKBOOKPAGE_SOURCE=Source
-_UI_WORKBOOKPAGE_DESIGN=Design
-
-!the following is used: _UI_MENU_UNDO_1 + _UI_MENU_UNDO_2
-_UI_MENU_UNDO_1=&Undo
-!! NOTE TO TRANSLATOR: Do not translate following line - shortcut key
-_UI_MENU_UNDO_2=@Ctrl+Z
-
-!the following is used: _UI_MENU_UNDO_DESC + a description of the command to be undone
-_UI_MENU_UNDO_DESC=Undo:
-
-!the following is used: _UI_MENU_REDO_1 + _UI_MENU_REDO_2
-_UI_MENU_REDO_1=&Redo
-!! NOTE TO TRANSLATOR: Do not translate following line - shortcut key
-_UI_MENU_REDO_2=@Ctrl+Y
-
-!the following is used: _UI_MENU_REDO_DESC + a description of the command to be done again
-_UI_MENU_REDO_DESC=Redo:
-
-!presentation/ElementWindow
-_UI_ELEMENT_NAME=Name
-_UI_ELEMENT_COMMENT=Comment
-
-!DTDOutliner
-_UI_ACTION_ADD_DTD_NOTATION=Add &Notation
-_UI_ACTION_ADD_DTD_ENTITY=Add &Entity
-_UI_ACTION_ADD_DTD_ELEMENT=Add Ele&ment
-_UI_ACTION_ADD_DTD_COMMENT=Add &Comment
-_UI_ACTION_DTD_DELETE=&Delete
-_UI_ACTION_ADD_ATTRIBUTE=Add &Attribute
-_UI_ACTION_GROUP_ADD_GROUP=Add Group to Con&tent Model
-_UI_ACTION_ADD_ELEMENT=Add Element to C&ontent Model
-
-!DTDContentOutlinePage
-_UI_BUTTON_GROUP_ITEMS_LOGICALLY=Group items logically.
-_UI_BUTTON_UNGROUP_ITEMS_LOGICALLY=Do not group items logically.
-_UI_BUTTON_SORT_ITEMS=Sort items alphabetically.
-_UI_BUTTON_UNSORT_ITEMS=Do not sort items alphabetically.
-
-!provider/EntityItemProvider.java
-_UI_COLUMN_PARAMETER=Parameter
-_UI_COLUMN_GENERAL=General
-
-!provider/FolderItemProvider.java
-_UI_LABEL_ELEMENTS_FOLDER=Elements
-_UI_LABEL_NOTATIONS_FOLDER=Notations
-_UI_LABEL_ENITIES_FOLDER=Entities
-
-!Wizards/InputSelectionPage.java
-_UI_BUTTON_SELECT_ALL=&Select All
-_UI_BUTTON_UNSELECT_ALL=&Clear All
-
-!Wizards/HTMLFormWizard.java
-_UI_HTML_WIZARD_NEW_FILE_TITLE=Generate HTML Form
-_UI_HTML_WIZARD_NEW_FILE_DESC=Generate an HTML form from the selected DTD file.
-
-!Wizards/NewDTDWizard.java
-_UI_WIZARD_NEW_DTD_TITLE=Create DTD
-_UI_WIZARD_CREATE_DTD_HEADING=Create DTD File
-_UI_WIZARD_CREATE_DTD_EXPL=Select how you would like to create your DTD file.
-_UI_RADIO_CREATE_DTD=Create DTD file from scratch
-_UI_RADIO_CREATE_DTD_FROM_XML=Create DTD file from an XML file
-
-_UI_WIZARD_NEW_DTD_HEADING=New DTD
-_UI_WIZARD_NEW_DTD_EXPL=Create a new DTD file. Specify the folder and name for the file.
-_ERROR_FILENAME_MUST_END_DTD = The file name must end in .dtd
-
-_UI_WIZARD_NEW_XSD_HEADING=New XML Schema
-_UI_WIZARD_NEW_XSD_EXPL=Create a new XML Schema file from the XML file.
-
-_UI_WIZARD_XML_FILE_HEADING=XML Files
-_UI_WIZARD_XML_FILE_EXPL=Select the XML files to create the DTD file from.
-_UI_LABEL_XML_FILES=XML Files:
-
-_UI_STATUS_XML_CONTAINS_ERRORS=XML files specified contained errors.
-_UI_BUTTON_ADD_XML=Add...
-_UI_BUTTON_REMOVE_XML=Remove
-
-!wizards/ServletNamePage
-_UI_WIZARD_SERVLET_NAME_HEADING=Servlet Name
-_UI_LABEL_SERVLET_NAME=&Enter the servlet name:
-_UI_LABEL_MISSING_SERVLET_NAME=Provide a servlet name
-_UI_LABEL_DEFAULT_SERVLET_NAME=http://localhost/servlet/testServlet
-
-!wizards/GenerateXMLSchemaHelper.java & DTD2XSDWizard.java
-_UI_WIZARD_DTD2XSD_TITLE=Generate
-_UI_GENERATE_XSD_TITLE=Generate XML Schema
-_UI_GENERATE_XSD_DESCRIPTION=Generate an XML schema from the selected DTD file.
-_UI_PAGE_GEN_OPTIONS_TITLE=XML Schema Generation Options
-_UI_PAGE_GEN_OPTIONS_DESC=Select how you want your XML schema generated
-_UI_GENERATE_XSD_LONG_DESC=You can create one XML schema file that includes the selected DTD and any of the DTDs it references.  Alternatively, you can create individual schema files that correspond to the selected DTD and any of the DTDs it references.
-
-
-_UI_GROUP_OPTIONS=Options
-_UI_BUTTON_GEN_ONE_SCHEMA=&Create one XML schema that includes all the DTD files
-_UI_BUTTON_GEN_MULTI_SCHEMAS=Create an &XML schema for each DTD file
-
-!EntityWindow
-_UI_GROUP_ENTITY_INFORMATION=Entity information
-_UI_LABEL_NAME=Name:
-_UI_LABLE_TYPE=Type:
-_UI_RADIO_GENERAL=General
-_UI_RADIO_PARAMETER=Parameter
-_UI_CHKBOX_EXTERNAL=External
-_UI_GROUP_INTERNAL=Internal Entity
-_UI_DIALOG_SELECT_DTD=Select System ID File
-_UI_DIALOG_SELECT_DTD_DESC=Please select a resource to be used for the System ID.
-_UI_GROUP_INTERNAL_ENTITY=Internal entity
-_UI_LABEL_VALUE_INTERNAL=Value:
-_UI_GROUP_EXTERNAL_ENTITY=External entity
-_UI_LABEL_VALUE=Value
-_UI_GROUP_COMMENT=Comment
-_UI_LABEL_SYSTEM_ID=System ID:
-_UI_BUTTON_SELECT=Select...
-_UI_LABEL_PUBLIC_ID=Public ID:
-_UI_LABEL_NOTATION_NAME=Notation name
-_UI_LABEL_UNPARSE_ENTITY=(Unparsed entity)
-_UI_TOOLTIP_GENERAL=Use entity in XML documents.
-_UI_TOOLTIP_PARAMETER=Use entity in a DTD.
-_UI_TOOLTIP_EXTERNAL=Refer to an external DTD.
-_UI_LABEL_BROWSE=Browse...
-
-!presentation/NotationsTable.java
-_UI_COLUMN_NOTATION_NAME=Notation Name
-_UI_COLUMN_DECLARATION=Declaration
-
-!GroupContentWindow
-_UI_GROUP_MODEL_GROUP=Model group
-_UI_GROUP_CONNECTOR=Connector
-_UI_GROUP_MODEL_GROUP_OCCURRENCE=Occurrence
-_UI_RADIO_SEQUENCE=Sequence (,)
-_UI_RADIO_CHOICE=Choice (|)
-_UI_LABEL_CONTENT_MODEL_TYPE=Content model type:
-
-!EntitiesTable
-_UI_COLUMN_ENTITY_NAME=Entity Name
-_UI_COLUMN_TYPE=Type
-_UI_COLUMN_DECLARATION=Declaration
-
-!AddNotationAction
-_UI_DEFAULT_NOTATION=Notation
-_UI_ACTION_ADD_NOTATION=Add &Notation
-
-!ElementsTable
-_UI_COLUMN_ELEMENT_NAME=Element Name
-_UI_COLUMN_CONTENT_MODEL=Content Model
-_UI_COLUMN_ATTRIBUTES=Attributes
-
-!ValidateDTDAction
-_UI_MSGBOX_DTD_VALID_TITLE=Validation Successful
-_UI_MSGBOX_DTD_VALID_TEXT=The DTD file is valid.
-
-!NotationWindow
-_UI_LABEL_NOTATION_INFORMATION=Notation information
-_UI_LABEL_NOTATION_NAME=Name:
-_UI_LABEL_NOTATION_SYSTEM_ID=System ID:
-_UI_LABEL_NOTATION_PUBLIC_ID=Public ID:
-_UI_LABEL_NOTATION_COMMENT=Comment
-
-!ParameterEntityReferenceWindow
-_UI_GROUP_EXTERNAL_PARM_ENTITY_REF=External parameter entity reference
-_UI_LABEL_ENTITY_NAME=Entity name:
-_UI_LABEL_REFERENCED_FILE=Referenced file:
-
-!InputSelectionPage (HTMLFormWizard)
-_UI_INPUT_SEL_PAGE_TITLE=Form Input Selection
-_UI_INPUT_SEL_PAGE_DESC=Select the form input fields to be generated
-
-!HTMLFormWizard (HTMLFormWizard)
-_UI_HTML_WIZARD_TITLE=HTML Form Creation Wizard
-
-! ParameterEntityReferenceWindow
-_UI_BUTTON_DETAILS=Details...
-
-!DTDContextContributer
-_UI_ACTION_ADD_PARAM_ENTITY_REF=Add &Parameter Entity Reference
-
-!DragAttributeCommand
-_UI_MOVE_ATTRIBUTE=Move Attribute
-
-!DragContentModelCommand
-_UI_MOVE_CONTENT=Move Content
-
-!DragTopLevelNodesCommand
-_UI_MOVE_NODE=Move Node
-_UI_MOVE_NODES=Move Nodes
-
-!DTDValidator
-_UI_DTD_VALIDATOR=DTD Validator
-
-_ERROR_MIN_ONE_XML_FILE=At least one XML File must be added
-_ERROR_MIN_ONE_XML_FILE_FOR_OP=At least one XML file is required to perform the operation.
-_ERROR_NO_FILENAME=Enter a file name
-_ERROR_FILE_DOES_NOT_EXIST=File does not exist
-_ERROR_FILENAME_INVALID=Invalid file name
-_ERROR_FILENAME_MUST_END_DTD=The file name must end in .dtd
-_ERROR_TITLE_GENERATE_DTD_FAILED=Generate DTD failed
-_ERROR_MSG_GENERATE_DTD_FAILED=Errors were encountered while generating the DTD.
-
-_ERROR_INVALID_NAME_SPACE=Name field cannot contain a space
-_ERROR_VALIDATE_FAILED=Validation failed
-_ERROR_DTD_INVALID=The DTD file is invalid.  Please check the Tasks view for more details.
-_ERROR_LIMITE_EXCEEDED=The DTD file is not valid.  The message limit for the Tasks view has been exceeded.  Please increase the limit and try again.
-
-_ERROR_TITLE_GENERATE_JAVABEAN_FAILED=Generate Java Beans failed
-_ERROR_MSG_GENERATE_JAVABEAN_FAILED=Errors were encountered while generating the Java Beans.
-DTDColorPage.0=<!ELEMENT Main (One,Two+)>\r\n<!ELEMENT One (Three,Four)>\r\n<!ATTLIST One\r\n oneone CDATA #REQUIRED\r\n>\r\n<!-- You need this -->\r\n<!ELEMENT Two (moremore*)>\r\n<!ATTLIST Two\r\n twotwo CDATA #REQUIRED\r\n twothree (aaa | bbb) "aaa"\r\n>\r\n
-DTDColorPage.1=Comments
-DTDColorPage.2=Data
-DTDColorPage.3=Default
-DTDColorPage.4=Keywords
-DTDColorPage.5=Strings
-DTDColorPage.6=Symbols
-DTDColorPage.7=Tag Delimiters
-DTDColorPage.8=Tag Names
-DTDPropertySourceAdapter.0=Name
-DTDPropertySourceAdapter.1=Contents
-DTDPropertySourceAdapter.2=Attributes
-
-! org.eclipse.ui.newWizards extension point
-_UI_WIZARD_NEW_DTD           = DTD
-_UI_CREATE_NEW_DTD_FILE      = Create a new DTD file.
-_UI_WIZARD_NEW_DTD_TITLE     = Create DTD
-_UI_WIZARD_NEW_DTD_HEADING   = New DTD
-_UI_WIZARD_NEW_DTD_EXPL      = Create a new DTD file. Specify the folder and name for the file.
-_UI_NEW_DTD_FILENAME         = NewDTD.dtd
diff --git a/bundles/org.eclipse.wst.dtd.ui/plugin.xml b/bundles/org.eclipse.wst.dtd.ui/plugin.xml
deleted file mode 100644
index 17e400a..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/plugin.xml
+++ /dev/null
@@ -1,132 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.wst.dtd.ui"
-   name="%pluginName"
-   version="1.0.0"
-   provider-name="%providerName"
-   class="org.eclipse.wst.dtd.ui.internal.DTDUIPlugin">
-
-   <runtime>
-      <library name="dtdui.jar"/>
-   </runtime>
-   <requires>
-		<import plugin="org.eclipse.core.resources"/>
-		<import plugin="org.eclipse.core.runtime" />
-		<import plugin="org.eclipse.jface.text"/>
-		<import plugin="org.eclipse.ui" />
-		<import plugin="org.eclipse.ui.editors"/>
-		<import plugin="org.eclipse.ui.ide" />
-		<import plugin="org.eclipse.ui.views"/>
-		<import plugin="org.eclipse.ui.workbench"/>
-		<import plugin="org.eclipse.ui.workbench.texteditor"/>
-		<import plugin="org.eclipse.wst.common.ui"/>
-		<import plugin="org.eclipse.wst.common.uriresolver"/>
-		<import plugin="org.eclipse.wst.dtd.core"/>
-		<import plugin="org.eclipse.wst.sse.core"/>
-		<import plugin="org.eclipse.wst.sse.ui"/>
-		<import plugin="org.eclipse.wst.validation"/>
-		<import plugin="org.eclipse.wst.xml.core"/>
-   </requires>
-
-   <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%DTD_Source_Page_Editor.name"
-            icon="icons/DTDFile.gif"
-            extensions="dtd,ent,mod"
-            contributorClass="org.eclipse.wst.dtd.ui.internal.editor.ActionContributorDTD"
-			class="org.eclipse.wst.dtd.ui.internal.editor.StructuredTextEditorDTD"
-            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
-			id="org.eclipse.wst.dtd.ui.internal.editor.StructuredTextEditorDTD"/>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.extendedconfiguration">
-      <configuration
-      		type="contentoutlineconfiguration"
-            class="org.eclipse.wst.dtd.ui.views.contentoutline.DTDContentOutlineConfiguration"
-            target="org.eclipse.wst.dtd.core.dtdsource"/>
-      <configuration
-      		type="textviewerconfiguration"
-            class="org.eclipse.wst.dtd.ui.StructuredTextViewerConfigurationDTD"
-            target="org.eclipse.wst.dtd.core.dtdsource"/>
-      <configuration
-      		type="characterpairmatcher"
-            class="org.eclipse.wst.dtd.ui.internal.text.DTDDocumentRegionEdgeMatcher"
-            target="org.eclipse.wst.dtd.core.dtdsource"/>
-      <configuration
-      		type="structuredtextfoldingprovider"
-            class="org.eclipse.wst.dtd.ui.internal.projection.StructuredTextFoldingProviderDTD"
-            target="org.eclipse.wst.dtd.core.dtdsource"/>
-      <definition
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.dtd"
-            target="org.eclipse.wst.dtd.core.dtdsource"/>
-      <definition
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.dtd.styles"
-            target="org.eclipse.wst.dtd.core.dtdsource"/>
-      <!-- provide syntax highlighting for DTD subset within XML -->
-      <configuration
-      		type="linestyleprovider"
-      		class="org.eclipse.wst.dtd.ui.internal.style.LineStyleProviderForDTDSubSet"
-      		target="org.eclipse.wst.xml.dtd.internal_subset"/>
-   </extension>
-
-	<!-- use a specific annotation model with FileBuffers -->
-   <extension
-      point="org.eclipse.core.filebuffers.annotationModelCreation">
-      <factory
-            contentTypeId="org.eclipse.wst.dtd.core.dtdsource"
-            class="org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModelFactory"/>
-   </extension>
-
-	<!-- Register the UI adapter factory provider -->
-   <extension
-         point="org.eclipse.wst.sse.ui.adapterFactoryDescription">
-      <adapterFactoryDescription
-            class="org.eclipse.wst.dtd.ui.internal.registry.AdapterFactoryProviderForDTD">
-            <contentType id="org.eclipse.wst.dtd.core.dtdsource"/>
-      </adapterFactoryDescription>
-   </extension>
-
-	<!-- Editor actionsets -->
-   <extension
-         point="org.eclipse.ui.actionSetPartAssociations">
-      <actionSetPartAssociation targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
-         <part id="org.eclipse.wst.dtd.ui.internal.editor.StructuredTextEditorDTD"/>
-      </actionSetPartAssociation>
-      <actionSetPartAssociation targetID="org.eclipse.ui.NavigateActionSet">
-         <part id="org.eclipse.wst.dtd.ui.internal.editor.StructuredTextEditorDTD"/>
-      </actionSetPartAssociation>
-   </extension>
-
-   <extension
-         point="org.eclipse.ui.preferencePages">
-      <page
-            name="%_UI_LABEL_DTD_FILES"
-            category="org.eclipse.wst.sse.ui.preferences"
-            class="org.eclipse.wst.dtd.ui.internal.preferences.DTDFilesPreferencePage"
-            id="org.eclipse.wst.sse.ui.preferences.dtd">
-      </page>
-      <page
-            name="%_UI_LABEL_DTD_STYLES"
-            category="org.eclipse.wst.sse.ui.preferences.dtd"
-			class="org.eclipse.wst.dtd.ui.internal.preferences.DTDColorPage"
-            id="org.eclipse.wst.sse.ui.preferences.dtd.styles">
-      </page>
-   </extension>
-
-	<!-- New DTD wizard -->
-	<extension point="org.eclipse.ui.newWizards">
-		<wizard id="org.eclipse.wst.dtd.ui.internal.wizard.NewDTDWizard" name="%_UI_WIZARD_NEW_DTD" class="org.eclipse.wst.dtd.ui.internal.wizard.NewDTDWizard" category="org.eclipse.wst.XMLCategory" icon="icons/DTDFile.gif">
-			<description>%_UI_CREATE_NEW_DTD_FILE</description>
-			<selection class="org.eclipse.core.resources.IResource" />
-		</wizard>
-	</extension>
-  
-	<!-- initialize DTD ui preferences -->
-	<extension point="org.eclipse.core.runtime.preferences">
-	   <initializer class="org.eclipse.wst.dtd.ui.internal.preferences.DTDUIPreferenceInitializer"/>
-	</extension>
-</plugin>
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/StructuredTextViewerConfigurationDTD.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/StructuredTextViewerConfigurationDTD.java
deleted file mode 100644
index 211cb99..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/StructuredTextViewerConfigurationDTD.java
+++ /dev/null
@@ -1,90 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.wst.dtd.core.text.IDTDPartitions;
-import org.eclipse.wst.dtd.ui.internal.style.LineStyleProviderForDTD;
-import org.eclipse.wst.dtd.ui.internal.taginfo.DTDBestMatchHoverProcessor;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration;
-import org.eclipse.wst.sse.ui.style.IHighlighter;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-import org.eclipse.wst.sse.ui.style.LineStyleProviderForNoOp;
-import org.eclipse.wst.sse.ui.taginfo.AnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.ProblemAnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.TextHoverManager;
-import org.eclipse.wst.sse.ui.util.EditorUtility;
-
-
-/**
- * A source viewer configuration for DTDs.
- * @since 1.0
- */
-public class StructuredTextViewerConfigurationDTD extends StructuredTextViewerConfiguration {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getConfiguredContentTypes(org.eclipse.jface.text.source.ISourceViewer)
-	 */
-	public String[] getConfiguredContentTypes(ISourceViewer sourceViewer) {
-		if (configuredContentTypes == null) {
-			configuredContentTypes = new String[]{IDTDPartitions.DTD_DEFAULT, IStructuredPartitions.DEFAULT_PARTITION, IStructuredPartitions.UNKNOWN_PARTITION};
-		}
-		return configuredContentTypes;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration#getHighlighter(org.eclipse.jface.text.source.ISourceViewer)
-	 */
-	public IHighlighter getHighlighter(ISourceViewer sourceViewer) {
-		IHighlighter highlighter = super.getHighlighter(sourceViewer);
-
-		// We need to add the providers each time this method is called.
-		// See StructuredTextViewer.configure() method (defect#246727)
-		LineStyleProvider dtdProvider = new LineStyleProviderForDTD();
-		LineStyleProvider noopProvider = new LineStyleProviderForNoOp();
-
-		highlighter.addProvider(IDTDPartitions.DTD_DEFAULT, dtdProvider);
-		highlighter.addProvider(IStructuredPartitions.DEFAULT_PARTITION, dtdProvider);
-		highlighter.addProvider(IStructuredPartitions.UNKNOWN_PARTITION, noopProvider);
-
-		highlighter.setDocument((IStructuredDocument) sourceViewer.getDocument());
-
-		return highlighter;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getTextHover(org.eclipse.jface.text.source.ISourceViewer, java.lang.String, int)
-	 */
-	public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) {
-		/*
-		 * content type does not really matter since only combo, problem,
-		 * annotation hover are available
-		 */
-		TextHoverManager.TextHoverDescriptor[] hoverDescs = getTextHovers();
-		for (int i = 0; i < hoverDescs.length; i++) {
-			if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-				String hoverType = hoverDescs[i].getId();
-				if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType))
-					return new DTDBestMatchHoverProcessor();
-				else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType))
-					return new ProblemAnnotationHoverProcessor();
-				else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType))
-					return new AnnotationHoverProcessor();
-			}
-		}
-		return super.getTextHover(sourceViewer, contentType, stateMask);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/DTDUIPlugin.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/DTDUIPlugin.java
deleted file mode 100644
index 711ee85..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/DTDUIPlugin.java
+++ /dev/null
@@ -1,91 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class DTDUIPlugin extends AbstractUIPlugin {
-	// The shared instance.
-	private static DTDUIPlugin plugin;
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static DTDUIPlugin 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 = DTDUIPlugin.getDefault().getResourceBundle();
-		String bundleKey = null;
-		if (key.startsWith("%")) {
-			bundleKey = key.substring(1);
-		}
-		else {
-			bundleKey = key;
-		}
-		try {
-			if (bundle != null)
-				return bundle.getString(bundleKey);
-		}
-		catch (MissingResourceException e) {
-		}
-		return key;
-	}
-
-	/**
-	 * Returns the workspace instance.
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-
-	// Resource bundle.
-	private ResourceBundle resourceBundle;
-
-	/**
-	 * The constructor.
-	 */
-	public DTDUIPlugin() {
-		super();
-		plugin = this;
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		if (resourceBundle == null) {
-			try {
-				resourceBundle = Platform.getResourceBundle(getBundle());
-			}
-			catch (MissingResourceException x) {
-				resourceBundle = null;
-			}
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/Logger.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/Logger.java
deleted file mode 100644
index f12e5fa..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/Logger.java
+++ /dev/null
@@ -1,143 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal;
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-/**
- * Small convenience class to log messages to plugin's log file and also, if
- * desired, the console. This class should only be used by classes in this
- * plugin. Other plugins should make their own copy, with appropriate ID.
- */
-public class Logger {
-	private static final String PLUGIN_ID = "org.eclipse.wst.dtd.ui"; //$NON-NLS-1$
-
-	public static final int ERROR = IStatus.ERROR; // 4
-	public static final int ERROR_DEBUG = 200 + ERROR;
-	public static final int INFO = IStatus.INFO; // 1
-	public static final int INFO_DEBUG = 200 + INFO;
-
-	public static final int OK = IStatus.OK; // 0
-
-	public static final int OK_DEBUG = 200 + OK;
-
-	private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
-	public static final int WARNING = IStatus.WARNING; // 2
-	public static final int WARNING_DEBUG = 200 + WARNING;
-
-	/**
-	 * Adds message to log.
-	 * 
-	 * @param level
-	 *            severity level of the message (OK, INFO, WARNING, ERROR,
-	 *            OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
-	 * @param message
-	 *            text to add to the log
-	 * @param exception
-	 *            exception thrown
-	 */
-	protected static void _log(int level, String message, Throwable exception) {
-		if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
-			if (!isDebugging())
-				return;
-		}
-
-		int severity = IStatus.OK;
-		switch (level) {
-			case INFO_DEBUG :
-			case INFO :
-				severity = IStatus.INFO;
-				break;
-			case WARNING_DEBUG :
-			case WARNING :
-				severity = IStatus.WARNING;
-				break;
-			case ERROR_DEBUG :
-			case ERROR :
-				severity = IStatus.ERROR;
-		}
-		Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null)
-			Platform.getLog(bundle).log(statusObj);
-	}
-
-	/**
-	 * Prints message to log if category matches /debug/tracefilter option.
-	 * 
-	 * @param message
-	 *            text to print
-	 * @param category
-	 *            category of the message, to be compared with
-	 *            /debug/tracefilter
-	 */
-	protected static void _trace(String category, String message, Throwable exception) {
-		if (!isDebugging())
-			return;
-
-		String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
-		if (traceFilter != null) {
-			StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens()) {
-				String cat = tokenizer.nextToken().trim();
-				if (category.equals(cat)) {
-					Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
-					Bundle bundle = Platform.getBundle(PLUGIN_ID);
-					if (bundle != null)
-						Platform.getLog(bundle).log(statusObj);
-					return;
-				}
-			}
-		}
-	}
-
-	/**
-	 * @return true if the platform is debugging
-	 */
-	public static boolean isDebugging() {
-		return Platform.inDebugMode();
-	}
-
-	public static void log(int level, String message) {
-		_log(level, message, null);
-	}
-
-	public static void log(int level, String message, Throwable exception) {
-		_log(level, message, exception);
-	}
-
-	public static void logException(String message, Throwable exception) {
-		_log(ERROR, message, exception);
-	}
-
-	public static void logException(Throwable exception) {
-		_log(ERROR, exception.getMessage(), exception);
-	}
-
-	public static void trace(String category, String message) {
-		_trace(category, message, null);
-	}
-
-	public static void traceException(String category, String message, Throwable exception) {
-		_trace(category, message, exception);
-	}
-
-	public static void traceException(String category, Throwable exception) {
-		_trace(category, exception.getMessage(), exception);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DTDDragAndDropManager.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DTDDragAndDropManager.java
deleted file mode 100644
index 1287b16..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DTDDragAndDropManager.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.dnd;
-
-import java.util.Collection;
-
-import org.eclipse.wst.common.ui.dnd.DragAndDropCommand;
-import org.eclipse.wst.common.ui.dnd.DragAndDropManager;
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.CMNode;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.TopLevelNode;
-
-public class DTDDragAndDropManager implements DragAndDropManager {
-
-	public DragAndDropCommand createCommand(Object target, float location, int operations, int operation, Collection source) {
-		if (target instanceof DTDNode) {
-			DTDNode node = (DTDNode) target;
-
-			if (node instanceof TopLevelNode) {
-				return new DragTopLevelNodesCommand(target, location, operations, operation, source);
-			}
-			if (node instanceof Attribute) {
-				return new DragAttributeCommand(target, location, operations, operation, source);
-			}
-			if (node instanceof CMNode) {
-				return new DragContentModelCommand(target, location, operations, operation, source);
-			}
-
-		}
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragAttributeCommand.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragAttributeCommand.java
deleted file mode 100644
index 06e250f..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragAttributeCommand.java
+++ /dev/null
@@ -1,61 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.dnd;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.wst.common.ui.dnd.DefaultDragAndDropCommand;
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-
-
-
-public class DragAttributeCommand extends DefaultDragAndDropCommand {
-
-	public DragAttributeCommand(Object target, float location, int operations, int operation, Collection sources) {
-		super(target, location, operations, operation, sources);
-	}
-
-	public boolean canExecute() {
-		Iterator iter = sources.iterator();
-		while (iter.hasNext()) {
-			Object source = iter.next();
-			if (!(source instanceof Attribute)) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	public void execute() {
-		DTDNode referenceNode = (DTDNode) target;
-		DTDFile dtdFile = referenceNode.getDTDFile();
-		if (referenceNode instanceof Attribute) {
-			dtdFile.getDTDModel().beginRecording(this, DTDUIPlugin.getResourceString("_UI_MOVE_ATTRIBUTE")); //$NON-NLS-1$
-			AttributeList attList = (AttributeList) referenceNode.getParentNode();
-			Iterator iter = sources.iterator();
-			while (iter.hasNext()) {
-				DTDNode node = (DTDNode) iter.next();
-				if (node instanceof Attribute) {
-					attList.insertIntoModel(this, (Attribute) referenceNode, (Attribute) node, isAfter());
-					dtdFile.deleteNode(this, node);
-				}
-			}
-			dtdFile.getDTDModel().endRecording(this);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragContentModelCommand.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragContentModelCommand.java
deleted file mode 100644
index 35fab76..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragContentModelCommand.java
+++ /dev/null
@@ -1,113 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.dnd;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.wst.common.ui.dnd.DefaultDragAndDropCommand;
-import org.eclipse.wst.dtd.core.internal.CMBasicNode;
-import org.eclipse.wst.dtd.core.internal.CMGroupNode;
-import org.eclipse.wst.dtd.core.internal.CMNode;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-
-
-public class DragContentModelCommand extends DefaultDragAndDropCommand {
-
-	public DragContentModelCommand(Object target, float location, int operations, int operation, Collection sources) {
-		super(target, location, operations, operation, sources);
-	}
-
-	public boolean canExecute() {
-		if (!(target instanceof CMNode)) {
-			return false;
-		}
-
-		Iterator iter = sources.iterator();
-		while (iter.hasNext()) {
-			Object source = iter.next();
-			if (!(source instanceof CMNode)) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	public void execute() {
-		DTDNode referenceNode = (DTDNode) target;
-
-		if (referenceNode instanceof CMNode) {
-			DTDFile dtdFile = referenceNode.getDTDFile();
-
-			DTDNode parent = (DTDNode) referenceNode.getParentNode();
-			dtdFile.getDTDModel().beginRecording(this, DTDUIPlugin.getResourceString("_UI_MOVE_CONTENT")); //$NON-NLS-1$
-			boolean parentIsElement = false;
-			Element element = null;
-			CMGroupNode group = null;
-			if (parent instanceof Element) {
-				parentIsElement = true;
-				element = (Element) parent;
-			}
-			else {
-				group = (CMGroupNode) parent;
-			}
-
-			if (element == null && group == null) {
-				// no parent to add to
-				return;
-			}
-
-			Iterator iter = sources.iterator();
-			while (iter.hasNext()) {
-				DTDNode node = (DTDNode) iter.next();
-				if (node instanceof CMNode) {
-					if (parentIsElement) {
-						if (element.getContentModel() == node) {
-							continue;
-						}
-						element.replaceContentModel(this, (CMNode) node);
-					}
-					else {
-						if (referenceNode == node || (isAfter() && referenceNode.getNextSibling() == node) || (!isAfter() && node.getNextSibling() == referenceNode)) {
-							continue;
-						}
-
-						group.insertIntoModel(this, (CMNode) referenceNode, (CMNode) node, isAfter());
-
-					}
-					DTDNode nodeParent = (DTDNode) node.getParentNode();
-					nodeParent.delete(this, node);
-				}
-			}
-			dtdFile.getDTDModel().endRecording(this);
-		}
-	}
-
-	public int getFeedback() {
-		DTDNode referenceNode = (DTDNode) target;
-		if (referenceNode instanceof CMNode) {
-			CMNode cmNode = (CMNode) referenceNode;
-			if (cmNode.isRootElementContent() && cmNode instanceof CMBasicNode) {
-				return DND.FEEDBACK_SELECT;
-			}
-		}
-
-		return super.getFeedback();
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragTopLevelNodesCommand.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragTopLevelNodesCommand.java
deleted file mode 100644
index 0aa8082..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/dnd/DragTopLevelNodesCommand.java
+++ /dev/null
@@ -1,64 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.dnd;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.wst.common.ui.dnd.DefaultDragAndDropCommand;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.TopLevelNode;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-
-public class DragTopLevelNodesCommand extends DefaultDragAndDropCommand {
-
-	static private final String moveNode = DTDUIPlugin.getResourceString("_UI_MOVE_NODE"); //$NON-NLS-1$
-	static private final String moveNodes = DTDUIPlugin.getResourceString("_UI_MOVE_NODES"); //$NON-NLS-1$
-
-	public DragTopLevelNodesCommand(Object target, float location, int operations, int operation, Collection sources) {
-		super(target, location, operations, operation, sources);
-	}
-
-	public boolean canExecute() {
-		if (!(target instanceof TopLevelNode)) {
-			return false;
-		}
-
-		Iterator iter = sources.iterator();
-		while (iter.hasNext()) {
-			Object source = iter.next();
-			if (!(source instanceof TopLevelNode)) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	public void execute() {
-		DTDNode referenceNode = (DTDNode) target;
-
-		DTDFile dtdFile = referenceNode.getDTDFile();
-		dtdFile.getDTDModel().beginRecording(this, sources.size() > 1 ? moveNodes : moveNode);
-		Iterator iter = sources.iterator();
-		while (iter.hasNext()) {
-			DTDNode node = (DTDNode) iter.next();
-			if (node instanceof TopLevelNode) {
-				dtdFile.moveNode(this, referenceNode, node, isAfter());
-			}
-		}
-		dtdFile.getDTDModel().endRecording(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/ActionContributorDTD.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/ActionContributorDTD.java
deleted file mode 100644
index 29cdf2b..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/ActionContributorDTD.java
+++ /dev/null
@@ -1,41 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.editor;
-
-import org.eclipse.wst.sse.ui.internal.actions.ActionContributor;
-
-/**
- * XMLEditorActionContributor
- * 
- * This class should not be used inside multi page editor's
- * ActionBarContributor, since cascaded init() call from the
- * ActionBarContributor will causes exception and it leads to lose whole
- * toolbars.
- * 
- * Instead, use SourcePageActionContributor for source page contributor of
- * multi page editor.
- * 
- * Note that this class is still valid for single page editor.
- */
-public class ActionContributorDTD extends ActionContributor {
-	protected static final String[] EDITOR_IDS = {"org.eclipse.wst.dtd.ui.StructuredTextEditorDTD", "org.eclipse.wst.sse.ui.StructuredTextEditor"}; //$NON-NLS-1$ //$NON-NLS-2$
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.edit.util.ActionContributor#getExtensionIDs()
-	 */
-	protected String[] getExtensionIDs() {
-		return EDITOR_IDS;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/DTDEditorPluginImageHelper.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/DTDEditorPluginImageHelper.java
deleted file mode 100644
index b157fbe..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/DTDEditorPluginImageHelper.java
+++ /dev/null
@@ -1,157 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.editor;
-
-import java.util.HashMap;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-
-
-/**
- * Helper class to handle images provided by this plug-in.
- * 
- * NOTE: For internal use only. For images used externally, please use the
- * Shared***ImageHelper class instead.
- * 
- * @author amywu
- */
-public class DTDEditorPluginImageHelper {
-	private static DTDEditorPluginImageHelper instance = null;
-
-	/**
-	 * Gets the instance.
-	 * 
-	 * @return Returns a DTDEditorPluginImageHelper
-	 */
-	public synchronized static DTDEditorPluginImageHelper getInstance() {
-		if (instance == null)
-			instance = new DTDEditorPluginImageHelper();
-		return instance;
-	}
-
-	// save a descriptor for each image
-	private HashMap fImageDescRegistry = null;
-	private final String PLUGINID = DTDUIPlugin.getDefault().getBundle().getSymbolicName();
-
-	/**
-	 * Creates an image from the given resource and adds the image to the
-	 * image registry.
-	 * 
-	 * @param resource
-	 * @return Image
-	 */
-	private Image createImage(String resource) {
-		ImageDescriptor desc = getImageDescriptor(resource);
-		Image image = null;
-
-		if (desc != null) {
-			image = desc.createImage();
-			// dont add the missing image descriptor image to the image
-			// registry
-			if (!desc.equals(ImageDescriptor.getMissingImageDescriptor()))
-				getImageRegistry().put(resource, image);
-		}
-		return image;
-	}
-
-	/**
-	 * Creates an image descriptor from the given imageFilePath and adds the
-	 * image descriptor to the image descriptor registry. If an image
-	 * descriptor could not be created, the default "missing" image descriptor
-	 * is returned but not added to the image descriptor registry.
-	 * 
-	 * @param imageFilePath
-	 * @return ImageDescriptor image descriptor for imageFilePath or default
-	 *         "missing" image descriptor if resource could not be found
-	 */
-	private ImageDescriptor createImageDescriptor(String imageFilePath) {
-		ImageDescriptor imageDescriptor = AbstractUIPlugin.imageDescriptorFromPlugin(PLUGINID, imageFilePath);
-		if (imageDescriptor != null) {
-			getImageDescriptorRegistry().put(imageFilePath, imageDescriptor);
-		}
-		else {
-			imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
-		}
-
-		return imageDescriptor;
-	}
-
-	/**
-	 * Retrieves the image associated with resource from the image registry.
-	 * If the image cannot be retrieved, attempt to find and load the image at
-	 * the location specified in resource.
-	 * 
-	 * @param resource
-	 *            the image to retrieve
-	 * @return Image the image associated with resource or null if one could
-	 *         not be found
-	 */
-	public Image getImage(String resource) {
-		Image image = getImageRegistry().get(resource);
-		if (image == null) {
-			// create an image
-			image = createImage(resource);
-		}
-		return image;
-	}
-
-	/**
-	 * Retrieves the image descriptor associated with resource from the image
-	 * descriptor registry. If the image descriptor cannot be retrieved,
-	 * attempt to find and load the image descriptor at the location specified
-	 * in resource.
-	 * 
-	 * @param resource
-	 *            the image descriptor to retrieve
-	 * @return ImageDescriptor the image descriptor assocated with resource or
-	 *         the default "missing" image descriptor if one could not be
-	 *         found
-	 */
-	public ImageDescriptor getImageDescriptor(String resource) {
-		ImageDescriptor imageDescriptor = null;
-		Object o = getImageDescriptorRegistry().get(resource);
-		if (o == null) {
-			// create a descriptor
-			imageDescriptor = createImageDescriptor(resource);
-		}
-		else {
-			imageDescriptor = (ImageDescriptor) o;
-		}
-		return imageDescriptor;
-	}
-
-	/**
-	 * Returns the image descriptor registry for this plugin.
-	 * 
-	 * @return HashMap - image descriptor registry for this plugin
-	 */
-	private HashMap getImageDescriptorRegistry() {
-		if (fImageDescRegistry == null)
-			fImageDescRegistry = new HashMap();
-		return fImageDescRegistry;
-	}
-
-	/**
-	 * Returns the image registry for this plugin.
-	 * 
-	 * @return ImageRegistry - image registry for this plugin
-	 */
-	private ImageRegistry getImageRegistry() {
-		return JFaceResources.getImageRegistry();
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/DTDEditorPluginImages.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/DTDEditorPluginImages.java
deleted file mode 100644
index 3f0a780..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/DTDEditorPluginImages.java
+++ /dev/null
@@ -1,42 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.editor;
-
-/**
- * Bundle of most images used by the DTD Source Editor plug-in.
- */
-public class DTDEditorPluginImages {
-	public static final String IMG_CTOOL_ADD_ATTRIBUTE = "icons/full/ctool16/ADD_Attribute.gif"; //$NON-NLS-1$
-
-	public static final String IMG_CTOOL_ADD_ELEMENT = "icons/full/ctool16/ADD_Element.gif"; //$NON-NLS-1$
-
-	public static final String IMG_CTOOL_ADD_ELEMENTTOCONMODEL = "icons/full/ctool16/ADD_ElementToConModel.gif"; //$NON-NLS-1$
-
-	public static final String IMG_CTOOL_ADD_GROUPTOCONMODEL = "icons/full/ctool16/ADD_GroupToConModel.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_ADD_ATTRIBUTE = "icons/full/dtool16/ADD_Attribute.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_ADD_ELEMENT = "icons/full/dtool16/ADD_Element.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_ADD_ELEMENTTOCONMODEL = "icons/full/dtool16/ADD_ElementToConModel.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_ADD_GROUPTOCONMODEL = "icons/full/dtool16/ADD_GroupToConModel.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_ADD_ATTRIBUTE = "icons/full/etool16/ADD_Attribute.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_ADD_ELEMENT = "icons/full/etool16/ADD_Element.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_ADD_ELEMENTTOCONMODEL = "icons/full/etool16/ADD_ElementToConModel.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_ADD_GROUPTOCONMODEL = "icons/full/etool16/ADD_GroupToConModel.gif"; //$NON-NLS-1$
-
-	public static final String IMG_OBJ_ADD_COMMENT = "icons/full/obj16/ADD_Comment.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ADD_ENTITY = "icons/full/obj16/ADD_Entity.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ADD_ENTITY_REFERENCE = "icons/full/obj16/ADD_Entity_Reference.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ADD_NOTATION = "icons/full/obj16/ADD_Notation.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ORGANIZE_DTD_LOGICALLY = "icons/full/obj16/organize_dtd_logically.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_SORT = "icons/full/obj16/sort.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_VALIDATE = "icons/full/obj16/validate.gif"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/IHelpContextIds.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/IHelpContextIds.java
deleted file mode 100644
index f59358f..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/IHelpContextIds.java
+++ /dev/null
@@ -1,36 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.editor;
-
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-
-/**
- * Help context ids for the DTD Source Editor.
- * <p>
- * This interface contains constants only; it is not intended to be
- * implemented.
- * </p>
- * 
- */
-public interface IHelpContextIds {
-
-	// org.eclipse.wst.dtd.ui.
-	public static final String PREFIX = DTDUIPlugin.getDefault().getBundle().getSymbolicName() + "."; //$NON-NLS-1$
-	// DTD Files Preference page
-	public static final String DTD_PREFWEBX_FILES_HELPID = PREFIX + "webx0020"; //$NON-NLS-1$
-	// DTD Styles Preference page
-	public static final String DTD_PREFWEBX_STYLES_HELPID = PREFIX + "webx0021"; //$NON-NLS-1$
-
-	// DTD Source page editor
-	public static final String DTD_SOURCEVIEW_HELPID = PREFIX + "edtd0000"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/StructuredTextEditorDTD.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/StructuredTextEditorDTD.java
deleted file mode 100644
index 7aa194e..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/editor/StructuredTextEditorDTD.java
+++ /dev/null
@@ -1,23 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.editor;
-
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class StructuredTextEditorDTD extends StructuredTextEditor {
-	protected void initializeEditor() {
-		super.initializeEditor();
-		setHelpContextId(IHelpContextIds.DTD_SOURCEVIEW_HELPID);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDColorPage.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDColorPage.java
deleted file mode 100644
index 836be12..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDColorPage.java
+++ /dev/null
@@ -1,167 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.preferences;
-
-import java.util.ArrayList;
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.dtd.core.contenttype.ContentTypeIdForDTD;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.dtd.ui.internal.style.IStyleConstantsDTD;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore.OverlayKey;
-import org.eclipse.wst.sse.ui.preferences.ui.AbstractColorPage;
-import org.eclipse.wst.sse.ui.preferences.ui.StyledTextColorPicker;
-
-public class DTDColorPage extends AbstractColorPage {
-
-	protected Control createContents(Composite parent) {
-		Composite pageComponent = createComposite(parent, 1);
-		((GridData) pageComponent.getLayoutData()).horizontalAlignment = GridData.HORIZONTAL_ALIGN_FILL;
-
-		super.createContents(pageComponent);
-		WorkbenchHelp.setHelp(pageComponent, IHelpContextIds.DTD_PREFWEBX_STYLES_HELPID);
-
-		return pageComponent;
-	}
-
-	/**
-	 * Set up all the style preference keys in the overlay store
-	 */
-	protected OverlayKey[] createOverlayStoreKeys() {
-		ArrayList overlayKeys = new ArrayList();
-
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-		Iterator i = styleList.iterator();
-		while (i.hasNext()) {
-			overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.STRING, (String) i.next()));
-		}
-
-		OverlayPreferenceStore.OverlayKey[] keys = new OverlayPreferenceStore.OverlayKey[overlayKeys.size()];
-		overlayKeys.toArray(keys);
-		return keys;
-	}
-
-	protected IPreferenceStore doGetPreferenceStore() {
-		return DTDUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	public String getSampleText() {
-		return DTDUIPlugin.getResourceString("DTDColorPage.0"); //$NON-NLS-1$
-	}
-
-	protected void initContextStyleMap(Dictionary contextStyleMap) {
-		contextStyleMap.put(DTDRegionTypes.CONTENT_EMPTY, IStyleConstantsDTD.DTD_DATA);
-		contextStyleMap.put(DTDRegionTypes.CONTENT_ANY, IStyleConstantsDTD.DTD_DATA);
-		contextStyleMap.put(DTDRegionTypes.CONTENT_PCDATA, IStyleConstantsDTD.DTD_DATA);
-		contextStyleMap.put(DTDRegionTypes.NDATA_VALUE, IStyleConstantsDTD.DTD_DATA);
-		contextStyleMap.put(DTDRegionTypes.NAME, IStyleConstantsDTD.DTD_DATA);
-		contextStyleMap.put(DTDRegionTypes.ENTITY_PARM, IStyleConstantsDTD.DTD_DATA);
-
-		contextStyleMap.put(DTDRegionTypes.ELEMENT_TAG, IStyleConstantsDTD.DTD_TAGNAME);
-		contextStyleMap.put(DTDRegionTypes.ENTITY_TAG, IStyleConstantsDTD.DTD_TAGNAME);
-		contextStyleMap.put(DTDRegionTypes.ATTLIST_TAG, IStyleConstantsDTD.DTD_TAGNAME);
-		contextStyleMap.put(DTDRegionTypes.NOTATION_TAG, IStyleConstantsDTD.DTD_TAGNAME);
-
-		contextStyleMap.put(DTDRegionTypes.CONNECTOR, IStyleConstantsDTD.DTD_SYMBOL);
-		contextStyleMap.put(DTDRegionTypes.OCCUR_TYPE, IStyleConstantsDTD.DTD_SYMBOL);
-
-		contextStyleMap.put(DTDRegionTypes.START_TAG, IStyleConstantsDTD.DTD_TAG);
-		contextStyleMap.put(DTDRegionTypes.END_TAG, IStyleConstantsDTD.DTD_TAG);
-		contextStyleMap.put(DTDRegionTypes.EXCLAMATION, IStyleConstantsDTD.DTD_TAG);
-
-		contextStyleMap.put(DTDRegionTypes.COMMENT_START, IStyleConstantsDTD.DTD_COMMENT);
-		contextStyleMap.put(DTDRegionTypes.COMMENT_CONTENT, IStyleConstantsDTD.DTD_COMMENT);
-		contextStyleMap.put(DTDRegionTypes.COMMENT_END, IStyleConstantsDTD.DTD_COMMENT);
-
-		contextStyleMap.put(DTDRegionTypes.SINGLEQUOTED_LITERAL, IStyleConstantsDTD.DTD_STRING);
-		contextStyleMap.put(DTDRegionTypes.DOUBLEQUOTED_LITERAL, IStyleConstantsDTD.DTD_STRING);
-
-		contextStyleMap.put(DTDRegionTypes.SYSTEM_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.PUBLIC_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.NDATA_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.CDATA_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.ID_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.IDREF_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.IDREFS_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.ENTITY_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.ENTITIES_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.NMTOKEN_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.NMTOKENS_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.NOTATION_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.REQUIRED_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.IMPLIED_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-		contextStyleMap.put(DTDRegionTypes.FIXED_KEYWORD, IStyleConstantsDTD.DTD_KEYWORD);
-	}
-
-	protected void initDescriptions(Dictionary descriptions) {
-		descriptions.put(IStyleConstantsDTD.DTD_COMMENT, DTDUIPlugin.getResourceString("DTDColorPage.1")); //$NON-NLS-1$
-		descriptions.put(IStyleConstantsDTD.DTD_DATA, DTDUIPlugin.getResourceString("DTDColorPage.2")); //$NON-NLS-1$
-		descriptions.put(IStyleConstantsDTD.DTD_DEFAULT, DTDUIPlugin.getResourceString("DTDColorPage.3")); //$NON-NLS-1$
-		descriptions.put(IStyleConstantsDTD.DTD_KEYWORD, DTDUIPlugin.getResourceString("DTDColorPage.4")); //$NON-NLS-1$
-		descriptions.put(IStyleConstantsDTD.DTD_STRING, DTDUIPlugin.getResourceString("DTDColorPage.5")); //$NON-NLS-1$
-		descriptions.put(IStyleConstantsDTD.DTD_SYMBOL, DTDUIPlugin.getResourceString("DTDColorPage.6")); //$NON-NLS-1$
-		descriptions.put(IStyleConstantsDTD.DTD_TAG, DTDUIPlugin.getResourceString("DTDColorPage.7")); //$NON-NLS-1$
-		descriptions.put(IStyleConstantsDTD.DTD_TAGNAME, DTDUIPlugin.getResourceString("DTDColorPage.8")); //$NON-NLS-1$
-	}
-
-	protected void initStyleList(ArrayList list) {
-		list.add(IStyleConstantsDTD.DTD_COMMENT);
-		list.add(IStyleConstantsDTD.DTD_DATA);
-		list.add(IStyleConstantsDTD.DTD_DEFAULT);
-		list.add(IStyleConstantsDTD.DTD_KEYWORD);
-		list.add(IStyleConstantsDTD.DTD_STRING);
-		list.add(IStyleConstantsDTD.DTD_SYMBOL);
-		list.add(IStyleConstantsDTD.DTD_TAG);
-		list.add(IStyleConstantsDTD.DTD_TAGNAME);
-	}
-
-	protected void setupPicker(StyledTextColorPicker picker) {
-		IModelManager mmanager = StructuredModelManager.getModelManager();
-		picker.setParser(mmanager.createStructuredDocumentFor(ContentTypeIdForDTD.ContentTypeID_DTD).getParser());
-
-		Dictionary descriptions = new Hashtable();
-		initDescriptions(descriptions);
-
-		Dictionary contextStyleMap = new Hashtable();
-		initContextStyleMap(contextStyleMap);
-
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-
-		picker.setContextStyleMap(contextStyleMap);
-		picker.setDescriptions(descriptions);
-		picker.setStyleList(styleList);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.preferences.ui.AbstractColorPage#savePreferences()
-	 */
-	protected void savePreferences() {
-		DTDUIPlugin.getDefault().savePluginPreferences();
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDFilesPreferencePage.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDFilesPreferencePage.java
deleted file mode 100644
index eb4ae92..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDFilesPreferencePage.java
+++ /dev/null
@@ -1,62 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.preferences;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.dtd.core.internal.DTDCorePlugin;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.preferences.ui.AbstractPreferencePage;
-
-
-public class DTDFilesPreferencePage extends AbstractPreferencePage {
-
-	protected Control createContents(Composite parent) {
-		Composite composite = (Composite) super.createContents(parent);
-		WorkbenchHelp.setHelp(composite, IHelpContextIds.DTD_PREFWEBX_FILES_HELPID);
-
-		setSize(composite);
-		loadPreferences();
-
-		return composite;
-	}
-
-	protected IPreferenceStore doGetPreferenceStore() {
-		return DTDUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	protected void doSavePreferenceStore() {
-		DTDCorePlugin.getInstance().savePluginPreferences(); // model
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.preferences.ui.AbstractPreferencePage#getModelPreferences()
-	 */
-	protected Preferences getModelPreferences() {
-		return DTDCorePlugin.getInstance().getPluginPreferences();
-	}
-
-	public boolean performOk() {
-		boolean result = super.performOk();
-
-		doSavePreferenceStore();
-
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDUIPreferenceInitializer.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDUIPreferenceInitializer.java
deleted file mode 100644
index 9e8e438..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/preferences/DTDUIPreferenceInitializer.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package org.eclipse.wst.dtd.ui.internal.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.style.IStyleConstantsDTD;
-import org.eclipse.wst.sse.ui.preferences.ui.ColorHelper;
-
-/**
- * Sets default values for DTD UI preferences
- */
-public class DTDUIPreferenceInitializer extends AbstractPreferenceInitializer {
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
-	 */
-	public void initializeDefaultPreferences() {
-		IPreferenceStore store = DTDUIPlugin.getDefault().getPreferenceStore();
-
-		// DTD Style Preferences
-		String NOBACKGROUNDBOLD = " | null | false"; //$NON-NLS-1$
-		String styleValue = ColorHelper.getColorString(0, 0, 0) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsDTD.DTD_DEFAULT, styleValue); // black
-
-		styleValue = ColorHelper.getColorString(63, 63, 191) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsDTD.DTD_TAG, styleValue); // blue
-		store.setDefault(IStyleConstantsDTD.DTD_TAGNAME, styleValue); // blue
-
-		styleValue = ColorHelper.getColorString(127, 127, 127) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsDTD.DTD_COMMENT, styleValue); // grey
-
-		styleValue = ColorHelper.getColorString(128, 0, 0) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsDTD.DTD_KEYWORD, styleValue); // dark
-		// red
-
-		styleValue = ColorHelper.getColorString(63, 159, 95) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsDTD.DTD_STRING, styleValue); // green
-
-		styleValue = ColorHelper.getColorString(191, 95, 95) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsDTD.DTD_DATA, styleValue); // light
-		// red
-
-		styleValue = ColorHelper.getColorString(128, 0, 0) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsDTD.DTD_SYMBOL, styleValue); // dark
-		// red
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/projection/StructuredTextFoldingProviderDTD.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/projection/StructuredTextFoldingProviderDTD.java
deleted file mode 100644
index 6318ea8..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/projection/StructuredTextFoldingProviderDTD.java
+++ /dev/null
@@ -1,319 +0,0 @@
-package org.eclipse.wst.dtd.ui.internal.projection;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.projection.IProjectionListener;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotation;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.TopLevelNode;
-import org.eclipse.wst.dtd.core.internal.document.DTDModelImpl;
-import org.eclipse.wst.dtd.core.internal.event.IDTDFileListener;
-import org.eclipse.wst.dtd.core.internal.event.NodesEvent;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.projection.IStructuredTextFoldingProvider;
-import org.w3c.dom.Node;
-
-/**
- * Updates the projection model of a structured model for DTD.
- */
-public class StructuredTextFoldingProviderDTD implements IStructuredTextFoldingProvider, IProjectionListener, IDTDFileListener {
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.wst.dtd.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	private class TagProjectionAnnotation extends ProjectionAnnotation {
-		private Node fNode;
-
-		public TagProjectionAnnotation(Node node, boolean isCollapsed) {
-			super(isCollapsed);
-			fNode = node;
-		}
-
-		public Node getNode() {
-			return fNode;
-		}
-
-		public void setNode(Node node) {
-			fNode = node;
-		}
-	}
-
-	private IDocument fDocument;
-	private ProjectionViewer fViewer;
-
-
-	/**
-	 * Goes through every node creates projection annotation if needed
-	 * 
-	 * @param DTDFile
-	 *            assumes file is not null
-	 */
-	private void addAllAnnotations(DTDFile file) {
-		long start = System.currentTimeMillis();
-
-		List nodes = file.getNodes();
-		Iterator it = nodes.iterator();
-		while (it.hasNext()) {
-			DTDNode node = (DTDNode) it.next();
-			Position newPos = createProjectionPosition(node);
-			if (newPos != null) {
-				TagProjectionAnnotation newAnnotation = new TagProjectionAnnotation(node, false);
-				// add to map containing annotations to add
-				fViewer.getProjectionAnnotationModel().addAnnotation(newAnnotation, newPos);
-			}
-		}
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderDTD.addAllAnnotations: " + (end - start));
-	}
-
-	/**
-	 * Create a projection position from the given node. Able to get
-	 * projection position if node isNodeProjectable.
-	 * 
-	 * @param node
-	 * @return null if no projection position possible, a Position otherwise
-	 */
-	private Position createProjectionPosition(Node node) {
-		Position pos = null;
-		if (isNodeProjectable(node) && node instanceof IndexedRegion) {
-			IDocument document = fViewer.getDocument();
-			if (document != null) {
-				IndexedRegion inode = (IndexedRegion) node;
-				int start = inode.getStartOffset();
-				int end = inode.getEndOffset();
-				if (start >= 0 && start < end) {
-					try {
-						int startLine = fDocument.getLineOfOffset(start);
-						int endLine = fDocument.getLineOfOffset(end);
-						// checks if projection start/end region is on the
-						// same line
-						if ((startLine < endLine) && (endLine + 1 < fDocument.getNumberOfLines())) {
-							int offset = fDocument.getLineOffset(startLine);
-							int endOffset = fDocument.getLineOffset(endLine + 1);
-							pos = new Position(offset, endOffset - offset);
-						}
-					}
-					catch (BadLocationException x) {
-						// Logger.log(Logger.WARNING_DEBUG, null, x);
-					}
-				}
-			}
-		}
-		return pos;
-	}
-
-	/**
-	 * Searches through projection annotation model and retrieves
-	 * TagProjectionAnnotation for node
-	 * 
-	 * @param node
-	 * @return TagProjectionAnnotation for node or null if could not be found
-	 */
-	private TagProjectionAnnotation findExistingAnnotation(Node node) {
-		TagProjectionAnnotation anno = null;
-
-		if (node != null) {
-			Iterator it = fViewer.getProjectionAnnotationModel().getAnnotationIterator();
-			while (it.hasNext() && anno == null) {
-				TagProjectionAnnotation a = (TagProjectionAnnotation) it.next();
-				if (node.equals(a.getNode()))
-					anno = a;
-			}
-		}
-		return anno;
-	}
-
-	/**
-	 * Get the dtd file for the fDocument
-	 * 
-	 * @param document
-	 * @return
-	 */
-	private DTDFile getDTDFile() {
-		DTDFile dtdFile = null;
-
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel instanceof DTDModelImpl) {
-				dtdFile = ((DTDModelImpl) sModel).getDTDFile();
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-		return dtdFile;
-	}
-
-	/**
-	 * Initialize this provider with the correct document. Assumes projection
-	 * is enabled. (otherwise, only install would have been called)
-	 */
-	public void initialize() {
-		if (!isInstalled())
-			return;
-
-		// remove dtd file listener from old dtd file
-		DTDFile file = getDTDFile();
-		if (file != null) {
-			file.removeDTDFileListener(this);
-		}
-
-		// clear out all annotations
-		if (fViewer.getProjectionAnnotationModel() != null)
-			fViewer.getProjectionAnnotationModel().removeAllAnnotations();
-
-		fDocument = fViewer.getDocument();
-		file = getDTDFile();
-		if (file != null) {
-			// add dtd file listener to new dtd file
-			file.addDTDFileListener(this);
-
-			addAllAnnotations(file);
-		}
-	}
-
-	/**
-	 * Associate a ProjectionViewer with this IStructuredTextFoldingProvider
-	 * 
-	 * @param viewer
-	 */
-	public void install(ProjectionViewer viewer) {
-		// uninstall before trying to install new viewer
-		if (isInstalled()) {
-			uninstall();
-		}
-		fViewer = viewer;
-		fViewer.addProjectionListener(this);
-	}
-
-	private boolean isInstalled() {
-		return fViewer != null;
-	}
-
-	/**
-	 * Returns true if node is a node type able to fold
-	 * 
-	 * @param node
-	 * @return boolean true if node is projectable, false otherwise
-	 */
-	private boolean isNodeProjectable(Node node) {
-		if (node != null) {
-			if (node instanceof TopLevelNode)
-				return true;
-		}
-		return false;
-	}
-
-	public void nodeChanged(DTDNode node) {
-		long start = System.currentTimeMillis();
-
-		// recalculate projection annotations for node
-		// check if this was even a projectable node to start with
-		if (isNodeProjectable(node)) {
-			// find the existing annotation
-			TagProjectionAnnotation anno = findExistingAnnotation(node);
-			// if able to project node see if projection annotation was
-			// already created and create new if needed
-			Position newPos = createProjectionPosition(node);
-			if (newPos != null && anno == null) {
-				TagProjectionAnnotation newAnnotation = new TagProjectionAnnotation(node, false);
-				// add to map containing annotations to add
-				fViewer.getProjectionAnnotationModel().addAnnotation(newAnnotation, newPos);
-			}
-			// if not able to project node see if projection annotation was
-			// already created and remove it
-			if (newPos == null && anno != null) {
-				fViewer.getProjectionAnnotationModel().removeAnnotation(anno);
-			}
-		}
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf) {
-			String nodeName = node != null ? node.getNodeName() : "null";
-			System.out.println("StructuredTextFoldingProviderDTD.nodeChanged (" + nodeName + "):" + (end - start));
-		}
-	}
-
-	public void nodesAdded(NodesEvent event) {
-		long start = System.currentTimeMillis();
-
-		// add projection annotations for all nodes in event.getNodes()
-		List nodes = event.getNodes();
-		Iterator it = nodes.iterator();
-		while (it.hasNext()) {
-			DTDNode node = (DTDNode) it.next();
-			if (isNodeProjectable(node)) {
-				// add
-				Position newPos = createProjectionPosition(node);
-				if (newPos != null) {
-					TagProjectionAnnotation newAnnotation = new TagProjectionAnnotation(node, false);
-					// add to map containing annotations to add
-					fViewer.getProjectionAnnotationModel().addAnnotation(newAnnotation, newPos);
-				}
-			}
-		}
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderDTD.nodesAdded: " + (end - start));
-	}
-
-	public void nodesRemoved(NodesEvent event) {
-		long start = System.currentTimeMillis();
-
-		// remove projection annotations for all nodes in event.getNodes()
-		List nodes = event.getNodes();
-		Iterator it = nodes.iterator();
-		while (it.hasNext()) {
-			DTDNode node = (DTDNode) it.next();
-			// check if removed node was projectable in the first place
-			if (isNodeProjectable(node)) {
-				// remove
-				TagProjectionAnnotation anno = findExistingAnnotation(node);
-				if (anno != null)
-					fViewer.getProjectionAnnotationModel().removeAnnotation(anno);
-			}
-		}
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderDTD.nodesRemoved: " + (end - start));
-	}
-
-	public void projectionDisabled() {
-		DTDFile file = getDTDFile();
-		if (file != null) {
-			file.removeDTDFileListener(this);
-		}
-
-		fDocument = null;
-	}
-
-	public void projectionEnabled() {
-		initialize();
-	}
-
-	/**
-	 * Disconnect this IStructuredTextFoldingProvider from projection viewer
-	 */
-	public void uninstall() {
-		if (isInstalled()) {
-			projectionDisabled();
-
-			fViewer.removeProjectionListener(this);
-			fViewer = null;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/registry/AdapterFactoryProviderForDTD.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/registry/AdapterFactoryProviderForDTD.java
deleted file mode 100644
index ab3a482..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/registry/AdapterFactoryProviderForDTD.java
+++ /dev/null
@@ -1,64 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.registry;
-
-import org.eclipse.wst.dtd.core.internal.modelhandler.ModelHandlerForDTD;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.modelhandler.IDocumentTypeHandler;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.util.Assert;
-
-
-/**
- * @author nitin
- * 
- * 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 AdapterFactoryProviderForDTD implements AdapterFactoryProvider {
-
-	/**
-	 * 
-	 */
-	public AdapterFactoryProviderForDTD() {
-		super();
-	}
-
-	/*
-	 * @see AdapterFactoryProvider#addAdapterFactories(IStructuredModel)
-	 */
-	public void addAdapterFactories(IStructuredModel structuredModel) {
-		FactoryRegistry factoryRegistry = structuredModel.getFactoryRegistry();
-		Assert.isNotNull(factoryRegistry, "Program Error: client caller must ensure model has factory registry"); //$NON-NLS-1$
-		// IAdapterFactory factory = null;
-
-		// factory = factoryRegistry.getFactoryFor(JFaceNodeAdapter.class);
-		// if (factory == null) {
-		// factory = new JFaceNodeAdapterFactory(JFaceNodeAdapter.class,
-		// true);
-		// factoryRegistry.addFactory(factory);
-		// }
-	}
-
-	/*
-	 * @see AdapterFactoryProvider#isFor(ContentTypeDescription)
-	 */
-	public boolean isFor(IDocumentTypeHandler contentTypeDescription) {
-		return (contentTypeDescription instanceof ModelHandlerForDTD);
-	}
-
-	public void reinitializeFactories(IStructuredModel structuredModel) {
-		// nothing to do, since no embedded type
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/IStyleConstantsDTD.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/IStyleConstantsDTD.java
deleted file mode 100644
index 1bcadef..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/IStyleConstantsDTD.java
+++ /dev/null
@@ -1,41 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.style;
-
-/**
- * Contains the symbolic name of styles used by LineStyleProvider,
- * ColorManager, and any others who may be interested
- */
-public interface IStyleConstantsDTD {
-
-	public static final String DTD_COMMENT = "dtdComment"; //$NON-NLS-1$
-
-	// Data are variables
-	public static final String DTD_DATA = "dtdData"; //$NON-NLS-1$
-	public static final String DTD_DEFAULT = "dtdDefault"; //$NON-NLS-1$
-
-	// keywords are constants like IMPLIED or PCDATA
-	public static final String DTD_KEYWORD = "dtdKeyword"; //$NON-NLS-1$
-
-	// strings are anything in quotes
-	public static final String DTD_STRING = "dtdString"; //$NON-NLS-1$
-
-	// All the remaining symbols
-	public static final String DTD_SYMBOL = "dtdSymbol"; //$NON-NLS-1$
-
-	// tags are '<', '!', or '>'
-	public static final String DTD_TAG = "dtdTag"; //$NON-NLS-1$
-
-	// tagnames are like ELEMENT, ATTLIST, etc.
-	public static final String DTD_TAGNAME = "dtdTagName"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/LineStyleProviderForDTD.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/LineStyleProviderForDTD.java
deleted file mode 100644
index b7dc72e..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/LineStyleProviderForDTD.java
+++ /dev/null
@@ -1,140 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.style;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-
-public class LineStyleProviderForDTD extends AbstractLineStyleProvider implements LineStyleProvider {
-	public LineStyleProviderForDTD() {
-		super();
-		loadColors();
-	}
-
-	protected void clearColors() {
-		getTextAttributes().clear();
-	}
-
-	protected TextAttribute getAttributeFor(ITextRegion region) {
-		/**
-		 * a method to centralize all the "format rules" for regions
-		 * specifically associated for how to "open" the region.
-		 */
-		// not sure why this is coming through null, but just to catch it
-		if (region == null) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_DEFAULT);
-		}
-		String type = region.getType();
-		if (type == DTDRegionTypes.CONTENT_EMPTY || type == DTDRegionTypes.CONTENT_ANY || type == DTDRegionTypes.CONTENT_PCDATA) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_DATA);
-		}
-		else if (type == DTDRegionTypes.ELEMENT_TAG || type == DTDRegionTypes.ENTITY_TAG || type == DTDRegionTypes.ATTLIST_TAG || type == DTDRegionTypes.NOTATION_TAG) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_TAGNAME);
-		}
-		else if (type == DTDRegionTypes.CONNECTOR || type == DTDRegionTypes.OCCUR_TYPE) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_SYMBOL);
-		}
-		else if (type == DTDRegionTypes.NDATA_VALUE) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_DATA);
-		}
-		else if (type == DTDRegionTypes.START_TAG || type == DTDRegionTypes.END_TAG || type == DTDRegionTypes.EXCLAMATION) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_TAG);
-		}
-		else if (type == DTDRegionTypes.COMMENT_START || type == DTDRegionTypes.COMMENT_CONTENT || type == DTDRegionTypes.COMMENT_END) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_COMMENT);
-		}
-		else if (type == DTDRegionTypes.SINGLEQUOTED_LITERAL || type == DTDRegionTypes.DOUBLEQUOTED_LITERAL) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_STRING);
-		}
-		else if (type == DTDRegionTypes.SYSTEM_KEYWORD || type == DTDRegionTypes.PUBLIC_KEYWORD || type == DTDRegionTypes.NDATA_KEYWORD || type == DTDRegionTypes.CDATA_KEYWORD || type == DTDRegionTypes.ID_KEYWORD || type == DTDRegionTypes.IDREF_KEYWORD || type == DTDRegionTypes.IDREFS_KEYWORD || type == DTDRegionTypes.ENTITY_KEYWORD || type == DTDRegionTypes.ENTITIES_KEYWORD || type == DTDRegionTypes.NMTOKEN_KEYWORD || type == DTDRegionTypes.NMTOKENS_KEYWORD || type == DTDRegionTypes.NOTATION_KEYWORD || type == DTDRegionTypes.REQUIRED_KEYWORD || type == DTDRegionTypes.IMPLIED_KEYWORD || type == DTDRegionTypes.FIXED_KEYWORD) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_KEYWORD);
-		}
-		else if (type == DTDRegionTypes.NAME || type == DTDRegionTypes.ENTITY_PARM) {
-			// if (region instanceof DTDRegion) {
-			// DTDRegion dtdRegion = (DTDRegion) region;
-			// IStructuredDocumentRegion flatNode = dtdRegion.getParent();
-			// String regionText = flatNode.getText(dtdRegion);
-			// if (regionText.equals("ANY") || regionText.equals("EMPTY")) {
-			// return new TextAttribute(DTDColors.DTD_KEYWORD);
-			// }
-			// }
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsDTD.DTD_DATA);
-		}
-
-		// default, return null to signal "not handled"
-		// in which case, other factories should be tried
-		return null;
-	}
-
-	protected IPreferenceStore getColorPreferences() {
-		return DTDUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	protected void handlePropertyChange(PropertyChangeEvent event) {
-		String styleKey = null;
-
-		if (event != null) {
-			String prefKey = event.getProperty();
-			// check if preference changed is a style preference
-			if (IStyleConstantsDTD.DTD_DEFAULT.equals(prefKey)) {
-				styleKey = IStyleConstantsDTD.DTD_DEFAULT;
-			}
-			else if (IStyleConstantsDTD.DTD_TAG.equals(prefKey)) {
-				styleKey = IStyleConstantsDTD.DTD_TAG;
-			}
-			else if (IStyleConstantsDTD.DTD_TAGNAME.equals(prefKey)) {
-				styleKey = IStyleConstantsDTD.DTD_TAGNAME;
-			}
-			else if (IStyleConstantsDTD.DTD_COMMENT.equals(prefKey)) {
-				styleKey = IStyleConstantsDTD.DTD_COMMENT;
-			}
-			else if (IStyleConstantsDTD.DTD_KEYWORD.equals(prefKey)) {
-				styleKey = IStyleConstantsDTD.DTD_KEYWORD;
-			}
-			else if (IStyleConstantsDTD.DTD_STRING.equals(prefKey)) {
-				styleKey = IStyleConstantsDTD.DTD_STRING;
-			}
-			else if (IStyleConstantsDTD.DTD_DATA.equals(prefKey)) {
-				styleKey = IStyleConstantsDTD.DTD_DATA;
-			}
-			else if (IStyleConstantsDTD.DTD_SYMBOL.equals(prefKey)) {
-				styleKey = IStyleConstantsDTD.DTD_SYMBOL;
-			}
-		}
-
-		if (styleKey != null) {
-			// overwrite style preference with new value
-			addTextAttribute(styleKey);
-			super.handlePropertyChange(event);
-		}
-	}
-
-	protected void loadColors() {
-		clearColors();
-
-		addTextAttribute(IStyleConstantsDTD.DTD_DEFAULT);
-		addTextAttribute(IStyleConstantsDTD.DTD_TAG);
-		addTextAttribute(IStyleConstantsDTD.DTD_TAGNAME);
-		addTextAttribute(IStyleConstantsDTD.DTD_COMMENT);
-		addTextAttribute(IStyleConstantsDTD.DTD_KEYWORD);
-		addTextAttribute(IStyleConstantsDTD.DTD_STRING);
-		addTextAttribute(IStyleConstantsDTD.DTD_DATA);
-		addTextAttribute(IStyleConstantsDTD.DTD_SYMBOL);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/LineStyleProviderForDTDSubSet.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/LineStyleProviderForDTDSubSet.java
deleted file mode 100644
index 028dfdd..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/style/LineStyleProviderForDTDSubSet.java
+++ /dev/null
@@ -1,161 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.style;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.wst.dtd.core.contenttype.ContentTypeIdForDTD;
-import org.eclipse.wst.dtd.core.text.IDTDPartitions;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.preferences.ui.ColorHelper;
-import org.eclipse.wst.sse.ui.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-
-public class LineStyleProviderForDTDSubSet extends AbstractLineStyleProvider implements LineStyleProvider {
-	private IStructuredModel fInternalModel = null;
-	private LineStyleProviderForDTD fInternalProvider = null;
-	private StyleRange[] fInternalRanges;
-	private String fPartitioning = null;
-
-	public LineStyleProviderForDTDSubSet() {
-		super();
-		fInternalProvider = new LineStyleProviderForDTD();
-		fInternalRanges = new StyleRange[0];
-		fPartitioning = IStructuredDocument.DEFAULT_STRUCTURED_PARTITIONING;
-	}
-
-	/**
-	 * @deprecated - will be removed in M5
-	 * @param partitioning
-	 */
-	public LineStyleProviderForDTDSubSet(String partitioning) {
-		this();
-		fPartitioning = partitioning;
-	}
-
-	/**
-	 * @param lineRequestStart
-	 * @param lineRequestLength
-	 * @param holdResults
-	 */
-	private void addStyleRanges(int lineRequestStart, int lineRequestLength, Collection holdResults, int adjustment) {
-		int lineRequestEnd = lineRequestStart + lineRequestLength;
-		for (int i = 0; i < fInternalRanges.length; i++) {
-			int adjustedStyleRangeStart = adjustment + fInternalRanges[i].start;
-			int adjustedStyleRangeEnd = adjustedStyleRangeStart + fInternalRanges[i].length;
-			if (adjustedStyleRangeEnd < lineRequestStart || lineRequestEnd < adjustedStyleRangeStart)
-				continue;
-			int end = Math.min(adjustedStyleRangeEnd, lineRequestEnd);
-			StyleRange range = new StyleRange();
-			range.start = Math.max(adjustedStyleRangeStart, lineRequestStart);
-			range.length = end - range.start;
-			range.fontStyle = fInternalRanges[i].fontStyle;
-			range.foreground = fInternalRanges[i].foreground;
-			range.background = fInternalRanges[i].background;
-			holdResults.add(range);
-		}
-	}
-
-	protected TextAttribute getAttributeFor(ITextRegion region) {
-		TextAttribute ta = null;
-
-		String prefString = getColorPreferences().getString(IStyleConstantsDTD.DTD_DEFAULT);
-		String[] stylePrefs = ColorHelper.unpackStylePreferences(prefString);
-		if (stylePrefs != null) {
-			RGB foreground = ColorHelper.toRGB(stylePrefs[0]);
-			RGB background = ColorHelper.toRGB(stylePrefs[1]);
-			boolean bold = Boolean.valueOf(stylePrefs[2]).booleanValue();
-			ta = createTextAttribute(foreground, background, bold);
-		}
-		return ta;
-	}
-
-	protected IPreferenceStore getColorPreferences() {
-		return DTDUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	/**
-	 * @return
-	 */
-	private IStructuredDocument getInternalDocument() {
-		if (fInternalModel == null) {
-			fInternalModel = StructuredModelManager.getModelManager().createUnManagedStructuredModelFor(ContentTypeIdForDTD.ContentTypeID_DTD);
-		}
-		return fInternalModel.getStructuredDocument();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.structured.style.AbstractLineStyleProvider#prepareRegions(org.eclipse.jface.text.ITypedRegion,
-	 *      int, int, java.util.Collection)
-	 */
-	public boolean prepareRegions(ITypedRegion typedRegion, int lineRequestStart, int lineRequestLength, Collection holdResults) {
-		if (!IDTDPartitions.DTD_DEFAULT.equals(typedRegion.getType())) {
-			// compute an internal DTD model and return linestyles for it
-			ITextRegion dtdContentRegion = null;
-			IStructuredDocumentRegion doctype = getDocument().getRegionAtCharacterOffset(typedRegion.getOffset());
-			if (doctype != null)
-				dtdContentRegion = doctype.getRegionAtCharacterOffset(typedRegion.getOffset());
-			String contents = dtdContentRegion != null ? doctype.getFullText(dtdContentRegion) : null;
-			IStructuredDocument document = getInternalDocument();
-			if (document == null)
-				return false;
-
-			updateStyleRanges(document, contents);
-
-			addStyleRanges(lineRequestStart, lineRequestLength, holdResults, doctype.getStartOffset(dtdContentRegion));
-			return true;
-		}
-		return false;
-	}
-
-	public void release() {
-		if (fInternalProvider != null) {
-			fInternalProvider.release();
-		}
-		super.release();
-	}
-
-	private void updateStyleRanges(IStructuredDocument document, String contents) {
-		if (!document.get().equals(contents)) {
-			document.set(contents);
-			try {
-				ITypedRegion regions[] = TextUtilities.computePartitioning(getInternalDocument(), fPartitioning, 0, document.getLength(), false);
-				List ranges = new ArrayList();
-				fInternalProvider.init(getInternalDocument(), getHighlighter());
-				for (int i = 0; i < regions.length; i++) {
-					fInternalProvider.prepareRegions(regions[i], regions[i].getOffset(), regions[i].getLength(), ranges);
-				}
-				fInternalRanges = (StyleRange[]) ranges.toArray(new StyleRange[0]);
-			}
-			catch (BadLocationException e) {
-				fInternalRanges = new StyleRange[0];
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/taginfo/DTDBestMatchHoverProcessor.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/taginfo/DTDBestMatchHoverProcessor.java
deleted file mode 100644
index 648ac81..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/taginfo/DTDBestMatchHoverProcessor.java
+++ /dev/null
@@ -1,34 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.taginfo.AbstractBestMatchHoverProcessor;
-
-
-/**
- * @author amywu
- */
-public class DTDBestMatchHoverProcessor extends AbstractBestMatchHoverProcessor {
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.dtd.ui.internal.taginfo.AbstractBestMatchHoverProcessor#getTagInfoHover()
-	 */
-	protected ITextHover getTagInfoHover() {
-		// DTD has no taginfo hover
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/text/DTDDocumentRegionEdgeMatcher.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/text/DTDDocumentRegionEdgeMatcher.java
deleted file mode 100644
index d902bd6..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/text/DTDDocumentRegionEdgeMatcher.java
+++ /dev/null
@@ -1,28 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.text;
-
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.sse.ui.text.DocumentRegionEdgeMatcher;
-
-
-public class DTDDocumentRegionEdgeMatcher extends DocumentRegionEdgeMatcher {
-
-	/**
-	 * @param validContexts
-	 * @param nextMatcher
-	 */
-	public DTDDocumentRegionEdgeMatcher() {
-		super(new String[]{DTDRegionTypes.START_TAG, DTDRegionTypes.COMMENT_START}, null);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDContextMenuHelper.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDContextMenuHelper.java
deleted file mode 100644
index c68b8a4..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDContextMenuHelper.java
+++ /dev/null
@@ -1,311 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline;
-
-import java.util.List;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.CMGroupNode;
-import org.eclipse.wst.dtd.core.internal.CMNode;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.dtd.core.internal.NodeList;
-import org.eclipse.wst.dtd.core.internal.document.DTDModelImpl;
-import org.eclipse.wst.dtd.core.internal.parser.DTDRegionTypes;
-import org.eclipse.wst.dtd.core.internal.util.LabelValuePair;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.editor.DTDEditorPluginImageHelper;
-import org.eclipse.wst.dtd.ui.internal.editor.DTDEditorPluginImages;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddAttributeAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddAttributeListAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddCommentAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddElementAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddElementToContentModelAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddEntityAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddGroupToContentModelAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddNotationAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.AddParameterEntityReferenceAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions.DeleteAction;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class DTDContextMenuHelper // extends FocusAdapter
-{
-
-	private class DTDMenuListener implements IMenuListener {
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jface.action.IMenuListener#menuAboutToShow(org.eclipse.jface.action.IMenuManager)
-		 */
-		public void menuAboutToShow(IMenuManager manager) {
-			updateActions();
-			List selection = DTDContextMenuHelper.this.editor.getSelectedNodes();
-			if (selection != null && selection.size() == 1)
-				addActionItemsForSelection(selection.get(0), manager);
-		}
-	}
-
-	protected AddAttributeAction addAttributeAction;
-	protected AddAttributeListAction addAttributeListAction;
-	protected AddCommentAction addCommentAction;
-	protected AddElementAction addElementAction;
-	protected AddElementToContentModelAction addElementToContentModelAction;
-	protected AddEntityAction addEntityAction;
-	protected AddGroupToContentModelAction addGroupToContentModelAction;
-	protected AddNotationAction addNotationAction;
-	protected AddParameterEntityReferenceAction addParameterEntityReferenceAction;
-	protected DeleteAction deleteAction;
-
-	private StructuredTextEditor editor;
-
-	private IMenuListener fMenuListener;
-	protected IAction redoAction;
-
-	// protected CutAction cutAction;
-	// protected CopyAction copyAction;
-	// protected PasteAction pasteAction;
-	protected IAction undoAction;
-
-	// private List viewerList = new Vector();
-
-	public DTDContextMenuHelper(StructuredTextEditor editor) {
-		this.editor = editor;
-		fMenuListener = new DTDMenuListener();
-		addNotationAction = new AddNotationAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_ADD_DTD_NOTATION")); //$NON-NLS-1$
-		addEntityAction = new AddEntityAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_ADD_DTD_ENTITY")); //$NON-NLS-1$
-		addElementAction = new AddElementAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_ADD_DTD_ELEMENT")); //$NON-NLS-1$
-		addCommentAction = new AddCommentAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_ADD_DTD_COMMENT")); //$NON-NLS-1$
-
-		addParameterEntityReferenceAction = new AddParameterEntityReferenceAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_ADD_PARAM_ENTITY_REF")); //$NON-NLS-1$
-		deleteAction = new DeleteAction(DTDUIPlugin.getResourceString("_UI_ACTION_DTD_DELETE")); //$NON-NLS-1$
-		addAttributeAction = new AddAttributeAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_ADD_ATTRIBUTE")); //$NON-NLS-1$
-		addAttributeListAction = new AddAttributeListAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_ADD_ATTRIBUTELIST")); //$NON-NLS-1$
-
-		addGroupToContentModelAction = new AddGroupToContentModelAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_GROUP_ADD_GROUP")); //$NON-NLS-1$
-		addElementToContentModelAction = new AddElementToContentModelAction(editor, DTDUIPlugin.getResourceString("_UI_ACTION_ADD_ELEMENT")); //$NON-NLS-1$
-
-		addNotationAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_OBJ_ADD_NOTATION));
-		addEntityAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_OBJ_ADD_ENTITY));
-		addCommentAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_OBJ_ADD_COMMENT));
-		addParameterEntityReferenceAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_OBJ_ADD_ENTITY_REFERENCE));
-
-		// Tri-state images
-		addElementAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_ETOOL_ADD_ELEMENT));
-		addElementAction.setHoverImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_CTOOL_ADD_ELEMENT));
-		addElementAction.setDisabledImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_DTOOL_ADD_ELEMENT));
-
-		addAttributeAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_ETOOL_ADD_ATTRIBUTE));
-		addAttributeAction.setHoverImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_CTOOL_ADD_ATTRIBUTE));
-		addAttributeAction.setDisabledImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_DTOOL_ADD_ATTRIBUTE));
-
-		addAttributeListAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_ETOOL_ADD_ATTRIBUTE));
-		addAttributeListAction.setHoverImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_CTOOL_ADD_ATTRIBUTE));
-		addAttributeListAction.setDisabledImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_DTOOL_ADD_ATTRIBUTE));
-
-		addGroupToContentModelAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_ETOOL_ADD_GROUPTOCONMODEL));
-		addGroupToContentModelAction.setHoverImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_CTOOL_ADD_GROUPTOCONMODEL));
-		addGroupToContentModelAction.setDisabledImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_DTOOL_ADD_GROUPTOCONMODEL));
-
-		addElementToContentModelAction.setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_ETOOL_ADD_ELEMENTTOCONMODEL));
-		addElementToContentModelAction.setHoverImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_CTOOL_ADD_ELEMENTTOCONMODEL));
-		addElementToContentModelAction.setDisabledImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_DTOOL_ADD_ELEMENTTOCONMODEL));
-	}
-
-	public void addActionItemsForSelection(Object selectedObject, IMenuManager menu) {
-		if (undoAction == null) {
-			undoAction = editor.getAction(ActionFactory.UNDO.getId());
-			redoAction = editor.getAction(ActionFactory.REDO.getId());
-		}
-
-		menu.add(undoAction);
-		menu.add(redoAction);
-		menu.add(new Separator());
-
-		if (selectedObject instanceof IndexedNodeList) {
-			// http://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4201
-			// add appropriate menu to logical view
-			NodeList folder = ((IndexedNodeList) selectedObject).getTarget();
-			if (folder.getListType().equals(DTDRegionTypes.NOTATION_TAG)) {
-				menu.add(addNotationAction);
-			}
-			else if (folder.getListType().equals(DTDRegionTypes.ENTITY_TAG)) {
-				menu.add(addEntityAction);
-			}
-			else if (folder.getListType().equals(DTDRegionTypes.ELEMENT_TAG)) {
-				LabelValuePair[] availableEntities = ((DTDModelImpl) editor.getModel()).createParmEntityContentItems(null);
-				addParameterEntityReferenceAction.setEnabled(availableEntities.length > 0);
-
-				menu.add(addElementAction);
-				menu.add(addParameterEntityReferenceAction);
-			}
-		}
-		if (selectedObject instanceof DTDFile || selectedObject == null) {
-			LabelValuePair[] availableEntities = ((DTDModelImpl) editor.getModel()).createParmEntityContentItems(null);
-			addParameterEntityReferenceAction.setEnabled(availableEntities.length > 0);
-
-			menu.add(addElementAction);
-			menu.add(addEntityAction);
-			menu.add(addNotationAction);
-			menu.add(addParameterEntityReferenceAction);
-			menu.add(addCommentAction);
-			menu.add(addAttributeListAction);
-			menu.add(new Separator());
-		}
-
-		if (selectedObject instanceof Element) {
-			Element dtdElement = (Element) selectedObject;
-
-			if (dtdElement.getContentModel() == null) {
-				menu.add(addGroupToContentModelAction);
-				menu.add(addElementToContentModelAction);
-			}
-			// if (!(((Element)selectedObject).getContentModel() instanceof
-			// CMGroupNode))
-			// {
-			// menu.add(addGroupToContentModelAction);
-			// }
-			// addAttributeAction.setElement(selectedObject);
-			menu.add(addAttributeAction);
-		}
-		else if (selectedObject instanceof CMGroupNode) {
-			// addElementToContentModelAction.setElement(selectedObject);
-			// addGroupToContentModelAction.setElement(selectedObject);
-			menu.add(addElementToContentModelAction);
-			menu.add(addGroupToContentModelAction);
-		}
-		else if (selectedObject instanceof AttributeList) {
-			menu.add(addAttributeAction);
-		}
-
-		menu.add(new Separator());
-		addEditActions(menu);
-		menu.add(new Separator());
-
-		if (selectedObject instanceof DTDNode && !(selectedObject instanceof CMNode && ((CMNode) selectedObject).isRootElementContent())) {
-			menu.add(deleteAction);
-			deleteAction.setEnabled(true);
-			// if (selectedObject instanceof DTDElementContent)
-			// {
-			// DTDElementContent content = (DTDElementContent) selectedObject;
-			// if (content.getElement() != null && (content instanceof
-			// DTDPCDataContent || content instanceof DTDEmptyContent))
-			// {
-			// deleteAction.setEnabled(false);
-			// } // end of if ()
-			// } // end of if ()
-		}
-	}
-
-	public void addEditActions(IMenuManager menu) {
-		// menu.add(undoAction);
-		// menu.add(redoAction);
-		// menu.add(new Separator());
-		// menu.add(cutAction);
-		// menu.add(copyAction);
-		// menu.add(pasteAction);
-	}
-
-	public void createMenuListenersFor(Viewer viewer) {
-		viewer.addSelectionChangedListener(addNotationAction);
-		viewer.addSelectionChangedListener(addEntityAction);
-		viewer.addSelectionChangedListener(addElementAction);
-		viewer.addSelectionChangedListener(addCommentAction);
-		viewer.addSelectionChangedListener(addParameterEntityReferenceAction);
-		viewer.addSelectionChangedListener(deleteAction);
-		viewer.addSelectionChangedListener(addAttributeAction);
-		viewer.addSelectionChangedListener(addAttributeListAction);
-		viewer.addSelectionChangedListener(addGroupToContentModelAction);
-		viewer.addSelectionChangedListener(addElementToContentModelAction);
-
-		IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
-		addNotationAction.selectionChanged(selection);
-		addEntityAction.selectionChanged(selection);
-		addElementAction.selectionChanged(selection);
-		addParameterEntityReferenceAction.selectionChanged(selection);
-		deleteAction.selectionChanged(selection);
-		addAttributeAction.selectionChanged(selection);
-		addAttributeListAction.selectionChanged(selection);
-		addGroupToContentModelAction.selectionChanged(selection);
-		addElementToContentModelAction.selectionChanged(selection);
-
-		// viewer.addSelectionChangedListener(cutAction);
-		// viewer.addSelectionChangedListener(copyAction);
-		// viewer.addSelectionChangedListener(pasteAction);
-
-		// viewerList.add(viewer);
-		// viewer.getControl().addFocusListener(this);
-	}
-
-	public DeleteAction getDeleteAction() {
-		return deleteAction;
-	}
-
-	/**
-	 * @return Returns the menuListener.
-	 */
-	public IMenuListener getMenuListener() {
-		return fMenuListener;
-	}
-
-	// public void focusGained(FocusEvent event)
-	// {
-	// updateSelection();
-	// }
-
-	public void removeMenuListenersFor(Viewer viewer) {
-		viewer.removeSelectionChangedListener(addNotationAction);
-		viewer.removeSelectionChangedListener(addEntityAction);
-		viewer.removeSelectionChangedListener(addElementAction);
-		viewer.removeSelectionChangedListener(addCommentAction);
-		viewer.removeSelectionChangedListener(addParameterEntityReferenceAction);
-		viewer.removeSelectionChangedListener(deleteAction);
-		viewer.removeSelectionChangedListener(addAttributeAction);
-		viewer.removeSelectionChangedListener(addAttributeListAction);
-		viewer.removeSelectionChangedListener(addGroupToContentModelAction);
-		viewer.removeSelectionChangedListener(addElementToContentModelAction);
-	}
-
-	// Update all the actions for the viewer in focus
-	public void updateActions() {
-		// undoAction.update();
-		// redoAction.update();
-	}
-
-	public void updateEditActions(IActionBars actionBars) {
-		// if (actionBars != null)
-		// {
-		// actionBars.setGlobalActionHandler(IWorkbenchActionConstants.CUT,
-		// cutAction);
-		// actionBars.setGlobalActionHandler(IWorkbenchActionConstants.COPY,
-		// copyAction);
-		// actionBars.setGlobalActionHandler(IWorkbenchActionConstants.PASTE,
-		// pasteAction);
-		// actionBars.setGlobalActionHandler(IWorkbenchActionConstants.UNDO,
-		// undoAction);
-		// actionBars.setGlobalActionHandler(IWorkbenchActionConstants.REDO,
-		// redoAction);
-		// }
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDLabelProvider.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDLabelProvider.java
deleted file mode 100644
index 9a4e124..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDLabelProvider.java
+++ /dev/null
@@ -1,94 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline;
-
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.NodeList;
-
-
-/**
- * Based on com.ibm.etools.dtd.editor.viewers.DTDLabelProvider
- */
-
-public class DTDLabelProvider extends LabelProvider {
-
-	public DTDLabelProvider() {
-		super();
-	}
-
-	/**
-	 * Returns the image for the label of the given element.
-	 * 
-	 * @param element
-	 *            the element for which to provide the label image
-	 * @return the image used to label the element, or <code>null</code> if
-	 *         these is no image for the given object
-	 */
-	public Image getImage(Object element) {
-		Image image = null;
-		if (element instanceof DTDNode) {
-			image = ((DTDNode) element).getImage();
-		}
-		else if (element instanceof NodeList) {
-			image = ((NodeList) element).getImage();
-		}
-		else if (element instanceof IndexedNodeList) {
-			return ((IndexedNodeList) element).getTarget().getImage();
-		}
-		else if (element instanceof DTDFile) {
-			image = ((DTDFile) element).getImage();
-		}
-		else {
-			image = super.getImage(element);
-		}
-		return image;
-	}
-
-	/**
-	 * Returns the text for the label of the given element.
-	 * 
-	 * @param element
-	 *            the element for which to provide the label text
-	 * @return the text string used to label the element, or <code>null</code>
-	 *         if these is no text label for the given object
-	 */
-	public String getText(Object element) {
-		if (element instanceof DTDNode) {
-			String name = ((DTDNode) element).getName();
-
-			// strip leading whitespace (useful for multi-line comments)
-			int i = 0;
-			for (i = 0; i < name.length(); i++) {
-				if (!Character.isWhitespace(name.charAt(i)))
-					break;
-			}
-			if (i > 0 && i < name.length() - 1)
-				name = name.substring(i);
-
-			return name;
-		}
-		else if (element instanceof NodeList) {
-			return ((NodeList) element).getListType();
-		}
-		else if (element instanceof IndexedNodeList) {
-			return ((IndexedNodeList) element).getTarget().getName();
-		}
-		else if (element instanceof DTDFile) {
-			return ((DTDFile) element).getName();
-		}
-		return super.getText(element);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDTreeContentProvider.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDTreeContentProvider.java
deleted file mode 100644
index 2006850..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/DTDTreeContentProvider.java
+++ /dev/null
@@ -1,299 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.viewers.AbstractTreeViewer;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.wst.dtd.core.internal.Attribute;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.Comment;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.dtd.core.internal.Entity;
-import org.eclipse.wst.dtd.core.internal.NodeList;
-import org.eclipse.wst.dtd.core.internal.Notation;
-import org.eclipse.wst.dtd.core.internal.ParameterEntityReference;
-import org.eclipse.wst.dtd.core.internal.document.DTDModelImpl;
-import org.eclipse.wst.dtd.core.internal.event.IDTDFileListener;
-import org.eclipse.wst.dtd.core.internal.event.NodesEvent;
-
-
-/**
- * Based on com.ibm.etools.dtd.editor.viewers.DTDTreeContentProvider
- */
-
-public class DTDTreeContentProvider implements ITreeContentProvider, IDTDFileListener {
-
-	private Object fInputObject;
-	protected Viewer fViewer;
-
-	// A cached set of IndexedNodeLists, required for getParent to return the
-	// correct instances mapping to TreeItems
-	protected Object[] logicalNodeLists = null;
-
-	private boolean showLogicalOrder = false;
-
-	public DTDTreeContentProvider() {
-		super();
-	}
-
-	public void dispose() {
-		fViewer = null;
-	}
-
-	private void expandToNode(DTDNode node) {
-		DTDFile dtdFile = node.getDTDFile();
-		// first expand the root
-		AbstractTreeViewer viewer = (AbstractTreeViewer) fViewer;
-		viewer.expandToLevel(dtdFile, 1);
-		NodeList listToExpand = null;
-		if (node instanceof Element || node instanceof ParameterEntityReference) {
-			listToExpand = dtdFile.getElementsAndParameterEntityReferences();
-		}
-		else if (node instanceof Notation) {
-			listToExpand = dtdFile.getNotations();
-		}
-		else if (node instanceof Entity) {
-			listToExpand = dtdFile.getEntities();
-		}
-		else if (node instanceof Comment) {
-			listToExpand = dtdFile.getComments();
-		}
-		if (listToExpand != null) {
-			viewer.expandToLevel(listToExpand, 1);
-		}
-		viewer.expandToLevel(node, 0);
-	}
-
-	public Object[] getChildren(Object parentElement) {
-		// return the lists of nodes when in logical order mode, all the Nodes
-		// otherwise
-		if (parentElement instanceof DTDFile) {
-			if (isShowLogicalOrder()) {
-				if (logicalNodeLists == null) {
-					DTDFile file = (DTDFile) parentElement;
-					Object[] children = file.getNodeLists().toArray();
-					for (int i = 0; i < children.length; i++) {
-						children[i] = new IndexedNodeList((NodeList) children[i]);
-					}
-					logicalNodeLists = children;
-				}
-				return logicalNodeLists;
-			}
-			else {
-				return ((DTDFile) parentElement).getNodes().toArray();
-			}
-		}
-		else if (parentElement instanceof NodeList) {
-			return ((NodeList) parentElement).getNodes().toArray();
-		}
-		else if (parentElement instanceof IndexedNodeList) {
-			return ((IndexedNodeList) parentElement).getTarget().getNodes().toArray();
-		}
-		else if (parentElement instanceof Element && isShowLogicalOrder()) {
-			// then group the attributes under the element
-			Object[] children = ((DTDNode) parentElement).getChildren();
-			List attributes = ((Element) parentElement).getElementAttributes();
-			Object[] logicalChildren = new Object[children.length + attributes.size()];
-			int index = 0;
-			for (index = 0; index < children.length; index++) {
-				logicalChildren[index] = children[index];
-			}
-			for (Iterator iter = attributes.iterator(); iter.hasNext();) {
-				logicalChildren[index++] = iter.next();
-			}
-			return logicalChildren;
-		}
-		else if (parentElement instanceof DTDNode) {
-			return ((DTDNode) parentElement).getChildren();
-		}
-		return Collections.EMPTY_LIST.toArray();
-	}
-
-	public Object[] getElements(java.lang.Object inputElement) {
-		Object[] elements = null;
-		// Always show the DTDFile "node"
-		if (inputElement instanceof DTDModelImpl) {
-			elements = new Object[]{((DTDModelImpl) inputElement).getDTDFile()};
-		}
-		if (elements == null) {
-			elements = new Object[0];
-		}
-		return elements;
-	}
-
-	public Object getParent(Object element) {
-		Object parent = null;
-		if (element instanceof DTDNode) {
-			DTDNode node = (DTDNode) element;
-			if (element instanceof Attribute && isShowLogicalOrder()) {
-				// then we must say that the element with the same name
-				// as our attributelist is our parent
-				parent = node.getParentNode();
-				if (parent != null) {
-					String attListName = ((DTDNode) parent).getName();
-					Iterator iter = node.getDTDFile().getNodes().iterator();
-					while (iter.hasNext()) {
-						DTDNode currentNode = (DTDNode) iter.next();
-						if (currentNode instanceof AttributeList && currentNode.getName().equals(attListName)) {
-							parent = currentNode;
-						}
-					}
-				}
-			}
-
-			if (parent == null) {
-				parent = ((DTDNode) element).getParentNode();
-			}
-
-			// if showing in the logical order, return the IndexedNodeList
-			// acting as the parent in the tree
-			if (parent == null) {
-				if (isShowLogicalOrder()) {
-					Object[] indexedNodeLists = getChildren(((DTDModelImpl) fInputObject).getDTDFile());
-					for (int i = 0; i < indexedNodeLists.length && parent == null; i++) {
-						if (indexedNodeLists[i] instanceof IndexedNodeList) {
-							if (((IndexedNodeList) indexedNodeLists[i]).contains(element))
-								parent = indexedNodeLists[i];
-						}
-					}
-				}
-				else {
-					parent = ((DTDModelImpl) fInputObject).getDTDFile();
-				}
-			}
-		}
-		else if (element instanceof IndexedNodeList && fInputObject instanceof DTDModelImpl) {
-			parent = ((DTDModelImpl) fInputObject).getDTDFile();
-		}
-		return parent;
-	}
-
-	public boolean hasChildren(Object element) {
-		Object[] children = getChildren(element);
-		return children.length > 0;
-	}
-
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		fViewer = viewer;
-
-		if (fInputObject instanceof DTDModelImpl) {
-			((DTDModelImpl) fInputObject).getDTDFile().removeDTDFileListener(this);
-		}
-		fInputObject = newInput;
-		if (fInputObject instanceof DTDModelImpl) {
-			((DTDModelImpl) fInputObject).getDTDFile().addDTDFileListener(this);
-		}
-	}
-
-	/**
-	 * Get the value of showLogicalOrder.
-	 * 
-	 * @return value of showLogicalOrder.
-	 */
-	public boolean isShowLogicalOrder() {
-		return showLogicalOrder;
-	}
-
-	public void nodeChanged(DTDNode node) {
-		if (fViewer instanceof StructuredViewer) {
-			// System.out.println("node changed notified");
-			// System.out.println("selection before = " +
-			// ((StructuredViewer)view).getSelection());
-			if (node instanceof AttributeList && isShowLogicalOrder()) {
-				// in this case, we are showing attributes under the element.
-				// refresh the element object instead
-				Iterator iter = node.getDTDFile().getNodes().iterator();
-				while (iter.hasNext()) {
-					DTDNode currentNode = (DTDNode) iter.next();
-					if (currentNode.getName().equals(node.getName()) && currentNode instanceof Element) {
-						((StructuredViewer) fViewer).refresh(currentNode);
-					}
-				} // end of while ()
-			}
-			else {
-				// do standard stuff
-				((StructuredViewer) fViewer).refresh(node);
-			}
-			// System.out.println("selection after = " +
-			// ((StructuredViewer)view).getSelection());
-		}
-	}
-
-	public void nodesAdded(NodesEvent event) {
-		if (fViewer instanceof AbstractTreeViewer) {
-			StructuredViewer viewer = (StructuredViewer) fViewer;
-			ISelection selection = viewer.getSelection();
-
-			Object firstObj = (!selection.isEmpty() && selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;
-			DTDNode oldSelectedNode = null;
-			if (firstObj instanceof DTDNode) {
-				oldSelectedNode = (DTDNode) firstObj;
-			}
-
-			// for now just refresh the whole view
-			AbstractTreeViewer abstractTreeViewer = (AbstractTreeViewer) fViewer;
-			abstractTreeViewer.refresh();
-
-			Iterator iter = event.getNodes().iterator();
-			List newSelection = new ArrayList();
-			while (iter.hasNext()) {
-				DTDNode node = (DTDNode) iter.next();
-				if (oldSelectedNode == null || node.getStructuredDTDDocumentRegion() != oldSelectedNode.getStructuredDTDDocumentRegion() || node.getStartOffset() != oldSelectedNode.getStartOffset() || node.getEndOffset() != oldSelectedNode.getEndOffset()) {
-					// add to selection
-					newSelection.add(node);
-					expandToNode(node);
-				}
-			}
-			if (newSelection.size() > 0) {
-				viewer.setSelection(new StructuredSelection(newSelection));
-			}
-
-		}
-	}
-
-	public void nodesRemoved(NodesEvent event) {
-		if (fViewer instanceof AbstractTreeViewer) {
-			AbstractTreeViewer abstractTreeViewer = (AbstractTreeViewer) fViewer;
-			for (Iterator iter = event.getNodes().iterator(); iter.hasNext();) {
-				abstractTreeViewer.remove(iter.next());
-			}
-		}
-
-	}
-
-	/**
-	 * Set the value of showLogicalOrder.
-	 * 
-	 * @param v
-	 *            Value to assign to showLogicalOrder.
-	 */
-	public void setShowLogicalOrder(boolean v) {
-		this.showLogicalOrder = v;
-		if (!v) {
-			// if not using logical order, lose the cached lists
-			logicalNodeLists = null;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/IndexedNodeList.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/IndexedNodeList.java
deleted file mode 100644
index e9635a5..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/IndexedNodeList.java
+++ /dev/null
@@ -1,86 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline;
-
-import java.util.List;
-
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.NodeList;
-import org.eclipse.wst.sse.core.IndexedRegion;
-
-
-/* package */
-class IndexedNodeList implements IndexedRegion {
-	public NodeList fTarget;
-
-	public IndexedNodeList(NodeList target) {
-		fTarget = target;
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.core.IndexedRegion#contains(int)
-	 */
-	public boolean contains(int testPosition) {
-		return getStartOffset() <= testPosition && testPosition <= getEndOffset();
-	}
-
-	public boolean contains(Object child) {
-		return fTarget.getNodes().contains(child);
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.core.IndexedRegion#getEndOffset()
-	 */
-	public int getEndOffset() {
-		int end = 0;
-		List nodes = fTarget.getNodes();
-		for (int i = 0; i < nodes.size(); i++) {
-			int thisEnd = ((DTDNode) nodes.get(i)).getEndOffset();
-			if (end < thisEnd)
-				end = thisEnd;
-		}
-		return end;
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.core.IndexedRegion#getStartOffset()
-	 */
-	public int getStartOffset() {
-		int start = -1;
-		List nodes = fTarget.getNodes();
-		for (int i = 0; i < nodes.size(); i++) {
-			int thisStart = ((DTDNode) nodes.get(i)).getStartOffset();
-			if (start > thisStart || start < 0)
-				start = thisStart;
-		}
-		if (start < 0)
-			start = 0;
-		return start;
-	}
-
-	/**
-	 * @return
-	 */
-	public NodeList getTarget() {
-		return fTarget;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		return getClass().getName() + ":" + fTarget.toString(); //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/OrderAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/OrderAction.java
deleted file mode 100644
index 21cd9e3..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/OrderAction.java
+++ /dev/null
@@ -1,64 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-/*
- * Created on Jan 22, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.editor.DTDEditorPluginImageHelper;
-import org.eclipse.wst.dtd.ui.internal.editor.DTDEditorPluginImages;
-import org.eclipse.wst.sse.ui.views.contentoutline.PropertyChangeUpdateAction;
-
-
-/**
- * Based on com.ibm.etools.dtd.editor.DTDContentOutlinePage#OrderAction
- */
-public class OrderAction extends PropertyChangeUpdateAction {
-	private DTDTreeContentProvider contentProvider;
-	private TreeViewer treeViewer;
-
-	public OrderAction(TreeViewer viewer, DTDTreeContentProvider provider, IPreferenceStore store, String preferenceKey) {
-		super(DTDUIPlugin.getResourceString("_UI_BUTTON_GROUP_ITEMS_LOGICALLY"), store, preferenceKey, false); //$NON-NLS-1$
-		setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_OBJ_ORGANIZE_DTD_LOGICALLY));
-		treeViewer = viewer;
-		contentProvider = provider;
-		setToolTipText(getText());
-		contentProvider.setShowLogicalOrder(isChecked());
-	}
-
-	public void update() {
-		super.update();
-		setChecked(getPreferenceStore().getBoolean(getPreferenceKey()));
-		// treeViewer.getControl().setVisible(false);
-		// treeViewer.getControl().setRedraw(false);
-		Object[] expandedElements = treeViewer.getExpandedElements();
-		ISelection selection = treeViewer.getSelection();
-		contentProvider.setShowLogicalOrder(isChecked());
-
-		// treeViewer.setInput(treeViewer.getInput());
-		treeViewer.refresh(treeViewer.getInput());
-
-		treeViewer.setExpandedElements(expandedElements);
-		treeViewer.setSelection(selection);
-		// treeViewer.getControl().setVisible(true);
-		// treeViewer.getControl().setRedraw(true);
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/SortAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/SortAction.java
deleted file mode 100644
index b6f80e1..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/SortAction.java
+++ /dev/null
@@ -1,60 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline;
-
-import java.text.Collator;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.editor.DTDEditorPluginImageHelper;
-import org.eclipse.wst.dtd.ui.internal.editor.DTDEditorPluginImages;
-import org.eclipse.wst.sse.ui.views.contentoutline.PropertyChangeUpdateAction;
-
-
-public class SortAction extends PropertyChangeUpdateAction {
-	private TreeViewer treeViewer;
-
-	public SortAction(TreeViewer viewer, IPreferenceStore store, String preferenceKey) {
-		super(DTDUIPlugin.getResourceString("_UI_BUTTON_SORT_ITEMS"), store, preferenceKey, false); //$NON-NLS-1$
-		setImageDescriptor(DTDEditorPluginImageHelper.getInstance().getImageDescriptor(DTDEditorPluginImages.IMG_OBJ_SORT));
-		setToolTipText(getText());
-		treeViewer = viewer;
-		if (isChecked()) {
-			treeViewer.setSorter(new ViewerSorter(Collator.getInstance()));
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 */
-	public void update() {
-		super.update();
-		// treeViewer.getControl().setVisible(false);
-		treeViewer.getControl().setRedraw(false);
-		Object[] expandedElements = treeViewer.getExpandedElements();
-		if (isChecked()) {
-			treeViewer.setSorter(new ViewerSorter(Collator.getInstance()));
-		}
-		else {
-			treeViewer.setSorter(null);
-		}
-		treeViewer.setInput(treeViewer.getInput());
-		treeViewer.setExpandedElements(expandedElements);
-		// treeViewer.getControl().setVisible(true);
-		treeViewer.getControl().setRedraw(true);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddAttributeAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddAttributeAction.java
deleted file mode 100644
index b066cae..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddAttributeAction.java
+++ /dev/null
@@ -1,56 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.wst.dtd.core.internal.AttributeList;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddAttributeAction extends BaseAction {
-
-	public AddAttributeAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public void run() {
-		DTDNode selectedNode = getFirstNodeSelected();
-		String newName = "NewAttribute"; //$NON-NLS-1$
-		if (selectedNode instanceof AttributeList) {
-			((AttributeList) selectedNode).addAttribute(newName);
-		}
-		else if (selectedNode instanceof Element) {
-			((Element) selectedNode).addAttribute(newName);
-		}
-	}
-
-	protected boolean updateSelection(IStructuredSelection selection) {
-		boolean rc = super.updateSelection(selection);
-		DTDNode node = getFirstNodeSelected(selection);
-		if (node instanceof Element) {
-			// System.out.println("attribute set to true");
-			setEnabled(true);
-		}
-		else {
-			// System.out.println("attribute set to false");
-			setEnabled(false);
-		}
-
-		return rc;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddAttributeListAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddAttributeListAction.java
deleted file mode 100644
index f4ff563..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddAttributeListAction.java
+++ /dev/null
@@ -1,44 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddAttributeListAction extends BaseAction {
-
-	public AddAttributeListAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public void run() {
-		DTDNode selectedNode = getFirstNodeSelected();
-		DTDFile dtdFile = getModel().getDTDFile();
-		String attListName = "NewAttList"; //$NON-NLS-1$
-		if (selectedNode != null) {
-			DTDNode topLevelNode = dtdFile.getTopLevelNodeAt(selectedNode.getStartOffset());
-			if (topLevelNode instanceof Element) {
-				attListName = ((Element) topLevelNode).getName();
-			}
-		}
-
-		getModel().getDTDFile().createAttributeList(selectedNode, attListName, true);
-		// newElement.setName(DTDUniqueNameHelper.getUniqueElementName(dtdFile));
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddCommentAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddCommentAction.java
deleted file mode 100644
index 0fa2cc1..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddCommentAction.java
+++ /dev/null
@@ -1,32 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-// import com.ibm.etools.dtd.util.DTDUniqueNameHelper;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddCommentAction extends BaseAction {
-
-	public AddCommentAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public void run() {
-		DTDNode selectedNode = getFirstNodeSelected();
-		getModel().getDTDFile().createComment(selectedNode, "NewComment", true); //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddElementAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddElementAction.java
deleted file mode 100644
index 4e58b8a..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddElementAction.java
+++ /dev/null
@@ -1,33 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.util.DTDUniqueNameHelper;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddElementAction extends BaseAction {
-
-	public AddElementAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public void run() {
-		DTDNode selectedNode = getFirstNodeSelected();
-		DTDFile dtdFile = getModel().getDTDFile();
-		String elementName = DTDUniqueNameHelper.getUniqueElementName(dtdFile);
-		dtdFile.createElement(selectedNode, elementName, true); //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddElementToContentModelAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddElementToContentModelAction.java
deleted file mode 100644
index 2c6fc5a..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddElementToContentModelAction.java
+++ /dev/null
@@ -1,52 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.wst.dtd.core.internal.CMGroupNode;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddElementToContentModelAction extends BaseAction {
-
-	public AddElementToContentModelAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public void run() {
-		DTDNode node = getFirstNodeSelected();
-
-		if (node instanceof CMGroupNode) {
-			((CMGroupNode) node).addChild();
-		}
-		else if (node instanceof Element) {
-			((Element) node).addChild();
-		}
-	}
-
-	protected boolean updateSelection(IStructuredSelection selection) {
-		boolean rc = super.updateSelection(selection);
-		DTDNode node = getFirstNodeSelected(selection);
-		if (node instanceof CMGroupNode) {
-			setEnabled(true);
-		}
-		else {
-			setEnabled(false);
-		}
-		return rc;
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddEntityAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddEntityAction.java
deleted file mode 100644
index 9a6be91..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddEntityAction.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddEntityAction extends BaseAction {
-
-	public AddEntityAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public void run() {
-		DTDNode selectedNode = getFirstNodeSelected();
-
-		getModel().getDTDFile().createEntity(selectedNode, "NewEntity", true); //$NON-NLS-1$
-		// newElement.setName(DTDUniqueNameHelper.getUniqueElementName(dtdFile));
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddGroupToContentModelAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddGroupToContentModelAction.java
deleted file mode 100644
index 894b478..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddGroupToContentModelAction.java
+++ /dev/null
@@ -1,41 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import org.eclipse.wst.dtd.core.internal.CMGroupNode;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.Element;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddGroupToContentModelAction extends BaseAction {
-
-	// private Object element;
-
-	public AddGroupToContentModelAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public void run() {
-		DTDNode node = getFirstNodeSelected();
-
-		if (node instanceof CMGroupNode) {
-			((CMGroupNode) node).addGroup();
-		}
-		else if (node instanceof Element) {
-			((Element) node).addGroup();
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddNotationAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddNotationAction.java
deleted file mode 100644
index 820e24b..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddNotationAction.java
+++ /dev/null
@@ -1,34 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddNotationAction extends BaseAction {
-
-	public AddNotationAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public void run() {
-		DTDNode selectedNode = getFirstNodeSelected();
-
-		getModel().getDTDFile().createNotation(selectedNode, "NewNotation", true); //$NON-NLS-1$
-
-		// newNotation.setName(DTDUniqueNameHelper.getUniqueNotationName(dtdFile));
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddParameterEntityReferenceAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddParameterEntityReferenceAction.java
deleted file mode 100644
index 651bae1..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/AddParameterEntityReferenceAction.java
+++ /dev/null
@@ -1,49 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.util.LabelValuePair;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class AddParameterEntityReferenceAction extends BaseAction {
-	public AddParameterEntityReferenceAction(StructuredTextEditor editor, String label) {
-		super(editor, label);
-	}
-
-	public String getFirstExternalParameterEntity(DTDFile dtdFile) {
-		LabelValuePair[] freeExternalEntities = dtdFile.getDTDModel().createParmEntityContentItems(null);
-
-		if (freeExternalEntities.length > 0) {
-			return (String) freeExternalEntities[0].fValue;
-			// return (Entity) freeExternalEntities[0].fValue;
-		}
-		return null;
-	}
-
-	public void run() {
-		DTDFile dtdFile = getModel().getDTDFile();
-		String extEntity = getFirstExternalParameterEntity(dtdFile);
-		DTDNode selectedNode = getFirstNodeSelected();
-		if (extEntity != null) {
-			dtdFile.createParameterEntityReference(selectedNode, extEntity, true);
-		}
-		else {
-			dtdFile.createParameterEntityReference(selectedNode, "%NewEntityReference;", true); //$NON-NLS-1$
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/BaseAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/BaseAction.java
deleted file mode 100644
index adebdcf..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/BaseAction.java
+++ /dev/null
@@ -1,78 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import java.util.Iterator;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IEditorActionBarContributor;
-import org.eclipse.ui.actions.SelectionListenerAction;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.document.DTDModelImpl;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-abstract public class BaseAction extends SelectionListenerAction {
-
-	protected IEditorActionBarContributor contextContributor;
-	private StructuredTextEditor fTextEditor;
-
-	public BaseAction(StructuredTextEditor editor, String text) {
-		this(editor, text, null);
-	}
-
-	public BaseAction(StructuredTextEditor editor, String text, ImageDescriptor imageDesc) {
-		super(text);
-		fTextEditor = editor;
-		setImageDescriptor(imageDesc);
-	}
-
-	public IEditorActionBarContributor getContextContributor() {
-		return contextContributor;
-	}
-
-	public DTDNode getFirstNodeSelected() {
-		return getFirstNodeSelected(getStructuredSelection());
-	}
-
-	public DTDNode getFirstNodeSelected(IStructuredSelection selection) {
-		Iterator iter = selection.iterator();
-		// DTDNode referencePoint = null;
-		while (iter.hasNext()) {
-			Object element = iter.next();
-			if (element instanceof DTDNode) {
-				return (DTDNode) element;
-			}
-		}
-		return null;
-	}
-
-	public DTDModelImpl getModel() {
-		return (DTDModelImpl) getTextEditor().getModel();
-	}
-
-	/**
-	 * @return Returns the textEditor.
-	 */
-	public StructuredTextEditor getTextEditor() {
-		return fTextEditor;
-	}
-
-	public void setContextContributor(IEditorActionBarContributor contributor) {
-		contextContributor = contributor;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/DeleteAction.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/DeleteAction.java
deleted file mode 100644
index c31e431..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/contentoutline/actions/DeleteAction.java
+++ /dev/null
@@ -1,70 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.dtd.ui.internal.views.contentoutline.actions;
-
-import java.util.Iterator;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.actions.SelectionListenerAction;
-import org.eclipse.wst.dtd.core.internal.CMNode;
-import org.eclipse.wst.dtd.core.internal.DTDCorePlugin;
-import org.eclipse.wst.dtd.core.internal.DTDFile;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.core.internal.util.DTDBatchNodeDelete;
-
-
-public class DeleteAction extends SelectionListenerAction {
-
-	public DeleteAction(String label) {
-		super(label);
-	}
-
-	public void run() {
-		IStructuredSelection selection = getStructuredSelection();
-
-		Iterator iter = selection.iterator();
-		DTDBatchNodeDelete batchDelete = null;
-		DTDFile dtdFile = null;
-		while (iter.hasNext()) {
-			Object element = iter.next();
-			if (element instanceof DTDNode) {
-				DTDNode node = (DTDNode) element;
-				dtdFile = node.getDTDFile();
-				if (batchDelete == null) {
-					batchDelete = new DTDBatchNodeDelete(dtdFile);
-				}
-				batchDelete.addNode((DTDNode) element);
-			}
-		}
-		dtdFile.getDTDModel().beginRecording(this, DTDCorePlugin.getDTDString("_UI_LABEL_DTD_FILE_DELETE")); //$NON-NLS-1$
-		batchDelete.deleteNodes(this);
-		dtdFile.getDTDModel().endRecording(this);
-	}
-
-	public boolean updateSelection(IStructuredSelection sel) {
-		if (!super.updateSelection(sel))
-			return false;
-
-		Object selectedObject = sel.getFirstElement();
-		if (selectedObject instanceof DTDNode && !(selectedObject instanceof CMNode && ((CMNode) selectedObject).isRootElementContent())) {
-			setEnabled(true);
-			return true; // enable delete menu item
-		}
-		else {
-			setEnabled(false);
-			return false; // disable it - grey out
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/properties/DTDPropertySourceAdapter.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/properties/DTDPropertySourceAdapter.java
deleted file mode 100644
index 8bec917..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/properties/DTDPropertySourceAdapter.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.views.properties;
-
-import java.util.Stack;
-
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.dtd.core.internal.DTDNode;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.properties.CustomPropertyDescriptor;
-
-
-/**
- * An IPropertySource implementation for a JFace viewer used to display
- * properties of DOM nodes. Requires an adapter factory to create JFace
- * adapters for the nodes in the tree.
- */
-public class DTDPropertySourceAdapter implements INodeAdapter, IPropertySource {
-	protected final static String CATEGORY_ATTRIBUTES = "Attributes"; //$NON-NLS-1$
-
-	private static final String ID_NAME = DTDUIPlugin.getResourceString("DTDPropertySourceAdapter.0"); //$NON-NLS-1$
-	private static final String ID_TEXT = DTDUIPlugin.getResourceString("DTDPropertySourceAdapter.1"); //$NON-NLS-1$
-
-	protected IPropertyDescriptor[] fDescriptors = null;
-	protected INodeNotifier fNode = null;
-
-	protected Stack fValuesBeingSet = new Stack();
-
-	public DTDPropertySourceAdapter(INodeNotifier target) {
-		super();
-		fNode = target;
-	}
-
-	/**
-	 * @return
-	 */
-	private IPropertyDescriptor[] createPropertyDescriptors() {
-		CustomPropertyDescriptor nameDescriptor = new CustomPropertyDescriptor(ID_NAME, ID_NAME, null);
-		nameDescriptor.setCategory(DTDUIPlugin.getResourceString("DTDPropertySourceAdapter.2")); //$NON-NLS-1$
-		// CustomPropertyDescriptor contentDescriptor = new
-		// CustomPropertyDescriptor(ID_TEXT, ID_TEXT, null);
-		// contentDescriptor.setCategory("Attributes");
-		return new IPropertyDescriptor[]{nameDescriptor};
-	}
-
-	/**
-	 * Returns a value for this Node that can be editted in a property sheet.
-	 * 
-	 * @return a value that can be editted
-	 */
-	public Object getEditableValue() {
-		return null;
-	}
-
-	/**
-	 * Returns the current collection of property descriptors.
-	 * 
-	 * @return all valid descriptors.
-	 */
-	public IPropertyDescriptor[] getPropertyDescriptors() {
-		if (fDescriptors == null || fDescriptors.length == 0) {
-			fDescriptors = createPropertyDescriptors();
-		}
-		else {
-			updatePropertyDescriptors();
-		}
-		return fDescriptors;
-	}
-
-	/**
-	 * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-	 */
-	public Object getPropertyValue(Object id) {
-		Object value = null;
-		if (id.equals(ID_NAME) && fNode instanceof DTDNode) {
-			value = ((DTDNode) fNode).getName();
-		}
-		if (id.equals(ID_TEXT) && fNode instanceof DTDNode) {
-			value = ((DTDNode) fNode).getFullNodeText();
-		}
-		return value;
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type == IPropertySource.class;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-	 */
-	public boolean isPropertySet(Object id) {
-		return false;
-	}
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-	 */
-	public void resetPropertyValue(Object id) {
-	}
-
-	public void setPropertyValue(Object nameObject, Object value) {
-	}
-
-	protected void updatePropertyDescriptors() {
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/properties/DTDPropertySourceAdapterFactory.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/properties/DTDPropertySourceAdapterFactory.java
deleted file mode 100644
index 67fc7ad..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/views/properties/DTDPropertySourceAdapterFactory.java
+++ /dev/null
@@ -1,42 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.internal.views.properties;
-
-
-
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-
-
-public class DTDPropertySourceAdapterFactory extends AbstractAdapterFactory {
-
-	public DTDPropertySourceAdapterFactory() {
-		super(IPropertySource.class, true);
-	}
-
-	public DTDPropertySourceAdapterFactory(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	public IAdapterFactory copy() {
-		return new DTDPropertySourceAdapterFactory(this.adapterKey, this.shouldRegisterAdapter);
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		// at the moment, only one implementation exists
-		return new DTDPropertySourceAdapter(target);
-	}
-}
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/wizard/NewDTDWizard.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/wizard/NewDTDWizard.java
deleted file mode 100644
index c7d126a..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/internal/wizard/NewDTDWizard.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package org.eclipse.wst.dtd.ui.internal.wizard;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.wst.dtd.core.internal.DTDResource;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.Logger;
-
-public class NewDTDWizard extends Wizard implements INewWizard {
-	private WizardNewFileCreationPage fNewFilePage;
-	private IStructuredSelection fSelection;
-
-	public void addPages() {
-		fNewFilePage = new WizardNewFileCreationPage("DTDWizardNewFileCreationPage", new StructuredSelection(IDE.computeSelectedResources(fSelection))) {
-			protected boolean validatePage() {
-				IPath handlePath = new Path(getFileName());
-				String extension = handlePath.getFileExtension();
-				if (extension == null || !extension.equalsIgnoreCase("dtd")) {
-					setErrorMessage(DTDUIPlugin.getResourceString("%_ERROR_FILENAME_MUST_END_DTD"));
-					return false;
-				}
-				setErrorMessage(null);
-				return super.validatePage();
-			}
-		};
-		fNewFilePage.setTitle(DTDUIPlugin.getResourceString("%_UI_CREATE_NEW_DTD_FILE"));
-		fNewFilePage.setDescription(DTDUIPlugin.getResourceString("%_UI_WIZARD_NEW_DTD_EXPL"));
-
-		addPage(fNewFilePage);
-	}
-
-	public void init(IWorkbench aWorkbench, IStructuredSelection aSelection) {
-		fSelection = aSelection;
-		setWindowTitle(DTDUIPlugin.getResourceString("_UI_WIZARD_NEW_DTD_TITLE"));
-		ImageDescriptor descriptor = DTDUIPlugin.getDefault().getImageRegistry().getDescriptor(DTDResource.NEWDTD);
-		if (descriptor == null) {
-			descriptor = ImageDescriptor.createFromURL(DTDUIPlugin.getDefault().getBundle().getEntry(DTDResource.NEWDTD));
-			DTDUIPlugin.getDefault().getImageRegistry().put(DTDResource.NEWDTD, descriptor);
-		}
-		setDefaultPageImageDescriptor(descriptor);
-	}
-
-	private void openEditor(final IFile file) {
-		if (file != null) {
-			getShell().getDisplay().asyncExec(new Runnable() {
-				public void run() {
-					try {
-						IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-						IDE.openEditor(page, file, true);
-					}
-					catch (PartInitException e) {
-						Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-					}
-				}
-			});
-		}
-	}
-
-	public boolean performFinish() {
-		IFile file = fNewFilePage.createNewFile();
-		openEditor(file);
-		return true;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/DTDContentOutlineConfiguration.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/DTDContentOutlineConfiguration.java
deleted file mode 100644
index 9e9cdc4..0000000
--- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/views/contentoutline/DTDContentOutlineConfiguration.java
+++ /dev/null
@@ -1,233 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.dtd.ui.views.contentoutline;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.jface.action.IContributionItem;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.util.TransferDragSourceListener;
-import org.eclipse.jface.util.TransferDropTargetListener;
-import org.eclipse.jface.viewers.IContentProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.dnd.DragSourceEvent;
-import org.eclipse.swt.dnd.DropTargetEvent;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.wst.common.ui.dnd.ObjectTransfer;
-import org.eclipse.wst.common.ui.dnd.ViewerDragAdapter;
-import org.eclipse.wst.common.ui.dnd.ViewerDropAdapter;
-import org.eclipse.wst.dtd.ui.internal.DTDUIPlugin;
-import org.eclipse.wst.dtd.ui.internal.dnd.DTDDragAndDropManager;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.DTDContextMenuHelper;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.DTDLabelProvider;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.DTDTreeContentProvider;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.OrderAction;
-import org.eclipse.wst.dtd.ui.internal.views.contentoutline.SortAction;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.util.Assert;
-import org.eclipse.wst.sse.ui.views.contentoutline.PropertyChangeUpdateActionContributionItem;
-import org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration;
-
-/**
- * A StructuredContentOutlineConfiguration for DTD models
- * 
- * @since 1.0
- * 
- */
-public class DTDContentOutlineConfiguration extends StructuredContentOutlineConfiguration {
-
-	private DTDContextMenuHelper fMenuHelper;
-	private TransferDragSourceListener[] fTransferDragSourceListeners;
-	private TransferDropTargetListener[] fTransferDropTargetListeners;
-	private Map fViewerContributions;
-	private final String OUTLINE_ORDER_PREF = "outline-order"; //$NON-NLS-1$
-	private final String OUTLINE_SORT_PREF = "outline-sort"; //$NON-NLS-1$
-
-	public DTDContentOutlineConfiguration() {
-		super();
-		fViewerContributions = new HashMap(2);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration#createToolbarContributions(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public IContributionItem[] createToolbarContributions(TreeViewer viewer) {
-		Assert.isTrue(getContentProvider(viewer) instanceof DTDTreeContentProvider, "invalid content provider on viewer"); //$NON-NLS-1$
-		IContributionItem[] items = super.createToolbarContributions(viewer);
-
-		SortAction sortAction = new SortAction(viewer, DTDUIPlugin.getDefault().getPreferenceStore(), OUTLINE_SORT_PREF);
-		OrderAction orderAction = new OrderAction(viewer, (DTDTreeContentProvider) getContentProvider(viewer), DTDUIPlugin.getDefault().getPreferenceStore(), OUTLINE_ORDER_PREF);
-		IContributionItem sortItem = new PropertyChangeUpdateActionContributionItem(sortAction);
-		IContributionItem orderItem = new PropertyChangeUpdateActionContributionItem(orderAction);
-
-		if (items == null) {
-			items = new IContributionItem[2];
-			items[0] = sortItem;
-			items[1] = orderItem;
-		}
-		else {
-			IContributionItem[] combinedItems = new IContributionItem[items.length + 2];
-			combinedItems[0] = sortItem;
-			combinedItems[1] = orderItem;
-			System.arraycopy(items, 0, combinedItems, 2, items.length);
-			items = combinedItems;
-		}
-		return items;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getContentProvider(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public IContentProvider getContentProvider(TreeViewer viewer) {
-		if (fContentProvider == null) {
-			fContentProvider = new DTDTreeContentProvider();
-		}
-		return super.getContentProvider(viewer);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getLabelProvider(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public ILabelProvider getLabelProvider(TreeViewer viewer) {
-		if (fLabelProvider == null) {
-			fLabelProvider = new DTDLabelProvider();
-		}
-		return super.getLabelProvider(viewer);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getMenuListener(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public IMenuListener getMenuListener(TreeViewer viewer) {
-		fMenuHelper.createMenuListenersFor(viewer);
-		return fMenuHelper.getMenuListener();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration#getPreferenceStore()
-	 */
-	protected IPreferenceStore getPreferenceStore() {
-		return DTDUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getTransferDragSourceListeners(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public TransferDragSourceListener[] getTransferDragSourceListeners(TreeViewer treeViewer) {
-		if (fTransferDragSourceListeners == null) {
-			// emulate the XMLDragAndDropManager
-			final ViewerDragAdapter dragAdapter = new ViewerDragAdapter(treeViewer);
-			fTransferDragSourceListeners = new TransferDragSourceListener[]{new TransferDragSourceListener() {
-				public void dragFinished(DragSourceEvent event) {
-					dragAdapter.dragFinished(event);
-				}
-
-				public void dragSetData(DragSourceEvent event) {
-					dragAdapter.dragSetData(event);
-				}
-
-				public void dragStart(DragSourceEvent event) {
-					dragAdapter.dragStart(event);
-				}
-
-				public Transfer getTransfer() {
-					return ObjectTransfer.getInstance();
-				}
-			}};
-		}
-
-		return fTransferDragSourceListeners;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getTransferDropTargetListeners(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public TransferDropTargetListener[] getTransferDropTargetListeners(TreeViewer treeViewer) {
-		if (fTransferDropTargetListeners == null) {
-			// emulate the XMLDragAnDropManager
-			final ViewerDropAdapter dropAdapter = new ViewerDropAdapter(treeViewer, new DTDDragAndDropManager());
-			fTransferDropTargetListeners = new TransferDropTargetListener[]{new TransferDropTargetListener() {
-				public void dragEnter(DropTargetEvent event) {
-					dropAdapter.dragEnter(event);
-				}
-
-				public void dragLeave(DropTargetEvent event) {
-					dropAdapter.dragLeave(event);
-				}
-
-				public void dragOperationChanged(DropTargetEvent event) {
-					dropAdapter.dragOperationChanged(event);
-				}
-
-				public void dragOver(DropTargetEvent event) {
-					dropAdapter.dragOver(event);
-				}
-
-				public void drop(DropTargetEvent event) {
-					dropAdapter.drop(event);
-				}
-
-				public void dropAccept(DropTargetEvent event) {
-					dropAdapter.dropAccept(event);
-				}
-
-				public Transfer getTransfer() {
-					return ObjectTransfer.getInstance();
-				}
-
-				public boolean isEnabled(DropTargetEvent event) {
-					return getTransfer().isSupportedType(event.currentDataType);
-				}
-			}};
-		}
-		return fTransferDropTargetListeners;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration#setEditor(org.eclipse.wst.sse.ui.StructuredTextEditor)
-	 */
-	public void setEditor(StructuredTextEditor editor) {
-		super.setEditor(editor);
-		fMenuHelper = new DTDContextMenuHelper(editor);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#unconfigure(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public void unconfigure(TreeViewer viewer) {
-		super.unconfigure(viewer);
-		fViewerContributions.remove(viewer);
-		fMenuHelper.removeMenuListenersFor(viewer);
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/.classpath b/bundles/org.eclipse.wst.html.ui/.classpath
deleted file mode 100644
index ac75a62..0000000
--- a/bundles/org.eclipse.wst.html.ui/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="src" path="src-html-validation"/>
-	<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/bundles/org.eclipse.wst.html.ui/.cvsignore b/bundles/org.eclipse.wst.html.ui/.cvsignore
deleted file mode 100644
index 2f941d8..0000000
--- a/bundles/org.eclipse.wst.html.ui/.cvsignore
+++ /dev/null
@@ -1,4 +0,0 @@
-bin
-htmleditor.jar
-temp.folder
-build.xml
diff --git a/bundles/org.eclipse.wst.html.ui/.options b/bundles/org.eclipse.wst.html.ui/.options
deleted file mode 100644
index 6d015ff..0000000
--- a/bundles/org.eclipse.wst.html.ui/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.wst.html.ui/projectionperf=false
diff --git a/bundles/org.eclipse.wst.html.ui/.project b/bundles/org.eclipse.wst.html.ui/.project
deleted file mode 100644
index 38bee73..0000000
--- a/bundles/org.eclipse.wst.html.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.html.ui</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/bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 036ecb4..0000000
--- a/bundles/org.eclipse.wst.html.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,50 +0,0 @@
-#Sun Mar 13 23:58:13 EST 2005
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-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=enabled
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
-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=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=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.unsafeTypeOperation=warning
-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.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
diff --git a/bundles/org.eclipse.wst.html.ui/build.properties b/bundles/org.eclipse.wst.html.ui/build.properties
deleted file mode 100644
index 9a8d1fa..0000000
--- a/bundles/org.eclipse.wst.html.ui/build.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-bin.includes = plugin.xml,\
-               *.jar,\
-               html.jar,\
-               icons/,\
-               plugin.properties,\
-               templates/
-source.htmleditor.jar = src/,\
-                        src-html-validation/
-src.includes = plugin.xml,\
-               plugin.properties,\
-               icons/,\
-               build.xml,\
-               templates/
-output.htmleditor.jar = bin/
diff --git a/bundles/org.eclipse.wst.html.ui/buildnotes_html.html b/bundles/org.eclipse.wst.html.ui/buildnotes_html.html
deleted file mode 100644
index 2baca38..0000000
--- a/bundles/org.eclipse.wst.html.ui/buildnotes_html.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta
-	http-equiv="Content-Type"
-	content="text/html; charset=ISO-8859-1" />
-<meta
-	name="GENERATOR"
-	content="WTP" />
-<meta
-	http-equiv="Content-Style-Type"
-	content="text/css" />
-<link
-	href="theme/Master.css"
-	rel="stylesheet"
-	type="text/css" />
-<title>Build Notes for HTML Component</title>
-</head>
-<body>
-<h2>Build Notes for HTML <br />
-<br />
-M3, 02/23/2005</h2>
-
-<h3>What's new in this drop</h3>
-<p>Added HTML validation, which validates against HTML spec 4.01 (with a few small variations), for both batch validation and as-you-type validation. The batch validation is &quot;off&quot; by default, until performance implications can be assessed.
-Note: a known limitation is this validation only works if the file extension (e.g. 'html') is in lowercase.</p>
-<h3>API Changes from previous Build/Milestone</h3>
-<h3>Problem reports fixed</h3>
-
-
-</body>
-</html>
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/ctool16/newhtml_wiz.gif b/bundles/org.eclipse.wst.html.ui/icons/full/ctool16/newhtml_wiz.gif
deleted file mode 100644
index 022c0eb..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/ctool16/newhtml_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/table.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/table.gif
deleted file mode 100644
index b99b45c..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/table.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-anchor.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-anchor.gif
deleted file mode 100644
index f58992d..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-anchor.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-body.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-body.gif
deleted file mode 100644
index 005fa99..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-body.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-button.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-button.gif
deleted file mode 100644
index d143fcf..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-button.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-font.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-font.gif
deleted file mode 100644
index bbb40cb..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-font.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-form.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-form.gif
deleted file mode 100644
index 3b13958..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-form.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-generic.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-generic.gif
deleted file mode 100644
index 65f516e..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-generic.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-html.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-html.gif
deleted file mode 100644
index fb39ba6..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-html.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-image-map.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-image-map.gif
deleted file mode 100644
index ef3235d..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-image-map.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-image.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-image.gif
deleted file mode 100644
index a988c1d..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-image.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-jsp.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-jsp.gif
deleted file mode 100644
index 4084602..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-jsp.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-template.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-template.gif
deleted file mode 100644
index 5d1f81b..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-template.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-title.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-title.gif
deleted file mode 100644
index b129090..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag-title.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag.gif b/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag.gif
deleted file mode 100644
index 5e7fb33..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/obj16/tag.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/full/wizban/newhfile_wiz.gif b/bundles/org.eclipse.wst.html.ui/icons/full/wizban/newhfile_wiz.gif
deleted file mode 100644
index 360c2a8..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/full/wizban/newhfile_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/icons/sourceEditor.gif b/bundles/org.eclipse.wst.html.ui/icons/sourceEditor.gif
deleted file mode 100644
index 75ebdb8..0000000
--- a/bundles/org.eclipse.wst.html.ui/icons/sourceEditor.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.html.ui/plugin.properties b/bundles/org.eclipse.wst.html.ui/plugin.properties
deleted file mode 100644
index 7b0162d..0000000
--- a/bundles/org.eclipse.wst.html.ui/plugin.properties
+++ /dev/null
@@ -1,32 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-providerName=Eclipse.org
-pluginName=SSE HTML Source Editor
-nlFeatureName=SSE HTML Source Editor NL Support
-HTML_Source_Page_Editor.name=HTML Source Page Editor
-HTML_Files.name=HTML Files
-HTML_Source.name=HTML Source
-HTML_Templates.name=HTML Templates
-HTML_Styles.name=HTML Styles
-WebContentSettings.name=Web Content Settings
-Device_Profile_Entry_Provider_Extension.name=Device Profile Entry Provider Extension
-All_HTML_context_type_Extension_Element.name=All HTML
-HTML_New_context_type_Extension_Element.name=New HTML
-HTML_Tag_context_type_Extension_Element.name=HTML Tag
-HTML_Attribute_context_type_Extension_Element.name=HTML Attribute
-HTML_Attribute_value_context_type_Extension_Element.name=HTML Attribute value
-HTML_Syntax_Validator.name=HTML Syntax Validator
-###############################################################################
-# The following property keys maybe unused. Commented out on 12/7/2004. Uncomment if needed.
-#HTML_Annotations.name=HTML Annotations
-#org.eclipse.ui.newWizards extension point
-_UI_WIZARD_NAME = HTML
-_UI_WIZARD_CREATE_NEW_FILE = Create a new HTML page
diff --git a/bundles/org.eclipse.wst.html.ui/plugin.xml b/bundles/org.eclipse.wst.html.ui/plugin.xml
deleted file mode 100644
index ff9fba8..0000000
--- a/bundles/org.eclipse.wst.html.ui/plugin.xml
+++ /dev/null
@@ -1,406 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.wst.html.ui"
-   name="%pluginName"
-   version="1.0.0"
-   provider-name="%providerName"
-   class="org.eclipse.wst.html.ui.internal.HTMLUIPlugin">
-
-   <runtime>
-      <library name="htmleditor.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.wst.sse.ui"/>
-      <import plugin="org.eclipse.wst.xml.ui"/>
-      <import plugin="org.eclipse.wst.css.ui"/>
-      <import plugin="org.eclipse.wst.sse.core"/>
-      <import plugin="org.eclipse.wst.css.core"/>
-      <import plugin="org.eclipse.wst.html.core"/>
-      <import plugin="org.eclipse.wst.xml.core"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.jdt.ui"/>
-      <import plugin="org.eclipse.wst.common.uriresolver"/>
-      <import plugin="org.eclipse.wst.validation"/>
-      <import plugin="org.eclipse.wst.javascript.ui"/>
-   </requires>
-
-   <extension-point id="deviceProfileEntryProvider" name="%Device_Profile_Entry_Provider_Extension.name"/>
-
-   <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%HTML_Source_Page_Editor.name"
-            icon="icons/sourceEditor.gif"
-            extensions="html, htm, xhtml, jhtml, shtml, shtm, html-ss, wml"
-            contributorClass="org.eclipse.wst.html.ui.edit.ui.ActionContributorHTML"
-            class="org.eclipse.wst.html.ui.StructuredTextEditorHTML"
-            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
-            id="org.eclipse.wst.html.ui.StructuredTextEditorHTML">
-      </editor>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.extendedconfiguration">
-      <configuration
-      		type="textviewerconfiguration"
-            class="org.eclipse.wst.html.ui.StructuredTextViewerConfigurationHTML"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="contentoutlineconfiguration"
-            class="org.eclipse.wst.html.ui.views.contentoutline.HTMLContentOutlineConfiguration"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="propertysheetconfiguration"
-            class="org.eclipse.wst.xml.ui.views.properties.XMLPropertySheetConfiguration"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="spellchecktarget"
-            class="org.eclipse.wst.xml.ui.XMLSpellCheckTarget"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="sourceeditingtexttools"
-            class="org.eclipse.wst.xml.ui.extensions.XMLSourceEditingTextTools"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="characterpairmatcher"
-            class="org.eclipse.wst.html.ui.text.HTMLDocumentRegionEdgeMatcher"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <configuration
-      		type="structuredtextfoldingprovider"
-            class="org.eclipse.wst.html.ui.internal.projection.StructuredTextFoldingProviderHTML"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.html.ui.preferences"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.html.ui.preferences.source"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.html.ui.preferences.templates"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-      <definition 
-      		type="preferencepages"
-            value="org.eclipse.wst.html.ui.preferences.styles"
-            target="org.eclipse.wst.html.core.htmlsource"/>
-   </extension>
-   <extension
-      point="org.eclipse.core.filebuffers.annotationModelCreation">
-      <factory
-            contentTypeId="org.eclipse.wst.html.core.htmlsource"
-            class="org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModelFactory"/>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.adapterFactoryDescription">
-      <adapterFactoryDescription
-            class="org.eclipse.wst.html.ui.registry.AdapterFactoryProviderForHTML">
-            <contentType id="org.eclipse.wst.html.core.htmlsource"/>
-      </adapterFactoryDescription>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.embeddedAdapterFactoryProvider">
-      <embeddedAdapterFactoryProvider
-            class="org.eclipse.wst.html.ui.registry.AdapterFactoryProviderForEmbeddedHTML">
-      </embeddedAdapterFactoryProvider>
-   </extension>
-   <extension
-         point="org.eclipse.ui.preferencePages">
-<!-- HTML PREFERENCE PAGES-->
-      <page
-            name="%HTML_Files.name"
-            category="org.eclipse.wst.sse.ui.preferences"
-            class="org.eclipse.wst.html.ui.preferences.ui.HTMLFilesPreferencePage"
-            id="org.eclipse.wst.html.ui.preferences">
-      </page>
-      <page
-            name="%HTML_Source.name"
-            category="org.eclipse.wst.html.ui.preferences"
-            class="org.eclipse.wst.html.ui.preferences.ui.HTMLSourcePreferencePage"
-            id="org.eclipse.wst.html.ui.preferences.source">
-      </page>
-      <page
-            name="%HTML_Templates.name"
-            category="org.eclipse.wst.html.ui.preferences"
-            class="org.eclipse.wst.html.ui.preferences.ui.HTMLTemplatePreferencePage"
-            id="org.eclipse.wst.html.ui.preferences.templates">
-      </page>
-      <page
-            name="%HTML_Styles.name"
-            category="org.eclipse.wst.html.ui.preferences"
-            class="org.eclipse.wst.html.ui.preferences.ui.HTMLColorPage"
-            id="org.eclipse.wst.html.ui.preferences.styles">
-      </page>
-   </extension>
-<!-- Web content settings -->
-   <extension
-         point="org.eclipse.ui.propertyPages">
-<!-- for j2ee web project -->
-      <page
-            objectClass="org.eclipse.core.resources.IProject"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.ProjectContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.dynamicprojectpropertypage">
-         <filter
-               name="nature"
-               value="org.eclipse.wst.webproject.WebNature">
-         </filter>
-      </page>
-<!-- for static web project -->
-      <page
-            objectClass="org.eclipse.core.resources.IProject"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.ProjectContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.staticprojectpropertypage">
-         <filter
-               name="nature"
-               value="org.eclipse.wst.webproject.StaticWebNature">
-         </filter>
-      </page>
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.htm*"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.HTMLContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.htmlpropertypage">
-      </page>
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.shtml"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.HTMLContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.htmlpropertypage">
-      </page>
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.xhtml"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.HTMLContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.htmlpropertypage">
-      </page>
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.jhtml"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.HTMLContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.htmlpropertypage">
-      </page>
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.jsp"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.HTMLContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.htmlpropertypage">
-      </page>
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.jspf"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.HTMLContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.htmlpropertypage">
-      </page>
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.jsf"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.HTMLContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.htmlpropertypage">
-      </page>
-      <page
-            objectClass="org.eclipse.core.resources.IFile"
-            adaptable="true"
-            name="%WebContentSettings.name"
-            nameFilter="*.wml"
-            class="org.eclipse.wst.html.ui.contentproperties.ui.HTMLContentSettingsPropertyPage"
-            id="org.eclipse.wst.html.ui.htmlpropertypage">
-      </page>
-   </extension>
-<!-- Editor actionsets -->
-   <extension
-         point="org.eclipse.ui.actionSetPartAssociations">
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
-         <part
-               id="org.eclipse.wst.html.ui.StructuredTextEditorHTML">
-         </part>
-      </actionSetPartAssociation>
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.NavigateActionSet">
-         <part
-               id="org.eclipse.wst.html.ui.StructuredTextEditorHTML">
-         </part>
-      </actionSetPartAssociation>
-   </extension>
-
-<!-- Templates -->
-   <extension
-         point="org.eclipse.ui.editors.templates">
-      <contextType
-            name="%All_HTML_context_type_Extension_Element.name"
-            class="org.eclipse.wst.html.ui.internal.templates.TemplateContextTypeHTML"
-            id="html_all">
-      </contextType>
-      <contextType
-            name="%HTML_New_context_type_Extension_Element.name"
-            class="org.eclipse.wst.html.ui.internal.templates.TemplateContextTypeHTML"
-            id="html_new">
-      </contextType>
-      <contextType
-            name="%HTML_Tag_context_type_Extension_Element.name"
-            class="org.eclipse.wst.html.ui.internal.templates.TemplateContextTypeHTML"
-            id="html_tag">
-      </contextType>
-      <contextType
-            name="%HTML_Attribute_context_type_Extension_Element.name"
-            class="org.eclipse.wst.html.ui.internal.templates.TemplateContextTypeHTML"
-            id="html_attribute">
-      </contextType>
-      <contextType
-            name="%HTML_Attribute_value_context_type_Extension_Element.name"
-            class="org.eclipse.wst.html.ui.internal.templates.TemplateContextTypeHTML"
-            id="html_attribute_value">
-      </contextType>
-      <include
-      		file="templates/htmldefault-templates.xml"
-      		translations="templates/htmldefault-templates.properties">
-      </include>
-   </extension>
-	<!-- initialize html ui preferences -->
-	<extension point="org.eclipse.core.runtime.preferences">
-	   <initializer class="org.eclipse.wst.html.ui.internal.preferences.HTMLUIPreferenceInitializer"/>
-	</extension>
-	
-	<!--======================================================================================-->
-	<!-- Document provider for ExternalFileEditorInput                                        -->
-	<!--======================================================================================-->
-	<extension point="org.eclipse.ui.editors.documentProviders"> 
-		<provider 
-			inputTypes="org.eclipse.wst.html.ui.internal.hyperlink.ExternalFileEditorInput" 
-			class="org.eclipse.ui.editors.text.TextFileDocumentProvider" 
-			id="org.eclipse.wst.html.ui.internal.ExternalFileDocumentProvider"> 
-		</provider> 
-	</extension> 
-	
-	<!--======================================================================================-->
-	<!-- Workbench validation                                       						  -->
-	<!--======================================================================================-->
-   <extension
-		id="HTMLValidator"
-		name="%HTML_Syntax_Validator.name"
-		point="org.eclipse.wst.validation.validator">
-      <validator>
-	<!--
-   	  <projectNature
-		id="org.eclipse.wst.web.WebNature">
-	  </projectNature>
-	  <projectNature
-		id="org.eclipse.wst.web.StaticWebNature">
-	  </projectNature>
-	-->	
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.html">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.htm">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.xhtml">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.htpl">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.wml">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.jsp">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.jspf">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.jsf">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.jsv">
-	  </filter>
-	  <filter
-		objectClass="org.eclipse.core.resources.IFile"
-		nameFilter="*.jtpl">
-	  </filter>
-	  <helper
-		class="org.eclipse.wst.html.validation.HTMLValidationWorkbenchHelper">
-	  </helper>
-	  <run
-	  	enabled="false"
-		class="org.eclipse.wst.html.validation.HTMLValidator">
-	  </run>
-	</validator>
-   </extension>
-
-	<!--======================================================================================-->
-	<!-- As you type validation                                      						  -->
-	<!--======================================================================================-->
-	
-   <extension
-         point="org.eclipse.wst.sse.ui.sourcevalidation">
-      <validator
-            scope="total"
-            class="org.eclipse.wst.html.validation.HTMLValidator"
-            id="org.eclipse.wst.html.htmlsourcevalidator">
-         <contentTypeIdentifier
-               id="org.eclipse.wst.html.core.htmlsource">
-            <partitionType
-                  id="org.eclipse.wst.html.HTML_DEFAULT">
-            </partitionType>
-         </contentTypeIdentifier>
-         <contentTypeIdentifier
-               id="org.eclipse.jst.jsp.core.jspsource">
-            <partitionType
-                  id="org.eclipse.wst.html.HTML_DEFAULT">
-            </partitionType>
-         </contentTypeIdentifier>
-      </validator>
-   </extension>
-	
-
-	<!-- New JSP wizard -->
-	<extension point="org.eclipse.ui.newWizards">
-		<wizard id="org.eclipse.wst.html.ui.internal.wizard.NewHTMLWizard"
-			name="%_UI_WIZARD_NAME"
-			class="org.eclipse.wst.html.ui.internal.wizard.NewHTMLWizard"
-			category="org.eclipse.wst.web.ui"
-			icon="icons/full/ctool16/newhtml_wiz.gif">
-			<description>%_UI_WIZARD_CREATE_NEW_FILE</description>
-			<selection class="org.eclipse.core.resources.IResource" />
-		</wizard>
-	</extension>
-</plugin>
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationHelper.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationHelper.java
deleted file mode 100644
index 9062cd1..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationHelper.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package org.eclipse.wst.html.validation;
-
-import org.eclipse.core.resources.IFile;
-
-/**
- * A version of IHelper not dependent on IWorkbenchHelper.
- * 
- * @author pavery
- */
-public class HTMLValidationHelper {
-	/**
-	 */
-	public HTMLValidationHelper() {
-		super();
-	}
-
-	/**
-	 * 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.
-	 */
-	public String getTargetObjectName(Object object) {
-		if (object == null)
-			return null;
-		if (object instanceof IFile)
-			((IFile) object).getFullPath().toString();
-		return object.toString();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationPlugin.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationPlugin.java
deleted file mode 100644
index c921acb..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationPlugin.java
+++ /dev/null
@@ -1,74 +0,0 @@
-package org.eclipse.wst.html.validation;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class HTMLValidationPlugin extends Plugin {
-	//The shared instance.
-	private static HTMLValidationPlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	
-	/**
-	 * The constructor.
-	 */
-	public HTMLValidationPlugin() {
-		super();
-		plugin = this;
-	}
-
-	/**
-	 * This method is called upon plug-in activation
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-	}
-
-	/**
-	 * 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 HTMLValidationPlugin 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 = HTMLValidationPlugin.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("org.eclipse.wst.html.validation.HTMLValidationPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationReporter.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationReporter.java
deleted file mode 100644
index 51a6cfe..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationReporter.java
+++ /dev/null
@@ -1,123 +0,0 @@
-package org.eclipse.wst.html.validation;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.validate.ValidationMessage;
-import org.eclipse.wst.sse.core.validate.ValidationReporter;
-import org.eclipse.wst.validation.core.IMessage;
-import org.eclipse.wst.validation.core.IReporter;
-import org.eclipse.wst.validation.core.IValidator;
-
-public class HTMLValidationReporter implements ValidationReporter {
-
-	private IValidator owner = null;
-	private IReporter reporter = null;
-	private IFile file = null;
-	private IStructuredModel model = null;
-	private HTMLValidationResult result = null;
-
-	/**
-	 */
-	public HTMLValidationReporter(IValidator owner, IReporter reporter, IFile file, IStructuredModel model) {
-		super();
-		this.owner = owner;
-		this.reporter = reporter;
-		this.file = file;
-		this.model = model;
-	}
-
-	/**
-	 */
-	public void clear() {
-		if (this.file == null)
-			return;
-
-		this.result = null;
-
-		if (this.reporter != null) {
-			this.reporter.removeAllMessages(this.owner, this.file);
-		} else {
-			// remove by myself?
-			String id = HTMLValidator.class.getName();
-			try {
-				// TaskListHelper API changed
-				//TaskListHelper.getTaskList().removeAllTasks(id, this.file, null);
-				TaskListHelper.getTaskList().removeAllTasks(this.file, id, null);
-			}
-			catch (CoreException ex) {
-			}
-		}
-	}
-
-
-	/**
-	 */
-	public HTMLValidationResult getResult() {
-		if (this.result == null)
-			this.result = new HTMLValidationResult();
-		return this.result;
-	}
-
-	/**
-	 */
-	public void report(ValidationMessage message) {
-		if (message == null)
-			return;
-		if (this.file == null)
-			return;
-
-		IMessage mes = translateMessage(message);
-
-		if (this.reporter != null) {
-			this.reporter.addMessage(this.owner, mes);
-		} else {
-			// add by myself?
-			String id = HTMLValidator.class.getName();
-			String location = Integer.toString(mes.getLineNumber());
-			String name = this.file.getFullPath().toString();
-			try {
-				TaskListHelper.getTaskList().addTask(id, this.file, location,
-					mes.getId(), mes.getText(), mes.getSeverity(),
-					name, mes.getGroupName(), mes.getOffset(), mes.getLength());
-			}
-			catch (CoreException ex) {
-			}
-		}
-	}
-
-	/**
-	 * Translate ValidationMessage to IMessage and generate result log
-	 */
-	private IMessage translateMessage(ValidationMessage message) {
-		int severity = IMessage.LOW_SEVERITY;
-		HTMLValidationResult result = getResult();
-		switch (message.getSeverity()) {
-			case ValidationMessage.ERROR :
-				severity = IMessage.HIGH_SEVERITY;
-				result.addError();
-				break;
-			case ValidationMessage.WARNING :
-				severity = IMessage.NORMAL_SEVERITY;
-				result.addWarning();
-				break;
-			default :
-				result.addInformation();
-				break;
-		}
-
-		IMessage mes = new LocalizedMessage(severity, message.getMessage(), this.file);
-		mes.setOffset(message.getOffset());
-		mes.setLength(message.getLength());
-		if (this.model != null) {
-			IStructuredDocument flatModel = this.model.getStructuredDocument();
-			if (flatModel != null) {
-				int line = flatModel.getLineOfOffset(message.getOffset());
-				mes.setLineNo(line + 1);
-			}
-		}
-
-		return mes;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationResult.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationResult.java
deleted file mode 100644
index 4d5df26..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationResult.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package org.eclipse.wst.html.validation;
-
-/*
- * Licensed Material - Property of IBM 
- * (C) Copyright IBM Corp. 2001, 2003 - All Rights Reserved.
- * US Government Users Restricted Rights - Use, duplication or disclosure 
- * restricted by GSA ADP Schedule Contract with IBM Corp. 
- */
-
-public class HTMLValidationResult {
-	private int errors = 0;
-	private int warnings = 0;
-	private int informations = 0;
-
-	/**
-	 */
-	public HTMLValidationResult() {
-	}
-
-	/**
-	 */
-	public void addError() {
-		this.errors++;
-	}
-
-	/**
-	 */
-	public void addInformation() {
-		this.informations++;
-	}
-
-	/**
-	 */
-	public void addWarning() {
-		this.warnings++;
-	}
-
-	/**
-	 */
-	public int getErrors() {
-		return this.errors;
-	}
-
-	/**
-	 */
-	public int getInformations() {
-		return this.informations;
-	}
-
-	/**
-	 */
-	public int getWarnings() {
-		return this.warnings;
-	}
-
-	/**
-	 */
-	public boolean isValid() {
-		return (this.errors == 0 && this.warnings == 0 && this.informations == 0);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationWorkbenchHelper.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationWorkbenchHelper.java
deleted file mode 100644
index 26d5cb6..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidationWorkbenchHelper.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.eclipse.wst.html.validation;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.wst.validation.internal.operations.AWorkbenchHelper;
-
-public class HTMLValidationWorkbenchHelper extends AWorkbenchHelper{
-	/**
-	 */
-	public HTMLValidationWorkbenchHelper() {
-		super();
-	}
-
-	/**
-	 * 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.
-	 */
-	public String getTargetObjectName(Object object) {
-		if (object == null) return null;
-		if (object instanceof IFile) return getPortableName((IFile)object);
-		return object.toString();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidator.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidator.java
deleted file mode 100644
index 231bd90..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/HTMLValidator.java
+++ /dev/null
@@ -1,281 +0,0 @@
-package org.eclipse.wst.html.validation;
-
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-
-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.NullProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.html.core.validate.HTMLValidationAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.util.URIResolver;
-import org.eclipse.wst.sse.core.validate.ValidationAdapter;
-import org.eclipse.wst.validation.core.IFileDelta;
-import org.eclipse.wst.validation.core.IHelper;
-import org.eclipse.wst.validation.core.IMessage;
-import org.eclipse.wst.validation.core.IReporter;
-import org.eclipse.wst.validation.core.IValidator;
-import org.eclipse.wst.validation.internal.operations.IWorkbenchHelper;
-import org.eclipse.wst.validation.internal.operations.WorkbenchReporter;
-import org.eclipse.wst.xml.core.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclispe.wst.validation.internal.core.Message;
-
-public class HTMLValidator implements IValidator {
-	/**
-	 */
-	public HTMLValidator() {
-		super();
-	}
-
-	/**
-	 */
-	public void cleanup(IReporter reporter) {
-		// nothing to do
-	}
-
-	/**
-	 */
-	protected XMLModel getModel(IProject project, IFile file) {
-		if (project == null || file == null)
-			return null;
-		if (!file.exists())
-			return null;
-		if (!canHandle(file))
-			return null;
-
-		IStructuredModel model = null;
-		IModelManager manager = StructuredModelManager.getModelManager();
-
-		try {
-			try {
-				model = manager.getModelForRead(file);
-			}
-			catch (UnsupportedEncodingException ex) {
-				// retry ignoring META charset for invalid META charset specification
-				// recreate input stream, because it is already partially read
-				model = manager.getModelForRead(file, new String(), null);
-			}
-		}
-		catch (UnsupportedEncodingException ex) {
-		}
-		catch (IOException ex) {
-		}
-		catch (CoreException ex) {
-		}
-
-		if (model == null)
-			return null;
-		if (!(model instanceof XMLModel)) {
-			releaseModel(model);
-			return null;
-		}
-		return (XMLModel) model;
-	}
-
-	/**
-	 */
-	protected HTMLValidationReporter getReporter(IReporter reporter, IFile file, XMLModel model) {
-		return new HTMLValidationReporter(this, reporter, file, model);
-	}
-
-	/**
-	 * Check file extension to validate
-	 */
-	private boolean canHandle(IFile file) {
-		if (file == null)
-			return false;
-		String name = file.getFullPath().toString();
-		if (name == null)
-			return false;
-		int index = name.lastIndexOf('.');
-		if (index < 0)
-			return false;
-		String ext = name.substring(index + 1);
-		if (ext == null || ext.length() == 0)
-			return false;
-		ext = ext.toLowerCase();
-		return (ext.startsWith("htm") || //$NON-NLS-1$
-					ext.startsWith("jsp") || //$NON-NLS-1$
-					ext.equals("jsf") || //$NON-NLS-1$
-					ext.startsWith("xht") || //$NON-NLS-1$
-					ext.startsWith("shtm") || //$NON-NLS-1$
-					ext.startsWith("wml") || //$NON-NLS-1$
-		ext.equals("jhtml"));//$NON-NLS-1$
-	}
-
-	/**
-	 */
-	private boolean hasHTMLFeature(XMLDocument document) {
-		DocumentTypeAdapter adapter = (DocumentTypeAdapter) document.getAdapterFor(DocumentTypeAdapter.class);
-		if (adapter == null)
-			return false;
-		return adapter.hasFeature("HTML");//$NON-NLS-1$
-	}
-
-	/**
-	 */
-	protected void releaseModel(IStructuredModel model) {
-		if (model != null)
-			model.releaseFromRead();
-	}
-
-	/**
-	 */
-	public void validate(IHelper helper, IReporter reporter, IFileDelta[] deltaArray) {
-		if (helper == null)
-			return;
-		if ((reporter != null) && (reporter.isCancelled() == true)) {
-			throw new OperationCanceledException();
-		}
-		if (deltaArray != null && deltaArray.length > 0) {
-			validateDelta(helper, reporter, deltaArray);
-		}
-		else {
-			validateFull(helper, reporter, deltaArray);
-		}
-	}
-
-	/**
-	 */
-	protected HTMLValidationResult validate(XMLModel model, IFile file) {
-		IProject prj = null;
-		if (file != null) {
-			prj = file.getProject();
-		}
-		if ((prj == null) && (model != null)){
-			URIResolver res = model.getResolver();
-			if (res != null) {
-				prj = res.getProject();
-			}
-		}
-		final WorkbenchReporter reporter = new WorkbenchReporter(prj, new NullProgressMonitor());
-		return validate( reporter, file, model);
-	}
-
-	/**
-	 */
-	private HTMLValidationResult validate(IReporter reporter, IFile file, XMLModel model) {
-		if (file == null || model == null)
-			return null; // error
-		XMLDocument document = model.getDocument();
-		if (document == null)
-			return null; // error
-		if (!hasHTMLFeature(document))
-			return null; // ignore
-
-		IAdapterFactory factory = HTMLValidationAdapterFactory.getInstance();
-		ValidationAdapter adapter = (ValidationAdapter) factory.adapt(document);
-		if (adapter == null)
-			return null; // error
-
-		HTMLValidationReporter rep = getReporter(reporter, file, model);
-		rep.clear();
-		adapter.setReporter(rep);
-		if (reporter != null) {
-			String args[] = new String[]{file.getFullPath().toString()};
-			
-//			Message mess = new Message("HTMLValidation", //$NON-NLS-1$
-//						SeverityEnum.LOW_SEVERITY, "MESSAGE_HTML_VALIDATION_MESSAGE_UI_", //$NON-NLS-1$
-//						args);
-			Message mess = new LocalizedMessage(IMessage.LOW_SEVERITY, "MESSAGE_HTML_VALIDATION_MESSAGE_UI_");
-			mess.setParams(args);
-			reporter.displaySubtask(this, mess);
-		}
-		adapter.validate(document);
-		return rep.getResult();
-	}
-
-	/**
-	 */
-	private void validateContainer(IHelper helper, IReporter reporter, IContainer container) {
-		try {
-			IResource[] resourceArray = container.members(false);
-			for (int i = 0; i < resourceArray.length; i++) {
-				IResource resource = resourceArray[i];
-				if (resource == null)
-					continue;
-				if (resource instanceof IFile) {
-					validateFile(helper, reporter, (IFile) resource);
-				}
-				else if (resource instanceof IContainer) {
-					validateContainer(helper, reporter, (IContainer) resource);
-				}
-			}
-		}
-		catch (CoreException ex) {
-		}
-	}
-
-	/**
-	 */
-	private void validateDelta(IHelper helper, IReporter reporter, IFileDelta[] deltaArray) {
-		for (int i = 0; i < deltaArray.length; i++) {
-			IFileDelta delta = deltaArray[i];
-			if (delta == null || delta.getDeltaType() == IFileDelta.DELETED)
-				continue;
-			IResource resource = getResource(delta);
-			if (resource == null || !(resource instanceof IFile))
-				continue;
-			validateFile(helper, reporter, (IFile) resource);
-		}
-	}
-
-	/**
-	 */
-	private void validateFile(IHelper helper, IReporter reporter, IFile file) {
-		if ((reporter != null) && (reporter.isCancelled() == true)) {
-			throw new OperationCanceledException();
-		}
-		XMLModel model = getModel(file.getProject(), file);
-		if (model == null)
-			return;
-
-		try {
-			validate(reporter, file, model);
-		}
-		finally {
-			releaseModel(model);
-		}
-	}
-
-	/**
-	 */
-	private void validateFull(IHelper helper, IReporter reporter, IFileDelta[] fileDelta) {
-		IProject project = null;
-		if(helper instanceof IWorkbenchHelper) {
-			IWorkbenchHelper wbHelper = (IWorkbenchHelper)helper;
-			project = wbHelper.getProject();
-		}
-		else {
-			// won't work for project validation (b/c nothing in file delta)
-			project = getResource(fileDelta[0]).getProject();
-		}
-		if (project == null)
-			return;
-		validateContainer(helper, reporter, project);
-	}
-
-	/* 
-	 * added to get rid or dependency on IWorkbenchHelper
-	 * @see com.ibm.sse.editor.extensions.validator.IWorkbenchHelper#getResource(com.ibm.sse.editor.extensions.validator.IFileDelta)
-	 */
-	public IResource getResource(IFileDelta delta) {
-		IResource res = null;
-		if (delta instanceof IResource)
-			res = (IResource) delta;
-		else
-			res = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(delta.getFileName()));
-		return res;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/LocalizedMessage.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/LocalizedMessage.java
deleted file mode 100644
index f9a0055..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/LocalizedMessage.java
+++ /dev/null
@@ -1,65 +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.html.validation;
-
-import java.util.Locale;
-
-import org.eclipse.core.resources.IResource;
-import org.eclispe.wst.validation.internal.core.Message;
-
-/**
- * copied from org.eclipse.wst.validation.internal.operations.LocalizedMessage
- * 
- * This class is provided for validators which run only in Eclipse 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 Eclipse.
- */
-public class LocalizedMessage extends Message {
-	private String _message = null;
-
-	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();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/TaskListHelper.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/TaskListHelper.java
deleted file mode 100644
index 3a7ed6c..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/TaskListHelper.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package org.eclipse.wst.html.validation;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-
-/*
- * Licensed Material - Property of IBM 
- * (C) Copyright IBM Corp. 2000,2002 - All Rights Reserved. 
- * US Government Users Restricted Rights - Use, duplication or disclosure 
- * restricted by GSA ADP Schedule Contract with IBM Corp. 
- */
-
-/**
- * pa_TODO moved this class here for now to remove dependency on com.ibm.etools.validation.
- * 
- * 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);
-	}
-
-	/**
-	 * 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);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/TaskListUtility.java b/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/TaskListUtility.java
deleted file mode 100644
index afb0e10..0000000
--- a/bundles/org.eclipse.wst.html.ui/src-html-validation/org/eclipse/wst/html/validation/TaskListUtility.java
+++ /dev/null
@@ -1,347 +0,0 @@
-package org.eclipse.wst.html.validation;
-
-/*
- * Licensed Material - Property of IBM 
- * (C) Copyright IBM Corp. 2000,2002 - All Rights Reserved. 
- * US Government Users Restricted Rights - Use, duplication or disclosure 
- * restricted by GSA ADP Schedule Contract with IBM Corp. 
- */
-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.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.
- *
- * This came from com.ibm.etools.validate.internal.util.TaskListUtility
- * */
-public class TaskListUtility {
-//	private static final String PLUGIN_ID = ValidationPlugin.PLUGIN_ID;
-	private static final String PLUGIN_ID = "com.ibm.etools.validation";//$NON-NLS-1$
-	private static final String VALIDATION_MARKER = PLUGIN_ID + ".problemmarker"; //$NON-NLS-1$ // The extension which is used to add validation markers to the task list
-	private static final String VALIDATION_MARKER_OWNER = "owner"; //$NON-NLS-1$ // The IValidator who owns the IMarker on the task list
-	private static final String VALIDATION_MARKER_SEVERITY = "validationSeverity"; //$NON-NLS-1$ // one of the IMessage values
-	private static final 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.
-	private static final String VALIDATION_MARKER_GROUP = "groupName"; //$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.
-	private static final String VALIDATION_MARKER_MESSAGEID = "messageId"; //$NON-NLS-1$ // Persist the message id of the message, not just the translated text.
-	private static final int DEPTH_INFINITE = IResource.DEPTH_INFINITE;
-	private static final int DEPTH_ZERO = IResource.DEPTH_ZERO;
-	private final static IMarker[] NO_MARKERS = new IMarker[0];
-
-	/**
-	 * 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 {
-		if ((message == null) || (resource == null)) {
-			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 = 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;
-}
-
-	/**
-	 * Given one of the SeverityEnum severities, return the IMarker severity int
-	 * that is its equivalent.
-	 */
-	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
-	}
-
-	private static IMarker[] getValidationTasks(IResource resource, int severity, int depth) {
-		IMarker[] tempMarkers = null;
-		int validCount = 0;
-		try {
-			IMarker[] allMarkers = null;
-			try {
-				allMarkers = resource.findMarkers(VALIDATION_MARKER, false, depth); // false means only consider PROBLEM_MARKER, not variants of PROBLEM_MARKER. Since addTask only adds PROBLEM_MARKER, we don't need to consider its subtypes.
-			}
-			catch (CoreException exc) {
-//				Logger logger = ValidationPlugin.getPlugin().getMsgLogger();
-//				if (logger.isLoggingLevel(Level.SEVERE)) {
-//					LogEntry entry = ValidationPlugin.getLogEntry();
-//					entry.setSourceID("TaskListUtility.getValidationTasks(IResource, int)"); //$NON-NLS-1$
-//					entry.setTargetException(exc);
-//					logger.write(Level.SEVERE, entry);
-//				}
-				return NO_MARKERS;
-			}
-
-			// Now filter in the markers, based on severity type.
-			if (allMarkers.length != 0) {
-				tempMarkers = new IMarker[allMarkers.length];
-				for (int i = 0; i < allMarkers.length; i++) {
-					IMarker marker = allMarkers[i];
-					Integer filterSeverity = (Integer) marker.getAttribute(VALIDATION_MARKER_SEVERITY);
-					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 {
-							marker.setAttribute(IMarker.SEVERITY, getSeverity(severity));
-						}
-						catch (CoreException exc) {
-//							Logger logger = ValidationPlugin.getPlugin().getMsgLogger();
-//							if (logger.isLoggingLevel(Level.SEVERE)) {
-//								LogEntry entry = ValidationPlugin.getLogEntry();
-//								entry.setSourceID("TaskListUtility.getValidationTasks(int, IResource, int)"); //$NON-NLS-1$
-//								entry.setTargetException(exc);
-//								logger.write(Level.SEVERE, entry);
-//							}
-							continue;
-						}
-						catch(Throwable exc) {
-//							Logger logger = ValidationPlugin.getPlugin().getMsgLogger();
-//							if (logger.isLoggingLevel(Level.SEVERE)) {
-//								LogEntry entry = ValidationPlugin.getLogEntry();
-//								entry.setSourceID("TaskListUtility.getValidationTasks(int, IResource, int)"); //$NON-NLS-1$
-//								entry.setTargetException(exc);
-//								logger.write(Level.SEVERE, entry);
-//							}
-							continue;
-						}
-					}
-					else if((severity & filterSeverity.intValue()) == 0) {
-						continue;
-					}
-					tempMarkers[validCount++] = marker;
-				}
-			}
-		}
-		catch (CoreException exc) {
-//			Logger logger = ValidationPlugin.getPlugin().getMsgLogger();
-//			if (logger.isLoggingLevel(Level.SEVERE)) {
-//				LogEntry entry = ValidationPlugin.getLogEntry();
-//				entry.setSourceID("TaskListUtility.getValidationTasks(int, IResource, int)"); //$NON-NLS-1$
-//				entry.setTargetException(exc);
-//				logger.write(Level.SEVERE, entry);
-//			}
-		}
-
-		if (validCount == 0) {
-			return NO_MARKERS;
-		}
-
-		IMarker[] validMarkers = new IMarker[validCount];
-		System.arraycopy(tempMarkers, 0, validMarkers, 0, validCount);
-		return validMarkers;
-	}
-
-	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 (int i = 0; i < markers.length; i++) {
-			IMarker marker = markers[i];
-
-			try {
-				Object owner = marker.getAttribute(VALIDATION_MARKER_OWNER);
-				if ((owner == null) || !(owner instanceof String)) {
-					// The ValidationMigrator will remove any "unowned" validation markers.
-					continue;
-				}
-
-				for(int j=0; j<messageOwners.length; j++) {
-					String messageOwner = messageOwners[j];
-					if (((String) owner).equals(messageOwner)) {
-						temp[validCount++] = marker;
-						break;
-					}
-				}
-			}
-			catch (CoreException exc) {
-//				Logger logger = ValidationPlugin.getPlugin().getMsgLogger();
-//				if (logger.isLoggingLevel(Level.SEVERE)) {
-//					LogEntry entry = ValidationPlugin.getLogEntry();
-//					entry.setSourceID("TaskListUtility.getValidationTasks(project, String[])"); //$NON-NLS-1$
-//					entry.setTargetException(exc);
-//					logger.write(Level.SEVERE, entry);
-//				}
-				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;
-	}
-
-	/**
-	 * 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.
-	 */
-	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);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/HTMLEditorPlugin.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/HTMLEditorPlugin.java
deleted file mode 100644
index a83a823..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/HTMLEditorPlugin.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui;
-
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-
-/**
- * @deprecated use internal HTMLUIPlugin class instead if possible
- */
-public class HTMLEditorPlugin extends HTMLUIPlugin {
-	// see org.eclipse.wst.html.ui.internal.HTMLUIPlugin
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextEditorHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextEditorHTML.java
deleted file mode 100644
index 3fff4ec..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextEditorHTML.java
+++ /dev/null
@@ -1,60 +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.html.ui;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.html.ui.edit.ui.CleanupActionHTML;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.html.ui.internal.search.HTMLFindOccurrencesAction;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.actions.ActionDefinitionIds;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-import org.eclipse.wst.sse.ui.internal.search.FindOccurrencesActionProvider;
-import org.eclipse.wst.xml.ui.actions.AddBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.actions.RemoveBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.actions.ToggleCommentActionXML;
-
-public class StructuredTextEditorHTML extends StructuredTextEditor {
-	protected void createActions() {
-		super.createActions();
-
-		ResourceBundle resourceBundle = SSEUIPlugin.getDefault().getResourceBundle();
-
-		Action action = new CleanupActionHTML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT, action);
-
-		action = new ToggleCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.TOGGLE_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT, action);
-
-		action = new AddBlockCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.ADD_BLOCK_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT, action);
-
-		action = new RemoveBlockCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.REMOVE_BLOCK_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT, action);
-		
-		FindOccurrencesActionProvider foAction = new FindOccurrencesActionProvider(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES + DOT, this);
-		foAction.addAction(new HTMLFindOccurrencesAction(resourceBundle, "", this)); //$NON-NLS-1$
-		foAction.setActionDefinitionId(ActionDefinitionIds.FIND_OCCURRENCES);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES, foAction);
-		markAsSelectionDependentAction(StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES, true);
-	}
-	protected void initializeEditor() {
-		super.initializeEditor();
-		setHelpContextId(IHelpContextIds.HTML_SOURCEVIEW_HELPID);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextViewerConfigurationHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextViewerConfigurationHTML.java
deleted file mode 100644
index 69997a9..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextViewerConfigurationHTML.java
+++ /dev/null
@@ -1,361 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jdt.ui.PreferenceConstants;
-import org.eclipse.jdt.ui.text.JavaSourceViewerConfiguration;
-import org.eclipse.jdt.ui.text.JavaTextTools;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.IAutoEditStrategy;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextDoubleClickStrategy;
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.jface.text.contentassist.ContentAssistant;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jface.text.contentassist.IContentAssistant;
-import org.eclipse.jface.text.formatter.IContentFormatter;
-import org.eclipse.jface.text.formatter.MultiPassContentFormatter;
-import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
-import org.eclipse.jface.text.information.IInformationPresenter;
-import org.eclipse.jface.text.information.IInformationProvider;
-import org.eclipse.jface.text.information.InformationPresenter;
-import org.eclipse.jface.text.reconciler.IReconciler;
-import org.eclipse.jface.text.reconciler.IReconcilingStrategy;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.css.core.text.ICSSPartitions;
-import org.eclipse.wst.css.ui.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.css.ui.style.LineStyleProviderForEmbeddedCSS;
-import org.eclipse.wst.html.core.format.HTMLFormatProcessorImpl;
-import org.eclipse.wst.html.core.internal.text.StructuredTextPartitionerForHTML;
-import org.eclipse.wst.html.core.text.IHTMLPartitions;
-import org.eclipse.wst.html.ui.internal.contentassist.HTMLContentAssistProcessor;
-import org.eclipse.wst.html.ui.internal.contentassist.NoRegionContentAssistProcessorForHTML;
-import org.eclipse.wst.html.ui.internal.hyperlink.URIHyperlinkDetector;
-import org.eclipse.wst.html.ui.style.LineStyleProviderForHTML;
-import org.eclipse.wst.html.ui.taginfo.HTMLBestMatchHoverProcessor;
-import org.eclipse.wst.html.ui.taginfo.HTMLInformationProvider;
-import org.eclipse.wst.html.ui.taginfo.HTMLTagInfoHoverProcessor;
-import org.eclipse.wst.javascript.common.ui.internal.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.javascript.common.ui.internal.style.LineStyleProviderForJavaScript;
-import org.eclipse.wst.javascript.common.ui.internal.taginfo.JavaScriptBestMatchHoverProcessor;
-import org.eclipse.wst.javascript.common.ui.internal.taginfo.JavaScriptInformationProvider;
-import org.eclipse.wst.javascript.common.ui.internal.taginfo.JavaScriptTagInfoHoverProcessor;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration;
-import org.eclipse.wst.sse.ui.format.StructuredFormattingStrategy;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor;
-import org.eclipse.wst.sse.ui.preferences.CommonEditorPreferenceNames;
-import org.eclipse.wst.sse.ui.style.IHighlighter;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-import org.eclipse.wst.sse.ui.taginfo.AnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.ProblemAnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.TextHoverManager;
-import org.eclipse.wst.sse.ui.util.EditorUtility;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-import org.eclipse.wst.xml.ui.doubleclick.XMLDoubleClickStrategy;
-import org.eclipse.wst.xml.ui.internal.autoedit.StructuredAutoEditStrategyXML;
-import org.eclipse.wst.xml.ui.internal.correction.CorrectionProcessorXML;
-import org.eclipse.wst.xml.ui.reconcile.StructuredTextReconcilingStrategyForMarkup;
-
-public class StructuredTextViewerConfigurationHTML extends StructuredTextViewerConfiguration {
-
-	InformationPresenter fInformationPresenter = null;
-
-	private JavaSourceViewerConfiguration fJavaSourceViewerConfiguration;
-	
-	public StructuredTextViewerConfigurationHTML() {
-		super();
-	}
-	
-	public StructuredTextViewerConfigurationHTML(IPreferenceStore store) {
-		super(store);
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAutoEditStrategies(org.eclipse.jface.text.source.ISourceViewer, java.lang.String)
-	 */
-	public IAutoEditStrategy[] getAutoEditStrategies(ISourceViewer sourceViewer, String contentType) {
-		List allStrategies = new ArrayList(0);
-		
-		IAutoEditStrategy[] superStrategies = super.getAutoEditStrategies(sourceViewer, contentType);
-		for (int i = 0; i < superStrategies.length; i++) {
-			allStrategies.add(superStrategies[i]);
-		}
-		
-		if (contentType == IHTMLPartitions.HTML_DEFAULT || contentType == IHTMLPartitions.HTML_DECLARATION) {
-			allStrategies.add(new StructuredAutoEditStrategyXML());
-		}
-
-		return (IAutoEditStrategy[]) allStrategies.toArray(new IAutoEditStrategy[0]);
-	}
-
-	public String[] getConfiguredContentTypes(ISourceViewer sourceViewer) {
-		if (configuredContentTypes == null) {
-			String[] xmlTypes = StructuredTextPartitionerForXML.getConfiguredContentTypes();
-			String[] htmlTypes = StructuredTextPartitionerForHTML.getConfiguredContentTypes();
-			configuredContentTypes = new String[2 + xmlTypes.length + htmlTypes.length];
-
-			configuredContentTypes[0] = IStructuredPartitions.DEFAULT_PARTITION;
-			configuredContentTypes[1] = IStructuredPartitions.UNKNOWN_PARTITION;
-
-			int index = 0;
-			System.arraycopy(xmlTypes, 0, configuredContentTypes, index += 2, xmlTypes.length);
-			System.arraycopy(htmlTypes, 0, configuredContentTypes, index += xmlTypes.length, htmlTypes.length);
-		}
-
-		return configuredContentTypes;
-	}
-
-	public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {
-		IContentAssistant ca = super.getContentAssistant(sourceViewer);
-
-		if (ca != null && ca instanceof ContentAssistant) {
-			ContentAssistant contentAssistant = (ContentAssistant) ca;
-
-			IContentAssistProcessor htmlContentAssistProcessor = new HTMLContentAssistProcessor();
-			IContentAssistProcessor jsContentAssistProcessor = new JavaScriptContentAssistProcessor();
-			IContentAssistProcessor cssContentAssistProcessor = new CSSContentAssistProcessor();
-			IContentAssistProcessor noRegionProcessorForHTML = new NoRegionContentAssistProcessorForHTML();
-
-			// HTML
-			setContentAssistProcessor(contentAssistant, htmlContentAssistProcessor, IHTMLPartitions.HTML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, htmlContentAssistProcessor, IHTMLPartitions.HTML_COMMENT);
-
-			// JavaScript
-			setContentAssistProcessor(contentAssistant, jsContentAssistProcessor, IHTMLPartitions.SCRIPT);
-
-			// CSS
-			setContentAssistProcessor(contentAssistant, cssContentAssistProcessor, ICSSPartitions.STYLE);
-
-			// unknown
-			setContentAssistProcessor(contentAssistant, noRegionProcessorForHTML, IStructuredPartitions.UNKNOWN_PARTITION);
-		}
-
-		return ca;
-	}
-
-	public IContentFormatter getContentFormatter(ISourceViewer sourceViewer) {
-		final MultiPassContentFormatter formatter = new MultiPassContentFormatter(getConfiguredDocumentPartitioning(sourceViewer), IHTMLPartitions.HTML_DEFAULT);
-
-		formatter.setMasterStrategy(new StructuredFormattingStrategy(new HTMLFormatProcessorImpl()));
-
-		return formatter;
-	}
-
-	public IContentAssistant getCorrectionAssistant(ISourceViewer sourceViewer) {
-		IContentAssistant ca = super.getCorrectionAssistant(sourceViewer);
-
-		if (ca != null && ca instanceof ContentAssistant) {
-			ContentAssistant correctionAssistant = (ContentAssistant) ca;
-			ITextEditor editor = getTextEditor();
-			if (editor != null) {
-				IContentAssistProcessor correctionProcessor = new CorrectionProcessorXML(editor);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IHTMLPartitions.HTML_DEFAULT);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_CDATA);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_COMMENT);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_DECLARATION);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_PI);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.DTD_SUBSET);
-			}
-		}
-
-		return ca;
-	}
-
-	public ITextDoubleClickStrategy getDoubleClickStrategy(ISourceViewer sourceViewer, String contentType) {
-		if (contentType.compareTo(IHTMLPartitions.HTML_DEFAULT) == 0)
-			// HTML
-			return new XMLDoubleClickStrategy();
-		else if (contentType.compareTo(IHTMLPartitions.SCRIPT) == 0)
-			// JavaScript
-			return getJavaSourceViewerConfiguration(sourceViewer).getDoubleClickStrategy(sourceViewer, contentType);
-		else
-			return super.getDoubleClickStrategy(sourceViewer, contentType);
-	}
-
-	public IHighlighter getHighlighter(ISourceViewer sourceViewer) {
-		IHighlighter highlighter = super.getHighlighter(sourceViewer);
-
-		if (highlighter != null) {
-			// HTML
-			LineStyleProvider htmlLineStyleProvider = new LineStyleProviderForHTML();
-			highlighter.addProvider(IHTMLPartitions.HTML_DEFAULT, htmlLineStyleProvider);
-			highlighter.addProvider(IHTMLPartitions.HTML_COMMENT, htmlLineStyleProvider);
-			highlighter.addProvider(IHTMLPartitions.HTML_DECLARATION, htmlLineStyleProvider);
-
-			// JavaScript
-			LineStyleProvider jsLineStyleProvider = new LineStyleProviderForJavaScript();
-			highlighter.addProvider(IHTMLPartitions.SCRIPT, jsLineStyleProvider);
-
-			// CSS
-			LineStyleProvider cssLineStyleProvider = new LineStyleProviderForEmbeddedCSS();
-			highlighter.addProvider(ICSSPartitions.STYLE, cssLineStyleProvider);
-		}
-
-		return highlighter;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.editors.text.TextSourceViewerConfiguration#getHyperlinkDetectors(org.eclipse.jface.text.source.ISourceViewer)
-	 */
-	public IHyperlinkDetector[] getHyperlinkDetectors(ISourceViewer sourceViewer) {
-		if (sourceViewer == null || !fPreferenceStore.getBoolean(AbstractDecoratedTextEditorPreferenceConstants.EDITOR_HYPERLINKS_ENABLED))
-			return null;
-
-		List allDetectors = new ArrayList(0);
-		allDetectors.add(new URIHyperlinkDetector());
-
-		IHyperlinkDetector[] superDetectors = super.getHyperlinkDetectors(sourceViewer);
-		for (int m = 0; m < superDetectors.length; m++) {
-			IHyperlinkDetector detector = superDetectors[m];
-			if (!allDetectors.contains(detector)) {
-				allDetectors.add(detector);
-			}
-		}
-		return (IHyperlinkDetector[]) allDetectors.toArray(new IHyperlinkDetector[0]);
-	}
-
-	public IInformationPresenter getInformationPresenter(ISourceViewer sourceViewer) {
-		if (fInformationPresenter == null) {
-			fInformationPresenter = new InformationPresenter(getInformationPresenterControlCreator(sourceViewer));
-
-			// HTML
-			IInformationProvider htmlInformationProvider = new HTMLInformationProvider();
-			fInformationPresenter.setInformationProvider(htmlInformationProvider, IHTMLPartitions.HTML_DEFAULT);
-
-			// JavaScript
-			IInformationProvider javascriptInformationProvider = new JavaScriptInformationProvider();
-			fInformationPresenter.setInformationProvider(javascriptInformationProvider, IHTMLPartitions.SCRIPT);
-
-			fInformationPresenter.setSizeConstraints(60, 10, true, true);
-		}
-
-		return fInformationPresenter;
-	}
-
-	private JavaSourceViewerConfiguration getJavaSourceViewerConfiguration(ISourceViewer viewer) {
-		if (fJavaSourceViewerConfiguration == null) {
-			IPreferenceStore store = PreferenceConstants.getPreferenceStore();
-			JavaTextTools javaTextTools = new JavaTextTools(store);
-			fJavaSourceViewerConfiguration = new JavaSourceViewerConfiguration(javaTextTools.getColorManager(), store, getTextEditor(), getConfiguredDocumentPartitioning(viewer));
-		}
-		return fJavaSourceViewerConfiguration;
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getReconcilerg(org.eclipse.jface.text.source.ISourceViewer)
-	 */
-	public IReconciler getReconciler(ISourceViewer sourceViewer) {
-		if (fReconciler != null) {
-			// a reconciler should always either be installed or disposed of
-			if (!fReconciler.isInstalled()) {
-				fReconciler = null;
-			}
-		}
-
-		if (fReconciler == null) {
-			// create one
-			fReconciler = new StructuredRegionProcessor();
-			fReconciler.setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer));
-		}
-
-		boolean reconcilingEnabled = fPreferenceStore.getBoolean(CommonEditorPreferenceNames.EVALUATE_TEMPORARY_PROBLEMS);
-
-		if (!reconcilingEnabled)
-			return fReconciler;
-
-		if (fReconciler != null) {
-			IDocument doc = ((StructuredTextEditor) editorPart).getDocumentProvider().getDocument(editorPart.getEditorInput());
-			IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(doc);
-			try {
-				if (sModel != null) {
-
-					String contentTypeId = sModel.getContentTypeIdentifier();
-
-					IReconcilingStrategy markupStrategy = new StructuredTextReconcilingStrategyForMarkup((ITextEditor) editorPart);
-
-					fReconciler.setReconcilingStrategy(markupStrategy, IStructuredPartitions.DEFAULT_PARTITION);
-					fReconciler.setReconcilingStrategy(markupStrategy, IXMLPartitions.XML_DEFAULT);
-
-					fReconciler.setDefaultStrategy(markupStrategy);
-
-					if (contentTypeId != null)
-						fReconciler.setValidatorStrategy(createValidatorStrategy(contentTypeId));
-				}
-			}
-			finally {
-				if (sModel != null)
-					sModel.releaseFromRead();
-			}
-		}
-		return fReconciler;
-	}
-
-	public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) {
-		ITextHover hover = null;
-		TextHoverManager.TextHoverDescriptor[] hoverDescs = getTextHovers();
-		int i = 0;
-		while (i < hoverDescs.length && hover == null) {
-			if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-				String hoverType = hoverDescs[i].getId();
-				if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType)) {
-					// treat specially if it's JavaScript, HTML otherwise
-					if (contentType.equals(IHTMLPartitions.SCRIPT)) {
-						hover = new JavaScriptBestMatchHoverProcessor();
-					}
-					else {
-						hover = new HTMLBestMatchHoverProcessor();
-					}
-				}
-				else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType)) {
-					hover = new ProblemAnnotationHoverProcessor();
-				}
-				else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType)) {
-					hover = new AnnotationHoverProcessor();
-				}
-				else if (TextHoverManager.DOCUMENTATION_HOVER.equalsIgnoreCase(hoverType)) {
-					// treat specially if it's JavaScript, HTML otherwise
-					if (contentType.equals(IHTMLPartitions.SCRIPT)) {
-						hover = new JavaScriptTagInfoHoverProcessor();
-					}
-					else {
-						hover = new HTMLTagInfoHoverProcessor();
-					}
-				}
-			}
-			i++;
-		}
-		if (hover == null) {
-			hover = super.getTextHover(sourceViewer, contentType, stateMask);
-		}
-		return hover;
-	}
-
-	public void unConfigure(ISourceViewer viewer) {
-		super.unConfigure(viewer);
-
-		// InformationPresenters
-		if (fInformationPresenter != null)
-			fInformationPresenter.uninstall();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/AbstractDeviceProfileEntry.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/AbstractDeviceProfileEntry.java
deleted file mode 100644
index b27b15a..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/AbstractDeviceProfileEntry.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.contentproperties.ui;
-
-public class AbstractDeviceProfileEntry implements DeviceProfileEntry {
-
-	public AbstractDeviceProfileEntry() {
-		super();
-	}
-
-	public String getEntryId() {
-		return null;
-	}
-
-	public String getEntryName() {
-		return null;
-	}
-
-	public void release() {
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/AbstractDeviceProfileEntryProvider.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/AbstractDeviceProfileEntryProvider.java
deleted file mode 100644
index 5a21e4f..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/AbstractDeviceProfileEntryProvider.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.contentproperties.ui;
-
-import java.util.Iterator;
-
-public class AbstractDeviceProfileEntryProvider implements
-		DeviceProfileEntryProvider {
-
-	public AbstractDeviceProfileEntryProvider() {
-		super();
-	}
-
-	public Iterator getDeviceProfileEntries() {
-		return null;
-	}
-
-	public void release() {
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/ContentSettingsRegistry.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/ContentSettingsRegistry.java
deleted file mode 100644
index 7abc475..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/ContentSettingsRegistry.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.contentproperties.ui;
-
-import java.util.Enumeration;
-import java.util.Iterator;
-
-import org.eclipse.wst.css.core.metamodel.CSSProfile;
-import org.eclipse.wst.css.core.metamodel.CSSProfileRegistry;
-import org.eclipse.wst.html.core.document.HTMLDocumentTypeEntry;
-import org.eclipse.wst.html.core.document.HTMLDocumentTypeRegistry;
-import org.eclipse.wst.sse.core.internal.encoding.CommonCharsetNames;
-import org.eclipse.wst.sse.ui.contentproperties.ui.ComboList;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-
-public final class ContentSettingsRegistry {
-
-	private static final String NONE = SSEUIPlugin.getResourceString("%UI_none"); //$NON-NLS-1$
-
-	public static String maxLengthStringInHTMLDocumentTypeRegistry = ""; //$NON-NLS-1$
-	public static String maxLengthStringInCharacterCodeRegistry = ""; //$NON-NLS-1$
-
-	private ContentSettingsRegistry() {
-	}
-
-	public static void setHTMLDocumentTypeRegistryInto(ComboList combo) {
-		combo.add(NONE, ""); //$NON-NLS-1$
-		HTMLDocumentTypeRegistry reg = HTMLDocumentTypeRegistry.getInstance();
-		Enumeration e = reg.getEntries();
-		while (e.hasMoreElements()) {
-			HTMLDocumentTypeEntry entry = (HTMLDocumentTypeEntry) e.nextElement();
-			String publicId = entry.getPublicId();
-			String displayName = entry.getDisplayName();
-			if (displayName != null) {
-				combo.add(displayName, publicId);
-				if (displayName.length() > maxLengthStringInHTMLDocumentTypeRegistry.length())
-					maxLengthStringInHTMLDocumentTypeRegistry = displayName;
-			}
-			else
-				combo.add(publicId, publicId);
-			if (publicId.length() > maxLengthStringInHTMLDocumentTypeRegistry.length())
-				maxLengthStringInHTMLDocumentTypeRegistry = publicId;
-			if (entry.getSystemId() == null)
-				continue; // if HTML entry
-			if (entry.getSystemId().length() > maxLengthStringInHTMLDocumentTypeRegistry.length())
-				maxLengthStringInHTMLDocumentTypeRegistry = entry.getSystemId();
-		}
-
-		combo.sortByKey(1);
-	}
-
-	public static void setCSSMetaModelRegistryInto(ComboList combo) {
-		 combo.add(NONE, ""); //$NON-NLS-1$
-		 CSSProfileRegistry reg = CSSProfileRegistry.getInstance();
-		 Iterator i = reg.getProfiles();
-		 while (i.hasNext()) {
-		 	CSSProfile profile = (CSSProfile) i.next();
-		 	String id = profile.getProfileID();
-		 	String name = profile.getProfileName();
-		 	combo.add(name, id);
-		 }
-		 combo.sortByKey(1);
-	}
-
-	public static void setDeviceProfileRegistryInto(ComboList combo) {
-		combo.add(NONE, ""); //$NON-NLS-1$
-		DeviceProfileEntryProvider reg = DeviceProfileEntryProviderBuilder.getEntryProvider();
-		if (reg == null) {
-			return;
-		}
-		Iterator profiles = reg.getDeviceProfileEntries();
-		if (profiles == null) {
-			reg.release();
-			return;
-		}
-		DeviceProfileEntry entry;
-		while (profiles.hasNext()) {
-			entry = (DeviceProfileEntry) profiles.next();
-			combo.add(entry.getEntryName(), entry.getEntryId());
-			entry.release();
-		}
-		reg.release();
-		combo.sortByKey(1);
-	}
-
-	public static String getSystemIdFrom(String publicId) {
-		if (publicId == null || publicId.length() == 0)
-			return null;
-		HTMLDocumentTypeRegistry reg = HTMLDocumentTypeRegistry.getInstance();
-		Enumeration e = reg.getEntries();
-		while (e.hasMoreElements()) {
-			HTMLDocumentTypeEntry entry = (HTMLDocumentTypeEntry) e.nextElement();
-			if (entry.getPublicId().equals(publicId))
-				return entry.getSystemId();
-		}
-		return null;
-	}
-
-	public static void setContentTypeInto(ComboList combo) {
-		String[] type = {"", //$NON-NLS-1$
-					"application/xhtml+xml", //$NON-NLS-1$
-					"application/xml", //$NON-NLS-1$
-					"text/html", //$NON-NLS-1$
-					"text/xml",}; //$NON-NLS-1$
-		String[] displayName = {NONE, "application/xhtml+xml", //$NON-NLS-1$
-		//$NON-NLS-1$
-					"application/xml", //$NON-NLS-1$
-					"text/html", //$NON-NLS-1$
-					"text/xml",}; //$NON-NLS-1$
-		for (int i = 0; i < type.length; i++) {
-			if (displayName[i] != null && displayName[i].length() != 0)
-				combo.add(displayName[i], type[i]);
-			else
-				combo.add(type[i], type[i]);
-		}
-
-	}
-
-	public static void setCharacterCodeInto(ComboList combo) {
-		combo.add(NONE, ""); //$NON-NLS-1$
-		String max = ""; //$NON-NLS-1$
-		//CommonCharsetNames encoding = new CommonCharsetNames();
-		String[] charCode = CommonCharsetNames.getCommonCharsetNames();
-		for (int i = 0; i < charCode.length; i++) {
-			String displayName = CommonCharsetNames.getDisplayString(charCode[i]);
-			if (displayName != null && displayName.length() != 0) {
-				combo.add(displayName, charCode[i]);
-				int n_byte = displayName.getBytes().length;
-				if (max.getBytes().length < n_byte)
-					max = displayName;
-			}
-			else
-				combo.add(charCode[i], charCode[i]);
-		}
-		/*	
-		 charCode = encoding.getSupportedJavaEncodings();
-		 for(int i=0;i<charCode.length;i++){
-		 String displayName = encoding.getDisplayString(charCode[i]);
-		 if (displayName!=null && displayName.length()!=0)
-		 combo.add(displayName,charCode[i]);
-		 else
-		 combo.add(charCode[i],charCode[i]);
-		 }
-		 */
-		//	combo.sortByKey(1);
-		maxLengthStringInCharacterCodeRegistry = max;
-	}
-
-	public static void setLanguageInto(ComboList combo) {
-		String[] lang = {"", //$NON-NLS-1$
-					"java", //$NON-NLS-1$
-					"javascript",}; //$NON-NLS-1$
-		String[] displayName = {NONE, "java", //$NON-NLS-1$
-		//$NON-NLS-1$
-					"javascript",}; //$NON-NLS-1$
-		for (int i = 0; i < lang.length; i++) {
-			if (displayName[i] != null && displayName[i].length() != 0)
-				combo.add(displayName[i], lang[i]);
-			else
-				combo.add(lang[i], lang[i]);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntry.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntry.java
deleted file mode 100644
index 489e257..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntry.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.contentproperties.ui;
-
-/**
- * <p>
- * This interface is not intended to be implemented by clients
- * directly. Instead, please use abstract class(AbstractDeviceProfileEntry) instead.
- * </p>
- */
-public interface DeviceProfileEntry {
-	public String getEntryId();
-	public String getEntryName();
-	public void release();
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntryProvider.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntryProvider.java
deleted file mode 100644
index 5191586..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntryProvider.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.contentproperties.ui;
-
-import java.util.Iterator;
-
-/**
- * <p>
- * This interface is not intended to be implemented by clients
- * directly. Instead, please use abstract class(AbstractDeviceProfileEntryProvider) instead.
- * </p>
- */
-public interface DeviceProfileEntryProvider {
-	public Iterator getDeviceProfileEntries();
-	public void release();
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntryProviderBuilder.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntryProviderBuilder.java
deleted file mode 100644
index 79fb3f6..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/DeviceProfileEntryProviderBuilder.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.contentproperties.ui;
-
-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;
-
-public class DeviceProfileEntryProviderBuilder {
-	private static final String EXTENSION_POINT_PLUGINID = "org.eclipse.wst.html.ui";  //$NON-NLS-1$
-	private static final String EXTENSION_POINT_NAME = "deviceProfileEntryProvider"; //$NON-NLS-1$
-	private static final String ATTR_CLASS = "class"; //$NON-NLS-1$
-
-	public DeviceProfileEntryProviderBuilder() {
-		super();
-	}
-	static public DeviceProfileEntryProvider getEntryProvider() {
-		IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(EXTENSION_POINT_PLUGINID, EXTENSION_POINT_NAME);
-		if (point != null) {
-			IExtension extensions[] = point.getExtensions();
-			if ((extensions != null) && (extensions.length > 0)) {
-				for (int i = 0; i < extensions.length; i++) {
-					IConfigurationElement elements[] = extensions[i].getConfigurationElements();
-					if ((elements != null) && (elements.length > 0)) {
-						for (int j = 0; j < elements.length; j++) {
-							IConfigurationElement config = elements[j];
-							if ((config != null) && (config.getName().equals(EXTENSION_POINT_NAME) == true)) {
-								String className = config.getAttribute(ATTR_CLASS);
-								if (className != null) {
-									try {
-										DeviceProfileEntryProvider provider = (DeviceProfileEntryProvider)config.createExecutableExtension(ATTR_CLASS);
-										if (provider != null) {
-											return provider;
-										}
-									} catch (CoreException ignored) {
-									}
-								}
-							}
-						}
-					}
-				}
-			}
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/HTMLContentSettingsPropertyPage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/HTMLContentSettingsPropertyPage.java
deleted file mode 100644
index 6d6e0dc..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/HTMLContentSettingsPropertyPage.java
+++ /dev/null
@@ -1,277 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.contentproperties.ui;
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.contentproperties.IContentSettings;
-import org.eclipse.wst.sse.ui.contentproperties.ui.ComboListOnPropertyPage;
-import org.eclipse.wst.sse.ui.contentproperties.ui.ContentSettingsPropertyPage;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-
-public final class HTMLContentSettingsPropertyPage extends ContentSettingsPropertyPage implements org.eclipse.swt.events.SelectionListener {
-
-
-	private final int N_DOCUMENT_TYPE = 0;
-	private final int N_CSS_PROFILE = 1;
-	private final int N_TARGET_DEVICE = 2;
-
-	private Text publicIdText;
-	private Text systemIdText;
-
-	public HTMLContentSettingsPropertyPage() {
-		super();
-		numberOfCombo = 3;
-		numCols = 2;
-		numRows = 8;
-		combo = new ComboListOnPropertyPage[super.numberOfCombo];
-
-	}
-
-
-
-	protected void createDocumentTypeComboBox() {
-
-		// create description of implecit DOCTYPE	
-		Label label = new Label(propertyPage, SWT.LEFT);
-		label.setText(SSEUIPlugin.getResourceString("%UI_Description_of_role_of_following_DOCTYPE"));//$NON-NLS-1$
-		GridData data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.horizontalSpan = numCols;
-		label.setLayoutData(data);
-
-		// create combobox
-		super.combo[N_DOCUMENT_TYPE] = super.createComboBoxOf(DOCUMENT_LABEL);
-		super.combo[this.N_DOCUMENT_TYPE].addSelectionListener(this);
-		// set entry list into Combo
-		ContentSettingsRegistry.setHTMLDocumentTypeRegistryInto(combo[N_DOCUMENT_TYPE]);
-		//	create TextField
-		createIDTextField();
-		if (combo[N_DOCUMENT_TYPE].getItemCount() <= 0)
-			return;
-
-		String initValue = contentSettings.getProperty((IResource) super.getElement(), IContentSettings.HTML_DOCUMENT_TYPE);
-		// when either .contentsettings or element doesn't exist
-		// when attribute doesn't exists,getProperty returns empty string.
-		if (initValue == null)
-			initValue = ""; //$NON-NLS-1$
-		// set init selectionItem in Combo
-		super.setSelectionItem(combo[N_DOCUMENT_TYPE], initValue);
-		this.publicIdText.setText(initValue);
-		if (!initValue.equals("")) {//$NON-NLS-1$
-			// toro D210260
-			if (ContentSettingsRegistry.getSystemIdFrom(initValue) != null)
-				this.systemIdText.setText(ContentSettingsRegistry.getSystemIdFrom(initValue));
-			else
-				this.systemIdText.setText("");//$NON-NLS-1$
-		}
-		else
-			this.systemIdText.setText("");//$NON-NLS-1$
-
-		// create separator
-		label = new Label(propertyPage, SWT.SEPARATOR | SWT.HORIZONTAL);
-		data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.horizontalSpan = numCols;
-		data.verticalSpan = 8;
-		label.setLayoutData(data);
-
-	}
-
-
-
-	protected void createCSSComboBox() {
-		super.combo[N_CSS_PROFILE] = super.createComboBoxOf(CSS_LABEL);
-
-		ContentSettingsRegistry.setCSSMetaModelRegistryInto(combo[N_CSS_PROFILE]);
-		if (combo[N_CSS_PROFILE].getItemCount() <= 0)
-			return;
-		String initValue = contentSettings.getProperty((IResource) super.getElement(), IContentSettings.CSS_PROFILE);
-		// when either .contentsettings or element doesn't exist
-		// when attribute doesn't exists,getProperty returns empty string.
-		if (initValue == null)
-			initValue = ""; //$NON-NLS-1$
-		// set init selectionItem in Combo
-		super.setSelectionItem(combo[N_CSS_PROFILE], initValue);
-	}
-
-
-
-	protected void createDeviceComboBox() {
-		super.combo[N_TARGET_DEVICE] = super.createComboBoxOf(DEVICE_LABEL);
-
-		ContentSettingsRegistry.setDeviceProfileRegistryInto(combo[N_TARGET_DEVICE]);
-		if (combo[N_TARGET_DEVICE].getItemCount() <= 0)
-			return;
-		String initValue = contentSettings.getProperty((IResource) super.getElement(), IContentSettings.DEVICE_PROFILE);
-		// when either .contentsettings or element doesn't exist
-		// when attribute doesn't exists,getProperty returns empty string.
-		if (initValue == null)
-			initValue = ""; //$NON-NLS-1$
-		// set init selectionItem in Combo
-		super.setSelectionItem(combo[N_TARGET_DEVICE], initValue);
-	}
-
-
-	protected void createSettingsPageGUI() {
-		int type = ((IResource) getElement()).getType();
-		switch (type) {
-			case IResource.FILE :
-				//	composite = createComposite(propertyPage,numCols,numRows);
-				createDocumentTypeComboBox();
-				createCSSComboBox();
-				createDeviceComboBox();
-				computeMaxWidthHint();
-				WorkbenchHelp.setHelp(propertyPage, IHelpContextIds.WEB_CONTENT_SETTINGS_HELPID);
-				break;
-
-			default :
-				Logger.log(Logger.WARNING, "HTMLContentSettingsPropertyPage is instantiated by resource except FILE");//$NON-NLS-1$
-				break;
-		}
-
-	}
-
-
-
-	protected void putSelectedPropertyInto(Map properties, String valueInCombo, int index) {
-
-		switch (index) {
-			case N_DOCUMENT_TYPE :
-				// doc type
-				properties.put(IContentSettings.HTML_DOCUMENT_TYPE, valueInCombo);
-				break;
-			case N_CSS_PROFILE :
-				// css
-				properties.put(IContentSettings.CSS_PROFILE, valueInCombo);
-				break;
-			case N_TARGET_DEVICE :
-				// device
-				properties.put(IContentSettings.DEVICE_PROFILE, valueInCombo);
-				break;
-			default :
-				Logger.log(Logger.ERROR, "Index is out of range in putSelectedPropertyInto() in class HTMLContentSettingsPropertyPage");//$NON-NLS-1$
-				break;
-		}
-
-	}
-
-	protected void deleteNoneProperty(int index) {
-		switch (index) {
-			case N_DOCUMENT_TYPE :
-				// doc type
-				contentSettings.deleteProperty((IResource) super.getElement(), IContentSettings.HTML_DOCUMENT_TYPE);
-				break;
-			case N_CSS_PROFILE :
-				// css
-				contentSettings.deleteProperty((IResource) super.getElement(), IContentSettings.CSS_PROFILE);
-				break;
-			case N_TARGET_DEVICE :
-				// device
-				contentSettings.deleteProperty((IResource) super.getElement(), IContentSettings.DEVICE_PROFILE);
-				break;
-			default :
-				Logger.log(Logger.ERROR, "Index is out of range in deleteNoneProperty() in class HTMLContentSettingsPropertyPage");//$NON-NLS-1$
-				break;
-		}
-	}
-
-	private void createIDTextField() {
-		// public ID & System ID
-		Label publicLabel = new Label(super.propertyPage, SWT.NONE);
-		GridData data = new GridData(GridData.GRAB_HORIZONTAL | GridData.FILL_HORIZONTAL);
-		data.horizontalIndent = 10;
-		publicLabel.setLayoutData(data);
-		publicLabel.setText(SSEUIPlugin.getResourceString("%UI_Public_ID"));//$NON-NLS-1$
-		publicIdText = new Text(super.propertyPage, SWT.BORDER | SWT.READ_ONLY);
-		data = new GridData();
-
-		publicIdText.setLayoutData(data);
-
-		Label systemLabel = new Label(super.propertyPage, SWT.NONE);
-		data = new GridData(GridData.GRAB_HORIZONTAL | GridData.FILL_HORIZONTAL);
-		data.horizontalIndent = 10;
-		systemLabel.setLayoutData(data);
-		systemLabel.setText(SSEUIPlugin.getResourceString("%UI_System_ID"));//$NON-NLS-1$
-		systemIdText = new Text(super.propertyPage, SWT.BORDER | SWT.READ_ONLY);
-		data = new GridData();
-
-		systemIdText.setLayoutData(data);
-	}
-
-
-
-	private void computeMaxWidthHint() {
-		// maxLengthString was set when HTMLDocumentTypeEntry was set in class ContentSettingsRegistry.
-		String maxLengthString = ContentSettingsRegistry.maxLengthStringInHTMLDocumentTypeRegistry;
-		String backup = this.systemIdText.getText();
-		this.systemIdText.setText(maxLengthString);
-		int maxWidthHint = this.systemIdText.computeSize(SWT.DEFAULT, SWT.DEFAULT).x;
-		this.systemIdText.setText(backup);
-
-		if (this.combo[this.N_DOCUMENT_TYPE].getLayoutData() != null)
-			((GridData) this.combo[this.N_DOCUMENT_TYPE].getLayoutData()).widthHint = maxWidthHint;
-		if (this.publicIdText.getLayoutData() != null)
-			((GridData) this.publicIdText.getLayoutData()).widthHint = maxWidthHint;
-		if (this.systemIdText.getLayoutData() != null)
-			((GridData) this.systemIdText.getLayoutData()).widthHint = maxWidthHint;
-		if (this.combo[this.N_CSS_PROFILE].getLayoutData() != null)
-			((GridData) this.combo[this.N_CSS_PROFILE].getLayoutData()).widthHint = maxWidthHint;
-		if (this.combo[this.N_TARGET_DEVICE].getLayoutData() != null)
-			((GridData) this.combo[this.N_TARGET_DEVICE].getLayoutData()).widthHint = maxWidthHint;
-
-	}
-
-
-	public void widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent e) {
-	}
-
-	public void widgetSelected(org.eclipse.swt.events.SelectionEvent event) {
-		Widget source = event.widget;
-
-		if (this.combo[this.N_DOCUMENT_TYPE].equals(source)) {
-			ComboListOnPropertyPage combo = this.combo[this.N_DOCUMENT_TYPE];
-			if (combo.getSelectionIndex() < 0)
-				return;
-			if (!combo.getSelectedValue().equals("")) {//$NON-NLS-1$
-				this.publicIdText.setText(combo.getSelectedValue());
-				if (ContentSettingsRegistry.getSystemIdFrom(combo.getSelectedValue()) != null)
-					this.systemIdText.setText(ContentSettingsRegistry.getSystemIdFrom(combo.getSelectedValue()));
-				else
-					this.systemIdText.setText("");//$NON-NLS-1$
-			}
-			else {
-				this.publicIdText.setText("");//$NON-NLS-1$
-				this.systemIdText.setText(""); //$NON-NLS-1$
-			}
-
-		}
-	}
-
-	protected void performDefaults() {
-		super.performDefaults();
-		this.publicIdText.setText("");//$NON-NLS-1$
-		this.systemIdText.setText(""); //$NON-NLS-1$
-
-	}
-
-
-}
-
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/ProjectContentSettingsPropertyPage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/ProjectContentSettingsPropertyPage.java
deleted file mode 100644
index 0dd50b8..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/contentproperties/ui/ProjectContentSettingsPropertyPage.java
+++ /dev/null
@@ -1,279 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.contentproperties.ui;
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.ui.contentproperties.IContentSettings;
-import org.eclipse.wst.sse.ui.contentproperties.ui.ComboListOnPropertyPage;
-import org.eclipse.wst.sse.ui.contentproperties.ui.ContentSettingsPropertyPage;
-
-public final class ProjectContentSettingsPropertyPage extends ContentSettingsPropertyPage implements org.eclipse.swt.events.SelectionListener {
-
-
-	private final int N_DOCUMENT_TYPE = 0;
-	private final int N_CSS_PROFILE = 1;
-	private final int N_TARGET_DEVICE = 2;
-
-	private Text publicIdText;
-	private Text systemIdText;
-
-	public ProjectContentSettingsPropertyPage() {
-		super();
-		numberOfCombo = 3;
-		numCols = 2;
-		numRows = 8;
-		combo = new ComboListOnPropertyPage[super.numberOfCombo];
-
-	}
-
-
-
-	protected void createDocumentTypeComboBox() {
-
-		// create description of implecit DOCTYPE	
-		Label label = new Label(propertyPage, SWT.LEFT);
-		label.setText(HTMLUIPlugin.getResourceString("%UI_Description_of_role_of_following_DOCTYPE"));//$NON-NLS-1$
-		GridData data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.horizontalSpan = numCols;
-		label.setLayoutData(data);
-
-		// create combobox
-		super.combo[N_DOCUMENT_TYPE] = super.createComboBoxOf(DOCUMENT_LABEL);
-		super.combo[this.N_DOCUMENT_TYPE].addSelectionListener(this);
-		// set entry list into Combo
-		ContentSettingsRegistry.setHTMLDocumentTypeRegistryInto(combo[N_DOCUMENT_TYPE]);
-		//	create TextField
-		createIDTextField();
-		if (combo[N_DOCUMENT_TYPE].getItemCount() <= 0)
-			return;
-
-		String initValue = contentSettings.getProperty((IResource) super.getElement(), IContentSettings.HTML_DOCUMENT_TYPE);
-		// when either .contentsettings or element doesn't exist
-		// when attribute doesn't exists,getProperty returns empty string.
-		if (initValue == null)
-			initValue = ""; //$NON-NLS-1$
-		// set init selectionItem in Combo
-		super.setSelectionItem(combo[N_DOCUMENT_TYPE], initValue);
-		this.publicIdText.setText(initValue);
-		if (!initValue.equals("")) {//$NON-NLS-1$
-			// toro D210260
-			if (ContentSettingsRegistry.getSystemIdFrom(initValue) != null)
-				this.systemIdText.setText(ContentSettingsRegistry.getSystemIdFrom(initValue));
-			else
-				this.systemIdText.setText("");//$NON-NLS-1$
-		}
-		else
-			this.systemIdText.setText("");//$NON-NLS-1$
-
-		// create separator
-		label = new Label(propertyPage, SWT.SEPARATOR | SWT.HORIZONTAL);
-		data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.horizontalSpan = numCols;
-		data.verticalSpan = 8;
-		label.setLayoutData(data);
-
-	}
-
-
-
-	protected void createCSSComboBox() {
-		super.combo[N_CSS_PROFILE] = super.createComboBoxOf(CSS_LABEL);
-
-		ContentSettingsRegistry.setCSSMetaModelRegistryInto(combo[N_CSS_PROFILE]);
-		if (combo[N_CSS_PROFILE].getItemCount() <= 0)
-			return;
-		String initValue = contentSettings.getProperty((IResource) super.getElement(), IContentSettings.CSS_PROFILE);
-		// when either .contentsettings or element doesn't exist
-		// when attribute doesn't exists,getProperty returns empty string.
-		if (initValue == null)
-			initValue = ""; //$NON-NLS-1$
-		// set init selectionItem in Combo
-		super.setSelectionItem(combo[N_CSS_PROFILE], initValue);
-	}
-
-
-
-	protected void createDeviceComboBox() {
-		super.combo[N_TARGET_DEVICE] = super.createComboBoxOf(DEVICE_LABEL);
-
-		ContentSettingsRegistry.setDeviceProfileRegistryInto(combo[N_TARGET_DEVICE]);
-		if (combo[N_TARGET_DEVICE].getItemCount() <= 0)
-			return;
-		String initValue = contentSettings.getProperty((IResource) super.getElement(), IContentSettings.DEVICE_PROFILE);
-		// when either .contentsettings or element doesn't exist
-		// when attribute doesn't exists,getProperty returns empty string.
-		if (initValue == null)
-			initValue = ""; //$NON-NLS-1$
-		// set init selectionItem in Combo
-		super.setSelectionItem(combo[N_TARGET_DEVICE], initValue);
-	}
-
-
-	protected void createSettingsPageGUI() {
-		int type = ((IResource) getElement()).getType();
-		switch (type) {
-			case IResource.PROJECT :
-				//	composite = createComposite(propertyPage,numCols,numRows);
-				createDocumentTypeComboBox();
-				createCSSComboBox();
-				createDeviceComboBox();
-				computeMaxWidthHint();
-				WorkbenchHelp.setHelp(propertyPage, IHelpContextIds.WEB_CONTENT_SETTINGS_HELPID);
-				break;
-
-			default :
-				Logger.log(Logger.WARNING, "ProjectContentSettingsPropertyPage is instantiated by resource except PROJECT");//$NON-NLS-1$
-				break;
-		}
-
-	}
-
-
-
-	protected void putSelectedPropertyInto(Map properties, String valueInCombo, int index) {
-
-		switch (index) {
-			case N_DOCUMENT_TYPE :
-				// doc type
-				properties.put(IContentSettings.HTML_DOCUMENT_TYPE, valueInCombo);
-				break;
-			case N_CSS_PROFILE :
-				// css
-				properties.put(IContentSettings.CSS_PROFILE, valueInCombo);
-				break;
-			case N_TARGET_DEVICE :
-				// device
-				properties.put(IContentSettings.DEVICE_PROFILE, valueInCombo);
-				break;
-			default :
-				Logger.log(Logger.ERROR, "Index is out of range in putSelectedPropertyInto() in class ProjectContentSettingsPropertyPage");//$NON-NLS-1$
-				break;
-		}
-
-	}
-
-	protected void deleteNoneProperty(int index) {
-		switch (index) {
-			case N_DOCUMENT_TYPE :
-				// doc type
-				contentSettings.deleteProperty((IResource) super.getElement(), IContentSettings.HTML_DOCUMENT_TYPE);
-				break;
-
-			case N_CSS_PROFILE :
-				// css
-				contentSettings.deleteProperty((IResource) super.getElement(), IContentSettings.CSS_PROFILE);
-				break;
-
-			case N_TARGET_DEVICE :
-				// device
-				contentSettings.deleteProperty((IResource) super.getElement(), IContentSettings.DEVICE_PROFILE);
-				break;
-
-			default :
-				Logger.log(Logger.ERROR, "Index is out of range in deleteNoneProperty() in class ProjectContentSettingsPropertyPage");//$NON-NLS-1$
-				break;
-		}
-	}
-
-	private void createIDTextField() {
-		// public ID & System ID
-		Label publicLabel = new Label(super.propertyPage, SWT.NONE);
-		GridData data = new GridData(GridData.GRAB_HORIZONTAL | GridData.FILL_HORIZONTAL);
-		data.horizontalIndent = 10;
-		publicLabel.setLayoutData(data);
-		publicLabel.setText(HTMLUIPlugin.getResourceString("%UI_Public_ID"));//$NON-NLS-1$
-		publicIdText = new Text(super.propertyPage, SWT.BORDER | SWT.READ_ONLY);
-		data = new GridData();
-
-		publicIdText.setLayoutData(data);
-
-		Label systemLabel = new Label(super.propertyPage, SWT.NONE);
-		data = new GridData(GridData.GRAB_HORIZONTAL | GridData.FILL_HORIZONTAL);
-		data.horizontalIndent = 10;
-		systemLabel.setLayoutData(data);
-		systemLabel.setText(HTMLUIPlugin.getResourceString("%UI_System_ID"));//$NON-NLS-1$
-		systemIdText = new Text(super.propertyPage, SWT.BORDER | SWT.READ_ONLY);
-		data = new GridData();
-
-		systemIdText.setLayoutData(data);
-	}
-
-
-
-	private void computeMaxWidthHint() {
-		// maxLengthString was set when HTMLDocumentTypeEntry was set in class ContentSettingsRegistry.
-		String maxLengthString = ContentSettingsRegistry.maxLengthStringInHTMLDocumentTypeRegistry;
-		String backup = this.systemIdText.getText();
-		this.systemIdText.setText(maxLengthString);
-		int maxWidthHint = this.systemIdText.computeSize(SWT.DEFAULT, SWT.DEFAULT).x;
-		this.systemIdText.setText(backup);
-
-		if (this.combo[this.N_DOCUMENT_TYPE].getLayoutData() != null)
-			((GridData) this.combo[this.N_DOCUMENT_TYPE].getLayoutData()).widthHint = maxWidthHint;
-		if (this.publicIdText.getLayoutData() != null)
-			((GridData) this.publicIdText.getLayoutData()).widthHint = maxWidthHint;
-		if (this.systemIdText.getLayoutData() != null)
-			((GridData) this.systemIdText.getLayoutData()).widthHint = maxWidthHint;
-		if (this.combo[this.N_CSS_PROFILE].getLayoutData() != null)
-			((GridData) this.combo[this.N_CSS_PROFILE].getLayoutData()).widthHint = maxWidthHint;
-		if (this.combo[this.N_TARGET_DEVICE].getLayoutData() != null)
-			((GridData) this.combo[this.N_TARGET_DEVICE].getLayoutData()).widthHint = maxWidthHint;
-
-	}
-
-
-	public void widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent e) {
-	}
-
-	public void widgetSelected(org.eclipse.swt.events.SelectionEvent event) {
-		Widget source = event.widget;
-
-		if (this.combo[this.N_DOCUMENT_TYPE].equals(source)) {
-			ComboListOnPropertyPage combo = this.combo[this.N_DOCUMENT_TYPE];
-			if (combo.getSelectionIndex() < 0)
-				return;
-			if (!combo.getSelectedValue().equals("")) {//$NON-NLS-1$
-				this.publicIdText.setText(combo.getSelectedValue());
-				if (ContentSettingsRegistry.getSystemIdFrom(combo.getSelectedValue()) != null)
-					this.systemIdText.setText(ContentSettingsRegistry.getSystemIdFrom(combo.getSelectedValue()));
-				else
-					this.systemIdText.setText("");//$NON-NLS-1$
-			}
-			else {
-				this.publicIdText.setText("");//$NON-NLS-1$
-				this.systemIdText.setText(""); //$NON-NLS-1$
-			}
-
-		}
-	}
-
-	protected void performDefaults() {
-		super.performDefaults();
-		this.publicIdText.setText("");//$NON-NLS-1$
-		this.systemIdText.setText(""); //$NON-NLS-1$
-
-	}
-
-}
-
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/ActionContributorHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/ActionContributorHTML.java
deleted file mode 100644
index 13cdf1e..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/ActionContributorHTML.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.edit.ui;
-
-import org.eclipse.wst.xml.ui.actions.ActionContributorXML;
-
-/**
- *
- * Instead, use SourcePageActionContributor for source page contributor
- * of multi page editor.
- * 
- * Note that this class is still valid for single page editor.
- */
-public class ActionContributorHTML extends ActionContributorXML {
-	private static final String[] EDITOR_IDS = {"org.eclipse.wst.html.ui.StructuredTextEditorHTML", "org.eclipse.wst.sse.ui.StructuredTextEditor"}; //$NON-NLS-1$ //$NON-NLS-2$
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.ui.actions.ActionContributor#getExtensionIDs()
-	 */
-	protected String[] getExtensionIDs() {
-		return EDITOR_IDS;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/CleanupActionHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/CleanupActionHTML.java
deleted file mode 100644
index 66f04e0..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/CleanupActionHTML.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.edit.ui;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.html.core.internal.cleanup.HTMLCleanupProcessorImpl;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupProcessor;
-import org.eclipse.wst.sse.ui.internal.actions.CleanupAction;
-
-public class CleanupActionHTML extends CleanupAction {
-	protected IStructuredCleanupProcessor fCleanupProcessor;
-
-	public CleanupActionHTML(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	protected Dialog getCleanupDialog(Shell shell) {
-		if (fCleanupDialog == null)
-			fCleanupDialog = new CleanupDialogHTML(shell);
-
-		return fCleanupDialog;
-	}
-
-	protected IStructuredCleanupProcessor getCleanupProcessor() {
-		if (fCleanupProcessor == null)
-			fCleanupProcessor = new HTMLCleanupProcessorImpl();
-
-		return fCleanupProcessor;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/CleanupDialogHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/CleanupDialogHTML.java
deleted file mode 100644
index 5489d0e..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/edit/ui/CleanupDialogHTML.java
+++ /dev/null
@@ -1,310 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.edit.ui;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.core.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-import org.eclipse.wst.sse.core.modelhandler.IModelHandler;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.xml.core.contenttype.ContentTypeIdForXML;
-import org.eclipse.wst.xml.core.internal.cleanup.XMLCleanupPreferencesImpl;
-
-public class CleanupDialogHTML extends Dialog implements SelectionListener {
-
-	protected Button fRadioButtonTagNameCaseAsis;
-	protected Button fRadioButtonTagNameCaseLower;
-	protected Button fRadioButtonTagNameCaseUpper;
-	protected Button fRadioButtonAttrNameCaseAsis;
-	protected Button fRadioButtonAttrNameCaseLower;
-	protected Button fRadioButtonAttrNameCaseUpper;
-	protected Button fCheckBoxInsertRequiredAttrs;
-	protected Button fCheckBoxInsertMissingTags;
-	protected Button fCheckBoxQuoteAttrValues;
-	protected Button fCheckBoxFormatSource;
-	protected Button fCheckBoxConvertEOLCodes;
-	protected Button fRadioButtonConvertEOLWindows;
-	protected Button fRadioButtonConvertEOLUnix;
-	protected Button fRadioButtonConvertEOLMac;
-	protected IStructuredModel fModel = null;
-	protected Preferences fPreferences = null;
-
-	public CleanupDialogHTML(Shell shell) {
-		super(shell);
-	}
-
-	public Control createDialogArea(Composite parent) {
-		getShell().setText(SSEUIPlugin.getResourceString("%Cleanup_UI_")); //$NON-NLS-1$ = "Cleanup"
-		Composite composite = new Composite(parent, SWT.NULL);
-
-		createDialogAreaInComposite(composite);
-		initializeOptions();
-
-		return composite;
-	}
-
-	protected void createDialogAreaInCompositeForHTML(Composite composite) {
-		// Convert tag name case
-		// d257064 need to associate group w/ radio buttons so radio buttons header can be read
-		Group tagNameCase = new Group(composite, SWT.NONE);
-		tagNameCase.setText(SSEUIPlugin.getResourceString("%Tag_name_case_for_HTML_UI_")); //$NON-NLS-1$ = "Tag name case for HTML:"
-		GridLayout hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		tagNameCase.setLayout(hLayout);
-		fRadioButtonTagNameCaseAsis = new Button(tagNameCase, SWT.RADIO);
-		fRadioButtonTagNameCaseAsis.setText(SSEUIPlugin.getResourceString("%Tag_name_case_As-is_UI_")); //$NON-NLS-1$ = "&As-is"
-		fRadioButtonTagNameCaseAsis.addSelectionListener(this);
-		fRadioButtonTagNameCaseLower = new Button(tagNameCase, SWT.RADIO);
-		fRadioButtonTagNameCaseLower.setText(SSEUIPlugin.getResourceString("%Tag_name_case_Lower_UI_")); //$NON-NLS-1$ = "&Lower"
-		fRadioButtonTagNameCaseLower.addSelectionListener(this);
-		fRadioButtonTagNameCaseUpper = new Button(tagNameCase, SWT.RADIO);
-		fRadioButtonTagNameCaseUpper.setText(SSEUIPlugin.getResourceString("%Tag_name_case_Upper_UI_")); //$NON-NLS-1$ = "&Upper"
-		fRadioButtonTagNameCaseUpper.addSelectionListener(this);
-
-		// Convert attr name case
-		// d257064 need to associate group w/ radio buttons so radio buttons header can be read
-		Group attrNameCase = new Group(composite, SWT.NONE);
-		attrNameCase.setText(SSEUIPlugin.getResourceString("%Attribute_name_case_for_HTML_UI_")); //$NON-NLS-1$ = "Attribute name case for HTML:"
-		attrNameCase.setLayout(hLayout);
-		fRadioButtonAttrNameCaseAsis = new Button(attrNameCase, SWT.RADIO);
-		fRadioButtonAttrNameCaseAsis.setText(SSEUIPlugin.getResourceString("%Attribute_name_case_As-is_UI_")); //$NON-NLS-1$ = "A&s-is"
-		fRadioButtonAttrNameCaseAsis.addSelectionListener(this);
-		fRadioButtonAttrNameCaseLower = new Button(attrNameCase, SWT.RADIO);
-		fRadioButtonAttrNameCaseLower.setText(SSEUIPlugin.getResourceString("%Attribute_name_case_Lower_UI_")); //$NON-NLS-1$ = "L&ower"
-		fRadioButtonAttrNameCaseLower.addSelectionListener(this);
-		fRadioButtonAttrNameCaseUpper = new Button(attrNameCase, SWT.RADIO);
-		fRadioButtonAttrNameCaseUpper.setText(SSEUIPlugin.getResourceString("%Attribute_name_case_Upper_UI_")); //$NON-NLS-1$ = "U&pper"
-		fRadioButtonAttrNameCaseUpper.addSelectionListener(this);
-	}
-
-	protected void createDialogAreaInComposite(Composite composite) {
-		if (isHTMLType()) {
-			createDialogAreaInCompositeForHTML(composite);
-			WorkbenchHelp.setHelp(composite, IHelpContextIds.CLEANUP_HTML_HELPID); // use HTML specific help
-		}
-		else
-			WorkbenchHelp.setHelp(composite, org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds.CLEANUP_XML_HELPID); // use XML specific help
-
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 1;
-		layout.makeColumnsEqualWidth = true;
-		composite.setLayout(layout);
-
-		// Insert missing required attrs
-		fCheckBoxInsertRequiredAttrs = new Button(composite, SWT.CHECK);
-		fCheckBoxInsertRequiredAttrs.setText(SSEUIPlugin.getResourceString("%Insert_required_attributes_UI_")); //$NON-NLS-1$
-		fCheckBoxInsertRequiredAttrs.addSelectionListener(this);
-
-		// Insert missing begin/end tags
-		fCheckBoxInsertMissingTags = new Button(composite, SWT.CHECK);
-		fCheckBoxInsertMissingTags.setText(SSEUIPlugin.getResourceString("%Insert_missing_tags_UI_")); //$NON-NLS-1$ = "Insert missing tags"
-		fCheckBoxInsertMissingTags.addSelectionListener(this);
-
-		// Quote attribute values
-		fCheckBoxQuoteAttrValues = new Button(composite, SWT.CHECK);
-		fCheckBoxQuoteAttrValues.setText(SSEUIPlugin.getResourceString("%Quote_attribute_values_UI_")); //$NON-NLS-1$ = "Quote attribute values"
-		fCheckBoxQuoteAttrValues.addSelectionListener(this);
-
-		// Format source
-		fCheckBoxFormatSource = new Button(composite, SWT.CHECK);
-		fCheckBoxFormatSource.setText(SSEUIPlugin.getResourceString("%Format_source_UI_")); //$NON-NLS-1$ = "Format source"
-		fCheckBoxFormatSource.addSelectionListener(this);
-
-		// Convert EOL code
-		fCheckBoxConvertEOLCodes = new Button(composite, SWT.CHECK);
-		fCheckBoxConvertEOLCodes.setText(SSEUIPlugin.getResourceString("%Convert_EOL_codes_UI_")); //$NON-NLS-1$ = "Convert end-of-line codes"
-		fCheckBoxConvertEOLCodes.addSelectionListener(this);
-		Composite EOLCodes = new Composite(composite, SWT.NULL);
-		GridLayout hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		EOLCodes.setLayout(hLayout);
-		fRadioButtonConvertEOLWindows = new Button(EOLCodes, SWT.RADIO);
-		fRadioButtonConvertEOLWindows.setText(SSEUIPlugin.getResourceString("%EOL_Windows_UI")); //$NON-NLS-1$ = "Windows"
-		fRadioButtonConvertEOLWindows.addSelectionListener(this);
-		fRadioButtonConvertEOLUnix = new Button(EOLCodes, SWT.RADIO);
-		fRadioButtonConvertEOLUnix.setText(SSEUIPlugin.getResourceString("%EOL_Unix_UI")); //$NON-NLS-1$ = "Unix"
-		fRadioButtonConvertEOLUnix.addSelectionListener(this);
-		fRadioButtonConvertEOLMac = new Button(EOLCodes, SWT.RADIO);
-		fRadioButtonConvertEOLMac.setText(SSEUIPlugin.getResourceString("%EOL_Mac_UI")); //$NON-NLS-1$ = "Mac"
-		fRadioButtonConvertEOLMac.addSelectionListener(this);
-	}
-
-	protected void okPressed() {
-		storeOptions();
-
-		super.okPressed();
-	}
-
-	protected void initializeOptionsForHTML() {
-		int tagNameCase = getModelPreferences().getInt(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE);
-		if (tagNameCase == CommonModelPreferenceNames.UPPER)
-			fRadioButtonTagNameCaseUpper.setSelection(true);
-		else if (tagNameCase == CommonModelPreferenceNames.LOWER)
-			fRadioButtonTagNameCaseLower.setSelection(true);
-		else
-			fRadioButtonTagNameCaseAsis.setSelection(true);
-
-		int attrNameCase = getModelPreferences().getInt(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE);
-		if (attrNameCase == CommonModelPreferenceNames.UPPER)
-			fRadioButtonAttrNameCaseUpper.setSelection(true);
-		else if (attrNameCase == CommonModelPreferenceNames.LOWER)
-			fRadioButtonAttrNameCaseLower.setSelection(true);
-		else
-			fRadioButtonAttrNameCaseAsis.setSelection(true);
-	}
-
-	protected void initializeOptions() {
-		if (isHTMLType())
-			initializeOptionsForHTML();
-
-		fCheckBoxInsertRequiredAttrs.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.INSERT_REQUIRED_ATTRS));
-		fCheckBoxInsertMissingTags.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.INSERT_MISSING_TAGS));
-		fCheckBoxQuoteAttrValues.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.QUOTE_ATTR_VALUES));
-		fCheckBoxFormatSource.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.FORMAT_SOURCE));
-		fCheckBoxConvertEOLCodes.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.CONVERT_EOL_CODES));
-		if (fCheckBoxConvertEOLCodes.getSelection()) {
-			String EOLCode = getModelPreferences().getString(CommonModelPreferenceNames.CLEANUP_EOL_CODE);
-			if (EOLCode == CommonEncodingPreferenceNames.LF)
-				fRadioButtonConvertEOLUnix.setSelection(true);
-			else if (EOLCode == CommonEncodingPreferenceNames.CR)
-				fRadioButtonConvertEOLMac.setSelection(true);
-			else
-				fRadioButtonConvertEOLWindows.setSelection(true);
-		}
-		enableEOLCodeRadios(fCheckBoxConvertEOLCodes.getSelection());
-	}
-
-	protected void storeOptionsForHTML() {
-		if (fRadioButtonTagNameCaseUpper.getSelection())
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE, CommonModelPreferenceNames.UPPER);
-		else if (fRadioButtonTagNameCaseLower.getSelection())
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE, CommonModelPreferenceNames.LOWER);
-		else
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE, CommonModelPreferenceNames.ASIS);
-
-		if (fRadioButtonAttrNameCaseUpper.getSelection())
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE, CommonModelPreferenceNames.UPPER);
-		else if (fRadioButtonAttrNameCaseLower.getSelection())
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE, CommonModelPreferenceNames.LOWER);
-		else
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE, CommonModelPreferenceNames.ASIS);
-
-		// explicitly save plugin preferences so values are stored
-		HTMLCorePlugin.getDefault().savePluginPreferences();
-	}
-
-	protected void storeOptions() {
-		if (isHTMLType()) {
-			storeOptionsForHTML();
-			XMLCleanupPreferencesImpl.getInstance().setTagNameCase(getModelPreferences().getInt(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE));
-			XMLCleanupPreferencesImpl.getInstance().setAttrNameCase(getModelPreferences().getInt(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE));
-		}
-		else {
-			XMLCleanupPreferencesImpl.getInstance().setTagNameCase(CommonModelPreferenceNames.ASIS);
-			XMLCleanupPreferencesImpl.getInstance().setAttrNameCase(CommonModelPreferenceNames.ASIS);
-		}
-
-		getModelPreferences().setValue(CommonModelPreferenceNames.INSERT_REQUIRED_ATTRS, fCheckBoxInsertRequiredAttrs.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.INSERT_MISSING_TAGS, fCheckBoxInsertMissingTags.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.QUOTE_ATTR_VALUES, fCheckBoxQuoteAttrValues.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.FORMAT_SOURCE, fCheckBoxFormatSource.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.CONVERT_EOL_CODES, fCheckBoxConvertEOLCodes.getSelection());
-		XMLCleanupPreferencesImpl.getInstance().setInsertMissingTags(fCheckBoxInsertMissingTags.getSelection());
-		XMLCleanupPreferencesImpl.getInstance().setQuoteAttrValues(fCheckBoxQuoteAttrValues.getSelection());
-		XMLCleanupPreferencesImpl.getInstance().setFormatSource(fCheckBoxFormatSource.getSelection());
-		XMLCleanupPreferencesImpl.getInstance().setConvertEOLCodes(fCheckBoxConvertEOLCodes.getSelection());
-		if (fCheckBoxConvertEOLCodes.getSelection()) {
-			if (fRadioButtonConvertEOLUnix.getSelection()) {
-				getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.LF);
-				XMLCleanupPreferencesImpl.getInstance().setEOLCode(CommonEncodingPreferenceNames.LF);
-			}
-			else if (fRadioButtonConvertEOLMac.getSelection()) {
-				getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.CR);
-				XMLCleanupPreferencesImpl.getInstance().setEOLCode(CommonEncodingPreferenceNames.CR);
-			}
-			else {
-				getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.CRLF);
-				XMLCleanupPreferencesImpl.getInstance().setEOLCode(CommonEncodingPreferenceNames.CRLF);
-			}
-		}
-		
-		// explicitly save plugin preferences so values are stored
-		HTMLCorePlugin.getDefault().savePluginPreferences();
-	}
-
-	public void widgetDefaultSelected(SelectionEvent e) {
-		widgetSelected(e);
-	}
-
-	public void widgetSelected(SelectionEvent e) {
-		getButton(OK).setEnabled((fRadioButtonTagNameCaseLower != null && (fRadioButtonTagNameCaseLower.getSelection() || fRadioButtonTagNameCaseUpper.getSelection())) || (fRadioButtonAttrNameCaseLower != null && (fRadioButtonAttrNameCaseLower.getSelection() || fRadioButtonAttrNameCaseUpper.getSelection())) || fCheckBoxInsertMissingTags.getSelection() || fCheckBoxQuoteAttrValues.getSelection() || fCheckBoxFormatSource.getSelection() || fCheckBoxConvertEOLCodes.getSelection() || (fRadioButtonConvertEOLUnix != null && (fRadioButtonConvertEOLUnix.getSelection() || fRadioButtonConvertEOLMac.getSelection() || fRadioButtonConvertEOLWindows.getSelection())));
-		if (e.widget == fCheckBoxConvertEOLCodes)
-			enableEOLCodeRadios(fCheckBoxConvertEOLCodes.getSelection());
-	}
-
-	public void setModel(IStructuredModel model) {
-		fModel = model;
-	}
-
-	protected Preferences getModelPreferences() {
-		return HTMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	protected boolean isXMLType() {
-		boolean result = false;
-
-		if (fModel != null) {
-			IModelHandler modelHandler = fModel.getModelHandler();
-			if (modelHandler.getAssociatedContentTypeId().equals(ContentTypeIdForXML.ContentTypeID_XML))
-				result = true;
-		}
-
-		return result;
-	}
-
-	protected boolean isHTMLType() {
-		boolean result = true;
-
-		if (fModel != null) {
-			IModelHandler modelHandler = fModel.getModelHandler();
-			if (modelHandler.getAssociatedContentTypeId().equals(ContentTypeIdForHTML.ContentTypeID_HTML))
-				result = true;
-		}
-
-		return result;
-	}
-
-	protected void enableEOLCodeRadios(boolean enable) {
-		if ((fRadioButtonConvertEOLWindows != null) && (fRadioButtonConvertEOLUnix != null) && (fRadioButtonConvertEOLMac != null)) {
-			fRadioButtonConvertEOLWindows.setEnabled(enable);
-			fRadioButtonConvertEOLUnix.setEnabled(enable);
-			fRadioButtonConvertEOLMac.setEnabled(enable);
-
-			if (!fRadioButtonConvertEOLWindows.getSelection() && !fRadioButtonConvertEOLUnix.getSelection() && !fRadioButtonConvertEOLMac.getSelection())
-				fRadioButtonConvertEOLWindows.setSelection(true);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPlugin.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPlugin.java
deleted file mode 100644
index 1d76b3c..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPlugin.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal;
-
-import java.io.IOException;
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.text.templates.ContextTypeRegistry;
-import org.eclipse.jface.text.templates.persistence.TemplateStore;
-import org.eclipse.ui.editors.text.templates.ContributionContextTypeRegistry;
-import org.eclipse.ui.editors.text.templates.ContributionTemplateStore;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.html.ui.internal.preferences.HTMLUIPreferenceNames;
-import org.eclipse.wst.html.ui.internal.templates.TemplateContextTypeIdsHTML;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistryImpl;
-import org.eclipse.wst.sse.ui.registry.embedded.EmbeddedAdapterFactoryRegistryImpl;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class HTMLUIPlugin extends AbstractUIPlugin {
-	public final static String ID = "org.eclipse.wst.html.ui"; //$NON-NLS-1$
-
-	protected static HTMLUIPlugin instance = null;
-	// Resource bundle.
-	private ResourceBundle resourceBundle;
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$	
-
-	/**
-	 * The template store for the html editor.
-	 */
-	private TemplateStore fTemplateStore;
-
-	/**
-	 * The template context type registry for the html editor.
-	 */
-	private ContextTypeRegistry fContextTypeRegistry;
-
-	public HTMLUIPlugin() {
-		super();
-		instance = this;
-	}
-
-	public static HTMLUIPlugin getDefault() {
-		return instance;
-	}
-
-	public synchronized static HTMLUIPlugin getInstance() {
-		return instance;
-	}
-
-	public AdapterFactoryRegistry getAdapterFactoryRegistry() {
-		return AdapterFactoryRegistryImpl.getInstance();
-
-	}
-
-	public AdapterFactoryRegistry getEmbeddedAdapterFactoryRegistry() {
-		return EmbeddedAdapterFactoryRegistryImpl.getInstance();
-
-	}
-
-	/**
-	 * Returns the template store for the html editor templates.
-	 * 
-	 * @return the template store for the html editor templates
-	 */
-	public TemplateStore getTemplateStore() {
-		if (fTemplateStore == null) {
-			fTemplateStore = new ContributionTemplateStore(getTemplateContextRegistry(), getPreferenceStore(), HTMLUIPreferenceNames.TEMPLATES_KEY);
-
-			try {
-				fTemplateStore.load();
-			} catch (IOException e) {
-				Logger.logException(e);
-			}
-		}
-		return fTemplateStore;
-	}
-
-	/**
-	 * Returns the template context type registry for the html plugin.
-	 * 
-	 * @return the template context type registry for the html plugin
-	 */
-	public ContextTypeRegistry getTemplateContextRegistry() {
-		if (fContextTypeRegistry == null) {
-			ContributionContextTypeRegistry registry = new ContributionContextTypeRegistry();
-			registry.addContextType(TemplateContextTypeIdsHTML.ALL);
-			registry.addContextType(TemplateContextTypeIdsHTML.NEW);
-			registry.addContextType(TemplateContextTypeIdsHTML.TAG);
-			registry.addContextType(TemplateContextTypeIdsHTML.ATTRIBUTE);
-			registry.addContextType(TemplateContextTypeIdsHTML.ATTRIBUTE_VALUE);
-
-			fContextTypeRegistry = registry;
-		}
-
-		return fContextTypeRegistry;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle, or 'key' if not
-	 * found.
-	 */
-	public static String getResourceString(String value) {
-		String s = value.trim();
-		if (!s.startsWith(KEY_PREFIX, 0))
-			return s;
-		if (s.startsWith(KEY_DOUBLE_PREFIX, 0))
-			return s.substring(1);
-
-		int ix = s.indexOf(' ');
-		String key = ix == -1 ? s : s.substring(0, ix);
-
-		ResourceBundle bundle = getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key.substring(1)) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getResourceString(String key, Object[] args) {
-
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (IllegalArgumentException e) {
-			return getResourceString(key);
-		}
-
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		try {
-			if (resourceBundle == null)
-				resourceBundle = ResourceBundle.getBundle("org.eclipse.wst.html.ui.internal.HTMLUIPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPluginResources.properties b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPluginResources.properties
deleted file mode 100644
index dc1edc6..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/HTMLUIPluginResources.properties
+++ /dev/null
@@ -1,164 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-## The following line is a sample HTML document.  Please translate only the following parts:   
-## HTML Highlighting Preferences
-## we need a flaming logo
-Sample_HTML_doc=<!DOCTYPE HTML\n\tPUBLIC \"-//W3C/DTD/ HTML 4.01 Transitional//EN\"\n\t\"http://www.w3.org/TR/html4/loose.dtd\">\n<HTML>\n\t<HEAD>\n\t\t<META content=\"text/html\">\n\t\t<TITLE>HTML Highlighting Preferences</TITLE>\n\t</HEAD>\n<BODY>\n\t<!--\n\t\twe need a flaming logo!\n\t-->\n</BODY>\n</HTML>
-! XML Common UI 
-! Constants for strings
-
-NEW=New
-DELETE=Remove
-ADD_TEXT=Add Text
-ADD_CDATA_SECTION=Add CDATA Section
-ADD_COMMENT=Add Commen&t
-ADD_PROCESSING_INSTRUCTION=Add Processing Instruction
-
-_UI_MENU_ADD_AFTER=Add &After
-_UI_MENU_ADD_ATTRIBUTE=Add A&ttribute
-_UI_MENU_ADD_BEFORE=Add &Before
-_UI_MENU_ADD_CHILD=Add &Child
-_UI_MENU_REMOVE=Re&move
-_UI_MENU_REPLACE_WITH=Re&place With
-_UI_MENU_ADD_DOCTYPE=Add DOCTYPE...
-_UI_MENU_EDIT_DOCTYPE=Edit DOCTYPE...
-_UI_MENU_ADD_GRAMMAR_INFORMATION=Add Grammar Information
-_UI_MENU_VALIDATE_XML=Validate XML File
-_UI_LABEL_UNDO_ADD_DESCRIPTION=Add
-_UI_LABEL_UNDO_REPLACE_DESCRIPTION=Replace
-_UI_LABEL_EDIT_DOCTYPE=Edit DOCTYPE
-_UI_INFO_EXPAND_ALL=Expand All
-_UI_INFO_COLLAPSE_ALL=Collapse All
-
-_UI_MENU_ADD_DTD_INFORMATION=Add DTD Information...
-_UI_MENU_ADD_SCHEMA_INFORMATION=Add Schema Information...
-_UI_MENU_EDIT_SCHEMA_INFORMATION=Edit &Schema Information...
-_UI_MENU_EDIT_PROCESSING_INSTRUCTION=Edit Process&ing Instruction...
-
-_UI_MENU_ADD_DTD_INFORMATION_TITLE=Add DTD Information
-_UI_MENU_EDIT_PROCESSING_INSTRUCTION_TITLE=Edit Processing Instruction
-_UI_MENU_EDIT_SCHEMA_INFORMATION_TITLE=Edit Schema Information
-
-_UI_MENU_NEW_ATTRIBUTE=&New Attribute...
-_UI_MENU_NEW_ATTRIBUTE_TITLE=New Attribute
-_UI_MENU_EDIT_ATTRIBUTE=Edit Attribute...
-_UI_MENU_EDIT_ATTRIBUTE_TITLE=Edit Attribute
-_UI_MENU_NEW_ELEMENT=New &Element...
-_UI_MENU_NEW_ELEMENT_TITLE=New Element
-_UI_MENU_RENAME=R&ename
-_UI_MENU_RENAME_TITLE=Rename
-_UI_LABEL_ELEMENT_NAME=Element name:
-_UI_LABEL_LOADING_GRAMMAR=Loading grammar:
-
-_UI_MENU_ADD_COMMENT=Add Comment
-_UI_MENU_ADD_PROCESSING_INSTRUCTION=Add Processing Instruction
-_UI_MENU_ADD_CDATA_SECTION=Add CDATA Section
-_UI_MENU_ADD_PCDATA=Add #PCDATA;
-
-_UI_MENU_COMMENT=C&omment
-_UI_MENU_PROCESSING_INSTRUCTION=P&rocessing Instruction
-_UI_MENU_CDATA_SECTION=CDATA Section
-_UI_MENU_PCDATA=#PC&DATA;
-
-_UI_MENU_ADD=Add
-
-_UI_COMMENT_VALUE=comment
-_UI_PI_TARGET_VALUE=target
-_UI_PI_DATA_VALUE=data
-_UI_LABEL_ROOT_ELEMENT_VALUE=RootElement
-
-_UI_LABEL_TARGET_COLON=Target:
-_UI_LABEL_DATA_COLON=Data:
-_UI_LABEL_ROOT_ELEMENT_NAME_COLON=Root element name:
-_UI_LABEL_PUBLIC_ID_COLON=Public ID:
-_UI_LABEL_SYSTEM_ID_COLON=System ID:
-_UI_LABEL_BROWSE=Browse...
-_UI_LABEL_SELECT_XML_CATALOG_ENTRY=Select XML Catalog Entry
-_UI_LABEL_SPECIFY_SYSTEM_ID=Specify System ID
-_UI_LABEL_SELECT_FILE=Select File
-
-_UI_LABEL_KEY=Key
-_UI_LABEL_URI=URI:
-_UI_LABEL_XML_CATALOG_COLON=XML Catalog
-_UI_LABEL_NAMESPACE_NAME=Namespace Name
-_UI_LABEL_LOCATION_HINT=Location Hint
-_UI_LABEL_PREFIX=Prefix
-_UI_LABEL_NAMESPACE_NAME_COLON=Namespace Name:
-_UI_LABEL_LOCATION_HINT_COLON=Location Hint:
-_UI_LABEL_PREFIX_COLON=Prefix:
-_UI_NO_NAMESPACE_NAME=<no namespace name>
-_UI_NO_PREFIX=<no prefix>
-
-_UI_LABEL_XML_SCHEMA_INFORMATION=XML Schema Information
-
-_UI_LABEL_NAME_COLON=Name:
-_UI_LABEL_VALUE_COLON=Value:
-
-_UI_BUTTON_DELETE=Delete
-_UI_BUTTON_NEW=New...
-_UI_BUTTON_EDIT=Edit...
-
-_UI_LABEL_NEW_NAMESPACE_INFORMATION=New Namespace Information
-_UI_LABEL_EDIT_NAMESPACE_INFORMATION=Edit Namespace Information
-
-!
-! Assign links to an XML file
-!
-_UI_WORK_BENCH=Workbench Files...
-_UI_FILE_SYSTEM=Import Files...
-_UI_ASSIGN_XSL=Assign An XSL Stylesheet To The XML File
-_UI_ASSIGN_DTD=Assign A DTD file To The XML File
-_UI_ASSIGN_XSD=Assign An XML schema To The XML File
-_UI_SELECT_XSL_TITLE=Select an XSL File
-_UI_SELECT_XSL_DESC=Select an XSL file from the workbench.
-
-_UI_ASSIGN=Assign
-_UI_XSD=XML Schema...
-_UI_DTD=DTD...
-_UI_XSL=XSL Stylesheet...
-
-! XMLValidator.java
-_UI_XML_VALIDATOR=XML Validator
-! SelectFileOrXMLCatalogIdPanel.java
-
-_UI_RADIO_BUTTON_SELECT_FROM_WORKSPACE=Select file from workbench
-_UI_RADIO_BUTTON_SELECT_FROM_CATALOG=Select XML Catalog entry
-
-_UI_WARNING_TITLE_ROOT_ELEMENT_REQUIRED=Root Element Required
-_UI_WARNING_DOCUMENT_REQUIRES_ROOT=The document requires a root element in order to add schema information.
-_UI_WARNING_MORE_THAN_ONE_NS_WITH_NAME=More than one namespace has been specified with the namespace name :
-_UI_WARNING_MORE_THAN_ONE_NS_WITHOUT_NAME=More than one schema has been specified without a namespace name
-_UI_WARNING_MORE_THAN_ONE_NS_WITHOUT_PREFIX=More than one namespace has been specificed without a prefix
-_UI_WARNING_MORE_THAN_ONE_NS_WITH_PREFIX=More than one namespace has been specified with the prefix :
-_UI_WARNING_SCHEMA_CAN_NOT_BE_LOCATED=The specified schema can not be located :
-_UI_WARNING_LOCATION_HINT_NOT_SPECIFIED=A location hint has not been specified for the namespace with name
-_UI_WARNING_NAMESPACE_NAME_NOT_SPECIFIED=A name must be specified for the namespace with prefix :
-_UI_WARNING_PREFIX_NOT_SPECIFIED=A prefix must be specified for the namespace named :
-_UI_WARNING_ROOT_ELEMENT_MUST_BE_SPECIFIED=A root element name must be specified.
-_UI_WARNING_SYSTEM_ID_MUST_BE_SPECIFIED=A system ID must be specified.
-
-_ERROR_XML_ATTRIBUTE_ALREADY_EXISTS=The element already has an attribute with this name.
-
-#
-TemplateContextTypeHTMLTag.0=HTML Tags
-TemplateContextTypeHTML.0=All HTML
-TemplateContextTypeHTMLAttributeValue.0=HTML Attribute Values
-TemplateContextTypeHTMLAttribute.0=HTML Attributes
-
-HTMLFilesPreferencePage.0=Loading files...
-HTMLFilesPreferencePage.1=Add this suffix (if not specified):
-HTMLFilesPreferencePage.2=Insert DOCTYPE declaration
-HTMLFilesPreferencePage.3=Insert GENERATOR with META tag
-#
-_UI_WIZARD_NEW_TITLE = New HTML Page
-_UI_WIZARD_NEW_HEADING = HTML Page
-_UI_WIZARD_NEW_DESCRIPTION = Create a new HTML Page.
-_ERROR_FILENAME_MUST_END_HTML = The file name must end in .html or .xhtml
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/Logger.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/Logger.java
deleted file mode 100644
index 0b872f0..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/Logger.java
+++ /dev/null
@@ -1,160 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.html.ui.internal;
-
-
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-
-/**
- * Small convenience class to log messages to plugin's log file and also, if
- * desired, the console. This class should only be used by classes in this
- * plugin. Other plugins should make their own copy, with appropriate ID.
- */
-public class Logger {
-	private static final String PLUGIN_ID = "org.eclipse.wst.html.ui"; //$NON-NLS-1$
-	
-	public static final int ERROR = IStatus.ERROR; // 4
-	public static final int ERROR_DEBUG = 200 + ERROR;
-	public static final int INFO = IStatus.INFO; // 1
-	public static final int INFO_DEBUG = 200 + INFO;
-
-	public static final int OK = IStatus.OK; // 0
-
-	public static final int OK_DEBUG = 200 + OK;
-
-	private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
-	public static final int WARNING = IStatus.WARNING; // 2
-	public static final int WARNING_DEBUG = 200 + WARNING;
-
-	/**
-	 * Adds message to log.
-	 * 
-	 * @param level
-	 *            severity level of the message (OK, INFO, WARNING, ERROR,
-	 *            OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
-	 * @param message
-	 *            text to add to the log
-	 * @param exception
-	 *            exception thrown
-	 */
-	protected static void _log(int level, String message, Throwable exception) {
-		if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
-			if (!isDebugging())
-				return;
-		}
-
-		int severity = IStatus.OK;
-		switch (level) {
-			case INFO_DEBUG :
-			case INFO :
-				severity = IStatus.INFO;
-				break;
-			case WARNING_DEBUG :
-			case WARNING :
-				severity = IStatus.WARNING;
-				break;
-			case ERROR_DEBUG :
-			case ERROR :
-				severity = IStatus.ERROR;
-		}
-		message = (message != null) ? message : "null"; //$NON-NLS-1$
-		Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null) 
-			Platform.getLog(bundle).log(statusObj);
-	}
-
-	/**
-	 * Prints message to log if category matches /debug/tracefilter option.
-	 * 
-	 * @param message
-	 *            text to print
-	 * @param category
-	 *            category of the message, to be compared with
-	 *            /debug/tracefilter
-	 */
-	protected static void _trace(String category, String message, Throwable exception) {
-		if (isTracing(category)) {
-			message = (message != null) ? message : "null"; //$NON-NLS-1$
-			Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
-			Bundle bundle = Platform.getBundle(PLUGIN_ID);
-			if (bundle != null) 
-				Platform.getLog(bundle).log(statusObj);
-		}
-	}
-
-	/**
-	 * @return true if the platform is debugging
-	 */
-	public static boolean isDebugging() {
-		return Platform.inDebugMode();
-	}
-
-	/**
-	 * Determines if currently tracing a category
-	 * 
-	 * @param category
-	 * @return true if tracing category, false otherwise
-	 */
-	public static boolean isTracing(String category) {
-		if (!isDebugging())
-			return false;
-
-		String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
-		if (traceFilter != null) {
-			StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens()) {
-				String cat = tokenizer.nextToken().trim();
-				if (category.equals(cat)) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	public static void log(int level, String message) {
-		_log(level, message, null);
-	}
-
-	public static void log(int level, String message, Throwable exception) {
-		_log(level, message, exception);
-	}
-
-	public static void logException(String message, Throwable exception) {
-		_log(ERROR, message, exception);
-	}
-
-	public static void logException(Throwable exception) {
-		_log(ERROR, exception.getMessage(), exception);
-	}
-
-	public static void trace(String category, String message) {
-		_trace(category, message, null);
-	}
-
-	public static void traceException(String category, String message, Throwable exception) {
-		_trace(category, message, exception);
-	}
-
-	public static void traceException(String category, Throwable exception) {
-		_trace(category, exception.getMessage(), exception);
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/SharedHTMLEditorPluginImageHelper.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/SharedHTMLEditorPluginImageHelper.java
deleted file mode 100644
index 68dc842..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/SharedHTMLEditorPluginImageHelper.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.html.ui.internal.editor.HTMLEditorPluginImageHelper;
-import org.eclipse.wst.html.ui.internal.editor.HTMLEditorPluginImages;
-
-
-public class SharedHTMLEditorPluginImageHelper {
-	public static final String IMG_OBJ_TABLE = HTMLEditorPluginImages.IMG_OBJ_TABLE;
-	public static final String IMG_OBJ_TAG_ANCHOR = HTMLEditorPluginImages.IMG_OBJ_TAG_ANCHOR;
-	public static final String IMG_OBJ_TAG_BODY = HTMLEditorPluginImages.IMG_OBJ_TAG_BODY;
-	public static final String IMG_OBJ_TAG_BUTTON = HTMLEditorPluginImages.IMG_OBJ_TAG_BUTTON;
-	public static final String IMG_OBJ_TAG_FONT = HTMLEditorPluginImages.IMG_OBJ_TAG_FONT;
-	public static final String IMG_OBJ_TAG_FORM = HTMLEditorPluginImages.IMG_OBJ_TAG_FORM;
-	public static final String IMG_OBJ_TAG_HTML = HTMLEditorPluginImages.IMG_OBJ_TAG_HTML;
-	public static final String IMG_OBJ_TAG_IMAGE_MAP = HTMLEditorPluginImages.IMG_OBJ_TAG_IMAGE_MAP;
-	public static final String IMG_OBJ_TAG_IMAGE = HTMLEditorPluginImages.IMG_OBJ_TAG_IMAGE;
-	public static final String IMG_OBJ_TAG_JSP = HTMLEditorPluginImages.IMG_OBJ_TAG_JSP;
-	public static final String IMG_OBJ_TAG_TITLE = HTMLEditorPluginImages.IMG_OBJ_TAG_TITLE;
-	public static final String IMG_OBJ_TAG = HTMLEditorPluginImages.IMG_OBJ_TAG;
-	
-	/**
-	 * Retrieves the specified image from the html source editor plugin's image registry.
-	 * Note: The returned <code>Image</code> is managed by the workbench; clients
-	 * must <b>not</b> dispose of the returned image.
-	 *
-	 * @param symbolicName the symbolic name of the image; there are constants
-	 * declared in this class for build-in images that come with the html source editor
-	 * @return the image, or <code>null</code> if not found
-	 */
-	public static Image getImage(String symbolicName) {
-		return HTMLEditorPluginImageHelper.getInstance().getImage(symbolicName);
-	}
-	
-	/**
-	 * Retrieves the image descriptor for specified image from the html source editor plugin's
-	 * image registry. Unlike <code>Image</code>s, image descriptors themselves do
-	 * not need to be disposed.
-	 *
-	 * @param symbolicName the symbolic name of the image; there are constants
-	 * declared in this interface for build-in images that come with the html source editor
-	 * @return the image descriptor, or <code>null</code> if not found
-	 */
-	public static ImageDescriptor getImageDescriptor(String symbolicName) {
-		return HTMLEditorPluginImageHelper.getInstance().getImageDescriptor(symbolicName);
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/CustomTemplateProposal.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/CustomTemplateProposal.java
deleted file mode 100644
index 94e903f..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/CustomTemplateProposal.java
+++ /dev/null
@@ -1,40 +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.html.ui.internal.contentassist;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.jface.text.templates.TemplateProposal;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceCompletionProposal;
-
-/**
- * Purpose of this class is to make the additional proposal info into content
- * fit for an HTML viewer (by escaping characters)
- */
-class CustomTemplateProposal extends TemplateProposal implements IRelevanceCompletionProposal {
-	// copies of this class exist in:
-	// org.eclipse.jst.jsp.ui.internal.contentassist
-	// org.eclipse.wst.html.ui.internal.contentassist
-	// org.eclipse.wst.xml.ui.internal.contentassist
-
-	public CustomTemplateProposal(Template template, TemplateContext context, IRegion region, Image image, int relevance) {
-		super(template, context, region, image, relevance);
-	}
-
-	public String getAdditionalProposalInfo() {
-		String additionalInfo = super.getAdditionalProposalInfo();
-		return StringUtils.convertToHTMLContent(additionalInfo);
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLContentAssistProcessor.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLContentAssistProcessor.java
deleted file mode 100644
index 6dd08b7..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLContentAssistProcessor.java
+++ /dev/null
@@ -1,478 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.contentassist;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.wst.css.ui.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.html.core.HTML40Namespace;
-import org.eclipse.wst.html.core.HTMLCMProperties;
-import org.eclipse.wst.html.core.contentmodel.HTMLCMDocument;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.editor.HTMLEditorPluginImageHelper;
-import org.eclipse.wst.html.ui.internal.editor.HTMLEditorPluginImages;
-import org.eclipse.wst.html.ui.internal.preferences.HTMLUIPreferenceNames;
-import org.eclipse.wst.html.ui.internal.templates.TemplateContextTypeIdsHTML;
-import org.eclipse.wst.javascript.common.ui.internal.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.contentassist.AbstractContentAssistProcessor;
-import org.eclipse.wst.xml.ui.contentassist.ContentAssistRequest;
-import org.eclipse.wst.xml.ui.contentassist.XMLContentModelGenerator;
-import org.eclipse.wst.xml.ui.contentassist.XMLRelevanceConstants;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class HTMLContentAssistProcessor extends AbstractContentAssistProcessor implements IPropertyChangeListener {
-	private IAdapterFactory factoryForCSS = null;
-	protected IPreferenceStore fPreferenceStore = null;
-	protected boolean isXHTML = false;
-	protected IResource fResource = null;
-	private HTMLTemplateCompletionProcessor fTemplateProcessor = null;
-	private List fTemplateContexts = new ArrayList();
-
-	public HTMLContentAssistProcessor() {
-
-		super();
-	}
-
-	protected void addAttributeNameProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsHTML.ATTRIBUTE);
-		super.addAttributeNameProposals(contentAssistRequest);
-	}
-
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsHTML.ATTRIBUTE_VALUE);
-		super.addAttributeValueProposals(contentAssistRequest);
-	}
-
-	/**
-	 * @see AbstractContentAssistProcessor#addXMLProposal(ContentAssistRequest)
-	 */
-	protected void addXMLProposal(ContentAssistRequest contentAssistRequest) {
-		if (isXHTML)
-			super.addXMLProposal(contentAssistRequest);
-	}
-
-	/**
-	 * Add the proposals for a completely empty document
-	 */
-	protected void addEmptyDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsHTML.NEW);
-	}
-
-	protected void addPCDATAProposal(String nodeName, ContentAssistRequest contentAssistRequest) {
-		if (isXHTML)
-			super.addPCDATAProposal(nodeName, contentAssistRequest);
-	}
-
-	protected void addStartDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		if (isXHTML)
-			addEmptyDocumentProposals(contentAssistRequest);
-	}
-
-	protected void addTagInsertionProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsHTML.TAG);
-		super.addTagInsertionProposals(contentAssistRequest, childPosition);
-	}
-
-	/**
-	 * Adds templates to the list of proposals
-	 * 
-	 * @param contentAssistRequest
-	 * @param context
-	 */
-	private void addTemplates(ContentAssistRequest contentAssistRequest, String context) {
-		if (contentAssistRequest == null)
-			return;
-
-		// if already adding template proposals for a certain context type, do
-		// not add again
-		if (!fTemplateContexts.contains(context)) {
-			fTemplateContexts.add(context);
-			boolean useProposalList = !contentAssistRequest.shouldSeparate();
-
-			if (getTemplateCompletionProcessor() != null) {
-				getTemplateCompletionProcessor().setContextType(context);
-				ICompletionProposal[] proposals = getTemplateCompletionProcessor().computeCompletionProposals(fTextViewer, contentAssistRequest.getReplacementBeginPosition());
-				for (int i = 0; i < proposals.length; ++i) {
-					if (useProposalList)
-						contentAssistRequest.addProposal(proposals[i]);
-					else
-						contentAssistRequest.addMacro(proposals[i]);
-				}
-			}
-		}
-	}
-
-	protected boolean beginsWith(String aString, String prefix) {
-		if (aString == null || prefix == null || prefix.length() == 0)
-			return true;
-		int minimumLength = Math.min(prefix.length(), aString.length());
-		String beginning = aString.substring(0, minimumLength);
-		return beginning.equalsIgnoreCase(prefix);
-	}
-
-	protected ContentAssistRequest computeCompletionProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode treeNode, XMLNode xmlnode) {
-		ContentAssistRequest request = super.computeCompletionProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-		addTemplates(request, TemplateContextTypeIdsHTML.ALL);
-		return request;
-	}
-
-	/**
-	 * Return a list of proposed code completions based on the specified
-	 * location within the document that corresponds to the current cursor
-	 * position within the text-editor control.
-	 * 
-	 * @param documentPosition
-	 *            a location within the document
-	 * @return an array of code-assist items
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer textViewer, int documentPosition) {
-		fTemplateContexts.clear();
-
-		IndexedRegion treeNode = ContentAssistUtils.getNodeAt((StructuredTextViewer) textViewer, documentPosition);
-		XMLNode node = (XMLNode) treeNode;
-		setErrorMessage(null);
-
-		// check if it's in a comment node
-		IStructuredDocument structuredDocument = (IStructuredDocument) textViewer.getDocument();
-		IStructuredDocumentRegion fn = structuredDocument.getRegionAtCharacterOffset(documentPosition);
-		if (fn != null && fn.getType() == XMLRegionContext.XML_COMMENT_TEXT && documentPosition != fn.getStartOffset()) {
-			return new ICompletionProposal[0];
-		}
-
-		// CMVC 242695
-		// if it's a </script> tag, bounce back to JS ca processor...
-		if (fn != null && fn.getType() == XMLRegionContext.XML_TAG_NAME && documentPosition == fn.getStartOffset()) {
-			ITextRegionList v = fn.getRegions();
-			if (v.size() > 1) {
-				// determine that it's a close tag
-				if ((v.get(0)).getType() == XMLRegionContext.XML_END_TAG_OPEN) {
-					Iterator it = v.iterator();
-					ITextRegion region = null;
-					// search for script tag name
-					while (it.hasNext()) {
-						region = (ITextRegion) it.next();
-						if (fn.getText(region).equalsIgnoreCase("script")) { //$NON-NLS-1$
-							// return JS content assist...
-							JavaScriptContentAssistProcessor jsProcessor = new JavaScriptContentAssistProcessor();
-							return jsProcessor.computeCompletionProposals(textViewer, documentPosition);
-						}
-					}
-				}
-			}
-		}
-
-		isXHTML = getXHTML(node);
-
-		fGenerator = null; // force reload of content generator
-
-		// handle blank HTML document case
-		if (treeNode == null || isViewerEmpty(textViewer)) {
-			// cursor is at the EOF
-			ICompletionProposal htmlTagProposal = getHTMLTagPropsosal((StructuredTextViewer) textViewer, documentPosition);
-			ICompletionProposal[] superResults = super.computeCompletionProposals(textViewer, documentPosition);
-			if (superResults != null && superResults.length > 0 && htmlTagProposal != null) {
-				ICompletionProposal[] blankHTMLDocResults = new ICompletionProposal[superResults.length + 1];
-				blankHTMLDocResults[0] = htmlTagProposal;
-				System.arraycopy(superResults, 0, blankHTMLDocResults, 1, superResults.length);
-				return blankHTMLDocResults;
-			}
-		}
-
-		if (node != null && node.getNodeType() == Node.ELEMENT_NODE) {
-
-			// check embedded CSS proposals at the beginning of the STYLE end
-			// tag
-			Element element = (Element) node;
-			String tagName = element.getTagName();
-			if (tagName != null && tagName.equalsIgnoreCase(HTML40Namespace.ATTR_NAME_STYLE)) {//$NON-NLS-1$
-				IStructuredDocumentRegion endStructuredDocumentRegion = node.getEndStructuredDocumentRegion();
-				if (endStructuredDocumentRegion != null && endStructuredDocumentRegion.getStartOffset() == documentPosition) {
-					IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();
-					if (startStructuredDocumentRegion != null) {
-						int offset = startStructuredDocumentRegion.getEndOffset();
-						int pos = documentPosition - offset;
-						ICompletionProposal[] proposals = getCSSProposals(textViewer, pos, node, offset, (char) 0);
-						if (proposals != null)
-							return proposals;
-					}
-				}
-			}
-
-			// check inline CSS proposals
-			// need to find attr region from sd region
-			IStructuredDocumentRegion sdRegion = ContentAssistUtils.getStructuredDocumentRegion((StructuredTextViewer) textViewer, documentPosition);
-			Iterator regions = sdRegion.getRegions().iterator();
-			ITextRegion styleNameRegion = null;
-			ITextRegion styleValueRegion = null;
-			while (regions.hasNext()) {
-				styleNameRegion = (ITextRegion) regions.next();
-				if (styleNameRegion.getType().equals(XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) && sdRegion.getText(styleNameRegion).equalsIgnoreCase(HTML40Namespace.ATTR_NAME_STYLE)) { //$NON-NLS-1$
-					// the next region should be "="
-					if (regions.hasNext()) {
-						regions.next(); // skip the "="
-						// next region should be attr value region
-						if (regions.hasNext()) {
-							styleValueRegion = (ITextRegion) regions.next();
-							break;
-						}
-					}
-				}
-			}
-
-			if (styleValueRegion != null) {
-				int offset = sdRegion.getStartOffset(styleValueRegion);
-				int end = sdRegion.getTextEndOffset(styleValueRegion);
-				if (documentPosition >= offset && documentPosition <= end) {
-					boolean askCSS = true;
-					char quote = (char) 0;
-					String text = sdRegion.getText(styleValueRegion);
-					int length = (text != null ? text.length() : 0);
-					if (length > 0) {
-						char firstChar = text.charAt(0);
-						if (firstChar == '"' || firstChar == '\'') {
-							if (documentPosition == offset) {
-								// before quote
-								askCSS = false;
-							} else {
-								offset++;
-								quote = firstChar;
-							}
-						}
-						if (documentPosition == end) {
-							if (length > 1 && text.charAt(length - 1) == quote) {
-								// after quote
-								askCSS = false;
-							}
-						}
-					}
-					if (askCSS) {
-						int pos = documentPosition - offset;
-						ICompletionProposal[] proposals = getCSSProposals(textViewer, pos, node, offset, quote);
-						if (proposals != null)
-							return proposals;
-					}
-				}
-			}
-		}
-
-		return super.computeCompletionProposals(textViewer, documentPosition);
-	}
-
-	/**
-	 * Returns true if there is no text or it's all white space, otherwise
-	 * returns false
-	 * 
-	 * @param treeNode
-	 * @param textViewer
-	 * @return boolean
-	 */
-	private boolean isViewerEmpty(ITextViewer textViewer) {
-		boolean isEmpty = false;
-		String text = textViewer.getTextWidget().getText();
-		if (text == null || (text != null && text.trim().equals(""))) //$NON-NLS-1$
-			isEmpty = true;
-		return isEmpty;
-	}
-
-	/**
-	 * @return ICompletionProposal
-	 */
-	private ICompletionProposal getHTMLTagPropsosal(StructuredTextViewer viewer, int documentPosition) {
-		IModelManager mm = StructuredModelManager.getModelManager();
-		IStructuredModel model = null;
-		try {
-			if (mm != null)
-				model = mm.getExistingModelForRead(viewer.getDocument());
-
-			XMLDocument doc = ((XMLModel) model).getDocument();
-
-			ModelQuery mq = ModelQueryUtil.getModelQuery(doc);
-			// XHTML requires lowercase tagname for lookup
-			CMElementDeclaration htmlDecl = (CMElementDeclaration) mq.getCorrespondingCMDocument(doc).getElements().getNamedItem(HTML40Namespace.ElementName.HTML.toLowerCase());
-			if (htmlDecl != null) {
-				StringBuffer proposedTextBuffer = new StringBuffer();
-				getContentGenerator().generateTag(doc, htmlDecl, proposedTextBuffer);
-
-				String proposedText = proposedTextBuffer.toString();
-				String requiredName = getContentGenerator().getRequiredName(doc, htmlDecl);
-
-				CustomCompletionProposal proposal = new CustomCompletionProposal(proposedText, documentPosition, // start
-							// pos
-							0, // replace length
-							requiredName.length() + 2, // cursor position
-							// after (relavtive to
-							// start)
-							HTMLEditorPluginImageHelper.getInstance().getImage(HTMLEditorPluginImages.IMG_OBJ_TAG_GENERIC), requiredName, null, null, XMLRelevanceConstants.R_TAG_NAME);
-				return proposal;
-			}
-		} finally {
-			if (model != null)
-				model.releaseFromRead();
-		}
-		return null;
-	}
-
-	/**
-	 * @see AbstractContentAssistProcessor#getContentGenerator()
-	 */
-	public XMLContentModelGenerator getContentGenerator() {
-		if (fGenerator == null) {
-			if (isXHTML)
-				fGenerator = XHTMLMinimalContentModelGenerator.getInstance();
-			else
-				fGenerator = HTMLMinimalContentModelGenerator.getInstance();
-		}
-		return fGenerator;
-	}
-
-	protected ICompletionProposal[] getCSSProposals(ITextViewer viewer, int pos, XMLNode element, int offset, char quote) {
-
-		CSSContentAssistProcessor cssProcessor = new CSSContentAssistProcessor();
-		cssProcessor.setDocumentOffset(offset);
-		cssProcessor.setQuoteCharOfStyleAttribute(quote);
-
-		return cssProcessor.computeCompletionProposals(viewer, pos);
-	}
-
-	protected String getEmptyTagCloseString() {
-		if (isXHTML)
-			return " />"; //$NON-NLS-1$
-		return ">"; //$NON-NLS-1$
-	}
-
-	private HTMLTemplateCompletionProcessor getTemplateCompletionProcessor() {
-		if (fTemplateProcessor == null) {
-			fTemplateProcessor = new HTMLTemplateCompletionProcessor();
-		}
-		return fTemplateProcessor;
-	}
-
-	/**
-	 * Determine if this Document is an XHTML Document. Oprates solely off of
-	 * the Document Type declaration
-	 */
-	protected boolean getXHTML(Node node) {
-		if (node == null)
-			return false;
-
-		Document doc = null;
-		if (node.getNodeType() != Node.DOCUMENT_NODE)
-			doc = node.getOwnerDocument();
-		else
-			doc = ((Document) node);
-
-		if (doc instanceof XMLDocument)
-			return ((XMLDocument) doc).isXMLType();
-
-
-		if (doc instanceof INodeNotifier) {
-			ModelQueryAdapter adapter = (ModelQueryAdapter) ((INodeNotifier) doc).getAdapterFor(ModelQueryAdapter.class);
-			CMDocument cmdoc = null;
-			if (adapter != null && adapter.getModelQuery() != null)
-				cmdoc = adapter.getModelQuery().getCorrespondingCMDocument(doc);
-			if (cmdoc != null) {
-				// treat as XHTML unless we've got the in-code HTML content
-				// model
-				if (cmdoc instanceof HTMLCMDocument)
-					return false;
-				if (cmdoc.supports(HTMLCMProperties.IS_XHTML))
-					return Boolean.TRUE.equals(cmdoc.getProperty(HTMLCMProperties.IS_XHTML));
-			}
-		}
-		// this should never be reached
-		DocumentType docType = doc.getDoctype();
-		return docType != null && docType.getPublicId() != null && docType.getPublicId().indexOf("-//W3C//DTD XHTML ") == 0; //$NON-NLS-1$
-	}
-
-	protected void init() {
-		getPreferenceStore().addPropertyChangeListener(this);
-		reinit();
-	}
-
-	protected void reinit() {
-		String key = HTMLUIPreferenceNames.AUTO_PROPOSE;
-		boolean doAuto = getPreferenceStore().getBoolean(key);
-		if (doAuto) {
-			key = HTMLUIPreferenceNames.AUTO_PROPOSE_CODE;
-			completionProposalAutoActivationCharacters = getPreferenceStore().getString(key).toCharArray();
-		} else {
-			completionProposalAutoActivationCharacters = null;
-		}
-	}
-
-	public void release() {
-		if (factoryForCSS != null) {
-			factoryForCSS.release();
-		}
-		getPreferenceStore().removePropertyChangeListener(this);
-		super.release();
-	}
-
-	protected boolean stringsEqual(String a, String b) {
-		return a.equalsIgnoreCase(b);
-	}
-
-	public void propertyChange(PropertyChangeEvent event) {
-		String property = event.getProperty();
-
-		if (property.compareTo(HTMLUIPreferenceNames.AUTO_PROPOSE) == 0 || property.compareTo(HTMLUIPreferenceNames.AUTO_PROPOSE_CODE) == 0) {
-			reinit();
-		}
-	}
-
-	protected IPreferenceStore getPreferenceStore() {
-		if (fPreferenceStore == null)
-			fPreferenceStore = HTMLUIPlugin.getDefault().getPreferenceStore();
-
-		return fPreferenceStore;
-	}
-
-	/**
-	 * @see com.ibm.sed.edit.adapters.ExtendedContentAssistAdapter#computeCompletionProposals(ITextViewer,
-	 *      int, IndexedRegion, ITextRegion)
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int documentPosition, IndexedRegion indexedNode, ITextRegion region) {
-		return computeCompletionProposals(viewer, documentPosition);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLMinimalContentModelGenerator.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLMinimalContentModelGenerator.java
deleted file mode 100644
index 443c161..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLMinimalContentModelGenerator.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.contentassist;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.html.core.HTMLCMProperties;
-import org.eclipse.wst.html.core.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.ui.contentassist.XMLContentModelGenerator;
-import org.w3c.dom.Node;
-
-public class HTMLMinimalContentModelGenerator extends XMLContentModelGenerator {
-
-	private static HTMLMinimalContentModelGenerator instance = null;
-	protected int fTagCase;
-	protected int fAttrCase;
-
-	/**
-	 * HTMLMinimalContentModelGenerator constructor comment.
-	 */
-	private HTMLMinimalContentModelGenerator() {
-		super();
-	}
-
-	private void init() {
-		//IPreferenceStore prefs = CommonPreferencesPlugin.getDefault().getPreferenceStore(ContentType.ContentTypeID_HTML);
-		Preferences prefs = HTMLCorePlugin.getDefault().getPluginPreferences();
-		fTagCase = prefs.getInt(CommonModelPreferenceNames.TAG_NAME_CASE);
-		fAttrCase = prefs.getInt(CommonModelPreferenceNames.ATTR_NAME_CASE);
-	}
-
-	protected void generateEndTag(String tagName, Node parentNode, CMElementDeclaration elementDecl, StringBuffer buffer) {
-		if (elementDecl == null)
-			return;
-		if (elementDecl instanceof HTMLElementDeclaration) {
-			if (((Boolean) elementDecl.getProperty(HTMLCMProperties.IS_JSP)).booleanValue()) {
-				if (elementDecl.getContentType() == CMElementDeclaration.EMPTY)
-					return;
-			}
-			else {
-				String ommission = (String) elementDecl.getProperty(HTMLCMProperties.OMIT_TYPE);
-				if (ommission.equals(HTMLCMProperties.Values.OMIT_END) || ommission.equals(HTMLCMProperties.Values.OMIT_END_DEFAULT) || ommission.equals(HTMLCMProperties.Values.OMIT_END_MUST)) {
-					return;
-				}
-			}
-		}
-
-		if (elementDecl.getContentType() == CMElementDeclaration.EMPTY)
-			return;
-		buffer.append("</" + tagName + ">"); //$NON-NLS-2$//$NON-NLS-1$
-		return;
-	}
-
-	private boolean shouldIgnoreCase(CMNode cmnode) {
-		if (!cmnode.supports(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return false;
-		return ((Boolean) cmnode.getProperty(HTMLCMProperties.SHOULD_IGNORE_CASE)).booleanValue();
-	}
-
-	public String getRequiredName(Node ownerNode, CMNode cmnode) {
-		String name = super.getRequiredName(ownerNode, cmnode);
-		// don't change the case unless we're certain it is meaningless
-		if (shouldIgnoreCase(cmnode)) {
-			int caseVal = -1;
-			if (cmnode.getNodeType() == CMNode.ELEMENT_DECLARATION)
-				caseVal = fTagCase;
-			else if (cmnode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION)
-				caseVal = fAttrCase;
-			switch (caseVal) {
-				case CommonModelPreferenceNames.LOWER :
-					{
-						name = name.toLowerCase();
-					}
-					break;
-				case CommonModelPreferenceNames.UPPER :
-					{
-						name = name.toUpperCase();
-					}
-					break;
-			}
-		}
-		return name;
-	}
-
-	public String getStartTagClose(Node parentNode, CMElementDeclaration elementDecl) {
-		String other = getOtherClose(parentNode);
-		if (other != null)
-			return other;
-		if (elementDecl == null)
-			return ">"; //$NON-NLS-1$
-		if (elementDecl instanceof HTMLElementDeclaration) {
-			if (((Boolean) elementDecl.getProperty(HTMLCMProperties.IS_JSP)).booleanValue()) {
-				if (elementDecl.getContentType() == CMElementDeclaration.EMPTY)
-					return "/>"; //$NON-NLS-1$
-			}
-			else {
-				String ommission = (String) elementDecl.getProperty(HTMLCMProperties.OMIT_TYPE);
-				if (ommission.equals(HTMLCMProperties.Values.OMIT_END) || ommission.equals(HTMLCMProperties.Values.OMIT_END_DEFAULT) || ommission.equals(HTMLCMProperties.Values.OMIT_END_MUST)) {
-					return ">"; //$NON-NLS-1$
-				}
-			}
-		}
-
-		return ">"; //$NON-NLS-1$
-	}
-
-	/**
-	 * Gets the instance.
-	 * @return Returns a HTMLMinimalContentModelGenerator
-	 */
-	public synchronized static HTMLMinimalContentModelGenerator getInstance() {
-		if (instance == null)
-			instance = new HTMLMinimalContentModelGenerator();
-		instance.init();
-		return instance;
-	}
-
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLTemplateCompletionProcessor.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLTemplateCompletionProcessor.java
deleted file mode 100644
index cc01530..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/HTMLTemplateCompletionProcessor.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.contentassist;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.templates.ContextTypeRegistry;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateCompletionProcessor;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.jface.text.templates.TemplateContextType;
-import org.eclipse.jface.text.templates.persistence.TemplateStore;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.editor.HTMLEditorPluginImageHelper;
-import org.eclipse.wst.html.ui.internal.editor.HTMLEditorPluginImages;
-
-
-/**
- * Completion processor for HTML Templates. Most of the work is already done
- * by the HTML Content Assist processor, so by the time the
- * HTMLTemplateCompletionProcessor is asked for content assist proposals, the
- * HTML content assist processor has already set the context type for
- * templates.
- */
-class HTMLTemplateCompletionProcessor extends TemplateCompletionProcessor {
-	private String fContextTypeId = null;
-
-	protected ICompletionProposal createProposal(Template template, TemplateContext context, IRegion region, int relevance) {
-		return new CustomTemplateProposal(template, context, region, getImage(template), relevance);
-	}
-
-	protected TemplateContextType getContextType(ITextViewer viewer, IRegion region) {
-		TemplateContextType type = null;
-
-		ContextTypeRegistry registry = getTemplateContextRegistry();
-		if (registry != null)
-			type = registry.getContextType(fContextTypeId);
-
-		return type;
-	}
-
-	protected Image getImage(Template template) {
-		// just return the same image for now
-		return HTMLEditorPluginImageHelper.getInstance().getImage(HTMLEditorPluginImages.IMG_OBJ_TAG_TEMPLATE);
-	}
-
-	private ContextTypeRegistry getTemplateContextRegistry() {
-		return HTMLUIPlugin.getDefault().getTemplateContextRegistry();
-	}
-
-	protected Template[] getTemplates(String contextTypeId) {
-		Template templates[] = null;
-
-		TemplateStore store = getTemplateStore();
-		if (store != null)
-			templates = store.getTemplates(contextTypeId);
-
-		return templates;
-	}
-
-	private TemplateStore getTemplateStore() {
-		return HTMLUIPlugin.getDefault().getTemplateStore();
-	}
-
-	void setContextType(String contextTypeId) {
-		fContextTypeId = contextTypeId;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/NoRegionContentAssistProcessorForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/NoRegionContentAssistProcessorForHTML.java
deleted file mode 100644
index 1c1652a..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/NoRegionContentAssistProcessorForHTML.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.contentassist;
-
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.wst.css.core.text.ICSSPartitions;
-import org.eclipse.wst.css.ui.contentassist.CSSContentAssistProcessor;
-import org.eclipse.wst.html.core.text.IHTMLPartitions;
-import org.eclipse.wst.javascript.common.ui.internal.contentassist.JavaScriptContentAssistProcessor;
-import org.eclipse.wst.xml.ui.contentassist.NoRegionContentAssistProcessor;
-
-/**
- * 
- * @author pavery
- */
-public class NoRegionContentAssistProcessorForHTML extends NoRegionContentAssistProcessor {
-	/*
-	 * @see com.ibm.sse.editor.xml.contentassist.NoRegionContentAssistProcessor#initPartitionToProcessorMap()
-	 */
-	protected void initPartitionToProcessorMap() {
-		super.initPartitionToProcessorMap();
-		IContentAssistProcessor htmlProcessor = new HTMLContentAssistProcessor();
-		fPartitionToProcessorMap.put(IHTMLPartitions.HTML_DEFAULT, htmlProcessor);
-		fPartitionToProcessorMap.put(IHTMLPartitions.HTML_COMMENT, htmlProcessor);
-
-		IContentAssistProcessor jsContentAssistProcessor = new JavaScriptContentAssistProcessor();
-		fPartitionToProcessorMap.put(IHTMLPartitions.SCRIPT, jsContentAssistProcessor);
-
-		IContentAssistProcessor cssContentAssistProcessor = new CSSContentAssistProcessor();
-		fPartitionToProcessorMap.put(ICSSPartitions.STYLE, cssContentAssistProcessor);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/XHTMLMinimalContentModelGenerator.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/XHTMLMinimalContentModelGenerator.java
deleted file mode 100644
index 702811f..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/contentassist/XHTMLMinimalContentModelGenerator.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.contentassist;
-
-
-
-import org.eclipse.wst.html.core.HTMLCMProperties;
-import org.eclipse.wst.html.core.contentmodel.HTMLElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.ui.contentassist.XMLContentModelGenerator;
-import org.w3c.dom.Node;
-
-public class XHTMLMinimalContentModelGenerator extends XMLContentModelGenerator {
-
-	private static XHTMLMinimalContentModelGenerator instance = null;
-
-	private XHTMLMinimalContentModelGenerator() {
-		super();
-	}
-
-	protected void generateEndTag(String tagName, Node parentNode, CMElementDeclaration elementDecl, StringBuffer buffer) {
-		if (elementDecl == null)
-			return;
-		if (elementDecl instanceof HTMLElementDeclaration) {
-			if (((Boolean) elementDecl.getProperty(HTMLCMProperties.IS_JSP)).booleanValue()) {
-				if (elementDecl.getContentType() == CMElementDeclaration.EMPTY)
-					return;
-			}
-			else {
-				String ommission = (String) elementDecl.getProperty(HTMLCMProperties.OMIT_TYPE);
-				if (ommission.equals(HTMLCMProperties.Values.OMIT_END) || ommission.equals(HTMLCMProperties.Values.OMIT_END_DEFAULT) || ommission.equals(HTMLCMProperties.Values.OMIT_END_MUST)) {
-					return;
-				}
-			}
-		}
-
-		if (elementDecl.getContentType() == CMElementDeclaration.EMPTY)
-			return;
-		buffer.append("</" + tagName + ">"); //$NON-NLS-2$//$NON-NLS-1$
-		return;
-	}
-
-
-	public String getStartTagClose(Node parentNode, CMElementDeclaration elementDecl) {
-		String other = getOtherClose(parentNode);
-		if (other != null)
-			return other;
-		if (elementDecl == null)
-			return ">"; //$NON-NLS-1$
-		// EMPTY tag, do a self-close
-		if (elementDecl.getContentType() == CMElementDeclaration.EMPTY) {
-			// if it's a JSP element, don't add the space since the JSP container doesn't/shouldn't care
-			if (elementDecl instanceof HTMLElementDeclaration && (((Boolean) elementDecl.getProperty(HTMLCMProperties.IS_JSP)).booleanValue()))
-				// if it's not JSP, conform to XHTML guidelines and add the space
-				return "/>"; //$NON-NLS-1$
-			else
-				return " />"; //$NON-NLS-1$
-		}
-		// not defined as EMPTY, but should be treated as such anyway
-		else if (elementDecl instanceof HTMLElementDeclaration) {
-			String ommission = (String) elementDecl.getProperty(HTMLCMProperties.OMIT_TYPE);
-			if (ommission.equals(HTMLCMProperties.Values.OMIT_END) || ommission.equals(HTMLCMProperties.Values.OMIT_END_DEFAULT) || ommission.equals(HTMLCMProperties.Values.OMIT_END_MUST)) {
-				return " />"; //$NON-NLS-1$
-			}
-		}
-
-		return ">"; //$NON-NLS-1$
-	}
-
-	public synchronized static XHTMLMinimalContentModelGenerator getInstance() {
-		if (instance == null)
-			instance = new XHTMLMinimalContentModelGenerator();
-		return instance;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/HTMLEditorPluginImageHelper.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/HTMLEditorPluginImageHelper.java
deleted file mode 100644
index e8d0887..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/HTMLEditorPluginImageHelper.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.editor;
-
-import java.util.HashMap;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-
-
-/**
- * Helper class to handle images provided by this plug-in.
- * 
- * NOTE: For internal use only. For images used externally, please use the
- * Shared***ImageHelper class instead.
- * 
- * @author amywu
- */
-public class HTMLEditorPluginImageHelper {
-	private final String PLUGINID = HTMLUIPlugin.ID;
-	private static HTMLEditorPluginImageHelper instance = null;
-
-	//	 save a descriptor for each image
-	private HashMap fImageDescRegistry = null;
-
-	/**
-	 * Gets the instance.
-	 * 
-	 * @return Returns a HTMLEditorPluginImageHelper
-	 */
-	public synchronized static HTMLEditorPluginImageHelper getInstance() {
-		if (instance == null)
-			instance = new HTMLEditorPluginImageHelper();
-		return instance;
-	}
-
-	/**
-	 * Retrieves the image associated with resource from the image registry.
-	 * If the image cannot be retrieved, attempt to find and load the image at
-	 * the location specified in resource.
-	 * 
-	 * @param resource
-	 *            the image to retrieve
-	 * @return Image the image associated with resource or null if one could
-	 *         not be found
-	 */
-	public Image getImage(String resource) {
-		Image image = getImageRegistry().get(resource);
-		if (image == null) {
-			// create an image
-			image = createImage(resource);
-		}
-		return image;
-	}
-
-	/**
-	 * Retrieves the image descriptor associated with resource from the image
-	 * descriptor registry. If the image descriptor cannot be retrieved,
-	 * attempt to find and load the image descriptor at the location specified
-	 * in resource.
-	 * 
-	 * @param resource
-	 *            the image descriptor to retrieve
-	 * @return ImageDescriptor the image descriptor assocated with resource or
-	 *         the default "missing" image descriptor if one could not be
-	 *         found
-	 */
-	public ImageDescriptor getImageDescriptor(String resource) {
-		ImageDescriptor imageDescriptor = null;
-		Object o = getImageDescriptorRegistry().get(resource);
-		if (o == null) {
-			//create a descriptor
-			imageDescriptor = createImageDescriptor(resource);
-		}
-		else {
-			imageDescriptor = (ImageDescriptor) o;
-		}
-		return imageDescriptor;
-	}
-
-	/**
-	 * Returns the image descriptor registry for this plugin.
-	 * 
-	 * @return HashMap - image descriptor registry for this plugin
-	 */
-	private HashMap getImageDescriptorRegistry() {
-		if (fImageDescRegistry == null)
-			fImageDescRegistry = new HashMap();
-		return fImageDescRegistry;
-	}
-
-	/**
-	 * Returns the image registry for this plugin.
-	 * 
-	 * @return ImageRegistry - image registry for this plugin
-	 */
-	private ImageRegistry getImageRegistry() {
-		return JFaceResources.getImageRegistry();
-	}
-
-	/**
-	 * Creates an image from the given resource and adds the image to the
-	 * image registry.
-	 * 
-	 * @param resource
-	 * @return Image
-	 */
-	private Image createImage(String resource) {
-		ImageDescriptor desc = getImageDescriptor(resource);
-		Image image = null;
-		
-		if (desc != null) {
-			image = desc.createImage();
-			// dont add the missing image descriptor image to the image registry
-			if (!desc.equals(ImageDescriptor.getMissingImageDescriptor()))
-				getImageRegistry().put(resource, image);
-		}
-		return image;
-	}
-
-	/**
-	 * Creates an image descriptor from the given imageFilePath and adds the
-	 * image descriptor to the image descriptor registry. If an image
-	 * descriptor could not be created, the default "missing" image descriptor
-	 * is returned but not added to the image descriptor registry.
-	 * 
-	 * @param imageFilePath
-	 * @return ImageDescriptor image descriptor for imageFilePath or default
-	 *         "missing" image descriptor if resource could not be found
-	 */
-	private ImageDescriptor createImageDescriptor(String imageFilePath) {
-		ImageDescriptor imageDescriptor = AbstractUIPlugin.imageDescriptorFromPlugin(PLUGINID, imageFilePath);
-		if (imageDescriptor != null) {
-			getImageDescriptorRegistry().put(imageFilePath, imageDescriptor);
-		}
-		else {
-			imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
-		}
-
-		return imageDescriptor;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/HTMLEditorPluginImages.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/HTMLEditorPluginImages.java
deleted file mode 100644
index 22c65fd..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/HTMLEditorPluginImages.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.editor;
-
-/**
- * Bundle of most images used by the HTML Editor plug-in.
- */
-public class HTMLEditorPluginImages { 	
-	public static final String IMG_OBJ_TABLE = "icons/full/obj16/table.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_ANCHOR = "icons/full/obj16/tag-anchor.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_BODY = "icons/full/obj16/tag-body.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_BUTTON = "icons/full/obj16/tag-button.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_FONT = "icons/full/obj16/tag-font.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_FORM = "icons/full/obj16/tag-form.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_GENERIC = "icons/full/obj16/tag-generic.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_HTML = "icons/full/obj16/tag-html.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_IMAGE_MAP = "icons/full/obj16/tag-image-map.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_IMAGE = "icons/full/obj16/tag-image.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_JSP = "icons/full/obj16/tag-jsp.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_TEMPLATE = "icons/full/obj16/tag-template.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_TITLE = "icons/full/obj16/tag-title.gif";			//$NON-NLS-1$
-	public static final String IMG_OBJ_TAG = "icons/full/obj16/tag.gif";			//$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/IHelpContextIds.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/IHelpContextIds.java
deleted file mode 100644
index 77746a3..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/editor/IHelpContextIds.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.editor;
-
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-
-/**
- * Help context ids for the HTML Source Editor.
- * <p>
- * This interface contains constants only; it is not intended to be implemented.
- * </p>
- * 
- */
-public interface IHelpContextIds {
-	// org.eclipse.wst.html.ui.
-	public static final String PREFIX = HTMLUIPlugin.ID + "."; //$NON-NLS-1$
-
-	// HTML Source page editor
-	public static final String HTML_SOURCEVIEW_HELPID = PREFIX + "ehtm0000"; //$NON-NLS-1$
-	
-	// HTML Files Preference page
-	public static final String HTML_PREFWEBX_FILES_HELPID = PREFIX + "webx0030"; //$NON-NLS-1$
-	// HTML Source Preference page
-	public static final String HTML_PREFWEBX_SOURCE_HELPID = PREFIX + "webx0031"; //$NON-NLS-1$
-	// HTML Styles Preference page
-	public static final String HTML_PREFWEBX_STYLES_HELPID = PREFIX + "webx0032"; //$NON-NLS-1$
-	// HTML Templates Preference page
-	public static final String HTML_PREFWEBX_TEMPLATES_HELPID = PREFIX + "webx0033"; //$NON-NLS-1$
-		
-	// HTML Cleanup dialog
-	public static final String CLEANUP_HTML_HELPID = PREFIX + "xmlm1100"; //$NON-NLS-1$
-	
-	// HTML Content Settings
-	public static final String WEB_CONTENT_SETTINGS_HELPID = PREFIX + "misc0170"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/ExternalFileEditorInput.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/ExternalFileEditorInput.java
deleted file mode 100644
index 016d2dc..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/ExternalFileEditorInput.java
+++ /dev/null
@@ -1,146 +0,0 @@
-package org.eclipse.wst.html.ui.internal.hyperlink;
-
-import java.io.File;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-import org.eclipse.ui.editors.text.ILocationProvider;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * EditorInput for external files. Copied from
- * org.eclipse.ui.internal.editors.text.JavaFileEditorInput
- */
-class ExternalFileEditorInput implements IEditorInput, ILocationProvider {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-	
-	/**
-	 * The workbench adapter which simply provides the label.
-	 * 
-	 * @since 3.1
-	 */
-	private class WorkbenchAdapter implements IWorkbenchAdapter {
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-		 */
-		public Object[] getChildren(Object o) {
-			return null;
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-		 */
-		public ImageDescriptor getImageDescriptor(Object object) {
-			return null;
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-		 */
-		public String getLabel(Object o) {
-			return ((ExternalFileEditorInput) o).getName();
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-		 */
-		public Object getParent(Object o) {
-			return null;
-		}
-	}
-
-	private File fFile;
-	private WorkbenchAdapter fWorkbenchAdapter = new WorkbenchAdapter();
-
-	public ExternalFileEditorInput(File file) {
-		super();
-		fFile = file;
-		fWorkbenchAdapter = new WorkbenchAdapter();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#exists()
-	 */
-	public boolean exists() {
-		return fFile.exists();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		return null;
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getName()
-	 */
-	public String getName() {
-		return fFile.getName();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getPersistable()
-	 */
-	public IPersistableElement getPersistable() {
-		return null;
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getToolTipText()
-	 */
-	public String getToolTipText() {
-		return fFile.getAbsolutePath();
-	}
-
-	/*
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		if (ILocationProvider.class.equals(adapter))
-			return this;
-		if (IWorkbenchAdapter.class.equals(adapter))
-			return fWorkbenchAdapter;
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-
-	/*
-	 * @see org.eclipse.ui.editors.text.ILocationProvider#getPath(java.lang.Object)
-	 */
-	public IPath getPath(Object element) {
-		if (element instanceof ExternalFileEditorInput) {
-			ExternalFileEditorInput input = (ExternalFileEditorInput) element;
-			return Path.fromOSString(input.fFile.getAbsolutePath());
-		}
-		return null;
-	}
-
-	/*
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object o) {
-		if (o == this)
-			return true;
-
-		if (o instanceof ExternalFileEditorInput) {
-			ExternalFileEditorInput input = (ExternalFileEditorInput) o;
-			return fFile.equals(input.fFile);
-		}
-
-		return false;
-	}
-
-	/*
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return fFile.hashCode();
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/ExternalFileHyperlink.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/ExternalFileHyperlink.java
deleted file mode 100644
index a37e44f..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/ExternalFileHyperlink.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package org.eclipse.wst.html.ui.internal.hyperlink;
-
-import java.io.File;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IDE;
-
-/**
- * Hyperlink for external files.
- */
-class ExternalFileHyperlink implements IHyperlink {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-	
-	private IRegion fHyperlinkRegion;
-	private File fHyperlinkFile;
-
-	public ExternalFileHyperlink(IRegion region, File file) {
-		fHyperlinkFile = file;
-		fHyperlinkRegion = region;
-	}
-	
-	public IRegion getHyperlinkRegion() {
-		return fHyperlinkRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public void open() {
-		if (fHyperlinkFile != null) {
-			IEditorInput input = new ExternalFileEditorInput(fHyperlinkFile);
-			IEditorDescriptor descriptor;
-			try {
-				descriptor = IDE.getEditorDescriptor(input.getName());
-				if (descriptor != null) {
-					IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-					IDE.openEditor(page, input, descriptor.getId(), true);
-				}
-			}
-			catch (PartInitException e) {
-				Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/URIHyperlinkDetector.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/URIHyperlinkDetector.java
deleted file mode 100644
index 7a7ad11..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/URIHyperlinkDetector.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package org.eclipse.wst.html.ui.internal.hyperlink;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.core.util.URIResolver;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Node;
-
-/**
- * Detects hyperlinks in tags. Includes detection in DOCTYPE and attribute
- * values. Resolves references to schemas, dtds, href, file, src, etc using the
- * Web Project Resolver.
- * 
- */
-public class URIHyperlinkDetector extends XMLHyperlinkDetector {
-	// copies of this class exist in:
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-
-	private final String SCHEMA_LOCATION = "schemaLocation"; //$NON-NLS-1$
-	private final String XMLNS = "xmlns"; //$NON-NLS-1$
-	private final String XSI_NAMESPACE_URI = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$
-
-	protected String getURIString(Node node, IDocument document) {
-		if (isXMLHandled(node))
-			return super.getURIString(node, document);
-		
-		String resolvedURI = null;
-		if (node.getNodeType() == Node.ATTRIBUTE_NODE) {
-			// handle attribute node
-			Attr attrNode = (Attr) node;
-			String attrValue = attrNode.getValue();
-			attrValue = StringUtils.strip(attrValue);
-
-			if (attrValue != null && attrValue.length() > 0) {
-				// currently using model's URI resolver until a better resolver is
-				// extended to common extensible URI resolver
-				// future_TODO: should use the new common extensible URI resolver
-				// when
-				// clients start implementing it
-				IStructuredModel sModel = null;
-				try {
-					sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-					if (sModel != null) {
-						URIResolver resolver = sModel.getResolver();
-						resolvedURI = resolver != null ? resolver.getLocationByURI(attrValue, true) : attrValue;
-					}
-				}
-				catch (Exception e) {
-					Logger.logException(e);
-				}
-				finally {
-					if (sModel != null)
-						sModel.releaseFromRead();
-				}
-			}
-		}
-		return resolvedURI;
-	}
-	
-	/**
-	 * Check if this is an xml-related node (schema location, doctype).
-	 * @param node
-	 * @return
-	 */
-	private boolean isXMLHandled(Node node) {
-		short nodeType = node.getNodeType();
-		if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-			return true;
-		} else if (nodeType == Node.ATTRIBUTE_NODE) {
-			Attr attrNode = (Attr) node;
-			String attrName = attrNode.getName();
-
-			// handle schemaLocation attribute
-			String prefix = DOMNamespaceHelper.getPrefix(attrName);
-			String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-			if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName))) {
-				return true;
-			} else if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attrNode))) && (SCHEMA_LOCATION.equals(unprefixedName))) {
-				return true;
-			}
-		}
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/WorkspaceFileHyperlink.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/WorkspaceFileHyperlink.java
deleted file mode 100644
index 8ee3ac1..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/WorkspaceFileHyperlink.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package org.eclipse.wst.html.ui.internal.hyperlink;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.html.ui.internal.Logger;
-
-/**
- * Hyperlink for files within the workspace. (As long as there is an IFile,
- * this can be used) Opens the default editor for the file.
- */
-class WorkspaceFileHyperlink implements IHyperlink {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-
-	private IRegion fRegion;
-	private IFile fFile;
-	private IRegion fHighlightRange;
-
-	public WorkspaceFileHyperlink(IRegion region, IFile file) {
-		fRegion = region;
-		fFile = file;
-	}
-
-	public WorkspaceFileHyperlink(IRegion region, IFile file, IRegion range) {
-		fRegion = region;
-		fFile = file;
-		fHighlightRange = range;
-	}
-
-	public IRegion getHyperlinkRegion() {
-		return fRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public void open() {
-		if (fFile != null && fFile.exists()) {
-			try {
-				IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-				IEditorPart editor = IDE.openEditor(page, fFile, true);
-				// highlight range in editor if possible
-				if (fHighlightRange != null && editor instanceof ITextEditor) {
-					((ITextEditor) editor).setHighlightRange(fHighlightRange.getOffset(), fHighlightRange.getLength(), true);
-				}
-			}
-			catch (PartInitException pie) {
-				Logger.log(Logger.WARNING_DEBUG, pie.getMessage(), pie);
-			}
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/XMLHyperlinkDetector.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/XMLHyperlinkDetector.java
deleted file mode 100644
index 8a5504a..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/hyperlink/XMLHyperlinkDetector.java
+++ /dev/null
@@ -1,472 +0,0 @@
-package org.eclipse.wst.html.ui.internal.hyperlink;
-
-import java.io.File;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
-import org.eclipse.jface.text.hyperlink.URLHyperlink;
-import org.eclipse.wst.common.uriresolver.URIResolverPlugin;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-/**
- * Detects hyperlinks in XML tags. Includes detection in DOCTYPE and attribute
- * values. Resolves references to schemas, dtds, etc using the Common URI
- * Resolver.
- * 
- */
-class XMLHyperlinkDetector implements IHyperlinkDetector {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-	
-	private final String NO_NAMESPACE_SCHEMA_LOCATION = "noNamespaceSchemaLocation"; //$NON-NLS-1$
-	private final String SCHEMA_LOCATION = "schemaLocation"; //$NON-NLS-1$
-	private final String XMLNS = "xmlns"; //$NON-NLS-1$
-	private final String XSI_NAMESPACE_URI = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$
-	private final String HTTP_PROTOCOL = "http://";//$NON-NLS-1$
-
-	public IHyperlink[] detectHyperlinks(ITextViewer textViewer, IRegion region, boolean canShowMultipleHyperlinks) {
-		// for now, only capable of creating 1 hyperlink
-		List hyperlinks = new ArrayList(0);
-
-		if (region != null && textViewer != null) {
-			IDocument document = textViewer.getDocument();
-			Node currentNode = getCurrentNode(document, region.getOffset());
-			if (currentNode != null) {
-				String uriString = null;
-				if (currentNode.getNodeType() == Node.DOCUMENT_TYPE_NODE) {
-					// doctype nodes
-					uriString = getURIString(currentNode, document);
-				}
-				else if (currentNode.getNodeType() == Node.ELEMENT_NODE) {
-					// element nodes
-					Attr currentAttr = getCurrentAttrNode(currentNode, region.getOffset());
-					if (currentAttr != null) {
-						// try to find link for current attribute
-						// resolve attribute value
-						uriString = getURIString(currentAttr, document);
-						// verify validity of uri string
-						if (!isValidURI(uriString))
-							// reset current attribute
-							currentAttr = null;
-					}
-					if (currentAttr == null) {
-						// try to find a linkable attribute within element
-						currentAttr = getLinkableAttr((Element) currentNode);
-						if (currentAttr != null) {
-							uriString = getURIString(currentAttr, document);
-						}
-					}
-					currentNode = currentAttr;
-				}
-				// try to create hyperlink from information gathered
-				if (uriString != null && currentNode != null && isValidURI(uriString)) {
-					IRegion hyperlinkRegion = getHyperlinkRegion(currentNode);
-					IHyperlink hyperlink = createHyperlink(uriString, hyperlinkRegion, document, currentNode);
-					if (hyperlink != null) {
-						hyperlinks.add(hyperlink);
-					}
-				}
-			}
-		}
-		if (hyperlinks.size() == 0)
-			return null;
-		return (IHyperlink[]) hyperlinks.toArray(new IHyperlink[0]);
-	}
-
-	/**
-	 * Create the appropriate hyperlink
-	 * 
-	 * @param uriString
-	 * @param hyperlinkRegion
-	 * @return IHyperlink
-	 */
-	private IHyperlink createHyperlink(String uriString, IRegion hyperlinkRegion, IDocument document, Node node) {
-		IHyperlink link = null;
-
-		if (uriString != null) {
-			String temp = uriString.toLowerCase();
-			if (temp.startsWith(HTTP_PROTOCOL)) {
-				// this is a URLHyperlink since this is a web address
-				link = new URLHyperlink(hyperlinkRegion, uriString);
-			}
-			else {
-				// try to locate the file in the workspace
-				IFile file = getFile(uriString);
-				if (file != null && file.exists()) {
-					// this is a WorkspaceFileHyperlink since file exists in
-					// workspace
-					link = new WorkspaceFileHyperlink(hyperlinkRegion, file);
-				}
-				else {
-					// this is an ExternalFileHyperlink since file does not
-					// exist
-					// in workspace
-					File externalFile = new File(uriString);
-					link = new ExternalFileHyperlink(hyperlinkRegion, externalFile);
-				}
-			}
-		}
-
-		return link;
-	}
-
-	private IRegion getHyperlinkRegion(Node node) {
-		IRegion hyperRegion = null;
-
-		if (node != null) {
-			short nodeType = node.getNodeType();
-			if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-				// handle doc type node
-				XMLNode docNode = (XMLNode) node;
-				hyperRegion = new Region(docNode.getStartOffset(), docNode.getEndOffset() - docNode.getStartOffset());
-			}
-			else if (nodeType == Node.ATTRIBUTE_NODE) {
-				// handle attribute nodes
-				XMLAttr att = (XMLAttr) node;
-				// do not include quotes in attribute value region
-				int regOffset = att.getValueRegionStartOffset();
-				int regLength = att.getValueRegion().getTextLength();
-				String attValue = att.getValueRegionText();
-				if (StringUtils.isQuoted(attValue)) {
-					regOffset = ++regOffset;
-					regLength = regLength - 2;
-				}
-				hyperRegion = new Region(regOffset, regLength);
-			}
-		}
-		return hyperRegion;
-	}
-
-	/**
-	 * Returns the URI string
-	 * 
-	 * @param node -
-	 *            assumes not null
-	 */
-	protected String getURIString(Node node, IDocument document) {
-		String resolvedURI = null;
-		// need the base location, publicId, and systemId for URIResolver
-		String baseLoc = null;
-		String publicId = null;
-		String systemId = null;
-
-		short nodeType = node.getNodeType();
-		// handle doc type node
-		if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-			baseLoc = getBaseLocation(document);
-			publicId = ((DocumentType) node).getPublicId();
-			systemId = ((DocumentType) node).getSystemId();
-		}
-		else if (nodeType == Node.ATTRIBUTE_NODE) {
-			// handle attribute node
-			Attr attrNode = (Attr) node;
-			baseLoc = getBaseLocation(document);
-			String attrName = attrNode.getName();
-			String attrValue = attrNode.getValue();
-			attrValue = StringUtils.strip(attrValue);
-
-			// handle schemaLocation attribute
-			String prefix = DOMNamespaceHelper.getPrefix(attrName);
-			String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-			if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName))) {
-				publicId = attrValue;
-				systemId = getLocationHint(attrNode.getOwnerElement(), publicId);
-			}
-			else if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attrNode))) && (SCHEMA_LOCATION.equals(unprefixedName))) {
-				// for now just use the first pair
-				// need to look into being more precise
-				StringTokenizer st = new StringTokenizer(attrValue);
-				publicId = st.hasMoreTokens() ? st.nextToken() : null;
-				systemId = st.hasMoreTokens() ? st.nextToken() : null;
-				// else check if xmlns publicId = value
-			}
-			else {
-				systemId = attrValue;
-			}
-		}
-
-		resolvedURI = resolveURI(baseLoc, publicId, systemId);
-		return resolvedURI;
-	}
-
-	/**
-	 * Returns an IFile from the given uri if possible, null if cannot find
-	 * file from uri.
-	 * 
-	 * @param fileString
-	 *            file system path
-	 * @return returns IFile if fileString exists in the workspace
-	 */
-	private IFile getFile(String fileString) {
-		IFile file = null;
-
-		if (fileString != null) {
-			IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(fileString));
-			for (int i = 0; i < files.length && file == null; i++)
-				if (files[i].exists())
-					file = files[i];
-		}
-
-		return file;
-	}
-
-	/**
-	 * Checks to see if the given attribute is openable. Attribute is openable
-	 * if it is a namespace declaration attribute or if the attribute value is
-	 * of type URI.
-	 * 
-	 * @param attr
-	 *            cannot be null
-	 * @param cmElement
-	 *            CMElementDeclaration associated with the attribute (can be
-	 *            null)
-	 * @return true if this attribute is "openOn-able" false otherwise
-	 */
-	private boolean isLinkableAttr(Attr attr, CMElementDeclaration cmElement) {
-		String attrName = attr.getName();
-		String prefix = DOMNamespaceHelper.getPrefix(attrName);
-		String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-		// determine if attribute is namespace declaration
-		if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName)))
-			return true;
-
-		// determine if attribute contains schema location
-		if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attr))) && ((SCHEMA_LOCATION.equals(unprefixedName)) || (NO_NAMESPACE_SCHEMA_LOCATION.equals(unprefixedName))))
-			return true;
-
-		// determine if attribute value is of type URI
-		if (cmElement != null) {
-			CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) cmElement.getAttributes().getNamedItem(attrName);
-			if ((attrDecl != null) && (attrDecl.getAttrType() != null) && (CMDataType.URI.equals(attrDecl.getAttrType().getDataTypeName()))) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Attempts to find an attribute within element that is openable.
-	 * 
-	 * @param element -
-	 *            cannot be null
-	 * @return Attr attribute that can be used for open on, null if no
-	 *         attribute could be found
-	 */
-	private Attr getLinkableAttr(Element element) {
-		CMElementDeclaration ed = getCMElementDeclaration(element);
-		// get the list of attributes for this node
-		NamedNodeMap attrs = element.getAttributes();
-		for (int i = 0; i < attrs.getLength(); ++i) {
-			// check if this attribute is "openOn-able"
-			Attr att = (Attr) attrs.item(i);
-			if (isLinkableAttr(att, ed)) {
-				return att;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Get the CMElementDeclaration for an element
-	 * 
-	 * @param element
-	 * @return CMElementDeclaration
-	 */
-	private CMElementDeclaration getCMElementDeclaration(Element element) {
-		CMElementDeclaration ed = null;
-
-		ModelQuery mq = ModelQueryUtil.getModelQuery(element.getOwnerDocument());
-		if (mq != null) {
-			ed = mq.getCMElementDeclaration(element);
-		}
-		return ed;
-	}
-
-	/**
-	 * Returns the attribute node within node at offset
-	 * 
-	 * @param node
-	 * @param offset
-	 * @return Attr
-	 */
-	private Attr getCurrentAttrNode(Node node, int offset) {
-		if ((node instanceof IndexedRegion) && ((IndexedRegion) node).contains(offset) && (node.hasAttributes())) {
-			NamedNodeMap attrs = node.getAttributes();
-			// go through each attribute in node and if attribute contains
-			// offset, return that attribute
-			for (int i = 0; i < attrs.getLength(); ++i) {
-				// assumption that if parent node is of type IndexedRegion,
-				// then its attributes will also be of type IndexedRegion
-				IndexedRegion attRegion = (IndexedRegion) attrs.item(i);
-				if (attRegion.contains(offset)) {
-					return (Attr) attrs.item(i);
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the node the cursor is currently on in the document. null if no
-	 * node is selected
-	 * 
-	 * @param offset
-	 * @return Node either element, doctype, text, or null
-	 */
-	private Node getCurrentNode(IDocument document, int offset) {
-		// get the current node at the offset (returns either: element,
-		// doctype, text)
-		IndexedRegion inode = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			inode = sModel.getIndexedRegion(offset);
-			if (inode == null)
-				inode = sModel.getIndexedRegion(offset - 1);
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-
-		if (inode instanceof Node) {
-			return (Node) inode;
-		}
-		return null;
-	}
-
-	/**
-	 * Get the base location from the current model (local file system)
-	 */
-	private String getBaseLocation(IDocument document) {
-		String baseLoc = null;
-
-		// get the base location from the current model
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			if (sModel != null) {
-				IPath location = new Path(sModel.getBaseLocation());
-				if (location.toFile().exists()) {
-					baseLoc = location.toString();
-				}
-				else {
-					IPath basePath = new Path(sModel.getBaseLocation());
-					if(basePath.segmentCount() > 1)
-						baseLoc = ResourcesPlugin.getWorkspace().getRoot().getFile(basePath).getLocation().toString();
-					else
-						baseLoc = ResourcesPlugin.getWorkspace().getRoot().getLocation().append(basePath).toString();
-				}
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-		return baseLoc;
-	}
-
-	/**
-	 * Checks whether the given uriString is really pointing to a file
-	 * 
-	 * @param uriString
-	 * @return boolean
-	 */
-	private boolean isValidURI(String uriString) {
-		boolean isValid = false;
-
-		if (uriString != null) {
-			// first do a quick check to see if this is some sort of http://
-			String tempString = uriString.toLowerCase();
-			if (tempString.startsWith(HTTP_PROTOCOL))
-				isValid = true;
-			else {
-				File file = new File(uriString);
-				try {
-					URI uri = new URI(uriString);
-					file = new File(uri);
-				}
-				catch (URISyntaxException e) {
-					// it is okay that a uri could not be created out of
-					// uriString
-				}
-				catch (IllegalArgumentException e) {
-					// it is okay that file could not be created out of uri
-				}
-				isValid = file.exists();
-			}
-		}
-		return isValid;
-	}
-
-	/**
-	 * Resolves the given URI information
-	 * 
-	 * @param baseLocation
-	 * @param publicId
-	 * @param systemId
-	 * @return String resolved uri.
-	 */
-	private String resolveURI(String baseLocation, String publicId, String systemId) {
-		// dont resolve if there's nothing to resolve
-		if ((baseLocation == null) && (publicId == null) && (systemId == null))
-			return null;
-		return URIResolverPlugin.createResolver().resolve(baseLocation, publicId, systemId);
-	}
-
-	/**
-	 * Find the location hint for the given namespaceURI if it exists
-	 * 
-	 * @param elementNode -
-	 *            cannot be null
-	 * @param namespaceURI -
-	 *            cannot be null
-	 * @return location hint (systemId) if it was found, null otherwise
-	 */
-	private String getLocationHint(Element elementNode, String namespaceURI) {
-		Attr schemaLocNode = elementNode.getAttributeNodeNS(XSI_NAMESPACE_URI, SCHEMA_LOCATION);
-		if (schemaLocNode != null) {
-			StringTokenizer st = new StringTokenizer(schemaLocNode.getValue());
-			while (st.hasMoreTokens()) {
-				String publicId = st.hasMoreTokens() ? st.nextToken() : null;
-				String systemId = st.hasMoreTokens() ? st.nextToken() : null;
-				// found location hint
-				if (namespaceURI.equalsIgnoreCase(publicId))
-					return systemId;
-			}
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceInitializer.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceInitializer.java
deleted file mode 100644
index 4d599d8..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceInitializer.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package org.eclipse.wst.html.ui.internal.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.style.IStyleConstantsHTML;
-import org.eclipse.wst.sse.ui.preferences.ui.ColorHelper;
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-
-/**
- * Sets default values for HTML UI preferences
- */
-public class HTMLUIPreferenceInitializer extends AbstractPreferenceInitializer {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
-	 */
-	public void initializeDefaultPreferences() {
-		IPreferenceStore store = HTMLUIPlugin.getDefault().getPreferenceStore();
-
-		store.setDefault(HTMLUIPreferenceNames.AUTO_PROPOSE, true);
-		store.setDefault(HTMLUIPreferenceNames.AUTO_PROPOSE_CODE, "<");//$NON-NLS-1$
-		
-		// HTML Style Preferences
-		String NOBACKGROUNDBOLD = " | null | false";   //$NON-NLS-1$
-		String styleValue = ColorHelper.getColorString(127, 0, 127) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_NAME, styleValue);
-		
-		styleValue = ColorHelper.getColorString(42, 0, 255)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE, styleValue);
-		
-		styleValue = "null" + NOBACKGROUNDBOLD;  //$NON-NLS-1$
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS, styleValue); // specified value is black; leaving as widget default
-		
-		styleValue = ColorHelper.getColorString(63, 95, 191)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.COMMENT_BORDER, styleValue);
-		store.setDefault(IStyleConstantsXML.COMMENT_TEXT, styleValue);
-		
-		styleValue = ColorHelper.getColorString(0, 128, 128)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.DECL_BORDER, styleValue);
-
-		styleValue = ColorHelper.getColorString(0, 0, 128)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.DOCTYPE_NAME, styleValue);
-		store.setDefault(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF, styleValue);
-		
-		styleValue = ColorHelper.getColorString(128, 128, 128)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID, styleValue);
-
-		styleValue = ColorHelper.getColorString(63, 127, 95)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF, styleValue);
-
-		styleValue = "null" + NOBACKGROUNDBOLD;	//$NON-NLS-1$
-		store.setDefault(IStyleConstantsXML.XML_CONTENT, styleValue);	// specified value is black; leaving as widget default
-
-		styleValue = ColorHelper.getColorString(0, 128, 128)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_BORDER, styleValue);
-		
-		styleValue = ColorHelper.getColorString(63, 127, 127)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_NAME, styleValue);
-		
-		styleValue = ColorHelper.getColorString(0, 128, 128)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.PI_BORDER, styleValue);
- 
-		styleValue = "null" + NOBACKGROUNDBOLD;	//$NON-NLS-1$
-		store.setDefault(IStyleConstantsXML.PI_CONTENT, styleValue);	// specified value is black; leaving as widget default
-
-		styleValue = ColorHelper.getColorString(0, 128, 128)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.CDATA_BORDER, styleValue);
-		
-		styleValue = ColorHelper.getColorString(0, 0, 0)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.CDATA_TEXT, styleValue);
-		
-		styleValue = ColorHelper.getColorString(191, 95, 63)  + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsHTML.SCRIPT_AREA_BORDER, styleValue);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceNames.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceNames.java
deleted file mode 100644
index f02070f..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/preferences/HTMLUIPreferenceNames.java
+++ /dev/null
@@ -1,55 +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.html.ui.internal.preferences;
-
-/**
- * Preference keys for HTML UI
- */
-public class HTMLUIPreferenceNames {
-	/**
-	 * A named preference that controls if code assist gets auto activated.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String AUTO_PROPOSE = getAutoProposeKey();
-
-	private static String getAutoProposeKey() {
-		return "autoPropose";//$NON-NLS-1$
-	}
-
-	/**
-	 * A named preference that holds the characters that auto activate code
-	 * assist.
-	 * <p>
-	 * Value is of type <code>String</code>. All characters that trigger
-	 * auto code assist.
-	 * </p>
-	 */
-	public static final String AUTO_PROPOSE_CODE = getAutoProposeCodeKey();
-
-	private static String getAutoProposeCodeKey() {
-		return "autoProposeCode";//$NON-NLS-1$
-	}
-
-	/**
-	 * The key to store customized templates.
-	 * <p>
-	 * Value is of type <code>String</code>.
-	 * </p>
-	 */
-	public static final String TEMPLATES_KEY = getTemplatesKey();
-
-	private static String getTemplatesKey() {
-		return "org.eclipse.wst.sse.ui.custom_templates"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionModelNodeAdapterFactoryHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionModelNodeAdapterFactoryHTML.java
deleted file mode 100644
index 06d9384..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionModelNodeAdapterFactoryHTML.java
+++ /dev/null
@@ -1,97 +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.html.ui.internal.projection;
-
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.html.core.HTML40Namespace;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.w3c.dom.Node;
-
-public class ProjectionModelNodeAdapterFactoryHTML extends AbstractAdapterFactory {
-	// copies of this class located in:
-	// org.eclipse.wst.html.ui.internal.projection
-	// org.eclipse.jst.jsp.ui.internal.projection
-
-	private ProjectionViewer fProjectionViewer;
-
-	public ProjectionModelNodeAdapterFactoryHTML() {
-		adapterKey = ProjectionModelNodeAdapterHTML.class;
-	}
-
-	/**
-	 * Actually creates an adapter for the parent of target if target is the
-	 * "adapt-able" node
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		if ((fProjectionViewer != null) && (target instanceof Node) && ((Node) target).getNodeType() == Node.ELEMENT_NODE) {
-			Node node = (Node) target;
-			if (isNodeProjectable(node)) {
-
-				// actually work with the parent node to listen for add,
-				// delete events
-				Node parent = node.getParentNode();
-				if (parent instanceof INodeNotifier) {
-					INodeNotifier parentNotifier = (INodeNotifier) parent;
-					ProjectionModelNodeAdapterHTML parentAdapter = (ProjectionModelNodeAdapterHTML) parentNotifier.getExistingAdapter(ProjectionModelNodeAdapterHTML.class);
-					if (parentAdapter == null) {
-						// create a new adapter for parent
-						parentAdapter = new ProjectionModelNodeAdapterHTML(this);
-						parentNotifier.addAdapter(parentAdapter);
-					}
-					// call update on parent because a new node has just been
-					// added
-					parentAdapter.updateAdapter(parent);
-				}
-			}
-		}
-
-		return null;
-	}
-
-	ProjectionViewer getProjectionViewer() {
-		return fProjectionViewer;
-	}
-
-	/**
-	 * Returns true if node is a node type able to fold
-	 * 
-	 * @param node
-	 * @return boolean true if node is projectable, false otherwise
-	 */
-	boolean isNodeProjectable(Node node) {
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			String tagName = node.getNodeName();
-			// node is only projectable if it is head, body, script, style,
-			// table tags
-			if (HTML40Namespace.ElementName.HEAD.equalsIgnoreCase(tagName) || HTML40Namespace.ElementName.BODY.equalsIgnoreCase(tagName) || HTML40Namespace.ElementName.SCRIPT.equalsIgnoreCase(tagName) || HTML40Namespace.ElementName.STYLE.equalsIgnoreCase(tagName) || HTML40Namespace.ElementName.TABLE.equalsIgnoreCase((tagName)))
-				return true;
-		}
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.AbstractAdapterFactory#release()
-	 */
-	public void release() {
-		fProjectionViewer = null;
-
-		super.release();
-	}
-
-	void setProjectionViewer(ProjectionViewer viewer) {
-		fProjectionViewer = viewer;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionModelNodeAdapterHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionModelNodeAdapterHTML.java
deleted file mode 100644
index 621132f..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/ProjectionModelNodeAdapterHTML.java
+++ /dev/null
@@ -1,263 +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.html.ui.internal.projection;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotation;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotationModel;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.html.ui.internal.Logger;
-import org.w3c.dom.Node;
-
-/**
- * Updates projection annotation model with projection annotations for this
- * adapter node's children
- */
-public class ProjectionModelNodeAdapterHTML implements INodeAdapter {
-
-	private class TagProjectionAnnotation extends ProjectionAnnotation {
-		private boolean fIsVisible = false; /* workaround for BUG85874 */
-		private Node fNode;
-
-		public TagProjectionAnnotation(Node node, boolean isCollapsed) {
-			super(isCollapsed);
-			fNode = node;
-		}
-
-		public Node getNode() {
-			return fNode;
-		}
-
-		public void setNode(Node node) {
-			fNode = node;
-		}
-
-		/**
-		 * Does not paint hidden annotations. Annotations are hidden when they
-		 * only span one line.
-		 * 
-		 * @see ProjectionAnnotation#paint(org.eclipse.swt.graphics.GC,
-		 *      org.eclipse.swt.widgets.Canvas,
-		 *      org.eclipse.swt.graphics.Rectangle)
-		 */
-		public void paint(GC gc, Canvas canvas, Rectangle rectangle) {
-			/* workaround for BUG85874 */
-			/*
-			 * only need to check annotations that are expanded because hidden
-			 * annotations should never have been given the chance to
-			 * collapse.
-			 */
-			if (!isCollapsed()) {
-				// working with rectangle, so need the styledtext line height
-				int lineHeight = fAdapterFactory.getProjectionViewer().getTextWidget().getLineHeight();
-
-				// do not draw annotations that only span one line and mark
-				// them as not visible
-				if ((rectangle.height / lineHeight) <= 1) {
-					fIsVisible = false;
-					return;
-				}
-			}
-			fIsVisible = true;
-			super.paint(gc, canvas, rectangle);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jface.text.source.projection.ProjectionAnnotation#markCollapsed()
-		 */
-		public void markCollapsed() {
-			/* workaround for BUG85874 */
-			// do not mark collapsed if annotation is not visible
-			if (fIsVisible)
-				super.markCollapsed();
-		}
-	}
-
-	// copies of this class located in:
-	// org.eclipse.wst.html.ui.internal.projection
-	// org.eclipse.jst.jsp.ui.internal.projection
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.wst.html.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	ProjectionModelNodeAdapterFactoryHTML fAdapterFactory;
-	private Map fTagAnnotations = new HashMap();
-
-	public ProjectionModelNodeAdapterHTML(ProjectionModelNodeAdapterFactoryHTML factory) {
-		fAdapterFactory = factory;
-	}
-
-	/**
-	 * Create a projection position from the given node. Able to get
-	 * projection position if node isNodeProjectable.
-	 * 
-	 * @param node
-	 * @return null if no projection position possible, a Position otherwise
-	 */
-	private Position createProjectionPosition(Node node) {
-		Position pos = null;
-		if (fAdapterFactory.isNodeProjectable(node) && node instanceof IndexedRegion) {
-			IDocument document = fAdapterFactory.getProjectionViewer().getDocument();
-			if (document != null) {
-				IndexedRegion inode = (IndexedRegion) node;
-				int start = inode.getStartOffset();
-				int end = inode.getEndOffset();
-				if (start >= 0 && start < end) {
-					try {
-//						// region-based
-//						// extra line when collapsed, but no region increase when add newline
-//						pos = new Position(start, end - start);
-						
-//						// line-based
-//						// extra line when collapsed, but no region increase when add newline
-//						IRegion startLineRegion = document.getLineInformationOfOffset(start);
-//						IRegion endLineRegion = document.getLineInformationOfOffset(end);
-//						int startOffset = startLineRegion.getOffset();
-//						int endOffset = endLineRegion.getOffset() + endLineRegion.getLength();
-//						if (endOffset > startOffset) {
-//							pos = new Position(startOffset, endOffset - startOffset);
-//						}
-						
-						// line-based
-						// no extra line when collapsed, but region increase when add newline
-						int startLine = document.getLineOfOffset(start);
-						int endLine = document.getLineOfOffset(end);
-						if (endLine + 1 < document.getNumberOfLines()) {
-							int offset = document.getLineOffset(startLine);
-							int endOffset = document.getLineOffset(endLine + 1);
-							pos = new Position(offset, endOffset - offset);
-						}
-					} catch (BadLocationException x) {
-						Logger.log(Logger.WARNING_DEBUG, null, x);
-					}
-				}
-			}
-		}
-		return pos;
-	}
-
-	/**
-	 * Find TagProjectionAnnotation for node in the current list of projection
-	 * annotations for this adapter
-	 * 
-	 * @param node
-	 * @return TagProjectionAnnotation
-	 */
-	private TagProjectionAnnotation getExistingAnnotation(Node node) {
-		TagProjectionAnnotation anno = null;
-
-		if ((node != null) && (!fTagAnnotations.isEmpty())) {
-			Iterator it = fTagAnnotations.keySet().iterator();
-			while (it.hasNext() && anno == null) {
-				TagProjectionAnnotation a = (TagProjectionAnnotation) it.next();
-				Node n = a.getNode();
-				if (node.equals(n)) {
-					anno = a;
-				}
-			}
-		}
-		return anno;
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return type == ProjectionModelNodeAdapterHTML.class;
-	}
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		// check if folding is even enabled, if not, just ignore notifyChanged
-		// events
-		if (fAdapterFactory.getProjectionViewer() == null) {
-			return;
-		}
-
-		if ((eventType == INodeNotifier.STRUCTURE_CHANGED) && (notifier instanceof Node)) {
-			updateAdapter((Node) notifier);
-		}
-	}
-
-	/**
-	 * Update the projection annotation of all the nodes that are children of
-	 * node
-	 * 
-	 * @param node
-	 */
-	void updateAdapter(Node node) {
-		long start = System.currentTimeMillis();
-
-		Map additions = new HashMap();
-		Map projectionAnnotations = new HashMap();
-
-		// go through immediate child nodes and figure out projection
-		// model annotations
-		if (node != null) {
-			Node childNode = node.getFirstChild();
-			while (childNode != null) {
-				Position newPos = createProjectionPosition(childNode);
-				if (newPos != null) {
-					TagProjectionAnnotation newAnnotation = new TagProjectionAnnotation(childNode, false);
-					TagProjectionAnnotation existing = getExistingAnnotation(childNode);
-					if (existing == null) {
-						// add to map containing all annotations for this
-						// adapter
-						projectionAnnotations.put(newAnnotation, newPos);
-						// add to map containing annotations to add
-						additions.put(newAnnotation, newPos);
-					} else {
-						// add to map containing all annotations for this
-						// adapter
-						projectionAnnotations.put(existing, newPos);
-						// remove from map containing annotations to delete
-						fTagAnnotations.remove(existing);
-					}
-				}
-				childNode = childNode.getNextSibling();
-			}
-
-			// in the end, want to delete anything leftover in old list, add
-			// everything in additions, and update everything in
-			// projectionAnnotations
-			ProjectionAnnotation[] oldList = null;
-			if (!fTagAnnotations.isEmpty()) {
-				oldList = (ProjectionAnnotation[]) fTagAnnotations.keySet().toArray(new ProjectionAnnotation[0]);
-			}
-			ProjectionAnnotation[] modifyList = null;
-			if (!projectionAnnotations.isEmpty()) {
-				modifyList = (ProjectionAnnotation[]) projectionAnnotations.keySet().toArray(new ProjectionAnnotation[0]);
-			}
-			ProjectionViewer viewer = fAdapterFactory.getProjectionViewer();
-			ProjectionAnnotationModel annotationModel = viewer.getProjectionAnnotationModel();
-			annotationModel.modifyAnnotations(oldList, additions, modifyList);
-		}
-
-		// save new list of annotations
-		fTagAnnotations = additions;
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf) {
-			String nodeName = node != null ? node.getNodeName() : "null";
-			System.out.println("ProjectionModelNodeAdapterHTML.updateAdapter (" + nodeName + "):" + (end - start));
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/StructuredTextFoldingProviderHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/StructuredTextFoldingProviderHTML.java
deleted file mode 100644
index 9330705..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/projection/StructuredTextFoldingProviderHTML.java
+++ /dev/null
@@ -1,216 +0,0 @@
-package org.eclipse.wst.html.ui.internal.projection;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.source.projection.IProjectionListener;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.ui.internal.projection.IStructuredTextFoldingProvider;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-/**
- * Updates the projection model of a structured model for HTML.
- */
-public class StructuredTextFoldingProviderHTML implements IStructuredTextFoldingProvider, IProjectionListener {
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.wst.html.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	private IDocument fDocument;
-	private ProjectionViewer fViewer;
-
-	/**
-	 * Adds an adapter to node and its children
-	 * 
-	 * @param node
-	 * @param level
-	 */
-	private void addAdapterToNodeAndChildren(Node node, int level) {
-		if (node instanceof INodeNotifier) {
-			INodeNotifier notifier = (INodeNotifier) node;
-
-			// try and get the adapter for the current node and update the
-			// adapter with projection information
-			ProjectionModelNodeAdapterHTML adapter = (ProjectionModelNodeAdapterHTML) notifier.getExistingAdapter(ProjectionModelNodeAdapterHTML.class);
-			if (adapter != null) {
-				adapter.updateAdapter(node);
-			}
-			else {
-				// just call getadapter so the adapter is created and
-				// automatically initialized
-				notifier.getAdapterFor(ProjectionModelNodeAdapterHTML.class);
-			}
-
-			Node nextChild = node.getFirstChild();
-			while (nextChild != null) {
-				Node childNode = nextChild;
-				nextChild = childNode.getNextSibling();
-
-				addAdapterToNodeAndChildren(childNode, level + 1);
-			}
-		}
-	}
-
-	/**
-	 * Goes through every node and adds an adapter onto each for tracking
-	 * purposes
-	 */
-	private void addAllAdapters() {
-		long start = System.currentTimeMillis();
-
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel != null) {
-				int startOffset = 0;
-				IndexedRegion startNode = sModel.getIndexedRegion(startOffset);
-				if (startNode instanceof Node) {
-					int level = 0;
-					Node nextSibling = (Node) startNode;
-					while (nextSibling != null) {
-						Node currentNode = nextSibling;
-						nextSibling = currentNode.getNextSibling();
-
-						addAdapterToNodeAndChildren(currentNode, level);
-					}
-				}
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderHTML.addAllAdapters: " + (end - start));
-	}
-
-	/**
-	 * Get the ProjectionModelNodeAdapterFactoryHTML to use with this
-	 * provider.
-	 * 
-	 * @return ProjectionModelNodeAdapterFactoryHTML
-	 */
-	private ProjectionModelNodeAdapterFactoryHTML getAdapterFactory(boolean createIfNeeded) {
-		long start = System.currentTimeMillis();
-
-		ProjectionModelNodeAdapterFactoryHTML factory = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel != null) {
-				FactoryRegistry factoryRegistry = sModel.getFactoryRegistry();
-
-				// getting the projectionmodelnodeadapter for the first time
-				// so do some initializing
-				if (!factoryRegistry.contains(ProjectionModelNodeAdapterHTML.class) && createIfNeeded) {
-					ProjectionModelNodeAdapterFactoryHTML newFactory = new ProjectionModelNodeAdapterFactoryHTML();
-
-					// add factory to factory registry
-					factoryRegistry.addFactory(newFactory);
-
-					// add factory to propogating adapter
-					XMLModel domModel = (XMLModel) sModel;
-					Document document = domModel.getDocument();
-					PropagatingAdapter propagatingAdapter = (PropagatingAdapter) ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
-					if (propagatingAdapter != null) {
-						propagatingAdapter.addAdaptOnCreateFactory(newFactory);
-					}
-				}
-
-				// try and get the factory
-				factory = (ProjectionModelNodeAdapterFactoryHTML) factoryRegistry.getFactoryFor(ProjectionModelNodeAdapterHTML.class);
-			}
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-		
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderHTML.getAdapterFactory: " + (end - start));
-		return factory;
-	}
-
-	/**
-	 * Initialize this provider with the correct document. Assumes projection
-	 * is enabled. (otherwise, only install would have been called)
-	 */
-	public void initialize() {
-		if (!isInstalled())
-			return;
-
-		// set projection viewer to null on old document's adapter factory
-		ProjectionModelNodeAdapterFactoryHTML factory = getAdapterFactory(false);
-		if (factory != null) {
-			factory.setProjectionViewer(null);
-		}
-
-		// clear out all annotations
-		if (fViewer.getProjectionAnnotationModel() != null)
-			fViewer.getProjectionAnnotationModel().removeAllAnnotations();
-		
-		fDocument = fViewer.getDocument();
-
-		if (fDocument != null) {
-			// set projection viewer on new document's adapter factory
-			factory = getAdapterFactory(true);
-			if (factory != null) {
-				factory.setProjectionViewer(fViewer);
-			}
-
-			addAllAdapters();
-		}
-	}
-
-	/**
-	 * Associate a ProjectionViewer with this IStructuredTextFoldingProvider
-	 * 
-	 * @param viewer
-	 */
-	public void install(ProjectionViewer viewer) {
-		// uninstall before trying to install new viewer
-		if (isInstalled()) {
-			uninstall();
-		}
-		fViewer = viewer;
-		fViewer.addProjectionListener(this);
-	}
-
-	private boolean isInstalled() {
-		return fViewer != null;
-	}
-
-	public void projectionDisabled() {
-		ProjectionModelNodeAdapterFactoryHTML factory = getAdapterFactory(false);
-		if (factory != null) {
-			factory.setProjectionViewer(null);
-		}
-
-		fDocument = null;
-	}
-
-	public void projectionEnabled() {
-		initialize();
-	}
-
-	/**
-	 * Disconnect this IStructuredTextFoldingProvider from projection viewer
-	 */
-	public void uninstall() {
-		if (isInstalled()) {
-			projectionDisabled();
-
-			fViewer.removeProjectionListener(this);
-			fViewer = null;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/search/HTMLFindOccurrencesAction.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/search/HTMLFindOccurrencesAction.java
deleted file mode 100644
index c30659d..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/search/HTMLFindOccurrencesAction.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.search;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.html.core.text.IHTMLPartitions;
-import org.eclipse.wst.sse.ui.internal.search.BasicFindOccurrencesAction;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-
-
-/**
- * Configures a BasicFindOccurrencesAction with HTML partitions and regions
- * 
- * @author pavery
- */
-public class HTMLFindOccurrencesAction extends BasicFindOccurrencesAction {
-
-	public HTMLFindOccurrencesAction(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.internal.search.BasicFindOccurrencesAction#getPartitionTypes()
-	 */
-	public String[] getPartitionTypes() {
-
-		return new String[]{IHTMLPartitions.HTML_DEFAULT, IXMLPartitions.XML_DEFAULT};
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.internal.search.BasicFindOccurrencesAction#getRegionTypes()
-	 */
-	public String[] getRegionTypes() {
-
-		return new String[]{XMLRegionContext.XML_TAG_NAME, XMLRegionContext.XML_TAG_ATTRIBUTE_NAME, XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE};
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/EncodingTemplateVariableResolverHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/EncodingTemplateVariableResolverHTML.java
deleted file mode 100644
index 840dc85..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/EncodingTemplateVariableResolverHTML.java
+++ /dev/null
@@ -1,37 +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.html.ui.internal.templates;
-
-import org.eclipse.jface.text.templates.SimpleTemplateVariableResolver;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-
-
-public class EncodingTemplateVariableResolverHTML extends SimpleTemplateVariableResolver {
-	private static final String ENCODING_TYPE = getEncodingType();
-
-	private static String getEncodingType() {
-		return "encoding";
-	}
-
-	/**
-	 * Creates a new encoding variable
-	 */
-	public EncodingTemplateVariableResolverHTML() {
-		super(ENCODING_TYPE, "Creating files encoding preference");
-	}
-
-	protected String resolve(TemplateContext context) {
-		return HTMLCorePlugin.getDefault().getPluginPreferences().getString(CommonEncodingPreferenceNames.OUTPUT_CODESET);
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/TemplateContextTypeHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/TemplateContextTypeHTML.java
deleted file mode 100644
index bf775f4..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/TemplateContextTypeHTML.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.internal.templates;
-
-import org.eclipse.jface.text.templates.GlobalTemplateVariables;
-import org.eclipse.jface.text.templates.TemplateContextType;
-
-/**
- * Base class for HTML template context types. Templates of this context type
- * apply to any place within HTML content type.
- */
-public class TemplateContextTypeHTML extends TemplateContextType {
-
-	public TemplateContextTypeHTML() {
-		super();
-		addResolver(new GlobalTemplateVariables.Cursor());
-		addResolver(new GlobalTemplateVariables.Date());
-		addResolver(new GlobalTemplateVariables.Dollar());
-		addResolver(new GlobalTemplateVariables.LineSelection());
-		addResolver(new GlobalTemplateVariables.Time());
-		addResolver(new GlobalTemplateVariables.User());
-		addResolver(new GlobalTemplateVariables.WordSelection());
-		addResolver(new GlobalTemplateVariables.Year());
-		addResolver(new EncodingTemplateVariableResolverHTML());
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/TemplateContextTypeIdsHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/TemplateContextTypeIdsHTML.java
deleted file mode 100644
index 794b13d..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/templates/TemplateContextTypeIdsHTML.java
+++ /dev/null
@@ -1,50 +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.html.ui.internal.templates;
-
-
-public class TemplateContextTypeIdsHTML {
-
-	public static final String ALL = getAll();
-
-	public static final String ATTRIBUTE = getAttribute();
-
-	public static final String ATTRIBUTE_VALUE = getAttributeValue();
-
-	public static final String NEW = getNew();
-
-	public static final String TAG = getTag();
-
-	private static String getAll() {
-		return getPrefix() + "_all"; //$NON-NLS-1$
-	}
-
-	private static String getAttribute() {
-		return getPrefix() + "_attribute"; //$NON-NLS-1$
-	}
-
-	private static String getAttributeValue() {
-		return getPrefix() + "_attribute_value"; //$NON-NLS-1$
-	}
-
-	private static String getNew() {
-		return getPrefix() + "_new"; //$NON-NLS-1$
-	}
-
-	private static String getTag() {
-		return getPrefix() + "_tag"; //$NON-NLS-1$
-	}
-
-	private static String getPrefix() {
-		return "html"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLWizard.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLWizard.java
deleted file mode 100644
index 95e1da9..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/internal/wizard/NewHTMLWizard.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package org.eclipse.wst.html.ui.internal.wizard;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.Logger;
-
-public class NewHTMLWizard extends Wizard implements INewWizard {
-	static String PAGE_IMAGE = "/icons/full/wizban/newhfile_wiz.gif";
-	private WizardNewFileCreationPage fNewFilePage;
-	private IStructuredSelection fSelection;
-	List fValidExtensions = new ArrayList(Arrays.asList(new String[]{"html", "xhtml"}));
-
-	public void addPages() {
-		fNewFilePage = new WizardNewFileCreationPage("HTMLWizardNewFileCreationPage", new StructuredSelection(IDE.computeSelectedResources(fSelection))) {
-			protected boolean validatePage() {
-				IPath handlePath = new Path(getFileName());
-				String extension = handlePath.getFileExtension();
-				if (extension == null || !fValidExtensions.contains(extension)) {
-					setErrorMessage(HTMLUIPlugin.getResourceString("%_ERROR_FILENAME_MUST_END_HTML"));
-					return false;
-				}
-				setErrorMessage(null);
-				return super.validatePage();
-			}
-		};
-		fNewFilePage.setTitle(HTMLUIPlugin.getResourceString("%_UI_WIZARD_NEW_HEADING"));
-		fNewFilePage.setDescription(HTMLUIPlugin.getResourceString("%_UI_WIZARD_NEW_DESCRIPTION"));
-
-		addPage(fNewFilePage);
-	}
-
-	public void init(IWorkbench aWorkbench, IStructuredSelection aSelection) {
-		fSelection = aSelection;
-		setWindowTitle(HTMLUIPlugin.getResourceString("%_UI_WIZARD_NEW_TITLE"));
-		if (PAGE_IMAGE != null) {
-			ImageDescriptor descriptor = HTMLUIPlugin.getDefault().getImageRegistry().getDescriptor(PAGE_IMAGE);
-			if (descriptor == null) {
-				descriptor = ImageDescriptor.createFromURL(HTMLUIPlugin.getDefault().getBundle().getEntry(PAGE_IMAGE));
-				HTMLUIPlugin.getDefault().getImageRegistry().put(PAGE_IMAGE, descriptor);
-			}
-			setDefaultPageImageDescriptor(descriptor);
-		}
-	}
-
-	private void openEditor(final IFile file) {
-		if (file != null) {
-			getShell().getDisplay().asyncExec(new Runnable() {
-				public void run() {
-					try {
-						IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-						IDE.openEditor(page, file, true);
-					}
-					catch (PartInitException e) {
-						Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-					}
-				}
-			});
-		}
-	}
-
-	public boolean performFinish() {
-		IFile file = fNewFilePage.createNewFile();
-		openEditor(file);
-		return true;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/openon/DefaultOpenOnHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/openon/DefaultOpenOnHTML.java
deleted file mode 100644
index adfe750..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/openon/DefaultOpenOnHTML.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.openon;
-
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.util.PathHelper;
-import org.eclipse.wst.sse.core.util.URIResolver;
-import org.eclipse.wst.sse.ui.internal.Logger;
-import org.eclipse.wst.xml.ui.openon.DefaultOpenOnXML;
-
-/**
- * This action class retrieves the link/file selected by the cursor and
- * attempts to open the link/file in the default editor or web browser
- * 
- * @deprecated Use base support for hyperlink navigation
- */
-public class DefaultOpenOnHTML extends DefaultOpenOnXML {
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sse.editor.xml.openon.DefaultOpenOnXML#resolveURI(java.lang.String,
-	 *      java.lang.String, java.lang.String)
-	 */
-	protected String resolveURI(String baseLocation, String publicId, String systemId) {
-		// currently using model's URI resolver until a better resolver is
-		// extended to common extensible URI resolver
-		// future_TODO: should use the new common extensible URI resolver when
-		// clients start implementing it
-		String resolvedURI = systemId;
-
-		if (systemId != null) {
-			IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());
-			try {
-				if (sModel != null) {
-					URIResolver resolver = sModel.getResolver();
-					resolvedURI = resolver != null ? resolver.getLocationByURI(systemId, true) : systemId;
-				}
-			}
-			catch (Exception e) {
-				Logger.logException(e);
-			}
-			finally {
-				if (sModel != null)
-					sModel.releaseFromRead();
-			}
-
-			// special adjustment for file protocol
-			if (systemId.startsWith(FILE_PROTOCOL)) {
-				PathHelper.removeLeadingSeparator(resolvedURI);
-			}
-		}
-		return resolvedURI;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLColorPage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLColorPage.java
deleted file mode 100644
index 5f39ed0..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLColorPage.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.preferences.ui;
-
-import java.util.ArrayList;
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.core.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore.OverlayKey;
-import org.eclipse.wst.sse.ui.preferences.ui.StyledTextColorPicker;
-import org.eclipse.wst.xml.ui.preferences.XMLColorPage;
-
-public class HTMLColorPage extends XMLColorPage {
-
-	/**
-	 * Set up all the style preference keys in the overlay store
-	 */
-	protected OverlayKey[] createOverlayStoreKeys() {
-		ArrayList overlayKeys = new ArrayList();
-		
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-		Iterator i = styleList.iterator();
-		while (i.hasNext()) {
-			overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.STRING, (String)i.next()));	
-		}
-
-		OverlayPreferenceStore.OverlayKey[] keys = new OverlayPreferenceStore.OverlayKey[overlayKeys.size()];
-		overlayKeys.toArray(keys);
-		return keys;
-	}
-
-	public String getSampleText() {
-		return HTMLUIPlugin.getResourceString("%Sample_HTML_doc"); //$NON-NLS-1$ = "<!DOCTYPE HTML\n\tPUBLIC \"-//W3C/DTD/ HTML 4.01 Transitional//EN\"\n\t\"http://www.w3.org/TR/html4/loose.dtd\">\n<HTML>\n\t<HEAD>\n\t\t<META content=\"text/html\">\n\t\t<TITLE>HTML Highlighting Preferences</TITLE>\n\t</HEAD>\n<BODY>\n\t<!--\n\t\twe need a flaming logo!\n\t-->\n\t<%\t%>\n</BODY>\n</HTML>"
-
-	}
-
-	protected void initContextStyleMap(Dictionary contextStyleMap) {
-
-		initCommonContextStyleMap(contextStyleMap);
-		initDocTypeContextStyleMap(contextStyleMap);
-		// FIXME: these were "brute forced" commented out when moving XMLJSPRegionContexts
-		// effect is unknown, but thought just to effect preference page
-		//contextStyleMap.put(XMLJSPRegionContexts.JSP_DIRECTIVE_NAME, IStyleConstantsXML.TAG_NAME);
-		//contextStyleMap.put(XMLJSPRegionContexts.JSP_COMMENT_OPEN, IStyleConstantsXML.COMMENT_BORDER);
-		//contextStyleMap.put(XMLJSPRegionContexts.JSP_COMMENT_TEXT, IStyleConstantsXML.COMMENT_TEXT);
-		//contextStyleMap.put(XMLJSPRegionContexts.JSP_COMMENT_CLOSE, IStyleConstantsXML.COMMENT_BORDER);
-	}
-
-	protected void initDescriptions(Dictionary descriptions) {
-
-		initCommonDescriptions(descriptions);
-		initDocTypeDescriptions(descriptions);
-	}
-
-	protected void initStyleList(ArrayList list) {
-		initCommonStyleList(list);
-		initDocTypeStyleList(list);
-		//	list.add(HTMLColorManager.SCRIPT_AREA_BORDER);
-
-	}
-
-	protected void setupPicker(StyledTextColorPicker picker) {
-		IModelManager mmanager = StructuredModelManager.getModelManager();
-		picker.setParser(mmanager.createStructuredDocumentFor(ContentTypeIdForHTML.ContentTypeID_HTML).getParser());
-
-		// create descriptions for hilighting types
-		Dictionary descriptions = new Hashtable();
-		initDescriptions(descriptions);
-
-		// map region types to hilighting types
-		Dictionary contextStyleMap = new Hashtable();
-		initContextStyleMap(contextStyleMap);
-
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-
-		picker.setContextStyleMap(contextStyleMap);
-		picker.setDescriptions(descriptions);
-		picker.setStyleList(styleList);
-
-		//	updatePickerFont(picker);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Control c = super.createContents(parent);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.HTML_PREFWEBX_STYLES_HELPID);
-		return c;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return HTMLUIPlugin.getDefault().getPreferenceStore();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.preferences.ui.AbstractColorPage#savePreferences()
-	 */
-	protected void savePreferences() {
-		HTMLUIPlugin.getDefault().savePluginPreferences();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLFilesPreferencePage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLFilesPreferencePage.java
deleted file mode 100644
index 56b5e4f..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLFilesPreferencePage.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.preferences.ui;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.core.HTMLFilesPreferenceNames;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.xml.ui.preferences.EncodingSettings;
-import org.eclipse.wst.xml.ui.preferences.WorkbenchDefaultEncodingSettings;
-import org.eclipse.wst.xml.ui.preferences.XMLFilesPreferencePage;
-
-public class HTMLFilesPreferencePage extends XMLFilesPreferencePage {
-	private WorkbenchDefaultEncodingSettings fInputEncodingSettings = null;
-	private Text fHtmlext_Field;
-	private Button fDoctype_Button;
-	private Button fGenerator_Button;
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.preferences.ui.AbstractPreferencePage#getModelPreferences()
-	 */
-	protected Preferences getModelPreferences() {
-		return HTMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#doGetPreferenceStore()
-	 */
-	protected IPreferenceStore doGetPreferenceStore() {
-		return HTMLUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.preferences.ui.XMLFilesPreferencePage#doSavePreferenceStore()
-	 */
-	protected void doSavePreferenceStore() {
-		HTMLCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Composite scrolledComposite = createScrolledComposite(parent);
-		createContentsForCreatingOrSavingGroup(scrolledComposite);
-		createContentsForCreatingGroup(scrolledComposite);
-		createContentsForLoadingGroup(scrolledComposite);
-		
-		WorkbenchHelp.setHelp(scrolledComposite, IHelpContextIds.HTML_PREFWEBX_FILES_HELPID);
-		
-		setSize(scrolledComposite);
-		loadPreferences();
-		
-		return scrolledComposite;
-	}
-
-	protected void createContentsForLoadingGroup(Composite parent) {
-		Group group = createGroup(parent, 1);
-		group.setText(HTMLUIPlugin.getResourceString("%HTMLFilesPreferencePage.0")); //$NON-NLS-1$
-
-		fInputEncodingSettings = new WorkbenchDefaultEncodingSettings(group);
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.preferences.ui.AbstractPreferencePage#initializeValues()
-	 */
-	protected void initializeValues() {
-		super.initializeValues();
-		initializeValuesForLoadingGroup();
-	}
-	
-	protected void initializeValuesForLoadingGroup() {
-		String encoding = getModelPreferences().getString(CommonEncodingPreferenceNames.INPUT_CODESET);
-		
-		fInputEncodingSettings.setIANATag(encoding);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#performDefaults()
-	 */
-	protected void performDefaults() {
-		super.performDefaults();
-		performDefaultsForLoadingGroup();
-	}
-	
-	protected void performDefaultsForLoadingGroup() {
-		String encoding = getModelPreferences().getDefaultString(CommonEncodingPreferenceNames.INPUT_CODESET);
-
-		fInputEncodingSettings.setIANATag(encoding);
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.preferences.ui.AbstractPreferencePage#storeValues()
-	 */
-	protected void storeValues() {
-		super.storeValues();
-		storeValuesForLoadingGroup();
-	}
-	
-	protected void storeValuesForLoadingGroup() {
-		getModelPreferences().setValue(CommonEncodingPreferenceNames.INPUT_CODESET, fInputEncodingSettings.getIANATag());		
-	}
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.preferences.ui.XMLFilesPreferencePage#createContentsForCreatingGroup(org.eclipse.swt.widgets.Composite)
-	 */
-	protected void createContentsForCreatingGroup(Composite parent) {
-		Group creatingGroup = createGroup(parent, 2);
-		creatingGroup.setText(SSEUIPlugin.getResourceString("%Creating_files")); //$NON-NLS-1$
-
-		// Add this suffix..
-		createLabel(creatingGroup, HTMLUIPlugin.getResourceString("%HTMLFilesPreferencePage.1"));	//$NON-NLS-1$
-		fHtmlext_Field = createTextField(creatingGroup);
-		
-		// Encoding..
-		Label label = createLabel(creatingGroup, SSEUIPlugin.getResourceString("%Encoding_desc")); //$NON-NLS-1$
-		((GridData)label.getLayoutData()).horizontalSpan = 2;
-		fEncodingSettings = new EncodingSettings(creatingGroup);
-		((GridData)fEncodingSettings.getLayoutData()).horizontalSpan = 2;
-		
-		// Insert DOCTYPE declaration
-		fDoctype_Button = createCheckBox(creatingGroup, HTMLUIPlugin.getResourceString("%HTMLFilesPreferencePage.2"));	//$NON-NLS-1$
-		((GridData)fDoctype_Button.getLayoutData()).horizontalSpan = 2;
-		
-		// Insert GENERATOR with META tag
-		fGenerator_Button = createCheckBox(creatingGroup, HTMLUIPlugin.getResourceString("%HTMLFilesPreferencePage.3"));	//$NON-NLS-1$
-		((GridData)fGenerator_Button.getLayoutData()).horizontalSpan = 2;
-	}
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.preferences.ui.XMLFilesPreferencePage#initializeValuesForCreatingGroup()
-	 */
-	protected void initializeValuesForCreatingGroup() {
-		super.initializeValuesForCreatingGroup();
-		
-		String defaultSuffix = getModelPreferences().getString(HTMLFilesPreferenceNames.DEFAULT_SUFFIX);
-		if (defaultSuffix.length() > 0) {
-			fHtmlext_Field.setText(defaultSuffix);
-		}
-	
-		boolean bCheck;
-		bCheck = getModelPreferences().getBoolean(HTMLFilesPreferenceNames.GENERATE_DOCUMENT_TYPE);
-		fDoctype_Button.setSelection(bCheck);
-		
-		bCheck = getModelPreferences().getBoolean(HTMLFilesPreferenceNames.GENERATE_GENERATOR);
-		fGenerator_Button.setSelection(bCheck);
-	}
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.preferences.ui.XMLFilesPreferencePage#performDefaultsForCreatingGroup()
-	 */
-	protected void performDefaultsForCreatingGroup() {
-		super.performDefaultsForCreatingGroup();
-
-		fHtmlext_Field.setText(getModelPreferences().getDefaultString(HTMLFilesPreferenceNames.DEFAULT_SUFFIX));
-		
-		fDoctype_Button.setSelection(getModelPreferences().getDefaultBoolean(HTMLFilesPreferenceNames.GENERATE_DOCUMENT_TYPE));
-		fGenerator_Button.setSelection(getModelPreferences().getDefaultBoolean(HTMLFilesPreferenceNames.GENERATE_GENERATOR));
-	}
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.preferences.ui.XMLFilesPreferencePage#storeValuesForCreatingGroup()
-	 */
-	protected void storeValuesForCreatingGroup() {
-		super.storeValuesForCreatingGroup();
-		
-		String str_ext = fHtmlext_Field.getText();	
-		getModelPreferences().setValue(HTMLFilesPreferenceNames.DEFAULT_SUFFIX, str_ext); 
-
-		getModelPreferences().setValue(HTMLFilesPreferenceNames.GENERATE_DOCUMENT_TYPE, fDoctype_Button.getSelection());
-	
-		getModelPreferences().setValue(HTMLFilesPreferenceNames.GENERATE_GENERATOR, fGenerator_Button.getSelection());
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLSourcePreferencePage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLSourcePreferencePage.java
deleted file mode 100644
index fa2930c..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLSourcePreferencePage.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.preferences.ui;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.html.core.HTMLCorePlugin;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.xml.ui.preferences.XMLSourcePreferencePage;
-
-public class HTMLSourcePreferencePage extends XMLSourcePreferencePage {
-
-	protected Button fTagNameAsIs = null;
-	protected Button fTagNameUpper = null;
-	protected Button fTagNameLower = null;
-	protected Button fAttrNameAsIs = null;
-	protected Button fAttrNameUpper = null;
-	protected Button fAttrNameLower = null;
-
-	protected void createContentsForGrammarConstraintsGroup(Composite parent) {
-		// do nothing
-	}
-
-	protected void performDefaultsForGrammarConstraintsGroup() {
-		// do nothing
-	}
-
-	protected void initializeValuesForGrammarConstraintsGroup() {
-		// do nothing
-	}
-
-	protected void storeValuesForGrammarConstraintsGroup() {
-		// do nothing
-	}
-
-	protected void createContentsForContentAssistGroup(Composite parent) {
-		super.createContentsForContentAssistGroup(parent);
-
-		// add one more group of preferences
-		createContentsForPreferredCaseGroup(parent, 2);
-	}
-
-	protected Composite createContentsForPreferredCaseGroup(Composite parent, int columnSpan) {
-		Group caseGroup = createGroup(parent, columnSpan);
-		caseGroup.setText(SSEUIPlugin.getResourceString("%Preferred_markup_case_UI_")); //$NON-NLS-1$ = "Preferred markup case"
-
-		// d257064 need to associate group w/ radio buttons so radio buttons header can be read
-		Group tagNameGroup = createGroup(caseGroup, 1);
-		tagNameGroup.setText(SSEUIPlugin.getResourceString("%Tag_names__UI_")); //$NON-NLS-1$ = "Tag names:"
-		fTagNameUpper = createRadioButton(tagNameGroup, SSEUIPlugin.getResourceString("%Tag_names_Upper_case_UI_")); //$NON-NLS-1$ = "&Upper case"
-		fTagNameLower = createRadioButton(tagNameGroup, SSEUIPlugin.getResourceString("%Tag_names_Lower_case_UI_")); //$NON-NLS-1$ = "&Lower case"
-
-		// d257064 need to associate group w/ radio buttons so radio buttons header can be read
-		Group attrNameGroup = createGroup(caseGroup, 1);
-		attrNameGroup.setText(SSEUIPlugin.getResourceString("%Attribute_names__UI_")); //$NON-NLS-1$ = "Attribute names:"
-		fAttrNameUpper = createRadioButton(attrNameGroup, SSEUIPlugin.getResourceString("%Attribute_names_Upper_case_UI_")); //$NON-NLS-1$ = "U&pper case"
-		fAttrNameLower = createRadioButton(attrNameGroup, SSEUIPlugin.getResourceString("%Attribute_names_Lower_case_UI_")); //$NON-NLS-1$ = "L&ower case"
-
-		return parent;
-
-	}
-
-	protected void performDefaults() {
-		fTagNameUpper.setSelection(getModelPreferences().getDefaultInt(CommonModelPreferenceNames.TAG_NAME_CASE) == CommonModelPreferenceNames.UPPER);
-		fTagNameLower.setSelection(getModelPreferences().getDefaultInt(CommonModelPreferenceNames.TAG_NAME_CASE) == CommonModelPreferenceNames.LOWER);
-		fAttrNameUpper.setSelection(getModelPreferences().getDefaultInt(CommonModelPreferenceNames.ATTR_NAME_CASE) == CommonModelPreferenceNames.UPPER);
-		fAttrNameLower.setSelection(getModelPreferences().getDefaultInt(CommonModelPreferenceNames.ATTR_NAME_CASE) == CommonModelPreferenceNames.LOWER);
-
-		super.performDefaults();
-	}
-
-	protected void initializeValues() {
-		fTagNameUpper.setSelection(getModelPreferences().getInt(CommonModelPreferenceNames.TAG_NAME_CASE) == CommonModelPreferenceNames.UPPER);
-		fTagNameLower.setSelection(getModelPreferences().getInt(CommonModelPreferenceNames.TAG_NAME_CASE) == CommonModelPreferenceNames.LOWER);
-		fAttrNameUpper.setSelection(getModelPreferences().getInt(CommonModelPreferenceNames.ATTR_NAME_CASE) == CommonModelPreferenceNames.UPPER);
-		fAttrNameLower.setSelection(getModelPreferences().getInt(CommonModelPreferenceNames.ATTR_NAME_CASE) == CommonModelPreferenceNames.LOWER);
-
-		super.initializeValues();
-	}
-
-	protected void storeValues() {
-		if (fTagNameUpper.getSelection())
-			getModelPreferences().setValue(CommonModelPreferenceNames.TAG_NAME_CASE, CommonModelPreferenceNames.UPPER);
-		else
-			getModelPreferences().setValue(CommonModelPreferenceNames.TAG_NAME_CASE, CommonModelPreferenceNames.LOWER);
-		if (fAttrNameUpper.getSelection())
-			getModelPreferences().setValue(CommonModelPreferenceNames.ATTR_NAME_CASE, CommonModelPreferenceNames.UPPER);
-		else
-			getModelPreferences().setValue(CommonModelPreferenceNames.ATTR_NAME_CASE, CommonModelPreferenceNames.LOWER);
-
-		super.storeValues();
-	}
-
-	public boolean performOk() {
-		boolean result = super.performOk();
-
-		doSavePreferenceStore();
-
-		return result;
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.preferences.ui.xml.XMLSourcePreferencePage#getModelPreferences()
-	 */
-	protected Preferences getModelPreferences() {
-		return HTMLCorePlugin.getDefault().getPluginPreferences();
-	}
-	
-	protected IPreferenceStore doGetPreferenceStore() {
-		return HTMLUIPlugin.getDefault().getPreferenceStore();
-	}
-	
-	protected void doSavePreferenceStore() {
-		HTMLUIPlugin.getDefault().savePluginPreferences(); // UI
-		HTMLCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Control c = super.createContents(parent);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.HTML_PREFWEBX_SOURCE_HELPID);
-		return c;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLTemplatePreferencePage.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLTemplatePreferencePage.java
deleted file mode 100644
index 5ef2642..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/preferences/ui/HTMLTemplatePreferencePage.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.preferences.ui;
-
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.ui.texteditor.templates.TemplatePreferencePage;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.html.ui.internal.editor.IHelpContextIds;
-
-
-/**
- * Preference page for HTML templates
- */
-public class HTMLTemplatePreferencePage extends TemplatePreferencePage {
-	
-	public HTMLTemplatePreferencePage() {
-		HTMLUIPlugin htmlEditorPlugin = HTMLUIPlugin.getDefault();
-		
-		setPreferenceStore(htmlEditorPlugin.getPreferenceStore());
-		setTemplateStore(htmlEditorPlugin.getTemplateStore());
-		setContextTypeRegistry(htmlEditorPlugin.getTemplateContextRegistry());
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.IPreferencePage#performOk()
-	 */
-	public boolean performOk() {
-  	  boolean ok = super.performOk();
-  	  HTMLUIPlugin.getDefault().savePluginPreferences();
-	  return ok;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.templates.TemplatePreferencePage#isShowFormatterSetting()
-	 */
-	protected boolean isShowFormatterSetting() {
-		// template formatting has not been implemented
-		return false;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite ancestor) {
-		Control c = super.createContents(ancestor);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.HTML_PREFWEBX_TEMPLATES_HELPID);
-		return c;
-	}
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/registry/AdapterFactoryProviderForEmbeddedHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/registry/AdapterFactoryProviderForEmbeddedHTML.java
deleted file mode 100644
index 910c2e2..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/registry/AdapterFactoryProviderForEmbeddedHTML.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.registry;
-
-import org.eclipse.wst.html.core.modelhandler.EmbeddedHTML;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.ui.registry.embedded.EmbeddedAdapterFactoryProvider;
-
-public class AdapterFactoryProviderForEmbeddedHTML implements EmbeddedAdapterFactoryProvider {
-
-	/*
-	 * @see AdapterFactoryProvider#addAdapterFactories(IStructuredModel)
-	 */
-	public void addAdapterFactories(IStructuredModel structuredModel) {
-		//        if (structuredModel instanceof XMLModel) {
-		//            XMLDocument doc = ((XMLModel) structuredModel).getDocument();
-		//        }
-	}
-
-	/*
-	 * @see AdapterFactoryProvider#isFor(ContentTypeDescription)
-	 */
-	public boolean isFor(EmbeddedTypeHandler contentTypeDescription) {
-		return (contentTypeDescription instanceof EmbeddedHTML);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/registry/AdapterFactoryProviderForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/registry/AdapterFactoryProviderForHTML.java
deleted file mode 100644
index 5259ed7..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/registry/AdapterFactoryProviderForHTML.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.registry;
-
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.html.core.modelhandler.ModelHandlerForHTML;
-import org.eclipse.wst.html.ui.views.contentoutline.JFaceNodeAdapterFactoryForHTML;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.modelhandler.IDocumentTypeHandler;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.util.Assert;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.ui.views.properties.XMLPropertySourceAdapterFactory;
-
-/**
- * 
- */
-public class AdapterFactoryProviderForHTML implements AdapterFactoryProvider {
-
-	/*
-	 * @see AdapterFactoryProvider#addAdapterFactories(IStructuredModel)
-	 */
-	public void addAdapterFactories(IStructuredModel structuredModel) {
-
-		// these are the normal edit side content based factories		
-		addContentBasedFactories(structuredModel);
-		// ===
-		// Must update/add to propagating adapter here too
-		if (structuredModel instanceof XMLModel) {
-			addPropagatingAdapters(structuredModel);
-		}
-		// ===
-	}
-
-	protected void addContentBasedFactories(IStructuredModel structuredModel) {
-
-		FactoryRegistry factoryRegistry = structuredModel.getFactoryRegistry();
-		Assert.isNotNull(factoryRegistry, "Program Error: client caller must ensure model has factory registry"); //$NON-NLS-1$
-		IAdapterFactory factory = null;
-		// == this list came from the previous "HTML only" list
-		//		factory = factoryRegistry.getFactoryFor(ContentAssistAdapter.class);
-
-		//		Doc Partion change: no more adapter factories for edit side functions
-
-		//		if (factory == null) {
-		//			factory = new HTMLContentAssistAdapterFactory();
-		//			factoryRegistry.addFactory(factory);
-		//		}
-
-		//		factory = factoryRegistry.getFactoryFor(DoubleClickAdapter.class);
-		//		if (factory == null) {
-		//			factory = new DoubleClickAdapterFactory(DoubleClickAdapter.class, true);
-		//			factoryRegistry.addFactory(factory);
-		//		}
-		//		// == New adapter factories for tagInfo
-		//		factory = factoryRegistry.getFactoryFor(HoverHelpAdapter.class);
-		//		if (factory == null) {
-		//			factory = new HTMLHoverHelpAdapterFactory(HoverHelpAdapter.class, true);
-		//			factoryRegistry.addFactory(factory);
-		//		}
-		//		factory = factoryRegistry.getFactoryFor(TagInfoProviderAdapter.class);
-		//		if (factory == null) {
-		//			factory = new JSTagInfoProviderAdapterFactory(TagInfoProviderAdapter.class, true);
-		//			factoryRegistry.addFactory(factory);
-		//		}
-		// ==
-		// == this list came from the previous 'for both XML and HTML' list
-		factory = factoryRegistry.getFactoryFor(IPropertySource.class);
-		if (factory == null) {
-			factory = new XMLPropertySourceAdapterFactory();
-			factoryRegistry.addFactory(factory);
-		}
-		factory = factoryRegistry.getFactoryFor(IJFaceNodeAdapter.class);
-		if (factory == null) {
-			factory = new JFaceNodeAdapterFactoryForHTML();
-			factoryRegistry.addFactory(factory);
-		}
-		//		factory = factoryRegistry.getFactoryFor(com.ibm.sed.edit.adapters.LineStyleProvider.class);
-		//		if (factory == null) {
-		//			factory = new LineStyleProviderFactoryForHTML();
-		//			factoryRegistry.addFactory(factory);
-		//		}
-
-		//		factory = factoryRegistry.getFactoryFor(ReconcilerAdapter.class);
-		//		if (factory == null) {
-		//			// can't use Propagating system since the Node tree is already built by now
-		//			ReconcilerAdapterFactoryForXML reconcilerFactory = new ReconcilerAdapterFactoryForXML();
-		//			factoryRegistry.addFactory(reconcilerFactory);
-		//			reconcilerFactory.adaptAll((XMLModel) structuredModel);
-		//		}
-	}
-
-	protected void addPropagatingAdapters(IStructuredModel structuredModel) {
-//		XMLModel xmlModel = (XMLModel) structuredModel;
-//		XMLDocument document = xmlModel.getDocument();
-//		PropagatingAdapter propagatingAdapter = (PropagatingAdapter) document.getAdapterFor(PropagatingAdapter.class);
-//		if (propagatingAdapter != null) {
-			// no longer needs?			
-			//			factory = new HTMLLineStyeUpdaterFactory();
-			//			propagatingAdapter.addAdaptOnCreateFactory(factory);
-			//			propagatingAdapter.initializeForFactory(factory, document);
-
-			// checking if we should bother adding this factory
-			// if the preference says not to check validity, we don't bother creating this factory
-			// to improve performance...
-			//if(structuredModel.getStructuredPreferenceStore().getPreferenceString(CommonPreferenceNames.EDITOR_VALIDATION_METHOD).equals(CommonPreferenceNames.EDITOR_VALIDATION_CONTENT_MODEL)) {
-			//factory = new ReconcilerAdapterFactoryForXML();
-			//propagatingAdapter.addAdaptOnCreateFactory(factory);
-			// (pa) perf:
-			//propagatingAdapter.initializeForFactory(factory, xmlModel.getDocument());
-			//}
-
-//		}
-	}
-
-	/*
-	 * @see AdapterFactoryProvider#isFor(ContentTypeDescription)
-	 */
-	public boolean isFor(IDocumentTypeHandler contentTypeDescription) {
-		return (contentTypeDescription instanceof ModelHandlerForHTML);
-	}
-
-	public void reinitializeFactories(IStructuredModel structuredModel) {
-		// nothing to do, since no embedded type
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/style/IStyleConstantsHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/style/IStyleConstantsHTML.java
deleted file mode 100644
index d0df826..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/style/IStyleConstantsHTML.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.style;
-
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-
-/**
- * Contains the symbolic name of styles used by LineStyleProvider, ColorManager, and
- * any others who may be interested
- */
-public interface IStyleConstantsHTML extends IStyleConstantsXML {
-	public static final String SCRIPT_AREA_BORDER = "SCRIPT_AREA_BORDER";//$NON-NLS-1$
-	public static final String SCRIPT_AREA = "SCRIPT_AREA";//$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/style/LineStyleProviderForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/style/LineStyleProviderForHTML.java
deleted file mode 100644
index 9e593a13..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/style/LineStyleProviderForHTML.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.style;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-import org.eclipse.wst.xml.ui.style.LineStyleProviderForXML;
-
-public class LineStyleProviderForHTML extends LineStyleProviderForXML implements LineStyleProvider {
-
-	public LineStyleProviderForHTML() {
-		super();
-	}
-
-	/**
-	 * a method to centralize all the "format rules" for regions 
-	 * specifically associated for how to "open" the region.
-	 */
-	// NOTE: this method was just copied down form LineStyleProviderForXML
-	public TextAttribute getAttributeFor(ITextRegion region) {
-		// not sure why this is coming through null, but just to catch it
-		if (region == null) {
-			return (TextAttribute)getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-		}
-		if (region.getType() == XMLRegionContext.BLOCK_TEXT) {
-			return (TextAttribute)getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-		}
-		// first try "standard" tag attributes from super class
-		return super.getAttributeFor(region);
-	}
-
-	protected void loadColors() {
-		super.loadColors();
-
-		addTextAttribute(IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-	}
-	
-	
-	protected void handlePropertyChange(PropertyChangeEvent event) {
-		if (event != null) {
-			String prefKey = event.getProperty();
-			// check if preference changed is a style preference
-			if (IStyleConstantsHTML.SCRIPT_AREA_BORDER.equals(prefKey)) {
-				addTextAttribute(IStyleConstantsHTML.SCRIPT_AREA_BORDER);
-
-				// this is what AbstractLineStyleProvider.propertyChange() does
-				getHighlighter().refreshDisplay();
-			} else {
-				super.handlePropertyChange(event);
-			}
-		} else {
-			super.handlePropertyChange(event);
-		}
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.style.AbstractLineStyleProvider#getColorPreferences()
-	 */
-	protected IPreferenceStore getColorPreferences() {
-		return HTMLUIPlugin.getDefault().getPreferenceStore();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLBestMatchHoverProcessor.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLBestMatchHoverProcessor.java
deleted file mode 100644
index 6437dff..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLBestMatchHoverProcessor.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.taginfo.AbstractBestMatchHoverProcessor;
-
-/**
- * Provides the best html hover help documentation (by using other hover help processors)
- * Priority of hover help processors is:
- * ProblemHoverProcessor, HTMLTagInfoHoverProcessor, AnnotationHoverProcessor
- */
-public class HTMLBestMatchHoverProcessor extends AbstractBestMatchHoverProcessor {
-	HTMLTagInfoHoverProcessor fTagInfoHover;
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.structured.taginfo.AbstractBestMatchHoverProcessor#getTagInfoHover()
-	 */
-	protected ITextHover getTagInfoHover() {
-		if (fTagInfoHover == null) {
-			fTagInfoHover = new HTMLTagInfoHoverProcessor();
-		}
-		return fTagInfoHover;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLInformationProvider.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLInformationProvider.java
deleted file mode 100644
index 8f78ff2..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLInformationProvider.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.taginfo;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.information.IInformationProvider;
-import org.eclipse.jface.text.information.IInformationProviderExtension;
-
-/**
- * Provides context information for HTML tags (Shows tooltip description)
- * 
- * @author amywu
- */
-public class HTMLInformationProvider implements IInformationProvider, IInformationProviderExtension {
-
-	private HTMLBestMatchHoverProcessor fTextHover = null;
-
-	public HTMLInformationProvider() {
-		fTextHover = new HTMLBestMatchHoverProcessor();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.information.IInformationProvider#getSubject(org.eclipse.jface.text.ITextViewer, int)
-	 */
-	public IRegion getSubject(ITextViewer textViewer, int offset) {
-		return fTextHover.getHoverRegion(textViewer, offset);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.information.IInformationProvider#getInformation(org.eclipse.jface.text.ITextViewer, org.eclipse.jface.text.IRegion)
-	 */
-	public String getInformation(ITextViewer textViewer, IRegion subject) {
-		return (String)getInformation2(textViewer, subject);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.information.IInformationProviderExtension#getInformation2(org.eclipse.jface.text.ITextViewer, org.eclipse.jface.text.IRegion)
-	 */
-	public Object getInformation2(ITextViewer textViewer, IRegion subject) {
-		return fTextHover.getHoverInfo(textViewer, subject);
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLTagInfoHoverProcessor.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLTagInfoHoverProcessor.java
deleted file mode 100644
index 7633baa..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/taginfo/HTMLTagInfoHoverProcessor.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.taginfo;
-
-
-
-import org.eclipse.wst.xml.ui.taginfo.XMLTagInfoHoverProcessor;
-
-/**
- * Provides hover help documentation for HTML tags
- * 
- * @author amywu
- */
-public class HTMLTagInfoHoverProcessor extends XMLTagInfoHoverProcessor {
-	//	currently empty because XMLTagInfoHoverProcessor handles all cases relevant to HTML
-	public HTMLTagInfoHoverProcessor() {
-		super();
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/text/HTMLDocumentRegionEdgeMatcher.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/text/HTMLDocumentRegionEdgeMatcher.java
deleted file mode 100644
index 4507f43..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/text/HTMLDocumentRegionEdgeMatcher.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.text;
-
-import org.eclipse.jdt.internal.ui.text.JavaPairMatcher;
-import org.eclipse.wst.sse.ui.text.DocumentRegionEdgeMatcher;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-public class HTMLDocumentRegionEdgeMatcher extends DocumentRegionEdgeMatcher {
-
-	protected final static char[] BRACKETS = {'{', '}', '(', ')', '[', ']'};
-
-	/**
-	 * @param validContexts
-	 * @param nextMatcher
-	 */
-	public HTMLDocumentRegionEdgeMatcher() {
-		super(new String[]{XMLRegionContext.XML_TAG_NAME, XMLRegionContext.XML_COMMENT_TEXT, XMLRegionContext.XML_CDATA_TEXT, XMLRegionContext.XML_PI_OPEN, XMLRegionContext.XML_PI_CONTENT}, new JavaPairMatcher(BRACKETS));
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/HTMLContentOutlineConfiguration.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/HTMLContentOutlineConfiguration.java
deleted file mode 100644
index fc5c1ec..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/HTMLContentOutlineConfiguration.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.views.contentoutline;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.wst.html.ui.internal.HTMLUIPlugin;
-import org.eclipse.wst.xml.ui.views.contentoutline.XMLContentOutlineConfiguration;
-import org.eclipse.wst.xml.ui.views.contentoutline.XMLNodeActionManager;
-
-public class HTMLContentOutlineConfiguration extends XMLContentOutlineConfiguration {
-
-	/**
-	 * @param editor
-	 */
-	public HTMLContentOutlineConfiguration() {
-		super();
-	}
-
-	/**
-	 * @see com.ibm.sse.editor.xml.views.contentoutline.XMLContentOutlineConfiguration#createNodeActionManager(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	protected XMLNodeActionManager createNodeActionManager(TreeViewer treeViewer) {
-		return new HTMLNodeActionManager(getEditor().getModel(), treeViewer);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration#getPreferenceStore()
-	 */
-	protected IPreferenceStore getPreferenceStore() {
-		return HTMLUIPlugin.getDefault().getPreferenceStore();
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/HTMLNodeActionManager.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/HTMLNodeActionManager.java
deleted file mode 100644
index 183457b..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/HTMLNodeActionManager.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.views.contentoutline;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.wst.html.core.HTMLCMProperties;
-import org.eclipse.wst.html.core.contenttype.ContentTypeIdForHTML;
-import org.eclipse.wst.html.core.format.HTMLFormatProcessorImpl;
-import org.eclipse.wst.html.core.internal.HTMLCorePlugin;
-import org.eclipse.wst.html.core.preferences.HTMLContentBuilder;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMContentBuilder;
-import org.eclipse.wst.xml.ui.views.contentoutline.XMLNodeActionManager;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-/**
- * 
- */
-public class HTMLNodeActionManager extends XMLNodeActionManager {
-	protected int fTagCase;
-	protected int fAttrCase;
-
-	public HTMLNodeActionManager(IStructuredModel model, Viewer viewer) {
-		super(model, viewer);
-		updateCase();
-	}
-
-	/**
-	 * If neccessary, employ a DOMContentBuilder that understands how to
-	 * change the case of HTML tags (but NOT taglib derived tags).
-	 */
-	public DOMContentBuilder createDOMContentBuilder(Document document) {
-		DOMContentBuilder builder = null;
-		if (model.getModelHandler().getAssociatedContentTypeId().equals(ContentTypeIdForHTML.ContentTypeID_HTML))
-			builder = new HTMLContentBuilder(document);
-		else
-			builder = super.createDOMContentBuilder(document);
-
-		return builder;
-	}
-
-	private boolean shouldIgnoreCase(CMNode cmnode) {
-		if (!cmnode.supports(HTMLCMProperties.SHOULD_IGNORE_CASE))
-			return false;
-		return ((Boolean) cmnode.getProperty(HTMLCMProperties.SHOULD_IGNORE_CASE)).booleanValue();
-	}
-
-	/**
-	 * Modify the displayed menuitem label to change the case of HTML children
-	 * but neither XML nor taglib-derived children.
-	 */
-	public String getLabel(Node parent, CMNode cmnode) {
-		String result = null;
-		//CMNode cmnode = action.getCMNode();
-		// don't change the case unless we're certain it is meaningless
-		if (shouldIgnoreCase(cmnode)) {
-			String name = cmnode.getNodeName();
-			if (cmnode.getNodeType() == CMNode.ELEMENT_DECLARATION) {
-				if (fTagCase == CommonModelPreferenceNames.LOWER)
-					name = name.toLowerCase();
-				else if (fTagCase == CommonModelPreferenceNames.UPPER)
-					name = name.toUpperCase();
-				// else do nothing
-			}
-			else if (cmnode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION) {
-				if (fAttrCase == CommonModelPreferenceNames.LOWER)
-					name = name.toLowerCase();
-				else if (fAttrCase == CommonModelPreferenceNames.UPPER)
-					name = name.toUpperCase();
-				// else do nothing
-			}
-			result = name;
-		}
-		else {
-			result = super.getLabel(parent, cmnode);
-		}
-
-		return result;
-	}
-
-	/**
-	 * Another HTML specific detail. 
-	 */
-	protected void updateCase() {
-		if (model.getModelHandler().getAssociatedContentTypeId().equals(ContentTypeIdForHTML.ContentTypeID_HTML)) {
-			Preferences prefs = HTMLCorePlugin.getDefault().getPluginPreferences(); //$NON-NLS-1$
-			fTagCase = prefs.getInt(CommonModelPreferenceNames.TAG_NAME_CASE);
-			fAttrCase = prefs.getInt(CommonModelPreferenceNames.ATTR_NAME_CASE);
-			//		Element caseSettings = HTMLPreferenceManager.getHTMLInstance().getElement(PreferenceNames.PREFERRED_CASE);
-			//		fTagCase = caseSettings.getAttribute(PreferenceNames.TAGNAME);
-			//		fAttrCase = caseSettings.getAttribute(PreferenceNames.ATTRIBUTENAME);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.sse.editor.xml.ui.actions.AbstractNodeActionManager#reformat(org.w3c.dom.Node, boolean)
-	 */
-	public void reformat(Node newElement, boolean deep) {
-		try {
-			// tell the model that we are about to make a big model change
-			model.aboutToChangeModel();
-
-			// format selected node
-			IStructuredFormatProcessor formatProcessor = new HTMLFormatProcessorImpl();
-			formatProcessor.formatNode(newElement);
-		}
-		finally {
-			// tell the model that we are done with the big model change
-			model.changedModel();
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/JFaceNodeAdapterFactoryForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/JFaceNodeAdapterFactoryForHTML.java
deleted file mode 100644
index 20754e7..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/JFaceNodeAdapterFactoryForHTML.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.views.contentoutline;
-
-
-
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.xml.ui.views.contentoutline.JFaceNodeAdapterFactory;
-
-/**
- * An adapter factory to create JFaceNodeAdapters.  Use this
- * adapter factory with a JFaceAdapterContentProvider to display
- * DOM nodes in a tree.
- */
-public class JFaceNodeAdapterFactoryForHTML extends JFaceNodeAdapterFactory {
-
-
-	public JFaceNodeAdapterFactoryForHTML() {
-		this(IJFaceNodeAdapter.class, true);
-	}
-
-	public JFaceNodeAdapterFactoryForHTML(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier node) {
-		if (singletonAdapter == null) {
-			// create the JFaceNodeAdapter
-			singletonAdapter = new JFaceNodeAdapterForHTML(this);
-			initAdapter(singletonAdapter, node);
-		}
-		return singletonAdapter;
-	}
-
-	public IAdapterFactory copy() {
-		return new JFaceNodeAdapterFactoryForHTML(this.adapterKey, this.shouldRegisterAdapter);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/JFaceNodeAdapterForHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/JFaceNodeAdapterForHTML.java
deleted file mode 100644
index f1fefde..0000000
--- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/views/contentoutline/JFaceNodeAdapterForHTML.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.html.ui.views.contentoutline;
-
-
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.html.core.HTML40Namespace;
-import org.eclipse.wst.html.ui.internal.editor.HTMLEditorPluginImageHelper;
-import org.eclipse.wst.html.ui.internal.editor.HTMLEditorPluginImages;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.xml.ui.views.contentoutline.JFaceNodeAdapter;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * Adapts a DOM node to a JFace viewer.
- */
-public class JFaceNodeAdapterForHTML extends JFaceNodeAdapter {
-
-	private Image createHTMLImage(String imageResourceName) {
-		ImageDescriptor imageDescriptor = HTMLEditorPluginImageHelper.getInstance().getImageDescriptor(imageResourceName);
-		if (imageDescriptor != null)
-			return imageDescriptor.createImage();
-		return null;
-	}
-	
-	/**
-	 * Constructor for JFaceNodeAdapterForHTML.
-	 * @param adapterFactory
-	 */
-	public JFaceNodeAdapterForHTML(IAdapterFactory adapterFactory) {
-		super(adapterFactory);
-	}
-
-	protected Image createImage(Node node) {
-		Image image = null;
-
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			if (node.getNodeName().equalsIgnoreCase("table")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TABLE);
-			else if (node.getNodeName().equalsIgnoreCase("a")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_ANCHOR);
-			else if (node.getNodeName().equalsIgnoreCase("body")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_BODY);
-			else if (node.getNodeName().equalsIgnoreCase("button")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_BUTTON);
-			else if (node.getNodeName().equalsIgnoreCase("font")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_FONT);
-			else if (node.getNodeName().equalsIgnoreCase("form")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_FORM);
-			else if (node.getNodeName().equalsIgnoreCase("html")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_HTML);
-			else if (node.getNodeName().equalsIgnoreCase("img")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_IMAGE);
-			else if (node.getNodeName().equalsIgnoreCase("map")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_IMAGE_MAP);
-			else if (node.getNodeName().equalsIgnoreCase("title")) //$NON-NLS-1$
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG_TITLE);
-			else
-				image = createHTMLImage(HTMLEditorPluginImages.IMG_OBJ_TAG);
-		}
-		if (image == null) {
-			image = super.createImage(node);
-		}
-		return image;
-	}
-
-	/*
-	 * @see IJFaceNodeAdapter#getLabelText(Node)
-	 */
-	public String getLabelText(Node node) {
-		// TODO (pa) eventually showing ID, NAME, etc..might be a preference 
-		// - like in the package explorer for java.. (along w/ being able to customize delimiters)
-		// - possibly for all (or filtered list of) elements
-		String text = null;
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			if (node.getNodeName().equalsIgnoreCase("table")) { //$NON-NLS-1$
-				// won't update properly as-is
-				// it will only update if you change the attr name, 
-				// delete a ", or add a new element to the tree
-				text = node.getNodeName();
-
-				// get attr values
-				String tableID = null;
-				tableID = ((Element) node).getAttribute(HTML40Namespace.ATTR_NAME_ID);
-				String tableName = null;
-				tableName = ((Element) node).getAttribute(HTML40Namespace.ATTR_NAME_NAME);
-
-				// if there's ID or NAME, add a ">"
-				if ((tableID != null && tableID.length() > 0) || (tableName != null && tableName.length() > 0)) {
-					text += " > "; //$NON-NLS-1$
-				}
-
-				if (tableID != null && tableID.length() > 0)
-					text += " ID:[" + tableID + "]"; //$NON-NLS-1$ //$NON-NLS-2$
-				if (tableName != null && tableName.length() > 0)
-					text += " NAME:[" + tableName + "]"; //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-		if (text == null)
-			text = super.getLabelText(node);
-		return text;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates.properties
deleted file mode 100644
index dd1e16d..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates.properties
+++ /dev/null
@@ -1,44 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=comment
-Templates.comment.desc=comment
-Templates.ul.name=ul
-Templates.ul.desc=unordered list
-Templates.ul.content=<ul>\n  <li> Item one </li>\n  <li> Item two </li>\n</ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=definition list
-Templates.dl.content=<dl>\n  <dt> First definition  <dd>  First explanation\n  <dt> Second definition <dd> Second explanation\n</dl>\n
-Templates.table.name=table
-Templates.table.desc=table
-Templates.table.content=<table>\n  <tr>\n    <th>Column 1 Heading</th>\n    <th>Column 2 Heading</th>\n  </tr>\n  <tr>\n    <td>Row 1: Col 1</td>\n    <td>Row 1: Col 2</td>\n  </tr>\n</table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ordered list
-Templates.ol.content=<ol>\n  <li> Item one </li>\n  <li> Item two </li>\n</ol>\n
-Templates.html.name=html 4.01 transitional
-Templates.html.desc=html 4.01 transitional
-Templates.html.content=<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">\n<html>\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=${encoding}">\n<title>Insert title here</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.htmlframeset.name=html 4.01 frameset
-Templates.htmlframeset.desc=html 4.01 frameset
-Templates.htmlframeset.content=<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">\n<html>\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=${encoding}">\n<title>Insert title here</title>\n</head>\n<frameset>\n    <frame>\n    <frame>\n    <noframes>\n    <body>\n    <p>This page uses frames. The current browser you are using does not support frames.</p>\n    </body>\n    </noframes>\n</frameset>\n</html>
-Templates.xhtml.name=xhtml 1.0 transitional
-Templates.xhtml.desc=xhtml 1.0 transitional
-Templates.xhtml.content=<?xml version="1.0" encoding="${encoding}" ?>\n<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml">\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=${encoding}" />\n<title>Insert title here</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.xhtmlframeset.name=xhtml 1.0 frameset
-Templates.xhtmlframeset.desc=xhtml 1.0 frameset
-Templates.xhtmlframeset.content=<?xml version="1.0" encoding="${encoding}" ?>\n<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml">\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=${encoding}" />\n<title>Insert title here</title>\n</head>\n<frameset>\n    <frame />\n    <frame />\n    <noframes>\n    <body>\n    <p>This page uses frames. The current browser you are using does not support frames.</p>\n    </body>\n    </noframes>\n</frameset>\n</html>
-Templates.script.name=script
-Templates.script.desc=script     (commented)
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=style
-Templates.style.desc=style     (commented)
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     (map)
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates.xml b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates.xml
deleted file mode 100644
index 0681bf0..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<templates>
-
-<template name="%Templates.comment.name" description="%Templates.comment.desc" id="com.ibm.sse.editor.html.templates.comment" context="html_tag" enabled="true">&lt;!-- ${cursor} --&gt;</template>
-
-<template name="%Templates.imgmap.name" description="%Templates.imgmap.desc" id="com.ibm.sse.editor.html.templates.imgmap" context="html_tag" enabled="true">&lt;img ismap&gt;</template>
-
-<template name="%Templates.ul.name" description="%Templates.ul.desc" id="com.ibm.sse.editor.html.templates.ul" context="html_tag" enabled="true">%Templates.ul.content</template>
-
-<template name="%Templates.dl.name" description="%Templates.dl.desc" id="com.ibm.sse.editor.html.templates.dl" context="html_tag" enabled="true">%Templates.dl.content</template>
-
-<template name="%Templates.table.name" description="%Templates.table.desc" id="com.ibm.sse.editor.html.templates.table" context="html_tag" enabled="true">%Templates.table.content</template>
-
-<template name="%Templates.ol.name" description="%Templates.ol.desc" id="com.ibm.sse.editor.html.templates.ol" context="html_tag" enabled="true">%Templates.ol.content</template>
-
-<template name="%Templates.html.name" description="%Templates.html.desc" id="com.ibm.sse.editor.html.templates.html" context="html_new" enabled="true">%Templates.html.content</template>
-
-<template name="%Templates.htmlframeset.name" description="%Templates.htmlframeset.desc" id="com.ibm.sse.editor.html.templates.htmlframeset" context="html_new" enabled="true">%Templates.htmlframeset.content</template>
-
-<template name="%Templates.xhtml.name" description="%Templates.xhtml.desc" id="com.ibm.sse.editor.html.templates.xhtml" context="html_new" enabled="true">%Templates.xhtml.content</template>
-
-<template name="%Templates.xhtmlframeset.name" description="%Templates.xhtmlframeset.desc" id="com.ibm.sse.editor.html.templates.xhtmlframeset" context="html_new" enabled="true">%Templates.xhtmlframeset.content</template>
-
-<template name="%Templates.script.name" description="%Templates.script.desc" id="com.ibm.sse.editor.html.templates.script" context="html_tag" enabled="true">%Templates.script.content</template>
-
-<template name="%Templates.style.name" description="%Templates.style.desc" id="com.ibm.sse.editor.html.templates.style" context="html_tag" enabled="true">%Templates.style.content</template>
-
-</templates>
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_de.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_de.properties
deleted file mode 100644
index 58df23f..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_de.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=Kommentar
-Templates.comment.desc=Kommentar
-Templates.ul.name=ul
-Templates.ul.desc=ul     (Schablone)
-Templates.ul.content=<ul>\n  <li> Eintrag 1</li>\n  <li> Eintrag 2</li>\n</ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     (Schablone)
-Templates.dl.content=<dl>\n  <dt> Erste Definition  <dd>  Erste Erl\u00e4uterung\n  <dt> Zweite Definition <dd> Zweite Erl\u00e4uterung\n</dl>\n
-Templates.table.name=Tabelle
-Templates.table.desc=Tabelle   (Schablone)
-Templates.table.content=<table border>\n  <tr>\n    <th>Spalte 1 \u00dcberschrift</th>\n    <th>Spalte 2 \u00dcberschrift</th>\n  </tr>\n  <tr>\n    <td>Zeile 1: Spalte 1</td>\n    <td>Zeile 1: Spalte 2</td>\n  </tr>\n</table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     (Schablone)
-Templates.ol.content=<ol>\n  <li> Eintrag 1</li>\n  <li> Eintrag 2</li>\n </ol>\n
-Templates.html.name=html
-Templates.html.desc=html    (Schablone)
-Templates.html.content=<html>\n<head>\n<title>Hier Titel einf\u00fcgen</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=Script
-Templates.script.desc=Script     (Kommentar)
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=Darstellung
-Templates.style.desc=Darstellung (Kommentar)
-Templates.style.content=<style>\n<!--\n${Cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     (Abbildung)
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_es.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_es.properties
deleted file mode 100644
index 58a3cd6..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_es.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=comment
-Templates.comment.desc=comment
-Templates.ul.name=ul
-Templates.ul.desc=ul     (plantilla)
-Templates.ul.content=<ul>\n  <li> Elemento uno </li>\n  <li> Elemento dos </li>\n</ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     (plantilla)
-Templates.dl.content=<dl>\n  <dt> Primera definici\u00f3n  <dd> Primera explicaci\u00f3n\n  <dt> Segunda definici\u00f3n  <dd> Segunda explicaci\u00f3n\n</dl>\n
-Templates.table.name=table
-Templates.table.desc=table     (plantilla)
-Templates.table.content=<table border>\n  <tr>\n    <th>Cabecera de columna 1</th>\n    <th>Cabecera de columna 2</th>\n  </tr>\n  <tr>\n    <td>Fila 1: Col 1</td>\n    <td>Fila 1: Col 2</td>\n  </tr>\n</table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     (plantilla)
-Templates.ol.content=<ol>\n  <li> Elemento uno </li>\n  <li> Elemento dos </li>\n</ol>\n
-Templates.html.name=html
-Templates.html.desc=html    (plantilla)
-Templates.html.content=<html>\n<head>\n<title>Insertar t\u00edtulo aqu\u00ed</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=script
-Templates.script.desc=script     (comentado)
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=style
-Templates.style.desc=style     (comentado)
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     (mapa)
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_fr.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_fr.properties
deleted file mode 100644
index f597326..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_fr.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=commentaire
-Templates.comment.desc=commentaire
-Templates.ul.name=ul
-Templates.ul.desc=ul     (mod\u00e8le)
-Templates.ul.content=<ul>\n  <li> El\u00e9ment un </li>\n  <li> El\u00e9ment deux </li>\n</ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     (mod\u00e8le)
-Templates.dl.content=<dl>\n  <dt> Premi\u00e8re d\u00e9finition  <dd>  Premi\u00e8re explication\n  <dt> Seconde d\u00e9finition <dd> Seconde explication\n</dl>\n
-Templates.table.name=table
-Templates.table.desc=table     (mod\u00e8le)
-Templates.table.content=<table border>\n  <tr>\n    <th>Colonne 1 En-t\u00eate</th>\n    <th>Colonne 2 En-t\u00eate</th>\n  </tr>\n  <tr>\n    <td>Ligne 1 : Col 1</td>\n    <td>Ligne 1 : Col 2</td>\n  </tr>\n</table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     (mod\u00e8le)
-Templates.ol.content=<ol>\n  <li> El\u00e9ment un </li>\n  <li> El\u00e9ment deux </li>\n </ol>\n
-Templates.html.name=html
-Templates.html.desc=html    (mod\u00e8le)
-Templates.html.content=<html>\n<head>\n<title>Ins\u00e9rer le titre ici</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=script
-Templates.script.desc=script     (comment\u00e9)
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=style
-Templates.style.desc=style     (comment\u00e9)
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     (mappe)
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_it.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_it.properties
deleted file mode 100644
index 1e159ce..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_it.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=commento
-Templates.comment.desc=commento
-Templates.ul.name=ul
-Templates.ul.desc=ul     (modello)
-Templates.ul.content=<ul>\n  <li> Elemento uno </li>\n  <li> Elemento due </li>\n</ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     (modello)
-Templates.dl.content=<dl>\n  <dt> Prima definizione  <dd>  Prima spiegazione\n  <dt> Seconda definizione <dd> Seconda spiegazione\n</dl>\n
-Templates.table.name=tabella
-Templates.table.desc=tabella     (modello)
-Templates.table.content=<table border>\n  <tr>\n    <th>Intestazione colonna 1</th>\n    <th>Intestazione colonna 2</th>\n  </tr>\n  <tr>\n    <td>Riga 1: Colonna 1</td>\n    <td>Riga 1: Colonna 2</td>\n  </tr>\n</table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     (modello)
-Templates.ol.content=<ol>\n  <li> Elemento uno </li>\n  <li> Elemento due </li>\n</ol>\n
-Templates.html.name=html
-Templates.html.desc=html    (modello)
-Templates.html.content=<html>\n<head>\n<title>Inserire il titolo in questo punto</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=script
-Templates.script.desc=script     (commentato)
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=stile
-Templates.style.desc=stile      (commentato)
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     (mappa)
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_ja.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_ja.properties
deleted file mode 100644
index 229ced9..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_ja.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=\u30b3\u30e1\u30f3\u30c8
-Templates.comment.desc=\u30b3\u30e1\u30f3\u30c8
-Templates.ul.name=ul
-Templates.ul.desc=ul     (\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8)
-Templates.ul.content=<ul>\n  <li> \u9805\u76ee 1 </li>\n  <li> \u9805\u76ee 2 </li>\n</ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     (\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8)
-Templates.dl.content=<dl>\n  <dt> 1 \u756a\u76ee\u306e\u5b9a\u7fa9 <dd> 1 \u756a\u76ee\u306e\u8aac\u660e\n  <dt> 2 \u756a\u76ee\u306e\u5b9a\u7fa9 <dd> 2 \u756a\u76ee\u306e\u8aac\u660e\n</dl>\n
-Templates.table.name=table
-Templates.table.desc=\u30c6\u30fc\u30d6\u30eb     (\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8)
-Templates.table.content=<table border>\n  <tr>\n    <th>\u5217 1 \u898b\u51fa\u3057</th>\n    <th>\u5217 2 \u898b\u51fa\u3057</th>\n  </tr>\n  <tr>\n    <td>\u884c 1: \u5217 1</td>\n    <td>\u884c 1: \u5217 2</td>\n  </tr>\n</table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     (\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8)
-Templates.ol.content=<ol>\n  <li> \u9805\u76ee 1 </li>\n  <li> \u9805\u76ee 2 </li>\n</ol>\n
-Templates.html.name=html
-Templates.html.desc=html    (\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8)
-Templates.html.content=<html>\n<head>\n<title>\u3053\u3053\u306b\u30bf\u30a4\u30c8\u30eb\u3092\u633f\u5165</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=script
-Templates.script.desc=\u30b9\u30af\u30ea\u30d7\u30c8     (\u30b3\u30e1\u30f3\u30c8)
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=style
-Templates.style.desc=\u30b9\u30bf\u30a4\u30eb     (\u30b3\u30e1\u30f3\u30c8)
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     (\u30de\u30c3\u30d7)
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_ko.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_ko.properties
deleted file mode 100644
index c45f44b..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_ko.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=\uc8fc\uc11d
-Templates.comment.desc=\uc8fc\uc11d
-Templates.ul.name=ul
-Templates.ul.desc=ul     (\ud15c\ud50c\ub9ac\ud2b8)
-Templates.ul.content=<ul>\n<li> \ud56d\ubaa9 1 </li>\n<li> \ud56d\ubaa9 2 </li>\n</ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     (\ud15c\ud50c\ub9ac\ud2b8)
-Templates.dl.content=<dl>\n<dt> \uc81c1 \uc815\uc758 <dd> \uc81c1 \uc124\uba85\n<dt> \uc81c2 \uc815\uc758 <dd> \uc81c2 \uc124\uba85\n</dl>\n
-Templates.table.name=table
-Templates.table.desc=table     (\ud15c\ud50c\ub9ac\ud2b8)
-Templates.table.content=<table border>\n<tr>\n<th>\uc5f4 1 \ud45c\uc81c</th>\n<th>\uc5f4 2 \ud45c\uc81c</th>\n</tr>\n<tr>\n<td>\ud589 1: \uc5f4 1</td>\n<td>\ud589 1: \uc5f4 2</td>\n</tr>\n</table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     (\ud15c\ud50c\ub9ac\ud2b8)
-Templates.ol.content=<ol>\n<li> \ud56d\ubaa9 1 </li>\n<li> \ud56d\ubaa9 2 </li>\n</ol>\n
-Templates.html.name=html
-Templates.html.desc=html    (\ud15c\ud50c\ub9ac\ud2b8)
-Templates.html.content=<html>\n<head>\n<title>\uc5ec\uae30\uc5d0 \uc81c\ubaa9 \uc0bd\uc785</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=script
-Templates.script.desc=script     (\uc8fc\uc11d\ucc98\ub9ac)
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=style
-Templates.style.desc=style     (\uc8fc\uc11d\ucc98\ub9ac)
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     (\ub9f5)
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_pt_BR.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_pt_BR.properties
deleted file mode 100644
index 282472b..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_pt_BR.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=coment\u00e1rio
-Templates.comment.desc=coment\u00e1rio
-Templates.ul.name=ul
-Templates.ul.desc=ul     (modelo)
-Templates.ul.content=<ul>\n<li> Item um </li>\n<li> Item dois </li>\n</ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     (modelo)
-Templates.dl.content=<dl>\n<dt> Primeira defini\u00e7\u00e3o  <dd>  Primeira explica\u00e7\u00e3o\n<dt> Segunda defini\u00e7\u00e3o <dd> Segunda explica\u00e7\u00e3o\n</dl>\n
-Templates.table.name=tabela
-Templates.table.desc=tabela    (modelo)
-Templates.table.content=<table border>\n<tr>\n<th>T\u00edtulo da Coluna 1</th>\n<th>T\u00edtulo da Coluna 2</th>\n</tr>\n <tr>\n<td>Linha 1: Col 1</td>\n<td>Linha 1: Col 2</td>\n</tr>\n</table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     (modelo)
-Templates.ol.content=<ol>\n<li> Item um </li>\n<li> Item dois </li>\n</ol>\n
-Templates.html.name=html
-Templates.html.desc=html    (modelo)
-Templates.html.content=<html>\n<head>\n<title>Inserir t\u00edtulo aqui</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=script
-Templates.script.desc=script     (comentado)
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=estilo
-Templates.style.desc=estilo    (comentado)
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     (mapa)
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_zh_CN.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_zh_CN.properties
deleted file mode 100644
index 0ccbd24..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_zh_CN.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=\u6ce8\u91ca
-Templates.comment.desc=\u6ce8\u91ca
-Templates.ul.name=ul
-Templates.ul.desc=ul     \uff08\u6a21\u677f\uff09
-Templates.ul.content=<ul>\n <li> \u7b2c\u4e00\u9879 </li>\n <li> \u7b2c\u4e8c\u9879 </li>\n </ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     \uff08\u6a21\u677f\uff09
-Templates.dl.content=<dl>\n <dt> \u7b2c\u4e00\u4e2a\u5b9a\u4e49 <dd> \u7b2c\u4e00\u4e2a\u8bf4\u660e\n <dt> \u7b2c\u4e8c\u4e2a\u5b9a\u4e49 <dd> \u7b2c\u4e8c\u4e2a\u8bf4\u660e\n </dl>\n
-Templates.table.name=\u8868
-Templates.table.desc=\u8868        \uff08\u6a21\u677f\uff09
-Templates.table.content=<table border>\n <tr>\n <th>\u7b2c 1 \u5217\u6807\u9898</th>\n <th>\u7b2c 2 \u5217\u6807\u9898</th>\n </tr>\n <tr>\n <td>\u7b2c 1 \u884c\uff1a\u7b2c 1 \u5217</td>\n <td>\u7b2c 1 \u884c\uff1a\u7b2c 2 \u5217</td>\n </tr>\n </table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     \uff08\u6a21\u677f\uff09
-Templates.ol.content=<ol>\n <li> \u7b2c\u4e00\u9879 </li>\n <li> \u7b2c\u4e8c\u9879 </li>\n </ol>\n
-Templates.html.name=html
-Templates.html.desc=html    \uff08\u6a21\u677f\uff09
-Templates.html.content=<html>\n<head>\n<title>\u5728\u6b64\u5904\u63d2\u5165\u6807\u9898</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=\u811a\u672c
-Templates.script.desc=\u811a\u672c     \uff08\u5df2\u52a0\u6ce8\u91ca\uff09
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=\u6837\u5f0f
-Templates.style.desc=\u6837\u5f0f     \uff08\u5df2\u52a0\u6ce8\u91ca\uff09
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     \uff08\u6620\u5c04\uff09
diff --git a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_zh_TW.properties b/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_zh_TW.properties
deleted file mode 100644
index ff35793..0000000
--- a/bundles/org.eclipse.wst.html.ui/templates/htmldefault-templates_zh_TW.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-Templates.comment.name=\u8a3b\u89e3
-Templates.comment.desc=\u8a3b\u89e3
-Templates.ul.name=ul
-Templates.ul.desc=ul     \uff08\u7bc4\u672c\uff09
-Templates.ul.content=<ul>\n  <li> \u9805\u76ee 1 </li>\n  <li> \u9805\u76ee 2 </li>\n </ul>\n
-Templates.dl.name=dl
-Templates.dl.desc=dl     \uff08\u7bc4\u672c\uff09
-Templates.dl.content=<dl>\n  <dt> \u7b2c\u4e00\u500b\u5b9a\u7fa9  <dd>  \u7b2c\u4e00\u500b\u8aaa\u660e\n  <dt> \u7b2c\u4e8c\u500b\u5b9a\u7fa9  <dd> \u7b2c\u4e8c\u500b\u8aaa\u660e\n </dl>\n
-Templates.table.name=table
-Templates.table.desc=table     \uff08\u7bc4\u672c\uff09
-Templates.table.content=<table border>\n  <tr>\n    <th>\u7b2c 1 \u6b04\u6a19\u984c</th>\n    <th>\u7b2c 2 \u6b04\u6a19\u984c</th>\n  </tr>\n  <tr>\n    <td>\u5217 1\uff1a\u76f4\u6b04 1</td>\n    <td>\u5217 1\uff1a\u76f4\u6b04 2</td>\n  </tr>\n </table>\n
-Templates.ol.name=ol
-Templates.ol.desc=ol     \uff08\u7bc4\u672c\uff09
-Templates.ol.content=<ol>\n  <li> \u9805\u76ee 1 </li>\n  <li> \u9805\u76ee 2 </li>\n </ol>\n
-Templates.html.name=html
-Templates.html.desc=html    \uff08\u7bc4\u672c\uff09
-Templates.html.content=<html>\n<head>\n<title>\u5728\u9019\u88e1\u63d2\u5165\u6a19\u984c</title>\n</head>\n<body>\n${cursor}\n</body>\n</html>
-Templates.script.name=Script
-Templates.script.desc=script     \uff08\u52a0\u8a3b\uff09
-Templates.script.content=<script type=\"${cursor}text/javascript\">\n<!--\n\n//-->\n</script>
-Templates.style.name=style
-Templates.style.desc=style     \uff08\u52a0\u8a3b\uff09
-Templates.style.content=<style>\n<!--\n${cursor}\n-->\n</style>
-Templates.imgmap.name=img
-Templates.imgmap.desc=img     \uff08\u5c0d\u6620\uff09
diff --git a/bundles/org.eclipse.wst.xml.core/.classpath b/bundles/org.eclipse.wst.xml.core/.classpath
deleted file mode 100644
index 701c71c..0000000
--- a/bundles/org.eclipse.wst.xml.core/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src-contentmodel"/>
-	<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/bundles/org.eclipse.wst.xml.core/.cvsignore b/bundles/org.eclipse.wst.xml.core/.cvsignore
deleted file mode 100644
index 25ec663..0000000
--- a/bundles/org.eclipse.wst.xml.core/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-temp.folder
-build.xml
-xmlmodel.jar
-org.eclipse.wst.xml.core_1.0.0.jar
diff --git a/bundles/org.eclipse.wst.xml.core/.options b/bundles/org.eclipse.wst.xml.core/.options
deleted file mode 100644
index e80df84..0000000
--- a/bundles/org.eclipse.wst.xml.core/.options
+++ /dev/null
@@ -1,2 +0,0 @@
-org.eclipse.wst.xml.core/debug=true
-org.eclipse.wst.xml.core/debug/tracefilter=
diff --git a/bundles/org.eclipse.wst.xml.core/.project b/bundles/org.eclipse.wst.xml.core/.project
deleted file mode 100644
index c417514..0000000
--- a/bundles/org.eclipse.wst.xml.core/.project
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.xml.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/bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 17dbb7d..0000000
--- a/bundles/org.eclipse.wst.xml.core/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Wed Jan 12 13:50:52 EST 2005

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=ignore

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=error

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=error

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=ignore

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore

-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.4

-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=ignore

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=ignore

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=enabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/bundles/org.eclipse.wst.xml.core/README.txt b/bundles/org.eclipse.wst.xml.core/README.txt
deleted file mode 100644
index ffa6466..0000000
--- a/bundles/org.eclipse.wst.xml.core/README.txt
+++ /dev/null
@@ -1 +0,0 @@
-THe XML specific model implementation.
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.core/build.properties b/bundles/org.eclipse.wst.xml.core/build.properties
deleted file mode 100644
index 272d0dd..0000000
--- a/bundles/org.eclipse.wst.xml.core/build.properties
+++ /dev/null
@@ -1,26 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-bin.includes = plugin.xml,\
-               *.jar,\
-               xml.jar,\
-               .options,\
-               extensions.xml,\
-               plugin.properties
-src.includes = plugin.xml,\
-               plugin.properties,\
-               extensions.xml,\
-               build.xml,\
-               .options
-source.xmlmodel.jar = src-contentmodel/,\
-                      src/
-output.xmlmodel.jar = bin/
diff --git a/bundles/org.eclipse.wst.xml.core/component.xml b/bundles/org.eclipse.wst.xml.core/component.xml
deleted file mode 100644
index f02b357..0000000
--- a/bundles/org.eclipse.wst.xml.core/component.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.wst.xml">
-	<component-depends unrestricted="true"></component-depends>
-	<plugin id="org.eclipse.wst.xml.core" />
-	<plugin id="org.eclipse.wst.xml.ui" />
-
-	<plugin id="org.eclipse.wst.xml.uriresolver" />
-	<plugin id="org.eclipse.wst.xml.uriresolver.ui" />
-	<plugin id="org.eclipse.wst.xml.validation" />
-
-	<!--  dw -->
-	<package name="org.eclipse.wst.xml.core" />
-	<package name="org.eclipse.wst.xml.core.contenttype" />
-	<package name="org.eclipse.wst.xml.core.document" />
-	<package name="org.eclipse.wst.xml.core.parser" />
-
-	<!-- probably should exclude some classes... -->
-	<package name="org.eclipse.wst.xml.core.text" />
-
-	<!-- <package name="org.w3c.dom" /> -->
-
-	<package name="org.eclipse.wst.xml.uriresolver" />
-	<package name="org.eclipse.wst.xml.uriresolver.ui" />
-
-	<!--  add in viewer config for xml, phil -->
-	<package name="org.eclipse.wst.xml.ui">
-		<type name="DOMObserver" reference="false" implement="false" subclass="false" instantiate="false" />
-		<type name="JobStatusLineHelper" reference="false" implement="false" subclass="false" instantiate="false" />
-		<type name="StructuredTextEditorXML" reference="false" implement="false" subclass="false" instantiate="false" />
-		<type name="XMLEditorPlugin" reference="false" implement="false" subclass="false" instantiate="false" />
-		<type name="XMLSpellCheckTarget" reference="false" implement="false" subclass="false" instantiate="false" />
-	</package>
-
-</component>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.core/plugin.properties b/bundles/org.eclipse.wst.xml.core/plugin.properties
deleted file mode 100644
index 8c6b4b2..0000000
--- a/bundles/org.eclipse.wst.xml.core/plugin.properties
+++ /dev/null
@@ -1,17 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-providerName=Eclipse.org
-pluginName=Structured Source XML Model
-nlFeatureName=Structured Source XML Model NL Support
-Structured_XML_Document_Factory_Extension.name=Structured XML Document Factory Extension
-XML_Content_Type_Extension_Element.name=XML Content Type
diff --git a/bundles/org.eclipse.wst.xml.core/plugin.xml b/bundles/org.eclipse.wst.xml.core/plugin.xml
deleted file mode 100644
index 5d83554..0000000
--- a/bundles/org.eclipse.wst.xml.core/plugin.xml
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.wst.xml.core"
-   name="%pluginName"
-   version="1.0.0"
-   provider-name="%providerName"
-   class="org.eclipse.wst.xml.core.internal.XMLCorePlugin">
-
-   <runtime>
-      <library name="xmlmodel.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.wst.sse.core"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.core.filebuffers"/>
-      <import plugin="org.eclipse.text"/>
-      <import plugin="org.eclipse.wst.xml.uriresolver"/>
-   </requires>
-
-
-   <extension
-         point="org.eclipse.wst.sse.core.modelHandler">
-      <modelHandler
-            default="true"
-            class="org.eclipse.wst.xml.core.modelhandler.ModelHandlerForXML"
-            associatedContentTypeId="org.eclipse.core.runtime.xml"
-            id="org.eclipse.wst.xml.core.modelhandler">
-      </modelHandler>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.core.embeddedTypeHandler">
-      <embeddedTypeHandler
-            class="org.eclipse.wst.xml.core.modelhandler.EmbeddedXML">
-      </embeddedTypeHandler>
-   </extension>
-   
-   <extension
-         id="org.eclipse.wst.xml.core.builderdelegate.todo"
-         point="org.eclipse.wst.sse.core.builderdelegate">
-      <participant
-            class="org.eclipse.wst.xml.core.builder.delegates.XMLTaskTagSeeker"
-            contentType="org.eclipse.core.runtime.xml,org.eclipse.wst.xml.core.xmlsource">
-      </participant>
-   </extension>
-   
-   <extension point="org.eclipse.core.filebuffers.documentCreation"
-         id="org.eclipse.wst.xml.core.documentfactories"
-         name="%Structured_XML_Document_Factory_Extension.name">
-      <factory
-            contentTypeId="org.eclipse.core.runtime.xml"
-            class="org.eclipse.wst.sse.core.filebuffers.BasicStructuredDocumentFactory"/>
-   </extension>
-	
-   <extension
-         point="org.eclipse.team.core.fileTypes">
-      <fileTypes
-            type="text"
-            extension="xsl">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="xslt">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="dadx">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="wsdl">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="nst">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="xmi">
-      </fileTypes>
-      <fileTypes
-            type="text"
-            extension="xsd">
-      </fileTypes>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.core.formatProcessors">
-      <processor
-            class="org.eclipse.wst.xml.core.format.FormatProcessorXML"
-            contentTypeId="org.eclipse.core.runtime.xml">
-      </processor>
-   </extension>
-   
-   <extension
-         point="org.eclipse.core.runtime.contentTypes">
-         <content-type
-               file-extensions="xml,xsl,xslt,dadx,wsdl,nst,xmi,xsd,exsd"
-               priority="low"
-               name="%XML_Content_Type_Extension_Element.name"
-               id="xmlsource"
-               base-type="org.eclipse.core.runtime.xml"
-			   default-charset="UTF-8"
-			   alias-for="org.eclipse.core.runtime.xml"
-			   >
-			<describer class="org.eclipse.wst.xml.core.internal.contenttype.ContentDescriberForXML"/>
-		</content-type>
-   </extension>
-   
-   	<!-- added following from content model plugin.xml -->
-	
-	
-	
-	  	<extension-point name="%Content_Model_Document_Factories_Extension.name" id="documentFactories"/>
-
-  		<extension-point name="%Content_Model_Annotation_Files_Extension.name" id="annotationFiles"/>
-
-  		<!--  <extension-point name="DOM Extension Provider" id="DOMExtensionProvider"/>-->
-
-  		<extension 
-  		  id="Test" 
- 		   point="org.eclipse.core.runtime.applications">      
- 		   <application>
- 		      <run class="org.eclipse.wst.xml.core.internal.contentmodel.internal.test.Test"/>
-  		  </application>
- 		 </extension>
-   
-</plugin>
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMAnyElement.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMAnyElement.java
deleted file mode 100644
index c3230ae..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMAnyElement.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMAnyElement interface
- */
-public interface CMAnyElement extends CMContent {
-/**
- * getNamespaceURI method
- * @return java.lang.String
- */
-String getNamespaceURI();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMAttributeDeclaration.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMAttributeDeclaration.java
deleted file mode 100644
index a85cbde..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMAttributeDeclaration.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-import java.util.Enumeration;
-
-/**
- * AttributeDeclaration interface
- */
-public interface CMAttributeDeclaration extends CMNode {
-  public static final int OPTIONAL   = 1;
-  public static final int REQUIRED   = 2;
-  public static final int FIXED      = 3;
-  public static final int PROHIBITED = 4;
-/**
- * getAttrName method
- * @return java.lang.String
- */
-String getAttrName();
-/**
- * getAttrType method
- * @return CMDataType
- */
-CMDataType getAttrType();
-/**
- * getDefaultValue method
- * @return java.lang.String
- * @deprecated -- to be replaced in future with additional CMDataType methods (currently found on CMDataTypeHelper)
- */
-String getDefaultValue();
-/**
- * getEnumAttr method
- * @return java.util.Enumeration
- * @deprecated -- to be replaced in future with additional CMDataType methods (currently found on CMDataTypeHelper)
- */
-Enumeration getEnumAttr();
-/**
- * getUsage method
- * @return int
- */
-int getUsage();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMContent.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMContent.java
deleted file mode 100644
index 429bacd..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMContent.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-public interface CMContent extends CMNode
-{
-/**
- * getMaxOccur method
- * @return int
- *
- * If -1, it's UNBOUNDED.
- */
-int getMaxOccur();
-/**
- * getMinOccur method
- * @return int
- *
- * If 0, it's OPTIONAL.
- * If 1, it's REQUIRED.
- */
-int getMinOccur();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDataType.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDataType.java
deleted file mode 100644
index 1c582c4..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDataType.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMDataType
- */
-public interface CMDataType extends CMNode {
-    
-  // todo... at some point we should remove these names to
-  // avoid exposing implementation details via the interfaces
-  //
-	static final String CDATA = "CDATA";
-	static final String ID = "ID";
-	static final String IDREF = "IDREF";
-	static final String ENTITY = "ENTITY";
-	static final String ENTITIES = "ENTITIES";
-	static final String NOTATION = "NOTATION";
-	static final String NMTOKEN = "NMTOKEN";
-	static final String NMTOKENS = "NMTOKENS";
-	static final String NUMBER = "NUMBER";
-	static final String URI = "URI";
-	static final String ENUM = "ENUM";
-
-  static final int IMPLIED_VALUE_NONE             = 1;
-  static final int IMPLIED_VALUE_FIXED            = 2;
-  static final int IMPLIED_VALUE_DEFAULT          = 3;
-
-/**
- * getTypeName method
- * @return java.lang.String
- */
-String getDataTypeName();    
-
-/**
- * getImpliedValueKind method
- * @return int
- *
- * Returns one of :
- * IMPLIED_VALUE_NONE, IMPLIED_VALUE_FIXED, IMPLIED_VALUE_DEFAULT.
- */      
-
-int getImpliedValueKind();  
-
-/**
- * getTypeName method
- * @return java.lang.String  
- *
- * Returns the implied value or null if none exists.
- */
-String getImpliedValue();
-
-/**
- * getTypeName method
- * @return java.lang.String[]
- *
- */
-String[] getEnumeratedValues();
-
-/**
- * getTypeName method
- * @return java.lang.String
- *
- * This method returns a suitable default value that can be used when an instance of the data type is created.
- * This returns null of a suitable default is not available.
- */
-String generateInstanceValue();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDocument.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDocument.java
deleted file mode 100644
index 74ad25b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDocument.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMDocument interface
- */
-public interface CMDocument extends CMNode {
-/**
- * getElements method
- * @return CMNamedNodeMap
- *
- * Returns CMNamedNodeMap of ElementDeclaration
- */
-CMNamedNodeMap getElements();
-/**
- * getEntities method
- * @return CMNamedNodeMap
- *
- * Returns CMNamedNodeMap of EntityDeclaration
- */
-CMNamedNodeMap getEntities();
-/**
- * getNamespace method
- * @return CMNamespace
- */
-CMNamespace getNamespace();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDocumentation.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDocumentation.java
deleted file mode 100644
index 477aaec..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMDocumentation.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMDocumentation interface
- */
-public interface CMDocumentation extends CMNode {        
-  public String getValue();
-  public String getLanguage();
-  public String getSource();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMElementDeclaration.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMElementDeclaration.java
deleted file mode 100644
index bd780c5..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMElementDeclaration.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMElementDeclaration interface
- */
-public interface CMElementDeclaration extends CMContent {
-  
-	public static final int ANY = 0;
-	public static final int EMPTY = 1;
-	public static final int ELEMENT = 2;
-	public static final int MIXED = 3;
-	public static final int PCDATA = 4;
-	public static final int CDATA = 5; // todo... clarify this one
-/**
- * getAttributes method
- * @return CMNamedNodeMap
- *
- * Returns CMNamedNodeMap of AttributeDeclaration
- */
-CMNamedNodeMap getAttributes();
-/**
- * getCMContent method
- * @return CMContent
- *
- * Returns the root node of this element's content model.
- * This can be an CMElementDeclaration or a CMGroup
- */
-CMContent getContent();
-/**
- * getContentType method
- * @return int
- *
- * Returns one of :
- * ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA.
- */
-public int getContentType();
-/**
- * getElementName method
- * @return java.lang.String
- */
-String getElementName();
-
-/**
- * getDataType method
- * @return java.lang.String
- */
-CMDataType getDataType();
-
-/**
- * getLocalElements method
- * @return CMNamedNodeMap
- *
- * Returns a list of locally defined elements.
- */
-CMNamedNodeMap getLocalElements();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMEntityDeclaration.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMEntityDeclaration.java
deleted file mode 100644
index 1e00265..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMEntityDeclaration.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMEntityDeclaration interface
- */
-public interface CMEntityDeclaration extends CMNode {
-  
-/**
- * getName method
- * @return java.lang.String
- */
-String getName();
-/**
- * getValue method
- * @return java.lang.String
- */
-String getValue();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMGroup.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMGroup.java
deleted file mode 100644
index d0248d9..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMGroup.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMGroup interface
- */
-public interface CMGroup extends CMContent {
-  
-	static final int ALL = 3;
-	static final int CHOICE = 2;
-	static final int SEQUENCE = 1;
-/**
- * getChildNodes method
- * @return CMNodeList
- *
- * Returns child CMNodeList, which includes ElementDefinition or CMElement.
- */
-CMNodeList getChildNodes();
-
-/**
- * getOperation method
- * @return int
- *
- * Returns one of :
- * ALONE (a), SEQUENCE (a,b), CHOICE (a|b), ALL (a&b).
- */
-int getOperator();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNamedNodeMap.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNamedNodeMap.java
deleted file mode 100644
index 260d07c..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNamedNodeMap.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-import java.util.Iterator;
-/**
- * NamedCMNodeMap
- */
-public interface CMNamedNodeMap {
-/**
- * getLength method
- * @return int
- */
-int getLength();
-/**
- * getNamedItem method
- * @return CMNode
- * @param name java.lang.String
- */
-CMNode getNamedItem(String name);
-/**
- * item method
- * @return CMNode
- * @param index int
- */
-CMNode item(int index);
-
-/**
- *
- */
-Iterator iterator();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNamespace.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNamespace.java
deleted file mode 100644
index eca84b8..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNamespace.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMNamespace interface
- */
-public interface CMNamespace extends CMNode {
-  
-/**
- * getPrefix method
- * @return java.lang.String
- */
-String getPrefix();
-/**
- * getURI method
- * @return java.lang.String
- */
-String getURI();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNode.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNode.java
deleted file mode 100644
index af1e1e3..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNode.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMNode interface
- */
-public interface CMNode {        
-  
-  static final int ANY_ELEMENT           = 1;
-	static final int ATTRIBUTE_DECLARATION = 2;
-	static final int DATA_TYPE             = 3;
-	static final int DOCUMENT              = 4;
-	static final int ELEMENT_DECLARATION   = 5;
-	static final int ENTITY_DECLARATION    = 6;
-	static final int GROUP                 = 7;
-  static final int NAME_SPACE            = 8;
-  static final int DOCUMENTATION         = 9;
-/**
- * getNodeName method
- * @return java.lang.String
- */
-String getNodeName();
-/**
- * getNodeType method
- * @return int
- *
- * Returns one of :
- *
- */
-int getNodeType();
-
-/**
- * supports method
- * @return boolean
- *
- * Returns true if the CMNode supports a specified property
- *
- */
-boolean supports(String propertyName);
-
-/**
- * getProperty method
- * @return java.lang.Object
- *
- * Returns the object property desciped by the propertyName
- *
- */
-Object getProperty(String propertyName); //todo throw unsupported property exception
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNodeList.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNodeList.java
deleted file mode 100644
index 46d9b33..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/CMNodeList.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-/**
- * CMNodeList interface
- */
-public interface CMNodeList {
-  
-/**
- * getLength method
- * @return int
- */
-int getLength();
-/**
- * item method
- * @return CMNode
- * @param index int
- */
-CMNode item(int index);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/ContentModelManager.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/ContentModelManager.java
deleted file mode 100644
index 893b91c..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/ContentModelManager.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright (c) 2002 IBM Corporation and others.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *   IBM - Initial API and implementation
- *   Jens Lukowski/Innoopract - initial renaming/restructuring
- * 
- */
-package org.eclipse.wst.xml.core.internal.contentmodel;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.wst.xml.core.internal.contentmodel.factory.CMDocumentFactory;
-import org.eclipse.wst.xml.core.internal.contentmodel.factory.CMDocumentFactoryRegistry;
-import org.eclipse.wst.xml.core.internal.contentmodel.factory.CMDocumentFactoryRegistryReader;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation.AnnotationFileRegistry;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation.AnnotationFileRegistryReader;
-
-
-/**
- * ContentModelManager class
- */
-public class ContentModelManager extends Plugin {
-	// private static InferredGrammarFactory inferredGrammarFactory;
-	private CMDocumentFactoryRegistry cmDocumentFactoryRegistry;
-	private AnnotationFileRegistry annotationFileRegistry;
-
-	private static ContentModelManager instance;
-
-	public ContentModelManager() {
-		super();
-	}
-
-	public static ContentModelManager getInstance() {
-		if (instance == null) {
-			instance = new ContentModelManager();
-		}
-		return instance;
-	}
-
-	public CMDocument createCMDocument(String uri, String resourceType) {
-		if (resourceType == null && uri != null) {
-			int index = uri.lastIndexOf(".");
-			resourceType = uri.substring(index + 1);
-		}
-
-		if (resourceType != null) {
-			resourceType = resourceType.toLowerCase();
-		}
-		CMDocumentFactory factory = getCMDocumentFactoryRegistry().getFactory(resourceType);
-		return factory != null ? factory.createCMDocument(uri) : null;
-	}
-
-
-	private CMDocumentFactoryRegistry getCMDocumentFactoryRegistry() {
-		if (cmDocumentFactoryRegistry == null) {
-			cmDocumentFactoryRegistry = new CMDocumentFactoryRegistry();
-			new CMDocumentFactoryRegistryReader(cmDocumentFactoryRegistry).readRegistry();
-		}
-		return cmDocumentFactoryRegistry;
-	}
-
-
-	public List getAnnotationFiles(String publicId) {
-		return getAnnotationFileRegistry().getAnnotationFiles(publicId);
-	}
-
-
-	private AnnotationFileRegistry getAnnotationFileRegistry() {
-		if (annotationFileRegistry == null) {
-			annotationFileRegistry = new AnnotationFileRegistry();
-			new AnnotationFileRegistryReader(annotationFileRegistry).readRegistry();
-		}
-		return annotationFileRegistry;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/annotation/Annotation.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/annotation/Annotation.java
deleted file mode 100644
index 0358715..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/annotation/Annotation.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.annotation;
-
-import java.util.Hashtable;
-import java.util.List;
-         
-/**
- * 
- */
-public class Annotation
-{       
-  protected Hashtable hashtable = new Hashtable();                     
-
-  public Annotation()
-  {
-  }
-
-  public void setSpec(String spec)
-  {
-    hashtable.put("spec", spec);
-  }     
-
-  public String getSpec()
-  {
-    return (String)hashtable.get("spec");
-  }
-      
-  public void setProperty(String name, String value)
-  {                             
-    hashtable.put(name, value);
-  }
-
-  public String getProperty(String propertyName)
-  {     
-    return (String)hashtable.get(propertyName);
-  }    
-
-  public List getAttributeList()
-  {
-    return null; // todo
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/annotation/AnnotationMap.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/annotation/AnnotationMap.java
deleted file mode 100644
index 21168c8..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/annotation/AnnotationMap.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.annotation;
-      
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.StringTokenizer;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation.*;
-
-
-/**
- * AnnotationMap
- */
-public class AnnotationMap
-{                  
-  protected List list = new Vector();
-  protected Hashtable hashtable = new Hashtable();     
-  protected boolean isCaseSensitive = true;
-
-  public AnnotationMap()
-  {
-  } 
-
-  public void setCaseSensitive(boolean isCaseSensitive)
-  {
-    this.isCaseSensitive = isCaseSensitive;
-  }
-
-  public void addAnnotation(Annotation annotation)
-  {                  
-    String spec = annotation.getSpec();
-    if (spec != null)
-    {                
-      list.add(annotation);
-      StringTokenizer st = new StringTokenizer(spec, "[]|\t\n\r\f ");                   
-      while (st.hasMoreTokens())
-      {
-        String cmNodeSpec = st.nextToken();
-        addAnnotationForCMNodeSpec(cmNodeSpec, annotation);
-      }
-    }
-  }                
-
-  protected void addAnnotationForCMNodeSpec(String cmNodeSpec, Annotation annotation)
-  {    
-    String key = isCaseSensitive ? cmNodeSpec : cmNodeSpec.toLowerCase();
-    List list = (List)hashtable.get(key);
-    if (list == null)
-    {       
-      list = new Vector();
-
-      hashtable.put(key, list);
-    }
-    list.add(annotation);
-  }
-                                         
-  public String getProperty(String cmNodeSpec, String propertyName)
-  {  
-    String result = null;  
-    String key = isCaseSensitive ? cmNodeSpec : cmNodeSpec.toLowerCase();
-    List annotationList = (List)hashtable.get(key);
-    if (annotationList != null)
-    {
-      for (Iterator i = annotationList.iterator(); i.hasNext(); )
-      {
-        Annotation annotation = (Annotation)i.next();
-        result = annotation.getProperty(propertyName);
-        if (result != null)
-        {
-          break;
-        }
-      }
-    }                               
-    return result;
-  }
-
-  public String getProperty(CMNode cmNode, String propertyName)
-  {                                          
-    String result = null;
-    String cmNodeSpec = (String)cmNode.getProperty("spec");
-    if (cmNodeSpec == null)
-    {
-      cmNodeSpec = cmNode.getNodeName();
-    }                                    
-    if (cmNodeSpec != null)
-    {                      
-      result = getProperty(cmNodeSpec, propertyName);
-    }                                                     
-    return result;
-  }  
-
-  public List getAnnotations()
-  {
-    return list;
-  }
-
-  public void load(String uri) throws Exception
-  {                                   
-    AnnotationFileParser parser = new AnnotationFileParser();
-    parser.parse(this, uri);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMAnyElementImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMAnyElementImpl.java
deleted file mode 100644
index 09d2885..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMAnyElementImpl.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-
-
-public class CMAnyElementImpl extends CMContentImpl implements CMAnyElement
-{
-  protected String namespaceURI;  
-
-  public CMAnyElementImpl(String namespaceURI)
-  {
-    this.namespaceURI = namespaceURI;
-    minOccur = -1;
-  }             
-
-  public static String computeNodeName(String uri)
-  {
-    return uri != null ? ("any#" + uri) : "any";
-  }
-
-  // implements CMNode
-  //
-  public String getNodeName()
-  {
-    return computeNodeName(namespaceURI);
-  }
- 
-  public int getNodeType()
-  {
-    return ANY_ELEMENT;
-  } 
-
-  // implements CMAnyElement
-  //
-  public String getNamespaceURI()
-  {
-    return namespaceURI;
-  }                     
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMAttributeDeclarationImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMAttributeDeclarationImpl.java
deleted file mode 100644
index 0de70ac..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMAttributeDeclarationImpl.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import java.util.Enumeration;
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-public class CMAttributeDeclarationImpl extends CMNodeImpl implements CMAttributeDeclaration
-{
-  protected CMDataType dataType;
-  protected String nodeName;    
-  protected int usage;  
-  protected CMDocument cmDocument;
-  protected boolean prefixQualification;
-  protected List xsiTypes;
-                
-  public CMAttributeDeclarationImpl(String nodeName, int usage)
-  {
-    this(nodeName, usage, null);
-  }     
-
-  public CMAttributeDeclarationImpl(String nodeName, int usage, CMDataType dataType)
-  {        
-    this.nodeName = nodeName;
-    this.usage = usage;
-    this.dataType = dataType; 
-  }    
-
-  public int getNodeType()
-  {
-    return CMNode.ATTRIBUTE_DECLARATION;
-  }
-
-  public Object getProperty(String propertyName)
-  {
-    Object result = null;   
-    if (propertyName.equals("CMDocument"))
-    {
-      result = cmDocument;
-    } 
-    else if (propertyName.equals("XSITypes"))
-    {                                      
-      result = xsiTypes;
-    }
-    else if (propertyName.equals("http://org.eclipse.wst/cm/properties/nsPrefixQualification"))
-    {
-      result = prefixQualification ? "qualified" : "unqualified";
-    }  
-    else
-    {
-      result = super.getProperty(propertyName);
-    }
-    return result;
-  }
-
-  public void setPrefixQualification(boolean qualified)
-  {
-    prefixQualification = qualified;
-  }              
-
-  public void setXSITypes(List list)
-  {
-    xsiTypes = list;
-  }
-     
-  public void setCMDocument(CMDocument cmDocument)
-  {
-    this.cmDocument = cmDocument;
-  }
-
-  public String getNodeName()
-  {
-    return nodeName;
-  }
-
-  public String getAttrName()
-  {
-    return nodeName;
-  }
-
-  public void setAttrType(CMDataType dataType)
-  {
-    this.dataType = dataType;
-  }
-
-  public CMDataType getAttrType()
-  {
-    return dataType;
-  }
-
-  public int getUsage()
-  {
-    return usage;
-  }
-           
-  /** @deprecated */
-  public String getDefaultValue()
-  {
-    return "";
-  }                 
-
-  /** @deprecated */
-  public Enumeration getEnumAttr()
-  {
-    return null;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMContentImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMContentImpl.java
deleted file mode 100644
index 69e51df..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMContentImpl.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-
-
-public abstract class CMContentImpl extends CMNodeImpl implements CMContent
-{
-  protected int minOccur = 0;
-  protected int maxOccur = -1;       
-                
-  // implements CMContent
-  //
-  public int getMaxOccur()
-  {
-    return maxOccur;
-  }          
- 
-  public int getMinOccur()
-  {
-    return minOccur;
-  }  
-     
-  // implementation specific
-  //
-  public void setMaxOccur(int n)
-  {
-    maxOccur = n;
-  }          
- 
-  public void setMinOccur(int n)
-  {
-    minOccur = n;
-  }                      
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMDataTypeImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMDataTypeImpl.java
deleted file mode 100644
index 6e6df24..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMDataTypeImpl.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class CMDataTypeImpl extends CMNodeImpl implements CMDataType
-{
-  protected String dataTypeName;
-  protected String[] enumeratedValues;     
-  protected String instanceValue;
-
-  public CMDataTypeImpl(String dataTypeName, String instanceValue)
-  {
-    this.dataTypeName = dataTypeName;
-    this.instanceValue = instanceValue;
-    this.enumeratedValues = new String[0];
-  }
-
-  public CMDataTypeImpl(String dataTypeName, String[] enumeratedValues)
-  {
-    this.dataTypeName = dataTypeName;
-    this.enumeratedValues = enumeratedValues;   
-    this.instanceValue = enumeratedValues[0];
-  }
-
-
-  public int getNodeType()
-  {
-    return CMNode.DATA_TYPE;
-  }
-
-  public String getNodeName()
-  {
-    return getDataTypeName();
-  }
-
-  public String getDataTypeName()
-  {
-    return dataTypeName;
-  }
-
-  public int getImpliedValueKind()
-  {
-    return IMPLIED_VALUE_NONE;
-  }
-
-  public String getImpliedValue()
-  {
-    return null;
-  }
-
-  public String[] getEnumeratedValues()
-  {
-    return enumeratedValues;
-  }
-
-  public String generateInstanceValue()
-  {
-    return instanceValue;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMDocumentImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMDocumentImpl.java
deleted file mode 100644
index c85348f..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMDocumentImpl.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
-
-
-public class CMDocumentImpl extends CMNodeImpl implements CMDocument
-{
-  protected String targetNamespace;
-  protected CMNamedNodeMapImpl elements = new CMNamedNodeMapImpl();
-  protected CMNamedNodeMapImpl localElementPool;
-  protected CMNamedNodeMapImpl anyElements;
-
-  public CMDocumentImpl(String targetNamespace)
-  {
-    this.targetNamespace = targetNamespace;
-  }
-
-  public int getNodeType()
-  {
-    return DOCUMENT;
-  }
-
-  public String getNodeName()
-  {
-    return "";
-  }
- 
-  public Object getProperty(String propertyName)
-  {
-    Object result = null;
-    if (propertyName.equals("http://org.eclipse.wst/cm/properties/targetNamespaceURI"))
-    {
-      result = targetNamespace;
-    }                
-    else
-    {
-      result = super.getProperty(propertyName);
-    }
-    return result;
-  }    
-
-  public CMNamedNodeMap getElements()
-  {
-    return elements;
-  }
-
-  public CMNamedNodeMapImpl getAnyElements()
-  { 
-    if (anyElements == null)
-    {
-      anyElements = new CMNamedNodeMapImpl();
-    }
-    return anyElements;
-  }
-  
-  public CMNamedNodeMapImpl getLocalElementPool()
-  { 
-    if (localElementPool == null)
-    {
-      localElementPool = new CMNamedNodeMapImpl();
-    }                 
-    return localElementPool;
-  }
-
-  public CMNamedNodeMap getEntities()
-  {
-    return new CMNamedNodeMapImpl();
-  }
-
-  public CMNamespace getNamespace()
-  {
-    return null;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMElementDeclarationImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMElementDeclarationImpl.java
deleted file mode 100644
index df88b29..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMElementDeclarationImpl.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-
-
-public class CMElementDeclarationImpl extends CMContentImpl implements CMElementDeclaration
-{
-  protected String name;          
-  protected CMDocument cmDocument;
-  protected CMNamedNodeMapImpl attributeMap = new CMNamedNodeMapImpl();
-  protected CMNamedNodeMapImpl localElementMap = new CMNamedNodeMapImpl();
-  protected CMContent content;
-  protected CMDataType dataType;
-  protected boolean isLocal;
-
-  public CMElementDeclarationImpl(CMDocument cmDocument, String name)
-  {                              
-    this.cmDocument = cmDocument;
-    this.name = name;
-  }     
-
-  // implements CMNode
-  //
-  public String getNodeName()
-  {
-    return name;
-  }
- 
-  public int getNodeType()
-  {
-    return ELEMENT_DECLARATION;
-  }
-
-  public Object getProperty(String propertyName)
-  { 
-    Object result = null;               
-    if (propertyName.equals("http://org.eclipse.wst/cm/properties/nsPrefixQualification"))
-    {
-      result = isLocal ? "unqualified" : "qualified";
-    }    
-    else if (propertyName.equals("CMDocument"))
-    {
-      result = cmDocument;       
-    }    
-    else
-    {
-      result = super.getProperty(propertyName);
-    }
-    return result;
-  }
-                
-  // implements CMElementDeclaration
-  //
-  public CMNamedNodeMap getAttributes()
-  {
-    return attributeMap;
-  }                     
-
-  public CMContent getContent()
-  {
-    return content;
-  }
-
-  public int getContentType()
-  {
-    return MIXED;
-  }            
-
-  public String getElementName()
-  {
-    return name;
-  }
-
-  public CMDataType getDataType()
-  { 
-    return dataType;
-  }
-
-  public CMNamedNodeMap getLocalElements()
-  { 
-    return localElementMap;
-  } 
-    
-  //
-  //
-  public void setContent(CMContent cmContent)
-  {
-    content = cmContent;
-  }                 
-
-  public void setDataType(CMDataType cmDataType)
-  {
-    dataType = cmDataType;
-  }
-
-  public CMNamedNodeMapImpl getAttributeMap()
-  {
-    return attributeMap;
-  }
-
-  public void setLocal(boolean isLocal)
-  {
-    this.isLocal = isLocal;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMEntityDeclarationImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMEntityDeclarationImpl.java
deleted file mode 100644
index af0fcc3..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMEntityDeclarationImpl.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMEntityDeclaration;
-
-public class CMEntityDeclarationImpl extends CMNodeImpl implements CMEntityDeclaration
-{
-  protected String name;                         
-  protected String value;
-
-  public CMEntityDeclarationImpl(String name, String value)
-  {
-    this.name = name;
-    this.value = value;
-  }
-
-  public int getNodeType()
-  {
-    return ENTITY_DECLARATION;
-  }
-
-  public String getNodeName()
-  {
-    return name;
-  }
- 
-  public String getName()
-  {
-    return name;
-  }
-
-  public String getValue()
-  {
-    return value;
-  }
-}   
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMGroupImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMGroupImpl.java
deleted file mode 100644
index 8335e1f..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMGroupImpl.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-
-public class CMGroupImpl extends CMContentImpl implements CMGroup
-{
-  protected CMNodeList nodeList;                         
-  protected int operator;  
-
-  public CMGroupImpl(CMNodeList nodeList, int operator)
-  {
-    this.nodeList = nodeList;
-    this.operator = operator;
-  }
-
-  public int getNodeType()
-  {
-    return GROUP;
-  }
- 
-  public CMNodeList getChildNodes()
-  {
-    return nodeList;
-  }
-
-  public int getOperator()
-  {
-    return operator;
-  } 
-}   
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNamedNodeMapImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNamedNodeMapImpl.java
deleted file mode 100644
index cafef41..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNamedNodeMapImpl.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-
-public class CMNamedNodeMapImpl implements CMNamedNodeMap 
-{
-  public static CMNamedNodeMapImpl EMPTY_NAMED_NODE_MAP = new CMNamedNodeMapImpl();
-  protected Hashtable table = new Hashtable();
-
-  /**
-   * CMNamedNodeMapImpl constructor comment.
-   */
-  public CMNamedNodeMapImpl()
-  {
-  	super();
-  }
-
-  /**
-   * getLength method
-   * @return int
-   */
-  public int getLength()
-  {
-  	return table.size();
-  }
-
-  /**
-   * getNamedItem method
-   * @return CMNode
-   * @param name java.lang.String
-   */
-  public CMNode getNamedItem(String name)
-  {
-  	return (CMNode)table.get(name);
-  }
-
-  /**
-   * item method
-   * @return CMNode
-   * @param index int
-   */
-  public CMNode item(int index)
-  {
-    CMNode result = null;
-    int size = table.size();
-    if (index < size)
-    {
-      Enumeration values = table.elements();
-      for(int i = 0; i <= index; i++)
-      {
-        result = (CMNode)values.nextElement();
-      }
-    }
-    return result;
-  }
-  
-  public Hashtable getHashtable()
-  {
-          return table;
-  }
-  
-  public Iterator iterator()
-  {
-          return table.values().iterator();
-  }        
-  
-  public void put(CMNode cmNode)
-  {
-    table.put(cmNode.getNodeName(), cmNode);
-  }
-}
-  
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNodeImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNodeImpl.java
deleted file mode 100644
index 396e759..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNodeImpl.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-public abstract class CMNodeImpl implements CMNode
-{            
-  protected boolean isInferred = false;
-   
-  public String getNodeName()
-  {
-    return "";
-  }
- 
-  public boolean supports(String propertyName)
-  {
-    return false;
-  } 
-
-  public Object getProperty(String propertyName)
-  {              
-    Object result = null;
-    if ("isInferred".equals(propertyName))
-    {
-      result = isInferred ? Boolean.TRUE : Boolean.FALSE;
-    }
-    return result;
-  }    
-
-  public void setInferred(boolean isInferred)
-  {
-    this.isInferred = isInferred;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNodeListImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNodeListImpl.java
deleted file mode 100644
index bc9b6b9..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/basic/CMNodeListImpl.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.basic;
-
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-
-
-public class CMNodeListImpl implements CMNodeList 
-{
-  public static CMNodeListImpl EMPTY_NODE_LIST = new CMNodeListImpl(Collections.EMPTY_LIST);
-  protected List list;
-
-  public CMNodeListImpl()
-  {
-    this(new Vector());
-  }
-
-  public CMNodeListImpl(List list)
-  {
-    this.list = list;
-  }
-
-  /**
-   * getLength method
-   * @return int
-   */
-  public int getLength()
-  {
-    return list.size();
-  }
-  /**
-   * item method
-   * @return CMNode
-   * @param index int
-   */
-  public CMNode item(int index)
-  {
-    return (CMNode)list.get(index);
-  }
-  
-  public List getList()
-  {
-    return list;
-  }
-  
-  public Iterator iterator()
-  {
-    return list.iterator();
-  }
-  
-  public boolean contains(CMNode cmNode)
-  {
-    return list.contains(cmNode);
-  } 
-  
-  public void add(CMNode cmNode)
-  {
-    list.add(cmNode);
-  }  
-}
-
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactory.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactory.java
deleted file mode 100644
index 39b540b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactory.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.factory;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-// this interface is used to build a grammar document given a local file name
-//
-public interface CMDocumentFactory
-{   
-  public CMDocument createCMDocument(String uri);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryDescriptor.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryDescriptor.java
deleted file mode 100644
index 052b6d2..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryDescriptor.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.factory;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-
-
-public class CMDocumentFactoryDescriptor
-{
-  private IConfigurationElement fElement;
-  private CMDocumentFactory factory;
-
-  public CMDocumentFactoryDescriptor(IConfigurationElement element)
-  {
-    this.fElement = element;
-  }
-
-  public CMDocumentFactory getFactory()
-  {
-    if (factory == null)
-    {
-      try
-      {
-        factory = (CMDocumentFactory) fElement.createExecutableExtension("class");
-      }
-      catch (Exception e)
-      {
-        e.printStackTrace();
-      }
-    }
-    return factory;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryRegistry.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryRegistry.java
deleted file mode 100644
index fa38107..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryRegistry.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.factory;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Vector;
-
-/**
- *
- *
- */
-public class CMDocumentFactoryRegistry //implements CMDocumentFactoryRegistry
-{
-  protected static CMDocumentFactoryRegistry instance;
-
-  private static String DEFAULT_RESOURCE_TYPE = "*";
-
-  protected Map resourceTypeMap = new HashMap();
-
-  protected Vector documentBuilderList = new Vector();
-
-  public CMDocumentFactoryRegistry()
-  {
-  }
-
-  public void putFactory(String resourceType, CMDocumentFactoryDescriptor factoryDescriptor)
-  {
-    resourceTypeMap.put(resourceType, factoryDescriptor);
-  }
-
-/*
-  public CMDocument buildCMDocument(String uri, String resourceType)
-  {
-    CMDocument result = null;
-    CMDocumentFactory factory = getFactory(resourceType);
-    if (factory != null)
-    {
-      result = factory.createCMDocument(uri);
-    }
-    return result;
-  }
-*/
-  public CMDocumentFactory getFactory(String resourceType)
-  {
-    CMDocumentFactoryDescriptor factoryDescriptor = null;
-    if (resourceType != null)
-    {
-      factoryDescriptor = (CMDocumentFactoryDescriptor) resourceTypeMap.get(resourceType);
-    }
-    if (factoryDescriptor == null)
-    {
-      factoryDescriptor = (CMDocumentFactoryDescriptor) resourceTypeMap.get(DEFAULT_RESOURCE_TYPE);
-    }
-    return factoryDescriptor != null ? factoryDescriptor.getFactory() : null;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryRegistryReader.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryRegistryReader.java
deleted file mode 100644
index 8501656..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/factory/CMDocumentFactoryRegistryReader.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.factory;
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-
-
-
-
-public class CMDocumentFactoryRegistryReader
-{
-  protected static final String EXTENSION_POINT_ID = "documentFactories";
-  protected static final String TAG_NAME = "factory";
-  protected static final String ATT_CLASS = "class";
-  protected static final String ATT_TYPE = "type";  
-  protected String pluginId, extensionPointId;
-  
-  protected CMDocumentFactoryRegistry registry;
-  
-  public CMDocumentFactoryRegistryReader(CMDocumentFactoryRegistry registry)
-  {
-  	this.registry = registry;
-  }
-
-  public void readRegistry()
-  {
-    String bundleid = "org.eclipse.wst.xml.core";
-    IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(bundleid, EXTENSION_POINT_ID);
-    if (point != null)
-    {
-      IConfigurationElement[] elements = point.getConfigurationElements();
-      for (int i = 0; i < elements.length; i++)
-      {
-        readElement(elements[i]);
-      }
-    }
-  }
-
-  protected void readElement(IConfigurationElement element)
-  {
-    if (element.getName().equals(TAG_NAME))
-    {
-      String factoryClass = element.getAttribute(ATT_CLASS);
-      String filenameExtensions = element.getAttribute(ATT_TYPE);
-      if (factoryClass != null && filenameExtensions != null)
-      {
-        try
-        {
-          CMDocumentFactoryDescriptor descriptor = new CMDocumentFactoryDescriptor(element);
-          for (StringTokenizer st = new StringTokenizer(filenameExtensions, ","); st.hasMoreTokens(); )
-          {
-          	String token = st.nextToken().trim();
-			registry.putFactory(token, descriptor);	
-          }         
-        }
-        catch (Exception e)
-        {
-        }
-      }
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileParser.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileParser.java
deleted file mode 100644
index ad06a90..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileParser.java
+++ /dev/null
@@ -1,218 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation;
-
-import java.io.InputStream;
-import java.io.PrintStream;
-import java.net.URL;
-import java.util.ResourceBundle;
-
-import javax.xml.parsers.SAXParser;
-import javax.xml.parsers.SAXParserFactory;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.annotation.Annotation;
-import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
-import org.xml.sax.Attributes;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-
-/**
- * 
- */
-public class AnnotationFileParser
-{
-  public static final String TAG_ID_ANNOTATIONS = "abstractGrammarAnnotations";
-  public static final String TAG_ID_ANNOTATION = "annotation";                               
-  public static final String TAG_ID_PROPERTY = "property";  
-
-  /**
-   * This method is called to parse an annotation file and store the contents into an annotationMap
-   */
-  protected void parse(AnnotationMap annotationMap, InputStream input, String baseURI) throws Exception
-  {
-    // move to Xerces-2.... add 'contextClassLoader' stuff
-    ClassLoader prevClassLoader = Thread.currentThread().getContextClassLoader();
-    try
-    {
-    	SAXParserFactory factory = SAXParserFactory.newInstance();
-    	factory.setNamespaceAware(true);
-    	SAXParser parser = factory.newSAXParser();
-    	parser.parse(new InputSource(input), new AnnotationMapContentHandler(annotationMap, baseURI));
-    }
-    finally
-    {
-      Thread.currentThread().setContextClassLoader(prevClassLoader);
-    }
-  } 
-
-  /**
-   * This method is called to parse an annotation file and store the contents into an annotationMap
-   */
-  public void parse(AnnotationMap map, String uri) throws Exception
-  {   
-    InputStream inputStream = null;
-    try
-    {       
-      URL url = new URL(uri); 
-      inputStream = url.openStream(); 
-      int index = uri.lastIndexOf("/");
-      if (index == -1)
-      {
-        throw new Exception("malformed uri");
-      }
-      String baseURI = uri.substring(0, index);
-      parse(map, inputStream, baseURI);               
-    }
-    catch (Exception e)
-    {    
-      e.printStackTrace();
-      throw(e);
-    }
-    finally
-    {
-      try
-      {
-        inputStream.close();
-      }
-      catch (Exception e)
-      {
-      }
-    }
-  }
- 
-
-  protected String quote(String string)
-  {
-    return "\"" + string + "\"";
-  }
-
-
-  protected void printlnIndented(PrintStream out, int indent, String string)
-  {
-    for (int i = 0; i < indent; i++)
-    {
-      out.print(" ");
-    }
-    out.println(string);
-  }    
-
-
-  protected class AnnotationMapContentHandler extends DefaultHandler
-  {
-    protected AnnotationMap annotationMap;
-    protected Annotation currentAnnotation;  
-    protected String currentPropertyName;    
-    protected StringBuffer propertyValueBuffer;
-    protected ResourceBundle resourceBundle; 
-    protected String baseURI;
-
-    public AnnotationMapContentHandler(AnnotationMap annotationMap, String baseURI)
-    {
-      this.annotationMap = annotationMap;                                                                              
-      this.baseURI = baseURI;
-    }
-
-    public void startElement(String uri, String localName, String qName, Attributes attributes)  throws SAXException
-    {         
-      propertyValueBuffer = new StringBuffer();
-      if (localName.equals(TAG_ID_ANNOTATIONS))
-      {
-        int attributesLength = attributes.getLength();
-        for (int i = 0; i < attributesLength; i++)
-        {                  
-          String attributeName = attributes.getLocalName(i);
-          String attributeValue = attributes.getValue(i);  
-          if (attributeName.equals("propertiesLocation"))
-          {                                                 
-            String resourceURI = baseURI + "/" + attributeValue;  
-            try
-            {                     
-              resourceBundle = ResourceBundleHelper.getResourceBundle(resourceURI);
-            }
-            catch (Exception e)
-            {           
-              e.printStackTrace();
-            }
-          } 
-          else if (attributeName.equals("caseSensitive"))
-          {   
-            if (attributeValue.trim().equals("false"))
-            {
-              annotationMap.setCaseSensitive(false);
-            }                 
-          }
-        }
-      }
-      else if (localName.equals(TAG_ID_ANNOTATION))
-      {                 
-        currentAnnotation = null;
-        String specValue = attributes.getValue("spec");                                          
-        if (specValue != null)
-        {
-          currentAnnotation = new Annotation();   
-          currentAnnotation.setSpec(specValue); 
-        }    
-        annotationMap.addAnnotation(currentAnnotation);
-      }
-      else if (localName.equals(TAG_ID_PROPERTY))
-      {           
-        if (currentAnnotation != null)
-        {                          
-          currentPropertyName = attributes.getValue("name");   
-        }                                                   
-      }           
-    }   
-                             
-    public void endElement(String uri, String localName, String qName)  throws SAXException
-    {          
-      if (currentPropertyName != null && currentAnnotation != null)
-      {   
-        String propertyValue = propertyValueBuffer.toString();
-        if (propertyValue != null)
-        {
-          if (propertyValue.startsWith("%") && resourceBundle != null)
-          {  
-            try
-            {
-              propertyValue = resourceBundle.getString(propertyValue.substring(1));
-            }
-            catch (Exception e)
-            {
-              // ignore any exception that occurs while trying to fetch a resource
-            }
-          }
-          currentAnnotation.setProperty(currentPropertyName, propertyValue);       
-        }
-      }
-
-      if (localName.equals(TAG_ID_ANNOTATION))
-      {                 
-        currentAnnotation = null;
-      }
-      else if (localName.equals(TAG_ID_PROPERTY))
-      {         
-        currentPropertyName = null;                                                 
-      }  
-    }
-
-    public void characters(char[] ch, int start, int length) 
-    {  
-      if (currentPropertyName != null && currentAnnotation != null)
-      {   
-        propertyValueBuffer.append(ch, start, length);       
-      }
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileRegistry.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileRegistry.java
deleted file mode 100644
index 81680cc..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileRegistry.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * This class is used to associate one or more annotation files with a grammar file.
- *
- */
-public class AnnotationFileRegistry
-{
-  protected Map map = new HashMap();
-
-  public AnnotationFileRegistry()
-  {
-    new AnnotationFileRegistryReader(this).readRegistry();
-  }
-
-  public synchronized List getAnnotationFiles(String publicId)
-  {
-    Map fileTable = (Map) map.get(publicId);
-    return fileTable != null ? new ArrayList(fileTable.values()) : new ArrayList();
-  }
-
-  public synchronized void addAnnotationFile(String publicId, String annotationFileURI)
-  {
-    Map fileTable = (Map) map.get(publicId);
-    if (fileTable == null)
-    {
-      fileTable = new HashMap();
-      map.put(publicId, fileTable);
-    }
-    fileTable.put(annotationFileURI, annotationFileURI);
-  }
-
-  public synchronized void removeAnnotationFile(String publicId, String annotationFileURI)
-  {
-    Map fileTable = (Map) map.get(publicId);
-    if (fileTable != null)
-    {
-      fileTable.remove(annotationFileURI);
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileRegistryReader.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileRegistryReader.java
deleted file mode 100644
index d5da539..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationFileRegistryReader.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation;
-
-import java.net.URL;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IPluginRegistry;
-import org.eclipse.core.runtime.Platform;
-
-
-/**
-* This class reads the plugin manifests and adds each specified gramamr annotation file with the AnnotationProvider
-*/
-public class AnnotationFileRegistryReader
-{
-  protected static final String EXTENSION_POINT_ID = "annotationFiles";
-  protected static final String TAG_NAME = "annotationFile";
-  protected static final String ATT_PUBLIC_ID = "publicId";
-  protected static final String ATT_LOCATION = "location";
-
-  private AnnotationFileRegistry annotationFileRegistry;
-
-  public AnnotationFileRegistryReader(AnnotationFileRegistry annotationFileRegistry)
-  {
-    this.annotationFileRegistry = annotationFileRegistry;
-  }
-
-  /**
-   * read from plugin registry and parse it.
-   */
-  public void readRegistry()
-  {
-    IPluginRegistry pluginRegistry = Platform.getPluginRegistry();
-	String pluginId = "org.eclipse.wst.xml.core";    
-    IExtensionPoint point = pluginRegistry.getExtensionPoint(pluginId, EXTENSION_POINT_ID);
-    if (point != null)
-    {
-      IConfigurationElement[] elements = point.getConfigurationElements();
-      for (int i = 0; i < elements.length; i++)
-      {
-        readElement(elements[i]);
-      }
-    }
-  }
-
-  /**
-   * readElement() - parse and deal with an extension like:
-   *
-   * <extension point="org.eclipse.wst.xml.core.internal.contentmodel.util_implementation">
-   *    <util_implementation class = corg.eclipse.wst.baseutil.CMUtilImplementationImpl  />
-   * </extension>
-   */
-  protected void readElement(IConfigurationElement element)
-  {
-    if (element.getName().equals(TAG_NAME))
-    {
-      String publicId = element.getAttribute(ATT_PUBLIC_ID);
-      String location = element.getAttribute(ATT_LOCATION);
-      if (publicId != null && location != null)
-      {
-        try
-        {
-          URL installURL = element.getDeclaringExtension().getDeclaringPluginDescriptor().getInstallURL();
-          String qualifiedLocation = resolve(installURL, location);
-          annotationFileRegistry.addAnnotationFile(publicId, qualifiedLocation);
-        }
-        catch (Exception e)
-        {
-        }
-      }
-    }
-  }
-
-  public String resolve(URL platformURL, String relativePath) throws Exception
-  {
-    URL resolvedURL = Platform.resolve(platformURL);
-    return resolvedURL.toString() + relativePath;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationUtility.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationUtility.java
deleted file mode 100644
index 6777538..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/AnnotationUtility.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.annotation.AnnotationMap;
-
-
-/**
- * 
- */
-public class AnnotationUtility
-{
-  public static void loadAnnotationsForGrammar(String publicId, CMDocument cmDocument)
-  {
-    List annotationFiles = ContentModelManager.getInstance().getAnnotationFiles(publicId);
-    AnnotationMap map = (AnnotationMap) cmDocument.getProperty("annotationMap");
-    if (map != null)
-    {
-      for (Iterator i = annotationFiles.iterator(); i.hasNext();)
-      {
-        try
-        {
-          String annotationFileURI = (String) i.next();
-          AnnotationFileParser parser = new AnnotationFileParser();
-          parser.parse(map, annotationFileURI);
-        }
-        catch (Exception e)
-        {
-        }
-      }
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/ResourceBundleHelper.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/ResourceBundleHelper.java
deleted file mode 100644
index f1eecf0..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/annotation/ResourceBundleHelper.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation;
-                     
-import java.net.URL;
-import java.net.URLClassLoader;
-import java.util.Locale;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.Platform;
-
-
-public class ResourceBundleHelper
-{
-  public static ResourceBundle getResourceBundle(String resourceURI, Locale targetLocale) throws Exception
-  {
-	  // try to load bundle from the location specified in the resourceURI
-    // we make the assumption that the resourceURI points to the local file system
-         
-    int index = resourceURI.lastIndexOf("/");
-    if (index == -1)
-    {
-      throw new Exception("Invalid resourceURI");
-    }                               
-
-    // Below we set 'resourceDirectory' so that it ends with a '/'.
-    // Here's an excerpt from the ClassLoader Javadoc ...
-    // Any URL that ends with a '/' is assumed to refer to a directory. Otherwise, the URL is assumed
-    // to refer to a JAR file which will be opened as needed. 
-    //
-    String resourceDirectory = resourceURI.substring(0, index + 1);
-    String resourceBundleName = resourceURI.substring(index + 1);
-    
-    // create a class loader with a class path that points to the resource bundle's location
-    //         
-    URL[] classpath = new URL[1];
-    classpath[0] = Platform.resolve(new URL(resourceDirectory));
-	  ClassLoader resourceLoader = new URLClassLoader(classpath, null); 
-       
-  	return ResourceBundle.getBundle(resourceBundleName, targetLocale, resourceLoader);
-	}  
-
-  public static ResourceBundle getResourceBundle(String resourceURI) throws Exception 
-  {
-	  return getResourceBundle(resourceURI, Locale.getDefault());
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/InferredGrammarFactory.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/InferredGrammarFactory.java
deleted file mode 100644
index 1b6e43b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/InferredGrammarFactory.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.modelqueryimpl;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMAnyElementImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMAttributeDeclarationImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMDocumentImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMElementDeclarationImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMGroupImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMNamedNodeMapImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.basic.CMNodeListImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDescriptionBuilder;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-
- 
-
-public class InferredGrammarFactory
-{                                      
-  public InferredGrammarFactory()
-  {
-  }
-
-  public CMDocument createCMDocument(String uri)
-  {                      
-    CMDocumentImpl cmdocument =new CMDocumentImpl(uri);
-    cmdocument.setInferred(true);
-    return cmdocument;
-  }    
- 
-  public CMElementDeclaration createCMElementDeclaration(CMDocument cmDocument, Element element, boolean isLocal)
-  {
-    String localName = element.getLocalName();                                   
-    CMDocumentImpl cmDocumentImpl = (CMDocumentImpl)cmDocument;
-
-    CMNamedNodeMapImpl elementMap = isLocal ?
-                                    (CMNamedNodeMapImpl)cmDocumentImpl.getLocalElementPool() :
-                                    (CMNamedNodeMapImpl)cmDocumentImpl.getElements();
-
-    CMElementDeclarationImpl ed = (CMElementDeclarationImpl)elementMap.getNamedItem(localName);
-    if (ed == null)
-    {                                                                                          
-      //System.out.println("create ed " + localName);
-      ed = new CMElementDeclarationImpl(cmDocument, localName);
-      ed.setInferred(true);
-      ed.setLocal(isLocal);
-      ed.setMaxOccur(1);
-      CMGroupImpl group = new CMGroupImpl(new CMNodeListImpl(), CMGroup.CHOICE);
-      group.setInferred(true);
-      group.setMinOccur(0);
-      group.setMaxOccur(-1);
-      ed.setContent(group);            
-      elementMap.put(ed);
-    } 
-
-    // lookup or create the attributes
-    //
-    NamedNodeMap attributeMap = element.getAttributes();
-    int attributeMapLength = attributeMap.getLength();
-    for (int i = 0; i < attributeMapLength; i++)
-    {
-      Attr attr = (Attr)attributeMap.item(i);
-      CMAttributeDeclarationImpl ad = (CMAttributeDeclarationImpl)ed.getAttributeMap().getNamedItem(attr.getNodeName());
-      if (ad == null)
-      {     
-        // todo... use an attribute pool to be more efficient?
-        ad = new CMAttributeDeclarationImpl(attr.getNodeName(), CMAttributeDeclaration.OPTIONAL);
-        ad.setInferred(true);
-        ed.getAttributeMap().put(ad);
-      }
-    }
-    return ed;
-  }         
-
-  public void createCMContent(CMDocument parentCMDocument, CMElementDeclaration parentEd, CMDocument childCMDocument, CMElementDeclaration childEd, boolean isLocal, String uri)
-  {
-    // add element to the parent's content
-    // consider all content to be of the form (A | B | C)*    
-    //
-    CMGroupImpl group = (CMGroupImpl)parentEd.getContent();
-    CMNodeListImpl groupChildNodeList = (CMNodeListImpl)group.getChildNodes();
-
-    if (parentCMDocument == childCMDocument)
-    {
-      if (!groupChildNodeList.contains(childEd))
-      {
-        groupChildNodeList.add(childEd);
-      }
-      if (isLocal)
-      {
-        CMNamedNodeMapImpl localElementMap = (CMNamedNodeMapImpl)parentEd.getLocalElements();
-        localElementMap.put(childEd);
-      }
-    }     
-    else
-    {                                                    
-      CMAnyElement cmAnyElement = lookupOrCreateCMAnyElement((CMDocumentImpl)parentCMDocument, uri);
-      if (!groupChildNodeList.contains(cmAnyElement))
-      {
-        groupChildNodeList.add(cmAnyElement);
-      }
-    }      
-  }   
-
-  protected CMAnyElement lookupOrCreateCMAnyElement(CMDocumentImpl parentCMDocument, String uri)
-  {
-    CMNamedNodeMapImpl anyElementMap = parentCMDocument.getAnyElements();
-    CMAnyElementImpl anyElement = (CMAnyElementImpl)anyElementMap.getNamedItem(CMAnyElementImpl.computeNodeName(uri));
-    if (anyElement == null)
-    {                                                                                     
-      //System.out.println("create anyElement " + uri);
-      anyElement = new CMAnyElementImpl(uri);
-      anyElement.setInferred(true);
-      anyElementMap.put(anyElement);
-    }
-    return anyElement;
-  } 
-      
-
-  public void debugPrint(Collection collection)
-  {                
-    for (Iterator iter = collection.iterator(); iter.hasNext(); )
-    {
-      CMDocument cmDocument = (CMDocument)iter.next(); 
-      System.out.println("-----------------------------------------------");
-      System.out.println("cmDocument (" + cmDocument.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI") +")"); 
-      CMNamedNodeMapImpl elementMap = (CMNamedNodeMapImpl)cmDocument.getElements();
-      int size = elementMap.getLength();
-      for (int i = 0; i < size; i++)
-      {
-        CMElementDeclaration ed = (CMElementDeclaration)elementMap.item(i);
-        CMDescriptionBuilder builder = new CMDescriptionBuilder();
-        System.out.println("  ELEMENT " + ed.getNodeName() + " = " + builder.buildDescription(ed));
-      }
-    }
-  }        
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/ModelQueryExtensionManagerImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/ModelQueryExtensionManagerImpl.java
deleted file mode 100644
index b61115d..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/modelqueryimpl/ModelQueryExtensionManagerImpl.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.modelqueryimpl;
-        
-import java.util.ArrayList;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension.DataTypeValueExtension;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension.ElementContentFilterExtension;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension.ModelQueryExtension;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension.ModelQueryExtensionManager;
-import org.w3c.dom.Element;
-
-
-
-public class ModelQueryExtensionManagerImpl implements ModelQueryExtensionManager
-{           
-  protected Hashtable dataTypeValueExtensionTable = new Hashtable();
-  protected List elementContentFilterList = new ArrayList();
-
-  public List getDataTypeValues(Element element, CMNode cmNode)
-  {
-    List list = new Vector();                                         
-    for (Iterator i = dataTypeValueExtensionTable.values().iterator(); i.hasNext();)
-    {
-      DataTypeValueExtension extension = (DataTypeValueExtension)i.next();
-      list.addAll(extension.getDataTypeValues(element, cmNode));
-    }  
-    return list;  
-  }                               
-
-  public void filterAvailableElementContent(List list, Element element, CMElementDeclaration ed)
-  {
-    for (Iterator i = elementContentFilterList.iterator(); i.hasNext();)
-    {
-      ElementContentFilterExtension extension = (ElementContentFilterExtension)i.next();
-      extension.filterAvailableElementContent(list, element, ed);
-    }  
-  }
-
-  public void addExtension(ModelQueryExtension extension)
-  {  
-    if (extension.getType() == ModelQueryExtension.DATA_TYPE_VALUE_EXTENSION)
-    {              
-      dataTypeValueExtensionTable.put(extension.getId(), extension);
-    }
-    else if (extension.getType() == ModelQueryExtension.ELEMENT_CONTENT_FILTER)
-    {
-      elementContentFilterList.add(extension);
-    }
-  }
-
-  public void removeExtension(ModelQueryExtension extension)
-  {
-    if (extension.getType() == ModelQueryExtension.DATA_TYPE_VALUE_EXTENSION)
-    {  
-      dataTypeValueExtensionTable.remove(extension.getId());
-    }  
-    else if (extension.getType() == ModelQueryExtension.ELEMENT_CONTENT_FILTER)
-    {
-      elementContentFilterList.remove(extension);
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/CMPrinter.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/CMPrinter.java
deleted file mode 100644
index a8b8d39..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/CMPrinter.java
+++ /dev/null
@@ -1,329 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.test;
-
-import java.io.FileOutputStream;
-import java.io.OutputStreamWriter;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMEntityDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMVisitor;
-
-
-public class CMPrinter extends CMVisitor
-{
-  protected StringBuffer sb = new StringBuffer();
-  protected Vector visitedElements = new Vector(); 
-    
-  /******   formatting    ******/
-  protected String indent = "";
-
-  protected void incrementIndent()
-  {
-    indent = indent + "  ";
-  }
-
-  protected void decrementIndent()
-  {
-    indent = indent.substring(0, indent.length()-2);
-  }
-
-
-  public void printCMNode(String filename, CMNode cmnode)
-  {
-    visitCMNode(cmnode);
-    try 
-    {
-      FileOutputStream fileStream = new FileOutputStream(filename);
-      OutputStreamWriter writer = new OutputStreamWriter(fileStream);
-      writer.write(sb.toString());
-      writer.flush();
-      fileStream.close();
-    }
-    catch (Exception e) {}  
-  }
-
-  public void visitCMAnyElement(CMAnyElement anyElement)
-  {
-    sb.append(indent + "<CMAnyElement");
-    printAttributes(sb, anyElement);
-    sb.append(">/n");
-    incrementIndent();
-    printProperties(sb, anyElement);
-    decrementIndent();
-    sb.append(indent + "</CMAnyElement>/n");
-  }
-
-  public void visitCMAttributeDeclaration(CMAttributeDeclaration ad)
-  {
-    sb.append(indent + "<CMAttributeDeclaration");
-    printAttributes(sb, ad);
-    sb.append(">\n");
-    incrementIndent();
-    printProperties(sb, ad);
-    decrementIndent();
-    visitCMNode(ad.getAttrType());
-    sb.append(indent + "</CMAttributeDeclaration>\n");
-  }
-
-  public void visitCMDataType(CMDataType dataType)
-  {
-    sb.append(indent + "<CMDataType");
-    printAttributes(sb, dataType);
-    sb.append(">\n");
-    incrementIndent();
-    sb.append(indent + "<ImpliedValue kind=\"" + dataType.getImpliedValueKind() + "\">");
-    sb.append(dataType.getImpliedValue() + "</ImpliedValue>\n");
-    printEnumeration(sb, dataType.getEnumeratedValues());
-    decrementIndent();
-    sb.append(indent + "</CMDataType>\n");
-  }
-
-  public void visitCMDocument(CMDocument document)
-  {
-    sb.append(indent + "<CMDocument");
-    printAttributes(sb, document);
-    sb.append(">\n");
-    incrementIndent();
-
-    //    printEntities(sb, document.getEntities()); 
-    printProperties(sb, document);
-
-    CMNamedNodeMap map = document.getElements();
-    int size = map.getLength();
-    for (int i = 0; i < size; i++)
-    {
-      visitCMNode(map.item(i));
-    }
-
-    decrementIndent();
-    sb.append(indent + "</CMDocument>\n");
-  }
-
-  public void visitCMGroup(CMGroup group)
-  {
-    sb.append(indent + "<CMGroup");
-    printAttributes(sb, group);
-    sb.append(">\n");
-    incrementIndent();
-
-    CMNodeList nodeList = group.getChildNodes();
-    int size = nodeList.getLength();
-    for (int i = 0; i < size; i++)
-    {
-      visitCMNode(nodeList.item(i));
-    }
-
-    decrementIndent();
-    sb.append(indent + "</CMGroup>\n");
-  }
-
-  public void visitCMElementDeclaration(CMElementDeclaration ed)
-  {
-    if (!visitedElements.contains(ed))
-    {
-      visitedElements.add(ed);
-      sb.append(indent + "<CMElementDeclaration");
-      printAttributes(sb, ed);
-      sb.append(">\n");
-      incrementIndent();
-      printProperties(sb, ed);
-
-      CMNamedNodeMap nodeMap = ed.getAttributes();
-      int size = nodeMap.getLength();
-      for (int i = 0; i < size; i++)
-      {
-        visitCMNode(nodeMap.item(i));
-      }
-
-      visitCMNode(ed.getContent());
-
-      CMDataType dataType = ed.getDataType();
-      if (dataType != null)
-        visitCMNode(dataType);
-
-      decrementIndent();
-      sb.append(indent + "</CMElementDeclaration>\n");
-    }
-  }
-
-
-  public void printEnumeration(StringBuffer sb, String[] values)
-  {
-    if ((values != null) && (values.length > 0))
-    {
-      sb.append(indent + "<Enumeration>\n");
-      incrementIndent();
-
-      for (int i=0; i<values.length; i++)
-      {
-        sb.append(indent + "<Value>" + values[i] + "</Values>\n");
-      }
-
-      decrementIndent();
-      sb.append(indent + "</Enumeration>\n");
-    }
-  }
-
-
-  public void printAttributes(StringBuffer sb, CMNode cmnode)
-  {
-    if (cmnode != null)
-    {
-      sb.append(" nodeName=\"" + cmnode.getNodeName() + "\"");
-      sb.append(" nodeType=\"" + cmnode.getNodeType() + "\"");
-
-      if (cmnode instanceof CMContent)
-      {
-        sb.append(" minOccur=\"" + ((CMContent)cmnode).getMinOccur() + "\"");
-        sb.append(" maxOccur=\"" + ((CMContent)cmnode).getMaxOccur() + "\"");
-      }
-      if (cmnode instanceof CMAnyElement)
-      {
-        sb.append(" namespaceURI=\"" + ((CMAnyElement)cmnode).getNamespaceURI() + "\"");
-      }
-      if (cmnode instanceof CMAttributeDeclaration)
-      {
-        sb.append(" uasage=\"" + ((CMAttributeDeclaration)cmnode).getUsage() + "\"");
-        sb.append(" defaultValue=\"" + ((CMAttributeDeclaration)cmnode).getDefaultValue() + "\"");
-      }
-      if (cmnode instanceof CMDataType)
-      { 
-        sb.append(" instanceValue=\"" + ((CMDataType)cmnode).generateInstanceValue() + "\"");
-      }
-      if (cmnode instanceof CMEntityDeclaration)
-      {
-        String value = ((CMEntityDeclaration)cmnode).getValue();
-        if (value.indexOf("\"") == -1) sb.append(" value=\"" + value + "\"");
-        else sb.append(" value=\"" + value + "\"");
-      }
-      if (cmnode instanceof CMGroup)
-      {
-        sb.append(" operator=\"" + ((CMGroup)cmnode).getOperator() + "\"");
-      }
-      if (cmnode instanceof CMElementDeclaration)
-      {
-        sb.append(" contentType=\"" + ((CMElementDeclaration)cmnode).getContentType() + "\"");
-      }
-    }
-  }
-
-
-  public void printEntities(StringBuffer sb, CMNamedNodeMap entities)
-  {
-    if ((entities != null) && (entities.getLength()>0))
-    {
-      sb.append(indent + "<Entities>\n");
-      incrementIndent();
-
-      for (Iterator i = entities.iterator(); i.hasNext();)
-      {
-        CMEntityDeclaration entity = (CMEntityDeclaration)i.next();
-        sb.append(indent + "<Entity");
-        printAttributes(sb, entity);
-        sb.append("/>\n");
-      }
-
-      decrementIndent();
-      sb.append(indent + "</Entities>\n");
-    }
-  }
-
-  public void printProperties(StringBuffer sb, CMNode cmnode)
-  {
-    List properties = getProperties(cmnode);
-    sb.append(indent + "<Properties>\n");
-    incrementIndent();
-
-    for (int i=0; i<properties.size(); i++)
-    {
-      String property = (String)properties.get(i);
-      sb.append(indent + "<Property name=\"" + property + "\"");
-
-      if (cmnode.supports(property))
-      {
-        sb.append(" supports=\"true\"");
-      }
-      else
-      {
-        sb.append(" supports=\"false\"");
-      }
-      Object value = cmnode.getProperty(property);
-      if (value instanceof String) sb.append(" value=\"" + (String)value + "\"");
-      else if (value instanceof Boolean) sb.append(" value=\"" + value + "\"");
-      else if (value != null) sb.append(" value=\"" + value.getClass() + "\"");
-      else sb.append(" value=\"null\"");
-      sb.append("/>\n");
-    }
-
-    decrementIndent();
-    sb.append(indent + "</Properties>\n");
-  }
-
-  public List getProperties(CMNode cmnode)
-  {
-    List properties = new Vector();
-      
-    if (cmnode != null)
-    {
-      properties.add("CMDocument");
-      properties.add("documentation");
-      properties.add("http://org.eclipse.wst/cm/properties/usesLocalElementDeclarations");
-      properties.add("http://org.eclipse.wst/cm/properties/isNameSpaceAware");
-      properties.add("http://org.eclipse.wst/cm/properties/nsPrefixQualification");
-      properties.add("http://org.eclipse.wst/cm/properties/nillable");
-      properties.add("http://org.eclipse.wst/cm/properties/mofNotifier");
-      properties.add("spec");
-
-      if (cmnode instanceof CMElementDeclaration)
-      {
-        properties.add("http://org.eclipse.wst/cm/properties/definitionInfo");
-        properties.add("http://org.eclipse.wst/cm/properties/definition");
-        properties.add("XSITypes");
-        properties.add("DerivedElementDeclaration");
-        // properties.add("SubstitutionGroup"); Currrently broken for nexted xsd files
-        properties.add("Abstract");
-      }
-      if (cmnode instanceof CMDocument)
-      {
-        properties.add("http://org.eclipse.wst/cm/properties/targetNamespaceURI");
-        properties.add("http://org.eclipse.wst/cm/properties/importedNamespaceInfo");
-        properties.add("http://org.eclipse.wst/cm/properties/namespaceInfo");
-        properties.add("http://org.eclipse.wst/cm/properties/elementFormDefault");
-        properties.add("annotationMap");
-        properties.add("encodingInfo");
-      }
-      // properties defines but not used
-      // properties.add("documentationSource");
-      // properties.add("documentationLanguage");
-      // properties.add("isValidEmptyValue");
-      // properties.add("http://org.eclipse.wst/cm/properties/defaultRootName");
-    }
-    return properties;
-  }
-  
-}
-
- 
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/CMUtility.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/CMUtility.java
deleted file mode 100644
index 141afcc..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/CMUtility.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.test;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMVisitor;
-
-
-public class CMUtility
-{                                    
-  /**
-   * return true if the child or any of its ancestor group nodes are repeatable
-   */
-  public static boolean isNodeOrAncestorGroupRepeatable(CMContent content, CMNode child)
-  {                                                                            
-    // since we can't walk up the CMNode tree (why you ask? ... its a long story)
-    // we walk down the tree to consider the child's parent node's
-    //
-    boolean result = isRepeatable(child);
-    if (!result)
-    {
-      CanRepeatVisitor visitor = new CanRepeatVisitor(content, child);
-      visitor.visitCMNode(content);
-      result = visitor.getResult();
-    }
-    return result;
-  }
-
-  /**
-   * return true if the child is repeatable
-   */
-  public static boolean isNodeRepeatable(CMContent content, CMNode child)
-  {                                                                            
-    // since we can't walk up the CMNode tree (why you ask? ... its a long story)
-    // we walk down the tree to consider the child's parent node's
-    //
-    boolean result = isRepeatable(child);
-    if (!result)
-    {
-      IsRepeatableVisitor visitor = new IsRepeatableVisitor(content, child);
-      visitor.visitCMNode(content);
-      result = visitor.getResult();
-    }
-    return result;
-  }
-
-  public static boolean isRepeatable(CMNode child)
-  {                                
-    boolean result = false;
-    if (child instanceof CMContent)
-    {
-      CMContent content = (CMContent)child;
-      result = content.getMaxOccur() > 1 || content.getMaxOccur() == -1;
-    } 
-    return result;
-  }
-    
-   
-  protected static class CanRepeatVisitor extends CMVisitor
-  {                                             
-    public boolean result;
-    protected boolean isWithinRepeatableGroup;
-
-    protected CMNode root;
-    protected CMNode target;
-
-    public CanRepeatVisitor(CMNode root, CMNode target)
-    {
-      this.root = root;
-      this.target = target;
-    }
-
-    public void visitCMGroup(CMGroup group)
-    {         
-      boolean oldIsWithinRepeatableGroup = isWithinRepeatableGroup;
-                                           
-      isWithinRepeatableGroup = isRepeatable(group);
-      
-      super.visitCMGroup(group);
-
-      isWithinRepeatableGroup = oldIsWithinRepeatableGroup;
-    }                           
-
-    public void visitCMElementDeclaration(CMElementDeclaration cmelement)
-    {
-      if (cmelement == target)
-      {
-        result = isWithinRepeatableGroup;
-      }
-    }
-
-    public boolean getResult()
-    {
-      return result;
-    }  
-  }
-
-
-  protected static class IsRepeatableVisitor extends CMVisitor
-  {                                             
-    public boolean result = false;;
-    protected CMGroup currentGroup;
-
-    protected CMNode root;
-    protected CMNode target;
-
-    public IsRepeatableVisitor(CMNode root, CMNode target)
-    {
-      this.root = root;
-      this.target = target;
-    }
-
-    public void visitCMGroup(CMGroup group)
-    {         
-      CMGroup previousGroup = currentGroup;
-      currentGroup = group;
-      super.visitCMGroup(group);
-      currentGroup = previousGroup;
-    }                           
-
-    public void visitCMElementDeclaration(CMElementDeclaration cmelement)
-    {
-      if (cmelement == target)
-      {
-        if (currentGroup != null)
-        {
-          result = ((currentGroup.getOperator() == CMGroup.CHOICE) &&
-                    (isRepeatable(currentGroup)));
-        }
-      }
-    }
-
-    public boolean getResult()
-    {
-      return result;
-    }  
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/Test.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/Test.java
deleted file mode 100644
index c19dfd4..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/test/Test.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.test;
-                                      
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.eclipse.core.runtime.IPlatformRunnable;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.ModelQueryImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.XMLAssociationProvider;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.w3c.dom.Document;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class Test implements IPlatformRunnable
-{ 
-  public Object run(Object a) 
-  {             
-    String args[] = (String[])a;
-    if (args.length > 0)
-    {
-      test(args[0]);      
-    }                    
-    else
-    {
-      System.out.println("xml file name argument required");
-    }
-    return null;
-  }
-      
-  protected void test(String fileName)
-  {               
-    try
-    {
-      CMDocumentCache cache=new CMDocumentCache();
-      XMLAssociationProvider provider = new XMLAssociationProvider(cache){};
-                                                                                   
-      ModelQuery mq = new ModelQueryImpl(provider);                              
-    
-      Thread.currentThread().setContextClassLoader(Test.class.getClassLoader()); 
-      DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
-      Document document = builder.parse(fileName);
-
-      /*
-      ClassLoader prevClassLoader = Thread.currentThread().getContextClassLoader();
-      Thread.currentThread().setContextClassLoader(getClass().getClassLoader()); 
-      Class theClass = Class.forName("org.apache.xerces.parsers.DOMParser");
-      DOMParser parser = (DOMParser)theClass.newInstance();
-      Thread.currentThread().setContextClassLoader(prevClassLoader); 
-      parser.parse(new InputSource(fileName));       
-      Document document = parser.getDocument();        
-      */
-      visitNode(document, mq, 0);
-    }
-    catch (Exception e)
-    {    
-      e.printStackTrace();
-    }                                            
-  }
-
-  protected void visitNode(Node node, ModelQuery mq, int indent)
-  {                                                                                                    
-    CMNode cmnode = mq.getCMNode(node);     
-    printlnIndented(indent, "node :" + node.getNodeName() + " cmnode : " + (cmnode != null ? cmnode.getNodeName() : "null"));
-    NamedNodeMap map = node.getAttributes();
-    if (map != null)
-    {                                    
-      indent += 2;
-      int mapLength = map.getLength();
-      for (int i = 0; i < mapLength; i++)
-      {
-        visitNode(map.item(i), mq, indent);
-      } 
-      indent -= 2;
-    }
-    indent += 4;
-    NodeList list = node.getChildNodes();
-    int listLength = list.getLength();
-    for (int i = 0; i < listLength; i++)
-    {
-      visitNode(list.item(i), mq, indent);
-    } 
-    indent -= 4;
-  }     
-
-  public static void printlnIndented(int indent, String string)
-  {    
-    for (int i = 0; i < indent; i++)
-    {
-      System.out.print(" ");
-    }
-    System.out.println(string);
-  }     
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/CMDataTypeValueHelper.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/CMDataTypeValueHelper.java
deleted file mode 100644
index bf04c04..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/CMDataTypeValueHelper.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.util;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceTable;
-
-
-public class CMDataTypeValueHelper
-{
-  protected int idCount = 0;
-
-
-  public String getValue(CMAttributeDeclaration ad, NamespaceTable namespaceTable)
-  {
-    String value = null;
-       
-    if (isXSIType(ad))         
-    {       
-      List list = getQualifiedXSITypes(ad, namespaceTable);
-      value = list.size() > 0 ? (String)list.get(0) : null;
-    } 
-
-    // shameless hack
-    //
-    if (value == null)
-    {
-      if (ad.getAttrName().equals("xml:lang"))    
-      {
-        value = "EN";
-      }
-    }
-
-    if (value == null)
-    {
-      CMDataType dataType = ad.getAttrType();
-      if (dataType != null)
-      {
-        value = getValue(dataType);
-      }
-    }
-    return value;
-  }
-
-
-  public String getValue(CMDataType dataType)
-  {
-    String value = null;
-    value = dataType.getImpliedValue();
-
-    if (value == null)
-    {
-      String[] values = dataType.getEnumeratedValues();
-      if (values != null && values.length > 0)
-      {
-        value = values[0];
-      }
-    }
-
-    if (value == null)
-    {
-      value = dataType.generateInstanceValue();
-    }               
-
-    // Here is a special case where we handle DTD's ID related datatypes.
-    // These values must be generated/validate by considering the entire xml file
-    // so we can't rely on the 'generateInstanceValue' method.
-    //
-    // todo... find a nicer way to handle this    
-    if (value == null)
-    {
-      String dataTypeName = dataType.getDataTypeName();
-      if (dataTypeName != null)
-      {
-        if (dataTypeName.equals("ID"))
-        {
-          value = "idvalue" + idCount++;
-        }
-        else if (dataTypeName.equals("IDREF") || dataTypeName.equals("IDREFS"))
-        {
-          value = "idvalue0";
-        }
-      }
-    }     
-    return value;
-  } 
-      
-
-  public boolean isValidEmptyValue(CMAttributeDeclaration ad)
-  {    
-    boolean result = true;
-    CMDataType dataType = ad.getAttrType();
-    if (dataType != null)
-    {                                                          
-      String propertyValue = (String)dataType.getProperty("isValidEmptyValue");
-      if (propertyValue != null && propertyValue.equals("false"))
-      {
-        result = false;
-      }
-    }   
-    return result;
-  }
-
-
-  public boolean isXSIType(CMAttributeDeclaration ad)
-  {         
-    boolean result = false;
-    if (ad.getNodeName().equals("type")) 
-    {
-      CMDocument cmDocument = (CMDocument)ad.getProperty("CMDocument");
-      if (cmDocument != null)
-      {
-        String namespaceName = (String)cmDocument.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI");
-        if (namespaceName != null && namespaceName.equals("http://www.w3.org/2001/XMLSchema-instance"))
-        {           
-          result = true;
-        }
-      }
-    }                   
-    return result;
-  }
-   
-
-  public List getQualifiedXSITypes(CMAttributeDeclaration ad, NamespaceTable table)
-  {          
-    List list = new Vector();                                                 
-                                       
-    List xsiTypes = (List)ad.getProperty("XSITypes");
-    if (xsiTypes != null && xsiTypes.size() > 0)
-    {
-      for (Iterator i = xsiTypes.iterator(); i.hasNext(); )
-      { 
-        String uriQualifiedName = (String)i.next();
-        String[] components = DOMNamespaceHelper.getURIQualifiedNameComponents(uriQualifiedName);  
-        String prefix = table.getPrefixForURI(components[0] != null ? components[0] : "");
-        String typeName = (prefix != null && prefix.length() > 0) ? 
-                           prefix + ":" + components[1] : 
-                           components[1];
-        list.add(typeName);
-      }
-    }           
-    return list;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/CMValidator.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/CMValidator.java
deleted file mode 100644
index 60f1143..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/CMValidator.java
+++ /dev/null
@@ -1,1042 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.util;
-
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMVisitor;
-
-
-
-public class CMValidator
-{
-  protected static StringElementContentComparator stringContentComparitor = new StringElementContentComparator();
-  protected Hashtable graphNodeTable = new Hashtable();
-
-  /**
-   * GraphNode
-   */
-  protected static class GraphNode
-  {
-    public String name;
-    public boolean isTerminal;
-    public Vector arcList = new Vector();
-
-    public GraphNode(String name)
-    {
-      this.name = name;
-    }
-
-    public void addArc(Arc arc)
-    {
-      arcList.addElement(arc);
-    }
-
-    public String toString()
-    {
-      return "[GraphNode " + name + "]";
-    }
-  }
-
-
-  /**
-   * Arc
-   */
-  protected static class Arc
-  {
-    public static final int ELEMENT  = 1;
-    public static final int REPEAT   = 2;
-    public static final int OPTIONAL = 3;
-    public static final int PREV_IN  = 4;
-    public static final int OUT_NEXT = 5;
-    public static final int LINK     = 6;
-
-    public int kind;
-    public String name;
-    public GraphNode node;
-    public CMNode cmNode;
-
-    public Arc(int kind, GraphNode node, CMNode cmNode)
-    {
-      this(kind, "", node, cmNode);
-    }
-
-    protected Arc(int kind, String name, GraphNode node, CMNode cmNode)
-    {
-      this.name = name;
-      this.kind = kind;
-      this.node = node;
-      this.cmNode = cmNode;
-    }
-  }
-
-
-  /**
-   * GraphGenerator
-   */
-  protected static class GraphGenerator extends CMVisitor
-  {
-    public int indent;
-    public int count;
-    public GraphNode startGraphNode;
-    public Context context;
-
-    protected static class Context
-    {
-      GraphNode from;
-      GraphNode to;
-
-      Context(GraphNode from, GraphNode to)
-      {
-        this.from = from;
-        this.to = to;
-      }
-
-      GraphNode getLastGraphNode()
-      {
-        return (to != null) ? to : from;
-      }
-    }
-
-
-    protected GraphGenerator()
-    {
-      startGraphNode = new GraphNode(getGraphNodeName());
-      context = new Context(startGraphNode, null);
-    }
-
-
-    protected void generateGraph(CMElementDeclaration ed)
-    {
-      int contentType = ed.getContentType();
-
-      if (contentType == CMElementDeclaration.MIXED ||
-          contentType == CMElementDeclaration.ELEMENT)
-      {
-        visitCMNode(ed.getContent());
-      }
-      // CMElementDeclaration.PCDATA... no graph required
-      // CMElementDeclaration.ANY... no graph required
-      context.getLastGraphNode().isTerminal = true;
-    }
-
-
-    protected String getGraphNodeName()
-    {
-      return "n" + count++;
-    }
-
-
-    protected GraphNode getStartGraphNode()
-    {
-      return startGraphNode;
-    }
-
-
-    /**
-     *                repeat
-     *             +----#-----+
-     *             |          |
-     *             v          |
-     *  prev --#-> in --'x'-> out --#-> next
-     *  |                               ^
-     *  |                               |
-     *  +----------------#--------------+
-     *                optional
-     *
-     */
-    protected void createArcs(GraphNode in, GraphNode out, CMContent cmContent)
-    {
-      createArcs(in, out, cmContent, false);
-    }
-
-    protected void createArcs(GraphNode in, GraphNode out, CMContent cmContent, boolean isAllGroup)
-    {
-      //println("+createArcs() " + ed.getDescription() + " " + ed.getMinOccur());
-      GraphNode prev = context.from;
-      GraphNode next = new GraphNode(getGraphNodeName());
-
-      prev.addArc(new Arc(Arc.PREV_IN, in, cmContent));
-      out.addArc(new Arc(Arc.OUT_NEXT, next, cmContent));
-
-      if (context.to != null)
-      {
-        next.addArc(new Arc(Arc.LINK, context.to, cmContent));
-      }
-      else
-      {
-        context.from = next;
-      }
-
-      if (cmContent.getMinOccur() == 0)
-      {
-        // todo... should we see if an optional arc has already been added?
-        prev.addArc(new Arc(Arc.OPTIONAL, next, cmContent));
-      }
-
-      if (cmContent.getMaxOccur() == -1 || cmContent.getMaxOccur() > 1 || isAllGroup)
-      {
-        out.addArc(new Arc(Arc.REPEAT, in, cmContent));
-      }
-    }
-
-
-    public void visitCMGroup(CMGroup group)
-    {
-      Context prevContext = context;
-      GraphNode in = new GraphNode("(" + getGraphNodeName());
-      GraphNode out = new GraphNode(")" + getGraphNodeName());
-
-      int groupOperator = group.getOperator();
-      if (groupOperator == CMGroup.SEQUENCE)
-      {
-        context = new Context(in, null);
-        super.visitCMGroup(group);
-        context.from.addArc(new Arc(Arc.LINK, out, group));
-      }
-      else if (groupOperator == CMGroup.CHOICE ||
-               groupOperator == CMGroup.ALL)
-      {
-        context = new Context(in, out);
-        super.visitCMGroup(group);
-      }
-
-      context = prevContext;
-      createArcs(in, out, group, groupOperator == CMGroup.ALL);
-    }
-
-
-    public void visitCMElementDeclaration(CMElementDeclaration ed)
-    {
-      GraphNode in = new GraphNode(getGraphNodeName());
-      GraphNode out = new GraphNode(getGraphNodeName());
-      createArcs(in, out, ed);
-      in.addArc(new Arc(Arc.ELEMENT, ed.getElementName(), out, ed));
-    }
-                            
-
-    public void visitCMAnyElement(CMAnyElement anyElement)
-    {
-      GraphNode in = new GraphNode(getGraphNodeName());
-      GraphNode out = new GraphNode(getGraphNodeName());
-      createArcs(in, out, anyElement);
-      in.addArc(new Arc(Arc.ELEMENT, "any", out, anyElement));
-    }
-  }
-
-  // todo.. implement cache strategy hook, handle name spaces, locals etc.
-  //
-  public GraphNode lookupOrCreateGraph(CMElementDeclaration element)
-  {
-    Object key = element;
-    GraphNode node = (GraphNode)graphNodeTable.get(key);
-    if (node == null)
-    {
-      node = createGraph(element);
-      graphNodeTable.put(key, node);
-    }
-    return node;
-  }
-
-  public GraphNode createGraph(CMElementDeclaration element)
-  {
-    GraphGenerator generator = new GraphGenerator();
-    generator.generateGraph(element);
-    return generator.getStartGraphNode();
-  }
-
-
-  public void printGraph(GraphNode node, Vector namedArcList, Vector unamedArcList, int indent)
-  {
-    //String decoration = node.isTerminal ? " *" : "";
-    //printlnIndented(indent, "GraphNode:" + node.name + decoration);
-
-    indent += 2;
-    for (Enumeration e = node.arcList.elements() ; e.hasMoreElements() ;)
-    {
-      Arc arc = (Arc)e.nextElement();
-      //boolean visit = false;
-      printlnIndented(indent, "Arc:" + arc.name + " (" + arc.kind + ")");
-      if (arc.kind == Arc.ELEMENT)
-      {
-        //table.add(currentGrammarObject, arc.grammarObject);
-        if (!namedArcList.contains(arc))
-        {
-          namedArcList.add(arc);
-          unamedArcList = new Vector();
-          printGraph(arc.node, namedArcList, unamedArcList, indent + 2);
-        }
-      }
-      else
-      {
-        if (!unamedArcList.contains(arc))
-        {
-          unamedArcList.add(arc);
-          printGraph(arc.node, namedArcList, unamedArcList, indent + 2);
-        }
-      }
-    }
-  }
-
-
-  public void populateFTable(FTable table, GraphNode node, CMElementDeclaration prevED, Vector namedArcList, Vector unamedArcList, int indent)
-  {
-    //String decoration = node.isTerminal ? " *" : "";
-    //printlnIndented(indent, "GraphNode:" + node.name + decoration);
-
-    indent += 2;
-    for (Enumeration e = node.arcList.elements() ; e.hasMoreElements() ;)
-    {
-      Arc arc = (Arc)e.nextElement();
-     //boolean visit = false;
-      //printlnIndented(indent, "Arc:" + arc.name + " (" + arc.kind + ")");
-      if (arc.kind == Arc.ELEMENT)
-      {
-        CMElementDeclaration newED = (CMElementDeclaration)arc.cmNode;
-        table.add(prevED, newED);
-        if (!namedArcList.contains(arc))
-        {
-          namedArcList.add(arc);
-          unamedArcList = new Vector();
-          populateFTable(table, arc.node, newED, namedArcList, unamedArcList, indent + 2);
-        }
-      }
-      else
-      {
-        if (!unamedArcList.contains(arc))
-        {
-          unamedArcList.add(arc);
-          populateFTable(table, arc.node, prevED, namedArcList, unamedArcList, indent + 2);
-        }
-      }
-    }
-  }
-
-
-  public FTable getFTable(CMElementDeclaration ed)
-  {
-    FTable table = new FTable();
-    GraphNode node = lookupOrCreateGraph(ed);
-    populateFTable(table, node, ed, new Vector(), new Vector(), 0);
-    return table;
-  }
-
-
-  public void printGraph(GraphNode node)
-  {
-    printGraph(node, new Vector(), new Vector(), 0);
-  }
-
-
-  public void validateElementList(ElementList list, GraphNode node, ElementContentComparator comparator, Result result, boolean loopFlag)
-  {
-    //println("+validateElementList " + node + " " + list);
-    if (list == null && node.isTerminal)
-    {
-      result.isValid = true;
-    }
-    else
-    {
-      for (Iterator i = node.arcList.iterator(); i.hasNext();)
-      {
-        Arc arc = (Arc)i.next();
-        boolean traverseArc = false;
-        if (arc.kind == Arc.ELEMENT)
-        {
-          if (list != null && comparator.matches(list.head, arc.cmNode))
-          {
-            loopFlag = false;
-            traverseArc = true;
-            list = list.tail; // increment our position in the list
-          }
-        }
-        else if (arc.kind == Arc.REPEAT)
-        {
-          if (!loopFlag)
-          {
-            traverseArc = true;
-          }
-          loopFlag = true;
-        }
-        else
-        {
-          traverseArc = true;
-        }
-
-        if (traverseArc)
-        {
-          // see if this arc leads to a correct solution
-          result.push(arc);
-          validateElementList(list, arc.node, comparator, result, loopFlag);
-          if (result.isValid)
-          {
-            break;
-          }
-          result.pop(arc);
-        }
-      }
-    }
-  }
-
-
-  /**
-   *
-   */
-  protected static ElementList createElementList(int contentType, List v, ElementContentComparator comparator, Result result)
-  {
-    ElementList first = null;
-    ElementList prev = null;
-
-    int size = v.size();
-    for (int i = 0; i < size; i++)
-    {
-      Object o = v.get(i);
-      if (o != null && !comparator.isIgnorable(o))
-      {
-        if (comparator.isElement(o))
-        {
-          ElementList list = new ElementList();
-          list.head = o;
-
-          if (prev != null)
-          {
-            prev.tail = list;
-          }
-          else
-          {
-            first = list;
-          }
-          prev = list;
-        }
-        else if (contentType == CMElementDeclaration.ELEMENT)
-        {
-          result.isValid = false;
-          result.errorIndex = i;
-          result.errorMessage = "Element can not include PCDATA content";
-        }
-      }
-    }
-    return first;
-  }
-
-  /**
-   *
-   */
-  public void validate(CMElementDeclaration ed, List elementContent, ElementContentComparator comparator, Result result)
-  {
-    int contentType = ed.getContentType();
-
-    if (contentType == CMElementDeclaration.MIXED ||
-        contentType == CMElementDeclaration.ELEMENT)
-    {
-      ElementList elementList = createElementList(contentType, elementContent, comparator, result);
-      if (result.isValid == true)
-      {  
-        // defect 226213 ... elements with a large number of children will cause the recursion based validation
-        // algorithm to stack overflow ... as a quick fix assume any element with a large number of children is valid        
-        if (elementContent.size() < 500)
-        {
-          boolean isGraphValidationNeeded = !(elementList == null && contentType == CMElementDeclaration.MIXED);
-          if (isGraphValidationNeeded)
-          {
-            // validate the elementList using a graph
-            //
-            result.isValid = false;
-            GraphNode node = lookupOrCreateGraph(ed);
-            validateElementList(elementList, node, comparator, result, false);
-          }
-        }
-      }
-    }
-    else if (contentType == CMElementDeclaration.PCDATA)
-    {
-      int size = elementContent.size();
-      for (int i = 0; i < size; i++)
-      {
-        Object o = elementContent.get(i);
-        if (comparator.isElement(o))
-        {
-          result.isValid = false;
-          result.errorIndex = i;
-          result.errorMessage = "Element may only include PCDATA content";
-          break;
-        }
-      }
-    }
-    else if (contentType == CMElementDeclaration.EMPTY)
-    {
-      int size = elementContent.size();
-      for (int i = 0; i < size; i++)
-      {
-        Object o = elementContent.get(i);
-        if (!comparator.isIgnorable(o))
-        {
-          result.isValid = false;
-          result.errorIndex = i;
-          result.errorMessage = "Element may not contain PCDATA or Element content";
-          break;
-        }
-      }
-    }
-    //else if (contentType == CMElementDeclaration.ANY)
-    // {
-    //   assume elementContent will always be valid for this content type
-    // }
-  }
-
-
-  public void getOriginArray(CMElementDeclaration ed, List elementContent, ElementContentComparator comparator, ElementPathRecordingResult result)
-  {
-    CMNode[] cmNodeArray = null;
-    validate(ed, elementContent, comparator, result);
-    if (result.isValid)
-    {
-      CMDataType dataType = ed.getDataType();
-      int size = elementContent.size();
-      cmNodeArray = new CMNode[size];
-      Vector originList = result.getElementOriginList();
-      int originListSize = originList.size(); 
-      int originListIndex = 0;
-      for (int i = 0; i < size; i++)
-      {
-        Object o = elementContent.get(i);
-        if (comparator.isElement(o))
-        {     
-          if (originListIndex < originListSize)
-          {
-            cmNodeArray[i] = (CMNode)originList.get(originListIndex);
-            originListIndex++;
-          }
-        }
-        else if (comparator.isPCData(o))
-        {
-          cmNodeArray[i] = dataType;
-        }
-        // else the CMNode at this index is null
-      }
-      result.setOriginArray(cmNodeArray);
-    }
-  }
-
-  /**
-   *
-   */
-  public static class Result
-  {
-    public boolean isValid = true;
-    public int errorIndex = -1;
-    public String errorMessage;
-    public boolean isRepeatTraversed; // detects if a repeat has been traversed
-
-    public void push(Arc arc)
-    {
-      // overide this method to record traversed nodes
-    }
-    public void pop(Arc arc)
-    {
-      // overide this method to record traversed nodes
-    }
-    public CMNode[] getOriginArray()
-    {
-      return null;
-    }
-  }
-
-  /**
-   *
-   */
-  public static class ElementPathRecordingResult extends Result
-  {
-    protected Vector elementOriginStack = new Vector();
-    protected CMNode[] originArray = null;
-
-    public void push(Arc arc)
-    {
-      if (arc.kind == Arc.ELEMENT)
-      {
-        elementOriginStack.add(arc.cmNode);
-      }
-    }
-
-    public void pop(Arc arc)
-    {
-      if (arc.kind == Arc.ELEMENT)
-      {
-        int size = elementOriginStack.size();
-        elementOriginStack.remove(size - 1);
-      }
-    }
-
-    public Vector getElementOriginList()
-    {
-      return elementOriginStack;
-    }
-
-    public CMNode[] getOriginArray()
-    {
-      return originArray;
-    }
-
-    public void setOriginArray(CMNode[] originArray)
-    {
-      this.originArray = originArray;
-    }
-  }
-
-  /**
-   *
-   */
-  public static class PathRecordingResult extends Result
-  {
-    protected Vector arcList = new Vector();
-
-    public void push(Arc arc)
-    {
-      arcList.add(arc);
-    }
-
-    public void pop(Arc arc)
-    {
-      int size = arcList.size();
-      arcList.remove(size - 1);
-    }
-
-    public List getArcList()
-    {
-      List list = new Vector();
-      for (Iterator iterator = arcList.iterator(); iterator.hasNext(); )
-      {
-        Arc arc = (Arc)iterator.next();
-        if (arc.kind == Arc.ELEMENT)
-        {
-          list.add(arc);
-        }
-      }
-      return list;
-    }
-
-    public MatchModelNode getMatchModel()
-    {
-      MatchModelNodeBuilder builder = new MatchModelNodeBuilder(arcList);
-      builder.buildMatchModel();
-      return builder.getRoot();
-    }
-  }
-
-  /**
-   *
-   */
-  public static class MatchModelNode
-  {
-    public CMNode cmNode;
-    public List children = new Vector();
-    public Object data;
-
-    public MatchModelNode(MatchModelNode parent, CMNode cmNode)
-    {
-      this.cmNode = cmNode;
-    }
-
-    public void printModel(int indent)
-    {
-      //String cmNodeName = cmNode != null ? cmNode.getNodeName() : "null";
-      //printlnIndented(indent, "MatchModelNode : " + cmNodeName);
-      for (Iterator iterator = children.iterator(); iterator.hasNext(); )
-      {
-        MatchModelNode child = (MatchModelNode)iterator.next();
-        child.printModel(indent + 2);
-      }
-    }
-  }
-
-  public static class MatchModelNodeBuilder
-  {
-    protected List arcList;
-    protected List stack = new Vector();
-    protected MatchModelNode root;
-    protected MatchModelNode current;
-
-    public MatchModelNodeBuilder(List arcList)
-    {
-      this.arcList = arcList;
-      root = new MatchModelNode(null, null);
-      push(root);
-    }
-
-    protected void push(MatchModelNode node)
-    {
-      current = node;
-      stack.add(node);
-    }
-
-    protected void pop()
-    {
-      int size = stack.size();
-      stack.remove(size - 1);
-      current = (MatchModelNode)stack.get(size - 2);
-    }
-
-    public boolean isCMGroup(CMNode cmNode)
-    {
-      return cmNode != null && cmNode.getNodeType() == CMNode.GROUP;
-    }
-
-    public void buildMatchModel()
-    {
-      for (Iterator iterator = arcList.iterator(); iterator.hasNext(); )
-      {
-        Arc arc = (Arc)iterator.next();
-
-        if (arc.kind == Arc.ELEMENT)
-        {
-          current.children.add(new MatchModelNode(current, arc.cmNode));
-        }
-        else if (arc.kind == Arc.PREV_IN)
-        {
-          if (isCMGroup(arc.cmNode))
-          {
-            MatchModelNode newModelNode = new MatchModelNode(current, arc.cmNode);
-            current.children.add(newModelNode);
-            push(newModelNode);
-          }
-        }
-        else if (arc.kind == Arc.OUT_NEXT)
-        {
-          if (isCMGroup(arc.cmNode))
-          {
-            pop();
-          }
-        }
-        else if (arc.kind == Arc.REPEAT)
-        {
-          if (isCMGroup(arc.cmNode))
-          {
-            pop();
-            MatchModelNode newModelNode = new MatchModelNode(current, arc.cmNode);
-            current.children.add(newModelNode);
-            push(newModelNode);
-          }
-        }
-      }
-    }
-
-    public MatchModelNode getRoot()
-    {
-      return root;
-    }
-  }
-
-
-  /**
-   *
-   */
-  public interface ElementContentComparator
-  {
-    public boolean isIgnorable(Object o);
-    public boolean isPCData(Object o);
-    public boolean isElement(Object o);
-    public boolean matches(Object o, CMNode cmNode);
-  }
-
-  /**
-   * A linked list
-   */
-  public static class ElementList
-  {
-    protected Object head;
-    protected ElementList tail;
-
-    public static ElementList create(List v)
-    {
-      ElementList first = null;
-      ElementList prev = null;
-
-      for (Iterator iterator = v.iterator(); iterator.hasNext(); )
-      {
-        Object o = iterator.next();
-        if (o != null)
-        {
-          ElementList list = new ElementList();
-          list.head = o;
-
-          if (prev != null)
-          {
-            prev.tail = list;
-          }
-          else
-          {
-            first = list;
-          }
-          prev = list;
-        }
-      }
-      return first;
-    }
-
-
-    public String toString()
-    {
-      String string = "[" + head + "],";
-
-      if (tail != null)
-      {
-        string += tail.toString();
-      }
-
-      return string;
-    }
-  }
-
-  /**
-   * StringElementContentComparator
-   */
-  public static class StringElementContentComparator implements ElementContentComparator
-  {
-    public boolean isIgnorable(Object o)
-    {
-      String string = o.toString();
-      return string.startsWith("!") || string.startsWith("?");
-    }
-
-    public boolean isPCData(Object o)
-    {
-      String string = o.toString();
-      return string.startsWith("'") || string.startsWith("\"");
-    }
-
-    public boolean isElement(Object o)
-    {
-      return !isIgnorable(o) && !isPCData(o);
-    }
-
-    public boolean matches(Object o, CMNode cmNode)
-    {
-      boolean result = false;
-      if (cmNode.getNodeType() == CMNode.ELEMENT_DECLARATION)
-      { 
-        CMElementDeclaration element = (CMElementDeclaration)cmNode;
-        String name = o.toString();                              
-        int index = name.indexOf("]");
-        if (index != -1)
-        {
-          name = name.substring(index + 1);
-        }
-        result = name.equalsIgnoreCase(element.getElementName());        
-
-        // TODO... here's we consider substitution groups... revisit to see if this should be moved into validator code
-        if (!result)
-        {
-          CMNodeList cmNodeList = (CMNodeList)element.getProperty("SubstitutionGroup");  
-          if (cmNodeList != null)
-          {
-            int cmNodeListLength = cmNodeList.getLength();
-            if (cmNodeListLength > 1)
-            {                        
-              for (int i = 0; i < cmNodeListLength; i++)
-              {                                                               
-                CMElementDeclaration alternativeCMElementDeclaration = (CMElementDeclaration)cmNodeList.item(i);
-                String altName = alternativeCMElementDeclaration.getElementName();
-                result = name.equalsIgnoreCase(altName);
-                if (result)
-                {
-                  break;
-                }
-              }
-            }
-          }
-        }         
-      }   
-      else if (cmNode.getNodeType() == CMNode.ANY_ELEMENT)
-      {                                   
-        String string = o.toString();
-        if (string.equals("*"))
-        {
-          result = true;
-        }
-        else
-        {
-          CMAnyElement anyElement = (CMAnyElement)cmNode;
-          String anyElementURI = anyElement.getNamespaceURI();    
-          if (anyElementURI != null)
-          {           
-            if (anyElementURI.equals("##any"))
-            {                               
-              result = true;
-            }
-            else if (anyElementURI.equals("##other"))
-            {     
-              result = true;    
-              CMDocument cmDocument = (CMDocument)anyElement.getProperty("CMDocument");  
-              if (cmDocument != null)
-              {
-                String excludedURI = (String)cmDocument.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI");
-                if (excludedURI != null)
-                { 
-                  String specifiedURI = getURIForContentSpecification(string);
-                  if (specifiedURI != null && excludedURI.equals(specifiedURI))
-                  { 
-                    result = false;
-                  } 
-                }
-              }
-            } 
-            else if (anyElementURI.equals("##targetNamespace"))
-            {
-              result = true;
-              CMDocument cmDocument = (CMDocument)anyElement.getProperty("CMDocument");  
-              if (cmDocument != null)
-              {     
-                String targetNamespaceURI = (String)cmDocument.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI");
-                String specifiedURI = getURIForContentSpecification(string);
-                if (specifiedURI != null && !targetNamespaceURI.equals(specifiedURI))
-                { 
-                  result = false;
-                } 
-              }
-            }
-            else  
-            {        
-              result = true;
-              String specifiedURI = getURIForContentSpecification(string);
-              if (specifiedURI != null && !anyElementURI.equals(specifiedURI))
-              { 
-                result = false;
-              }      
-            }
-          }  
-          else 
-          {          
-            result = true;
-          }        
-        }
-      }
-      return result;
-    }     
-    
-
-    protected String getURIForContentSpecification(String specification)
-    {           
-      String result = null;
-      int index = specification.indexOf("]");
-      if (index != -1)
-      {                
-        result = specification.substring(1, index);
-      } 
-      return result;  
-    }
-  }      
-
-  public static List createStringList(String arg[], int startIndex)
-  {
-    Vector v = new Vector();
-    for (int i = startIndex; i < arg.length; i++)
-    {
-      v.add(arg[i]);
-    }
-    return v;
-  }
-
-
-  public static void main(String arg[])
-  {
-    if (arg.length > 1)
-    {
-      try
-      {
-        //CMDocumentFactoryRegistry.getInstance().registerCMDocumentBuilderWithClassName("org.eclipse.wst.xml.core.internal.contentmodel.mofimpl.CMDocumentBuilderImpl");
-
-        String grammarFileName = arg[0];
-        String elementName = arg[1];
-
-        CMDocument cmDocument = ContentModelManager.getInstance().createCMDocument(grammarFileName, null);
-        
-        CMNamedNodeMap elementMap = cmDocument.getElements();
-        CMElementDeclaration element = (CMElementDeclaration)elementMap.getNamedItem(elementName);
-        if (element != null)
-        { /*
-          println("found element [" + elementName + "]  contentType = " + element.getContentType());
-          GraphNode graphNode = createGraph(element);
-          printGraph(graphNode);
-          */
-          println("-------------- begin validate ---------------");
-
-          StringElementContentComparator comparator = new StringElementContentComparator();
-          CMValidator validator = new CMValidator();
-          ElementPathRecordingResult result = new ElementPathRecordingResult();
-          validator.getOriginArray(element, createStringList(arg, 2), comparator, result);
-          if (result.isValid)
-          {
-            CMNode[] nodeMapping = result.getOriginArray();
-            println("Validation Success!");
-            print("  ");
-            for (int i = 0; i < nodeMapping.length; i++)
-            {
-              String name = nodeMapping[i] != null ? nodeMapping[i].getNodeName() : "null";
-              print("[" + name + "]");
-            }
-            println("");
-          }
-          else
-          {
-            println("Validation Failed! ");
-            if (result.errorMessage != null)
-            {
-              println("  " + result.errorMessage);
-            }
-          }
-          println("-------------- end validate ---------------");
-        }
-        else
-        {
-          println("element [" + elementName + "] can not be found");
-        }
-      }
-      catch (Exception e)
-      {
-        println("CMValidator error");
-        e.printStackTrace();
-      }
-    }
-    else
-    {
-      println("2 args required... only " + arg.length + " provided");
-      println("usage java org.eclipse.wst.newxml.util.XMLUtil grammarFileName rootElementName pattern");
-    }
-  }
-
-  public static void print(String string)
-  {  
-  }
-	  
-  public static void println(String string)
-  {  
-  }
-  
-  public static void printlnIndented(int indent, String string)
-  {
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/DOMValidator.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/DOMValidator.java
deleted file mode 100644
index f75bade..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/DOMValidator.java
+++ /dev/null
@@ -1,402 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.util;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMVisitor;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-
-/**
- * A special CMValidator that knows about DOMs
- */
-public class DOMValidator extends CMValidator
-{               
-  protected String getNamespaceURI(Node node)
-  {   
-    return DOMNamespaceHelper.getNamespaceURI(node);
-    //return node.getNamespaceURI();
-  }
-          
-
-  //
-  // This is a temporary hack!!
-  //
-  protected String getFallbackNamepaceURI(CMElementDeclaration ed)
-  {   
-    String fallbackNamepaceURI = null;
-    CMDocument cmDocument = (CMDocument)ed.getProperty("CMDocument");
-    if (cmDocument != null)
-    {
-      fallbackNamepaceURI = (String)cmDocument.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI");  
-    }  
-    return fallbackNamepaceURI;
-  }
-
-  /**
-   * Encode the Element's NodeList as a List of strings that the validator recognizes
-   */
-  public List createContentSpecificationList(Element element, CMElementDeclaration ed)
-  {                                                                    
-    boolean isNamespaceAware = isNamespaceAware(ed);
-    Vector v = new Vector();         
-    for (Node childNode = element.getFirstChild(); childNode != null; childNode = childNode.getNextSibling())
-    { 
-      v.add(createContentSpecification(childNode, isNamespaceAware, isNamespaceAware ? getFallbackNamepaceURI(ed) : null));
-    }
-    return v;
-  }
-
-
-  public List createContentSpecificationList(List nodeList, CMElementDeclaration ed)
-  {             
-    boolean isNamespaceAware = isNamespaceAware(ed);
-    Vector v = new Vector();            
- 
-    for (Iterator i = nodeList.iterator(); i.hasNext(); )
-    {
-      Node node = (Node)i.next();
-      v.add(createContentSpecification(node, isNamespaceAware, getFallbackNamepaceURI(ed)));
-    }
-    return v;
-  }
-
-
-  /**
-   * Encode the Node as a string that the validator recognizes
-   */
-  public String createContentSpecification(Node node, boolean isNamespaceAware, String fallbackNamepaceURI)
-  {
-    String result = "!";
-    switch (node.getNodeType())
-    {
-      case Node.ELEMENT_NODE :
-      {  
-        String nodeName = node.getNodeName();  
-        if (nodeName.startsWith("jsp:"))
-        {  
-          result = "!"; // treat it as a comment so that it's ignored by the validator
-        }
-        else
-        {
-          if (isNamespaceAware)
-          {
-            result = DOMNamespaceHelper.getUnprefixedName(nodeName);
-            String uri = getNamespaceURI(node);
-            if (uri != null)
-            {
-              result = "[" + uri + "]" + result;   
-            } 
-            else if (fallbackNamepaceURI != null)
-            {
-              result = "[" + fallbackNamepaceURI + "]" + result;  
-            }
-          }  
-          else
-          {
-            result = nodeName;
-          }
-        }        
-        //ContentModelManager.println("result " + result);
-        break;
-      }
-      case Node.PROCESSING_INSTRUCTION_NODE :
-      {
-        result = "?";
-        break;
-      }
-      case Node.COMMENT_NODE :
-      {
-        result = "!";
-        break;
-      }
-      case Node.CDATA_SECTION_NODE :
-      {
-        result = "\"" + node.getNodeName() + "\"";
-        break;
-      }
-      case Node.TEXT_NODE :
-      {
-        String data = ((Text)node).getData();
-        // here we test to see if the test node is 'ignorable'
-        if (data != null && data.trim().length() > 0)
-        {
-          result = "\"" + node.getNodeName() + "\"";
-        }
-        else
-        {
-          result = "!"; // todo... use another symbol?
-        }
-        break;
-      }
-    }
-    return result;
-  }
-
-
-  /**
-   *
-   */
-  public List createContentSpecificationList(CMNode cmNode)
-  {
-    List list = new Vector();
-    switch (cmNode.getNodeType())
-    {
-      case CMNode.ELEMENT_DECLARATION :
-      {         
-        list.add(createContentSpecificationForCMElementDeclaration((CMElementDeclaration)cmNode));   
-        break;
-      }
-      case CMNode.DATA_TYPE :
-      {
-        list.add("\"" + cmNode.getNodeName() + "\"");
-        break;
-      }
-      case CMNode.GROUP :
-      {
-        createContentSpecificationListForCMGroup((CMGroup)cmNode, list);
-        break;
-      }
-      case CMNode.ANY_ELEMENT :
-      {
-        list.add("*");
-        break;
-      }
-      default :
-      {
-        list.add("!");
-      }
-    }
-    return list;
-  }
-     
-
-  /**
-   * 
-   */              
-  protected String createContentSpecificationForCMElementDeclaration(CMElementDeclaration ed)
-  {  
-    CMDocument document = (CMDocument)ed.getProperty("CMDocument");
-    String uri = document != null ? (String)document.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI") : null;
-    String string = ed.getNodeName();
-    if (uri != null)
-    {            
-      string = "[" + uri + "]" + string;
-    }
-    return string;
-  }
-  
-  /**
-   *
-   */
-  protected void createContentSpecificationListForCMGroup(CMGroup group, List list)
-  {         
-    CMGroupContentVisitor visitor = new CMGroupContentVisitor(group, list);
-    visitor.visitCMNode(group);
-  } 
-     
-  protected class CMGroupContentVisitor extends CMVisitor
-  {  
-    protected CMGroup root;                             
-    protected List list;
-
-    public CMGroupContentVisitor(CMGroup root, List list)
-    {                                        
-      this.root = root;        
-      this.list = list;
-    }
-
-    public void visitCMElementDeclaration(CMElementDeclaration ed)
-    {           
-      if (ed.getMinOccur() > 0)
-      {
-        list.add(createContentSpecificationForCMElementDeclaration(ed));
-      }
-    }       
-
-    public void visitCMAnyElement(CMAnyElement anyElement)
-    {   
-      list.add("*");
-    }
-
-    public void visitCMGroup(CMGroup group)
-    {                              
-      if (group == root || group.getMinOccur() > 0)
-      {
-        int op = group.getOperator();
-        if (op == CMGroup.SEQUENCE)
-        {
-          super.visitCMGroup(group);
-        }
-        else if (op == CMGroup.CHOICE)
-        {
-          CMNodeList nodeList = group.getChildNodes();
-          if (nodeList.getLength() > 0)
-          {
-            visitCMNode(nodeList.item(0));
-          }      
-        }
-      }
-    }
-  }
-
-  public boolean isNamespaceAware(CMElementDeclaration ed)
-  { 
-    return ed != null ? ed.getProperty("http://org.eclipse.wst/cm/properties/isNameSpaceAware") != null : false;
-  }
-     
-  /**
-   *
-   */
-  public CMNode[] getOriginArray(CMElementDeclaration ed, Element element)
-  {
-    ElementPathRecordingResult result = new ElementPathRecordingResult();
-    getOriginArray(ed, createContentSpecificationList(element, ed), stringContentComparitor, result);
-    return result.getOriginArray();
-  }
-                   
-  /**
-   *
-   */
-  public MatchModelNode getMatchModel(CMElementDeclaration ed, Element element)
-  {
-    MatchModelNode matchModelNode = null;
-    PathRecordingResult result = new PathRecordingResult();
-    validate(ed, createContentSpecificationList(element, ed), stringContentComparitor, result);
-    if (result.isValid)
-    {
-      matchModelNode = result.getMatchModel();
-    }
-    return matchModelNode;
-  }
-                           
-
-  public List clone(List list)
-  {   
-    List result = new Vector(list.size());
-    result.addAll(list);
-    return result;
-  }
- 
-  /**
-   *
-   */
-  public boolean canInsert(CMElementDeclaration ed, List contentSpecificationList, int insertIndex, CMNode cmNode)
-  {           
-    List clonedList = clone(contentSpecificationList);
-    insert(clonedList, insertIndex, cmNode);
-    return isValid(ed, clonedList);
-  }  
-
-  /**
-   *
-   */
-  public boolean canInsert(CMElementDeclaration ed, List contentSpecificationList, int insertIndex, List cmNodeList)
-  {              
-    List clonedList = clone(contentSpecificationList);
-    insert(clonedList, insertIndex, cmNodeList);
-    return isValid(ed, clonedList);
-  }  
-
-  /**
-   *
-   */
-  public boolean canRemove(CMElementDeclaration ed, List contentSpecificationList, int startRemoveIndex)
-  {
-    return canRemove(ed, contentSpecificationList, startRemoveIndex, startRemoveIndex);
-  }
-
-  /**
-   *
-   */
-  public boolean canRemove(CMElementDeclaration ed, List contentSpecificationList, int startRemoveIndex, int endRemoveIndex)
-  {
-    List clonedList = clone(contentSpecificationList);
-    remove(clonedList, startRemoveIndex, endRemoveIndex);
-    return isValid(ed, clonedList);
-  }
-                        
-  /**
-   *
-   */
-  public boolean canReplace(CMElementDeclaration ed, List contentSpecificationList, int startRemoveIndex, int endRemoveIndex, CMNode cmNode)
-  {
-    List clonedList = clone(contentSpecificationList);
-    remove(clonedList, startRemoveIndex, endRemoveIndex); 
-    insert(clonedList, startRemoveIndex, cmNode);
-    return isValid(ed, clonedList);
-  }
-
-  /**
-   *
-   */                      
-  public boolean isValid(CMElementDeclaration ed, List contentSpecificationList)
-  {
-    Result result = new Result();
-    validate(ed, contentSpecificationList, stringContentComparitor, result);
-    return result.isValid;
-  }
-            
-
-  protected Result validate(CMElementDeclaration ed, Element element)
-  {
-    Result result = new Result();
-    validate(ed, createContentSpecificationList(element, ed), stringContentComparitor, result);
-    return result;
-  }
-
-
-  protected void remove(List stringList, int startRemoveIndex, int endRemoveIndex)
-  {
-    if (startRemoveIndex != -1)
-    {
-      for (int i = startRemoveIndex; i <= endRemoveIndex; i++)
-      {
-        stringList.remove(i);
-      }
-    }
-  }
-
-  protected void insert(List stringList, int insertIndex, CMNode cmNode)
-  {
-    if (insertIndex != -1)
-    {
-      stringList.addAll(insertIndex, createContentSpecificationList(cmNode));
-    }
-  }
-
-  protected void insert(List stringList, int insertIndex, List cmNodeList)
-  {
-    if (insertIndex != -1)
-    {
-      int insertListSize = cmNodeList.size();
-      for (int i = insertListSize - 1; i >= 0; i--)
-      {
-        CMNode cmNode = (CMNode)cmNodeList.get(i);
-        stringList.addAll(insertIndex, createContentSpecificationList(cmNode));
-      }
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/FTable.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/FTable.java
deleted file mode 100644
index 2b87d74..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/internal/util/FTable.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.internal.util;
-
-import java.util.Collections;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-
-
-
-public class FTable
-{
-  public final static String START = "START";
-
-  protected Hashtable hashtable = new Hashtable();
-
-  public void add(CMElementDeclaration ed1, CMElementDeclaration ed2)
-  {
-    String name = ed1 != null ? ed1.getElementName() : START;
-    Vector v = (Vector)hashtable.get(name);
-    if (v == null)
-    {
-      v = new Vector();
-      hashtable.put(name, v);
-    }
-    v.add(ed2);
-  }
-
-
-  public boolean follows(String name1, String name2)
-  {
-    boolean result = false;
-    Vector v = (Vector)hashtable.get(name1);
-    if (v != null)
-    {
-      int size = v.size();
-      for (int i = 0; i < size; i++)
-      {
-        CMElementDeclaration ed = (CMElementDeclaration)v.get(i);
-        if (ed.getElementName().equals(name2))
-        {
-          result = true;
-          break;
-        }
-      }
-    }
-    return result;
-  }
-
-  public List getFollows(String name)
-  {
-    Vector v = (Vector)hashtable.get(name);
-    return v != null ? v : Collections.EMPTY_LIST;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentManager.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentManager.java
deleted file mode 100644
index 56598c0..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentManager.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-
-
-/**             
- * The CMDocumentManager can be visualized as a table of CMDocument references, each with a corresponding entry
- * in a CMDocument cache.  The CMDocumentManager also performs the task of loading CMDocuments providing support 
- * for synchronous and asynchronous loading.
- *
- *        publicIdTable              CMDocumentCache
- * ---------------------------   ---------------------------------------                            
- * | publicId  | resolvedURI | -> | resolvedURI | status  | CMDocument |
- * ---------------------------   ---------------------------------------
- * |  (null)   | file:/x.dtd |    | file:/x.dtd | loading |   (null)   |
- * ---------------------------   ---------------------------------------
- * | http:/... | file:/y.xsd |    | file:/y.xsd | loaded  |            |
- * ---------------------------   ---------------------------------------
- *
- */
-public interface CMDocumentManager
-{                           
-  /**
-   * This property specifies WHEN CMDocuments are loaded.  Setting this property to true allows the CMDocumentManager to
-   * load CMDocuments on demand.  Settings this property a false puts the onus on the client to call addCMDocumentReference()
-   * to explicity trigger a load. This allows the client to control exactly when loading should take place. )
-   */
-  public static final String PROPERTY_AUTO_LOAD = "autoLoad";
-
-  /**
-   * This property specifies HOW CMDocuments are loaded. When set to false, the getCMDocument() method will load
-   * the CMDocument synchronously and return a CMDocument object when loading is successful.  When set to true, 
-   * the getCMDocument() will load the CMDocument asynchronously and will immediately return null.  When loading 
-   * is complete, the CMDocumentManager will inform its listeners that the CMDocument has been loaded.  
-   */
-  public static final String PROPERTY_ASYNC_LOAD = "asyncLoad"; 
-                         
-  /**
-   *
-   */
-  public static final String PROPERTY_USE_CACHED_RESOLVED_URI = "useCachedResovledURI"; 
-                          
-  /**
-   * Set the enabled state of a property.
-   */                            
-  public void setPropertyEnabled(String propertyName, boolean enabled);
-
-  /**
-   * Get the enabled state of the property.
-   */    
-  public boolean getPropertyEnabled(String propertyName); 
-
-  /**
-   * Adds a listener. Listeners should expect to receive call backs on a secondary thread when asynchronously loading is used.   
-   */  
-  public void addListener(CMDocumentManagerListener listener);
-
-  /**
-   * Removes a listener.
-   */ 
-  public void removeListener(CMDocumentManagerListener listener);
-
-  /**                       
-   * @deprecated     
-   * use getCMDocument(String publicId, String systemId, String type) instead
-   */
-  public CMDocument getCMDocument(String publicId, String resolvedGrammarURI);
-                         
-  /**                       
-   * Lookup or create a CMDocument (depending on PROPERTY_AUTO_LOAD).
-   */
-  public CMDocument getCMDocument(String publicId, String systemId, String type);
-   
-  /**                       
-   * Lookup a CMDocument.
-   */
-  public CMDocument getCMDocument(String publicId);
-
-  /**                       
-   * Get the status of a CMDocument.
-   */                      
-  public int getCMDocumentStatus(String publicId);   
-
-  /**                       
-   * Creates a CMDocument and adds the associated CMDocument reference information to the table. 
-   * Calling this method always triggers a CMDocument load.
-   */  
-  public void addCMDocumentReference(String publicId, String systemId, String type);
-                                                                                  
-  /**
-   * Add an existingCMDocument and the reference information to the table. 
-   */
-  public void addCMDocument(String publicId, String systemId, String resolvedURI, String type, CMDocument cmDocument);
-
-  /**
-   * Remove all entries from the table.
-   */
-  public void removeAllReferences();
-                                  
-  /**
-   * Get the CMDocumentCache that is used to store loaded CMDocuments and associated status.
-   */
-  public CMDocumentCache getCMDocumentCache(); 
-  
-  /**
-   * Builds a CMDocument given a resoulvedURI. Note that no entries are added to the table.
-   */
-  public CMDocument buildCMDocument(String publicId, String resolvedURI, String type);                                                                                                                                         
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentManagerListener.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentManagerListener.java
deleted file mode 100644
index b236092..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentManagerListener.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCacheListener;
-
-/**
- *
- */
-public interface CMDocumentManagerListener extends CMDocumentCacheListener
-{                    
-  public void propertyChanged(CMDocumentManager cmDocumentManager, String propertyName);
-}       
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentReference.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentReference.java
deleted file mode 100644
index 7a23418..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentReference.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery;
-
-
-public interface CMDocumentReference
-{
-  public String getPublicId();
-  public String getSystemId();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentReferenceProvider.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentReferenceProvider.java
deleted file mode 100644
index c8d93d1..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/CMDocumentReferenceProvider.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery;
-
-import java.util.List;
-
-import org.w3c.dom.Node;
- 
-/**
- * The interface is used to abstract the task of computing the document references associated with a DOM
- * or a particular node within the DOM.  
- */
-public interface CMDocumentReferenceProvider
-{
-  List getCMDocumentReferences(Node node, boolean deep);
-  String resolveGrammarURI(String publicId, String systemId);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQuery.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQuery.java
deleted file mode 100644
index 61b2bd5..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQuery.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery;
-
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension.*;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- * This class provides an interface for performing higher level queries based on
- * a xml model (DOM) and one or more associated content models (CMDocument).
- *
- * The queries provided can be organized into three groups:
- *
- * 1) DOM Node to CMNode mapping
- *      Given a grammatically valid DOM Node the corresponding CMNode can be determined.
- *      (i.e. Element -> CMElementDeclaration, Attr -> CMAttributeDeclaration, CharacterData -> CMDataType)
- *
- * 2) DOM editing tests ("Can I do this?")
- *      Questions such as canInsert, canRemove, canReplace can assist in the editing of a DOM.
- *
- *      The validityChecking argument determines the strictness of the validity testing that occurs.
- *
- *      - VALIDITY_NONE    : The current content of the Element is ignored.
- *                           Only the content model is considered.
- *                           This is most useful for codeassist related queries.
- *
- *      - VALIDITY_STRICT  : The current content of the Element is considered.
- *                           Returns true only if the operation preserves content validity.
- *                           This is useful when DOM editing needs to be constrained to maintain validity.
- *
- *      - VALIDITY_PARTIAL : Some optimized compromise between the two options above.
- *
- * 3) DOM editing actions ("What can I do here?")
- *      These methods return ModelQueryActions that are relevant at some specified DOM Node.
- *      The actions indicate what kinds of DOM Node can be inserted where (at what index).
- */
-public interface ModelQuery
-{
-  public static final int VALIDITY_NONE = 0;
-  public static final int VALIDITY_PARTIAL = 1;
-  public static final int VALIDITY_STRICT = 2;
-
-  public static final int INCLUDE_ALL = 0xFF;
-  public static final int INCLUDE_ATTRIBUTES = 0x01;
-  public static final int INCLUDE_CHILD_NODES = 0x02;
-  public static final int INCLUDE_SEQUENCE_GROUPS = 0x04;
-  public static final int INCLUDE_TEXT_NODES = 0x08;
-  public static final int INCLUDE_ENCLOSING_REPLACE_ACTIONS = 0x10;
-
-  public static final int EDIT_MODE_UNCONSTRAINED = 0;
-  public static final int EDIT_MODE_CONSTRAINED_LENIENT= 1;
-  public static final int EDIT_MODE_CONSTRAINED_STRICT = 2;
-
-
-  void setEditMode(int editMode);
-
-  int  getEditMode();
-
-  /**
-   * Returns the CMDocument that corresponds to the DOM Node.
-   * or null if no CMDocument is appropriate for the DOM Node.
-   */
-  CMDocument getCorrespondingCMDocument(Node node);
-
-  /**
-   * Returns the corresponding CMNode for the DOM Node
-   * or null if no CMNode is appropriate for the DOM Node.
-   */
-  CMNode getCMNode(Node node);
-
-  /**
-   * Returns the corresponding CMAttribute for the DOM Node
-   * or null if no CMNode is appropriate for the DOM Node.
-   */
-  CMAttributeDeclaration getCMAttributeDeclaration(Attr attr);
-
-  /**
-   * Returns the corresponding CMAttribute for the DOM Node
-   * or null if no CMNode is appropriate for the DOM Node.
-   */
-  CMElementDeclaration getCMElementDeclaration(Element element);
-
-  /**
-   * Returns true if the content of the element is valid
-   */
-  boolean isContentValid(Element element);
-
-  /**
-   * Returns the CMNode of the parent element's content model
-   * that corresponds to the node
-   */
-  CMNode getOrigin(Node node);
-
-  /**
-   * Returns an array of CMNodes of the parent element's content model
-   * that corresponds to the node
-   */
-  CMNode[] getOriginArray(Element element);
-
-  /**
-   * Returns a list of all CMNode 'meta data' that may be potentially added to the element.
-   */
-  List getAvailableContent(Element element, CMElementDeclaration ed, int includeOptions);
-
-  /**
-   * Can a DOM Node corresponding to the CMNode 'meta data' be added to the parent
-   */
-  boolean canInsert(Element parent, CMNode cmNode, int index, int validityChecking);
-
-  /**
-   * Can multiple DOM Nodes corresponding to the list of CMNode 'meta data' be added to the parent
-   */
-  boolean canInsert(Element parent, List cmNodeList, int index, int validityChecking);
-
-  /**
-   * Can the DOM Node be removed
-   */
-  boolean canRemove(Node node, int validityChecking);
-
-  /**
-   * Can the list of DOM Nodes be removed
-   */
-  boolean canRemove(List nodeList, int validityChecking);
-
-  /**
-   * Can the children within the indicated indices be replaced with a DOM Node corresponding to the CMNode 'meta data'
-   */
-  boolean canReplace(Element parent, int startIndex, int endIndex, CMNode cmNode, int validityChecking);
-
-  /**
-   * Can the children within the indicated indices be replaced with multiple DOM Nodes corresponding to the list of CMNode 'meta data'
-   */
-  boolean canReplace(Element parent, int startIndex, int endIndex, List cmNodeList, int validityChecking);
-
-  /**
-   *
-   */
-  void getInsertActions(Element parent, CMElementDeclaration ed, int index, int includeOptions, int validityChecking, List actionList);
-
-  /**
-   *
-   */
-  void getInsertActions(Document parent, CMDocument cmDocument, int index, int includeOptions, int validityChecking, List actionList);
-
-  /**
-   * Return a list of replace actions that can be performed on the parent's content
-   */
-  void getReplaceActions(Element parent, CMElementDeclaration ed, int includeOptions, int validityChecking, List actionList);
-
-  /**
-   * Return a list of replace actions that can be performed on the selected children of that parent 
-   */
-  void getReplaceActions(Element parent, CMElementDeclaration ed, List selectedChildren, int includeOptions, int validityChecking, List actionList);
-
-                        
-  /** 
-   *  @deprecated - use getPossibleDataTypeValues()
-   */
-  List getDataTypeValues(Element element, CMNode cmNode);
-
-  /**
-   * This methods return an array of possible values corresponding to the datatype of the CMNode (either an CMAttributeDeclaration or a CMElementDeclaration)
-   */
-  String[] getPossibleDataTypeValues(Element element, CMNode cmNode);
-
-  /**
-   * This method may return null if a CMDocumentManager is not used by the ModelQuery
-   */
-  CMDocumentManager getCMDocumentManager();                                       
-
-  /**
-   * This method may return null the ModelQuery doesn't support the use of extensions
-   */
-  ModelQueryExtensionManager getExtensionManager();   
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryAction.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryAction.java
deleted file mode 100644
index 098f4f3..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryAction.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.w3c.dom.Node;
-
-
-public interface ModelQueryAction
-{
-  public static final int INSERT  = 1;
-  public static final int REMOVE  = 2;
-  public static final int REPLACE = 4;
-
-  public int getKind();
-  /**
-   * if start index == -1 then no insert is possible
-   * if start index != -1 and endIndex == -1 then an insert at any position is possible
-   */
-  public int getStartIndex();
-  public int getEndIndex();
-  public Node getParent();
-  public CMNode getCMNode();
-  public Object getUserData();
-  public void setUserData(Object object);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryAssociationProvider.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryAssociationProvider.java
deleted file mode 100644
index 9fa1000..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryAssociationProvider.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-
-/**
- * 
- *
- */
-public interface ModelQueryAssociationProvider extends ModelQueryCMProvider
-{
-  public CMNode getCMNode(Node node);
-  public CMDataType getCMDataType(Text text); 
-  public CMAttributeDeclaration getCMAttributeDeclaration(Attr attr);
-  public CMElementDeclaration getCMElementDeclaration(Element element);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryCMProvider.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryCMProvider.java
deleted file mode 100644
index e9cc02e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/ModelQueryCMProvider.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.w3c.dom.Node;
-
-
-
-/**
- *
- */
-public interface ModelQueryCMProvider
-{
-  /**
-   * Returns the CMDocument that corresponds to the DOM Node.
-   * or null if no CMDocument is appropriate for the DOM Node.
-   */
-  CMDocument getCorrespondingCMDocument(Node node);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/DataTypeValueExtension.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/DataTypeValueExtension.java
deleted file mode 100644
index 3613873..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/DataTypeValueExtension.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension;
-
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.w3c.dom.Element;
-
-
-public interface DataTypeValueExtension extends ModelQueryExtension
-{
-  public List getDataTypeValues(Element element, CMNode cmNode);  
-} 
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ElementContentFilterExtension.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ElementContentFilterExtension.java
deleted file mode 100644
index 75ca558..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ElementContentFilterExtension.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension;
-
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.w3c.dom.Element;
-
-
-public interface ElementContentFilterExtension extends ModelQueryExtension
-{
-  public void filterAvailableElementContent(List list, Element element, CMElementDeclaration ed);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ModelQueryExtension.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ModelQueryExtension.java
deleted file mode 100644
index f9195ab..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ModelQueryExtension.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension;
-
-
-public interface ModelQueryExtension
-{           
-  public final static int DATA_TYPE_VALUE_EXTENSION = 1;
-  public final static int ELEMENT_CONTENT_FILTER = 2;
-  public int getType();     
-  public String getId();
-} 
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ModelQueryExtensionManager.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ModelQueryExtensionManager.java
deleted file mode 100644
index 24f799e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelquery/extension/ModelQueryExtensionManager.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension;
-
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.w3c.dom.Element;
-
-
-
-public interface ModelQueryExtensionManager
-{
-  List getDataTypeValues(Element element, CMNode cmNode);                             
-
-  void filterAvailableElementContent(List availableContent, Element element, CMElementDeclaration ed);
-
-  void addExtension(ModelQueryExtension extension);
-
-  void removeExtension(ModelQueryExtension extension);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/BaseAssociationProvider.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/BaseAssociationProvider.java
deleted file mode 100644
index 6618e12..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/BaseAssociationProvider.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryAssociationProvider;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-
-/**
- *
- */
-public abstract class BaseAssociationProvider implements ModelQueryAssociationProvider
-{                    
-  public BaseAssociationProvider()
-  {
-  }
-
-  public CMNode getCMNode(Node node)
-  {
-    CMNode result = null;
-    switch (node.getNodeType())
-    {
-      case Node.ATTRIBUTE_NODE :
-      {
-        result = getCMAttributeDeclaration((Attr)node);
-        break;
-      }
-      case Node.ELEMENT_NODE :
-      {
-        result = getCMElementDeclaration((Element)node);
-        break;
-      }
-      case Node.CDATA_SECTION_NODE :
-      case Node.TEXT_NODE :
-      {
-        result = getCMDataType((Text)node);
-        break;
-      }
-    }
-    return result;
-  }
-
-
-  public CMDataType getCMDataType(Text text)
-  {
-    CMDataType result = null;
-    Node parentNode = text.getParentNode();
-    if (parentNode != null && parentNode.getNodeType() == Node.ELEMENT_NODE)
-    {
-      CMElementDeclaration ed = getCMElementDeclaration((Element)parentNode);
-      result = ed.getDataType();
-    }
-    return result;
-  }
-
-
-  public CMAttributeDeclaration getCMAttributeDeclaration(Attr attr)
-  {
-    CMAttributeDeclaration result = null;
-    Element element = attr.getOwnerElement();
-    if (element != null)
-    {
-      CMElementDeclaration ed = getCMElementDeclaration(element);
-      if (ed != null)
-      {
-        result = (CMAttributeDeclaration)ed.getAttributes().getNamedItem(attr.getName());
-      }
-    }
-    return result;
-  }          
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentLoader.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentLoader.java
deleted file mode 100644
index a56cbe2..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentLoader.java
+++ /dev/null
@@ -1,214 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-                          
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceTable;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-/**
- *
- */
-public class CMDocumentLoader
-{                                           
-  protected Document document;
-  protected ModelQuery modelQuery;
-  protected CMDocumentManager cmDocumentManager;
-  protected boolean isInferredGrammarEnabled = true;  
-  protected CMDocumentLoadingNamespaceTable namespaceTable;
-  protected int count = 0;
-    
-  public CMDocumentLoader(Document document, ModelQuery modelQuery)
-  {                             
-    this(document, modelQuery.getCMDocumentManager());
-  }
-  
-  public CMDocumentLoader(Document document, CMDocumentManager cmDocumentManager)
-  {   
-    this.document = document;                     
-    this.cmDocumentManager = cmDocumentManager;  	
-  }
-  
-  public void loadCMDocuments()
-  {          
-    //System.out.println("----------loadCMDocuments ------------");          
-    //long time = System.currentTimeMillis();
-       
-    boolean walkDocument = false;
-            
-    cmDocumentManager.removeAllReferences();
-      
-    String[] doctypeInfo = XMLAssociationProvider.getDoctypeInfo(document);
-    if (doctypeInfo != null)
-    {
-      // load the doctype if required
-      walkDocument = handleGrammar(doctypeInfo[0], doctypeInfo[1], "DTD");
-    }                                   
-    else
-    {                           
-      Element element = getRootElement(document);
-      if (element != null)
-      {
-        namespaceTable = new CMDocumentLoadingNamespaceTable(document);   
-        namespaceTable.addElement(element);
-        if (namespaceTable.isNamespaceEncountered())
-        {   
-          walkDocument = true;
-          //System.out.println("isNamespaceAware");
-        }
-        else
-        {
-          namespaceTable = null;
-          walkDocument = isInferredGrammarEnabled;
-          //System.out.println("is NOT namespaceAware");
-        }        
-      }  
-    } 
-
-    if (walkDocument)
-    {
-      visitNode(document);   
-    } 
-
-    //System.out.println("--- elapsed time (" + count + ") = " + (System.currentTimeMillis() - time));
-  }
-
-
-  public boolean handleGrammar(String publicId, String systemId, String type)
-  {           
-    boolean result = false;
-    
-    int status = cmDocumentManager.getCMDocumentStatus(publicId);
-    if (status == CMDocumentCache.STATUS_NOT_LOADED)
-    {
-      cmDocumentManager.addCMDocumentReference(publicId, systemId, type);
-    }                 
-    else if (status == CMDocumentCache.STATUS_ERROR)
-    {
-      result = true;
-    }
-    return result;
-  } 
-    
-
-  public void handleElement(Element element)
-  {  
-    visitChildNodes(element);
-  }
-
-                             
-  public void handleElementNS(Element element)
-  {
-    namespaceTable.addElement(element);
-    visitChildNodes(element);
-  }
-                                                    
-
-  public void visitNode(Node node)
-  {                    
-    int nodeType = node.getNodeType();
-    if (nodeType == Node.ELEMENT_NODE)
-    {
-      count++;       
-
-      Element element = (Element)node;    
-      if (namespaceTable == null)
-      {
-        handleElement(element); 
-      }
-      else
-      {
-        handleElementNS(element);
-      }            
-    }
-    else if (nodeType == Node.DOCUMENT_NODE)
-    {
-      visitChildNodes(node);
-    }
-  }
-
-
-  protected void visitChildNodes(Node node)
-  {   
-	  for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) 
-    {
-	    visitNode(child);
-    }
-	}             
-
-
-  protected class CMDocumentLoadingNamespaceTable extends NamespaceTable
-  {                                        
-    protected List newNamespaceList;
-
-    public CMDocumentLoadingNamespaceTable(Document document)
-    {                                                          
-      super(document);     
-    }  
-                                           
-
-    public void addElement(Element element)
-    {                               
-      newNamespaceList = null;
-      super.addElement(element);  
-      if (newNamespaceList != null)
-      {
-        for (Iterator i = newNamespaceList.iterator(); i.hasNext(); )
-        {
-          NamespaceInfo info = (NamespaceInfo)i.next();
-          handleGrammar(info.uri, info.locationHint, "XSD");
-        }
-      }
-    }                 
-     
-                               
-    protected void internalAddNamespaceInfo(String key, NamespaceInfo info)
-    {
-      super.internalAddNamespaceInfo(key, info);           
-      if (newNamespaceList == null)
-      {
-        newNamespaceList = new ArrayList();
-      }
-      newNamespaceList.add(info);    
-    }                     
-  }
-
-  
-  protected Element getRootElement(Document document)
-  {
-    Element result = null;
-    NodeList nodeList = document.getChildNodes();
-    int nodeListLength = nodeList.getLength();
-    for (int i = 0 ; i < nodeListLength; i++)
-    {
-      Node node = nodeList.item(i);
-      if (node.getNodeType() == Node.ELEMENT_NODE)
-      {
-        result = (Element)node;
-        break;
-      }
-    }
-    return result;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentManagerImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentManagerImpl.java
deleted file mode 100644
index 5df0ef5..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentManagerImpl.java
+++ /dev/null
@@ -1,321 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-                          
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.annotation.AnnotationUtility;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManagerListener;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentReferenceProvider;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-
-
-/**
- *
- */
-public class CMDocumentManagerImpl implements CMDocumentManager
-{                                
-  protected CMDocumentCache cmDocumentCache;
-  protected CMDocumentReferenceProvider cmDocumentReferenceProvider;
-  protected List listenerList = new Vector(); 
-  protected Hashtable propertyTable = new Hashtable();
-  protected Hashtable publicIdTable = new Hashtable();
-
-       
-  public CMDocumentManagerImpl(CMDocumentCache cmDocumentCache, CMDocumentReferenceProvider cmDocumentReferenceProvider)
-  {                                                       
-    this.cmDocumentCache = cmDocumentCache;                                                                            
-    this.cmDocumentReferenceProvider = cmDocumentReferenceProvider;
-    setPropertyEnabled(PROPERTY_AUTO_LOAD, true);
-    setPropertyEnabled(PROPERTY_USE_CACHED_RESOLVED_URI, false);
-  }         
-
-       
-  public CMDocumentCache getCMDocumentCache()
-  {
-    return cmDocumentCache;
-  }
-
- 
-  public void setPropertyEnabled(String propertyName, boolean value)
-  {
-    propertyTable.put(propertyName, value ? "true" : "false");
-    for (Iterator i = listenerList.iterator(); i.hasNext(); )
-    {
-      CMDocumentManagerListener listener = (CMDocumentManagerListener)i.next();
-      listener.propertyChanged(this, propertyName);
-    }
-  }                                        
-
-        
-  public boolean getPropertyEnabled(String propertyName)
-  {
-    Object object = propertyTable.get(propertyName);
-    return object != null && object.equals("true");
-  }
-
-
-  public void addListener(CMDocumentManagerListener listener)
-  {
-    listenerList.add(listener);
-    cmDocumentCache.addListener(listener);
-  }
-
-
-  public void removeListener(CMDocumentManagerListener listener)
-  {
-    listenerList.remove(listener);
-    cmDocumentCache.removeListener(listener);
-  }                       
-   
-                   
-  protected String lookupResolvedURI(String publicId)
-  {
-    String key = publicId != null ? publicId : "";
-    return (String)publicIdTable.get(key);
-  }
-    
-
-  protected String lookupOrCreateResolvedURI(String publicId, String systemId)
-  {                    
-    String resolvedURI = null;                  
-
-    String key = publicId != null ? publicId : "";
-
-    if (getPropertyEnabled(PROPERTY_USE_CACHED_RESOLVED_URI))
-    {
-      resolvedURI = (String)publicIdTable.get(key);
-    }   
-
-    if (resolvedURI == null)
-    {
-      resolvedURI = cmDocumentReferenceProvider.resolveGrammarURI(publicId, systemId);
-      if (resolvedURI == null)
-      {
-        resolvedURI = "";
-      }
-      publicIdTable.put(key, resolvedURI);     
-    }                       
-  
-    return resolvedURI;
-  }
-
-
-  public int getCMDocumentStatus(String publicId)
-  {                                           
-    int status = CMDocumentCache.STATUS_NOT_LOADED; 
-    String resolvedURI = lookupResolvedURI(publicId);
-    if (resolvedURI != null)
-    {                      
-      status = cmDocumentCache.getStatus(resolvedURI);
-    }
-    return status;
-  }    
-              
-
-  public CMDocument getCMDocument(String publicId)
-  {                                           
-    CMDocument result = null;
-    String resolvedURI = lookupResolvedURI(publicId);
-    if (resolvedURI != null)
-    {                      
-      result = cmDocumentCache.getCMDocument(resolvedURI);
-    }
-    return result;
-  }    
-  
-
-  public CMDocument getCMDocument(String publicId, String systemId, String type)
-  {                
-    CMDocument cmDocument = null;                           
-    String resolvedURI = null;
-
-    if (getPropertyEnabled(PROPERTY_AUTO_LOAD))
-    {
-      resolvedURI = lookupOrCreateResolvedURI(publicId, systemId);
-    }    
-    else
-    {
-      resolvedURI = lookupResolvedURI(publicId);
-    } 
-
-    if (resolvedURI != null)
-    {                   
-      int status = cmDocumentCache.getStatus(resolvedURI);
-      if (status == CMDocumentCache.STATUS_LOADED)
-      {                      
-        cmDocument = cmDocumentCache.getCMDocument(resolvedURI);
-      }   
-      else if (status == CMDocumentCache.STATUS_NOT_LOADED)
-      {     
-        if (getPropertyEnabled(PROPERTY_AUTO_LOAD))
-        {
-          cmDocument = loadCMDocument(publicId, resolvedURI, type, getPropertyEnabled(PROPERTY_ASYNC_LOAD));
-        }
-      }
-    }
-    return cmDocument;   
-  } 
-  
-  /**
-   * @deprecated
-   */
-  public CMDocument getCMDocument(String publicId, String resolvedURI)
-  {
-    CMDocument cmDocument = null;                           
-
-    if (resolvedURI != null)
-    {                   
-      int status = cmDocumentCache.getStatus(resolvedURI);
-      if (status == CMDocumentCache.STATUS_LOADED)
-      {                      
-        cmDocument = cmDocumentCache.getCMDocument(resolvedURI);
-      }   
-      else if (status == CMDocumentCache.STATUS_NOT_LOADED)
-      {     
-        if (getPropertyEnabled(PROPERTY_AUTO_LOAD))
-        {
-          cmDocument = loadCMDocument(publicId, resolvedURI, "", getPropertyEnabled(PROPERTY_ASYNC_LOAD));
-        }
-      }
-    }
-    return cmDocument;   
-  }
-
-  public void addCMDocumentReference(String publicId, String systemId, String type)
-  {
-    String resolvedURI = lookupOrCreateResolvedURI(publicId, systemId);
-    if (resolvedURI != null && resolvedURI.length() > 0)
-    {                                                                      
-      int status = cmDocumentCache.getStatus(resolvedURI);
-      if (status == CMDocumentCache.STATUS_NOT_LOADED)
-      {                      
-        loadCMDocument(publicId, resolvedURI, type, getPropertyEnabled(PROPERTY_ASYNC_LOAD));
-      }         
-    } 
-  }
-     
-
-  public void addCMDocument(String publicId, String systemId, String resolvedURI, String type, CMDocument cmDocument)
-  {
-    String key = publicId != null ? publicId : "";
-    publicIdTable.put(key, resolvedURI);
-    cmDocumentCache.putCMDocument(resolvedURI, cmDocument);
-  }
-
-
-  protected CMDocument loadCMDocument(final String publicId, final String resolvedURI, final String type, boolean async)
-  {                                                      
-    CMDocument result = null;
-                         
-    //System.out.println("about to build CMDocument(" + publicId + ", " + unresolvedURI + " = " + resolvedURI + ")");
-    if (async)
-    {     
-      cmDocumentCache.setStatus(resolvedURI, CMDocumentCache.STATUS_LOADING);
-      //Thread thread = new Thread(new AsyncBuildOperation(publicId, resolvedURI, type));
-      //thread.start();
-      Job job = new Job("loading " + resolvedURI)
-      {
-        public boolean belongsTo(Object family)
-        {
-          boolean result = (family == CMDocumentManager.class);
-          return result;
-        }
-        
-        protected IStatus run(IProgressMonitor monitor)
-        {
-          try
-          {
-            new AsyncBuildOperation(publicId, resolvedURI, type).run();
-          }
-          catch (Exception e)
-          {
-          }
-          return Status.OK_STATUS;
-        }
-      };
-      job.schedule();
-    }
-    else
-    {                
-      result = buildCMDocument(publicId, resolvedURI, type);
-    }          
-    return result;
-  } 
-
-    
-
-  protected class AsyncBuildOperation implements Runnable
-  {
-    protected String publicId;
-    protected String resolvedURI;    
-    protected String type;
-
-    public AsyncBuildOperation(String publicId, String resolvedURI, String type)
-    {
-      this.publicId = publicId;
-      this.resolvedURI = resolvedURI;                                          
-      this.type = type;
-    }      
-
-    public void run()
-    {
-      buildCMDocument(publicId, resolvedURI, type);
-    }
-  }
-    
-  
-  public synchronized CMDocument buildCMDocument(String publicId, String resolvedURI, String type)
-  {                                     
-    cmDocumentCache.setStatus(resolvedURI, CMDocumentCache.STATUS_LOADING);
-  
-    CMDocument result = null;         
-    int x = 1;
-    x++;
-    if (resolvedURI != null && resolvedURI.length() > 0)
-    {
-      // TODO... pass the TYPE thru to the CMDocumentBuilder
-      result = ContentModelManager.getInstance().createCMDocument(resolvedURI, type);
-    }
-    if (result != null)
-    { 
-      // load the annotation files for the document 
-      if (publicId != null)
-      {    
-        AnnotationUtility.loadAnnotationsForGrammar(publicId, result);
-      }
-      cmDocumentCache.putCMDocument(resolvedURI, result);
-    }
-    else
-    {
-      cmDocumentCache.setStatus(resolvedURI, CMDocumentCache.STATUS_ERROR);
-    }
-    return result;
-  } 
-
-  public void removeAllReferences()
-  {
-    // TODO... initiate a timed release of the entries in the CMDocumentCache
-    publicIdTable = new Hashtable();
-  }
-}                                            
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentReferenceImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentReferenceImpl.java
deleted file mode 100644
index 303ca4f..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/CMDocumentReferenceImpl.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentReference;
-
-public class CMDocumentReferenceImpl implements CMDocumentReference
-{              
-  protected String systemId;
-  protected String publicId;
-
-  public CMDocumentReferenceImpl(String publicId, String systemId)
-  {
-    this.publicId = publicId;                                    
-    this.systemId = systemId;
-  }
-
-  public String getPublicId()
-  {                          
-    return publicId;
-  }
-
-  public String getSystemId()
-  {                          
-    return systemId;
-  }      
-  
-  public String toString()
-  {
-    return "[" + publicId + ", " + systemId + "]";
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/InferredGrammarBuildingCMDocumentLoader.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/InferredGrammarBuildingCMDocumentLoader.java
deleted file mode 100644
index 8f1b2fd..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/InferredGrammarBuildingCMDocumentLoader.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-                          
-import java.util.Hashtable;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.modelqueryimpl.InferredGrammarFactory;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-
-/**
- *
- */
-public class InferredGrammarBuildingCMDocumentLoader extends CMDocumentLoader
-{     
-  protected CMElementDeclaration inferredCMElementDeclaration;
-  protected CMDocument inferredCMDocument;
-  protected InferredGrammarFactory inferredGrammarFactory;
-  protected Hashtable createdCMDocumentTable;
-
-  public InferredGrammarBuildingCMDocumentLoader(Document document, ModelQuery modelQuery)
-  {                             
-    this(document, modelQuery.getCMDocumentManager());
-  }
-  
-  public InferredGrammarBuildingCMDocumentLoader(Document document, CMDocumentManager cmDocumentManager)
-  {                             
-    super(document, cmDocumentManager);
-    createdCMDocumentTable = new Hashtable();             
-    inferredGrammarFactory = new InferredGrammarFactory();
-  }     
-
-     
-  public void loadCMDocuments()
-  {   
-    //System.out.println("----------loadCMDocuments ------------");          
-    if (inferredGrammarFactory != null)
-    {
-      //long time = System.currentTimeMillis();
-      super.loadCMDocuments();
-      //System.out.println("--- elapsed time (" + count + ") = " + (System.currentTimeMillis() - time));
-      //inferredGrammarFactory.debugPrint(createdCMDocumentTable.values());
-    }
-    
-  }
-
-  public void handleElement(Element element)
-  { 
-    CMElementDeclaration parentInferredCMElementDeclaration = inferredCMElementDeclaration;
-                
-    if (inferredCMDocument == null)
-    {     
-      String cacheKey = "inferred-document";                   
-      inferredCMDocument = inferredGrammarFactory.createCMDocument("");  
-      cmDocumentManager.addCMDocument("", "", cacheKey, "DTD", inferredCMDocument);
-      createdCMDocumentTable.put(cacheKey, inferredCMDocument);
-    } 
-
-    inferredCMElementDeclaration = inferredGrammarFactory.createCMElementDeclaration(inferredCMDocument, element, false);                             
-     
-    if (parentInferredCMElementDeclaration != null)
-    {
-      inferredGrammarFactory.createCMContent(inferredCMDocument, parentInferredCMElementDeclaration, inferredCMDocument, inferredCMElementDeclaration, false, null);
-    }     
-       
-
-    visitChildNodes(element);   
-           
-    // reset the 'current' state to inital values
-    inferredCMElementDeclaration = parentInferredCMElementDeclaration;
-  }
-  
-
-  public void handleElementNS(Element element)
-  {                             
-    CMDocument parentInferredCMDocument = inferredCMDocument;
-    CMElementDeclaration parentInferredCMElementDeclaration = inferredCMElementDeclaration;
-        
-    inferredCMDocument = null;                                                            
-    inferredCMElementDeclaration = null;
-
-    // by adding the element to the namespaceTable, handleGrammar() will get called for any schema references
-    if (element.getParentNode() != document)
-    {
-      namespaceTable.addElement(element);
-    }
-
-    String prefix = element.getPrefix();
-    String uri = namespaceTable.getURIForPrefix(prefix);
-
-    if (uri == null && element.getParentNode() == document)
-    {
-      // when this is the root element
-      // we need to add an implied "no namespace schema location"
-      uri = "ommitted-namespace";
-      namespaceTable.addNamespaceInfo(prefix, uri, "");
-    }  
-
-    // here's where we update the inferred grammar if required
-    // 
-    boolean createCMElementDeclaration = true;
-          
-    boolean isLocal = (uri == null && prefix == null);         
-    if (isLocal)
-    {          
-      if (parentInferredCMDocument == null)
-      {
-        // this is a local element... and the parent is not inferred (e.g) it has a known grammar
-        // so we don't need to create an element declaration for this element
-        createCMElementDeclaration = false; 
-      }                             
-      else
-      {
-        if (uri == null)
-        {
-          uri = "ommitted-namespace";
-        }
-      }
-    }
-
-    if (createCMElementDeclaration)
-    {            
-      if (isLocal)
-      {
-        inferredCMDocument = parentInferredCMDocument;
-        inferredCMElementDeclaration = inferredGrammarFactory.createCMElementDeclaration(inferredCMDocument, element, true);       
-      }          
-      else
-      {
-        boolean createCMDocument = false;
-
-        String cacheKey = "inferred-document" + uri; 
-        inferredCMDocument = (CMDocument)createdCMDocumentTable.get(cacheKey);
-
-        if (inferredCMDocument == null)
-        {
-          // we don't have an inferred document for this uri yet... let's see of we need one
-          int status = cmDocumentManager.getCMDocumentStatus(uri);                                                                                           
-          if (status == CMDocumentCache.STATUS_NOT_LOADED || status == CMDocumentCache.STATUS_ERROR)
-          {                  
-            // the cache does not contain a 'proper' CMDocument for this uri
-            // so we need to create an inferred one
-            createCMDocument = true;
-          } 
-        } 
-                
-        if (createCMDocument)
-        {           
-          //System.out.println("encountered element {" + element.getNodeName() + "} ... creating inferred CMDocument for " + uri);
-          inferredCMDocument = inferredGrammarFactory.createCMDocument(uri);
-          cmDocumentManager.addCMDocument(uri, "", cacheKey, "XSD", inferredCMDocument);
-          createdCMDocumentTable.put(cacheKey, inferredCMDocument);
-        }
-
-        if (inferredCMDocument != null)
-        {
-          inferredCMElementDeclaration = inferredGrammarFactory.createCMElementDeclaration(inferredCMDocument, element, false);
-        }                                                                                                                                                   
-      }
-
-      if (parentInferredCMElementDeclaration != null)
-      {
-        inferredGrammarFactory.createCMContent(parentInferredCMDocument, parentInferredCMElementDeclaration, inferredCMDocument, inferredCMElementDeclaration, isLocal, uri);
-      } 
-    }               
-          
-    visitChildNodes(element);
-      
-    // reset the 'current' state to inital values
-    inferredCMElementDeclaration = parentInferredCMElementDeclaration;
-    inferredCMDocument = parentInferredCMDocument;
-  }                                                                                                       
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/ModelQueryActionHelper.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/ModelQueryActionHelper.java
deleted file mode 100644
index 69c21c7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/ModelQueryActionHelper.java
+++ /dev/null
@@ -1,574 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.util.CMValidator;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryAction;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-/**
- *
- */
-public class ModelQueryActionHelper
-{
-  protected ModelQueryImpl modelQuery;
-
-  protected static class Action implements ModelQueryAction
-  {
-    public int kind;
-    public int startIndex;
-    public int endIndex;
-    public Node parent;
-    public CMNode cmNode;
-    public Object userData;
-
-    public Action(int kind, Node parent, CMNode cmNode)
-    {
-      this.kind = kind;
-      this.parent = parent;
-      this.cmNode = cmNode;
-    }
-
-    public Action(int kind, Node parent, CMNode cmNode, int startIndex, int endIndex)
-    {
-      this.kind = kind;
-      this.parent = parent;
-      this.cmNode = cmNode;
-      this.startIndex = startIndex;
-      this.endIndex = endIndex;
-    }
-
-    public int getKind()
-    {
-      return kind;
-    }
-
-    public int getStartIndex()
-    {
-      return startIndex;
-    }
-
-    public int getEndIndex()
-    {
-      return endIndex;
-    }
-
-    public Node getParent()
-    {
-      return parent;
-    }
-
-    public CMNode getCMNode()
-    {
-      return cmNode;
-    }
-
-    public Object getUserData()
-    {
-      return userData;
-    }
-
-    public void setUserData(Object object)
-    {
-      userData = object;
-    }
-
-    public void performAction()
-    {
-    }
-  }
-
-
-  public ModelQueryActionHelper(ModelQueryImpl modelQuery)
-  {
-    this.modelQuery = modelQuery;
-  }
-
-
-  public void getAllActions(Element parent, CMElementDeclaration ed, int validityChecking, List actionList)
-  {
-  }
-
-
-  // insert actions
-  //
-  public void getInsertActions(Element parent, CMElementDeclaration ed, int index, int includeOptions, int validityChecking, List actionList)
-  {
-    if ((includeOptions & ModelQuery.INCLUDE_ATTRIBUTES) != 0)
-    {
-      getInsertAttributeActions(parent, ed, validityChecking, actionList);
-    }
-    includeOptions &= ~ModelQuery.INCLUDE_ATTRIBUTES;
-    if ((includeOptions & ModelQuery.INCLUDE_CHILD_NODES) != 0)
-    {
-      if (index != -1)
-      {
-        getInsertChildNodeActionsAtIndex(parent, ed, index, includeOptions, validityChecking, actionList);
-      }
-      else
-      {
-        getInsertChildNodeActions(parent, ed, includeOptions, validityChecking, actionList);
-      }
-    }
-  }
-
-
-
-  protected void getInsertAttributeActions(Element parent, CMElementDeclaration ed, int validityChecking, List actionList)
-  {
-    // get actions for each insertable attribute
-    //
-    List availableAttributeList = modelQuery.getAvailableContent(parent, ed, ModelQuery.INCLUDE_ATTRIBUTES);
-
-    for (Iterator i = availableAttributeList.iterator(); i.hasNext(); )
-    {
-      CMAttributeDeclaration ad = (CMAttributeDeclaration)i.next();
-      if (modelQuery.canInsert(parent, ed, ad, 0, validityChecking))
-      {
-        Action action = new Action(ModelQueryAction.INSERT, parent, ad);
-        actionList.add(action);
-      }
-    }
-  }
-
-
-  protected void getInsertChildNodeActionsAtIndex(Element parent, CMElementDeclaration ed, int index, int includeOptions, int validityChecking, List actionList)
-  {                       
-    // get actions for each insertable attribute
-    //
-    int size = parent.getChildNodes().getLength();
-    if (index <= size)
-    {                                                                                          
-      List contentSpecificationList = modelQuery.getValidator().createContentSpecificationList(parent, ed); 
-      List availableChildNodeList = modelQuery.getAvailableContent(parent, ed, includeOptions);
-
-      boolean isSimpleChoice = isSimpleChoiceGroupContentModel(ed);
-     
-      for (Iterator i = availableChildNodeList.iterator(); i.hasNext(); )
-      {
-        CMNode cmNode = (CMNode)i.next();      
-        if (isSimpleChoice || modelQuery.canInsert(parent, ed, cmNode, index, validityChecking, contentSpecificationList))
-        {
-          Action action = new Action(ModelQueryAction.INSERT, parent, cmNode, index, index);
-          actionList.add(action);
-        }
-      }
-    }
-  }
-                  
- 
-  protected boolean isSimpleChoiceGroupContentModel(CMElementDeclaration ed)
-  {       
-    boolean result = false;
-    CMNode cmNode = ed.getContent();
-    if (cmNode != null && cmNode.getNodeType() == CMNode.GROUP)
-    {
-      CMGroup cmGroup = (CMGroup)cmNode;
-      if (cmGroup.getOperator() == CMGroup.CHOICE && cmGroup.getMaxOccur() == -1)
-      {                   
-        result = true;
-        CMNodeList list = cmGroup.getChildNodes();
-        for (int i = list.getLength() - 1; i >= 0; i--)
-        {
-          if (list.item(i).getNodeType() != CMNode.ELEMENT_DECLARATION)
-          {
-            result = false;
-            break;
-          }
-        }
-      }
-    }
-    return result;
-  }
-
-
-  protected void getInsertChildNodeActions(Element parent, CMElementDeclaration ed, int includeOptions, int validityChecking, List actionList)
-  {
-    int size = parent.getChildNodes().getLength();
-    List contentSpecificationList = modelQuery.getValidator().createContentSpecificationList(parent, ed);
-    List availableChildNodeList = modelQuery.getAvailableContent(parent, ed, includeOptions);
-
-    boolean isSimpleChoice = isSimpleChoiceGroupContentModel(ed);
-
-    for (Iterator iterator = availableChildNodeList.iterator(); iterator.hasNext(); )
-    {
-      CMNode cmNode = (CMNode)iterator.next();
-      for (int i = size; i >= 0; i--)
-      {
-        if (isSimpleChoice || modelQuery.canInsert(parent, ed, cmNode, i, validityChecking, contentSpecificationList))
-        {
-          Action action = new Action(ModelQueryAction.INSERT, parent, cmNode, i, i);
-          actionList.add(action);
-          break;
-        }
-      }
-    }
-  }
-
-  public void getInsertActions(Document parent, CMDocument cmDocument, int index, int includeOptions, int validityChecking, List actionList)
-  {
-    // get the root element and doctype index (if any)
-    //
-    int doctypeIndex = -1;
-    DocumentType doctype = null;
-    Element rootElement = null;
-    NodeList nodeList = parent.getChildNodes();
-    int nodeListLength = nodeList.getLength();
-    for (int i = 0; i < nodeListLength; i++)
-    {
-      Node childNode = nodeList.item(i);
-      if (childNode.getNodeType() == Node.ELEMENT_NODE)
-      {
-        rootElement = (Element)childNode;
-        break;
-      }
-      else if (childNode.getNodeType() == Node.DOCUMENT_TYPE_NODE)
-      {
-        doctype = (DocumentType)childNode;
-        doctypeIndex = i;
-      }
-    }
-
-    // make sure that root elements are only added after the doctype (if any)
-    if (rootElement == null && index > doctypeIndex)
-    {
-      CMNamedNodeMap map = cmDocument.getElements();
-      int mapLength = map.getLength();
-      for (int i = 0; i < mapLength; i++)
-      {
-        CMNode cmNode = map.item(i);
-
-        boolean canAdd = true;
-        if (validityChecking == ModelQuery.VALIDITY_STRICT)
-        {
-          canAdd = doctype == null || doctype.getName().equals(cmNode.getNodeName());
-        }
-
-        if (canAdd)
-        {
-          Action action = new Action(ModelQueryAction.INSERT, parent, cmNode, index, index);
-          actionList.add(action);
-        }
-      }
-    }
-  }
-
-
-
-  public void getInsertChildNodeActionTable(Element parent, CMElementDeclaration ed, int validityChecking, Hashtable actionTable)
-  {
-  }
-
-
-  public void getReplaceActions(Element parent, CMElementDeclaration ed, int includeOptions, int validityChecking, List actionList)
-  {
-    CMValidator.MatchModelNode matchModelNode = modelQuery.getValidator().getMatchModel(ed, parent);
-    if (matchModelNode != null)
-    {
-      MatchModelVisitor visitor = new MatchModelVisitor(parent, actionList);
-      visitor.visitMatchModelNode(matchModelNode);
-    }     
-  }
-
-  public void getReplaceActions(Element parent, CMElementDeclaration ed, List selectedChildren, int includeOptions, int validityChecking, List actionList)
-  {
-    int[] range = getRange(parent, selectedChildren);
-    if (range != null)
-    {                
-      if (isContiguous(parent, range, selectedChildren))
-      {
-        List tempList = new Vector();
-        getReplaceActions(parent, ed, includeOptions, validityChecking, tempList);
-        if ((includeOptions & ModelQuery.INCLUDE_ENCLOSING_REPLACE_ACTIONS) != 0)
-        {
-          removeActionsNotContainingRange(tempList, range[0], range[1]);            
-        }
-        else
-        {
-          removeActionsNotMatchingRange(tempList, range[0], range[1]);    
-        }
-        actionList.addAll(tempList);
-      }
-    }   
-    
-    if (selectedChildren.size() == 1)
-    {
-      Node node = (Node)selectedChildren.get(0);
-      if (node.getNodeType() == Node.ELEMENT_NODE)
-      {        
-        Element childElement = (Element)node;       
-        CMNode childEd = modelQuery.getCMElementDeclaration(childElement);
-        if (childEd != null)
-        {         
-
-          CMNode childOrigin= modelQuery.getOrigin(childElement);
-
-          CMNodeList cmNodeList = childOrigin != null ? 
-                                    (CMNodeList)childOrigin.getProperty("SubstitutionGroup") :
-                                    (CMNodeList)childEd.getProperty("SubstitutionGroup");
-
-          if (cmNodeList != null && cmNodeList.getLength() > 1)
-          {                                                 
-            int replaceIndex = getIndex(parent, childElement);
-            String childEdName = childEd.getNodeName();
-            for (int i = 0; i < cmNodeList.getLength(); i++)
-            {         
-              CMNode substitution = cmNodeList.item(i);
-              if (!substitution.getNodeName().equals(childEdName) && !Boolean.TRUE.equals(substitution.getProperty("Abstract")))
-              {
-                Action action = new Action(ModelQueryAction.REPLACE, parent, cmNodeList.item(i), replaceIndex, replaceIndex);
-                actionList.add(action);
-              }
-            }
-          }
-        }
-      }   
-    }
-  }     
-           
-  
-  // returns true if the selected nodes are contiguous
-  //  
-  protected boolean isContiguous(Element parent, int[] range, List selectedNodeList)
-  {         
-    boolean result = true;
-    NodeList nodeList = parent.getChildNodes();
-	// issue: nodeListLength was never read, but in theory, 
-	// nodelList.getLength() might cause some clearing of cached 
-	// data, or something, so leaving in a potential meaningless call, for now.
-    //int nodeListLength = nodeList.getLength();
-	nodeList.getLength();
-    for (int i = range[0]; i < range[1]; i++)
-    {       
-      Node node = nodeList.item(i);    
-      if (!isWhitespaceNode(node) && !selectedNodeList.contains(node))
-      {             
-        result = false;
-        break;
-      }                       
-    }         
-    return result;
-  }
- 
- 
-  protected int[] getRange(Element parent, List list)
-  {
-    int[] result = null;
-    int first = -1;
-    int last = -1;                     
-
-    NodeList nodeList = parent.getChildNodes();
-    int nodeListLength = nodeList.getLength();
-    for (int i = 0; i < nodeListLength; i++)
-    {       
-      Node node = nodeList.item(i);    
-      if (list.contains(node))
-      {             
-        first = (first == -1) ? i : Math.min(first, i);        
-        last = Math.max(last, i);
-      }    
-    }
-   
-    if (first != -1 && last!= -1)
-    {             
-      result = new int[2];
-      result[0] = first;
-      result[1] = last;
-    }   
-    return result;
-  } 
-
-
-  protected boolean isWhitespaceNode(Node node)
-  {
-    return node.getNodeType() == Node.TEXT_NODE &&
-           node.getNodeValue().trim().length() == 0;
-  } 
-
-
-  protected int getIndex(Node parentNode, Node child)
-  {
-    NodeList nodeList = parentNode.getChildNodes();
-    int index = -1;
-    int size = nodeList.getLength();
-    for (int i = 0; i < size; i++)
-    {
-      if (nodeList.item(i) == child)
-      {
-        index = i;
-        break;
-      }
-    }
-    return index;
-  }                    
-
-
-  protected boolean isActionContainingRange(ModelQueryAction action, int startIndex, int endIndex)
-  {
-    int actionStartIndex = action.getStartIndex();
-    int actionEndIndex = action.getEndIndex();
-
-    return (actionStartIndex <= startIndex &&
-            actionEndIndex >= endIndex);
-  } 
-           
-
-  protected boolean isActionMatchingRange(ModelQueryAction action, int startIndex, int endIndex)
-  {
-    int actionStartIndex = action.getStartIndex();
-    int actionEndIndex = action.getEndIndex();
-    return (actionStartIndex == startIndex &&        
-            actionEndIndex == endIndex);
-  } 
-           
-
-  protected void removeActionsNotContainingRange(List actionList, int startIndex, int endIndex)
-  {
-    for (int i = actionList.size() - 1; i >= 0; i--)
-    {
-      ModelQueryAction action = (ModelQueryAction)actionList.get(i);
-      if (!isActionContainingRange(action, startIndex, endIndex))
-      {
-        actionList.remove(i);
-      }
-    }
-  }
-
-
-  protected void removeActionsNotMatchingRange(List actionList, int startIndex, int endIndex)
-  {
-    for (int i = actionList.size() - 1; i >= 0; i--)
-    {
-      ModelQueryAction action = (ModelQueryAction)actionList.get(i);
-      if (!isActionMatchingRange(action, startIndex, endIndex))
-      {
-        actionList.remove(i);
-      }
-    }
-  }
-
-
-  public static class MatchModelVisitor
-  {
-    int indent;
-    int elementIndex;
-    Node parent;
-    List actionList;
-
-    public MatchModelVisitor(Node parent, List actionList)
-    {
-      this.parent = parent;
-      this.actionList = actionList;
-    }
-
-    public int indexOfNextElement(int start)
-    {
-      NodeList nodeList = parent.getChildNodes();
-      int length = nodeList.getLength();
-      int result = length;
-      for (int i = start; i < length; i++)
-      {
-        Node node = nodeList.item(i);
-        if (node.getNodeType() == Node.ELEMENT_NODE)
-        {
-          result = i;
-          break;
-        }
-      }
-      return result;
-    }
-
-    public void visitMatchModelNode(CMValidator.MatchModelNode matchModelNode)
-    {
-      int startIndex = indexOfNextElement(elementIndex);
-
-      //String cmNodeName = matchModelNode.cmNode != null ? matchModelNode.cmNode.getNodeName() : "null";
-      //printIndented(indent, "+MatchModelNode : " + cmNodeName +  " " + startIndex);
-
-      indent += 2;
-      for (Iterator iterator = matchModelNode.children.iterator(); iterator.hasNext(); )
-      {
-        CMValidator.MatchModelNode child = (CMValidator.MatchModelNode)iterator.next();
-        visitMatchModelNode(child);
-      }
-      indent -= 2;
-
-      if (matchModelNode.cmNode != null)
-      {
-        int nodeType = matchModelNode.cmNode.getNodeType();
-        if (nodeType == CMNode.GROUP)
-        {
-          CMGroup group = (CMGroup)matchModelNode.cmNode;
-          if (group.getOperator() == CMGroup.CHOICE)
-          {
-            addReplaceActions(matchModelNode, group, startIndex, elementIndex - 1);
-          }
-        }
-        else if (nodeType == CMNode.ELEMENT_DECLARATION)
-        {
-          elementIndex = startIndex + 1;
-        }
-        //printIndented(indent, "-MatchModelNode : " + cmNodeName +  " " + (elementIndex - 1));
-      }
-    }
-
-    public void addReplaceActions(CMValidator.MatchModelNode matchModelNode, CMGroup group, int startIndex, int endIndex)
-    {
-      CMNode excludeCMNode = null;
-      if (matchModelNode.children.size() > 0)
-      {
-        CMValidator.MatchModelNode child = (CMValidator.MatchModelNode)matchModelNode.children.get(0);
-        excludeCMNode = child.cmNode;
-      }
-
-      CMNodeList nodeList = group.getChildNodes();
-      int size = nodeList.getLength();
-      for (int i = 0; i < size; i++)
-      {
-        CMNode alternative = nodeList.item(i);
-        if (alternative != excludeCMNode)
-        {
-          Action action = new Action(ModelQueryAction.REPLACE, parent, alternative, startIndex, endIndex);
-          actionList.add(action);
-        }
-      }
-    }
-  }
-
-  //public static void printIndented(int indent, String string)
-  //{
-  //  for (int i = 0; i < indent; i++)
-  //  {
-  //    System.out.print(" ");
-  //  }
-  //  System.out.println(string);
-  //}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/ModelQueryImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/ModelQueryImpl.java
deleted file mode 100644
index fd32787..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/ModelQueryImpl.java
+++ /dev/null
@@ -1,848 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.modelqueryimpl.*;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.util.CMDataTypeValueHelper;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.util.DOMValidator;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryAssociationProvider;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension.ModelQueryExtensionManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMVisitor;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceTable;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.Text;
-
-
-/**
- * This class implements a large portion of the ModelQuery interfaces.
- * Some work is delegated to the DOMHelper, CMDocumentManager, and DOMValidator.
- */
-public class ModelQueryImpl implements ModelQuery
-{
-  protected ModelQueryAssociationProvider modelQueryAssociationProvider;
-  protected ModelQueryActionHelper modelQueryActionHelper;
-  protected DOMValidator validator;   
-  protected ModelQueryExtensionManagerImpl extensionManager;   
-  protected CMDataTypeValueHelper valueHelper;
-  protected int editMode = EDIT_MODE_CONSTRAINED_STRICT;
-
-  public ModelQueryImpl(ModelQueryAssociationProvider modelQueryAssociationProvider)
-  {
-    this.modelQueryAssociationProvider = modelQueryAssociationProvider;
-    modelQueryActionHelper = createModelQueryActionHelper();
-    validator = new DOMValidator();                         
-    extensionManager = new ModelQueryExtensionManagerImpl();
-    valueHelper = new CMDataTypeValueHelper();
-  }
-                         
-  public int getEditMode()
-  {
-    return editMode;
-  }
-                    
-  public void setEditMode(int editMode)
-  {
-    this.editMode =editMode;
-  }
-
-
-  // factory methods
-  public ModelQueryActionHelper createModelQueryActionHelper()
-  {
-    return new ModelQueryActionHelper(this);
-  } 
-
-  public DOMValidator getValidator()
-  {
-    return validator;
-  }
-
-  public CMDocument getCorrespondingCMDocument(Node node)
-  {
-    return modelQueryAssociationProvider.getCorrespondingCMDocument(node);
-  }
-
-  public CMNode getCMNode(Node node)
-  {
-    return modelQueryAssociationProvider.getCMNode(node);
-  }
-
-  public CMDataType getCMDataType(Text text)
-  {
-    return modelQueryAssociationProvider.getCMDataType(text);
-  }
-
-  public CMAttributeDeclaration getCMAttributeDeclaration(Attr attr)
-  {
-    return modelQueryAssociationProvider.getCMAttributeDeclaration(attr);
-  }
-
-  public CMElementDeclaration getCMElementDeclaration(Element element)
-  {
-    return modelQueryAssociationProvider.getCMElementDeclaration(element);
-  }
-   
-  public CMDocumentManager getCMDocumentManager()
-  {
-    CMDocumentManager result = null;
-    if (modelQueryAssociationProvider instanceof XMLAssociationProvider)
-    {             
-      XMLAssociationProvider xmlAssociationProvider = (XMLAssociationProvider)modelQueryAssociationProvider;
-      result = xmlAssociationProvider.getCMDocumentManager();
-    }    
-    return result;
-  }
-       
-
-  /**
-   * @deprected - use 3 arg version below
-   */
-  public List getCMDocumentList(Element element, String uri)
-  {        
-    return Collections.EMPTY_LIST;
-  }
-
-  public List getCMDocumentList(Element element, CMElementDeclaration ed, String uri)
-  {                
-    List result = new Vector();
-    if (modelQueryAssociationProvider instanceof XMLAssociationProvider)
-    {              
-      XMLAssociationProvider xmlAssociationProvider = (XMLAssociationProvider)modelQueryAssociationProvider;
-     
-      // todo... revist... handle each ##thing explicitly
-      //          
-      if (uri == null)
-      {
-        uri = "##any";
-      }               
-
-      if (uri.equals("##targetNamespace"))
-      {                                                      
-        CMDocument cmDocument = (CMDocument)ed.getProperty("CMDocument");
-        if (cmDocument != null)
-        {  
-          result.add(cmDocument);
-        }
-      }
-      else if (uri.equals("##any") || uri.equals("##other"))
-      {                                        
-        String excludedURI = null;
-        if (uri.equals("##other"))
-        {
-          CMDocument cmDocument = (CMDocument)ed.getProperty("CMDocument");       
-          if (cmDocument != null)
-          {
-            excludedURI = (String)cmDocument.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI");
-          }
-        }
-                               
-        // in this case we should consider all of the schema related to this document
-        //
-        NamespaceTable namespaceTable = new NamespaceTable(element.getOwnerDocument());
-        namespaceTable.addElementLineage(element);
-        List list = namespaceTable.getNamespaceInfoList();
-        for (Iterator i = list.iterator(); i.hasNext();)
-        {
-          NamespaceInfo info = (NamespaceInfo)i.next();
-          if (info.uri != null && !info.uri.equals(excludedURI))
-          {
-            CMDocument document = xmlAssociationProvider.getCMDocument(info.uri, info.locationHint, "XSD");
-            if (document != null)
-            {
-              result.add(document);
-            }
-          }
-        }
-      }   
-      else
-      {        
-        CMDocument document = xmlAssociationProvider.getCMDocument(element, uri);
-        if (document != null)
-        {
-          result.add(document);
-        }
-      }      
-    }
-    return result;
-  }
-
-
-  public CMDocument getCMDocument(Element element, String uri)
-  {                
-
-    CMDocument result = null;
-    if (modelQueryAssociationProvider instanceof XMLAssociationProvider)
-    {             
-      XMLAssociationProvider xmlAssociationProvider = (XMLAssociationProvider)modelQueryAssociationProvider;
-      result = xmlAssociationProvider.getCMDocument(element, uri);
-    }
-    //ContentModelManager.println("ModelQueryImpl.getCMDocument(" + element.getNodeName() + ", " + uri + ") = " + result);
-    return result;
-  }
-
-  public boolean isContentValid(Element element)
-  {               
-    CMElementDeclaration ed = getCMElementDeclaration(element);
-    return isContentValid(ed, element);
-  }
-
-  public boolean isContentValid(CMElementDeclaration ed, Element element)
-  {                                               
-    boolean result = true;    
-    if (ed != null)
-    { 
-      // first check to see if all the required attributes are present
-      //                                                      
-      CMNamedNodeMap map = ed.getAttributes();
-      int mapLength = map.getLength();
-      for (int i = 0; i < mapLength; i++)
-      {                                                           
-        CMAttributeDeclaration ad = (CMAttributeDeclaration)map.item(i);
-        String attributeName = DOMNamespaceHelper.computeName(ad, element, null);
-        if (ad.getUsage() == CMAttributeDeclaration.REQUIRED)
-        {               
-           Attr attr = element.getAttributeNode(attributeName);
-           if (attr == null)
-           {
-             result = false;
-             break;
-           }
-        }
-      }
-
-      // now check to see of the children validate properly
-      //
-      if (result) 
-      {
-        CMNode[] originArray = getOriginArray(element);
-        result = originArray != null && originArray.length == element.getChildNodes().getLength();
-      }
-    }
-    return result;
-  }
-
-
-  public CMNode getOrigin(Node node)
-  {
-    CMNode result = null;
-    // todo... make sure parent is right
-    //
-    Node parentNode = getParentOrOwnerNode(node);
-    if (parentNode != null && parentNode.getNodeType() == Node.ELEMENT_NODE)
-    {
-      Element parentElement = (Element)parentNode;
-      CMNode[] array = getOriginArray(parentElement);
-      if (array != null)
-      {
-        int index = getIndexOfNode(parentElement.getChildNodes(), node);
-        if (index < array.length)
-        {
-          result = array[index];
-        }
-      }
-    }
-    return result;
-  }
-
-  public CMNode[] getOriginArray(Element element)
-  {
-    CMElementDeclaration ed = getCMElementDeclaration(element);
-    return (ed != null) ? getValidator().getOriginArray(ed, element) : null;
-  }
-
-  public int getIndexOfNode(NodeList nodeList, Node node)
-  {
-    int result = -1;
-    int size = nodeList.getLength();
-    for (int i = 0; i < size; i++)
-    {
-       if (nodeList.item(i) == node)
-       {
-         result = i;
-         break;
-       }
-    }
-    return result;
-  }
-
-
-  /**
-   * Returns a list of all CMNode 'meta data' that may be potentially added to the element.
-   */
-  public List getAvailableContent(Element element, CMElementDeclaration ed, int includeOptions)
-  {
-    AvailableContentCMVisitor visitor = new AvailableContentCMVisitor(element, ed);
-    List list = visitor.computeAvailableContent(includeOptions);
-    if (extensionManager != null)
-    {                    
-      extensionManager.filterAvailableElementContent(list, element, ed);
-    }  
-    return list;
-  }  
-
-
-  public boolean canInsert(Element parent, CMNode cmNode, int index, int validityChecking)
-  {
-    boolean result = true;
-    CMElementDeclaration ed = getCMElementDeclaration(parent);
-    if (ed != null)
-    {
-      result = canInsert(parent, ed, cmNode, index, validityChecking);
-    }
-    return result;
-  }
-
-
-  public boolean canInsert(Element parent, CMElementDeclaration ed, CMNode cmNode, int index, int validityChecking)
-  {
-    return canInsert(parent, ed, cmNode, index, validityChecking, null);
-  }         
-
-  protected boolean canInsert(Element parent, CMElementDeclaration ed, CMNode cmNode, int index, int validityChecking, Object reuseableData)
-  {
-    boolean result = true;
-    switch (cmNode.getNodeType())
-    {
-      case CMNode.ATTRIBUTE_DECLARATION :
-      {
-        String attributeName = DOMNamespaceHelper.computeName(cmNode, parent, null);
-        result = parent.getAttributeNode(attributeName) == null;
-        break;
-      }
-      case CMNode.ELEMENT_DECLARATION :
-      case CMNode.GROUP :
-      {
-        if (validityChecking == VALIDITY_STRICT)
-        {                                  
-          // create list                       
-          List contentSpecificationList = null;
-          if (reuseableData != null)
-          {                            
-            contentSpecificationList = (List)reuseableData;
-          }    
-          else
-          {                                                                                  
-            contentSpecificationList = getValidator().createContentSpecificationList(parent, ed);
-          }
-          result = getValidator().canInsert(ed, contentSpecificationList, index, cmNode);
-        }
-        break;
-      }
-      case CMNode.DATA_TYPE :
-      {
-        int contentType = ed.getContentType();
-        result = (contentType == CMElementDeclaration.MIXED ||
-                  contentType == CMElementDeclaration.PCDATA ||
-                  contentType == CMElementDeclaration.ANY);
-        break;
-      }
-      default :
-      {
-        result = false;
-        break;
-      }
-    }
-    return result;
-  }
-
-  public boolean canInsert(Element parent, List cmNodeList, int index, int validityChecking)
-  {
-    // todo
-    return true;
-  }
-
-
-  public boolean canRemove(Node node, int validityChecking)
-  {
-    boolean result = true;      
-    if (validityChecking == VALIDITY_STRICT)
-    {
-      int nodeType = node.getNodeType();
-      switch (nodeType)
-      {
-        case Node.ATTRIBUTE_NODE:
-        {
-          CMAttributeDeclaration ad = getCMAttributeDeclaration((Attr)node);
-          if (ad != null)
-          {
-            result = (ad.getUsage() == CMAttributeDeclaration.OPTIONAL);
-          }
-          break;
-        }
-        case Node.ELEMENT_NODE:
-        {
-          Node parentNode = node.getParentNode();
-          if (parentNode.getNodeType() == Node.ELEMENT_NODE)
-          {
-            Element parentElement = (Element)parentNode;
-            CMElementDeclaration ed = getCMElementDeclaration(parentElement);
-            if (ed != null)
-            {
-              List contentSpecificationList = getValidator().createContentSpecificationList(parentElement, ed);
-              int index = getIndexOfNode(parentElement.getChildNodes(), node);
-              result = getValidator().canRemove(ed, contentSpecificationList, index);
-            }
-          }
-          break;
-        }
-      }
-    }
-    return result;
-  }
-
-
-  public boolean canRemove(List nodeList, int validityChecking)
-  {
-    boolean result = true;
-
-    if (validityChecking == VALIDITY_STRICT)
-    {
-      Element parentElement = null;
-      List childList = null;
-
-      for (Iterator i = nodeList.iterator(); i.hasNext(); )
-      {
-        Node node = (Node)i.next();
-
-        if (parentElement == null)
-        {
-          parentElement = getParentOrOwnerElement(node);
-        }
-        else if (parentElement != getParentOrOwnerElement(node))
-        {
-          // make sure the parent are the same
-          result = false;
-          break;
-        }
-
-        if (parentElement == null)
-        {
-          result = true;
-          break;
-        }
-
-        int nodeType = node.getNodeType();
-        if (nodeType == Node.ATTRIBUTE_NODE)
-        {
-          if (!canRemove(node, validityChecking))
-          {
-            result = false;
-            break;
-          }
-        }
-        else
-        {
-          if (childList == null)
-          {
-            childList = nodeListToList(parentElement.getChildNodes());
-          }
-          childList.remove(node);
-        }
-      }
-
-      if (result && childList != null)
-      {
-        CMElementDeclaration ed = getCMElementDeclaration(parentElement);
-        if (ed != null)
-        {                                
-          List contentSpecificationList = getValidator().createContentSpecificationList(childList, ed);
-          result = getValidator().isValid(ed, contentSpecificationList);
-        }
-      }
-    }
-
-    return result;
-  }
-
-  public boolean canReplace(Element parent, int startIndex, int endIndex, CMNode cmNode, int validityChecking)
-  {
-    return true;
-  }
-
-  public boolean canReplace(Element parent, int startIndex, int endIndex, List cmNodeList, int validityChecking)
-  {
-    return true;
-  }     
-   
-  /**
-   * This method is experimental... use at your own risk
-   */
-  public boolean canWrap(Element childElement, CMElementDeclaration wrapElement, int validityChecking)
-  {                        
-    boolean result = true;  
-    Node parentNode = childElement.getParentNode();                      
-    if (parentNode.getNodeType() == Node.ELEMENT_NODE)
-    {           
-      Element parentElement = (Element)parentNode;      
-      CMElementDeclaration parentEd = getCMElementDeclaration(parentElement);
-      if (parentEd != null)
-      {                                                                                         
-        if (validityChecking == VALIDITY_STRICT)
-        {
-          int index = getIndexOfNode(parentElement.getChildNodes(), childElement);
-
-          List contentSpecificationList = getValidator().createContentSpecificationList(parentElement, parentEd);
-          List subList = contentSpecificationList.subList(index, index + 1);
-          result = getValidator().canReplace(parentEd, contentSpecificationList, index, index, wrapElement);
-          if (result)
-          {
-            result = getValidator().isValid(wrapElement, subList);
-          }
-        }
-      }
-    }
-    else
-    {
-      result = false;
-    }                
-    return result;
-  }
-
-  public void getInsertActions(Element parent, CMElementDeclaration ed, int index, int includeOptions, int validityChecking, List actionList)
-  {
-    modelQueryActionHelper.getInsertActions(parent, ed, index, includeOptions, validityChecking, actionList);
-  }
-
-  public void getInsertActions(Document parent, CMDocument cmDocument, int index, int includeOptions, int validityChecking, List actionList)
-  {
-    modelQueryActionHelper.getInsertActions(parent, cmDocument, index, includeOptions, validityChecking, actionList);
-  }
-
-  public void getReplaceActions(Element parent, CMElementDeclaration ed, int includeOptions, int validityChecking, List actionList)
-  {
-    modelQueryActionHelper.getReplaceActions(parent, ed, includeOptions, validityChecking, actionList);
-  }                     
-
-  public void getReplaceActions(Element parent, CMElementDeclaration ed, List selectedChildren, int includeOptions, int validityChecking, List actionList)
-  {
-    modelQueryActionHelper.getReplaceActions(parent, ed, selectedChildren, includeOptions, validityChecking, actionList);
-  }
-
-  public void getInsertChildNodeActionTable(Element parent, CMElementDeclaration ed, int validityChecking, Hashtable actionTable)
-  {
-    modelQueryActionHelper.getInsertChildNodeActionTable(parent, ed, validityChecking, actionTable);
-  }
-
-  public void getActionTable(Element parent, CMElementDeclaration ed, int index, int validityChecking, Hashtable actionTable)
-  {
-    //modelQueryActionHelper.getAllActions(parent, ed, validityChecking, actionList);
-  }
-
-
-  // some helper methods
-  //
-  protected Node getParentOrOwnerNode(Node node)
-  {
-    return (node.getNodeType() == Node.ATTRIBUTE_NODE) ?
-           ((Attr)node).getOwnerElement() :
-           node.getParentNode();
-  }
-
-  protected Element getParentOrOwnerElement(Node node)
-  {
-    Node parent = getParentOrOwnerNode(node);
-    return (parent.getNodeType() == Node.ELEMENT_NODE) ? (Element)parent : null;
-  }
-               
-
-  protected List nodeListToList(NodeList nodeList)
-  {
-    int size = nodeList.getLength();
-    Vector v = new Vector(size);
-    for (int i = 0; i < size; i++)
-    {
-      v.add(nodeList.item(i));
-    }
-    return v;
-  }   
-   
-  /**
-  protected List getCMNodeList(NodeList nodeList)
-  {
-    int size = nodeList.getLength();
-    Vector v = new Vector(size);
-    for (int i = 0; i < size; i++)
-    {
-      v.add(getCMNode(nodeList.item(i));
-    }
-    return v;
-  }
-  */  
-
-  public class AvailableContentCMVisitor extends CMVisitor
-  {
-    public Hashtable childNodeTable = new Hashtable();
-    public Hashtable attributeTable = new Hashtable();
-    public Element rootElement;
-    public CMElementDeclaration rootElementDeclaration; 
-    public boolean isRootVisited;
-    protected boolean includeSequenceGroups;
-
-    public AvailableContentCMVisitor(Element rootElement, CMElementDeclaration rootElementDeclaration)
-    {                                     
-      this.rootElement = rootElement;
-      this.rootElementDeclaration = rootElementDeclaration;
-    }
-
-    protected String getKey(CMNode cmNode)
-    {
-      String key = cmNode.getNodeName();
-      CMDocument cmDocument = (CMDocument)cmNode.getProperty("CMDocument");
-      if (cmDocument != null)
-      {                         
-        String namespaceURI = (String)cmDocument.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI");   
-        if (namespaceURI != null)
-        {   
-          key = "[" + namespaceURI + "]" + key;
-        }
-      }
-      return key;
-    }
-
-    public List computeAvailableContent(int includeOptions)
-    {                   
-      Vector v = new Vector();  
-
-      int contentType = rootElementDeclaration.getContentType();
-      includeSequenceGroups = ((includeOptions & INCLUDE_SEQUENCE_GROUPS) != 0);
-      visitCMNode(rootElementDeclaration);
-      
-      if ((includeOptions & INCLUDE_ATTRIBUTES) != 0)
-      {
-        v.addAll(attributeTable.values());
-        CMAttributeDeclaration nillableAttribute = (CMAttributeDeclaration)rootElementDeclaration.getProperty("http://org.eclipse.wst/cm/properties/nillable");
-        if (nillableAttribute != null)
-        {
-          v.add(nillableAttribute);
-        }
-      }  
-
-      if ((includeOptions & INCLUDE_CHILD_NODES) != 0)
-      {      
-        if (contentType == CMElementDeclaration.MIXED ||
-            contentType == CMElementDeclaration.ELEMENT)
-        {
-          v.addAll(childNodeTable.values());
-        }
-        else if (contentType == CMElementDeclaration.ANY)
-        {      
-          CMDocument cmDocument =  (CMDocument)rootElementDeclaration.getProperty("CMDocument");
-          if (cmDocument != null)
-          {
-            CMNamedNodeMap elements = cmDocument.getElements();            
-            for (Iterator i = elements.iterator(); i.hasNext(); )
-            {
-              v.add(i.next());
-            } 
-          }
-        }
-              
-        if (contentType == CMElementDeclaration.MIXED ||
-            contentType == CMElementDeclaration.PCDATA || 
-            contentType == CMElementDeclaration.ANY)
-        {
-          CMDataType dataType = rootElementDeclaration.getDataType();
-          if (dataType != null)
-          {
-            v.add(dataType);
-          }                                       
-        }
-      }
-      return v;
-    }   
-
-    public void visitCMAnyElement(CMAnyElement anyElement)
-    {            
-      String uri = anyElement.getNamespaceURI();                          
-      List list = getCMDocumentList(rootElement, rootElementDeclaration, uri);
-      for (Iterator iterator = list.iterator(); iterator.hasNext(); )
-      {
-        CMDocument cmdocument = (CMDocument)iterator.next();
-        if (cmdocument != null)
-        {                          
-          CMNamedNodeMap map = cmdocument.getElements();
-          int size = map.getLength();
-          for (int i = 0; i < size; i++)
-          {                       
-            CMNode ed = map.item(i);                  
-
-            childNodeTable.put(getKey(ed), ed);
-          }        
-        }                
-      }
-    }
-
-    public void visitCMAttributeDeclaration(CMAttributeDeclaration ad)
-    {
-      super.visitCMAttributeDeclaration(ad);
-      attributeTable.put(ad.getNodeName(), ad);
-    }
-
-    public void visitCMElementDeclaration(CMElementDeclaration ed)
-    {
-      if (ed == rootElementDeclaration && !isRootVisited)
-      {
-        isRootVisited = true;
-        super.visitCMElementDeclaration(ed);
-      }
-      else
-      {                                                                                  
-        if (!Boolean.TRUE.equals(ed.getProperty("Abstract")))
-        {
-          childNodeTable.put(getKey(ed), ed);
-        }
-
-        CMNodeList substitutionGroup = (CMNodeList)ed.getProperty("SubstitutionGroup");
-        if (substitutionGroup != null)
-        {
-          handleSubstitutionGroup(substitutionGroup);
-        }
-      }
-    }                                              
-
-    protected void handleSubstitutionGroup(CMNodeList substitutionGroup)
-    {
-      int substitutionGroupLength = substitutionGroup.getLength();
-      if (substitutionGroupLength > 1)
-      {
-        for (int i = 0; i < substitutionGroupLength; i++)
-        {
-          CMNode ed = substitutionGroup.item(i);
-          if (!Boolean.TRUE.equals(ed.getProperty("Abstract")))
-          {
-            childNodeTable.put(getKey(ed), ed);
-          }
-        }
-      }
-    }
-
-    public void visitCMGroup(CMGroup group)
-    {
-      if (includeSequenceGroups)
-      {
-        if (group.getOperator() == CMGroup.SEQUENCE &&
-            group.getChildNodes().getLength() > 1 &&
-            includesRequiredContent(group))
-        {                                        
-          childNodeTable.put(group, group);
-        }
-      }  
-      super.visitCMGroup(group);
-    }   
-
-    public boolean includesRequiredContent(CMGroup group)
-    {
-      List list = getValidator().createContentSpecificationList(group);
-      return list.size() > 1;
-    }
-  }    
-
- 
-  /**
-   * @deprected - use getPossibleDataTypeValues()
-   */
-  public List getDataTypeValues(Element element, CMNode cmNode)
-  {                                                                             
-    return Arrays.asList(getPossibleDataTypeValues(element, cmNode));
-  }
-  
-  /**
-   * This methods return an array of possible values corresponding to the datatype of the CMNode (either an CMAttributeDeclaration or a CMElementDeclaration)
-   */
-  public String[] getPossibleDataTypeValues(Element element, CMNode cmNode)
-  {
-    List list = new Vector();                            
-                               
-    if (cmNode != null)
-    {       
-      CMDataType dataType = null;
-      if (cmNode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION)
-      {
-        dataType = ((CMAttributeDeclaration)cmNode).getAttrType();
-      }
-      else if (cmNode.getNodeType() == CMNode.ELEMENT_DECLARATION)
-      {
-        dataType = ((CMElementDeclaration)cmNode).getDataType();
-      }         
-     
-      String[] enumeratedValues = dataType != null ? dataType.getEnumeratedValues() : null;      
-      if (enumeratedValues != null)
-      {
-        for (int i = 0; i < enumeratedValues.length; i++)
-        {
-          list.add(enumeratedValues[i]);
-        } 
-      }                              
-    }
-                         
-    addValuesForXSIType(element, cmNode, list);
-    
-    if (extensionManager != null)
-    {                    
-      list.addAll(extensionManager.getDataTypeValues(element, cmNode));
-    }          
-                        
-    int listSize = list.size();
-    String[] result = new String[listSize];
-    for (int i = 0; i < listSize; i++)
-    {
-      result[i] = (String)list.get(i);
-    }     
-    return result;
-  }    
-
-           
-  protected void addValuesForXSIType(Element element, CMNode cmNode, List list)
-  {               
-    if (cmNode != null && cmNode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION) 
-    {                         
-      CMAttributeDeclaration ad = (CMAttributeDeclaration)cmNode;                              
-      if (valueHelper.isXSIType(ad))
-      {             
-        NamespaceTable table = new NamespaceTable(element.getOwnerDocument());
-        table.addElementLineage(element);
-        list.addAll(valueHelper.getQualifiedXSITypes(ad, table));     
-      }
-    }
-  }
-    
-
-  public ModelQueryExtensionManager getExtensionManager()
-  {
-    return extensionManager;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/SimpleAssociationProvider.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/SimpleAssociationProvider.java
deleted file mode 100644
index 0331531..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/SimpleAssociationProvider.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryCMProvider;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- *
- */
-public class SimpleAssociationProvider extends BaseAssociationProvider
-{
-  protected ModelQueryCMProvider modelQueryCMProvider;
-          
-  public SimpleAssociationProvider(ModelQueryCMProvider modelQueryCMProvider)
-  {                                              
-    this.modelQueryCMProvider = modelQueryCMProvider;
-  }
-
-  public CMDocument getCorrespondingCMDocument(Node node)
-  {
-    return modelQueryCMProvider.getCorrespondingCMDocument(node);
-  }
-  
-  public CMElementDeclaration getCMElementDeclaration(Element element)
-  {
-    CMElementDeclaration result = null;
-    CMDocument cmDocument = getCorrespondingCMDocument(element);
-    if (cmDocument != null)
-    {        
-      result = (CMElementDeclaration)cmDocument.getElements().getNamedItem(element.getNodeName());    
-    }
-    return result;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/XMLAssociationProvider.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/XMLAssociationProvider.java
deleted file mode 100644
index 53de3da..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/modelqueryimpl/XMLAssociationProvider.java
+++ /dev/null
@@ -1,402 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentReferenceProvider;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceTable;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-/**
- *
- */
-public abstract class XMLAssociationProvider extends BaseAssociationProvider implements CMDocumentReferenceProvider
-{              
-  protected CMDocumentCache cmDocumentCache; 
-  protected CMDocumentManagerImpl documentManager;
-
-  public XMLAssociationProvider(CMDocumentCache cmDocumentCache)
-  {
-    this.cmDocumentCache = cmDocumentCache; 
-    documentManager = new CMDocumentManagerImpl(cmDocumentCache, this);
-  }                              
-
-  public CMDocumentManager getCMDocumentManager()
-  {
-    return documentManager;
-  }
- 
-      
-  public static String[] getDoctypeInfo(Document document)
-  {   
-    String[] result = null;
-    DocumentType doctype = document.getDoctype();
-
-    // defect 206833 ... here we test for DTDs that are declared inline
-    // since we currently have no way of making use of inline DTDs we ingore them
-    // so that the implict DTD (if any) can be used
-    if (doctype != null && (doctype.getPublicId() != null || doctype.getSystemId() != null))
-    {
-      result = new String[2];
-      result[0] = doctype.getPublicId();
-      result[1] = doctype.getSystemId();
-    }   
-    else if (getImplictDoctype(document) != null)
-    {
-      result = getImplictDoctype(document);
-    }                  
-    return result;
-  }   
-
-
-  protected static String[] getImplictDoctype(Document document)
-  { 
-    String[] result = null;
-    /*
-    DOMExtension domExtension = DOMExtensionProviderRegistry.getInstance().getDOMExtension(document);
-    if (domExtension != null)
-    {
-      result = domExtension.getImplicitDoctype();
-    }*/
-    return result;
-  }
-
-  public CMDocument getCorrespondingCMDocument(Node node)
-  {        
-    return getCorrespondingCMDocument(node, true);
-  }
-
-  protected CMDocument getCorrespondingCMDocument(Node node, boolean getDocumentFromCMNode)
-  {            
-    CMDocument result = null;
-    try
-    {
-      Document document = node.getNodeType() == Node.DOCUMENT_NODE ? (Document)node : node.getOwnerDocument();
-   
-      String[] doctypeInfo = getDoctypeInfo(document);
-
-      if (doctypeInfo != null)
-      {
-        result = getCMDocument(doctypeInfo[0], doctypeInfo[1], "DTD");
-      }                                             
-      // defect 211236 ... in some cases calling this method can result in a cycle
-      // we use the getDocumentFromCMNode as a flag to avoid this 
-      // TODO... see if there is a way to re-organize to avoid the need for this flag
-      else if (getDocumentFromCMNode)
-      {
-        CMNode cmNode = getCMNode(node);
-        if (cmNode != null)       
-        {                
-          // todo... add a getCMDocument() methods to CMNode
-          // for now use the getProperty interface
-          result = (CMDocument)cmNode.getProperty("CMDocument");
-        }
-      }
-    }
-    catch (Exception e)
-    {
-      e.printStackTrace();
-    }
-    return result;
-  }    
-
-      
-  public CMDocument getCMDocument(Element element, String uri)
-  {
-    CMDocument result = null;
-    NamespaceTable namespaceTable = new NamespaceTable(element.getOwnerDocument());
-    namespaceTable.addElementLineage(element);
-    NamespaceInfo namespaceInfo = namespaceTable.getNamespaceInfoForURI(uri);
-    if (namespaceInfo != null)
-    {
-      result = getCMDocument(namespaceInfo.uri, namespaceInfo.locationHint, "XSD");
-    }
-    return result;
-  }         
-  
-                          
-  public CMDocument getCMDocument(String publicId, String systemId, String type)
-  {                   
-    //String resolvedGrammarURI = resolveGrammarURI(document, publicId, systemId);
-    return documentManager.getCMDocument(publicId, systemId, type);  
-  }
-
-  //public CMDocument getCMDocument(Document document, String publicId, String systemId)
-  //{                   
-  //  //String resolvedGrammarURI = resolveGrammarURI(document, publicId, systemId);
-  //  return documentManager.getCMDocument(publicId, systemId);  
-  //}
-   
-  public String resolveGrammarURI(String publicId, String systemId)
-  {
-    return resolveGrammarURI(null, publicId, systemId);
-  }
-
-
-  /**
-   * This method should be specialized in order to implement specialized uri resolution
-   */
-  protected String resolveGrammarURI(Document document, String publicId, String systemId)
-  {
-    return systemId;
-  }
-  
-
-  public CMElementDeclaration getCMElementDeclaration(Element element)
-  { 
-    CMElementDeclaration result = null; 
-    Document document = element.getOwnerDocument();
-    String[] doctypeInfo = getDoctypeInfo(document);
-    if (doctypeInfo != null)
-    {   
-      // we have detected doctype information so we assume that we can locate the CMElementDeclaration 
-      // in the CMDocument's table of global elements 
-      CMDocument cmDocument = getCorrespondingCMDocument(element, false);
-
-      // TODO... consider replacing above with 
-      // CMDocument cmDocument = getCMDocument(document, doctypeInfo[0], doctypeInfo[1]);
-
-      if (cmDocument != null)
-      {        
-        result = (CMElementDeclaration)cmDocument.getElements().getNamedItem(element.getNodeName());    
-                 
-        // this is a hack to get our xsl code assist working... we might want to handle similar
-        // grammar behaviour via some established model query setting 
-        if (result == null && getImplictDoctype(document) != null)
-        {         
-          Node parent = element.getParentNode();
-          if (parent != null && parent.getNodeType() == Node.ELEMENT_NODE)
-          {
-            result = getCMElementDeclaration((Element)parent);
-          }
-        }
-      }
-    }    
-    else
-    {  
-      // here we use a namespaceTable to consider if the root element has any namespace information
-      //
-      NamespaceTable namespaceTable = new NamespaceTable(element.getOwnerDocument());
-      List list = NamespaceTable.getElementLineage(element);
-      Element rootElement = (Element)list.get(0);
-      namespaceTable.addElement(rootElement);
-         
-      if (namespaceTable.isNamespaceEncountered())
-      {                                         
-        // we assume that this is an XMLSchema style namespace aware document
-        result = getCMElementDeclaration(element, list, namespaceTable);
-      }
-      else
-      { 
-        // we assume that this is an inferred CMDocument for a DTD style 'namespaceless' document
-        CMDocument cmDocument = getCMDocument("", "", "DTD");
-        if (cmDocument != null)
-        {
-          result = (CMElementDeclaration)cmDocument.getElements().getNamedItem(element.getNodeName()); 
-        }
-      }
-    }             
-    return result;
-  } 
-     
-
-  protected CMElementDeclaration getCMElementDeclaration(Element targetElement, List list, NamespaceTable namespaceTable)
-  {         
-    CMElementDeclaration currentED = null;
-    try
-    {    
-      int listSize = list.size();
-      for (int i = 0; i < listSize; i++)
-      {
-        Element element = (Element)list.get(i);                                     
-                    
-        if (i != 0)
-        {
-          namespaceTable.addElement(element);                        
-        }
-
-        String nodeName = element.getNodeName();
-        String unprefixedName = DOMNamespaceHelper.getUnprefixedName(nodeName);
-        String prefix = DOMNamespaceHelper.getPrefix(nodeName);
- 
-        CMElementDeclaration ed = null;
- 
-        // see if the element is a local of the currentED
-        //             
-        if (currentED != null)
-        {  
-          ed = (CMElementDeclaration)currentED.getLocalElements().getNamedItem(unprefixedName);
-        } 
-                                                                   
-        if (ed == null) 
-        {               
-          NamespaceInfo namespaceInfo = namespaceTable.getNamespaceInfoForPrefix(prefix);                   
-          if (namespaceInfo != null) 
-          {
-            CMDocument cmDocument = getCMDocument(namespaceInfo.uri, namespaceInfo.locationHint, "XSD");
-            if (cmDocument != null)
-            { 
-              ed = (CMElementDeclaration)cmDocument.getElements().getNamedItem(unprefixedName);   
-            }                                        
-          }
-        }                                                   
-        currentED = ed;     
-
-        // handle XSIType     
-        if (currentED != null)
-        {
-          CMElementDeclaration derivedED = getDerivedCMElementDeclaration(element, currentED, namespaceTable);
-          if (derivedED != null)
-          {                           
-            currentED = derivedED;
-          }    
-        }
-      }                                       
-    }
-    catch (Exception e)
-    { 
-      e.printStackTrace();
-    } 
-  
-    return currentED;
-  }  
-      
-
-  protected CMElementDeclaration getDerivedCMElementDeclaration(Element element, CMElementDeclaration ed, NamespaceTable namespaceTable)
-  {                      
-    CMElementDeclaration result = null;
-    String xsiPrefix = namespaceTable.getPrefixForURI("http://www.w3.org/2001/XMLSchema-instance");
-    if (xsiPrefix != null)
-    {
-      String xsiTypeValue = element.getAttribute(xsiPrefix + ":type");
-      if (xsiTypeValue != null)
-      {  
-        String typePrefix = DOMNamespaceHelper.getPrefix(xsiTypeValue);
-        String typeName = DOMNamespaceHelper.getUnprefixedName(xsiTypeValue);
-        String typeURI = namespaceTable.getURIForPrefix(typePrefix);
-        String uriQualifiedTypeName = typeName;
-        if (typeURI != null && typeURI.length() > 0) 
-        {
-          uriQualifiedTypeName = "[" +  typeURI + "]" + typeName;
-        }
-        result = (CMElementDeclaration)ed.getProperty("DerivedElementDeclaration=" + uriQualifiedTypeName);  
-      }
-    }                                                                                                    
-    return result;
-  }   
-
-
-  public CMAttributeDeclaration getCMAttributeDeclaration(Attr attr)
-  {
-    CMAttributeDeclaration result = null;
-    Element element = attr.getOwnerElement();
-    if (element != null)
-    {
-      CMElementDeclaration ed = getCMElementDeclaration(element);
-      if (ed != null)
-      {                                                
-        result = (CMAttributeDeclaration)ed.getAttributes().getNamedItem(attr.getName());
-        if (result == null)
-        {                                              
-          // try to get the unprefixed name             
-          String name = DOMNamespaceHelper.getUnprefixedName(attr.getName());
-          result = (CMAttributeDeclaration)ed.getAttributes().getNamedItem(name);
-        }                                                                        
-        if (result == null)
-        {
-          // todo... perhaps this is a globally defined attribute... 
-        }
-      }
-    }
-    return result;
-  }               
-
-  /**
-   * This method returns a list of CMDocumentReferences associated with a particular node or subtree
-   */                                                                                                          
-  public List getCMDocumentReferences(Node node, boolean deep)
-  { 
-    List result = new ArrayList();  
-    Document document = (node.getNodeType() == Node.DOCUMENT_NODE) ? (Document)node : node.getOwnerDocument();
-    DocumentType doctype = document.getDoctype();
-    // defect 206833 ... here we test for DTDs that are declared inline
-    // since we currently have no way of making use of inline DTDs we ingore them
-    // so that the implict DTD (if any) can be used
-    if (doctype != null && (doctype.getPublicId() != null || doctype.getSystemId() != null))
-    {                                                                               
-      String uri = resolveGrammarURI(document, doctype.getPublicId(), doctype.getSystemId());
-      result.add(new CMDocumentReferenceImpl(doctype.getPublicId(), uri));
-    }   
-    else if (getImplictDoctype(document) != null)
-    {                  
-      String[] implicitDoctype = getImplictDoctype(document);
-      String uri = resolveGrammarURI(document, implicitDoctype[0], implicitDoctype[1]);
-      result.add(new CMDocumentReferenceImpl(implicitDoctype[0], uri));
-    }                              
-    else
-    {   
-      NamespaceTable namespaceTable = new NamespaceTable(document);
-      if (node.getNodeType() == Node.ELEMENT_NODE)
-      {
-		    namespaceTable.addElement((Element)node);
-      }                                     
-      if (deep)
-      {
-        addChildElementsToNamespaceTable(node, namespaceTable);
-      }
-	    List list = namespaceTable.getNamespaceInfoList();
-		  for (Iterator i = list.iterator(); i.hasNext();) 
-      {
-			  NamespaceInfo info = (NamespaceInfo) i.next();    
-        String uri = resolveGrammarURI(document, info.uri, info.locationHint);
-        result.add(new CMDocumentReferenceImpl(info.uri, uri));
-		  }	
-    } 
-    return result;
-  }
-
-  protected void addChildElementsToNamespaceTable(Node node, NamespaceTable namespaceTable)
-  {
-    NodeList nodeList = node.getChildNodes();
-	  if (nodeList != null) 
-    {
-		  int nodeListLength = nodeList.getLength();
-		  for (int i = 0; i < nodeListLength; i++) 
-      {
-			  Node childNode = nodeList.item(i);
-        if (childNode.getNodeType() == Node.ELEMENT_NODE)
-        {   
-          namespaceTable.addElement((Element)childNode);
-          addChildElementsToNamespaceTable(childNode, namespaceTable);
-        }
-		  }
-	  }
-  }  
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDescriptionBuilder.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDescriptionBuilder.java
deleted file mode 100644
index 18e651d..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDescriptionBuilder.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-
-public class CMDescriptionBuilder extends CMVisitor
-{
-  protected StringBuffer sb;
-  protected CMNode root;
-  protected boolean isRootVisited;
-
-  public String buildDescription(CMNode node)
-  {
-    sb = new StringBuffer();
-    root = node;
-    isRootVisited = false;
-    visitCMNode(node);
-    return sb.toString();
-  }       
-
-  public void visitCMAnyElement(CMAnyElement anyElement)
-  {
-    sb.append("namespace:uri=\"" + anyElement.getNamespaceURI() + "\"");
-  }
-
-  public void visitCMDataType(CMDataType dataType)
-  {
-    sb.append("#PCDATA");
-  }
-
-  public void visitCMDocument(CMDocument document)
-  {
-    CMNamedNodeMap map = document.getElements();
-    int size = map.getLength();
-    for (int i = 0; i < size; i++)
-    {
-      visitCMNode(map.item(i));
-    }
-  }
-
-  public void visitCMGroup(CMGroup group)
-  {
-    int op = group.getOperator();
-    if (op == CMGroup.ALL)
-    {
-      sb.append("all");
-    }
-
-    sb.append("(");
-
-    String separator = ", ";
-
-    if (op == CMGroup.CHOICE)
-    {
-      separator = " | ";
-    }
-
-    CMNodeList nodeList = group.getChildNodes();
-    int size = nodeList.getLength();
-    for (int i = 0; i < size; i++)
-    {
-      visitCMNode(nodeList.item(i));
-      if (i < size - 1)
-      {
-        sb.append(separator);
-      }
-    }
-    sb.append(")");
-    addOccurenceSymbol(group);
-  }
-
-  public void visitCMElementDeclaration(CMElementDeclaration ed)
-  {
-    if (ed == root && !isRootVisited)
-    {
-      isRootVisited = true;
-      CMContent content = ed.getContent();
-      if (content != null)
-      {
-        if (content.getNodeType() != CMNode.GROUP)
-        {
-          sb.append("(");
-          visitCMNode(content);
-          sb.append(")");
-        }
-        else
-        {
-          visitCMNode(content);
-        }
-      }
-    }
-    else
-    {
-      sb.append(ed.getElementName());
-      addOccurenceSymbol(ed);
-    }
-  }
-
-  public void addOccurenceSymbol(CMContent content)
-  {
-    int min = content.getMinOccur();
-    int max = content.getMaxOccur();
-    if (min == 0)
-    {
-      if (max > 1 || max == -1)
-      {
-        sb.append("*");
-      }
-      else
-      {
-        sb.append("?");
-      }
-    }
-    else if (max > 1 || max == -1)
-    {
-      sb.append("+");
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDocumentCache.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDocumentCache.java
deleted file mode 100644
index 961878a..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDocumentCache.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.util.ArrayList;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-
-
-/**
- *
- */
-public class CMDocumentCache
-{                                     
-  public static final int STATUS_NOT_LOADED = 0;
-  public static final int STATUS_LOADING    = 2;
-  public static final int STATUS_LOADED     = 3;
-  public static final int STATUS_ERROR      = 4;
-
-  protected class Entry
-  {
-    public String uri;
-    public int status = STATUS_NOT_LOADED;
-    public float progress;
-    public CMDocument cmDocument;
-
-    public Entry(String uri)
-    {                      
-      this.uri = uri;         
-    }
-
-    public Entry(String uri, int status, CMDocument cmDocument)
-    {                                     
-      this.uri = uri;
-      this.status = status;      
-      this.cmDocument = cmDocument;
-    }
-  }
-
-  protected Hashtable hashtable;
-  protected List listenerList = new Vector();
-
-
-  /**
-   * temporarily public until caching problem is solved
-   */
-  public CMDocumentCache()
-  {
-    hashtable = new Hashtable();
-  }
-
-  public void addListener(CMDocumentCacheListener listener)
-  {
-    listenerList.add(listener);
-  }
-
-  public void removeListener(CMDocumentCacheListener listener)
-  {
-    listenerList.remove(listener);
-  }   
-
-  /**
-   *
-   */
-  public CMDocument getCMDocument(String grammarURI)
-  {
-    CMDocument result = null;
-    if (grammarURI != null)
-    {  
-      Entry entry = (Entry)hashtable.get(grammarURI);
-      if (entry != null)
-      {
-        result = entry.cmDocument;
-      }   
-    }
-    return result;
-  }    
-
-  /**
-   *
-   */
-  public int getStatus(String grammarURI)
-  {
-    int result = STATUS_NOT_LOADED;
-    if (grammarURI != null)
-    {  
-      Entry entry = (Entry)hashtable.get(grammarURI);
-      if (entry != null)
-      {
-        result = entry.status;
-      }      
-      
-    }
-    return result;
-  }            
-            
-  /**
-   *
-   */
-  protected Entry lookupOrCreate(String grammarURI)
-  {
-    Entry entry = (Entry)hashtable.get(grammarURI);
-    if (entry == null)
-    {
-      entry = new Entry(grammarURI);                       
-      hashtable.put(grammarURI, entry);
-    }
-    return entry;
-  }
-
-    
-  /**
-   *
-   */
-  public void putCMDocument(String grammarURI, CMDocument cmDocument)
-  {                                    
-    if (grammarURI != null && cmDocument != null)
-    {                           
-      Entry entry = lookupOrCreate(grammarURI);
-      int oldStatus = entry.status;
-      entry.status = STATUS_LOADED;
-      entry.cmDocument = cmDocument;  
-      notifyCacheUpdated(grammarURI, oldStatus, entry.status, entry.cmDocument);  
-    }
-  }
-     
-  /**
-   *
-   */
-  public void setStatus(String grammarURI, int status)
-  {
-    if (grammarURI != null)
-    {
-      Entry entry = lookupOrCreate(grammarURI);
-      int oldStatus = entry.status;
-      entry.status = status;
-      notifyCacheUpdated(grammarURI, oldStatus, entry.status, entry.cmDocument);   
-    }
-  }
-     
-  /**
-   *
-   */
-  public void clear()
-  {
-    hashtable.clear();
-    notifyCacheCleared();
-  }  
-
-  /**
-   *
-   */
-  protected void notifyCacheUpdated(String uri, int oldStatus, int newStatus, CMDocument cmDocument)
-  {      
-    List list = new Vector();
-    list.addAll(listenerList);
-    for (Iterator i = list.iterator(); i.hasNext(); )
-    {
-      CMDocumentCacheListener listener = (CMDocumentCacheListener)i.next();
-      listener.cacheUpdated(this, uri, oldStatus, newStatus, cmDocument);
-    }
-  }
-
-  /**
-   *
-   */
-  protected void notifyCacheCleared()
-  {     
-    List list = new Vector();
-    list.addAll(listenerList);
-    for (Iterator i = list.iterator(); i.hasNext(); )
-    {
-      CMDocumentCacheListener listener = (CMDocumentCacheListener)i.next();
-      listener.cacheCleared(this);
-    }
-  }
-  
-  public List getCMDocuments()
-  {
-  	List list = new ArrayList();  	
-  	for (Iterator i = hashtable.values().iterator(); i.hasNext(); )
-  	{
-  		Entry entry = (Entry)i.next();
-  		list.add(entry.cmDocument);
-  	}
-  	return list;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDocumentCacheListener.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDocumentCacheListener.java
deleted file mode 100644
index 4843d1e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMDocumentCacheListener.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-
-/**
- * todo... add more interface methods
- */
-public interface CMDocumentCacheListener
-{
-  /** Tells the client that the cache has been cleared.
-   *  This gives clients an opportunity to flush any state that depends on the CMDocument
-   *  since this CMDocument will be recomputed on a subsequent 'lookup' request
-   */
-  public void cacheCleared(CMDocumentCache cache); 
-
-  /** 
-   *  Tells the client that the cache has been updated.  
-   */
-  public void cacheUpdated(CMDocumentCache cache, String uri, int oldStatus, int newStatus, CMDocument cmDocument);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMVisitor.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMVisitor.java
deleted file mode 100644
index 68f78a7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/CMVisitor.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-
-public class CMVisitor
-{
-  protected int indent = 0;
-
-  public void visitCMNode(CMNode node)
-  {
-    if (node != null)
-    {
-      //ContentModelManager.printlnIndented("visitCMNode : " + node.getNodeName() + " " + node);
-      indent += 2;
-      int nodeType = node.getNodeType();
-      switch (nodeType)
-      {
-        case CMNode.ANY_ELEMENT :
-        {
-          visitCMAnyElement((CMAnyElement)node);
-          break;
-        }
-        case CMNode.ATTRIBUTE_DECLARATION :
-        {
-          visitCMAttributeDeclaration((CMAttributeDeclaration)node);
-          break;
-        }
-        case CMNode.DATA_TYPE :
-        {
-          visitCMDataType((CMDataType)node);
-          break;
-        }
-        case CMNode.DOCUMENT :
-        {
-          visitCMDocument((CMDocument)node);
-          break;
-        }
-        case CMNode.ELEMENT_DECLARATION :
-        {
-          visitCMElementDeclaration((CMElementDeclaration)node);
-          break;
-        }
-        case CMNode.GROUP :
-        {
-          visitCMGroup((CMGroup)node);
-          break;
-        }
-      }
-      indent -= 2;
-    }
-  }
-      
-  public void visitCMAnyElement(CMAnyElement anyElement)
-  {
-  }
-
-  public void visitCMAttributeDeclaration(CMAttributeDeclaration ad)
-  {
-  }
-
-  public void visitCMDataType(CMDataType dataType)
-  {
-  }
-
-  public void visitCMDocument(CMDocument document)
-  {
-    CMNamedNodeMap map = document.getElements();
-    int size = map.getLength();
-    for (int i = 0; i < size; i++)
-    {
-      visitCMNode(map.item(i));
-    }
-  }
-
-  public void visitCMGroup(CMGroup group)
-  {
-    CMNodeList nodeList = group.getChildNodes();
-    int size = nodeList.getLength();
-    for (int i = 0; i < size; i++)
-    {
-      visitCMNode(nodeList.item(i));
-    }
-  }
-
-  public void visitCMElementDeclaration(CMElementDeclaration ed)
-  {
-    CMNamedNodeMap nodeMap = ed.getAttributes();
-    int size = nodeMap.getLength();
-    for (int i = 0; i < size; i++)
-    {
-      visitCMNode(nodeMap.item(i));
-    }
-
-    visitCMNode(ed.getContent());
-
-    visitCMDataType(ed.getDataType());
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/ContentBuilder.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/ContentBuilder.java
deleted file mode 100644
index 841de74..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/ContentBuilder.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-
-                   
-/**
- * This class lets you traverse a 'CM' model providing callbacks to build content.
- */
-public class ContentBuilder extends CMVisitor
-{
-  public static final int BUILD_ALL_CONTENT = 1;
-  public static final int BUILD_ONLY_REQUIRED_CONTENT = 2;
-  protected int buildPolicy = BUILD_ALL_CONTENT;
-
-  protected boolean alwaysVisit;
-  protected Vector visitedCMElementDeclarationList = new Vector();
-
-  public ContentBuilder()
-  {
-  }
-                
-  public void setBuildPolicy(int buildPolicy)
-  {
-    this.buildPolicy = buildPolicy;
-  }
-
-  public int getBuildPolicy()
-  {
-    return buildPolicy;
-  }                
-           
-  protected void createAnyElementNode(CMAnyElement anyElement)
-  {
-  }
-
-  protected void createElementNodeStart(CMElementDeclaration ed)
-  {      
-  }
-
-  protected void createElementNodeEnd(CMElementDeclaration ed)
-  {
-  }
-
-  protected void createTextNode(CMDataType dataType)
-  {
-  } 
-
-  protected void createAttributeNode(CMAttributeDeclaration attribute)
-  {
-  } 
- 
-  public void visitCMElementDeclaration(CMElementDeclaration ed)
-  {
-    int forcedMin = (buildPolicy == BUILD_ALL_CONTENT || alwaysVisit) ? 1 : 0;
-    int min = Math.max(ed.getMinOccur(), forcedMin);                          
-    alwaysVisit = false;
-
-    if (min > 0 && !visitedCMElementDeclarationList.contains(ed))
-    {
-      visitedCMElementDeclarationList.add(ed);
-      for (int i = 1; i <= min; i++)
-      {       
-        createElementNodeStart(ed);       
-        
-        // instead of calling super.visitCMElementDeclaration()
-        // we duplicate the code with some minor modifications
-        CMNamedNodeMap nodeMap = ed.getAttributes();
-        int size = nodeMap.getLength();
-        for (int j = 0; j < size; j++)
-        {
-          visitCMNode(nodeMap.item(j));
-        }
-
-        CMContent content = ed.getContent();
-        if (content != null)
-        {
-          visitCMNode(content);
-        }
-
-        if (ed.getContentType() == CMElementDeclaration.PCDATA)
-        {
-          CMDataType dataType = ed.getDataType();
-          if (dataType != null)
-          {
-            visitCMDataType(dataType);
-          }
-        }
-        // end duplication
-        createElementNodeEnd(ed);  
-      }
-      int size = visitedCMElementDeclarationList.size();
-      visitedCMElementDeclarationList.remove(size - 1);
-    }
-  }
-    
-
-  public void visitCMDataType(CMDataType dataType)
-  {
-    createTextNode(dataType);   
-  }
-
-
-  public void visitCMGroup(CMGroup e)
-  { 
-    int forcedMin = (buildPolicy == BUILD_ALL_CONTENT || alwaysVisit) ? 1 : 0;
-    int min = Math.max(e.getMinOccur(), forcedMin);                          
-    alwaysVisit = false;
-
-    for (int i = 1; i <= min; i++)
-    {   
-      if (e.getOperator() == CMGroup.CHOICE)
-      {
-        // add only 1 element from the group
-        // todo... perhaps add something other than the first one        
-        CMNodeList nodeList = e.getChildNodes();
-        if (nodeList.getLength() > 0)
-        {
-          visitCMNode(nodeList.item(0));
-        }
-      }
-      else // SEQUENCE, ALL
-      {
-        // visit all of the content
-        super.visitCMGroup(e);
-      }
-    }
-  } 
-
-  public void visitCMAttributeDeclaration(CMAttributeDeclaration ad)
-  {
-    if (alwaysVisit ||
-        buildPolicy == BUILD_ALL_CONTENT ||
-        ad.getUsage() == CMAttributeDeclaration.REQUIRED)
-    {
-      createAttributeNode(ad);      
-    }
-  }                     
-  
-
-  public void visitCMAnyElement(CMAnyElement anyElement)
-  {  
-    int forcedMin = (buildPolicy == BUILD_ALL_CONTENT || alwaysVisit) ? 1 : 0;
-    alwaysVisit = false; 
-    int min = Math.max(anyElement.getMinOccur(), forcedMin);                          
-    for (int i = 1; i <= min; i++)
-    {                                
-      createAnyElementNode(anyElement);
-    }
-  }     
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMContentBuilder.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMContentBuilder.java
deleted file mode 100644
index e86ff9e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMContentBuilder.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.w3c.dom.Node;
-
-
-public interface DOMContentBuilder
-{
-  public static final int BUILD_OPTIONAL_ATTRIBUTES = 1;
-  public static final int BUILD_OPTIONAL_ELEMENTS = 1<<1;
-  public static final int BUILD_FIRST_CHOICE = 1<<2;
-  public static final int BUILD_TEXT_NODES = 1<<3;
-  public static final int BUILD_FIRST_SUBSTITUTION = 1<<4;
-  
-  public static final int 
-    BUILD_ONLY_REQUIRED_CONTENT =
-      BUILD_FIRST_CHOICE
-      | BUILD_TEXT_NODES;
-  public static final int 
-    BUILD_ALL_CONTENT = 
-      BUILD_OPTIONAL_ATTRIBUTES 
-      | BUILD_OPTIONAL_ELEMENTS 
-      | BUILD_FIRST_CHOICE
-      | BUILD_TEXT_NODES;
-      
-  public static final String PROPERTY_BUILD_BLANK_TEXT_NODES = "buildBlankTextNodes";
-  
-  public void setBuildPolicy(int buildPolicy);
-  public int  getBuildPolicy();
-  public void setProperty(String propertyName, Object value);
-  public Object getProperty(String propertyName);
-  public List getResult();
-  public void build(Node parent, CMNode child);
-  public void createDefaultRootContent(CMDocument cmDocument, CMElementDeclaration rootCMElementDeclaration) throws Exception;
-  public void createDefaultRootContent(CMDocument cmDocument, CMElementDeclaration rootCMElementDeclaration, List namespaceInfoList) throws Exception;
-  public void createDefaultContent(Node parent, CMElementDeclaration ed) throws Exception;
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMContentBuilderImpl.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMContentBuilderImpl.java
deleted file mode 100644
index 58870cd..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMContentBuilderImpl.java
+++ /dev/null
@@ -1,693 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Stack;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.internal.util.CMDataTypeValueHelper;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DOMImplementation;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-import org.w3c.dom.Text;
-
-                   
-/**
- * todo... common up this code with 'ContentBuilder'
- */
-public class DOMContentBuilderImpl extends CMVisitor implements DOMContentBuilder
-{
-  protected int buildPolicy = BUILD_ALL_CONTENT;
-  protected Hashtable propertyTable = new Hashtable();
-
-  protected boolean alwaysVisit = false;
-  protected List resultList;
-  protected Document document;
-  protected Node currentParent;  
-  protected Node topParent;
-  protected Vector visitedCMElementDeclarationList = new Vector();
-  protected boolean attachNodesToParent = true;
-  protected NamespaceTable namespaceTable;
-          
-  protected List namespaceInfoList;
-  protected Element rootElement; // this is used only teporarily via createDefaultRootContent
-  protected ExternalCMDocumentSupport externalCMDocumentSupport;
-
-  public boolean uglyTempHack;
-
-  protected CMDataTypeValueHelper valueHelper = new CMDataTypeValueHelper();
-  
-  protected int numOfRepeatableElements = 1;
-  protected Stack cmGroupStack = new Stack();
-
-  public interface ExternalCMDocumentSupport
-  {
-    public CMDocument getCMDocument(Element element, String uri);
-  }
-
-  public void setExternalCMDocumentSupport(ExternalCMDocumentSupport externalCMDocumentSupport)
-  {
-    this.externalCMDocumentSupport = externalCMDocumentSupport;
-  }
-
-  public DOMContentBuilderImpl(Document document)
-  {
-    this.document = document;
-    namespaceTable = new NamespaceTable(document);
-  }
-         
-  public void setBuildPolicy(int buildPolicy)
-  {
-    this.buildPolicy = buildPolicy;
-  }
-
-  public int getBuildPolicy()
-  {
-    return buildPolicy;
-  }
-
-  protected boolean buildAllContent(int policy)
-  {
-    return (policy & BUILD_ALL_CONTENT) == BUILD_ALL_CONTENT;
-  }
-    
-  protected boolean buildOptionalElements(int policy)
-  {
-    return (policy & BUILD_OPTIONAL_ELEMENTS) == BUILD_OPTIONAL_ELEMENTS;
-  }
-  
-  protected boolean buildOptionalAttributes(int policy)
-  {
-    return (policy & BUILD_OPTIONAL_ATTRIBUTES) == BUILD_OPTIONAL_ATTRIBUTES;
-  }
-
-  protected boolean buildFirstChoice(int policy)
-  {
-    return (policy & BUILD_FIRST_CHOICE) == BUILD_FIRST_CHOICE;
-  }
-  
-  protected boolean buildTextNodes(int policy)
-  {
-    return (policy & BUILD_TEXT_NODES) == BUILD_TEXT_NODES;
-  }
-  
-  protected boolean buildFirstSubstitution(int policy)
-  {
-    return (policy & BUILD_FIRST_SUBSTITUTION) == BUILD_FIRST_SUBSTITUTION;
-  }
-      
-  public List getResult()
-  {
-    return resultList;
-  }
-
-  public void setProperty(String propertyName, Object value)
-  {                         
-    propertyTable.put(propertyName, value);
-  }
-
-  public Object getProperty(String propertyName)
-  {
-    return propertyTable.get(propertyName);
-  }
-
-  public void build(Node parent, CMNode child)
-  {      
-    resultList = new Vector();
-    topParent = parent;
-    currentParent = parent;          
-    if (parent instanceof Element)
-    {
-      namespaceTable.addElementLineage((Element)parent);
-    }
-    attachNodesToParent = false;
-    alwaysVisit = true;
-    visitCMNode(child);
-  }
-
-  public void createDefaultRootContent(CMDocument cmDocument, CMElementDeclaration rootCMElementDeclaration, List namespaceInfoList) throws Exception
-  {                    
-    this.namespaceInfoList = namespaceInfoList;
-    createDefaultRootContent(cmDocument, rootCMElementDeclaration);
-  }
-
-  public void createDefaultRootContent(CMDocument cmDocument, CMElementDeclaration rootCMElementDeclaration) throws Exception
-  {
-    String grammarFileName = cmDocument.getNodeName();
-    if (!uglyTempHack)
-    {                                                                     
-      String piValue = "version=\"1.0\"";
-      String[] encodingInfo = (String[])cmDocument.getProperty("encodingInfo");
-      String encoding = encodingInfo != null ? encodingInfo[1] : null;           
-      if (encoding != null)
-      {
-        piValue += " encoding=\"" + encoding + "\"";
-      }
-      ProcessingInstruction pi = document.createProcessingInstruction("xml", piValue);
-      document.appendChild(pi);
-
-      // if we have a 'dtd' then add a DOCTYPE tag
-      //
-      if (grammarFileName != null && grammarFileName.endsWith("dtd"))
-      {
-        DOMImplementation domImpl = document.getImplementation();
-        DocumentType documentType = domImpl.createDocumentType(rootCMElementDeclaration.getElementName(), grammarFileName, grammarFileName);
-        document.appendChild(documentType);
-      }
-    }                       
-    
-    // if we have a schema add an xsi:schemaLocation attribute
-    //
-    if (grammarFileName != null && grammarFileName.endsWith("xsd") && namespaceInfoList != null)
-    {              
-      DOMNamespaceInfoManager manager = new DOMNamespaceInfoManager();    
-      String name = rootCMElementDeclaration.getNodeName();
-      if (namespaceInfoList.size() > 0)
-      {
-        NamespaceInfo info = (NamespaceInfo)namespaceInfoList.get(0);
-        if (info.prefix != null && info.prefix.length() > 0)
-        {
-          name = info.prefix + ":" + name;
-        }
-      }
-      rootElement = createElement(rootCMElementDeclaration, name, document);
-      manager.addNamespaceInfo(rootElement, namespaceInfoList, true);   
-    }
-    createDefaultContent(document, rootCMElementDeclaration);    
-  }
-
-  public void createDefaultContent(Node parent, CMElementDeclaration ed)
-  {
-    currentParent = parent;
-    alwaysVisit = true;           
-    visitCMElementDeclaration(ed);
-  }   
-
-  public String computeName(CMNode cmNode, Node parent)
-  {                   
-    String prefix = null;           
-    return DOMNamespaceHelper.computeName(cmNode, parent, prefix, namespaceTable);
-  }     
-
-  // overide the following 'create' methods to control how nodes are created
-  //
-  protected Element createElement(CMElementDeclaration ed, String name, Node parent)
-  {
-    return  document.createElement(name);
-  }
-
-  protected Attr createAttribute(CMAttributeDeclaration ad, String name, Node parent)
-  {
-    return  document.createAttribute(name);
-  }
-
-  protected Text createTextNode(CMDataType dataType, String value, Node parent)
-  {
-    return document.createTextNode(value);
-  }        
-                 
-  protected void handlePushParent(Element parent, CMElementDeclaration ed)
-  {
-  }   
-
-  protected void handlePopParent(Element element, CMElementDeclaration ed)
-  {
-  }
-  
-  // The range must be between 1 and 99.
-  public void setNumOfRepeatableElements(int i)
-  {
-  	numOfRepeatableElements = i;
-  }
-     
-  protected int getNumOfRepeatableElements()
-  {
-  	return numOfRepeatableElements;
-  }
-        
-  public void visitCMElementDeclaration(CMElementDeclaration ed)
-  {
-    int forcedMin = (buildOptionalElements(buildPolicy) || alwaysVisit) ? 1 : 0;
-    int min = Math.max(ed.getMinOccur(), forcedMin);
-    
-    // Correct the min value if the element is contained in
-    // a group.
-    if (!cmGroupStack.isEmpty())
-    {
-      CMGroup group = (CMGroup)cmGroupStack.peek();
-      int gmin = group.getMinOccur();
-      if (gmin == 0)
-        if (buildOptionalElements(buildPolicy))
-          ; // min = min
-        else
-          min = min * gmin; // min = 0
-      else
-          min = min * gmin;
-    }
-    
-    int max = Math.min(ed.getMaxOccur(), getNumOfRepeatableElements());
-    if (max < min)
-      max = min;
-    	                          
-    alwaysVisit = false;
-
-    // Note - ed may not be abstract but has substitutionGroups
-    // involved.
-    if (buildFirstSubstitution(buildPolicy) 
-        || isAbstract(ed)) // leave this for backward compatibility for now
-    {
-      // Note - To change so that if ed is optional, we do not 
-      // generate anything here.  
-      ed = getSubstitution(ed);
-      
-      // Note - the returned ed may be an abstract element in
-      // which case the xml will be invalid.
-    }
-
-    if (min > 0 && !visitedCMElementDeclarationList.contains(ed))
-    {
-      visitedCMElementDeclarationList.add(ed);
-      for (int i = 1; i <= max; i++)
-      {
-        // create an Element for each
-        Element element = null;
-        if (rootElement != null)                                                 
-        {
-          element = rootElement;
-          rootElement = null;
-        }                       
-        else
-        {
-          element = createElement(ed, computeName(ed, currentParent), currentParent);
-        }
-
-        // visit the children of the GrammarElement
-        Node oldParent = currentParent;
-        currentParent = element;
-        handlePushParent(element, ed);
-
-        namespaceTable.addElement(element);
-    
-        boolean oldAttachNodesToParent = attachNodesToParent;
-        attachNodesToParent = true;
-
-        // instead of calling super.visitCMElementDeclaration()
-        // we duplicate the code with some minor modifications
-        CMNamedNodeMap nodeMap = ed.getAttributes();
-        int size = nodeMap.getLength();
-        for (int j = 0; j < size; j++)
-        {
-          visitCMNode(nodeMap.item(j));
-        }
-
-        CMContent content = ed.getContent();
-        if (content != null)
-        {
-          visitCMNode(content);
-        }
-
-        if (ed.getContentType() == CMElementDeclaration.PCDATA)
-        {
-          CMDataType dataType = ed.getDataType();
-          if (dataType != null)
-          {
-            visitCMDataType(dataType);
-          }
-        }
-        // end duplication
-        attachNodesToParent = oldAttachNodesToParent;
-        handlePopParent(element, ed);
-        currentParent = oldParent;    
-        linkNode(element);
-      }
-      int size = visitedCMElementDeclarationList.size();
-      visitedCMElementDeclarationList.remove(size - 1);
-    }
-  }
-
-
-  public void visitCMDataType(CMDataType dataType)
-  {
-    Text text = null;
-    String value = null;
-
-    // For backward compatibility:
-    //   Previous code uses a property value but new one uses
-    //   buildPolicy.   
-    if (getProperty(PROPERTY_BUILD_BLANK_TEXT_NODES) != null
-        && getProperty(PROPERTY_BUILD_BLANK_TEXT_NODES).equals("true"))
-      buildPolicy = buildPolicy ^ BUILD_TEXT_NODES;
-          
-    if (buildTextNodes(buildPolicy))
-    {
-      value = valueHelper.getValue(dataType);
-      if (value == null)
-      {
-        if (currentParent != null && currentParent.getNodeType() == Node.ELEMENT_NODE)
-        {
-          value = currentParent.getNodeName();
-        }
-        else
-        {
-          value = "pcdata";
-        }
-      }
-    }  
-    else
-    {
-      value = "";
-    }
-    text = createTextNode(dataType, value, currentParent);
-    linkNode(text);
-  }
-
-
-  public void visitCMGroup(CMGroup e)
-  {
-  	cmGroupStack.push(e);
-  	 
-    int forcedMin = (buildOptionalElements(buildPolicy) || alwaysVisit) ? 1 : 0;
-    int min = Math.max(e.getMinOccur(), forcedMin);
-
-    int max = 0;
-    if (e.getMaxOccur() == -1) // unbounded
-      max = getNumOfRepeatableElements();
-    else 
-      max = Math.min(e.getMaxOccur(), getNumOfRepeatableElements());
-    
-    if (max < min)
-      max = min;
-                                
-    alwaysVisit = false;
-
-    for (int i = 1; i <= max; i++)
-    {   
-      if (e.getOperator() == CMGroup.CHOICE
-          && buildFirstChoice(buildPolicy))
-      {
-        CMNode hintNode = null; 
-
-        // todo... the CMGroup should specify the hint... but it seems as though
-        // the Yamato guys are making the CMElement specify the hint.
-        // I do it that way for now until... we should fix this post GA
-        //    
-        int listSize = visitedCMElementDeclarationList.size();                                                              
-        if (listSize > 0)
-        {                                                                                                                                          
-          CMElementDeclaration ed = (CMElementDeclaration)visitedCMElementDeclarationList.get(listSize - 1);
-          Object contentHint = ed.getProperty("contentHint");
-          if (contentHint instanceof CMNode)
-          {        
-            hintNode = (CMNode)contentHint;
-          }
-        }
-   
-        // see if this hint corresponds to a valid choice
-        //
-        CMNode cmNode = null;
-
-        if (hintNode != null)
-        {
-          CMNodeList nodeList = e.getChildNodes();
-          int nodeListLength = nodeList.getLength();
-          for (int j = 0; j < nodeListLength; j++)
-          {
-            if (hintNode == nodeList.item(j))
-            { 
-              cmNode = hintNode;
-            }
-          }
-        }
-        
-        // if no cmNode has been determined from the hint, just use the first choice
-        //
-        if (cmNode == null)
-        {
-          CMNodeList nodeList = e.getChildNodes();
-          if (nodeList.getLength() > 0)
-          {
-            cmNode = nodeList.item(0);
-          }
-        }
-
-        if (cmNode != null)
-        {
-          visitCMNode(cmNode);
-        }
-      }
-      else if (e.getOperator() == CMGroup.ALL          // ALL
-                || e.getOperator() == CMGroup.SEQUENCE) // SEQUENCE 
-      {
-        // visit all of the content
-        super.visitCMGroup(e);
-      }
-    }
-    
-    cmGroupStack.pop();
-  }
-
-  static int count = 0;
-
-  public void visitCMAttributeDeclaration(CMAttributeDeclaration ad)
-  {                                            
-    if (alwaysVisit ||
-        buildOptionalAttributes(buildPolicy) ||
-        ad.getUsage() == CMAttributeDeclaration.REQUIRED)
-    {                                                              
-      alwaysVisit = false;                    
-      String name = computeName(ad, currentParent);         
-      String value = valueHelper.getValue(ad, namespaceTable);
-      Attr attr = createAttribute(ad, name, currentParent);      
-      attr.setValue(value != null ? value : "");
-      linkNode(attr);
-    }
-  }                     
-                
-  protected boolean isAbstract(CMNode ed)
-  {
-    boolean result = false;
-    if (ed != null)
-    {
-      Object value = ed.getProperty("Abstract");
-      result = (value ==  Boolean.TRUE);
-    }
-    return result;
-  }
-
-  protected CMElementDeclaration getSubstitution(CMElementDeclaration ed)
-  {
-    CMElementDeclaration result = ed;
-    CMNodeList l = (CMNodeList)ed.getProperty("SubstitutionGroup");
-    if (l != null)
-    {
-      for (int i=0; i < l.getLength(); i++)
-      {
-        CMNode candidate = l.item(i);
-        if (!isAbstract(candidate) && (candidate instanceof CMElementDeclaration))
-        {
-          result = (CMElementDeclaration)candidate;
-          break;
-        }
-      }
-    }
-    return result;
-  }
-
-  protected CMElementDeclaration getParentCMElementDeclaration()
-  {   
-    CMElementDeclaration ed = null;
-    int listSize = visitedCMElementDeclarationList.size();                                                              
-    if (listSize > 0)
-    {                                                                                                                                          
-      ed = (CMElementDeclaration)visitedCMElementDeclarationList.get(listSize - 1);    
-    } 
-    return ed;
-  }
-
-  public void visitCMAnyElement(CMAnyElement anyElement)
-  {                            
-    // ingnore buildPolicy for ANY elements... only create elements if absolutely needed
-    //
-    int forcedMin = alwaysVisit ? 1 : 0;
-    int min = Math.max(anyElement.getMinOccur(), forcedMin);                          
-    alwaysVisit = false;
-      
-    String uri = anyElement.getNamespaceURI();  
-    String targetNSProperty = "http://org.eclipse.wst/cm/properties/targetNamespaceURI";
-    CMDocument parentCMDocument = (CMDocument)anyElement.getProperty("CMDocument");
-    CMElementDeclaration ed = null;                          
-
-    System.out.println("parentCMDocument = " + parentCMDocument);
-    if (parentCMDocument != null)
-    {          
-      if (uri == null || uri.startsWith("##") || uri.equals(parentCMDocument.getProperty(targetNSProperty)))
-      {                               
-        ed = getSuitableElement(getParentCMElementDeclaration(), parentCMDocument);
-      }
-    }          
-
-
-    if (ed == null && externalCMDocumentSupport != null && uri != null && !uri.startsWith("##") && currentParent instanceof Element)
-    {
-      CMDocument externalCMDocument = externalCMDocumentSupport.getCMDocument((Element)currentParent, uri);
-      if (externalCMDocument != null)
-      { 
-        ed = getSuitableElement(null, externalCMDocument);
-      }
-    }
-
-    for (int i = 1; i <= min; i++)
-    {         
-      if (ed != null)
-      {                        
-        visitCMElementDeclaration(ed); 
-      }  
-      else
-      {                       
-        Element element = document.createElement("ANY-ELEMENT");                   
-        linkNode(element);
-      }              
-    }               
-  }    
-
-  protected CMElementDeclaration getSuitableElement(CMNamedNodeMap nameNodeMap)
-  {       
-    CMElementDeclaration result = null;
-    int size = nameNodeMap.getLength();             
-    for (int i = 0; i < size; i++)
-    {           
-      CMElementDeclaration candidate = (CMElementDeclaration)nameNodeMap.item(i);
-      if (!visitedCMElementDeclarationList.contains(candidate))
-      {
-        result = candidate;
-        break;
-      }
-    }
-    return result;
-  }
-
-  protected CMElementDeclaration getSuitableElement(CMElementDeclaration ed, CMDocument cmDocument)
-  {       
-    CMElementDeclaration result = null;
-
-    if (ed != null)
-    {
-      result = getSuitableElement(ed.getLocalElements());
-    }
-
-    if (result == null && cmDocument != null)
-    {
-      result = getSuitableElement(cmDocument.getElements());
-    } 
-
-    return result;
-  }
-
-
-  public void linkNode(Node node)
-  {
-    if (attachNodesToParent && currentParent != null)
-    {
-      if (node.getNodeType() == Node.ATTRIBUTE_NODE)
-      {
-        ((Element)currentParent).setAttributeNode((Attr)node);
-      }
-      else
-      {
-        currentParent.appendChild(node);
-      }
-    }
-    else if (resultList != null)
-    {
-      resultList.add(node);
-    }
-  }
-
-  public static void testPopulateDocumentFromGrammarFile(Document document, String grammarFileName, String rootElementName, boolean hack)
-  {
-    try
-    {
-      CMDocument cmDocument = ContentModelManager.getInstance().createCMDocument(grammarFileName, null);
-      CMNamedNodeMap elementMap = cmDocument.getElements();
-      CMElementDeclaration element = (CMElementDeclaration)elementMap.getNamedItem(rootElementName);
-
-      DOMContentBuilderImpl contentBuilder = new DOMContentBuilderImpl(document);
-      contentBuilder.uglyTempHack = hack;
-      contentBuilder.createDefaultRootContent(cmDocument, element);
-
-      System.out.println();
-      System.out.println("-----------------------------");
-      DOMWriter writer = new DOMWriter();
-      if (hack)
-      {
-        writer.print(document, grammarFileName);
-      }
-      else
-      {
-        writer.print(document);
-      }
-      System.out.println("-----------------------------");
-    }
-    catch (Exception e)
-    {
-      System.out.println("Error: " + e);
-      e.printStackTrace();
-    }
-  }
-
-  // test
-  //
-  /*
-  public static void main(String arg[])
-  {
-    if (arg.length >= 2)
-    {
-      try
-      {
-        CMDocumentFactoryRegistry.getInstance().registerCMDocumentBuilderWithClassName("org.eclipse.wst.xml.core.internal.contentmodel.mofimpl.CMDocumentBuilderImpl");
-
-        String grammarFileName = arg[0];
-        String rootElementName = arg[1];
-
-        Document document = (Document)Class.forName("org.apache.xerces.dom.DocumentImpl").newInstance();
-        testPopulateDocumentFromGrammarFile(document, grammarFileName, rootElementName, true);
-      }
-      catch (Exception e)
-      {
-        System.out.println("DOMContentBuilderImpl error");
-        e.printStackTrace();
-      }
-    }
-    else
-    {
-      System.out.println("Usage : java org.eclipse.wst.xml.util.DOMContentBuildingCMVisitor grammarFileName rootElementName");
-    }
-  }*/
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMNamespaceHelper.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMNamespaceHelper.java
deleted file mode 100644
index 275f059..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMNamespaceHelper.java
+++ /dev/null
@@ -1,198 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class DOMNamespaceHelper
-{                
-  protected static String getURIForPrefix(Element element, String prefix)
-  {              
-    String result = null;
-	  String nsAttrName = null;
-	  if (prefix != null && prefix.length() > 0) 
-    {
-		  nsAttrName = "xmlns:" + prefix;
-	  }
-	  else 
-    {
-		  nsAttrName = "xmlns";
-	  }
-            
-    // assume the node is qualified... look up the URI base on the prefix
-    //
-	  for (Node node = element; node != null; node = node.getParentNode()) 
-    {
-	   	if (node.getNodeType() == Node.ELEMENT_NODE)
-      {
-        Element theElement = (Element)node;
-		    Attr attr = theElement.getAttributeNode(nsAttrName);
-		    if (attr != null) 
-        {
-          result = attr.getValue();
-        }
-      }
-      else
-      {
-        break;
-      }
-    }
-         
-    // see if we can find some info from an 'implicit' namespace
-    //
-    if (result == null)
-    {                                
-      NamespaceTable table = new NamespaceTable(element.getOwnerDocument());
-      result = table.getURIForPrefix(prefix);
-    }
-    return result;
-	}
-
-  public static String getNamespaceURI(Node node)
-  {            
-    String result = null;
-    if (node.getNodeType() == Node.ELEMENT_NODE)
-    {               
-      Element element = (Element)node;
-      String prefix = element.getPrefix();
-      result = getURIForPrefix(element, prefix);
-    }
-    else if (node.getNodeType() == Node.ATTRIBUTE_NODE)
-    {      
-      Attr attr = (Attr)node;
-      String prefix = attr.getPrefix();
-      result = getURIForPrefix(attr.getOwnerElement(), prefix);
-    }
-    return result;
-  }                 
-
-  // todo... this is an ugly hack... needs to be fixed
-  //
-  public static String computePrefix(CMNode cmNode, Node parentNode)
-  {
-    String result = null;
-    for (Node node = parentNode; node != null; node = node.getParentNode())
-    {
-      if (node.getNodeType() == Node.ELEMENT_NODE)
-      {
-        result = getPrefix(node.getNodeName());
-        if (result != null)
-        {
-          break;
-        }
-      }
-    }
-    return result;
-  }        
-
-
-  public static String getPrefix(String name)
-  {
-    String prefix = null;
-    int index = name.indexOf(":");
-    if (index != -1)
-    {
-      prefix = name.substring(0, index);
-    }
-    return prefix;
-  }
-
-
-  public static String getUnprefixedName(String name)
-  {
-    int index = name.indexOf(":");
-    if (index != -1)
-    {
-      name = name.substring(index + 1);
-    }
-    return name;
-  }
-
-
-  public static String computeName(CMNode cmNode, Node parent, String prefix)
-  {     
-    return computeName(cmNode, parent, prefix, null);
-  }   
-
-
-  public static String computeName(CMNode cmNode, Node parent, String prefix, NamespaceTable namespaceTable)
-  {
-    String result = cmNode.getNodeName();
-
-    // if the cmNode has a hard coded prefix then we don't need to do anything
-    //
-    if (getPrefix(result) == null)
-    {              
-      String qualification = (String)cmNode.getProperty("http://org.eclipse.wst/cm/properties/nsPrefixQualification");
-      // see if we need a namespace prefix
-      //
-      if (qualification != null && qualification.equals("qualified"))
-      {            
-        if (prefix == null)                 
-        {
-          // todo... add getCMDocument() method to CMNode
-          // for now use this getProperty() hack
-          CMDocument cmDocument = (CMDocument)cmNode.getProperty("CMDocument");
-          if (cmDocument != null)          
-          {     
-            String namespaceURI = (String)cmDocument.getProperty("http://org.eclipse.wst/cm/properties/targetNamespaceURI");   
-            if (namespaceURI != null)
-            {   
-              // use the NamespaceTable to figure out the correct prefix for this namespace uri
-              //      
-              if (namespaceTable == null)
-              {                                            
-                Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document)parent : parent.getOwnerDocument();
-                namespaceTable = new NamespaceTable(document);
-                if (parent instanceof Element)
-                {
-                  namespaceTable.addElementLineage((Element)parent);
-                }
-              }
-              prefix = namespaceTable.getPrefixForURI(namespaceURI);
-            }
-          }
-        }
-        if (prefix != null && prefix.length() > 0)
-        {
-          result = prefix + ":" + result;
-        }
-      }    
-    }
-    return result;
-  }  
-  
-
-  public static String[] getURIQualifiedNameComponents(String uriQualifiedName)
-  {
-    String[] result = new String[2];
-    int firstIndex = uriQualifiedName.indexOf("[");
-    int lastIndex = uriQualifiedName.indexOf("]");
-    if (firstIndex != -1 && lastIndex > firstIndex)
-    {
-      result[0] = uriQualifiedName.substring(firstIndex + 1, lastIndex);
-      result[1] = uriQualifiedName.substring(lastIndex + 1);
-    }  
-    else
-    {
-      result[1] = uriQualifiedName;
-    }                              
-    return result;
-  }   
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMNamespaceInfoManager.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMNamespaceInfoManager.java
deleted file mode 100644
index e7e5dab..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMNamespaceInfoManager.java
+++ /dev/null
@@ -1,225 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-
-/**
- * DOMNamespaceInfoManager          
- *
- *
- */
-public class DOMNamespaceInfoManager
-{                               
-  public static final String XSI_URI = "http://www.w3.org/2001/XMLSchema-instance";
-
-  public DOMNamespaceInfoManager()
-  {
-  }                 
-
-  public List getNamespaceInfoList(Element element)
-  {
-    NamespaceInfoReader reader = new NamespaceInfoReader();
-    return reader.getNamespaceInfoList(element);
-  }            
-   
-  public void removeNamespaceInfo(Element element)
-  {     
-    NamespaceInfoRemover remover = new NamespaceInfoRemover();
-    remover.removeNamespaceInfo(element);
-  }
-
-  public void addNamespaceInfo(Element element, List namespaceInfoList, boolean needsXSI)
-  {  
-    // first we create an xmlns attribute for each namespace
-    //                   
-    Document document = element.getOwnerDocument();
-                                
-    String schemaLocationValue = "";     
-
-    for (Iterator iterator = namespaceInfoList.iterator(); iterator.hasNext(); )
-    {
-      NamespaceInfo nsInfo = (NamespaceInfo)iterator.next();
-      nsInfo.normalize();
-               
-      if (nsInfo.uri != null) 
-      {            
-        String attrName = nsInfo.prefix != null ? "xmlns:" + nsInfo.prefix : "xmlns";
-        Attr namespaceAttr = document.createAttribute(attrName);  
-        namespaceAttr.setValue(nsInfo.uri);
-        element.setAttributeNode(namespaceAttr);   
-
-        // in this case we use the attribute "xsi:schemaLocation"
-        // here we build up its value
-        //
-        if (nsInfo.locationHint != null)
-        {
-          schemaLocationValue += nsInfo.uri;
-          schemaLocationValue += " ";
-          schemaLocationValue += nsInfo.locationHint;
-          schemaLocationValue += " ";   
-        }   
-
-        if (nsInfo.uri.equals(XSI_URI))
-        {
-          needsXSI = false;
-        }
-      }     
-      else if (nsInfo.locationHint != null)
-      {
-        // in this case we use the attribute "xsi:noNamespaceSchemaLocation"
-        //
-        Attr attr = document.createAttribute("xsi:noNamespaceSchemaLocation");  
-        attr.setValue(nsInfo.locationHint);
-        element.setAttributeNode(attr);
-      } 
-    } 
-
-    if (needsXSI)
-    {
-      // we add an xmlns:xsi attribute to define 'xsi:schemaLocation' attribute
-      //   
-      Attr attr = document.createAttribute("xmlns:xsi");
-      attr.setValue(XSI_URI);
-      element.setAttributeNode(attr);
-    }
-
-    if (schemaLocationValue.length() > 0)
-    {
-      // create the "xsi:schemaLocation" attribute
-      //
-      Attr attr = document.createAttribute("xsi:schemaLocation");
-      attr.setValue(schemaLocationValue);
-      element.setAttributeNode(attr);
-    }                             
-  } 
-       
-  /**
-   *
-   */
-  protected static class NamespaceInfoReader extends NamespaceAttributeVisitor
-  {  
-    protected List namespaceInfoList = new Vector();
-
-    public List getNamespaceInfoList(Element element)
-    {
-      visitElement(element);
-      return namespaceInfoList;
-    }
-                       
-
-    public void visitXSINoNamespaceSchemaLocationAttribute(Attr attr, String value)
-    {
-      NamespaceInfo info = createNamespaceInfo();
-      info.locationHint = value;      
-    }
-    
-    public void visitXMLNamespaceAttribute(Attr attr, String prefix, String uri)
-    {           
-      NamespaceInfo info = createNamespaceInfo();
-      info.uri = uri;
-      info.prefix = prefix;      
-      super.visitXMLNamespaceAttribute(attr, prefix, uri);
-    }
-
-    public void visitXSISchemaLocationValuePair(String uri, String locationHint)
-    {    
-      NamespaceInfo info = getNamespaceInfoForURI(uri);            
-      if (info != null)
-      {
-        info.locationHint = locationHint;
-      } 
-      else
-      {
-        info = createNamespaceInfo();
-        info.uri = uri;
-        info.locationHint = locationHint;
-      }
-    }                                                                 
-
-    protected NamespaceInfo getNamespaceInfoForURI(String uri)
-    {    
-      NamespaceInfo result = null;
-      for (Iterator i = namespaceInfoList.iterator(); i.hasNext(); )
-      {
-        NamespaceInfo info = (NamespaceInfo)i.next();
-        if (info.uri != null && info.uri.equals(uri))
-        {
-          result = info;
-          break;
-        }
-      }         
-      return result;
-    }     
-
-    protected NamespaceInfo createNamespaceInfo()
-    {
-      NamespaceInfo info = new NamespaceInfo();
-      namespaceInfoList.add(info);
-      return info;
-    }
-  }
-     
-                                                
-  /**
-   *
-   */
-  protected static class NamespaceInfoRemover extends NamespaceAttributeVisitor
-  {                   
-    protected List attributesToRemove = new Vector();
-
-    public void removeNamespaceInfo(Element element)
-    {  
-      visitElement(element);
-      removeAttributes();
-    }   
-
-    public void visitXSINoNamespaceSchemaLocationAttribute(Attr attr, String value)
-    {
-      attributesToRemove.add(attr);
-    }        
-    
-    public void visitXMLNamespaceAttribute(Attr attr, String namespacePrefix, String namespaceURI)
-    {   
-      attributesToRemove.add(attr);
-      super.visitXMLNamespaceAttribute(attr, namespacePrefix, namespaceURI);
-    }
-    
-    public void visitXSISchemaLocationAttribute(Attr attr, String value)
-    {
-      attributesToRemove.add(attr);
-    }   
-
-    public void removeAttributes()
-    {
-      for (Iterator i = attributesToRemove.iterator(); i.hasNext(); )
-      {
-        Attr attr = (Attr)i.next();
-        Element element = attr.getOwnerElement();
-        if (element != null)
-        {
-          element.removeAttributeNode(attr);
-        }
-      }
-    }   
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMVisitor.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMVisitor.java
deleted file mode 100644
index bf0710b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMVisitor.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.CDATASection;
-import org.w3c.dom.Comment;
-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.ProcessingInstruction;
-import org.w3c.dom.Text;
-
-// todo.. move this class to another package (perhaps xmlutility)
-//
-public class DOMVisitor
-{         
-  public void visitNode(Node node)
-  {
-    switch (node.getNodeType())
-    {
-      case Node.ATTRIBUTE_NODE :
-      {
-        visitAttr((Attr)node);
-        break;
-      }
-      case Node.CDATA_SECTION_NODE :
-      {
-        visitCDATASection((CDATASection)node);
-        break;
-      }
-      case Node.COMMENT_NODE :
-      {
-        visitComment((Comment)node);
-        break;
-      }
-      case Node.DOCUMENT_NODE :
-      {
-        visitDocument((Document)node);
-        break;
-      }
-      case Node.DOCUMENT_TYPE_NODE :
-      {
-        visitDocumentType((DocumentType)node);
-        break;
-      }
-      case Node.ELEMENT_NODE :
-      {
-        visitElement((Element)node);
-        break;
-      }
-      case Node.PROCESSING_INSTRUCTION_NODE :
-      {
-        visitProcessingInstruction((ProcessingInstruction)node);
-        break;
-      }
-      case Node.TEXT_NODE :
-      {
-        visitText((Text)node);
-        break;
-      }
-    }  
-  }    
-    
-  protected void visitDocument(Document document)
-  {                   
-    visitChildNodesHelper(document);
-  }
-
-  protected void visitDocumentType(DocumentType doctype)
-  {         
-
-  }  
-
-  protected void visitElement(Element element)
-  {        
-    visitAttributesHelper(element);
-    visitChildNodesHelper(element);
-  } 
- 
-
-  public void visitAttr(Attr attr)
-  {                                  
-  }
-
-  protected void visitText(Text text)
-  {    
-  }
-
-  protected void visitCDATASection(CDATASection cdataSection)
-  {                       
-  }     
-
-  protected void visitComment(Comment comment)
-  {                   
-  }   
-
-  protected void visitProcessingInstruction(ProcessingInstruction pi)
-  {    
-  }
- 
-
-  protected void visitChildNodesHelper(Node node)
-  {
-    NodeList children = node.getChildNodes();
-    for (int i = 0; i < children.getLength(); i++)
-    {
-      visitNode(children.item(i));
-    }
-  }
-
-  protected void visitAttributesHelper(Node node)
-  {
-    NamedNodeMap map = node.getAttributes();
-    for (int i = 0; i < map.getLength(); i++ )
-    {
-      visitNode(map.item(i));
-    }
-  }         
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMWriter.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMWriter.java
deleted file mode 100644
index a6ffc7e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/DOMWriter.java
+++ /dev/null
@@ -1,411 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.io.OutputStream;
-import java.io.PrintWriter;
-import java.io.UnsupportedEncodingException;
-import java.io.Writer;
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.CDATASection;
-import org.w3c.dom.Comment;
-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.ProcessingInstruction;
-import org.w3c.dom.Text;
-
-
-/**
- * This is a hacked up dom writer stolen from a Xerces sample.
- * I'd like to use an exisitng 'generic DOM' writer
- * If anyone can find such a thing then please go ahead and junk this.
- *
- * @version
- */
-public class DOMWriter
-{
-  protected boolean formattingEnabled = true;
-   protected boolean outputDoctypeEnabled = true;
-   protected PrintWriter out;
-   protected int indent = 0;  
-
-   public DOMWriter() throws UnsupportedEncodingException
-   {
-     this(System.out);
-   }
-
-   public DOMWriter(OutputStream outputSteam)
-   {
-     out = new PrintWriter(outputSteam);
-   }
-
-   public DOMWriter(Writer writer)
-   {
-     out = new PrintWriter(writer);
-   }
-
-   public void setFormattingEnabled(boolean enabled)
-   {
-     formattingEnabled = enabled;
-   }
-
-   public boolean getFormattingEnabled()
-   {
-     return formattingEnabled;
-   }
-
-   public void setOutputDoctypeEnabled(boolean enabled)
-   {
-     outputDoctypeEnabled = enabled;
-   }
-
-   public class XMLVisitor
-   {
-     protected boolean currentElementHasChildElements = false;
-
-     public void visitNode(Node node)
-     {
-       switch (node.getNodeType())
-       {
-         case Node.ATTRIBUTE_NODE :
-         {
-           visitAttr((Attr)node);
-           break;
-         }
-         case Node.CDATA_SECTION_NODE :
-         {
-           visitCDATASection((CDATASection)node);
-           break;
-         }
-         case Node.COMMENT_NODE :
-         {
-           visitComment((Comment)node);
-           break;
-         }
-         case Node.DOCUMENT_NODE :
-         {
-           visitDocument((Document)node);
-           break;
-         }
-         case Node.DOCUMENT_TYPE_NODE :
-         {
-           visitDocumentType((DocumentType)node);
-           break;
-         }
-         case Node.ELEMENT_NODE :
-         {
-           visitElement((Element)node);
-           break;
-         }
-         case Node.PROCESSING_INSTRUCTION_NODE :
-         {
-           visitProcessingInstruction((ProcessingInstruction)node);
-           break;
-         }
-         case Node.TEXT_NODE :
-         {
-           visitText((Text)node);
-           break;
-         }
-       }
-     }
-
-     public void visitDocument(Document document)
-     {
-       visitChildNodesHelper(document);
-     }
-
-     public void visitDocumentType(DocumentType doctype)
-     {                       
-       if (outputDoctypeEnabled)
-       {
-         String data = getDocumentTypeData(doctype);
-         print("<!DOCTYPE " + data + ">");
-       }
-     }
-
-     public void visitElement(Element element)
-     {                                  
-       if (!doShow(element))
-         return;
-
-       boolean parentElementHasChildNodes = currentElementHasChildElements;
-       currentElementHasChildElements = hasChildElements(element);
-
-       printIndent();
-       print("<");
-       print(element.getNodeName());
-       visitAttributesHelper(element);
-
-       boolean hasChildNodes = element.getChildNodes().getLength() > 0;                
-       boolean isRootElement = element.getParentNode().getNodeType() == Node.DOCUMENT_NODE;
-       if (hasChildNodes || isRootElement)
-       {
-         if (currentElementHasChildElements || isRootElement)
-         {
-           println(">");
-         }
-         else
-         {
-           print(">");
-         }
-         indent += 2;
-         visitChildNodesHelper(element);
-         indent -= 2;
-
-         if (currentElementHasChildElements || isRootElement)
-         {
-           printIndent();
-         }
-         print("</");
-         print(element.getNodeName());
-         println(">");
-       }
-       else
-       {
-         println("/>");
-       }
-
-       currentElementHasChildElements = parentElementHasChildNodes;
-     }
-
-     public void visitAttr(Attr attr)
-     {
-       print(" ");
-       print(attr.getNodeName());
-       print("=\"");
-       print(createPrintableCharacterData(attr.getValue()));
-       print("\"");
-     }
-
-     public void visitText(Text text)
-     {
-       if (currentElementHasChildElements)
-       {
-         printIndent();
-         print(createPrintableCharacterData(text.getNodeValue()));
-         println();
-       }
-       else
-       {
-         print(createPrintableCharacterData(text.getNodeValue()));
-       }
-     }
-
-     public void visitCDATASection(CDATASection cdataSection)
-     {
-     }
-
-     public void visitComment(Comment comment)
-     {
-       printIndent();
-       print("<!--");
-       print(comment.getNodeValue());
-       println("-->");
-     }
-
-     public void visitProcessingInstruction(ProcessingInstruction pi)
-     {
-       printIndent();
-       print("<?");
-       print(pi.getNodeName());
-       print(" ");
-       print(pi.getNodeValue());
-       println("?>");
-     }
-             
-
-     public boolean hasChildElements(Node node)
-     {
-       boolean result = false;
-       NodeList children = node.getChildNodes();
-       for (int i = 0; i < children.getLength(); i++)
-       {
-         if (children.item(i).getNodeType() == Node.ELEMENT_NODE)
-         {
-           result = true;
-           break;
-         }
-       }
-       return result;
-     }
-
-     public void visitChildNodesHelper(Node node)
-     {
-       NodeList children = node.getChildNodes();
-       for (int i = 0; i < children.getLength(); i++)
-       {
-         visitNode(children.item(i));
-       }
-     }
-
-     public void visitAttributesHelper(Node node)
-     {
-       NamedNodeMap map = node.getAttributes();
-       for (int i = 0; i < map.getLength(); i++ )
-       {
-         visitNode(map.item(i));
-       }
-     }
-   }
-
-  /** an ugly hack until I restruct this code a little
-   *  
-   */  
-  protected boolean doShow(Element element)    
-  {
-    return true;
-  }
-                                               
-  /** converts DOM text values to 'printable' values 
-   *  - converts '&' to '&amp;'
-   */
-  protected String createPrintableCharacterData(String string)
-  {              
-    String result = "";
-    int index = 0;                             
-    while (true)
-    {                                                 
-      int ampersandIndex = string.indexOf("&", index);
-      if (ampersandIndex != -1)
-      {
-        result += string.substring(index, ampersandIndex);
-        result += "&amp;";
-        index = ampersandIndex + 1; 
-      }
-      else
-      {
-        break;
-      }
-    } 
-    result += string.substring(index);
-    return result;
-  }
-
-
-  /** Prints the specified node, recursively. */
-  public void print(Node node)
-  {
-    // is there anything to do?
-    if (node != null)
-    {
-      XMLVisitor visitor = new XMLVisitor();
-      visitor.visitNode(node);
-    }
-    out.flush();
-  }
-
-  /** a temporary hack to workaround our inability to create a DocumentType tag*/
-  public void print(Document document, String grammarURL)
-  {
-    String systemId = null;
-    if (grammarURL.endsWith("dtd"))
-    {
-      int lastSlashIndex = Math.max(grammarURL.lastIndexOf("/"), grammarURL.lastIndexOf("\\"));
-      if (lastSlashIndex != -1)
-      {
-        systemId = grammarURL.substring(lastSlashIndex + 1);
-      }
-    }
-    print(document, "UTF-8", grammarURL, null, systemId);
-
-  }
-
-  /** a temporary hack to workaround our inability to create a DocumentType tag*/
-  public void print(Document document, String encoding, String grammarFileName, String publicId, String systemId)
-  {
-    out.println("<?xml version=\"1.0\"" + " encoding=\"" + encoding + "\"?>");  
-    if (grammarFileName.endsWith(".dtd"))
-    {
-      String docTypeLine = "<!DOCTYPE " + document.getDocumentElement().getNodeName() + " ";
-      if (publicId != null) 
-      {
-        docTypeLine += "PUBLIC \"" + publicId + "\" ";
-        if (systemId != null)
-        {
-          docTypeLine += "\"" + systemId + "\" ";
-        }
-        docTypeLine += ">";
-        out.println(docTypeLine);
-      }
-      else if (systemId != null)
-      {
-        docTypeLine += "SYSTEM \"" + systemId + "\" >";
-        out.println(docTypeLine);
-      }
-    }
-    print(document);
-  }  
-
-  public static String getDocumentTypeData(DocumentType doctype)
-  {
-    String data = doctype.getName();
-    if (doctype.getPublicId() != null)
-    {
-      data += " PUBLIC \"" + doctype.getPublicId() + "\"";
-      String systemId = doctype.getSystemId();
-      if (systemId == null)
-      {
-        systemId = "";
-      }
-      data += " \"" + systemId + "\"";     
-    }
-    else
-    {
-      data += " SYSTEM \"" + doctype.getSystemId() + "\"";
-    }
-    return data;
-  }     
-
-  public void println()
-  {
-    if (formattingEnabled)
-    {
-      out.println();
-    }
-  }
-
-  public void println(String string)
-  {
-    if (formattingEnabled)
-    {
-      out.println(string);
-    }
-    else
-    {
-      out.print(string);
-    }
-  }
-
-  public void printIndent()
-  {             
-    if (formattingEnabled)
-    {
-      for (int i = 0; i < indent; i++)
-      {
-        out.print(" ");
-      }
-    }
-  }       
-
-  public void print(String string)
-  {
-    out.print(string);
-  }
-}
-
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/InferredGrammarFactory.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/InferredGrammarFactory.java
deleted file mode 100644
index 601b8ba..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/InferredGrammarFactory.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.util.Collection;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.w3c.dom.Element;
-
-
-// this interface is used to build a grammar document given a local file name
-//
-public interface InferredGrammarFactory
-{   
-  public CMDocument createCMDocument(String uri); 
-  public CMElementDeclaration createCMElementDeclaration(CMDocument cmDocument, Element element, boolean isLocal);
-  public void createCMContent(CMDocument parentCMDocument, CMElementDeclaration parentEd, CMDocument childCMDocument, CMElementDeclaration childEd, boolean isLocal, String uri);
-  public void debugPrint(Collection collection); 
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceAttributeVisitor.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceAttributeVisitor.java
deleted file mode 100644
index 51580c2..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceAttributeVisitor.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.util.StringTokenizer;
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-
-
-public class NamespaceAttributeVisitor
-{                                      
-  public static final String XML_SCHEMA_INSTANCE_URI = "http://www.w3.org/2001/XMLSchema-instance";
-  public String xsiPrefix = "xsi";
-
-  public void visitXMLNamespaceAttribute(Attr attr, String namespacePrefix, String namespaceURI)
-  {   
-    if (namespaceURI.equals(XML_SCHEMA_INSTANCE_URI))
-    {
-      xsiPrefix = namespacePrefix;
-    }
-  } 
-
-  public void visitXSINoNamespaceSchemaLocationAttribute(Attr attr, String value)
-  {
-  }
-
-  public void visitXSISchemaLocationAttribute(Attr attr, String value)
-  {
-    StringTokenizer st = new StringTokenizer(value);          
-    while (true)
-    {
-      String nsURI = st.hasMoreTokens() ? st.nextToken() : null;
-      String locationHint = st.hasMoreTokens() ? st.nextToken() : null;            
-      if (nsURI != null && locationHint != null)
-      {    
-        visitXSISchemaLocationValuePair(nsURI, locationHint);          
-      }
-      else
-      {
-        break;
-      }
-    }
-  }   
-
-  public void visitXSISchemaLocationValuePair(String uri, String locationHint)
-  {
-  }
-
-  public void visitElement(Element element)
-  {
-    NamedNodeMap map = element.getAttributes();
-    int mapLength = map.getLength();
-    for (int i = 0; i < mapLength; i++)
-    {
-      Attr attr = (Attr)map.item(i);
-      String prefix = DOMNamespaceHelper.getPrefix(attr.getName());
-      String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attr.getName());
-      if (prefix != null && unprefixedName != null)
-      {
-        if (prefix.equals("xmlns"))
-        {
-          visitXMLNamespaceAttribute(attr, unprefixedName, attr.getValue());
-        } 
-        else if (prefix.equals(xsiPrefix) && unprefixedName.equals("schemaLocation"))
-        {
-          visitXSISchemaLocationAttribute(attr, attr.getValue());
-        }
-        else if (prefix.equals(xsiPrefix) && unprefixedName.equals("noNamespaceSchemaLocation"))
-        {
-          visitXSINoNamespaceSchemaLocationAttribute(attr, attr.getValue());
-        }
-      }
-      else if (unprefixedName != null)
-      {
-        if (unprefixedName.equals("xmlns"))
-        {
-          visitXMLNamespaceAttribute(attr, "", attr.getValue());
-        }
-      }      
-    }
-  }      
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceInfo.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceInfo.java
deleted file mode 100644
index d1cbde8..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceInfo.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-public class NamespaceInfo
-{                        
-  public String uri;
-  public String prefix;
-  public String locationHint;
-  public boolean isPrefixRequired; 
-  protected Hashtable hashtable;
-
-  public NamespaceInfo()
-  {
-  }
-
-  public NamespaceInfo(String uri, String prefix, String locationHint)
-  {                                                                  
-    this.uri = uri;                             
-    this.prefix = prefix;
-    this.locationHint = locationHint;
-  }   
-
-  public NamespaceInfo(NamespaceInfo that)
-  {                                               
-    this.uri = that.uri;                             
-    this.prefix = that.prefix;
-    this.locationHint = that.locationHint;
-    // todo... see if we need to clone the hastable 
-  }
-
-  public void normalize()
-  {
-    uri = getNormalizedValue(uri);
-    prefix  = getNormalizedValue(prefix);
-    locationHint= getNormalizedValue(locationHint);
-  }
-
-  protected String getNormalizedValue(String string)
-  {
-    return (string != null && string.trim().length() == 0) ? null : string;
-  }
-    
-  public void setProperty(String property, Object value)
-  {
-    if (hashtable == null)
-    {
-      hashtable = new Hashtable();
-    }
-    hashtable.put(property, value);
-  }
-
-  public Object getProperty(String property)
-  {
-    return (hashtable != null) ? hashtable.get(property) : null;
-  }
-
-  public static List cloneNamespaceInfoList(List oldList)
-  {  
-    List newList = new Vector(oldList.size());
-    for (Iterator i = oldList.iterator(); i.hasNext(); )
-    {
-      NamespaceInfo oldInfo = (NamespaceInfo)i.next();
-      newList.add(new NamespaceInfo(oldInfo));
-    }               
-    return newList;
-  }
-}      
diff --git a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java b/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java
deleted file mode 100644
index 0286ebb..0000000
--- a/bundles/org.eclipse.wst.xml.core/src-contentmodel/org/eclipse/wst/xml/core/internal/contentmodel/util/NamespaceTable.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
-* Copyright (c) 2002 IBM Corporation and others.
-* All rights reserved.   This program and the accompanying materials
-* are made available under the terms of the Common Public License v1.0
-* which accompanies this distribution, and is available at
-* http://www.eclipse.org/legal/cpl-v10.html
-* 
-* Contributors:
-*   IBM - Initial API and implementation
-*   Jens Lukowski/Innoopract - initial renaming/restructuring
-* 
-*/
-package org.eclipse.wst.xml.core.internal.contentmodel.util;
-                          
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class NamespaceTable extends NamespaceAttributeVisitor
-{                   
-  public Hashtable hashtable = new Hashtable();
-
-  public NamespaceTable(Document document)
-  {                     
-    //DOMExtension domExtension = DOMExtensionProviderRegistry.getInstance().getDOMExtension(document);
-    //if (domExtension != null)
-    //{                          
-    //  addNamespaceInfoList(domExtension.getImplictNamespaceInfoList(), true);
-    // }
-  }   
-
-  private NamespaceTable()
-  {        
-  }  
-
-  public boolean isNamespaceEncountered()
-  {
-    return hashtable.values().size() > 0;
-  }
-
-  public String getPrefixForURI(String uri)
-  {           
-    String result = null;
-    NamespaceInfo entry = getNamespaceInfoForURI(uri, true);
-    if (entry != null) 
-    {
-      result = entry.prefix;
-    }                         
-    return result;
-  }
-      
-
-  public String getURIForPrefix(String prefix)
-  {           
-    String result = null;
-    NamespaceInfo info = getNamespaceInfoForPrefix(prefix);
-    if (info != null) 
-    {
-      result = info.uri;
-    }                         
-    return result;
-  }    
-
-          
-  protected boolean isMatchingString(String a, String b)
-  {
-    return ((a == null && b == null) || (a != null && b != null && a.equals(b)));
-  }
-   
-
-  public NamespaceInfo getNamespaceInfoForURI(String uri)
-  {                                                     
-    return getNamespaceInfoForURI(uri, false);
-  }
-
-
-  public NamespaceInfo getNamespaceInfoForURI(String uri, boolean testImplied)
-  {
-    NamespaceInfo result = null;
-    for (Iterator i = hashtable.values().iterator(); i.hasNext(); )
-    {                    
-      NamespaceInfo nsInfo = (NamespaceInfo)i.next(); 
-      if (isMatchingString(nsInfo.uri, uri))
-      {                 
-        result = nsInfo;
-        if (testImplied && nsInfo.getProperty("isImplied") != null)
-        {
-          // continue
-        }            
-        else
-        {
-          break;
-        }
-      }
-    }
-    return result;
-  } 
-
-
-  public void setLocationHintForURI(String uri, String locationHint)
-  {      
-   // List list = new Vector();
-    for (Iterator i = hashtable.values().iterator(); i.hasNext(); )
-    {                    
-      NamespaceInfo nsInfo = (NamespaceInfo)i.next(); 
-      if (isMatchingString(nsInfo.uri, uri))
-      {                                               
-        nsInfo.locationHint = locationHint;
-      }
-    }
-  }
-    
-
-  public NamespaceInfo getNamespaceInfoForPrefix(String prefix)
-  {                                      
-    prefix = prefix != null ? prefix : "";
-    return (NamespaceInfo)hashtable.get(prefix);
-  }   
-
-
-  public void visitXMLNamespaceAttribute(Attr attr, String namespacePrefix, String namespaceURI)
-  {                                 
-    NamespaceInfo nsInfo = new NamespaceInfo();      
-    nsInfo.prefix = namespacePrefix;
-    nsInfo.uri = namespaceURI;      
-   
-    NamespaceInfo matchingNamespaceInfo = getNamespaceInfoForURI(namespaceURI);
-    if (matchingNamespaceInfo != null)
-    {                           
-      nsInfo.locationHint = matchingNamespaceInfo.locationHint;
-    }                                      
-
-    internalAddNamespaceInfo(namespacePrefix, nsInfo);
-
-    super.visitXMLNamespaceAttribute(attr, namespacePrefix, namespaceURI);
-  } 
-                 
-  public void visitXSISchemaLocationValuePair(String uri, String locationHint)
-  {
-    setLocationHintForURI(uri, locationHint);
-  }   
-
-  public void addNamespaceInfo(NamespaceInfo info)
-  {                           
-    String key  = (info.prefix != null) ? info.prefix : "";
-    internalAddNamespaceInfo(key, info);
-  }
-
-  protected void internalAddNamespaceInfo(String key, NamespaceInfo info)
-  {
-    hashtable.put(key, info);
-  }
-
-  protected void addNamespaceInfoList(List list, boolean isImplied)
-  {       
-    if (list != null)
-    {
-      for (Iterator i = list.iterator(); i.hasNext(); )
-      {
-        NamespaceInfo info = (NamespaceInfo)i.next();
-        NamespaceInfo clone = new NamespaceInfo(info);    
-        if (isImplied)
-        {
-          clone.setProperty("isImplied", "true");
-        }
-        addNamespaceInfo(clone);
-      }
-    }
-  }
-
-  public void addNamespaceInfoList(List list)
-  {  
-    addNamespaceInfoList(list, false);  
-  }
-
-  public void visitXSINoNamespaceSchemaLocationAttribute(Attr attr, String locationHint)
-  {
-    addNoNamespaceSchemaLocation(locationHint);
-  } 
-
-  public void addNoNamespaceSchemaLocation(String locationHint)
-  {
-    NamespaceInfo nsInfo = new NamespaceInfo();      
-    nsInfo.prefix = null;
-    nsInfo.uri = "";      
-    nsInfo.locationHint = locationHint;  
-    internalAddNamespaceInfo("", nsInfo);
-  } 
-
-  public void addNamespaceInfo(String prefix, String uri, String locationHint)
-  {
-    NamespaceInfo nsInfo = new NamespaceInfo();      
-    nsInfo.prefix = prefix;
-    nsInfo.uri = uri;      
-    nsInfo.locationHint = locationHint;  
-    internalAddNamespaceInfo(prefix != null ? prefix : "", nsInfo);
-  } 
-
-  public void addElement(Element element)
-  {   
-    visitElement(element);  
-  }      
-         
-  public void addElementLineage(Element targetElement)
-  {
-    List list = NamespaceTable.getElementLineage(targetElement);                 
-    for (Iterator i = list.iterator(); i.hasNext(); )
-    {
-      Element element = (Element)i.next();
-      addElement(element);
-    }            
-  }
-
-  public static List getElementLineage(Element element)
-  {          
-    List result = new ArrayList();             
-    for (Node node = element; node != null; node = node.getParentNode())
-    {                               
-      if (node.getNodeType() == Node.ELEMENT_NODE)
-      {
-        result.add(0, node);                      
-      }
-      else
-      {
-        break;
-      }
-    }  
-    return result;
-  }    
-
-  public Collection getNamespaceInfoCollection()
-  {              
-    return hashtable.values();
-  } 
-
-  public List getNamespaceInfoList()
-  {                               
-    List list = new Vector();
-    list.addAll(hashtable.values());
-    return list;
-  }
-} 
diff --git a/bundles/org.eclipse.wst.xml.core/src/.cvsignore b/bundles/org.eclipse.wst.xml.core/src/.cvsignore
deleted file mode 100644
index 101c29e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-notebook.jpage
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/NameValidator.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/NameValidator.java
deleted file mode 100644
index 621ca6c..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/NameValidator.java
+++ /dev/null
@@ -1,57 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core;
-
-import java.io.Reader;
-
-import org.eclipse.wst.xml.core.internal.parser.XML10Names;
-
-/**
- * This class provides consistent way to pre-check if a string is a valid XML
- * name, before, for example, trying to actually create an Element with it.
- * Espeically useful when the name to be checked is based on some user input,
- * and must, basically, be validated.
- * 
- * @since 1.0
- */
-
-public final class NameValidator {
-
-	private static XML10Names xml10charChecker = null;
-
-	/**
-	 * Returns true if <code>name</code> is valid XML name according to 1.0
-	 * rules, false otherwise.
-	 * 
-	 * @param name
-	 * @return boolean
-	 */
-	public synchronized static final boolean isValid(String name) {
-
-		if (xml10charChecker == null) {
-			xml10charChecker = inititailizeXML10Names();
-		}
-		return xml10charChecker.isValidXML10Name(name);
-	}
-
-	private static XML10Names inititailizeXML10Names() {
-		return new XML10Names((Reader) null);
-	}
-
-	/**
-	 * Not intenteded to be instantiated.
-	 */
-	private NameValidator() {
-		super();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/XMLPreferenceNames.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/XMLPreferenceNames.java
deleted file mode 100644
index 2505ec3..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/XMLPreferenceNames.java
+++ /dev/null
@@ -1,55 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core;
-
-/**
- * Keys to use for preference settings.
- * 
- * @since 1.0
- */
-
-public interface XMLPreferenceNames {
-	String CLEANUP_ATTR_NAME_CASE = "cleanupAttrNameCase";//$NON-NLS-1$
-	String CLEANUP_EOL_CODE = "cleanupEOLCode";//$NON-NLS-1$
-	// cleanup preference names
-	String CLEANUP_TAG_NAME_CASE = "cleanupTagNameCase";//$NON-NLS-1$
-	String CONVERT_EOL_CODES = "convertEOLCodes";//$NON-NLS-1$
-	String FORMAT_SOURCE = "formatSource";//$NON-NLS-1$
-	String INSERT_MISSING_TAGS = "insertMissingTags";//$NON-NLS-1$
-
-	// others
-	String LAST_ACTIVE_PAGE = "lastActivePage";//$NON-NLS-1$
-	String QUOTE_ATTR_VALUES = "quoteAttrValues";//$NON-NLS-1$
-
-	/*
-	 * not used for now // highlighting types String COMMENT_BORDER =
-	 * "commentBorder";//$NON-NLS-1$ String COMMENT_TEXT =
-	 * "commentText";//$NON-NLS-1$ String CDATA_BORDER =
-	 * "cdataBorder";//$NON-NLS-1$ String CDATA_TEXT =
-	 * "cdataText";//$NON-NLS-1$ String PI_BORDER = "piBorder";//$NON-NLS-1$
-	 * String PI_CONTENT = "piContent";//$NON-NLS-1$ String TAG_BORDER =
-	 * "tagBorder";//$NON-NLS-1$ String TAG_NAME = "tagName";//$NON-NLS-1$
-	 * String TAG_ATTRIBUTE_NAME = "tagAttributeName";//$NON-NLS-1$ String
-	 * TAG_ATTRIBUTE_VALUE = "tagAttributeValue";//$NON-NLS-1$ String
-	 * DECL_BORDER = "declBoder";//$NON-NLS-1$ String DOCTYPE_NAME =
-	 * "doctypeName";//$NON-NLS-1$ String DOCTYPE_EXTERNAL_ID =
-	 * "doctypeExternalId";//$NON-NLS-1$ String DOCTYPE_EXTERNAL_ID_PUBREF =
-	 * "doctypeExternalPubref";//$NON-NLS-1$ String DOCTYPE_EXTERNAL_ID_SYSREF =
-	 * "doctypeExtrenalSysref";//$NON-NLS-1$ String XML_CONTENT =
-	 * "xmlContent";//$NON-NLS-1$ // highlighting preferences String COMMA =
-	 * ",";//$NON-NLS-1$ String COLOR = "color";//$NON-NLS-1$ String NAME =
-	 * "name";//$NON-NLS-1$ String FOREGROUND = "foreground";//$NON-NLS-1$
-	 * String BACKGROUND = "background";//$NON-NLS-1$ String BOLD =
-	 * "bold";//$NON-NLS-1$ String ITALIC = "italic";//$NON-NLS-1$
-	 */
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/builder/delegates/XMLTaskTagSeeker.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/builder/delegates/XMLTaskTagSeeker.java
deleted file mode 100644
index a9bba3b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/builder/delegates/XMLTaskTagSeeker.java
+++ /dev/null
@@ -1,41 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.builder.delegates;
-
-import org.eclipse.wst.sse.core.participants.TaskTagSeeker;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class XMLTaskTagSeeker extends TaskTagSeeker {
-
-	/**
-	 *  
-	 */
-	public XMLTaskTagSeeker() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.participants.TaskTagSeeker#isCommentRegion(org.eclipse.wst.sse.core.text.IStructuredDocumentRegion,
-	 *      org.eclipse.wst.sse.core.text.ITextRegion)
-	 */
-	protected boolean isCommentRegion(IStructuredDocumentRegion region, ITextRegion textRegion) {
-		return textRegion.getType().equals(XMLRegionContext.XML_COMMENT_TEXT);
-
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/CommentElementAdapter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/CommentElementAdapter.java
deleted file mode 100644
index f4e3549..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/CommentElementAdapter.java
+++ /dev/null
@@ -1,126 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.commentelement;
-
-
-
-import org.eclipse.core.runtime.IPluginDescriptor;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.xml.core.commentelement.impl.CommentElementConfiguration;
-import org.eclipse.wst.xml.core.document.TagAdapter;
-import org.eclipse.wst.xml.core.document.XMLElement;
-
-
-/**
- */
-public class CommentElementAdapter implements TagAdapter {
-	private CommentElementConfiguration fConfiguration;
-
-	private boolean fEndTag;
-	private CommentElementHandler fHandler;
-
-	public CommentElementAdapter(boolean isEndTag, CommentElementHandler handler) {
-		fEndTag = isEndTag;
-		fHandler = handler;
-	}
-
-	private String generateCommentClose(XMLElement element) {
-		return (element.isJSPTag()) ? "--%>" : "-->"; //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-	private String generateCommentOpen(XMLElement element) {
-		return (element.isJSPTag()) ? "<%--" : "<!--"; //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-	private CommentElementConfiguration getConfiguration() {
-		return fConfiguration;
-	}
-
-	/**
-	 * @see com.ibm.sed.model.xml.TagAdapter#getEndTag(XMLElement)
-	 */
-	public String getEndTag(XMLElement element) {
-		String content = fHandler.generateEndTagContent(element);
-		if (content == null) {
-			return null;
-		}
-		StringBuffer buffer = new StringBuffer();
-
-		buffer.append(generateCommentOpen(element));
-		buffer.append(content);
-		buffer.append(generateCommentClose(element));
-
-		return buffer.toString();
-	}
-
-	public String getHandlerID() {
-		return getConfiguration().getHandlerID();
-	}
-
-	/**
-	 * @deprecated this should not be needed by anyone
-	 */
-	public IPluginDescriptor getHandlerPluginDescriptor() {
-		return fConfiguration.getHandlerPluginDescriptor();
-	}
-
-	public String getProperty(String name) {
-		return getConfiguration().getProperty(name);
-	}
-
-	/**
-	 * @see com.ibm.sed.model.xml.TagAdapter#getStartTag(XMLElement)
-	 */
-	public String getStartTag(XMLElement element) {
-		String content = fHandler.generateStartTagContent(element);
-		if (content == null) {
-			return null;
-		}
-		StringBuffer buffer = new StringBuffer();
-
-		buffer.append(generateCommentOpen(element));
-		buffer.append(content);
-		buffer.append(generateCommentClose(element));
-
-		return buffer.toString();
-	}
-
-	/**
-	 * @see com.ibm.sed.model.INodeAdapter#isAdapterForType(Object)
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == CommentElementAdapter.class || type == TagAdapter.class);
-	}
-
-	public boolean isContainer() {
-		return (!fHandler.isEmpty());
-	}
-
-	/**
-	 * @see com.ibm.sed.model.xml.TagAdapter#isEndTag()
-	 */
-	public boolean isEndTag() {
-		return fEndTag;
-	}
-
-	/**
-	 * @see com.ibm.sed.model.INodeAdapter#notifyChanged(INodeNotifier, int,
-	 *      Object, Object, Object, int)
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	public void setConfiguration(CommentElementConfiguration configuration) {
-		fConfiguration = configuration;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/CommentElementHandler.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/CommentElementHandler.java
deleted file mode 100644
index b5eae28..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/CommentElementHandler.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.commentelement;
-
-
-
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-
-/**
- */
-public interface CommentElementHandler {
-	/**
-	 * This method is called when the prefix of the comment content matches
-	 * the string specified in &lt;startswith prefix=""/&gt; in plugin
-	 * extension. Comment content is parsed and new DOM element is created in
-	 * this method. Implementor has to do following:
-	 * <li>For start tag :
-	 * <ul>
-	 * <li>parse comment content and create new element instance.</li>
-	 * </ul>
-	 * </li>
-	 * <li>For end tag :
-	 * <ul>
-	 * <li>parse comment content and create new element instance.</li>
-	 * <li>make isEndTag flag true.</li>
-	 * <li>Parser framework searches mached start tag element instance after
-	 * this createElement call, and new instance is just thrown away.</li>
-	 * </ul>
-	 * </li>
-	 * <li>For empty tag :
-	 * <ul>
-	 * <li>parse comment content and create new element instance.</li>
-	 * <li>make isEndTag flag true.</li>
-	 * </ul>
-	 * </li>
-	 * 
-	 * @param document
-	 *            parent DOM document
-	 * @param data
-	 *            comment content. comment prefix (&lt;!-- or &lt;%--), suffix
-	 *            (--&gt; or --%&gt;), and surrounding spaces are trimmed.
-	 * @param isJSPTag
-	 *            true if the comment is JSP style comment. This information
-	 *            may be required by handler when the handler accepts both XML
-	 *            style and JSP style comment (namely,
-	 *            commenttype=&quot;both&quot; in plugin.xml).
-	 * @return comment element instance if the comment content is rightly
-	 *         parsed. if parse failed, returns null.
-	 */
-	Element createElement(Document document, String data, boolean isJSPTag);
-
-	/**
-	 * This method generates the source text of the end tag for the passed
-	 * element. Do not generate comment prefix (&lt;!-- or &lt;%--) and suffix
-	 * (--&gt; or --%&gt;). XMLGenerator uses this method to generate XML/HTML
-	 * source for a comment element.
-	 * 
-	 * @param element
-	 *            the comment element
-	 * @return generated tag string
-	 */
-	String generateEndTagContent(XMLElement element);
-
-	/**
-	 * This method generates the source text of the start tag for the passed
-	 * element. Do not generate comment prefix (&lt;!-- or &lt;%--) and suffix
-	 * (--&gt; or --%&gt;). XMLGenerator uses this method to generate XML/HTML
-	 * source for a comment element.
-	 * 
-	 * @param element
-	 *            the comment element
-	 * @return generated tag string
-	 */
-	String generateStartTagContent(XMLElement element);
-
-	/**
-	 * 
-	 * @param element
-	 *            the element
-	 * @return boolean whether the element is comment element or not
-	 */
-	boolean isCommentElement(XMLElement element);
-
-	/**
-	 * 
-	 * @return boolean whether this element can have children or not
-	 */
-	boolean isEmpty();
-
-	/**
-	 * @return String
-	 */
-	//	String getElementPrefix();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/BasicCommentElementHandler.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/BasicCommentElementHandler.java
deleted file mode 100644
index 98efac0..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/BasicCommentElementHandler.java
+++ /dev/null
@@ -1,153 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.commentelement.impl;
-
-
-
-import org.eclipse.wst.xml.core.commentelement.CommentElementHandler;
-import org.eclipse.wst.xml.core.commentelement.util.CommentElementFactory;
-import org.eclipse.wst.xml.core.commentelement.util.TagScanner;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLGenerator;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-
-
-/**
- */
-class BasicCommentElementHandler implements CommentElementHandler {
-
-	private String elementName;
-	private boolean isEmpty;
-
-	public BasicCommentElementHandler(String elementName, boolean isEmpty) {
-		super();
-		this.elementName = elementName;
-		this.isEmpty = isEmpty;
-	}
-
-	/**
-	 * @see com.ibm.sed.model.commentelement.CommentElementHandler#createElement(Document,
-	 *      String, boolean)
-	 */
-	public Element createElement(Document document, String data, boolean isJSPTag) {
-		Element element = null;
-		String str = data.trim();
-		CommentElementFactory factory = new CommentElementFactory(document, isJSPTag, this);
-		if (str.charAt(0) == '/') { // end tag
-			TagScanner scanner = new TagScanner(str, 1); // skip '/'
-			String name = scanner.nextName();
-			if (name.equals(elementName)) {
-				element = factory.create(name, CommentElementFactory.IS_END);
-			}
-		} else { // start tag
-			TagScanner scanner = new TagScanner(str, 0);
-			String name = scanner.nextName();
-			if (name.equals(elementName)) {
-				element = factory.create(name, (isEmpty) ? CommentElementFactory.IS_EMPTY : CommentElementFactory.IS_START);
-				// set attributes
-				String attrName = scanner.nextName();
-				while (attrName != null) {
-					String attrValue = scanner.nextValue();
-					Attr attr = document.createAttribute(attrName);
-					if (attr != null) {
-						if (attrValue != null)
-							((XMLAttr) attr).setValueSource(attrValue);
-						element.setAttributeNode(attr);
-					}
-					attrName = scanner.nextName();
-				}
-			}
-		}
-		return element;
-	}
-
-	/**
-	 * @see com.ibm.sed.model.commentelement.CommentElementHandler#getEndTag(XMLElement)
-	 */
-	public String generateEndTagContent(XMLElement element) {
-		if (isEmpty) {
-			return null;
-		}
-		XMLGenerator generator = element.getModel().getGenerator();
-		StringBuffer buffer = new StringBuffer();
-
-		buffer.append(" /"); //$NON-NLS-1$
-		String tagName = generator.generateTagName(element);
-		if (tagName != null) {
-			buffer.append(tagName);
-		}
-		buffer.append(' ');
-
-		return buffer.toString();
-	}
-
-	/**
-	 * @see com.ibm.sed.model.commentelement.CommentElementHandler#getStartTag(XMLElement)
-	 */
-	public String generateStartTagContent(XMLElement element) {
-		XMLGenerator generator = element.getModel().getGenerator();
-		StringBuffer buffer = new StringBuffer();
-
-		buffer.append(' ');
-		String tagName = generator.generateTagName(element);
-		if (tagName != null) {
-			buffer.append(tagName);
-		}
-
-		NamedNodeMap attributes = element.getAttributes();
-		int length = attributes.getLength();
-		for (int i = 0; i < length; i++) {
-			Attr attr = (Attr) attributes.item(i);
-			if (attr == null) {
-				continue;
-			}
-			buffer.append(' ');
-			String attrName = generator.generateAttrName(attr);
-			if (attrName != null) {
-				buffer.append(attrName);
-			}
-			String attrValue = generator.generateAttrValue(attr);
-			if (attrValue != null) {
-				// attr name only for HTML boolean and JSP
-				buffer.append('=');
-				buffer.append(attrValue);
-			}
-		}
-
-		buffer.append(' ');
-
-		return buffer.toString();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.model.commentelement.CommentElementHandler#isCommentElement(com.ibm.sed.model.xml.XMLElement)
-	 */
-	public boolean isCommentElement(XMLElement element) {
-		return (element != null && element.getTagName().equals(elementName)) ? true : false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.model.commentelement.CommentElementHandler#isEmpty()
-	 */
-	public boolean isEmpty() {
-		return isEmpty;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/CommentElementConfiguration.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/CommentElementConfiguration.java
deleted file mode 100644
index a1a0b02..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/CommentElementConfiguration.java
+++ /dev/null
@@ -1,229 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.commentelement.impl;
-
-
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IPluginDescriptor;
-import org.eclipse.wst.xml.core.commentelement.CommentElementAdapter;
-import org.eclipse.wst.xml.core.commentelement.CommentElementHandler;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.internal.Logger;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-
-/**
- */
-public class CommentElementConfiguration {
-	private Map fAttributes = null;
-	private boolean fCustom;
-	private IConfigurationElement fElement = null;
-
-	private boolean fEmpty;
-	private CommentElementHandler fHandler = null;
-	private String fID = null;
-	private boolean fJSPComment;
-	private String[] fPrefix = null;
-	private boolean fXMLComment;
-
-	CommentElementConfiguration() {
-		super();
-	}
-
-	CommentElementConfiguration(IConfigurationElement element) {
-		super();
-		fElement = element;
-		fCustom = (element.getName().equalsIgnoreCase("handler-custom")) ? true : false; //$NON-NLS-1$
-
-		fillAttributes(element);
-
-		fXMLComment = fJSPComment = false;
-		String commentType = getProperty("commenttype"); //$NON-NLS-1$
-		if (commentType.equalsIgnoreCase("xml")) { //$NON-NLS-1$
-			fXMLComment = true;
-		} else if (commentType.equalsIgnoreCase("jsp")) { //$NON-NLS-1$
-			fJSPComment = true;
-		} else if (commentType.equalsIgnoreCase("both")) { //$NON-NLS-1$
-			fXMLComment = fJSPComment = true;
-		}
-		String empty = getProperty("isempty"); //$NON-NLS-1$
-		fEmpty = (empty != null && !empty.equals("false")) ? true : false; //$NON-NLS-1$
-	}
-
-	public boolean acceptJSPComment() {
-		return fJSPComment;
-	}
-
-	public boolean acceptXMLComment() {
-		return fXMLComment;
-	}
-
-	public Element createElement(Document document, String data, boolean isJSPTag) {
-		XMLElement element = (XMLElement) getHandler().createElement(document, data, isJSPTag);
-		if (element != null) {
-			CommentElementAdapter adapter = (CommentElementAdapter) element.getAdapterFor(CommentElementAdapter.class);
-			if (adapter != null) {
-				adapter.setConfiguration(this);
-			}
-		}
-		return element;
-	}
-
-	private void fillAttributes(IConfigurationElement element) {
-		if (fAttributes == null) {
-			fAttributes = new HashMap();
-		} else {
-			fAttributes.clear();
-		}
-		String[] names = element.getAttributeNames();
-		if (names == null) {
-			return;
-		}
-		int length = names.length;
-		for (int i = 0; i < length; i++) {
-			String name = names[i];
-			fAttributes.put(name.toLowerCase(), element.getAttribute(name));
-		}
-	}
-
-	public CommentElementHandler getHandler() {
-		if (fHandler == null) {
-			if (fElement != null) {
-				try {
-					if (isCustom()) {
-						fHandler = (CommentElementHandler) fElement.createExecutableExtension("class"); //$NON-NLS-1$
-					} else {
-						String elementName = getProperty("elementname"); //$NON-NLS-1$
-						fHandler = new BasicCommentElementHandler(elementName, fEmpty);
-					}
-					//					((AbstractCommentElementHandler)fHandler).setElementPrefix(fElement.getAttribute("prefix"));
-				} catch (Exception e) {
-					// catch and log (and ignore) ANY exception created
-					// by executable extension.
-					Logger.logException(e);
-					fHandler = null;
-				}
-			}
-			if (fHandler == null) {
-				fHandler = new CommentElementHandler() {
-					public Element createElement(Document document, String data, boolean isJSPTag) {
-						return null;
-					}
-
-					public String generateEndTagContent(XMLElement element) {
-						return null;
-					}
-
-					public String generateStartTagContent(XMLElement element) {
-						return null;
-					}
-
-					public String getElementPrefix() {
-						return null;
-					}
-
-					public boolean isCommentElement(XMLElement element) {
-						return false;
-					}
-
-					public boolean isEmpty() {
-						return false;
-					}
-				};
-			}
-		}
-		return fHandler;
-	}
-
-	public String getHandlerID() {
-		if (fID == null) {
-			fID = getProperty("id"); //$NON-NLS-1$
-			if (fID == null) {
-				if (isCustom()) {
-					fID = getProperty("class"); //$NON-NLS-1$				
-				} else {
-					StringBuffer buf = new StringBuffer();
-					buf.append(fElement.getDeclaringExtension().getNamespace());
-					buf.append('.');
-					buf.append(getProperty("elementname")); //$NON-NLS-1$
-					fID = buf.toString();
-				}
-			}
-		}
-		return fID;
-	}
-
-	/**
-	 * @deprecated this should not be needed by anyone
-	 */
-	public IPluginDescriptor getHandlerPluginDescriptor() {
-		return fElement.getDeclaringExtension().getDeclaringPluginDescriptor();
-	}
-
-	public String[] getPrefix() {
-		if (fPrefix == null) {
-			if (fElement != null) {
-				if (isCustom()) { // custom
-					IConfigurationElement[] prefixes = fElement.getChildren("startwith"); //$NON-NLS-1$	
-					if (prefixes != null) {
-						fPrefix = new String[prefixes.length];
-						for (int i = 0; i < prefixes.length; i++) {
-							fPrefix[i] = prefixes[i].getAttribute("prefix"); //$NON-NLS-1$	
-						}
-					}
-				} else { // basic
-					String name = getProperty("elementname"); //$NON-NLS-1$
-					if (name != null) {
-						if (isEmpty()) {
-							fPrefix = new String[1];
-							fPrefix[0] = name;
-						} else {
-							fPrefix = new String[2];
-							fPrefix[0] = name;
-							fPrefix[1] = '/' + name;
-						}
-					}
-				}
-			}
-		}
-		if (fPrefix == null) {
-			fPrefix = new String[1];
-			fPrefix[0] = ""; //$NON-NLS-1$
-		}
-		return fPrefix;
-	}
-
-	public String getProperty(String name) {
-		return (fAttributes != null) ? (String) fAttributes.get(name) : null;
-	}
-
-	private boolean isCustom() {
-		return fCustom;
-	}
-
-	private boolean isEmpty() {
-		return fEmpty;
-	}
-
-	void setupCommentElement(XMLElement element) {
-		element.setCommentTag(true);
-		CommentElementAdapter adapter = new CommentElementAdapter(false, fHandler);
-		adapter.setConfiguration(this);
-		element.addAdapter(adapter);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/CommentElementRegistry.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/CommentElementRegistry.java
deleted file mode 100644
index 7fab5ee..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/impl/CommentElementRegistry.java
+++ /dev/null
@@ -1,84 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.commentelement.impl;
-
-
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.xml.core.commentelement.CommentElementHandler;
-import org.eclipse.wst.xml.core.document.XMLElement;
-
-
-/**
- */
-public class CommentElementRegistry {
-
-	private static CommentElementRegistry fInstance = null;
-
-	public synchronized static CommentElementRegistry getInstance() {
-		if (fInstance == null) {
-			fInstance = new CommentElementRegistry();
-		}
-		return fInstance;
-	}
-
-	private String EXTENSION_POINT_ID = "commentElementHandler"; //$NON-NLS-1$
-	private CommentElementConfiguration[] fConfigurations = null;
-
-	private String PLUGIN_ID = "org.eclipse.wst.sse.core"; //$NON-NLS-1$
-
-	/**
-	 * Constructor for CommentElementRegistry.
-	 */
-	private CommentElementRegistry() {
-		super();
-	}
-
-	public CommentElementConfiguration[] getConfigurations() {
-		if (fConfigurations == null) {
-			IExtensionRegistry registry = Platform.getExtensionRegistry();
-			IExtensionPoint point = registry.getExtensionPoint(PLUGIN_ID, EXTENSION_POINT_ID);
-			if (point != null) {
-				IConfigurationElement[] elements = point.getConfigurationElements();
-				fConfigurations = new CommentElementConfiguration[elements.length];
-				for (int i = 0; i < elements.length; i++) {
-					fConfigurations[i] = new CommentElementConfiguration(elements[i]);
-				}
-			}
-			if (fConfigurations == null) {
-				fConfigurations = new CommentElementConfiguration[0];
-			}
-		}
-		return fConfigurations;
-	}
-
-	public boolean setupCommentElement(XMLElement element) {
-		CommentElementConfiguration configurations[] = getConfigurations();
-		int length = configurations.length;
-		for (int i = 0; i < length; i++) {
-			CommentElementConfiguration conf = configurations[i];
-			boolean isJSP = element.isJSPTag();
-			if (isJSP && conf.acceptJSPComment() || !isJSP && conf.acceptXMLComment()) {
-				CommentElementHandler handler = conf.getHandler();
-				if (handler.isCommentElement(element)) {
-					conf.setupCommentElement(element);
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/util/CommentElementFactory.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/util/CommentElementFactory.java
deleted file mode 100644
index 2ae4c84..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/util/CommentElementFactory.java
+++ /dev/null
@@ -1,65 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.commentelement.util;
-
-
-
-import org.eclipse.wst.xml.core.commentelement.CommentElementAdapter;
-import org.eclipse.wst.xml.core.commentelement.CommentElementHandler;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-
-/**
- */
-public class CommentElementFactory {
-	public static final int IS_EMPTY = 4866;
-	public static final int IS_END = 1808;
-
-	public static final int IS_START = 28011;
-
-	private Document fDocument;
-	private CommentElementHandler fHandler;
-	private boolean fJSPTag;
-
-	/**
-	 * Constructor for CommentElementFactory.
-	 */
-	private CommentElementFactory() {
-		super();
-	}
-
-	public CommentElementFactory(Document document, boolean isJSPTag, CommentElementHandler handler) {
-		super();
-		fDocument = document;
-		fJSPTag = isJSPTag;
-		fHandler = handler;
-	}
-
-	public Element create(String name, int nodeType) {
-		XMLElement element = (XMLElement) fDocument.createElement(name);
-		if (element == null)
-			return null;
-		element.setCommentTag(true);
-		if (nodeType == IS_EMPTY) {
-			element.setEmptyTag(true);
-		}
-		element.setJSPTag(fJSPTag);
-
-		CommentElementAdapter adapter = new CommentElementAdapter((nodeType == IS_END), fHandler);
-		element.addAdapter(adapter);
-
-		return element;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/util/TagScanner.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/util/TagScanner.java
deleted file mode 100644
index a74fe0b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/commentelement/util/TagScanner.java
+++ /dev/null
@@ -1,196 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.commentelement.util;
-
-
-
-/**
- */
-public class TagScanner {
-
-	/**
-	 */
-	private static boolean isEqual(char c) {
-		return (c == '=');
-	}
-
-	/**
-	 */
-	private static boolean isQuote(char c) {
-		return (c == '"' || c == '\'');
-	}
-
-	/**
-	 */
-	private static boolean isSpace(char c) {
-		return Character.isWhitespace(c);
-	}
-
-	private int length = 0;
-	private int memOffset = 0;
-	private int offset = 0;
-	private boolean oneLine = false;
-
-	private String tag = null;
-
-	/**
-	 */
-	public TagScanner(String tag, int offset) {
-		super();
-
-		this.tag = tag;
-		this.offset = offset;
-		this.memOffset = -1;
-		if (tag != null)
-			this.length = tag.length();
-	}
-
-	/**
-	 */
-	public TagScanner(String tag, int offset, boolean oneLine) {
-		this(tag, offset);
-
-		this.oneLine = oneLine;
-	}
-
-	/**
-	 */
-	public int getNextOffset() {
-		int i;
-		char c;
-		for (i = offset; i < length; i++) {
-			c = tag.charAt(i);
-			if (isEnd(c))
-				break;
-			if (isQuote(c)) {
-				i++;
-				break;
-			}
-			if (!isSpace(c) && !isEqual(c))
-				break;
-		}
-		return i;
-	}
-
-	/**
-	 */
-	public int getOffset() {
-		return this.memOffset;
-	}
-
-	/**
-	 */
-	private final boolean isEnd(char c) {
-		return (this.oneLine && (c == '\r' || c == '\n'));
-	}
-
-	/**
-	 */
-	public boolean isNewLine() {
-		if (oneLine)
-			return false;
-		char c;
-		for (int i = memOffset - 1; 0 <= i; i--) {
-			c = tag.charAt(i);
-			if (c == '\r' || c == '\n')
-				return true;
-			if (!isSpace(c))
-				return false;
-		}
-		return false;
-	}
-
-	/**
-	 */
-	private char nextChar() {
-		for (; this.offset < this.length; this.offset++) {
-			char c = this.tag.charAt(this.offset);
-			if (isEnd(c))
-				break;
-			if (!isSpace(c))
-				return c;
-		}
-		return 0;
-	}
-
-	/**
-	 */
-	public String nextName() {
-		if (this.tag == null)
-			return null;
-		if (this.offset >= this.length)
-			return null;
-
-		if (nextChar() == 0)
-			return null;
-
-		int nameOffset = this.offset;
-		for (; this.offset < this.length; this.offset++) {
-			char c = this.tag.charAt(this.offset);
-			if (isEnd(c) || isSpace(c))
-				break;
-			if (isEqual(c) && this.offset > nameOffset)
-				break;
-		}
-		if (this.offset == nameOffset)
-			return null;
-
-		this.memOffset = nameOffset;
-		return this.tag.substring(nameOffset, this.offset);
-	}
-
-	/**
-	 */
-	public String nextValue() {
-		if (this.tag == null)
-			return null;
-		if (this.offset >= this.length)
-			return null;
-
-		char seperator = nextChar();
-		if (!isEqual(seperator))
-			return null;
-		this.offset++; // skip '='
-		char quote = nextChar();
-		if (quote == 0)
-			return null;
-		if (isQuote(quote))
-			this.offset++;
-		else
-			quote = 0;
-
-		int valueOffset = this.offset;
-		for (; this.offset < this.length; this.offset++) {
-			char c = this.tag.charAt(this.offset);
-			if (isEnd(c)) {
-				quote = 0;
-				break;
-			}
-			if (quote == 0) {
-				if (isSpace(c))
-					break;
-			} else {
-				if (c == quote)
-					break;
-			}
-		}
-		int valueEnd = this.offset;
-		if (quote != 0 && this.offset < this.length)
-			this.offset++;
-		if (valueEnd == valueOffset)
-			return null;
-
-		this.memOffset = valueOffset;
-		return this.tag.substring(valueOffset, valueEnd);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMDocType.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMDocType.java
deleted file mode 100644
index ad3f679..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMDocType.java
+++ /dev/null
@@ -1,21 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.contentmodel;
-
-
-public interface CMDocType {
-	public final static String CHTML_DOC_TYPE = "CHTML";//$NON-NLS-1$
-	public final static String HTML_DOC_TYPE = "HTML";//$NON-NLS-1$
-	public final static String JSP11_DOC_TYPE = "JSP11";//$NON-NLS-1$
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMDocumentTracker.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMDocumentTracker.java
deleted file mode 100644
index 8f8f83c..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMDocumentTracker.java
+++ /dev/null
@@ -1,32 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.contentmodel;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-
-
-/**
- * Position dependent CMDocument tracker. A tracker matches a
- * IStructuredDocumentRegion with a CMDocument that it enables allowing for
- * position-dependent content models
- */
-public interface CMDocumentTracker {
-
-	CMDocument getDocument();
-
-	IStructuredDocumentRegion getStructuredDocumentRegion();
-}
-
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMNodeWrapper.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMNodeWrapper.java
deleted file mode 100644
index 43f0661..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/CMNodeWrapper.java
+++ /dev/null
@@ -1,21 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public interface CMNodeWrapper extends CMNode {
-	CMNode getOriginNode();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/ContentModelAdapter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/ContentModelAdapter.java
deleted file mode 100644
index 5443ab3..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/ContentModelAdapter.java
+++ /dev/null
@@ -1,56 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.contentmodel;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-/**
- * ContentModelAdapter interface
- */
-public interface ContentModelAdapter extends org.eclipse.wst.sse.core.INodeAdapter {
-
-	/**
-	 * getCMDocument method
-	 * 
-	 * @return CMDocument
-	 * @param notifer
-	 *            com.ibm.sed.model.INodeNotifier
-	 * 
-	 * Returns CMDocument associated to the adapting node. For exampl : HTML
-	 * CMDocument is associated to HTML Document node, DTD CMDocument is
-	 * associated to DocumentType node, DTD/Schema CMDocument is associated to
-	 * Element node (sometime with namespace), and taglib CMDocument is
-	 * associated to taglib directive Element node.
-	 * 
-	 * INodeNotifier is passed for stateless (singleton) INodeAdapter
-	 * implementation.
-	 */
-	CMDocument getCMDocument(org.eclipse.wst.sse.core.INodeNotifier notifier);
-
-	/**
-	 * getDeclaration method
-	 * 
-	 * @return CMNode
-	 * @param notifer
-	 *            com.ibm.sed.model.INodeNotifier
-	 * 
-	 * Returns ElementDefinition or AttributeDefinition for the adapting node.
-	 * 
-	 * INodeNotifier is passed for stateless (singleton) INodeAdapter
-	 * implementation.
-	 */
-	CMNode getDeclaration(org.eclipse.wst.sse.core.INodeNotifier notifier);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/NullContentModel.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/NullContentModel.java
deleted file mode 100644
index c393c6e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contentmodel/NullContentModel.java
+++ /dev/null
@@ -1,101 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.contentmodel;
-
-import java.util.Iterator;
-import java.util.NoSuchElementException;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-
-/**
- * This class can be used to intialize specific variables that need a content
- * model, until the true content model is available. This prevents having to
- * do lots of null checks.
- */
-public class NullContentModel implements CMDocument {
-
-	private static class NullCMNamedNodeMap implements CMNamedNodeMap {
-		public int getLength() {
-			return 0;
-		}
-
-		public CMNode getNamedItem(String name) {
-			return null;
-		}
-
-		public CMNode item(int index) {
-			return null;
-		}
-
-		public Iterator iterator() {
-			return new NullIterator();
-		}
-
-	}
-
-	private static class NullIterator implements Iterator {
-		public NullIterator() {
-		}
-
-		public boolean hasNext() {
-			return false;
-		}
-
-		public Object next() {
-			throw new NoSuchElementException();
-		}
-
-		public void remove() {
-			throw new UnsupportedOperationException("can not remove regions via iterator"); //$NON-NLS-1$
-
-		}
-
-	}
-
-	public NullContentModel() {
-		super();
-	}
-
-	public CMNamedNodeMap getElements() {
-		return new NullCMNamedNodeMap();
-	}
-
-	public CMNamedNodeMap getEntities() {
-		return new NullCMNamedNodeMap();
-	}
-
-	public CMNamespace getNamespace() {
-		return null;
-	}
-
-	public String getNodeName() {
-		return null;
-	}
-
-	public int getNodeType() {
-		return 0;
-	}
-
-	public Object getProperty(String propertyName) {
-		return null;
-	}
-
-	public boolean supports(String propertyName) {
-		return false;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contenttype/ContentTypeIdForXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contenttype/ContentTypeIdForXML.java
deleted file mode 100644
index 891788e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/contenttype/ContentTypeIdForXML.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xml.core.contenttype;
-
-/**
- * This class, with its one field, is a convience to provide compile-time
- * safety when refering to a contentType ID. The value of the contenttype id
- * field must match what is specified in plugin.xml file.
- */
-
-public class ContentTypeIdForXML {
-	/**
-	 * This content type is actually supplied by base Eclipse. Its given here
-	 * just as documentation for WTP based clients. Typically, clients should
-	 * use the values/constants supplied by base Eclipse.
-	 */
-	public final static String ContentTypeID_XML = getConstantString2();
-	/**
-	 * This value is public only for testing and special infrastructure The
-	 * constant nor is value should not be referenced by clients.
-	 * 
-	 * The value of the contenttype id field must match what is specified in
-	 * plugin.xml file. Note: this value is intentially set with default
-	 * protected method so it will not be inlined.
-	 */
-	public final static String ContentTypeID_SSEXML = getConstantString();
-
-	/**
-	 * Don't allow instantiation.
-	 */
-	private ContentTypeIdForXML() {
-		super();
-	}
-
-	static String getConstantString() {
-		return "org.eclipse.wst.xml.core.xmlsource"; //$NON-NLS-1$
-	}
-
-	static String getConstantString2() {
-		return "org.eclipse.core.runtime.xml"; //$NON-NLS-1$
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/DocumentTypeAdapter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/DocumentTypeAdapter.java
deleted file mode 100644
index 285ad87..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/DocumentTypeAdapter.java
+++ /dev/null
@@ -1,51 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.w3c.dom.DocumentType;
-
-
-/**
- */
-public interface DocumentTypeAdapter extends INodeAdapter {
-	static final int LOWER_CASE = 2;
-	static final int STRICT_CASE = 0;
-	static final int UPPER_CASE = 1;
-
-	/**
-	 */
-	int getAttrNameCase();
-
-	/**
-	 */
-	DocumentType getDocumentType();
-
-	/**
-	 */
-	int getTagNameCase();
-
-	/**
-	 */
-	boolean hasFeature(String feature);
-
-	/**
-	 */
-	boolean isXMLType();
-
-	/**
-	 */
-	void release();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/InvalidCharacterException.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/InvalidCharacterException.java
deleted file mode 100644
index 612efd0..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/InvalidCharacterException.java
+++ /dev/null
@@ -1,67 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-/**
- * Thrown an invalid character is specified in : XMLNode#setSource(String)
- */
-public class InvalidCharacterException extends Exception {
-
-	/**
-	 * Default <code>serialVersionUID</code>
-	 */
-	private static final long serialVersionUID = 1L;
-	private char invalidChar = 0;
-	private int offset = -1;
-
-	/**
-	 */
-	public InvalidCharacterException() {
-		super();
-	}
-
-	/**
-	 */
-	public InvalidCharacterException(String s) {
-		super(s);
-	}
-
-	/**
-	 */
-	public InvalidCharacterException(String s, char c) {
-		super(s);
-		this.invalidChar = c;
-	}
-
-	/**
-	 */
-	public InvalidCharacterException(String s, char c, int offset) {
-		super(s);
-		this.invalidChar = c;
-		this.offset = offset;
-	}
-
-	/**
-	 */
-	public char getInvalidChar() {
-		return this.invalidChar;
-	}
-
-	/**
-	 */
-	public int getOffset() {
-		return this.offset;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/JSPTag.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/JSPTag.java
deleted file mode 100644
index b4398d9..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/JSPTag.java
+++ /dev/null
@@ -1,34 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-/**
- * JSPTag interface
- */
-public interface JSPTag {
-	static final String COMMENT_CLOSE = "--%>";//$NON-NLS-1$
-	static final String COMMENT_OPEN = "<%--";//$NON-NLS-1$
-	static final String DECLARATION_TOKEN = "!";//$NON-NLS-1$
-	static final String DIRECTIVE_TOKEN = "@";//$NON-NLS-1$
-	static final String EXPRESSION_TOKEN = "=";//$NON-NLS-1$
-	static final String JSP_DECLARATION = "jsp:declaration";//$NON-NLS-1$
-	static final String JSP_DIRECTIVE = "jsp:directive";//$NON-NLS-1$
-	static final String JSP_EXPRESSION = "jsp:expression";//$NON-NLS-1$
-	static final String JSP_ROOT = "jsp:root";//$NON-NLS-1$
-
-	static final String JSP_SCRIPTLET = "jsp:scriptlet";//$NON-NLS-1$
-	static final String TAG_CLOSE = "%>";//$NON-NLS-1$
-	static final String TAG_OPEN = "<%";//$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/TagAdapter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/TagAdapter.java
deleted file mode 100644
index 1c7d0c4..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/TagAdapter.java
+++ /dev/null
@@ -1,34 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-
-/**
- */
-public interface TagAdapter extends INodeAdapter {
-
-	/**
-	 */
-	String getEndTag(XMLElement element);
-
-	/**
-	 */
-	String getStartTag(XMLElement element);
-
-	/**
-	 */
-	boolean isEndTag();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLAttr.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLAttr.java
deleted file mode 100644
index 2922914..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLAttr.java
+++ /dev/null
@@ -1,65 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.w3c.dom.Attr;
-
-
-/**
- */
-public interface XMLAttr extends XMLNode, Attr {
-
-	/**
-	 */
-	ITextRegion getEqualRegion();
-
-	/**
-	 * @return
-	 */
-	int getNameRegionEndOffset();
-
-	int getNameRegionStartOffset();
-
-	String getNameRegionText();
-
-	/**
-	 * @return
-	 */
-	int getNameRegionTextEndOffset();
-
-	int getValueRegionStartOffset();
-
-	String getValueRegionText();
-
-	/**
-	 * Check if Attr has JSP in value
-	 */
-	boolean hasNestedValue();
-
-	/**
-	 * Check if Attr has only name but not equal sign nor value
-	 */
-	boolean hasNameOnly();
-
-	/**
-	 */
-	boolean isGlobalAttr();
-
-	/**
-	 */
-	boolean isXMLAttr();
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLCharEntity.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLCharEntity.java
deleted file mode 100644
index d1984d9..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLCharEntity.java
+++ /dev/null
@@ -1,37 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-/**
- * XML Namespace constants
- */
-public interface XMLCharEntity {
-	static final String AMP_NAME = "amp";//$NON-NLS-1$
-	static final String AMP_REF = "&amp;";//$NON-NLS-1$
-	static final String AMP_VALUE = "&";//$NON-NLS-1$
-	static final String APOS_NAME = "apos";//$NON-NLS-1$
-	static final String APOS_REF = "&apos;";//$NON-NLS-1$
-	static final String APOS_VALUE = "'";//$NON-NLS-1$
-	static final String GT_NAME = "gt";//$NON-NLS-1$
-	static final String GT_REF = "&gt;";//$NON-NLS-1$
-	static final String GT_VALUE = ">";//$NON-NLS-1$
-
-	static final String LT_NAME = "lt";//$NON-NLS-1$
-	static final String LT_REF = "&lt;";//$NON-NLS-1$
-	static final String LT_VALUE = "<";//$NON-NLS-1$
-	static final String QUOT_NAME = "quot";//$NON-NLS-1$
-	static final String QUOT_REF = "&quot;";//$NON-NLS-1$
-	static final String QUOT_VALUE = "\"";//$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLDocument.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLDocument.java
deleted file mode 100644
index a461cab..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLDocument.java
+++ /dev/null
@@ -1,66 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.ranges.DocumentRange;
-import org.w3c.dom.traversal.DocumentTraversal;
-
-/**
- * This interface enables creation of DOCTYPE declaration and some DOM Level 2
- * interfaces.
- */
-public interface XMLDocument extends XMLNode, Document, DocumentRange, DocumentTraversal {
-
-	/**
-	 * create comment element. tagName must be registered as comment element
-	 * name in plugin.xml
-	 * 
-	 * @param tagName
-	 *            the element name
-	 * @param isJSPTag
-	 *            true if the element is JSP style comment (&lt;%-- ...
-	 *            --%&gt;)
-	 * @return Element element instance
-	 * @throws DOMException
-	 *             throwed if the element name is registered as comment
-	 *             element
-	 */
-	Element createCommentElement(String tagName, boolean isJSPTag) throws DOMException;
-
-	/**
-	 */
-	DocumentType createDoctype(String name);
-
-	/**
-	 */
-	String getDocumentTypeId();
-
-	/**
-	 */
-	boolean isJSPDocument();
-
-	/**
-	 */
-	boolean isJSPType();
-
-	/**
-	 */
-	boolean isXMLType();
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLDocumentType.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLDocumentType.java
deleted file mode 100644
index 082d4ff..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLDocumentType.java
+++ /dev/null
@@ -1,32 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.w3c.dom.DocumentType;
-
-/**
- * This interface enables setting of Public and System ID for DOCTYPE
- * declaration.
- */
-public interface XMLDocumentType extends XMLNode, DocumentType {
-
-	/**
-	 */
-	void setPublicId(String publicId);
-
-	/**
-	 */
-	void setSystemId(String systemId);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLElement.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLElement.java
deleted file mode 100644
index b983975..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLElement.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.w3c.dom.Element;
-
-/**
- */
-public interface XMLElement extends XMLNode, Element {
-
-	/**
-	 * @deprecated this should probably not be public, but already implemented
-	 */
-	int getEndStartOffset();
-
-	/**
-	 */
-	String getEndTagName();
-
-	/**
-	 * @deprecated this should probably not be public, but already implemented
-	 *  
-	 */
-	int getStartEndOffset();
-
-	/**
-	 */
-	boolean hasEndTag();
-
-	/**
-	 */
-	boolean hasStartTag();
-
-	/**
-	 */
-	boolean isCommentTag();
-
-	/**
-	 * isEmptyTag method
-	 * 
-	 * @return boolean
-	 */
-	boolean isEmptyTag();
-
-	/**
-	 */
-	boolean isEndTag();
-
-	/**
-	 * Returns true for "global tag" (basically, without prefix)
-	 */
-	boolean isGlobalTag();
-
-	/**
-	 * Returns true for no the start and the end tags
-	 */
-	boolean isImplicitTag();
-
-	/**
-	 * isJSPTag method
-	 * 
-	 * @return boolean
-	 */
-	boolean isJSPTag();
-
-	/**
-	 */
-	boolean isStartTagClosed();
-
-	/**
-	 */
-	boolean isXMLTag();
-
-	/**
-	 * @deprecated this should probably not be public, but already implemented
-	 */
-	void notifyEndTagChanged();
-
-	/**
-	 * @deprecated this should probably not be public, but already implemented
-	 */
-	void notifyStartTagChanged();
-
-	/**
-	 */
-	void setCommentTag(boolean isCommentTag);
-
-	/**
-	 */
-	void setEmptyTag(boolean isEmptyTag);
-
-	/**
-	 */
-	void setJSPTag(boolean isJSPTag);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLGenerator.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLGenerator.java
deleted file mode 100644
index 5b9321b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLGenerator.java
+++ /dev/null
@@ -1,154 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.CDATASection;
-import org.w3c.dom.Comment;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.EntityReference;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-import org.w3c.dom.Text;
-
-public interface XMLGenerator {
-
-	/**
-	 */
-	String generateAttrName(Attr attr);
-
-	/**
-	 */
-	String generateAttrValue(Attr attr);
-
-	/**
-	 */
-	String generateAttrValue(Attr attr, char quote);
-
-	/**
-	 */
-	String generateAttrValue(String value, char quote);
-
-	/**
-	 * generateCDATASection method
-	 * 
-	 * @return java.lang.String
-	 * @param comment
-	 *            org.w3c.dom.CDATASection
-	 */
-	String generateCDATASection(CDATASection cdata);
-
-	/**
-	 * generateChild method
-	 * 
-	 * @return java.lang.String
-	 * @param org.w3c.dom.Node
-	 */
-	String generateChild(Node parentNode);
-
-	/**
-	 */
-	String generateCloseTag(Node node);
-
-	/**
-	 * generateComment method
-	 * 
-	 * @return java.lang.String
-	 * @param comment
-	 *            org.w3c.dom.Comment
-	 */
-	String generateComment(Comment comment);
-
-	/**
-	 * generateDoctype method
-	 * 
-	 * @return java.lang.String
-	 * @param docType
-	 *            org.w3c.dom.DocumentType
-	 */
-	String generateDoctype(DocumentType docType);
-
-	/**
-	 * generateElement method
-	 * 
-	 * @return java.lang.String
-	 * @param element
-	 *            Element
-	 */
-	String generateElement(Element element);
-
-	/**
-	 * generateEndTag method
-	 * 
-	 * @return java.lang.String
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	String generateEndTag(Element element);
-
-	/**
-	 * generateEntityRef method
-	 * 
-	 * @return java.lang.String
-	 * @param entityRef
-	 *            org.w3c.dom.EntityReference
-	 */
-	String generateEntityRef(EntityReference entityRef);
-
-	/**
-	 * generatePI method
-	 * 
-	 * @return java.lang.String
-	 * @param pi
-	 *            org.w3c.dom.ProcessingInstruction
-	 */
-	String generatePI(ProcessingInstruction pi);
-
-	/**
-	 * generateSource method
-	 * 
-	 * @return java.lang.String
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	String generateSource(Node node);
-
-	/**
-	 * generateStartTag method
-	 * 
-	 * @return java.lang.String
-	 * @param element
-	 *            Element
-	 */
-	String generateStartTag(Element element);
-
-	/**
-	 */
-	String generateTagName(Element element);
-
-	/**
-	 * generateText method
-	 * 
-	 * @return java.lang.String
-	 * @param text
-	 *            org.w3c.dom.Text
-	 */
-	String generateText(Text text);
-
-	/**
-	 */
-	String generateTextData(Text text, String data);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLModel.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLModel.java
deleted file mode 100644
index f95cff4..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLModel.java
+++ /dev/null
@@ -1,36 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-import org.eclipse.wst.sse.core.IStructuredModel;
-
-
-
-/**
- */
-public interface XMLModel extends IStructuredModel {
-
-	XMLDocument getDocument();
-
-	/**
-	 */
-	XMLGenerator getGenerator();
-
-	/**
-	 */
-	XMLModelNotifier getModelNotifier();
-
-	/**
-	 */
-	void setModelNotifier(XMLModelNotifier notifier);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLModelNotifier.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLModelNotifier.java
deleted file mode 100644
index 1cee885..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLModelNotifier.java
+++ /dev/null
@@ -1,103 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public interface XMLModelNotifier {
-
-	/**
-	 * attrReplaced method
-	 * 
-	 * @param element
-	 *            org.w3c.dom.Element
-	 * @param newAttr
-	 *            org.w3c.dom.Attr
-	 * @param oldAttr
-	 *            org.w3c.dom.Attr
-	 */
-	void attrReplaced(Element element, Attr newAttr, Attr oldAttr);
-
-	/**
-	 */
-	void beginChanging();
-
-	/**
-	 */
-	void beginChanging(boolean newModel);
-
-	/**
-	 * Cancel pending notifications. This is called in the context of
-	 * "reinitialization" so is assumed ALL notifications can be safely
-	 * canceled, assuming that once factories and adapters are re-initialized
-	 * they will be re-notified as text is set in model, if still appropriate.
-	 */
-	void cancelPending();
-
-	/**
-	 * childReplaced method
-	 * 
-	 * @param parentNode
-	 *            org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	void childReplaced(Node parentNode, Node newChild, Node oldChild);
-
-	/**
-	 */
-	void editableChanged(Node node);
-
-	/**
-	 */
-	void endChanging();
-
-	/**
-	 */
-	void endTagChanged(Element element);
-
-	/**
-	 */
-	boolean hasChanged();
-
-	/**
-	 */
-	boolean isChanging();
-
-	/**
-	 */
-	void propertyChanged(Node node);
-
-	/**
-	 */
-	void startTagChanged(Element element);
-
-	/**
-	 */
-	void structureChanged(Node node);
-
-	/**
-	 * valueChanged method
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	void valueChanged(Node node);
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLNamespace.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLNamespace.java
deleted file mode 100644
index 04188a6..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLNamespace.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-/**
- * XML Namespace constants
- */
-public interface XMLNamespace {
-
-	static final String XMLNS = "xmlns";//$NON-NLS-1$
-	static final String XMLNS_PREFIX = "xmlns:";//$NON-NLS-1$
-	static final String XMLNS_URI = "http://www.w3.org/2000/xmlns/";//$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLNode.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLNode.java
deleted file mode 100644
index b200581..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLNode.java
+++ /dev/null
@@ -1,124 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-/**
- * A interface to make concept clearer, just to denote the combination of
- * three other interfaces.
- *  
- */
-public interface XMLNode extends org.eclipse.wst.sse.core.IndexedRegion, org.eclipse.wst.sse.core.INodeNotifier, org.w3c.dom.Node {
-
-	/**
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	IStructuredDocumentRegion getEndStructuredDocumentRegion();
-
-	/**
-	 */
-	IStructuredDocumentRegion getFirstStructuredDocumentRegion();
-
-	/**
-	 */
-	IStructuredDocumentRegion getLastStructuredDocumentRegion();
-
-	/**
-	 */
-	XMLModel getModel();
-
-	/**
-	 */
-	ITextRegion getNameRegion();
-
-	/**
-	 */
-	String getSource();
-
-	/**
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	IStructuredDocumentRegion getStartStructuredDocumentRegion();
-
-	/**
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocument
-	 */
-	IStructuredDocument getStructuredDocument();
-
-	/**
-	 */
-	ITextRegion getValueRegion();
-
-	/**
-	 */
-	String getValueSource();
-
-	/**
-	 * 
-	 * @return boolean Whether children of the element can be appended or
-	 *         removed.
-	 */
-	boolean isChildEditable();
-
-	/**
-	 */
-	boolean isClosed();
-
-	/**
-	 * isContainer method
-	 * 
-	 * @return boolean
-	 */
-	boolean isContainer();
-
-	/**
-	 */
-	boolean isDataEditable();
-
-	/**
-	 */
-	void setChildEditable(boolean editable);
-
-	/**
-	 */
-	void setDataEditable(boolean editable);
-
-	/**
-	 * faster approach to set
-	 */
-	void setEditable(boolean editable, boolean deep);
-
-	/**
-	 * Sets the specified raw source to the Text node. Throws
-	 * InvalidCharacterException when the specified raw source includes
-	 * invalid characters, such as, ' <', '>' and '&'. Valid character
-	 * entities, such as, "&amp;lt;", are accepted.
-	 */
-	void setSource(String source) throws InvalidCharacterException;
-
-	/**
-	 * Sets the specified raw source to the Text or Attr node's value. When
-	 * the specified raw source includes invalid characters, such as, ' <',
-	 * '>' and '&', converts them. Valid character entities, such as,
-	 * "&amp;lt;", are accepted.
-	 */
-	void setValueSource(String source);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLText.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLText.java
deleted file mode 100644
index fe80a06..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/document/XMLText.java
+++ /dev/null
@@ -1,40 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.document;
-
-
-
-import org.w3c.dom.Text;
-
-/**
- */
-public interface XMLText extends XMLNode, Text {
-
-	/**
-	 * Appends the content of the text node
-	 */
-	void appendText(Text text);
-
-	/**
-	 * Inserts the content of the text node at the specified position
-	 */
-	void insertText(Text text, int offset);
-
-	/**
-	 */
-	boolean isInvalid();
-
-	/**
-	 */
-	boolean isWhitespace();
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/encoding/XMLDocumentCharsetDetector.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/encoding/XMLDocumentCharsetDetector.java
deleted file mode 100644
index d1c07cc..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/encoding/XMLDocumentCharsetDetector.java
+++ /dev/null
@@ -1,37 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.encoding;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.wst.sse.core.document.DocumentReader;
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-import org.eclipse.wst.xml.core.internal.contenttype.XMLResourceEncodingDetector;
-
-
-/**
- * This class reads and parses first of XML file to get encoding.
- *  
- */
-public class XMLDocumentCharsetDetector extends XMLResourceEncodingDetector implements IDocumentCharsetDetector {
-
-	/**
-	 * XMLLoader constructor comment.
-	 */
-	public XMLDocumentCharsetDetector() {
-		super();
-	}
-
-	public void set(IDocument document) {
-		set(new DocumentReader(document, 0));
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/encoding/XMLDocumentLoader.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/encoding/XMLDocumentLoader.java
deleted file mode 100644
index 2914390..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/encoding/XMLDocumentLoader.java
+++ /dev/null
@@ -1,78 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.encoding;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.wst.sse.core.document.AbstractDocumentLoader;
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.document.IEncodedDocument;
-import org.eclipse.wst.sse.core.document.StructuredDocumentFactory;
-import org.eclipse.wst.sse.core.internal.encoding.ContentTypeEncodingPreferences;
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocument;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.xml.core.contenttype.ContentTypeIdForXML;
-import org.eclipse.wst.xml.core.internal.parser.XMLSourceParser;
-import org.eclipse.wst.xml.core.internal.parser.XMLStructuredDocumentReParser;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-
-
-/**
- * This class reads an XML file and creates an XML Structured Model.
- * 
- */
-public class XMLDocumentLoader extends AbstractDocumentLoader {
-
-	public XMLDocumentLoader() {
-		super();
-	}
-
-	public IDocumentPartitioner getDefaultDocumentPartitioner() {
-		return new StructuredTextPartitionerForXML();
-	}
-
-	public IDocumentCharsetDetector getDocumentEncodingDetector() {
-		if (fDocumentEncodingDetector == null) {
-			fDocumentEncodingDetector = new XMLDocumentCharsetDetector();
-		}
-		return fDocumentEncodingDetector;
-	}
-
-	public RegionParser getParser() {
-		return new XMLSourceParser();
-	}
-
-	protected String getPreferredNewLineDelimiter() {
-		return ContentTypeEncodingPreferences.getPreferredNewLineDelimiter(ContentTypeIdForXML.ContentTypeID_XML);
-	}
-
-	protected String getSpecDefaultEncoding() {
-		// by default, UTF-8 as per XML spec
-		final String enc = "UTF-8"; //$NON-NLS-1$
-		return enc;
-	}
-
-	protected IEncodedDocument newEncodedDocument() {
-		IStructuredDocument structuredDocument = StructuredDocumentFactory.getNewStructuredDocumentInstance(getParser());
-		if (structuredDocument instanceof BasicStructuredDocument) {
-			((BasicStructuredDocument) structuredDocument).setReParser(new XMLStructuredDocumentReParser());
-		}
-		return structuredDocument;
-	}
-
-	public IDocumentLoader newInstance() {
-		return new XMLDocumentLoader();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/CommentNodeFormatter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/CommentNodeFormatter.java
deleted file mode 100644
index f962f15..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/CommentNodeFormatter.java
+++ /dev/null
@@ -1,99 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.format;
-
-import org.eclipse.wst.sse.core.format.IStructuredFormatContraints;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.Node;
-
-
-public class CommentNodeFormatter extends NodeFormatter {
-
-	protected String adjustIndentations(String aString, String lineIndent, String singleIndent) {
-		String result = new String();
-
-		int indexOfLineDelimiter = StringUtils.indexOfLineDelimiter(aString);
-		result = aString.substring(0, indexOfLineDelimiter);
-		while (indexOfLineDelimiter != -1) {
-			// Before find the next LineDelimiter, we have to figure out the
-			// size of the current LineDelimiter
-			// so we can figure out how many bytes to skip before finding the
-			// next LineDelimiter.
-			// Otherwise, we may treat the LF in CRLF as the next
-			// LineDelimiter.
-			int lineDelimiterSize = 1;
-			if (aString.length() >= indexOfLineDelimiter + 2 && aString.substring(indexOfLineDelimiter, indexOfLineDelimiter + 1).compareTo(CR) == 0 && aString.substring(indexOfLineDelimiter + 1, indexOfLineDelimiter + 2).compareTo(LF) == 0)
-				lineDelimiterSize = 2;
-
-			int indexOfNextLineDelimiter = StringUtils.indexOfLineDelimiter(aString, indexOfLineDelimiter + lineDelimiterSize);
-			int indexOfNonblank = StringUtils.indexOfNonblank(aString, indexOfLineDelimiter);
-
-			if (indexOfNonblank != -1) {
-				if (indexOfNextLineDelimiter == -1) {
-					// last line; copy till the end
-					result += lineIndent + singleIndent + aString.substring(indexOfNonblank);
-				} else if (indexOfNextLineDelimiter != -1 && indexOfNextLineDelimiter < indexOfNonblank) {
-					// blank line; just add a indent
-					result += lineIndent + singleIndent;
-				} else {
-					// copy all text between indexOfNonblank and
-					// indexOfNextLineDelimiter
-					result += lineIndent + singleIndent + aString.substring(indexOfNonblank, indexOfNextLineDelimiter);
-				}
-
-				indexOfLineDelimiter = indexOfNextLineDelimiter;
-			} else {
-				if (indexOfNextLineDelimiter == -1) {
-					result += lineIndent;
-				} else {
-					// blank line; just add a indent
-					result += lineIndent + singleIndent;
-				}
-
-				indexOfLineDelimiter = indexOfNextLineDelimiter;
-			}
-		}
-
-		return result;
-	}
-
-	protected void formatNode(XMLNode node, IStructuredFormatContraints formatContraints) {
-		if (node != null) {
-			// lineDelimiterFound means multi line comment
-			String nodeValue = node.getNodeValue();
-			boolean lineDelimiterFoundInComment = StringUtils.containsLineDelimiter(nodeValue);
-
-			if (lineDelimiterFoundInComment) {
-				// format indentation before node
-				formatIndentationBeforeNode(node, formatContraints);
-
-				// adjust indentations in multi line comment
-				String lineDelimiter = node.getModel().getStructuredDocument().getLineDelimiter();
-				String lineIndent = formatContraints.getCurrentIndent();
-				String singleIndent = getFormatPreferences().getIndent();
-				String newNodevalue = adjustIndentations(nodeValue, lineDelimiter + lineIndent, singleIndent);
-				if (nodeValue.compareTo(newNodevalue) != 0)
-					node.setNodeValue(newNodevalue);
-			}
-
-			if (!nodeHasSiblings(node) || (node.getPreviousSibling() != null && node.getPreviousSibling().getNodeType() == Node.TEXT_NODE && !StringUtils.containsLineDelimiter(node.getPreviousSibling().getNodeValue()) && node.getNextSibling() == null)) {
-				// single child
-				// or inline comment after text
-				// do nothing
-			} else
-				// format indentation after node
-				formatIndentationAfterNode(node, formatContraints);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/DocumentNodeFormatter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/DocumentNodeFormatter.java
deleted file mode 100644
index ee671a9..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/DocumentNodeFormatter.java
+++ /dev/null
@@ -1,53 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.format;
-
-import org.eclipse.wst.sse.core.format.IStructuredFormatContraints;
-import org.eclipse.wst.sse.core.format.IStructuredFormatter;
-import org.eclipse.wst.xml.core.document.XMLNode;
-
-
-public class DocumentNodeFormatter extends NodeFormatter {
-	protected void formatChildren(XMLNode node, IStructuredFormatContraints formatContraints) {
-		String singleIndent = getFormatPreferences().getIndent();
-		String lineIndent = formatContraints.getCurrentIndent();
-
-		if (node != null && (fProgressMonitor == null || !fProgressMonitor.isCanceled())) {
-			// normalize node first to combine adjacent text nodes
-			node.normalize();
-
-			XMLNode nextChild = (XMLNode) node.getFirstChild();
-			while (nextChild != null) {
-				XMLNode eachChildNode = nextChild;
-				nextChild = (XMLNode) eachChildNode.getNextSibling();
-				IStructuredFormatter formatter = getFormatter(eachChildNode);
-				IStructuredFormatContraints childFormatContraints = formatter.getFormatContraints();
-				String childIndent = lineIndent + singleIndent;
-				childFormatContraints.setCurrentIndent(childIndent);
-				childFormatContraints.setClearAllBlankLines(formatContraints.getClearAllBlankLines());
-
-				// format each child
-				formatter.format(eachChildNode, childFormatContraints);
-
-				if (nextChild != null && nextChild.getParentNode() == null)
-					// nextNode is deleted during format
-					nextChild = (XMLNode) eachChildNode.getNextSibling();
-			}
-		}
-	}
-
-	protected void formatNode(XMLNode node, IStructuredFormatContraints formatContraints) {
-		if (node != null)
-			formatChildren(node, formatContraints);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/ElementNodeFormatter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/ElementNodeFormatter.java
deleted file mode 100644
index 9434e8f..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/ElementNodeFormatter.java
+++ /dev/null
@@ -1,354 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.format;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.format.IStructuredFormatContraints;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLGenerator;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.document.AttrImpl;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-
-public class ElementNodeFormatter extends DocumentNodeFormatter {
-	static protected final char DOUBLE_QUOTE = '"';//$NON-NLS-1$
-	static protected final String DOUBLE_QUOTES = "\"\"";//$NON-NLS-1$
-	static protected final char EQUAL_CHAR = '='; // equal sign$NON-NLS-1$
-	static protected final String PRESERVE = "preserve";//$NON-NLS-1$
-	static protected final String PRESERVE_QUOTED = "\"preserve\"";//$NON-NLS-1$
-	static protected final char SINGLE_QUOTE = '\'';//$NON-NLS-1$
-	static protected final String XML_SPACE = "xml:space";//$NON-NLS-1$
-
-	protected void formatEndTag(XMLNode node, IStructuredFormatContraints formatContraints) {
-		if (!isEndTagMissing(node)) {
-			// end tag exists
-
-			IStructuredDocument structuredDocument = node.getModel().getStructuredDocument();
-			String lineDelimiter = structuredDocument.getLineDelimiter();
-			String nodeIndentation = getNodeIndent(node);
-			XMLNode lastChild = (XMLNode) node.getLastChild();
-			if (lastChild != null && lastChild.getNodeType() != Node.TEXT_NODE) {
-				if (isEndTagMissing(lastChild)) {
-					// find deepest child
-					XMLNode deepestChild = (XMLNode) lastChild.getLastChild();
-					while (deepestChild != null && deepestChild.getLastChild() != null && isEndTagMissing(deepestChild)) {
-						lastChild = deepestChild;
-						deepestChild = (XMLNode) deepestChild.getLastChild();
-					}
-
-					if (deepestChild != null) {
-						if (deepestChild.getNodeType() == Node.TEXT_NODE) {
-							// Special indentation handling if lastChild's end
-							// tag is missing and deepestChild is a text node.
-							String nodeText = deepestChild.getNodeValue();
-
-							if (!nodeText.endsWith(lineDelimiter + nodeIndentation)) {
-								nodeText = StringUtils.appendIfNotEndWith(nodeText, lineDelimiter);
-								nodeText = StringUtils.appendIfNotEndWith(nodeText, nodeIndentation);
-							}
-
-							replaceNodeValue(deepestChild, nodeText);
-						} else
-							insertAfterNode(lastChild, lineDelimiter + nodeIndentation);
-					}
-				} else
-					// indent end tag
-					insertAfterNode(lastChild, lineDelimiter + nodeIndentation);
-			} else if (lastChild == null && firstStructuredDocumentRegionContainsLineDelimiters(node)) {
-				// indent end tag
-				replace(structuredDocument, node.getFirstStructuredDocumentRegion().getEndOffset(), 0, lineDelimiter + nodeIndentation);
-			}
-
-			// format end tag name
-			IStructuredDocumentRegion endTagStructuredDocumentRegion = node.getLastStructuredDocumentRegion();
-			if (endTagStructuredDocumentRegion.getRegions().size() >= 3) {
-				ITextRegion endTagNameRegion = endTagStructuredDocumentRegion.getRegions().get(1);
-				removeRegionSpaces(node, endTagStructuredDocumentRegion, endTagNameRegion);
-			}
-		}
-	}
-
-	protected void formatNode(XMLNode node, IStructuredFormatContraints formatContraints) {
-		if (node != null) {
-			// format indentation before node
-			formatIndentationBeforeNode(node, formatContraints);
-
-			// format start tag
-			XMLNode newNode = node;
-			int startTagStartOffset = node.getStartOffset();
-			XMLModel structuredModel = node.getModel();
-
-			formatStartTag(node, formatContraints);
-			// save new node
-			newNode = (XMLNode) structuredModel.getIndexedRegion(startTagStartOffset);
-
-			IStructuredDocumentRegion flatNode = newNode.getFirstStructuredDocumentRegion();
-			if (flatNode != null) {
-				ITextRegionList regions = flatNode.getRegions();
-				ITextRegion lastRegion = regions.get(regions.size() - 1);
-				// format children and end tag if not empty start tag
-				if (lastRegion.getType() != XMLRegionContext.XML_EMPTY_TAG_CLOSE) {
-					// format children
-					formatChildren(newNode, formatContraints);
-
-					// save new node
-					newNode = (XMLNode) structuredModel.getIndexedRegion(startTagStartOffset);
-
-					// format end tag
-					formatEndTag(newNode, formatContraints);
-				}
-			}
-
-			// format indentation after node
-			formatIndentationAfterNode(newNode, formatContraints);
-		}
-	}
-
-	/**
-	 * This method formats the start tag name, and formats the attributes if
-	 * available.
-	 */
-	protected void formatStartTag(XMLNode node, IStructuredFormatContraints formatContraints) {
-		String singleIndent = getFormatPreferences().getIndent();
-		String lineIndent = formatContraints.getCurrentIndent();
-		String attrIndent = lineIndent + singleIndent;
-		boolean splitMultiAttrs = ((IStructuredFormatPreferencesXML) fFormatPreferences).getSplitMultiAttrs();
-		IStructuredDocumentRegion flatNode = node.getFirstStructuredDocumentRegion();
-		NamedNodeMap attributes = node.getAttributes();
-
-		// Note: attributes should not be null even if the node has no
-		// attributes. However, attributes.getLength() will be 0. But, check
-		// for null just in case.
-		if (attributes != null) {
-			// compute current available line width
-			int currentAvailableLineWidth = 0;
-			try {
-				// 1 is for "<"
-				int nodeNameOffset = node.getStartOffset() + 1 + node.getNodeName().length();
-				int lineOffset = node.getStructuredDocument().getLineInformationOfOffset(nodeNameOffset).getOffset();
-				String text = node.getStructuredDocument().get(lineOffset, nodeNameOffset - lineOffset);
-				int usedWidth = getIndentationLength(text);
-				currentAvailableLineWidth = getFormatPreferences().getLineWidth() - usedWidth;
-			} catch (BadLocationException exception) {
-				throw new SourceEditingRuntimeException(exception);
-			}
-
-			StringBuffer stringBuffer = new StringBuffer();
-			String lineDelimiter = node.getModel().getStructuredDocument().getLineDelimiter();
-			int attrLength = attributes.getLength();
-			int lastUndefinedRegionOffset = 0;
-			for (int i = 0; i < attrLength; i++) {
-				AttrImpl attr = (AttrImpl) attributes.item(i);
-				ITextRegion nameRegion = attr.getNameRegion();
-				ITextRegion equalRegion = attr.getEqualRegion();
-				ITextRegion valueRegion = attr.getValueRegion();
-
-				// append undefined regions
-				String undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, attr.getStartOffset() - lastUndefinedRegionOffset);
-				stringBuffer.append(undefinedRegion);
-				lastUndefinedRegionOffset = attr.getStartOffset();
-
-				// check for xml:space attribute
-				if (flatNode.getText(nameRegion).compareTo(XML_SPACE) == 0) {
-					if (valueRegion == null) {
-						ModelQueryAdapter adapter = (ModelQueryAdapter) ((XMLDocument) node.getOwnerDocument()).getAdapterFor(ModelQueryAdapter.class);
-						CMElementDeclaration elementDeclaration = (CMElementDeclaration) adapter.getModelQuery().getCMNode(node);
-						if (elementDeclaration == null)
-							// CMElementDeclaration not found, default to
-							// PRESERVE
-							formatContraints.setClearAllBlankLines(false);
-						else {
-							CMAttributeDeclaration attributeDeclaration = (CMAttributeDeclaration) elementDeclaration.getAttributes().getNamedItem(XML_SPACE);
-							if (attributeDeclaration == null)
-								// CMAttributeDeclaration not found, default
-								// to PRESERVE
-								formatContraints.setClearAllBlankLines(false);
-							else {
-								String defaultValue = attributeDeclaration.getAttrType().getImpliedValue();
-
-								if (defaultValue.compareTo(PRESERVE) == 0)
-									formatContraints.setClearAllBlankLines(false);
-								else
-									formatContraints.setClearAllBlankLines(getFormatPreferences().getClearAllBlankLines());
-							}
-						}
-					} else {
-						XMLGenerator generator = node.getModel().getGenerator();
-						String newAttrValue = generator.generateAttrValue(attr);
-
-						// There is a problem in
-						// StructuredDocumentRegionUtil.getAttrValue(ITextRegion)
-						// when the region is instanceof ContextRegion.
-						// Workaround for now.
-						if (flatNode.getText(valueRegion).length() == 1) {
-							char firstChar = flatNode.getText(valueRegion).charAt(0);
-							if ((firstChar == DOUBLE_QUOTE) || (firstChar == SINGLE_QUOTE))
-								newAttrValue = DOUBLE_QUOTES;
-						}
-
-						if (newAttrValue.compareTo(PRESERVE_QUOTED) == 0)
-							formatContraints.setClearAllBlankLines(false);
-						else
-							formatContraints.setClearAllBlankLines(getFormatPreferences().getClearAllBlankLines());
-					}
-				}
-
-				if (splitMultiAttrs && attrLength > 1) {
-					stringBuffer.append(lineDelimiter + attrIndent);
-					stringBuffer.append(flatNode.getText(nameRegion));
-					if (valueRegion != null) {
-						// append undefined regions
-						undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(equalRegion) - lastUndefinedRegionOffset);
-						stringBuffer.append(undefinedRegion);
-						lastUndefinedRegionOffset = flatNode.getStartOffset(equalRegion);
-
-						stringBuffer.append(EQUAL_CHAR);
-
-						// append undefined regions
-						undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(valueRegion) - lastUndefinedRegionOffset);
-						stringBuffer.append(undefinedRegion);
-						lastUndefinedRegionOffset = flatNode.getStartOffset(valueRegion);
-
-						// Note: trim() should not be needed for
-						// valueRegion.getText(). Just a workaround for a
-						// problem found in valueRegion for now.
-						stringBuffer.append(flatNode.getText(valueRegion).trim());
-					}
-				} else {
-					if (valueRegion != null) {
-						int textLength = 1 + flatNode.getText(nameRegion).length() + 1 + flatNode.getText(valueRegion).length();
-						if (i == attrLength - 1) {
-							if (flatNode != null) {
-								ITextRegionList regions = flatNode.getRegions();
-								ITextRegion lastRegion = regions.get(regions.size() - 1);
-								if (lastRegion.getType() != XMLRegionContext.XML_EMPTY_TAG_CLOSE)
-									// 3 is for " />"
-									textLength += 3;
-								else
-									// 1 is for ">"
-									textLength++;
-							}
-						}
-
-						if (currentAvailableLineWidth >= textLength) {
-							stringBuffer.append(SPACE_CHAR);
-							currentAvailableLineWidth--;
-						} else {
-							stringBuffer.append(lineDelimiter + attrIndent);
-							currentAvailableLineWidth = getFormatPreferences().getLineWidth() - attrIndent.length();
-						}
-
-						stringBuffer.append(flatNode.getText(nameRegion));
-
-						// append undefined regions
-						undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(equalRegion) - lastUndefinedRegionOffset);
-						stringBuffer.append(undefinedRegion);
-						lastUndefinedRegionOffset = flatNode.getStartOffset(equalRegion);
-
-						stringBuffer.append(EQUAL_CHAR);
-
-						// append undefined regions
-						undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, flatNode.getStartOffset(valueRegion) - lastUndefinedRegionOffset);
-						stringBuffer.append(undefinedRegion);
-						lastUndefinedRegionOffset = flatNode.getStartOffset(valueRegion);
-
-						// Note: trim() should not be needed for
-						// valueRegion.getText(). Just a workaround for a
-						// problem found in valueRegion for now.
-						stringBuffer.append(flatNode.getText(valueRegion).trim());
-
-						currentAvailableLineWidth -= flatNode.getText(nameRegion).length();
-						currentAvailableLineWidth--;
-						currentAvailableLineWidth -= flatNode.getText(valueRegion).trim().length();
-					} else {
-						if (currentAvailableLineWidth >= 1 + flatNode.getText(nameRegion).length()) {
-							stringBuffer.append(SPACE_CHAR);
-							currentAvailableLineWidth--;
-						} else {
-							stringBuffer.append(lineDelimiter + attrIndent);
-							currentAvailableLineWidth = getFormatPreferences().getLineWidth() - attrIndent.length();
-						}
-
-						stringBuffer.append(flatNode.getText(nameRegion));
-
-						currentAvailableLineWidth -= flatNode.getText(nameRegion).length();
-					}
-				}
-			}
-
-			// append undefined regions
-			String undefinedRegion = getUndefinedRegions(node, lastUndefinedRegionOffset, node.getEndOffset() - lastUndefinedRegionOffset);
-			stringBuffer.append(undefinedRegion);
-
-			XMLModel structuredModel = node.getModel();
-			IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-			// 1 is for "<"
-			int offset = node.getStartOffset() + 1 + node.getNodeName().length();
-			// 1 is for "<"
-			int length = node.getFirstStructuredDocumentRegion().getTextLength() - 1 - node.getNodeName().length();
-
-			if (flatNode != null) {
-				ITextRegionList regions = flatNode.getRegions();
-				ITextRegion firstRegion = regions.get(0);
-				ITextRegion lastRegion = regions.get(regions.size() - 1);
-
-				if (firstRegion.getType() == XMLRegionContext.XML_END_TAG_OPEN)
-					// skip formatting for end tags in this format: </tagName>
-					return;
-				else {
-					if (lastRegion.getType() == XMLRegionContext.XML_TAG_CLOSE || lastRegion.getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE)
-						length = length - lastRegion.getLength();
-
-					if (lastRegion.getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE)
-						// leave space before XML_EMPTY_TAG_CLOSE: <tagName />
-						stringBuffer.append(SPACE_CHAR);
-				}
-			}
-
-			replace(structuredDocument, offset, length, stringBuffer.toString());
-		}
-	}
-
-	protected String getUndefinedRegions(XMLNode node, int startOffset, int length) {
-		String result = new String();
-
-		IStructuredDocumentRegion flatNode = node.getFirstStructuredDocumentRegion();
-		ITextRegionList regions = flatNode.getRegions();
-		for (int i = 0; i < regions.size(); i++) {
-			ITextRegion region = regions.get(i);
-			String regionType = region.getType();
-			int regionStartOffset = flatNode.getStartOffset(region);
-
-			if (regionType.compareTo(XMLRegionContext.UNDEFINED) == 0 && regionStartOffset >= startOffset && regionStartOffset < startOffset + length)
-				result = result + flatNode.getFullText(region);
-		}
-
-		if (result.length() > 0)
-			return SPACE + result.trim();
-		else
-			return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/FormatProcessorXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/FormatProcessorXML.java
deleted file mode 100644
index 292bde5..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/FormatProcessorXML.java
+++ /dev/null
@@ -1,108 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.format;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.sse.core.format.AbstractStructuredFormatProcessor;
-import org.eclipse.wst.sse.core.format.IStructuredFormatPreferences;
-import org.eclipse.wst.sse.core.format.IStructuredFormatter;
-import org.eclipse.wst.sse.core.internal.SSECorePlugin;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.eclipse.wst.xml.core.internal.document.CDATASectionImpl;
-import org.w3c.dom.Node;
-
-public class FormatProcessorXML extends AbstractStructuredFormatProcessor {
-	protected IStructuredFormatPreferences fFormatPreferences = null;
-
-	protected String getFileExtension() {
-		return "xml"; //$NON-NLS-1$
-	}
-
-	public IStructuredFormatPreferences getFormatPreferences() {
-		if (fFormatPreferences == null) {
-			fFormatPreferences = new StructuredFormatPreferencesXML();
-
-			Preferences preferences = getModelPreferences();
-			if (preferences != null) {
-				fFormatPreferences.setLineWidth(preferences.getInt(CommonModelPreferenceNames.LINE_WIDTH));
-				((IStructuredFormatPreferencesXML) fFormatPreferences).setSplitMultiAttrs(preferences.getBoolean(CommonModelPreferenceNames.SPLIT_MULTI_ATTRS));
-				fFormatPreferences.setClearAllBlankLines(preferences.getBoolean(CommonModelPreferenceNames.CLEAR_ALL_BLANK_LINES));
-
-				if (preferences.getBoolean(CommonModelPreferenceNames.INDENT_USING_TABS))
-					fFormatPreferences.setIndent("\t"); //$NON-NLS-1$
-				else {
-					int tabWidth = SSECorePlugin.getDefault().getPluginPreferences().getInt(CommonModelPreferenceNames.TAB_WIDTH);
-					String indent = ""; //$NON-NLS-1$
-					for (int i = 0; i < tabWidth; i++) {
-						indent += " "; //$NON-NLS-1$
-					}
-					fFormatPreferences.setIndent(indent);
-				}
-			}
-		}
-
-		return fFormatPreferences;
-	}
-
-	protected IStructuredFormatter getFormatter(Node node) {
-		// 262135 - NPE during format of empty document
-		if (node == null)
-			return null;
-
-		short nodeType = node.getNodeType();
-		IStructuredFormatter formatter = null;
-		switch (nodeType) {
-			case Node.ELEMENT_NODE : {
-				formatter = new ElementNodeFormatter();
-				break;
-			}
-			case Node.TEXT_NODE : {
-				if (node instanceof CDATASectionImpl)
-					formatter = new NodeFormatter();
-				else
-					formatter = new TextNodeFormatter();
-				break;
-			}
-			case Node.COMMENT_NODE : {
-				formatter = new CommentNodeFormatter();
-				break;
-			}
-			case Node.PROCESSING_INSTRUCTION_NODE : {
-				formatter = new NodeFormatter();
-				break;
-			}
-			case Node.DOCUMENT_NODE : {
-				formatter = new DocumentNodeFormatter();
-				break;
-			}
-			default : {
-				formatter = new NodeFormatter();
-			}
-		}
-
-		// init fomatter
-		formatter.setFormatPreferences(getFormatPreferences());
-		formatter.setProgressMonitor(fProgressMonitor);
-
-		return formatter;
-	}
-
-	protected Preferences getModelPreferences() {
-		return XMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	protected void refreshFormatPreferences() {
-		fFormatPreferences = null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/IStructuredFormatPreferencesXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/IStructuredFormatPreferencesXML.java
deleted file mode 100644
index bc3facc..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/IStructuredFormatPreferencesXML.java
+++ /dev/null
@@ -1,21 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.format;
-
-import org.eclipse.wst.sse.core.format.IStructuredFormatPreferences;
-
-public interface IStructuredFormatPreferencesXML extends IStructuredFormatPreferences {
-	boolean getSplitMultiAttrs();
-
-	void setSplitMultiAttrs(boolean splitMultiAttrs);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/NodeFormatter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/NodeFormatter.java
deleted file mode 100644
index 79c2c2b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/NodeFormatter.java
+++ /dev/null
@@ -1,795 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.format;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.format.IStructuredFormatContraints;
-import org.eclipse.wst.sse.core.format.IStructuredFormatPreferences;
-import org.eclipse.wst.sse.core.format.IStructuredFormatter;
-import org.eclipse.wst.sse.core.format.StructuredFormatContraints;
-import org.eclipse.wst.sse.core.internal.SSECorePlugin;
-import org.eclipse.wst.sse.core.internal.parser.ContextRegion;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.eclipse.wst.xml.core.internal.document.CDATASectionImpl;
-import org.eclipse.wst.xml.core.internal.document.CharacterDataImpl;
-import org.eclipse.wst.xml.core.internal.document.CommentImpl;
-import org.eclipse.wst.xml.core.internal.parser.regions.TagNameRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Node;
-
-public class NodeFormatter implements IStructuredFormatter {
-	static protected final String CR = "\r"; //$NON-NLS-1$
-	static protected final String CRLF = "\r\n"; //$NON-NLS-1$
-	static protected final String DELIMITERS = " \t\n\r\f"; //$NON-NLS-1$
-	static protected final String EMPTY_STRING = ""; //$NON-NLS-1$
-	static protected final String FF = "\f"; //$NON-NLS-1$
-	static protected final String LF = "\n"; //$NON-NLS-1$
-	static protected final String SPACE = " "; //$NON-NLS-1$
-	static protected final char SPACE_CHAR = ' '; //$NON-NLS-1$
-	static protected final String TAB = "\t"; //$NON-NLS-1$
-	static protected final char TAB_CHAR = '\t'; //$NON-NLS-1$
-	protected IStructuredFormatContraints fFormatContraints = null;
-	protected IStructuredFormatPreferences fFormatPreferences = null;
-	protected IProgressMonitor fProgressMonitor = null;
-
-	protected String compressSpaces(String string, IStructuredFormatContraints formatContraints) {
-		/*
-		 * Note that the StructuredTextEditor supports mixed new line
-		 * characters (CR, LF, CRLF) in one file. We have to handle that when
-		 * we try to preserve blank lines.
-		 */
-		String[] stringArray = null;
-		boolean clearAllBlankLines = formatContraints.getClearAllBlankLines();
-
-		if (clearAllBlankLines)
-			stringArray = StringUtils.asArray(string);
-		else
-			stringArray = StringUtils.asArray(string, DELIMITERS, true);
-
-		StringBuffer compressedString = new StringBuffer();
-		if (stringArray.length > 0) {
-			boolean cr = false, lf = false, cr2 = false, nonSpace = true;
-
-			if (stringArray[0].compareTo(CR) == 0)
-				cr = true;
-			else if (stringArray[0].compareTo(LF) == 0)
-				lf = true;
-			else if ((stringArray[0].compareTo(SPACE) != 0) && (stringArray[0].compareTo(TAB) != 0) && (stringArray[0].compareTo(FF) != 0)) {
-				compressedString.append(stringArray[0]);
-				nonSpace = true;
-			}
-
-			for (int i = 1; i < stringArray.length; i++) {
-				if (stringArray[i].compareTo(CR) == 0) {
-					if (cr && lf) {
-						if (nonSpace) {
-							compressedString.append(CR + LF);
-							nonSpace = false;
-						}
-						compressedString.append(stringArray[i]);
-						cr2 = true;
-					} else if (cr) {
-						if (nonSpace) {
-							compressedString.append(CR);
-							nonSpace = false;
-						}
-						compressedString.append(stringArray[i]);
-						cr2 = true;
-					} else
-						cr = true;
-				} else if (stringArray[i].compareTo(LF) == 0) {
-					if (cr && lf && cr2) {
-						compressedString.append(stringArray[i]);
-					} else if (lf) {
-						if (nonSpace) {
-							compressedString.append(LF);
-							nonSpace = false;
-						}
-						compressedString.append(stringArray[i]);
-					} else
-						lf = true;
-				} else if ((stringArray[i].compareTo(SPACE) != 0) && (stringArray[i].compareTo(TAB) != 0) && (stringArray[i].compareTo(FF) != 0)) {
-					if (compressedString.length() > 0)
-						compressedString.append(SPACE);
-					compressedString.append(stringArray[i]);
-
-					cr = false;
-					lf = false;
-					cr2 = false;
-					nonSpace = true;
-				}
-			}
-		}
-
-		return compressedString.toString();
-	}
-
-	protected boolean firstStructuredDocumentRegionContainsLineDelimiters(XMLNode node) {
-		boolean result = false;
-
-		if (node != null) {
-			IStructuredDocumentRegion firstStructuredDocumentRegion = node.getFirstStructuredDocumentRegion();
-			if (firstStructuredDocumentRegion != null && firstStructuredDocumentRegion.getText() != null) {
-				String firstStructuredDocumentRegionText = firstStructuredDocumentRegion.getText();
-				result = StringUtils.containsLineDelimiter(firstStructuredDocumentRegionText);
-			}
-		}
-
-		return result;
-	}
-
-	public void format(Node node) {
-		IStructuredFormatContraints formatContraints = getFormatContraints();
-
-		format(node, formatContraints);
-	}
-
-	public void format(Node node, IStructuredFormatContraints formatContraints) {
-		if (formatContraints.getFormatWithSiblingIndent())
-			formatContraints.setCurrentIndent(getSiblingIndent(node));
-
-		if (node instanceof XMLNode)
-			formatNode((XMLNode) node, formatContraints);
-	}
-
-	protected void formatIndentationAfterNode(XMLNode node, IStructuredFormatContraints formatContraints) {
-		if (node != null) {
-			XMLNode nextSibling = (XMLNode) node.getNextSibling();
-			IStructuredDocument doc = node.getModel().getStructuredDocument();
-			int line = doc.getLineOfOffset(node.getEndOffset());
-			String lineDelimiter = doc.getLineDelimiter();
-			try {
-				lineDelimiter = doc.getLineDelimiter(line);
-				if (lineDelimiter == null)
-					lineDelimiter = ""; //$NON-NLS-1$
-			} catch (BadLocationException exception) {
-				throw new SourceEditingRuntimeException(exception);
-			}
-
-			if (node.getParentNode() != null) {
-				if (node.getParentNode().getNodeType() == Node.DOCUMENT_NODE)
-					if (nextSibling != null)
-						if (nextSibling.getNodeType() == Node.TEXT_NODE)
-							getFormatter(nextSibling).format(nextSibling, formatContraints);
-						else if (nextSibling.getNodeType() == Node.COMMENT_NODE) {
-							// do nothing
-						} else {
-							String lineIndent = formatContraints.getCurrentIndent();
-							insertAfterNode(node, lineDelimiter + lineIndent);
-						}
-					else {
-					}
-
-				else if (nextSibling != null)
-					if (nextSibling.getNodeType() == Node.TEXT_NODE)
-						getFormatter(nextSibling).format(nextSibling, formatContraints);
-					else if (nextSibling.getNodeType() == Node.COMMENT_NODE) {
-						// do nothing
-					} else {
-						String lineIndent = formatContraints.getCurrentIndent();
-						insertAfterNode(node, lineDelimiter + lineIndent);
-					}
-				else {
-					XMLNode indentNode = getParentIndentNode(node);
-					String lineIndent = getNodeIndent(indentNode);
-					XMLNode lastChild = getDeepestChildNode(node);
-					boolean clearAllBlankLines = formatContraints.getClearAllBlankLines();
-
-					if (lastChild != null) {
-						if ((lastChild.getNodeType() == Node.TEXT_NODE) && (lastChild.getNodeValue().endsWith(lineDelimiter + lineIndent))) {
-							// this text node already ends with the requested
-							// indentation
-						}
-
-						else if ((lastChild.getNodeType() == Node.TEXT_NODE) && (lastChild.getNodeValue() != null && lastChild.getNodeValue().endsWith(lineDelimiter)))
-							if (clearAllBlankLines) {
-								replaceNodeValue(lastChild, lineDelimiter + lineIndent);
-							} else {
-								// append indentation
-								insertAfterNode(lastChild, lineIndent);
-							}
-						else if (lastChild.getNodeType() == Node.TEXT_NODE)
-							if (lastChild.getNodeValue().length() == 0) {
-								// replace
-								replaceNodeValue(lastChild, lineDelimiter + lineIndent);
-							} else {
-								// append indentation
-								insertAfterNode(lastChild, lineDelimiter + lineIndent);
-							}
-						else {
-							// append indentation
-							insertAfterNode(lastChild, lineDelimiter + lineIndent);
-						}
-					}
-				}
-			}
-		}
-	}
-
-	protected void formatIndentationBeforeNode(XMLNode node, IStructuredFormatContraints formatContraints) {
-		if (node != null) {
-			XMLNode previousSibling = (XMLNode) node.getPreviousSibling();
-			IStructuredDocument doc = node.getModel().getStructuredDocument();
-			int line = doc.getLineOfOffset(node.getStartOffset());
-			String lineDelimiter = doc.getLineDelimiter();
-			try {
-				if (line > 0) {
-					lineDelimiter = doc.getLineDelimiter(line - 1);
-					if (lineDelimiter == null)
-						lineDelimiter = ""; //$NON-NLS-1$
-				}
-			} catch (BadLocationException exception) {
-				throw new SourceEditingRuntimeException(exception);
-			}
-			String lineIndent = formatContraints.getCurrentIndent();
-
-			if (node.getParentNode() != null) {
-				if (node.getParentNode().getNodeType() == Node.DOCUMENT_NODE) {
-					if (previousSibling != null)
-						if (previousSibling.getNodeType() == Node.TEXT_NODE)
-							getFormatter(previousSibling).format(previousSibling, formatContraints);
-						else {
-							insertBeforeNode(node, lineDelimiter + lineIndent);
-						}
-				} else {
-					if (previousSibling == null || previousSibling.getNodeType() != Node.TEXT_NODE) {
-						// 261968 - formatting tag without closing bracket:
-						// <t1><t1
-						// 265673 - Null ptr in formatIndentationBeforeNode
-						int prevEndNodeOffset = -1;
-						int prevEndRegionOffset = -1;
-						if (previousSibling != null) {
-							prevEndNodeOffset = previousSibling.getEndOffset();
-							IStructuredDocumentRegion endRegion = previousSibling.getEndStructuredDocumentRegion();
-							if (endRegion != null) {
-								prevEndRegionOffset = endRegion.getTextEndOffset();
-							}
-						}
-						if ((previousSibling == null) || (prevEndNodeOffset != -1 && prevEndNodeOffset == prevEndRegionOffset)) {
-							insertBeforeNode(node, lineDelimiter + lineIndent);
-						}
-
-					} else {
-						if (previousSibling.getNodeValue().length() == 0) {
-							// replace
-							replaceNodeValue(previousSibling, lineDelimiter + lineIndent);
-						} else {
-							// append indentation
-							if (!previousSibling.getNodeValue().endsWith(lineDelimiter + lineIndent)) {
-								if (previousSibling.getNodeValue().endsWith(lineDelimiter)) {
-									insertAfterNode(previousSibling, lineIndent);
-								} else
-									getFormatter(previousSibling).format(previousSibling, formatContraints);
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-
-	protected void formatNode(XMLNode node, IStructuredFormatContraints formatContraints) {
-		if (node != null && (fProgressMonitor == null || !fProgressMonitor.isCanceled())) {
-			// format indentation before node
-			formatIndentationBeforeNode(node, formatContraints);
-
-			// format indentation after node
-			formatIndentationAfterNode(node, formatContraints);
-		}
-	}
-
-	/**
-	 * This method will compute the correct indentation after this node
-	 * depending on the indentations of its sibling nodes and parent node. Not
-	 * needed anymore?
-	 */
-	protected void formatTrailingText(XMLNode node, IStructuredFormatContraints formatContraints) {
-		String lineDelimiter = node.getModel().getStructuredDocument().getLineDelimiter();
-		String lineIndent = formatContraints.getCurrentIndent();
-		String parentLineIndent = getNodeIndent(node.getParentNode());
-		boolean clearAllBlankLines = formatContraints.getClearAllBlankLines();
-
-		if ((node != null) && (node.getNodeType() != Node.DOCUMENT_NODE)) {
-			XMLNode nextSibling = (XMLNode) node.getNextSibling();
-			if ((nextSibling != null) && (nextSibling.getNodeType() == Node.TEXT_NODE)) {
-				String nextSiblingText = nextSibling.getNodeValue();
-				if (nextSibling.getNextSibling() == null)
-					if ((nextSibling.getParentNode().getNodeType() == Node.DOCUMENT_NODE) && (nextSiblingText.trim().length() == 0))
-						// delete spaces at the end of the document
-						replaceNodeValue(nextSibling, EMPTY_STRING);
-					else
-						// replace the text node with parent indentation
-						replaceNodeValue(nextSibling, lineDelimiter + parentLineIndent);
-				else
-					// replace the text node with indentation
-					replaceNodeValue(nextSibling, lineDelimiter + lineIndent);
-			} else {
-				if (nextSibling == null) {
-					lineIndent = parentLineIndent;
-
-					if (node.getParentNode().getNodeType() != Node.DOCUMENT_NODE)
-						if ((node.getNodeType() == Node.TEXT_NODE) && (node.getNodeValue().endsWith(lineDelimiter + lineIndent))) {
-							// this text node already ends with the requested
-							// indentation
-						}
-
-						else if ((node.getNodeType() == Node.TEXT_NODE) && (node.getNodeValue().endsWith(lineDelimiter)))
-							if (clearAllBlankLines)
-								replaceNodeValue(node, lineDelimiter + lineIndent);
-							else
-								// append indentation
-								insertAfterNode(node, lineIndent);
-						else if (node.getNodeType() == Node.TEXT_NODE)
-							if (node.getNodeValue().length() == 0)
-								// replace
-								replaceNodeValue(node, lineDelimiter + lineIndent);
-							else
-							// append indentation
-							if (!node.getNodeValue().endsWith(lineDelimiter + lineIndent))
-								if (node.getNodeValue().endsWith(lineDelimiter))
-									insertAfterNode(node, lineIndent);
-								else
-									insertAfterNode(node, lineDelimiter + lineIndent);
-							else
-								replaceNodeValue(node, lineDelimiter + lineIndent);
-				} else {
-					if ((node.getNodeType() == Node.TEXT_NODE) && (node.getNodeValue().endsWith(lineDelimiter + lineIndent))) {
-						// this text node already ends with the requested
-						// indentation
-					}
-
-					else if ((node.getNodeType() == Node.TEXT_NODE) && (node.getNodeValue().endsWith(lineDelimiter)))
-						if (clearAllBlankLines)
-							replaceNodeValue(node, lineDelimiter + lineIndent);
-						else
-							// append indentation
-							insertAfterNode(node, lineIndent);
-					else if (node.getNodeType() == Node.TEXT_NODE)
-						if (node.getNodeValue().length() == 0)
-							// replace
-							replaceNodeValue(node, lineDelimiter + lineIndent);
-						else
-							// append indentation
-							insertAfterNode(node, lineDelimiter + lineIndent);
-					else
-						// append indentation
-						insertAfterNode(node, lineDelimiter + lineIndent);
-				}
-			}
-		}
-	}
-
-	protected String getCompressedNodeText(XMLNode node, IStructuredFormatContraints formatContraints) {
-		return compressSpaces(getNodeText(node), formatContraints);
-	}
-
-	protected XMLNode getDeepestChildNode(XMLNode node) {
-		XMLNode result = null;
-		XMLNode lastChild = (XMLNode) node.getLastChild();
-
-		if (lastChild == null)
-			result = node;
-		else {
-			result = getDeepestChildNode(lastChild);
-
-			if ((result.getNodeType() == Node.TEXT_NODE || result.getNodeType() == Node.COMMENT_NODE) && !isEndTagMissing(node))
-				result = node;
-		}
-
-		return result;
-	}
-
-	public IStructuredFormatContraints getFormatContraints() {
-		if (fFormatContraints == null) {
-			fFormatContraints = new StructuredFormatContraints();
-
-			fFormatContraints.setClearAllBlankLines(getFormatPreferences().getClearAllBlankLines());
-		}
-
-		return fFormatContraints;
-	}
-
-	public IStructuredFormatPreferences getFormatPreferences() {
-		if (fFormatPreferences == null) {
-			fFormatPreferences = new StructuredFormatPreferencesXML();
-
-			Preferences preferences = getModelPreferences();
-			if (preferences != null) {
-				fFormatPreferences.setLineWidth(preferences.getInt(CommonModelPreferenceNames.LINE_WIDTH));
-				((IStructuredFormatPreferencesXML) fFormatPreferences).setSplitMultiAttrs(preferences.getBoolean(CommonModelPreferenceNames.SPLIT_MULTI_ATTRS));
-				fFormatPreferences.setClearAllBlankLines(preferences.getBoolean(CommonModelPreferenceNames.CLEAR_ALL_BLANK_LINES));
-
-				if (preferences.getBoolean(CommonModelPreferenceNames.INDENT_USING_TABS))
-					fFormatPreferences.setIndent("\t"); //$NON-NLS-1$
-				else {
-					int tabWidth = SSECorePlugin.getDefault().getPluginPreferences().getInt(CommonModelPreferenceNames.TAB_WIDTH);
-					String indent = ""; //$NON-NLS-1$
-					for (int i = 0; i < tabWidth; i++) {
-						indent += " "; //$NON-NLS-1$
-					}
-					fFormatPreferences.setIndent(indent);
-				}
-			}
-		}
-
-		return fFormatPreferences;
-	}
-
-	protected IStructuredFormatter getFormatter(XMLNode node) {
-		// 262135 - NPE during format of empty document
-		if (node == null)
-			return null;
-
-		short nodeType = ((Node) node).getNodeType();
-		IStructuredFormatter formatter = null;
-		switch (nodeType) {
-			case Node.ELEMENT_NODE : {
-				formatter = new ElementNodeFormatter();
-				break;
-			}
-			case Node.TEXT_NODE : {
-				if (node instanceof CDATASectionImpl)
-					formatter = new NodeFormatter();
-				else
-					formatter = new TextNodeFormatter();
-				break;
-			}
-			case Node.COMMENT_NODE : {
-				formatter = new CommentNodeFormatter();
-				break;
-			}
-			case Node.PROCESSING_INSTRUCTION_NODE : {
-				formatter = new NodeFormatter();
-				break;
-			}
-			case Node.DOCUMENT_NODE : {
-				formatter = new DocumentNodeFormatter();
-				break;
-			}
-			default : {
-				formatter = new NodeFormatter();
-			}
-		}
-
-		// init fomatter
-		formatter.setFormatPreferences(getFormatPreferences());
-		formatter.setProgressMonitor(fProgressMonitor);
-
-		return formatter;
-	}
-
-	protected int getIndentationLength(String indent) {
-		// TODO Kit : The calculation of IndentationLength is not correct
-		// here.
-		// nodeIndentation may contain tabs. Multiply by 4 temporarily to get
-		// approx. width.
-		// Need to re-work.
-
-		int indentationLength = 0;
-
-		for (int i = 0; i < indent.length(); i++) {
-			if (indent.substring(i, i + 1).compareTo(TAB) == 0)
-				indentationLength += 4;
-			else
-				indentationLength++;
-		}
-
-		return indentationLength;
-	}
-
-	protected Preferences getModelPreferences() {
-		return XMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	/**
-	 * This method will find the indentation for this node. It will search
-	 * backwards starting from the beginning of the node until a character
-	 * other than a space or a tab is found. If this node is null or it's a
-	 * document node or it's a first level node (node's parent is a document
-	 * node) the default empty string will be returned as the indentation.
-	 */
-	protected String getNodeIndent(Node node) {
-		String result = EMPTY_STRING;
-
-		if ((node != null) && (node.getNodeType() != Node.DOCUMENT_NODE) && (node.getParentNode() != null) && (node.getParentNode().getNodeType() != Node.DOCUMENT_NODE)) {
-			XMLNode siblingTextNode = (XMLNode) node.getPreviousSibling();
-			if ((siblingTextNode != null) && (siblingTextNode.getNodeType() == Node.TEXT_NODE)) {
-				// find the indentation
-				String siblingText = siblingTextNode.getNodeValue();
-				int siblingTextLength = siblingText.length();
-				if ((siblingText != null) && (siblingTextLength > 0) && ((siblingText.charAt(siblingTextLength - 1) == SPACE_CHAR) || (siblingText.charAt(siblingTextLength - 1) == TAB_CHAR))) {
-					int searchIndex = siblingTextLength - 1;
-					while ((searchIndex >= 0) && ((siblingText.charAt(searchIndex) == SPACE_CHAR) || (siblingText.charAt(searchIndex) == TAB_CHAR)))
-						searchIndex--;
-
-					if (searchIndex < siblingTextLength)
-						result = siblingText.substring(searchIndex + 1, siblingTextLength);
-				}
-			}
-		}
-
-		return result;
-	}
-
-	protected String getNodeName(XMLNode node) {
-		return node.getNodeName();
-	}
-
-	protected String getNodeText(XMLNode node) {
-		String text = null;
-
-		if ((node instanceof CharacterDataImpl) && !(node instanceof CommentImpl) && !(node instanceof CDATASectionImpl) && !isJSPTag(node))
-			text = ((CharacterDataImpl) node).getSource();
-		else
-			text = node.getFirstStructuredDocumentRegion().getText();
-
-		return text;
-	}
-
-	protected XMLNode getParentIndentNode(XMLNode node) {
-		XMLNode result = null;
-		XMLNode parentNode = (XMLNode) node.getParentNode();
-
-		if (parentNode.getNodeType() == Node.DOCUMENT_NODE)
-			result = parentNode;
-		else {
-			ITextRegion region = parentNode.getLastStructuredDocumentRegion().getFirstRegion();
-			if (region.getType() == XMLRegionContext.XML_END_TAG_OPEN)
-				result = parentNode;
-			else
-				result = getParentIndentNode(parentNode);
-		}
-
-		return result;
-	}
-
-	/**
-	 * This method will find the indentation for a node sibling to this node.
-	 * It will try to find a sibling node before this node first. If there is
-	 * no sibling node before this node, it will try to find a sibling node
-	 * after this node. If still not found, we will check if this node is
-	 * already indented from its parent. If yes, this node's indentation will
-	 * be used. Otherwise, the parent node's indentation plus one indentation
-	 * will be used. If this node is null or it's a document node or it's a
-	 * first level node (node's parent is a document node) the default empty
-	 * string will be returned as the indentation.
-	 */
-	protected String getSiblingIndent(Node node) {
-		String result = EMPTY_STRING;
-
-		if ((node != null) && (node.getNodeType() != Node.DOCUMENT_NODE) && (node.getParentNode() != null) && (node.getParentNode().getNodeType() != Node.DOCUMENT_NODE)) {
-			// find the text node before the previous non-text sibling
-			// if that's not found, we will try the text node before the next
-			// non-text sibling
-			XMLNode sibling = (XMLNode) node.getPreviousSibling();
-			while ((sibling != null) && (sibling.getNodeType() == Node.TEXT_NODE || sibling.getNodeType() == Node.COMMENT_NODE)) {
-				if (sibling.getNodeType() == Node.COMMENT_NODE && sibling.getPreviousSibling() != null && sibling.getPreviousSibling().getNodeType() == Node.TEXT_NODE && StringUtils.containsLineDelimiter(sibling.getPreviousSibling().getNodeValue()))
-					break;
-				sibling = (XMLNode) sibling.getPreviousSibling();
-			}
-			if (sibling == null) {
-				sibling = (XMLNode) node.getNextSibling();
-				while ((sibling != null) && (sibling.getNodeType() == Node.TEXT_NODE))
-					sibling = (XMLNode) sibling.getNextSibling();
-			}
-			String singleIndent = getFormatPreferences().getIndent();
-			String parentLineIndent = getNodeIndent(node.getParentNode());
-
-			if (sibling != null) {
-				String siblingIndent = getNodeIndent(sibling);
-				if (siblingIndent.length() > 0)
-					result = siblingIndent;
-				else {
-					String nodeIndent = getNodeIndent(node);
-					if (nodeIndent.length() > parentLineIndent.length())
-						// this node is indented from its parent, its
-						// indentation will be used
-						result = nodeIndent;
-					else
-						result = parentLineIndent + singleIndent;
-				}
-			} else {
-				String nodeIndent = getNodeIndent(node);
-				if (nodeIndent.length() > parentLineIndent.length())
-					// this node is indented from its parent, its indentation
-					// will be used
-					result = nodeIndent;
-				else
-					result = parentLineIndent + singleIndent;
-			}
-		}
-
-		return result;
-	}
-
-	protected void insertAfterNode(XMLNode node, String string) {
-		XMLModel structuredModel = node.getModel();
-		IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-
-		int offset = node.getEndOffset();
-		int length = 0;
-
-		// 261968 - formatting tag without closing bracket: <t1><t1
-		if (node.getEndStructuredDocumentRegion() != null) {
-			offset = node.getEndStructuredDocumentRegion().getTextEndOffset();
-			length = node.getEndOffset() - offset;
-		}
-		replace(structuredDocument, offset, length, string);
-	}
-
-	protected void insertBeforeNode(XMLNode node, String string) {
-		XMLModel structuredModel = node.getModel();
-		IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-
-		replace(structuredDocument, node.getStartOffset(), 0, string);
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type.equals(IStructuredFormatter.class);
-	}
-
-	protected boolean isEndTagMissing(XMLNode node) {
-		boolean result = false;
-
-		if ((node != null) && (node.getNodeType() != Node.DOCUMENT_NODE) && !isJSPTag(node)) {
-			IStructuredDocumentRegion startTagStructuredDocumentRegion = node.getFirstStructuredDocumentRegion();
-			IStructuredDocumentRegion endTagStructuredDocumentRegion = node.getLastStructuredDocumentRegion();
-
-			ITextRegion startTagNameRegion = null;
-			if (startTagStructuredDocumentRegion.getRegions().size() > 1)
-				startTagNameRegion = startTagStructuredDocumentRegion.getRegions().get(1);
-			ITextRegion endTagNameRegion = null;
-			if (endTagStructuredDocumentRegion.getRegions().size() > 1)
-				endTagNameRegion = endTagStructuredDocumentRegion.getRegions().get(1);
-
-			ITextRegionList startTagRegions = startTagStructuredDocumentRegion.getRegions();
-			if (startTagNameRegion == endTagNameRegion && startTagNameRegion != null && (startTagRegions.get(0)).getType() != XMLRegionContext.XML_END_TAG_OPEN && (startTagRegions.get(startTagRegions.size() - 1).getType()) != XMLRegionContext.XML_EMPTY_TAG_CLOSE)
-				// end tag missing
-				result = true;
-		}
-
-		return result;
-	}
-
-	protected boolean nodeHasSiblings(XMLNode node) {
-		return (node.getPreviousSibling() != null) || (node.getNextSibling() != null);
-	}
-
-	/**
-	 * Node changed. No format should be performed automatically.
-	 */
-	public void notifyChanged(org.eclipse.wst.sse.core.INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	protected void removeRegionSpaces(XMLNode node, IStructuredDocumentRegion flatNode, ITextRegion region) {
-		if ((region != null) && (region instanceof ContextRegion || region instanceof TagNameRegion) && (flatNode.getEndOffset(region) > flatNode.getTextEndOffset(region))) {
-			XMLModel structuredModel = node.getModel();
-			IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-
-			replace(structuredDocument, flatNode.getTextEndOffset(region), flatNode.getEndOffset(region) - flatNode.getTextEndOffset(region), EMPTY_STRING);
-		}
-	}
-
-	/**
-	 * This method will replace the string at offset and length with a new
-	 * string. If the string to be replaced is the same as the new string, the
-	 * string will not be replaced.
-	 */
-	protected void replace(IStructuredDocument structuredDocument, int offset, int length, String string) {
-		try {
-			String structuredDocumentString = structuredDocument.get(offset, length);
-			if (structuredDocumentString.compareTo(string) != 0)
-				structuredDocument.replaceText(structuredDocument, offset, length, string);
-		} catch (BadLocationException exception) {
-			throw new SourceEditingRuntimeException(exception);
-		}
-	}
-
-	/**
-	 * This method will replace the node value with a new string. If the node
-	 * value to be replaced is the same as the new string, the node value will
-	 * not be replaced.
-	 */
-	protected void replaceNodeValue(XMLNode node, String string) {
-		XMLModel structuredModel = node.getModel();
-		IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-		int offset = node.getStartOffset();
-		int length = node.getEndOffset() - node.getStartOffset();
-
-		try {
-			String structuredDocumentString = structuredDocument.get(offset, length);
-			if (structuredDocumentString.compareTo(string) != 0)
-				replace(structuredDocument, offset, length, string);
-		} catch (BadLocationException exception) {
-			throw new SourceEditingRuntimeException(exception);
-		}
-	}
-
-	public void setFormatPreferences(IStructuredFormatPreferences formatPreferences) {
-		fFormatPreferences = formatPreferences;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.format.IStructuredFormatter#setProgressMonitor(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void setProgressMonitor(IProgressMonitor monitor) {
-		fProgressMonitor = monitor;
-	}
-
-	/**
-	 * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-	 * way for expedency. Should be evolved in future to depend on "nestedContext".
-	 */
-	private boolean isJSPTag(Node node) {
-	
-		final String JSP_CLOSE = "JSP_CLOSE"; //$NON-NLS-1$
-		// final String JSP_COMMENT_CLOSE = "JSP_COMMENT_CLOSE"; //$NON-NLS-1$
-	
-		// final String JSP_COMMENT_OPEN = "JSP_COMMENT_OPEN"; //$NON-NLS-1$
-		// final String JSP_COMMENT_TEXT = "JSP_COMMENT_TEXT"; //$NON-NLS-1$
-	
-		final String JSP_CONTENT = "JSP_CONTENT"; //$NON-NLS-1$
-		final String JSP_DECLARATION_OPEN = "JSP_DECLARATION_OPEN"; //$NON-NLS-1$
-		final String JSP_DIRECTIVE_CLOSE = "JSP_DIRECTIVE_CLOSE"; //$NON-NLS-1$
-		final String JSP_DIRECTIVE_NAME = "JSP_DIRECTIVE_NAME"; //$NON-NLS-1$
-	
-		final String JSP_DIRECTIVE_OPEN = "JSP_DIRECTIVE_OPEN"; //$NON-NLS-1$
-		final String JSP_EXPRESSION_OPEN = "JSP_EXPRESSION_OPEN"; //$NON-NLS-1$
-	
-		// final String JSP_ROOT_TAG_NAME = "JSP_ROOT_TAG_NAME"; //$NON-NLS-1$
-	
-		final String JSP_SCRIPTLET_OPEN = "JSP_SCRIPTLET_OPEN"; //$NON-NLS-1$
-	
-		boolean result = false;
-	
-		if (node instanceof XMLNode) {
-			IStructuredDocumentRegion flatNode = ((XMLNode) node).getFirstStructuredDocumentRegion();
-			// in some cases, the nodes exists, but hasn't been associated
-			// with
-			// a flatnode yet (the screen updates can be initiated on a
-			// different thread,
-			// so the request for a flatnode can come in before the node is
-			// fully formed.
-			// if the flatnode is null, we'll just allow the defaults to
-			// apply.
-			if (flatNode != null) {
-				String flatNodeType = flatNode.getType();
-				// should not be null, but just to be sure
-				if (flatNodeType != null) {
-					if ((flatNodeType.equals(JSP_CONTENT)) || (flatNodeType.equals(JSP_EXPRESSION_OPEN)) || (flatNodeType.equals(JSP_SCRIPTLET_OPEN)) || (flatNodeType.equals(JSP_DECLARATION_OPEN)) || (flatNodeType.equals(JSP_DIRECTIVE_CLOSE)) || (flatNodeType.equals(JSP_DIRECTIVE_NAME)) || (flatNodeType.equals(JSP_DIRECTIVE_OPEN)) || (flatNodeType.equals(JSP_CLOSE))) {
-						result = true;
-					}
-				}
-			}
-		}
-	
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/StructuredFormatPreferencesXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/StructuredFormatPreferencesXML.java
deleted file mode 100644
index 079ae41..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/StructuredFormatPreferencesXML.java
+++ /dev/null
@@ -1,27 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.format;
-
-import org.eclipse.wst.sse.core.format.StructuredFormatPreferences;
-
-public class StructuredFormatPreferencesXML extends StructuredFormatPreferences implements IStructuredFormatPreferencesXML {
-	private boolean fSplitMultiAttrs;
-
-	public boolean getSplitMultiAttrs() {
-		return fSplitMultiAttrs;
-	}
-
-	public void setSplitMultiAttrs(boolean splitMultiAttrs) {
-		fSplitMultiAttrs = splitMultiAttrs;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/TextNodeFormatter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/TextNodeFormatter.java
deleted file mode 100644
index 9bc4fe1..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/format/TextNodeFormatter.java
+++ /dev/null
@@ -1,198 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.format;
-
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.format.IStructuredFormatContraints;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.Node;
-
-
-public class TextNodeFormatter extends NodeFormatter {
-	protected void formatNode(XMLNode node, IStructuredFormatContraints formatContraints) {
-		if (node != null) {
-			IStructuredDocument doc = node.getModel().getStructuredDocument();
-			int line = doc.getLineOfOffset(node.getStartOffset());
-			String lineDelimiter = doc.getLineDelimiter();
-			try {
-				lineDelimiter = doc.getLineDelimiter(line);
-				if (lineDelimiter == null)
-					lineDelimiter = ""; //$NON-NLS-1$
-			} catch (BadLocationException exception) {
-				throw new SourceEditingRuntimeException(exception);
-			}
-			int lineWidth = getFormatPreferences().getLineWidth();
-			XMLNode parentNode = (XMLNode) node.getParentNode();
-			String nodeIndentation = formatContraints.getCurrentIndent();
-
-			// compute current available line width
-			int currentAvailableLineWidth = 0;
-			try {
-				int nodeNameOffset = node.getStartOffset();
-				int lineOffset = node.getStructuredDocument().getLineInformationOfOffset(nodeNameOffset).getOffset();
-				String text = node.getStructuredDocument().get(lineOffset, nodeNameOffset - lineOffset);
-				int usedWidth = getIndentationLength(text);
-				currentAvailableLineWidth = getFormatPreferences().getLineWidth() - usedWidth;
-			} catch (BadLocationException exception) {
-				throw new SourceEditingRuntimeException(exception);
-			}
-
-			String compressedText = getCompressedNodeText(node, formatContraints);
-
-			if (((compressedText.length() <= (currentAvailableLineWidth - node.getParentNode().getNodeName().length() - 3) && !StringUtils.containsLineDelimiter(compressedText)) && (!nodeHasSiblings(node) || (!StringUtils.containsLineDelimiter(node.getNodeValue()) && node.getNextSibling() != null && node.getNextSibling().getNodeType() == Node.COMMENT_NODE && !StringUtils.containsLineDelimiter(node.getNextSibling().getNodeValue()))) && !firstStructuredDocumentRegionContainsLineDelimiters((XMLNode) node.getParentNode())) || node.getStartStructuredDocumentRegion().getStartOffset() == 0) {
-				// enough space
-				// and text has no line delimiters
-				// and (node has no siblings or followed by inline comment)
-				// and
-				// parentFirstStructuredDocumentRegionContainsLineDelimiters
-
-				if (isEndTagMissing(parentNode)) {
-					parentNode = (XMLNode) parentNode.getParentNode();
-					while (isEndTagMissing(parentNode))
-						parentNode = (XMLNode) parentNode.getParentNode();
-
-					// add parent's indentation to end
-					nodeIndentation = getNodeIndent(parentNode);
-
-					if (!compressedText.endsWith(lineDelimiter + nodeIndentation)) {
-						compressedText = StringUtils.appendIfNotEndWith(compressedText, lineDelimiter);
-						compressedText = StringUtils.appendIfNotEndWith(compressedText, nodeIndentation);
-					}
-				}
-
-				if ((parentNode != null) && (parentNode.getNodeType() == Node.DOCUMENT_NODE) && (node.getNodeValue().length() > 0) && (node.getNodeValue().trim().length() == 0) && ((node.getPreviousSibling() == null) || (node.getNextSibling() == null)))
-					// delete spaces at the beginning or end of the document
-					compressedText = EMPTY_STRING;
-
-				replaceNodeValue(node, compressedText);
-			} else {
-				// not enough space, need to reflow text
-
-				currentAvailableLineWidth = lineWidth - getIndentationLength(nodeIndentation);
-				List vector = reflowText(compressedText, currentAvailableLineWidth);
-				int vectorSize = vector.size();
-				String reflowedText = new String();
-
-				for (int i = 0; i < vectorSize; i++) {
-					if (((String) vector.get(i)).trim().length() > 0)
-						reflowedText = reflowedText + lineDelimiter + nodeIndentation + (String) vector.get(i);
-					else
-						reflowedText = reflowedText + lineDelimiter;
-				}
-
-				if (node.getNextSibling() == null) {
-					if (isEndTagMissing(parentNode)) {
-						// don't add indentation to end if parent end tag is
-						// missing
-					}
-
-					else {
-						// add parent's indentation to end
-						nodeIndentation = getNodeIndent(parentNode);
-
-						if (!reflowedText.endsWith(lineDelimiter + nodeIndentation)) {
-							reflowedText = StringUtils.appendIfNotEndWith(reflowedText, lineDelimiter);
-							reflowedText = StringUtils.appendIfNotEndWith(reflowedText, nodeIndentation);
-						}
-					}
-				} else {
-					if (!reflowedText.endsWith(lineDelimiter + nodeIndentation)) {
-						// not already ended with the expected indentation
-
-						if (node.getNextSibling().getNodeType() == Node.COMMENT_NODE) {
-							// add indentation to end if
-							// currentTextEndsWithLineDelimiter
-							// or followed by multiLineComment
-
-							String nodeText = getNodeText(node);
-							int indexOfLastLineDelimiter = StringUtils.indexOfLastLineDelimiter(nodeText);
-							boolean currentTextEndsWithLineDelimiter = indexOfLastLineDelimiter != -1;
-							if (currentTextEndsWithLineDelimiter) {
-								// no more non blank character after the last
-								// line delimiter
-								currentTextEndsWithLineDelimiter = StringUtils.indexOfNonblank(nodeText, indexOfLastLineDelimiter) == -1;
-							}
-
-							String nodeValue = node.getNextSibling().getNodeValue();
-							boolean multiLineComment = StringUtils.containsLineDelimiter(nodeValue);
-
-							if (currentTextEndsWithLineDelimiter || multiLineComment) {
-								reflowedText = StringUtils.appendIfNotEndWith(reflowedText, lineDelimiter);
-								reflowedText = StringUtils.appendIfNotEndWith(reflowedText, nodeIndentation);
-							}
-						} else {
-							// not a comment, just add add indentation to end
-							reflowedText = StringUtils.appendIfNotEndWith(reflowedText, lineDelimiter);
-							reflowedText = StringUtils.appendIfNotEndWith(reflowedText, nodeIndentation);
-						}
-					}
-				}
-
-				replaceNodeValue(node, reflowedText);
-			}
-
-		}
-	}
-
-	protected Vector reflowText(String text, int availableWidth) {
-		String[] stringArray = null;
-		boolean clearAllBlankLines = getFormatPreferences().getClearAllBlankLines();
-
-		if (clearAllBlankLines)
-			stringArray = StringUtils.asArray(text);
-		else
-			stringArray = StringUtils.asArray(text, DELIMITERS, true);
-
-		Vector output = new Vector();
-		if ((stringArray != null) && (stringArray.length > 0)) {
-			StringBuffer buffer = new StringBuffer();
-			if (stringArray[0].compareTo(CR) != 0)
-				buffer.append(stringArray[0]);
-			int bufferLength = stringArray[0].toString().length();
-			boolean cr = stringArray[0].compareTo(CR) == 0;
-
-			for (int i = 1; i < stringArray.length; i++) {
-				String eachString = stringArray[i];
-				if ((eachString.compareTo(SPACE) != 0) && (eachString.compareTo(TAB) != 0) && (eachString.compareTo(FF) != 0)) {
-					if ((bufferLength + 1 + eachString.length() > availableWidth) || (eachString.compareTo(CR) == 0) || (eachString.compareTo(LF) == 0)) {
-						if ((eachString.compareTo(LF) == 0) && cr) {
-							// do nothing
-						} else {
-							output.add(buffer.toString());
-							buffer = new StringBuffer();
-							bufferLength = 0;
-						}
-						cr = eachString.compareTo(CR) == 0;
-					} else if (buffer.toString().trim().length() > 0) {
-						buffer.append(SPACE);
-						bufferLength++;
-					}
-					if ((eachString.compareTo(CR) != 0) && (eachString.compareTo(LF) != 0)) {
-						buffer.append(eachString);
-						bufferLength = bufferLength + eachString.length();
-					}
-				}
-			}
-			output.add(buffer.toString());
-		} else
-			output.add(text);
-
-		return output;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/DebugAdapterFactory.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/DebugAdapterFactory.java
deleted file mode 100644
index 17ddc88..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/DebugAdapterFactory.java
+++ /dev/null
@@ -1,81 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal;
-
-import java.util.ArrayList;
-
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapterFactory;
-
-
-public class DebugAdapterFactory extends AbstractAdapterFactory implements PropagatingAdapterFactory {
-
-	/**
-	 * Constructor for PageDirectiveWatcherFactory.
-	 */
-	public DebugAdapterFactory() {
-		this(IDebugAdapter.class, true);
-	}
-
-	/**
-	 * Constructor for PageDirectiveWatcherFactory.
-	 * 
-	 * @param adapterKey
-	 * @param registerAdapters
-	 */
-	public DebugAdapterFactory(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.PropagatingAdapterFactory#addContributedFactories(org.eclipse.wst.sse.core.IAdapterFactory)
-	 */
-	public void addContributedFactories(IAdapterFactory factory) {
-		//none expected
-	}
-
-	public IAdapterFactory copy() {
-		return new DebugAdapterFactory(this.adapterKey, this.shouldRegisterAdapter);
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		EveryNodeDebugAdapter result = null;
-		result = EveryNodeDebugAdapter.getInstance();
-		return result;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.IAdapterFactory#isFactoryForType(java.lang.Object)
-	 */
-	public boolean isFactoryForType(Object type) {
-
-		return IDebugAdapter.class == type;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.PropagatingAdapterFactory#setContributedFactories(java.util.ArrayList)
-	 */
-	public void setContributedFactories(ArrayList list) {
-		// none expected
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/EveryNodeDebugAdapter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/EveryNodeDebugAdapter.java
deleted file mode 100644
index c4c7464..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/EveryNodeDebugAdapter.java
+++ /dev/null
@@ -1,284 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal;
-
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.wst.sse.core.IModelStateListener;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.events.AboutToBeChangeEvent;
-import org.eclipse.wst.sse.core.events.IModelAboutToBeChangedListener;
-import org.eclipse.wst.sse.core.events.IStructuredDocumentListener;
-import org.eclipse.wst.sse.core.events.NewDocumentEvent;
-import org.eclipse.wst.sse.core.events.NoChangeEvent;
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.RegionsReplacedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentRegionsReplacedEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.xml.core.document.XMLNode;
-
-
-/**
- * Purely for use in debugging
- */
-public class EveryNodeDebugAdapter implements IDebugAdapter {
-
-	static class InternalDocumentListener implements IDocumentListener {
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
-		 */
-		public void documentAboutToBeChanged(DocumentEvent event) {
-			Debug.println("IdocumentAboutToBeChanged: " + event); //$NON-NLS-1$
-
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)
-		 */
-		public void documentChanged(DocumentEvent event) {
-			Debug.println("IdocumentChanged: " + event); //$NON-NLS-1$
-
-		}
-
-	}
-
-	static class InternalModelStateListener implements IModelStateListener {
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.IModelStateListener#modelAboutToBeChanged(org.eclipse.wst.sse.core.IStructuredModel)
-		 */
-		public void modelAboutToBeChanged(IStructuredModel model) {
-			Debug.println("modelAboutToBeChanged: " + model); //$NON-NLS-1$
-
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.IModelStateListener#modelChanged(org.eclipse.wst.sse.core.IStructuredModel)
-		 */
-		public void modelChanged(IStructuredModel model) {
-			Debug.println("modelChanged: " + model); //$NON-NLS-1$
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.IModelStateListener#modelDirtyStateChanged(org.eclipse.wst.sse.core.IStructuredModel,
-		 *      boolean)
-		 */
-		public void modelDirtyStateChanged(IStructuredModel model, boolean isDirty) {
-			Debug.println("modelDirtyStateChanged: " + model); //$NON-NLS-1$
-
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.IModelStateListener#modelResourceDeleted(org.eclipse.wst.sse.core.IStructuredModel)
-		 */
-		public void modelResourceDeleted(IStructuredModel model) {
-			Debug.println("modelResourceDeleted: " + model); //$NON-NLS-1$
-
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.IModelStateListener#modelResourceMoved(org.eclipse.wst.sse.core.IStructuredModel,
-		 *      org.eclipse.wst.sse.core.IStructuredModel)
-		 */
-		public void modelResourceMoved(IStructuredModel oldModel, IStructuredModel newModel) {
-			Debug.println("modelResourceMoved: " + "oldModel: " + oldModel + "newModel: " + newModel); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-
-		public void modelAboutToBeReinitialized(IStructuredModel structuredModel) {
-			// TODO Auto-generated method stub
-			
-		}
-
-		public void modelReinitialized(IStructuredModel structuredModel) {
-			// TODO Auto-generated method stub
-			
-		}
-
-	}
-
-	static class InternalStructuredDocumentAboutToChange implements IModelAboutToBeChangedListener {
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.events.IModelAboutToBeChangedListener#modelAboutToBeChanged(org.eclipse.wst.sse.core.events.AboutToBeChangeEvent)
-		 */
-		public void modelAboutToBeChanged(AboutToBeChangeEvent structuredDocumentEvent) {
-			Debug.println("structuredDocumentAboutToBeChanged: " + structuredDocumentEvent); //$NON-NLS-1$
-
-		}
-
-	}
-
-	static class InternalStructuredDocumentListener implements IStructuredDocumentListener {
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.events.IStructuredDocumentListener#newModel(org.eclipse.wst.sse.core.events.NewDocumentContentEvent)
-		 */
-		public void newModel(NewDocumentEvent structuredDocumentEvent) {
-			Debug.println("structuredDocumentChanged - newModel: " + structuredDocumentEvent); //$NON-NLS-1$
-
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.events.IStructuredDocumentListener#noChange(org.eclipse.wst.sse.core.events.NoChangeEvent)
-		 */
-		public void noChange(NoChangeEvent structuredDocumentEvent) {
-			Debug.println("structuredDocumentChanged - noChange: " + structuredDocumentEvent); //$NON-NLS-1$
-
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.events.IStructuredDocumentListener#nodesReplaced(org.eclipse.wst.sse.core.events.StructuredDocumentRegionsReplacedEvent)
-		 */
-		public void nodesReplaced(StructuredDocumentRegionsReplacedEvent structuredDocumentEvent) {
-			Debug.println("structuredDocumentChanged - nodesReplaced: " + structuredDocumentEvent); //$NON-NLS-1$
-
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.events.IStructuredDocumentListener#regionChanged(org.eclipse.wst.sse.core.events.RegionChangedEvent)
-		 */
-		public void regionChanged(RegionChangedEvent structuredDocumentEvent) {
-			Debug.println("structuredDocumentChanged - regionChanged: " + structuredDocumentEvent); //$NON-NLS-1$
-
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.wst.sse.core.events.IStructuredDocumentListener#regionsReplaced(org.eclipse.wst.sse.core.events.RegionsReplacedEvent)
-		 */
-		public void regionsReplaced(RegionsReplacedEvent structuredDocumentEvent) {
-			Debug.println("structuredDocumentChanged - regionsReplaced: " + structuredDocumentEvent); //$NON-NLS-1$
-
-		}
-
-	}
-
-	private static EveryNodeDebugAdapter singletonInstance;
-
-	public static EveryNodeDebugAdapter getInstance() {
-		if (singletonInstance == null) {
-			singletonInstance = new EveryNodeDebugAdapter();
-		}
-		return singletonInstance;
-	}
-
-	InternalDocumentListener fInternalDocumentListener;
-	InternalModelStateListener fInternalModelStateListener;
-	InternalStructuredDocumentAboutToChange fInternalStructuredDocumentAboutToChange;
-	InternalStructuredDocumentListener fInternalStructuredDocumentListener;
-	IStructuredModel fModel;
-
-	/**
-	 *  
-	 */
-	public EveryNodeDebugAdapter() {
-		super();
-		fInternalDocumentListener = new InternalDocumentListener();
-		fInternalStructuredDocumentAboutToChange = new InternalStructuredDocumentAboutToChange();
-		fInternalStructuredDocumentListener = new InternalStructuredDocumentListener();
-		fInternalModelStateListener = new InternalModelStateListener();
-	}
-
-	/**
-	 * @param target
-	 */
-	public EveryNodeDebugAdapter(INodeNotifier target) {
-		this();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.INodeAdapter#isAdapterForType(java.lang.Object)
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == IDebugAdapter.class);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.INodeAdapter#notifyChanged(org.eclipse.wst.sse.core.INodeNotifier,
-	 *      int, java.lang.Object, java.lang.Object, java.lang.Object, int)
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (notifier instanceof XMLNode) {
-			setModel(((XMLNode) notifier).getModel());
-		}
-		Debug.println("notifier: " + notifier + " " + INodeNotifier.EVENT_TYPE_STRINGS[eventType] + " changedFeature: " + changedFeature + " oldValue: " + oldValue + " newValue: " + newValue + " pos: " + pos); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.internal.IDebugAdapter#setDocument(org.eclipse.wst.sse.core.text.IStructuredDocument)
-	 */
-	private void setModel(IStructuredModel structuredModel) {
-		if (fModel == structuredModel)
-			return;
-
-		if (fModel != null) {
-			fModel.removeModelStateListener(fInternalModelStateListener);
-			//
-			IStructuredDocument structuredDocument = fModel.getStructuredDocument();
-			if (structuredDocument != null) {
-				structuredDocument.removeDocumentListener(fInternalDocumentListener);
-				structuredDocument.removeDocumentAboutToChangeListener(fInternalStructuredDocumentAboutToChange);
-				structuredDocument.removeDocumentChangedListener(fInternalStructuredDocumentListener);
-			}
-		}
-		fModel = structuredModel;
-		if (fModel != null) {
-
-			fModel.addModelStateListener(fInternalModelStateListener);
-			//
-			IStructuredDocument structuredDocument = fModel.getStructuredDocument();
-			if (structuredDocument != null) {
-				structuredDocument.addDocumentListener(fInternalDocumentListener);
-				structuredDocument.addDocumentAboutToChangeListener(fInternalStructuredDocumentAboutToChange);
-				structuredDocument.addDocumentChangedListener(fInternalStructuredDocumentListener);
-			}
-		}
-
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/IDebugAdapter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/IDebugAdapter.java
deleted file mode 100644
index 50b9025..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/IDebugAdapter.java
+++ /dev/null
@@ -1,19 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal;
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-
-
-public interface IDebugAdapter extends INodeAdapter {
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/Logger.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/Logger.java
deleted file mode 100644
index 47770a0..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/Logger.java
+++ /dev/null
@@ -1,157 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal;
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-/**
- * Small convenience class to log messages to plugin's log file and also, if
- * desired, the console. This class should only be used by classes in this
- * plugin. Other plugins should make their own copy, with appropriate ID.
- */
-public class Logger {
-	private static final String PLUGIN_ID = "org.eclipse.wst.xml.core"; //$NON-NLS-1$
-	
-	public static final int ERROR = IStatus.ERROR; // 4
-	public static final int ERROR_DEBUG = 200 + ERROR;
-	public static final int INFO = IStatus.INFO; // 1
-	public static final int INFO_DEBUG = 200 + INFO;
-
-	public static final int OK = IStatus.OK; // 0
-
-	public static final int OK_DEBUG = 200 + OK;
-
-	private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
-	public static final int WARNING = IStatus.WARNING; // 2
-	public static final int WARNING_DEBUG = 200 + WARNING;
-
-	/**
-	 * Adds message to log.
-	 * 
-	 * @param level
-	 *            severity level of the message (OK, INFO, WARNING, ERROR,
-	 *            OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
-	 * @param message
-	 *            text to add to the log
-	 * @param exception
-	 *            exception thrown
-	 */
-	protected static void _log(int level, String message, Throwable exception) {
-		if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
-			if (!isDebugging())
-				return;
-		}
-
-		int severity = IStatus.OK;
-		switch (level) {
-			case INFO_DEBUG :
-			case INFO :
-				severity = IStatus.INFO;
-				break;
-			case WARNING_DEBUG :
-			case WARNING :
-				severity = IStatus.WARNING;
-				break;
-			case ERROR_DEBUG :
-			case ERROR :
-				severity = IStatus.ERROR;
-		}
-		message = (message != null) ? message : "null"; //$NON-NLS-1$
-		Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null) 
-			Platform.getLog(bundle).log(statusObj);
-	}
-
-	/**
-	 * Prints message to log if category matches /debug/tracefilter option.
-	 * 
-	 * @param message
-	 *            text to print
-	 * @param category
-	 *            category of the message, to be compared with
-	 *            /debug/tracefilter
-	 */
-	protected static void _trace(String category, String message, Throwable exception) {
-		if (isTracing(category)) {
-			message = (message != null) ? message : "null"; //$NON-NLS-1$
-			Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
-			Bundle bundle = Platform.getBundle(PLUGIN_ID);
-			if (bundle != null) 
-				Platform.getLog(bundle).log(statusObj);
-		}
-	}
-
-	/**
-	 * @return true if the platform is debugging
-	 */
-	public static boolean isDebugging() {
-		return Platform.inDebugMode();
-	}
-
-	/**
-	 * Determines if currently tracing a category
-	 * 
-	 * @param category
-	 * @return true if tracing category, false otherwise
-	 */
-	public static boolean isTracing(String category) {
-		if (!isDebugging())
-			return false;
-
-		String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
-		if (traceFilter != null) {
-			StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens()) {
-				String cat = tokenizer.nextToken().trim();
-				if (category.equals(cat)) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	public static void log(int level, String message) {
-		_log(level, message, null);
-	}
-
-	public static void log(int level, String message, Throwable exception) {
-		_log(level, message, exception);
-	}
-
-	public static void logException(String message, Throwable exception) {
-		_log(ERROR, message, exception);
-	}
-
-	public static void logException(Throwable exception) {
-		_log(ERROR, exception.getMessage(), exception);
-	}
-
-	public static void trace(String category, String message) {
-		_trace(category, message, null);
-	}
-
-	public static void traceException(String category, String message, Throwable exception) {
-		_trace(category, message, exception);
-	}
-
-	public static void traceException(String category, Throwable exception) {
-		_trace(category, exception.getMessage(), exception);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCorePlugin.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCorePlugin.java
deleted file mode 100644
index c8d55f6..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCorePlugin.java
+++ /dev/null
@@ -1,138 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal;
-
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class XMLCorePlugin extends Plugin {
-	//The shared instance.
-	private static XMLCorePlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$	
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static XMLCorePlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * @deprecated use ResourcesPlugin.getWorkspace();
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-
-	/**
-	 * The constructor.
-	 */
-	public XMLCorePlugin() {
-		super();
-		plugin = this;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.Plugin#initializeDefaultPluginPreferences()
-	 */
-	protected void initializeDefaultPluginPreferences() {
-		Preferences prefs = getDefault().getPluginPreferences();
-		// set model preference defaults
-		prefs.setDefault(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE, CommonModelPreferenceNames.ASIS);
-		prefs.setDefault(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE, CommonModelPreferenceNames.ASIS);
-		prefs.setDefault(CommonModelPreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS, true);
-		prefs.setDefault(CommonModelPreferenceNames.INSERT_REQUIRED_ATTRS, true);
-		prefs.setDefault(CommonModelPreferenceNames.INSERT_MISSING_TAGS, true);
-		prefs.setDefault(CommonModelPreferenceNames.QUOTE_ATTR_VALUES, true);
-		prefs.setDefault(CommonModelPreferenceNames.FORMAT_SOURCE, true);
-		prefs.setDefault(CommonModelPreferenceNames.CONVERT_EOL_CODES, false);
-
-		prefs.setDefault(CommonEncodingPreferenceNames.INPUT_CODESET, ""); //$NON-NLS-1$
-		prefs.setDefault(CommonEncodingPreferenceNames.OUTPUT_CODESET, CommonModelPreferenceNames.UTF_8);
-		prefs.setDefault(CommonEncodingPreferenceNames.END_OF_LINE_CODE, ""); //$NON-NLS-1$
-
-		prefs.setDefault(CommonModelPreferenceNames.TAB_WIDTH, 4);
-
-		prefs.setDefault(CommonModelPreferenceNames.FORMATTING_SUPPORTED, true);
-		prefs.setDefault(CommonModelPreferenceNames.LINE_WIDTH, 72);
-		prefs.setDefault(CommonModelPreferenceNames.SPLIT_MULTI_ATTRS, false);
-		prefs.setDefault(CommonModelPreferenceNames.INDENT_USING_TABS, true);
-		prefs.setDefault(CommonModelPreferenceNames.CLEAR_ALL_BLANK_LINES, false);
-
-		prefs.setDefault(CommonModelPreferenceNames.PREFERRED_MARKUP_CASE_SUPPORTED, false);
-		prefs.setDefault(CommonModelPreferenceNames.TAG_NAME_CASE, CommonModelPreferenceNames.LOWER);
-		prefs.setDefault(CommonModelPreferenceNames.ATTR_NAME_CASE, CommonModelPreferenceNames.LOWER);
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String value) {
-		String s = value.trim();
-		if (!s.startsWith(KEY_PREFIX, 0))
-			return s;
-		if (s.startsWith(KEY_DOUBLE_PREFIX, 0))
-			return s.substring(1);
-
-		int ix = s.indexOf(' ');
-		String key = ix == -1 ? s : s.substring(0, ix);
-
-		ResourceBundle bundle = getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key.substring(1)) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getResourceString(String key, Object[] args) {
-
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (IllegalArgumentException e) {
-			return getResourceString(key);
-		}
-
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		try {
-			if (resourceBundle == null)
-				resourceBundle = ResourceBundle.getBundle("org.eclipse.wst.xml.core.internal.XMLCorePluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCorePluginResources.properties b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCorePluginResources.properties
deleted file mode 100644
index 49a18aa..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/XMLCorePluginResources.properties
+++ /dev/null
@@ -1,17 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Invalid_character_('<')_fo_ERROR_=Invalid character ('<') found
-Invalid_character_('>')_fo_ERROR_=Invalid character ('>') found
-Invalid_character_('&')_fo_ERROR_=Invalid character ('&') found
-Invalid_character_('__')_f_EXC_=Invalid character ('\"') found
-###############################################################################
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/CleanupProcessorXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/CleanupProcessorXML.java
deleted file mode 100644
index 6d12e09..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/CleanupProcessorXML.java
+++ /dev/null
@@ -1,90 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.cleanup;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.sse.core.internal.cleanup.AbstractStructuredCleanupProcessor;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupHandler;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupPreferences;
-import org.eclipse.wst.sse.core.internal.cleanup.StructuredCleanupPreferences;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.xml.core.contenttype.ContentTypeIdForXML;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.w3c.dom.Node;
-
-
-public class CleanupProcessorXML extends AbstractStructuredCleanupProcessor {
-	protected IStructuredCleanupPreferences fCleanupPreferences = null;
-
-	protected IStructuredCleanupHandler getCleanupHandler(Node node) {
-		short nodeType = node.getNodeType();
-		IStructuredCleanupHandler cleanupHandler = null;
-		switch (nodeType) {
-			case Node.ELEMENT_NODE : {
-				cleanupHandler = new ElementNodeCleanupHandler();
-				break;
-			}
-			case Node.TEXT_NODE : {
-				cleanupHandler = new NodeCleanupHandler();
-				break;
-			}
-			default : {
-				cleanupHandler = new NodeCleanupHandler();
-			}
-		}
-
-		// init CleanupPreferences
-		cleanupHandler.setCleanupPreferences(getCleanupPreferences());
-
-		return cleanupHandler;
-	}
-
-	public IStructuredCleanupPreferences getCleanupPreferences() {
-		if (fCleanupPreferences == null) {
-			fCleanupPreferences = new StructuredCleanupPreferences();
-
-			Preferences preferences = getModelPreferences();
-			if (preferences != null) {
-				fCleanupPreferences.setTagNameCase(preferences.getInt(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE));
-				fCleanupPreferences.setAttrNameCase(preferences.getInt(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE));
-				fCleanupPreferences.setCompressEmptyElementTags(preferences.getBoolean(CommonModelPreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS));
-				fCleanupPreferences.setInsertRequiredAttrs(preferences.getBoolean(CommonModelPreferenceNames.INSERT_REQUIRED_ATTRS));
-				fCleanupPreferences.setInsertMissingTags(preferences.getBoolean(CommonModelPreferenceNames.INSERT_MISSING_TAGS));
-				fCleanupPreferences.setQuoteAttrValues(preferences.getBoolean(CommonModelPreferenceNames.QUOTE_ATTR_VALUES));
-				fCleanupPreferences.setFormatSource(preferences.getBoolean(CommonModelPreferenceNames.FORMAT_SOURCE));
-				fCleanupPreferences.setConvertEOLCodes(preferences.getBoolean(CommonModelPreferenceNames.CONVERT_EOL_CODES));
-				fCleanupPreferences.setEOLCode(preferences.getString(CommonModelPreferenceNames.CLEANUP_EOL_CODE));
-			}
-		}
-
-		return fCleanupPreferences;
-	}
-
-	protected String getContentType() {
-		return ContentTypeIdForXML.ContentTypeID_XML;
-	}
-
-	protected IStructuredFormatProcessor getFormatProcessor() {
-		return new FormatProcessorXML();
-	}
-
-	protected Preferences getModelPreferences() {
-		return XMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	protected void refreshCleanupPreferences() {
-		fCleanupPreferences = null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/ElementNodeCleanupHandler.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/ElementNodeCleanupHandler.java
deleted file mode 100644
index a23743a..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/ElementNodeCleanupHandler.java
+++ /dev/null
@@ -1,556 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.cleanup;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.text.edits.InsertEdit;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupHandler;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLGenerator;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class ElementNodeCleanupHandler extends NodeCleanupHandler {
-	protected static final char DOUBLE_QUOTE = '\"'; //$NON-NLS-1$
-	protected static final String DOUBLE_QUOTES = "\"\""; //$NON-NLS-1$
-	protected static final String EMPTY_TAG_CLOSE = "/>"; //$NON-NLS-1$
-	protected static final String END_TAG_OPEN = "</"; //$NON-NLS-1$
-	protected static final char SINGLE_QUOTE = '\''; //$NON-NLS-1$
-	protected static final String SINGLE_QUOTES = "''"; //$NON-NLS-1$
-
-	/** Non-NLS strings */
-	protected static final String START_TAG_OPEN = "<"; //$NON-NLS-1$
-	protected static final String TAG_CLOSE = ">"; //$NON-NLS-1$
-
-	public Node cleanup(Node node) {
-		Node newNode = cleanupChildren(node);
-		XMLNode renamedNode = newNode instanceof XMLNode ? (XMLNode) newNode : null;
-
-		// call quoteAttrValue() first so it will close any unclosed attr
-		// quoteAttrValue() will return the new start tag if there is a
-		// structure change
-		renamedNode = quoteAttrValue(renamedNode);
-
-		// insert tag close if missing
-		// if node is not comment tag
-		// and not implicit tag
-		if (!isCommentTag(renamedNode) && !isImplicitTag(renamedNode)) {
-			XMLModel structuredModel = renamedNode.getModel();
-
-			// save start offset before insertTagClose()
-			// or else renamedNode.getStartOffset() will be zero if
-			// renamedNode replaced by insertTagClose()
-			int startTagStartOffset = renamedNode.getStartOffset();
-
-			// for start tag
-			IStructuredDocumentRegion startTagStructuredDocumentRegion = renamedNode.getStartStructuredDocumentRegion();
-			insertTagClose(structuredModel, startTagStructuredDocumentRegion);
-
-			// update renamedNode and startTagStructuredDocumentRegion after
-			// insertTagClose()
-			renamedNode = (XMLNode) structuredModel.getIndexedRegion(startTagStartOffset);
-			startTagStructuredDocumentRegion = renamedNode.getStartStructuredDocumentRegion();
-
-			// for end tag
-			IStructuredDocumentRegion endTagStructuredDocumentRegion = renamedNode.getEndStructuredDocumentRegion();
-			if (endTagStructuredDocumentRegion != startTagStructuredDocumentRegion)
-				insertTagClose(structuredModel, endTagStructuredDocumentRegion);
-		}
-
-		// call insertMissingTags() next, it will generate implicit tags if
-		// there are any
-		// insertMissingTags() will return the new missing start tag if one is
-		// missing
-		renamedNode = insertMissingTags(renamedNode);
-
-		renamedNode = compressEmptyElementTag(renamedNode);
-
-		renamedNode = insertRequiredAttrs(renamedNode);
-
-		return renamedNode;
-	}
-
-	protected Node cleanupChildren(Node node) {
-		Node parentNode = node;
-
-		if (node != null) {
-			Node childNode = node.getFirstChild();
-			while (childNode != null) {
-				// get cleanup handler
-				IStructuredCleanupHandler cleanupHandler = getCleanupHandler(childNode);
-
-				// cleanup each child
-				childNode = cleanupHandler.cleanup(childNode);
-
-				// get new parent node
-				parentNode = (XMLNode) childNode.getParentNode();
-
-				// get next child node
-				childNode = (XMLNode) childNode.getNextSibling();
-			}
-		}
-
-		return parentNode;
-	}
-
-	private XMLNode compressEmptyElementTag(XMLNode node) {
-		boolean compressEmptyElementTags = getCleanupPreferences().getCompressEmptyElementTags();
-		XMLNode newNode = node;
-
-		IStructuredDocumentRegion startTagStructuredDocumentRegion = newNode.getFirstStructuredDocumentRegion();
-		IStructuredDocumentRegion endTagStructuredDocumentRegion = newNode.getLastStructuredDocumentRegion();
-
-		if (compressEmptyElementTags && startTagStructuredDocumentRegion != endTagStructuredDocumentRegion && startTagStructuredDocumentRegion != null) {
-			ITextRegionList regions = startTagStructuredDocumentRegion.getRegions();
-			ITextRegion lastRegion = regions.get(regions.size() - 1);
-			// format children and end tag if not empty element tag
-			if (lastRegion.getType() != XMLRegionContext.XML_EMPTY_TAG_CLOSE) {
-				NodeList childNodes = newNode.getChildNodes();
-				if (childNodes == null || childNodes.getLength() == 0 || (childNodes.getLength() == 1 && (childNodes.item(0)).getNodeType() == Node.TEXT_NODE && ((childNodes.item(0)).getNodeValue().trim().length() == 0))) {
-					XMLModel structuredModel = newNode.getModel();
-					IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-
-					int startTagStartOffset = newNode.getStartOffset();
-					int offset = endTagStructuredDocumentRegion.getStart();
-					int length = endTagStructuredDocumentRegion.getLength();
-					structuredDocument.replaceText(structuredDocument, offset, length, ""); //$NON-NLS-1$
-					newNode = (XMLNode) structuredModel.getIndexedRegion(startTagStartOffset); // save
-
-					offset = startTagStructuredDocumentRegion.getStart() + lastRegion.getStart();
-					structuredDocument.replaceText(structuredDocument, offset, 0, "/"); //$NON-NLS-1$
-					newNode = (XMLNode) structuredModel.getIndexedRegion(startTagStartOffset); // save
-				}
-			}
-		}
-
-		return newNode;
-	}
-
-	protected IStructuredCleanupHandler getCleanupHandler(Node node) {
-		short nodeType = node.getNodeType();
-		IStructuredCleanupHandler cleanupHandler = null;
-		switch (nodeType) {
-			case org.w3c.dom.Node.ELEMENT_NODE : {
-				cleanupHandler = new ElementNodeCleanupHandler();
-				break;
-			}
-			case org.w3c.dom.Node.TEXT_NODE : {
-				cleanupHandler = new NodeCleanupHandler();
-				break;
-			}
-			default : {
-				cleanupHandler = new NodeCleanupHandler();
-			}
-		}
-
-		// init CleanupPreferences
-		cleanupHandler.setCleanupPreferences(getCleanupPreferences());
-
-		return cleanupHandler;
-	}
-
-
-	protected ModelQuery getModelQuery(Node node) {
-		if (node.getNodeType() == Node.DOCUMENT_NODE) {
-			return ModelQueryUtil.getModelQuery((Document) node);
-		} else {
-			return ModelQueryUtil.getModelQuery(node.getOwnerDocument());
-		}
-	}
-
-	protected List getRequiredAttrs(Node node) {
-		List result = new ArrayList();
-
-		ModelQuery modelQuery = getModelQuery(node);
-		if (modelQuery != null) {
-			CMElementDeclaration elementDecl = modelQuery.getCMElementDeclaration((Element) node);
-			if (elementDecl != null) {
-				CMNamedNodeMap attrMap = elementDecl.getAttributes();
-				Iterator it = attrMap.iterator();
-				CMAttributeDeclaration attr = null;
-				while (it.hasNext()) {
-					attr = (CMAttributeDeclaration) it.next();
-					if (attr.getUsage() == CMAttributeDeclaration.REQUIRED) {
-						result.add(attr);
-					}
-				}
-			}
-		}
-
-		return result;
-	}
-
-	private XMLNode insertEndTag(XMLNode node) {
-		XMLNode newNode = node;
-		XMLElement element = (XMLElement) node;
-		if (element.isCommentTag())
-			return node; // do nothing
-
-		int startTagStartOffset = node.getStartOffset();
-		XMLModel structuredModel = node.getModel();
-
-		if (isEmptyElement(element)) {
-			IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-			IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();
-			ITextRegionList regions = startStructuredDocumentRegion.getRegions();
-			ITextRegion lastRegion = regions.get(regions.size() - 1);
-			structuredDocument.replaceText(structuredDocument, startStructuredDocumentRegion.getStartOffset(lastRegion), lastRegion.getLength(), EMPTY_TAG_CLOSE);
-
-			if (regions.size() > 1) {
-				ITextRegion regionBeforeTagClose = regions.get(regions.size() - 1 - 1);
-
-				// insert a space separator before tag close if the previous
-				// region does not have extra spaces
-				if (regionBeforeTagClose.getTextLength() == regionBeforeTagClose.getLength())
-					structuredDocument.replaceText(structuredDocument, startStructuredDocumentRegion.getStartOffset(lastRegion), 0, " "); //$NON-NLS-1$
-			}
-		} else {
-			String tagName = node.getNodeName();
-			String endTag = END_TAG_OPEN.concat(tagName).concat(TAG_CLOSE);
-
-			XMLNode lastChild = (XMLNode) node.getLastChild();
-			int endTagStartOffset = 0;
-			if (lastChild != null)
-				// if this node has children, insert the end tag after the
-				// last child
-				endTagStartOffset = lastChild.getEndOffset();
-			else
-				// if this node does not has children, insert the end tag
-				// after the start tag
-				endTagStartOffset = node.getEndOffset();
-
-			IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-			structuredDocument.replaceText(structuredDocument, endTagStartOffset, 0, endTag);
-		}
-
-		newNode = (XMLNode) structuredModel.getIndexedRegion(startTagStartOffset); // save
-		// new
-		// node
-
-		return newNode;
-	}
-
-	private XMLNode insertMissingTags(XMLNode node) {
-		boolean insertMissingTags = getCleanupPreferences().getInsertMissingTags();
-		XMLNode newNode = node;
-
-		if (insertMissingTags) {
-			IStructuredDocumentRegion startTagStructuredDocumentRegion = node.getStartStructuredDocumentRegion();
-			if (startTagStructuredDocumentRegion == null) {
-				// implicit start tag; generate tag for it
-				newNode = insertStartTag(node);
-				startTagStructuredDocumentRegion = newNode.getStartStructuredDocumentRegion();
-			}
-
-			IStructuredDocumentRegion endTagStructuredDocumentRegion = newNode.getEndStructuredDocumentRegion();
-			ITextRegionList startStructuredDocumentRegionRegions = startTagStructuredDocumentRegion.getRegions();
-			if (startTagStructuredDocumentRegion != null && startStructuredDocumentRegionRegions != null && (startStructuredDocumentRegionRegions.get(startStructuredDocumentRegionRegions.size() - 1)).getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE) {
-
-			} else {
-				if (startTagStructuredDocumentRegion == null) {
-					// start tag missing
-					if (isStartTagRequired(newNode))
-						newNode = insertStartTag(newNode);
-				} else if (endTagStructuredDocumentRegion == null) {
-					// end tag missing
-					if (isEndTagRequired(newNode))
-						newNode = insertEndTag(newNode);
-				}
-			}
-		}
-
-		return newNode;
-	}
-
-	private XMLNode insertRequiredAttrs(XMLNode node) {
-		boolean insertRequiredAttrs = getCleanupPreferences().getInsertRequiredAttrs();
-		XMLNode newNode = node;
-
-		if (insertRequiredAttrs) {
-			List requiredAttrs = getRequiredAttrs(newNode);
-			if (requiredAttrs.size() > 0) {
-				NamedNodeMap currentAttrs = node.getAttributes();
-				List insertAttrs = new ArrayList();
-				if (currentAttrs.getLength() == 0)
-					insertAttrs.addAll(requiredAttrs);
-				else {
-					for (int i = 0; i < requiredAttrs.size(); i++) {
-						String requiredAttrName = ((CMAttributeDeclaration) requiredAttrs.get(i)).getAttrName();
-						boolean found = false;
-						for (int j = 0; j < currentAttrs.getLength(); j++) {
-							String currentAttrName = currentAttrs.item(j).getNodeName();
-							if (requiredAttrName.compareToIgnoreCase(currentAttrName) == 0) {
-								found = true;
-								break;
-							}
-						}
-						if (!found)
-							insertAttrs.add(requiredAttrs.get(i));
-					}
-				}
-				if (insertAttrs.size() > 0) {
-					IStructuredDocumentRegion startStructuredDocumentRegion = newNode.getStartStructuredDocumentRegion();
-					int index = startStructuredDocumentRegion.getEndOffset();
-					ITextRegion lastRegion = startStructuredDocumentRegion.getLastRegion();
-					if (lastRegion.getType() == XMLRegionContext.XML_TAG_CLOSE) {
-						index--;
-						lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);
-					} else if (lastRegion.getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE) {
-						index = index - 2;
-						lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);
-					}
-					MultiTextEdit multiTextEdit = new MultiTextEdit();
-					try {
-						for (int i = insertAttrs.size() - 1; i >= 0; i--) {
-							CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) insertAttrs.get(i);
-							String requiredAttributeName = attrDecl.getAttrName();
-							String defaultValue = attrDecl.getDefaultValue();
-							if (defaultValue == null)
-								defaultValue = ""; //$NON-NLS-1$
-							String nameAndDefaultValue = " "; //$NON-NLS-1$
-							if (i == 0 && lastRegion.getLength() > lastRegion.getTextLength())
-								nameAndDefaultValue = ""; //$NON-NLS-1$
-							nameAndDefaultValue += requiredAttributeName + "=\"" + defaultValue + "\""; //$NON-NLS-1$ //$NON-NLS-2$
-							multiTextEdit.addChild(new InsertEdit(index, nameAndDefaultValue));
-							// BUG3381: MultiTextEdit applies all child
-							// TextEdit's basing on offsets
-							//          in the document before the first TextEdit, not
-							// after each
-							//          child TextEdit. Therefore, do not need to
-							// advance the index.
-							//index += nameAndDefaultValue.length();
-						}
-						multiTextEdit.apply(newNode.getStructuredDocument());
-					} catch (BadLocationException e) {
-						throw new SourceEditingRuntimeException(e);
-					}
-				}
-			}
-		}
-
-		return newNode;
-	}
-
-	private XMLNode insertStartTag(XMLNode node) {
-		XMLNode newNode = node;
-
-		if (isCommentTag(node))
-			return node; // do nothing
-
-		String tagName = node.getNodeName();
-		String startTag = START_TAG_OPEN.concat(tagName).concat(TAG_CLOSE);
-		int startTagStartOffset = node.getStartOffset();
-
-		XMLModel structuredModel = node.getModel();
-		IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-		structuredDocument.replaceText(structuredDocument, startTagStartOffset, 0, startTag);
-		newNode = (XMLNode) structuredModel.getIndexedRegion(startTagStartOffset); // save
-		// new
-		// node
-
-		return newNode;
-	}
-
-	private void insertTagClose(XMLModel structuredModel, IStructuredDocumentRegion flatNode) {
-		if (flatNode != null) {
-			ITextRegionList flatnodeRegions = flatNode.getRegions();
-			if (flatnodeRegions != null) {
-				ITextRegion lastRegion = flatnodeRegions.get(flatnodeRegions.size() - 1);
-				if (lastRegion != null) {
-					String regionType = lastRegion.getType();
-					if ((regionType != XMLRegionContext.XML_EMPTY_TAG_CLOSE) && (regionType != XMLRegionContext.XML_TAG_CLOSE)) {
-						IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-
-						// insert ">" after lastRegion of flatNode
-						// as in "<a</a>" if flatNode is for start tag, or in
-						// "<a></a" if flatNode is for end tag
-						structuredDocument.replaceText(structuredDocument, flatNode.getTextEndOffset(lastRegion), 0, ">"); //$NON-NLS-1$
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * @param renamedNode
-	 * @return
-	 */
-	private boolean isCommentTag(Node renamedNode) {
-		boolean result = false;
-		if (renamedNode instanceof XMLElement) {
-			XMLElement element = (XMLElement) renamedNode;
-			result = element.isCommentTag();
-		}
-		return result;
-	}
-
-	private boolean isEmptyElement(XMLElement element) {
-		Document document = element.getOwnerDocument();
-		if (document == null)
-			// undefined tag, return default
-			return false;
-
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-		if (modelQuery == null)
-			// undefined tag, return default
-			return false;
-
-		CMElementDeclaration decl = modelQuery.getCMElementDeclaration(element);
-		if (decl == null)
-			// undefined tag, return default
-			return false;
-
-		return (decl.getContentType() == CMElementDeclaration.EMPTY);
-	}
-
-	private boolean isEndTagRequired(XMLNode node) {
-		if (node == null)
-			return false;
-		return node.isContainer();
-	}
-
-	/**
-	 * A tag is implicit if it has not corresponding region in document.
-	 * 
-	 * @param renamedNode
-	 * @return
-	 */
-	private boolean isImplicitTag(XMLNode renamedNode) {
-		return renamedNode.getStartStructuredDocumentRegion() == null;
-	}
-
-	/**
-	 * The end tags of HTML EMPTY content type, such as IMG, and HTML
-	 * undefined tags are parsed separately from the start tags. So inserting
-	 * the missing start tag is useless and even harmful.
-	 */
-	private boolean isStartTagRequired(XMLNode node) {
-		if (node == null)
-			return false;
-		return node.isContainer();
-	}
-
-	private boolean isXMLType(XMLModel structuredModel) {
-		boolean result = false;
-
-		if (structuredModel != null && structuredModel != null) {
-			XMLDocument document = structuredModel.getDocument();
-
-			if (document != null)
-				result = document.isXMLType();
-		}
-
-		return result;
-	}
-
-	private XMLNode quoteAttrValue(XMLNode node) {
-		XMLNode newNode = node;
-		//XMLElement element = (XMLElement) node;
-		if (isCommentTag(node))
-			return node; // do nothing
-
-		boolean quoteAttrValues = getCleanupPreferences().getQuoteAttrValues();
-
-		if (quoteAttrValues) {
-			NamedNodeMap attributes = newNode.getAttributes();
-			if (attributes != null) {
-				int attributesLength = attributes.getLength();
-				XMLGenerator generator = node.getModel().getGenerator();
-
-				for (int i = 0; i < attributesLength; i++) {
-					attributes = newNode.getAttributes();
-					attributesLength = attributes.getLength();
-					XMLAttr eachAttr = (XMLAttr) attributes.item(i);
-					//ITextRegion oldAttrValueRegion =
-					// eachAttr.getValueRegion();
-					String oldAttrValue = eachAttr.getValueRegionText();
-					if (oldAttrValue == null) {
-						XMLModel structuredModel = node.getModel();
-						if (isXMLType(structuredModel)) {
-							String newAttrValue = "\"" + eachAttr.getNameRegionText() + "\""; //$NON-NLS-1$ //$NON-NLS-2$
-
-							IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-							if (eachAttr.getEqualRegion() != null)
-								// equal region exists
-								structuredDocument.replaceText(structuredDocument, eachAttr.getEndOffset(), 0, newAttrValue);
-							else
-								// no equal region
-								structuredDocument.replaceText(structuredDocument, eachAttr.getNameRegionTextEndOffset(), 0, "=".concat(newAttrValue)); //$NON-NLS-1$
-							newNode = (XMLNode) structuredModel.getIndexedRegion(node.getStartOffset()); // save
-							// new
-							// node
-						}
-					} else {
-						//String oldAttrValue = oldAttrValueRegion.getText();
-						char quote = StringUtils.isQuoted(oldAttrValue) ? oldAttrValue.charAt(0) : DOUBLE_QUOTE;
-						String newAttrValue = generator.generateAttrValue(eachAttr, quote);
-
-						// There is a problem in
-						// StructuredDocumentRegionUtil.getAttrValue(ITextRegion)
-						// when the region is instanceof ContextRegion.
-						// Workaround for now...
-						if (oldAttrValue.length() == 1) {
-							char firstChar = oldAttrValue.charAt(0);
-							if (firstChar == SINGLE_QUOTE)
-								newAttrValue = SINGLE_QUOTES;
-							else if (firstChar == DOUBLE_QUOTE)
-								newAttrValue = DOUBLE_QUOTES;
-						}
-
-						if (newAttrValue != null) {
-							if (newAttrValue.compareTo(oldAttrValue) != 0) {
-								int attrValueStartOffset = eachAttr.getValueRegionStartOffset();
-								int attrValueLength = oldAttrValue.length();
-								int startTagStartOffset = node.getStartOffset();
-
-								XMLModel structuredModel = node.getModel();
-								IStructuredDocument structuredDocument = structuredModel.getStructuredDocument();
-								structuredDocument.replaceText(structuredDocument, attrValueStartOffset, attrValueLength, newAttrValue);
-								newNode = (XMLNode) structuredModel.getIndexedRegion(startTagStartOffset); // save
-								// new
-								// node
-							}
-						}
-					}
-				}
-			}
-		}
-
-		return newNode;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/NodeCleanupHandler.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/NodeCleanupHandler.java
deleted file mode 100644
index ab72ddb..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/NodeCleanupHandler.java
+++ /dev/null
@@ -1,70 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.cleanup;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupHandler;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupPreferences;
-import org.eclipse.wst.sse.core.internal.cleanup.StructuredCleanupPreferences;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.w3c.dom.Node;
-
-
-public class NodeCleanupHandler implements IStructuredCleanupHandler {
-
-	protected IStructuredCleanupPreferences fCleanupPreferences = null;
-	protected IProgressMonitor fProgressMonitor = null;
-
-	/**
-	 * @see com.ibm.sed.partitionCleanup.CleanupHandler#cleanup(com.ibm.sed.model.xml.XMLNode)
-	 */
-	public Node cleanup(Node node) {
-
-		return node;
-	}
-
-	/**
-	 * @see com.ibm.sed.partitionCleanup.CleanupHandler#getCleanupPreferences()
-	 */
-	public IStructuredCleanupPreferences getCleanupPreferences() {
-		if (fCleanupPreferences == null) {
-			fCleanupPreferences = new StructuredCleanupPreferences();
-
-			Preferences preferences = getModelPreferences();
-			if (preferences != null) {
-				fCleanupPreferences.setTagNameCase(preferences.getInt(CommonModelPreferenceNames.CLEANUP_TAG_NAME_CASE));
-				fCleanupPreferences.setAttrNameCase(preferences.getInt(CommonModelPreferenceNames.CLEANUP_ATTR_NAME_CASE));
-				fCleanupPreferences.setCompressEmptyElementTags(preferences.getBoolean(CommonModelPreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS));
-				fCleanupPreferences.setInsertRequiredAttrs(preferences.getBoolean(CommonModelPreferenceNames.INSERT_REQUIRED_ATTRS));
-				fCleanupPreferences.setInsertMissingTags(preferences.getBoolean(CommonModelPreferenceNames.INSERT_MISSING_TAGS));
-				fCleanupPreferences.setQuoteAttrValues(preferences.getBoolean(CommonModelPreferenceNames.QUOTE_ATTR_VALUES));
-				fCleanupPreferences.setFormatSource(preferences.getBoolean(CommonModelPreferenceNames.FORMAT_SOURCE));
-				fCleanupPreferences.setConvertEOLCodes(preferences.getBoolean(CommonModelPreferenceNames.CONVERT_EOL_CODES));
-				fCleanupPreferences.setEOLCode(preferences.getString(CommonModelPreferenceNames.CLEANUP_EOL_CODE));
-			}
-		}
-
-		return fCleanupPreferences;
-	}
-
-	protected Preferences getModelPreferences() {
-		return XMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	public void setCleanupPreferences(IStructuredCleanupPreferences cleanupPreferences) {
-
-		fCleanupPreferences = cleanupPreferences;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/XMLCleanupPreferences.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/XMLCleanupPreferences.java
deleted file mode 100644
index c188d00..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/XMLCleanupPreferences.java
+++ /dev/null
@@ -1,54 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.cleanup;
-
-import org.eclipse.core.runtime.Preferences;
-
-/**
- * @deprecated renamed to IStructuredCleanupPreferences
- * 
- * TODO will delete in C5
- */
-public interface XMLCleanupPreferences {
-
-	int getAttrNameCase();
-
-	boolean getConvertEOLCodes();
-
-	String getEOLCode();
-
-	boolean getFormatSource();
-
-	boolean getInsertMissingTags();
-
-	boolean getQuoteAttrValues();
-
-	int getTagNameCase();
-
-	void setAttrNameCase(int attrNameCase);
-
-	void setConvertEOLCodes(boolean convertEOLCodes);
-
-	void setEOLCode(String EOLCode);
-
-	void setFormatSource(boolean formatSource);
-
-	void setInsertMissingTags(boolean insertMissingTags);
-
-	//void setPreferenceStore(IPreferenceStore preferenceStore);
-	void setPreferences(Preferences preferences);
-
-	void setQuoteAttrValues(boolean quoteAttrValues);
-
-	void setTagNameCase(int tagNameCase);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/XMLCleanupPreferencesImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/XMLCleanupPreferencesImpl.java
deleted file mode 100644
index 7dbba77..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/cleanup/XMLCleanupPreferencesImpl.java
+++ /dev/null
@@ -1,142 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.cleanup;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.wst.sse.core.internal.SSECorePlugin;
-import org.eclipse.wst.xml.core.XMLPreferenceNames;
-
-/**
- * @deprecated renamed to StructuredCleanupPreferences
- * 
- * TODO will delete in C5
- */
-public class XMLCleanupPreferencesImpl implements XMLCleanupPreferences {
-
-	private static XMLCleanupPreferencesImpl fInstance;
-
-	public synchronized static XMLCleanupPreferencesImpl getInstance() {
-
-		// added for one method in CleanupDialog ... may be better way
-		if (fInstance == null) {
-			fInstance = new XMLCleanupPreferencesImpl();
-		}
-		return fInstance;
-	}
-
-	private int fAttrNameCase;
-	private boolean fConvertEOLCodes;
-	private String fEOLCode;
-	private boolean fFormatSource;
-	private boolean fInsertMissingTags;
-	//private IPreferenceStore fPreferenceStore = null;
-	private Preferences fPreferences = null;
-	private boolean fQuoteAttrValues;
-	private int fTagNameCase;
-
-	public int getAttrNameCase() {
-
-		return fAttrNameCase;
-	}
-
-	public boolean getConvertEOLCodes() {
-
-		return fConvertEOLCodes;
-	}
-
-	public String getEOLCode() {
-
-		return fEOLCode;
-	}
-
-	public boolean getFormatSource() {
-
-		return fFormatSource;
-	}
-
-	public boolean getInsertMissingTags() {
-
-		return fInsertMissingTags;
-	}
-
-	public Preferences getPreferences() {
-
-		if (fPreferences == null) {
-			fPreferences = SSECorePlugin.getDefault().getPluginPreferences();
-		}
-		return fPreferences;
-	}
-
-	public boolean getQuoteAttrValues() {
-
-		return fQuoteAttrValues;
-	}
-
-	public int getTagNameCase() {
-
-		return fTagNameCase;
-	}
-
-	public void setAttrNameCase(int attrNameCase) {
-
-		fAttrNameCase = attrNameCase;
-	}
-
-	public void setConvertEOLCodes(boolean convertEOLCodes) {
-
-		fConvertEOLCodes = convertEOLCodes;
-	}
-
-	public void setEOLCode(String EOLCode) {
-
-		fEOLCode = EOLCode;
-	}
-
-	public void setFormatSource(boolean formatSource) {
-
-		fFormatSource = formatSource;
-	}
-
-	public void setInsertMissingTags(boolean insertMissingTags) {
-
-		fInsertMissingTags = insertMissingTags;
-	}
-
-	public void setPreferences(Preferences prefs) {
-
-		fPreferences = prefs;
-		updateOptions();
-	}
-
-	public void setQuoteAttrValues(boolean quoteAttrValues) {
-
-		fQuoteAttrValues = quoteAttrValues;
-	}
-
-	public void setTagNameCase(int tagNameCase) {
-
-		fTagNameCase = tagNameCase;
-	}
-
-	protected void updateOptions() {
-
-		Preferences p = getPreferences();
-		fTagNameCase = p.getInt(XMLPreferenceNames.CLEANUP_TAG_NAME_CASE);
-		fAttrNameCase = p.getInt(XMLPreferenceNames.CLEANUP_ATTR_NAME_CASE);
-		fInsertMissingTags = p.getBoolean(XMLPreferenceNames.INSERT_MISSING_TAGS);
-		fQuoteAttrValues = p.getBoolean(XMLPreferenceNames.QUOTE_ATTR_VALUES);
-		fFormatSource = p.getBoolean(XMLPreferenceNames.FORMAT_SOURCE);
-		fConvertEOLCodes = p.getBoolean(XMLPreferenceNames.CONVERT_EOL_CODES);
-		fEOLCode = p.getString(XMLPreferenceNames.CLEANUP_EOL_CODE);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/AbstractResourceEncodingDetector.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/AbstractResourceEncodingDetector.java
deleted file mode 100644
index 8d03de8..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/AbstractResourceEncodingDetector.java
+++ /dev/null
@@ -1,258 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-import java.nio.charset.Charset;
-import java.nio.charset.IllegalCharsetNameException;
-import java.nio.charset.UnsupportedCharsetException;
-
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.sse.core.internal.encoding.CodedIO;
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-import org.eclipse.wst.sse.core.internal.encoding.util.ByteReader;
-
-
-public abstract class AbstractResourceEncodingDetector implements IResourceCharsetDetector {
-
-	protected EncodingMemento fEncodingMemento;
-
-	protected boolean fHeaderParsed;
-
-	protected Reader fReader;
-
-	/**
-	 *  
-	 */
-	public AbstractResourceEncodingDetector() {
-		super();
-	}
-
-	/**
-	 * Note: once this instance is created, trace info still needs to be
-	 * appended by caller, depending on the context its created.
-	 */
-	private void createEncodingMemento(String detectedCharsetName) {
-		fEncodingMemento = new EncodingMemento();
-		fEncodingMemento.setJavaCharsetName(getAppropriateJavaCharset(detectedCharsetName));
-		fEncodingMemento.setDetectedCharsetName(detectedCharsetName);
-		// TODO: if detectedCharset and spec default is
-		// null, need to use "work
-		// bench based" defaults.
-		fEncodingMemento.setAppropriateDefault(getSpecDefaultEncoding());
-	}
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 * 
-	 * @param detectedCharsetName
-	 * @param reason
-	 */
-	final protected void createEncodingMemento(String detectedCharsetName, String reason) {
-		createEncodingMemento(detectedCharsetName);
-	}
-
-	/**
-	 * convience method all subclasses can use (but not override)
-	 */
-	final protected void ensureInputSet() {
-		if (fReader == null) {
-			throw new IllegalStateException("input must be set before use"); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * This method can return null, if invalid charset name (in which case
-	 * "appropriateDefault" should be used, if a name is really need for some
-	 * "save anyway" cases).
-	 * 
-	 * @param detectedCharsetName
-	 * @return
-	 */
-	private String getAppropriateJavaCharset(String detectedCharsetName) {
-		String result = null;
-		// 1. Check explicit mapping overrides from
-		// property file -- its here we pick up "rules" for cases
-		// that are not even in Java
-		result = CodedIO.checkMappingOverrides(detectedCharsetName);
-		// 2. Use the "canonical" name from JRE mappings
-		// Note: see Charset JavaDoc, the name you get one
-		// with can be alias,
-		// the name you get back is "standard" name.
-		Charset javaCharset = null;
-		try {
-			javaCharset = Charset.forName(detectedCharsetName);
-		} catch (UnsupportedCharsetException e) {
-			// only set invalid, if result is same as detected -- they won't
-			// be equal if
-			// overridden
-			if (result != null && result.equals(detectedCharsetName)) {
-				fEncodingMemento.setInvalidEncoding(detectedCharsetName);
-			}
-		} catch (IllegalCharsetNameException e) {
-			// only set invalid, if result is same as detected -- they won't
-			// be equal if
-			// overridden
-			if (result != null && result.equals(detectedCharsetName)) {
-				fEncodingMemento.setInvalidEncoding(detectedCharsetName);
-			}
-		}
-		// give priority to java cononical name, if present
-		if (javaCharset != null) {
-			result = javaCharset.name();
-			// but still allow overrides
-			result = CodedIO.checkMappingOverrides(result);
-		}
-		return result;
-	}
-
-	public String getEncoding() throws IOException {
-		return getEncodingMemento().getDetectedCharsetName();
-	}
-
-	// to ensure consist overall rules used, we'll mark as
-	// final,
-	// and require subclasses to provide certain pieces of
-	// the
-	// implementation
-	public EncodingMemento getEncodingMemento() throws IOException {
-		ensureInputSet();
-		if (!fHeaderParsed) {
-			parseInput();
-			// we keep track of if header's already been
-			// parse, so can make
-			// multiple 'get' calls, without causing
-			// reparsing.
-			fHeaderParsed = true;
-			// Note: there is a "hidden assumption" here
-			// that an empty
-			// string in content should be treated same as
-			// not present.
-		}
-		if (fEncodingMemento == null) {
-			handleSpecDefault();
-		}
-		if (fEncodingMemento == null) {
-			// safty net
-			fEncodingMemento = new NullMemento();
-		}
-		return fEncodingMemento;
-	}
-
-	/**
-	 * This is to return a default encoding -- as specified by an industry
-	 * content type spec -- when not present in the stream, for example, XML
-	 * specifies UTF-8, JSP specifies ISO-8859-1. This method should return
-	 * null if there is no such "spec default".
-	 */
-	abstract public String getSpecDefaultEncoding();
-
-	public EncodingMemento getSpecDefaultEncodingMemento() {
-		resetAll();
-		EncodingMemento result = null;
-		String enc = getSpecDefaultEncoding();
-		if (enc != null) {
-			createEncodingMemento(enc, EncodingMemento.DEFAULTS_ASSUMED_FOR_EMPTY_INPUT);
-			fEncodingMemento.setAppropriateDefault(enc);
-			result = fEncodingMemento;
-		}
-		return result;
-	}
-
-	private void handleSpecDefault() {
-		String encodingName;
-		encodingName = getSpecDefaultEncoding();
-		if (encodingName != null) {
-			//createEncodingMemento(encodingName,
-			// EncodingMemento.USED_CONTENT_TYPE_DEFAULT);
-			fEncodingMemento = new EncodingMemento();
-			fEncodingMemento.setJavaCharsetName(encodingName);
-			fEncodingMemento.setAppropriateDefault(encodingName);
-		}
-	}
-
-	/**
-	 * Every subclass must provide a way to parse the input. This method has
-	 * several critical responsibilities:
-	 * <li>set the fEncodingMemento field appropriately, according to the
-	 * results of the parse of fReader.</li>
-	 * <li>set fHarderParsed to true, to avoid wasted re-parsing.</li>
-	 */
-	abstract protected void parseInput() throws IOException;
-
-	/**
-	 *  
-	 */
-	private void resetAll() {
-		fReader = null;
-		fHeaderParsed = false;
-		fEncodingMemento = null;
-	}
-
-	/**
-	 *  
-	 */
-	public void set(InputStream inputStream) {
-		resetAll();
-		fReader = new ByteReader(inputStream);
-		try {
-			fReader.mark(CodedIO.MAX_MARK_SIZE);
-		} catch (IOException e) {
-			// impossible, since we know ByteReader
-			// supports marking
-			throw new Error(e);
-		}
-	}
-
-	/**
-	 *  
-	 */
-	public void set(IStorage iStorage) throws CoreException {
-		resetAll();
-		InputStream inputStream = iStorage.getContents();
-		InputStream resettableStream = new BufferedInputStream(inputStream, CodedIO.MAX_BUF_SIZE);
-		resettableStream.mark(CodedIO.MAX_MARK_SIZE);
-		set(resettableStream);
-		// TODO we'll need to "remember" IFile, or
-		// get its (or its project's) settings, in case
-		// those are needed to handle cases when the
-		// encoding is not in the file stream.
-	}
-
-	/**
-	 * Note: this is not part of interface to help avoid confusion ... it
-	 * expected this Reader is a well formed character reader ... that is, its
-	 * all ready been determined to not be a unicode marked input stream. And,
-	 * its assumed to be in the correct position, at position zero, ready to
-	 * read first character.
-	 */
-	public void set(Reader reader) {
-		resetAll();
-		fReader = reader;
-		if (!fReader.markSupported()) {
-			fReader = new BufferedReader(fReader);
-		}
-		try {
-			fReader.mark(CodedIO.MAX_MARK_SIZE);
-		} catch (IOException e) {
-			// impossble, since we just checked if markable
-			throw new Error(e);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/ByteReader.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/ByteReader.java
deleted file mode 100644
index e5f04fa..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/ByteReader.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-
-/**
- * This is an "adapter" class, simply to get in input stream to act like a
- * reader. We could not use InputStreamReader directly because its internal
- * buffers are not controllable, and it sometimes pulls too much out of input
- * stream (even when it wasn't needed for our purposes).
- * 
- * The use of this class is highly specialized and by not means meant to be
- * general purpose. Its use is restricted to those cases where the input
- * stream can be regarded as ascii just long enough to determine what the real
- * encoding should be.
- */
-
-public class ByteReader extends Reader {
-
-	/** Default byte buffer size (2048). */
-	public static final int DEFAULT_BUFFER_SIZE = 2048;
-
-	protected byte[] fBuffer;
-
-	protected InputStream fInputStream;
-
-	protected ByteReader() {
-		super();
-	}
-
-	public ByteReader(InputStream inputStream) {
-		this(inputStream, DEFAULT_BUFFER_SIZE);
-		if (!inputStream.markSupported()) {
-			throw new IllegalArgumentException("ByteReader is required to have a resettable stream"); //$NON-NLS-1$
-		}
-	}
-
-	public ByteReader(InputStream inputStream, int size) {
-		fInputStream = inputStream;
-		if (!inputStream.markSupported()) {
-			throw new IllegalArgumentException("ByteReader is required to have a resettable stream"); //$NON-NLS-1$
-		}
-		fBuffer = new byte[size];
-
-	}
-
-	public void close() throws IOException {
-		fInputStream.close();
-	}
-
-	public void mark(int readAheadLimit) throws IOException {
-		fInputStream.mark(readAheadLimit);
-	}
-
-	public boolean markSupported() {
-		return true;
-	}
-
-	public int read() throws IOException {
-		int b0 = fInputStream.read();
-		return (b0 & 0x00FF);
-	}
-
-	public int read(char ch[], int offset, int length) throws IOException {
-		if (length > fBuffer.length) {
-			length = fBuffer.length;
-		}
-
-		int count = fInputStream.read(fBuffer, 0, length);
-
-		for (int i = 0; i < count; i++) {
-			int b0 = fBuffer[i];
-			// the 0x00FF is to "lose" the negative bits filled in the byte to
-			// int conversion
-			// (and which would be there if cast directly from byte to char).
-			char c0 = (char) (b0 & 0x00FF);
-			ch[i] = c0;
-		}
-		return count;
-	}
-
-	public boolean ready() throws IOException {
-		return fInputStream.available() > 0;
-	}
-
-	public void reset() throws IOException {
-		fInputStream.reset();
-	}
-
-	public long skip(long n) throws IOException {
-		return fInputStream.skip(n);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/ContentDescriberForXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/ContentDescriberForXML.java
deleted file mode 100644
index 2659767..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/ContentDescriberForXML.java
+++ /dev/null
@@ -1,205 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.content.IContentDescriber;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.ITextContentDescriber;
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.IContentDescriptionExtended;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-
-
-public class ContentDescriberForXML implements ITextContentDescriber {
-	private final static QualifiedName[] SUPPORTED_OPTIONS = {IContentDescription.CHARSET, IContentDescription.BYTE_ORDER_MARK, IContentDescriptionExtended.DETECTED_CHARSET, IContentDescriptionExtended.UNSUPPORTED_CHARSET, IContentDescriptionExtended.APPROPRIATE_DEFAULT};
-
-	protected IResourceCharsetDetector getDetector() {
-		return new XMLResourceEncodingDetector();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.IContentDescriber#describe(java.io.InputStream,
-	 *      org.eclipse.core.runtime.content.IContentDescription)
-	 */
-	public int describe(InputStream contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.INDETERMINATE;
-
-		calculateSupportedOptions(contents, description);
-
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.ITextContentDescriber#describe(java.io.Reader,
-	 *      org.eclipse.core.runtime.content.IContentDescription)
-	 */
-	public int describe(Reader contents, IContentDescription description) throws IOException {
-		int result = IContentDescriber.INDETERMINATE;
-
-		calculateSupportedOptions(contents, description);
-
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.content.IContentDescriber#getSupportedOptions()
-	 */
-	public QualifiedName[] getSupportedOptions() {
-
-		return SUPPORTED_OPTIONS;
-	}
-
-	private void calculateSupportedOptions(InputStream contents, IContentDescription description) throws IOException {
-		if (isRelevent(description)) {
-			IResourceCharsetDetector detector = getDetector();
-			detector.set(contents);
-			handleCalculations(description, detector);
-		}
-	}
-
-	/**
-	 * @param contents
-	 * @param description
-	 * @throws IOException
-	 */
-	private void calculateSupportedOptions(Reader contents, IContentDescription description) throws IOException {
-		if (isRelevent(description)) {
-			IResourceCharsetDetector detector = getDetector();
-			detector.set(contents);
-			handleCalculations(description, detector);
-		}
-	}
-
-	private void handleDetectedSpecialCase(IContentDescription description, Object detectedCharset, Object javaCharset) {
-		// since equal, we don't need to add, but if our detected version is
-		// different than
-		// javaCharset, then we should add it. This will happen, for example,
-		// if there's
-		// differences in case, or differences due to override properties
-		if (detectedCharset != null) {
-			// if (!detectedCharset.equals(javaCharset)) {
-			// description.setProperty(IContentDescriptionExtended.DETECTED_CHARSET,
-			// detectedCharset);
-			// }
-
-			// Once we detected a charset, we should set the property even
-			// though it's the same as javaCharset
-			// because there are clients that rely on this property to
-			// determine if the charset is actually detected in file or not.
-			description.setProperty(IContentDescriptionExtended.DETECTED_CHARSET, detectedCharset);
-		}
-	}
-
-	/**
-	 * @param description
-	 * @return
-	 */
-	private boolean isRelevent(IContentDescription description) {
-		boolean result = false;
-		if (description == null)
-			result = false;
-		else if (description.isRequested(IContentDescription.BYTE_ORDER_MARK))
-			result = true;
-		else if (description.isRequested(IContentDescription.CHARSET))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.APPROPRIATE_DEFAULT))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.DETECTED_CHARSET))
-			result = true;
-		else if (description.isRequested(IContentDescriptionExtended.UNSUPPORTED_CHARSET))
-			result = true;
-		// else if
-		// (description.isRequested(IContentDescriptionExtended.ENCODING_MEMENTO))
-		// result = true;
-		return result;
-	}
-
-	/**
-	 * @param description
-	 * @param detector
-	 * @throws IOException
-	 */
-	protected void handleCalculations(IContentDescription description, IResourceCharsetDetector detector) throws IOException {
-		// note: if we're asked for one, we set them all. I need to be sure if
-		// called
-		// mulitiple times (one for each, say) that we don't waste time
-		// processing same
-		// content again.
-		EncodingMemento encodingMemento = detector.getEncodingMemento();
-		// TODO: I need to verify to see if this BOM work is always done
-		// by text type.
-		Object detectedByteOrderMark = encodingMemento.getUnicodeBOM();
-		if (detectedByteOrderMark != null) {
-			Object existingByteOrderMark = description.getProperty(IContentDescription.BYTE_ORDER_MARK);
-			// not sure why would ever be different, so if is different, may
-			// need to "push" up into base.
-			if (!detectedByteOrderMark.equals(existingByteOrderMark))
-				description.setProperty(IContentDescription.BYTE_ORDER_MARK, detectedByteOrderMark);
-		}
-
-
-		if (!encodingMemento.isValid()) {
-			// note: after setting here, its the mere presence of
-			// IContentDescriptionExtended.UNSUPPORTED_CHARSET
-			// in the resource's description that can be used to determine if
-			// invalid
-			// in those cases, the "detected" property contains an
-			// "appropriate default" to use.
-			description.setProperty(IContentDescriptionExtended.UNSUPPORTED_CHARSET, encodingMemento.getInvalidEncoding());
-			description.setProperty(IContentDescriptionExtended.APPROPRIATE_DEFAULT, encodingMemento.getAppropriateDefault());
-		}
-
-		Object detectedCharset = encodingMemento.getDetectedCharsetName();
-		Object javaCharset = encodingMemento.getJavaCharsetName();
-
-		// we always include detected, if its different than java
-		handleDetectedSpecialCase(description, detectedCharset, javaCharset);
-
-		if (javaCharset != null) {
-			Object existingCharset = description.getProperty(IContentDescription.CHARSET);
-			if (javaCharset.equals(existingCharset)) {
-				handleDetectedSpecialCase(description, detectedCharset, javaCharset);
-			} else {
-				// we may need to add what we found, but only need to add
-				// if different from default.the
-				Object defaultCharset = getDetector().getSpecDefaultEncoding();
-				if (defaultCharset != null) {
-					if (!defaultCharset.equals(javaCharset)) {
-						description.setProperty(IContentDescription.CHARSET, javaCharset);
-					}
-				} else {
-					// assuming if there is no spec default, we always need to
-					// add, I'm assuming
-					description.setProperty(IContentDescription.CHARSET, javaCharset);
-				}
-			}
-		}
-
-		// avoid adding anything if not absolutly needed, since always
-		// "cached" per session
-		// description.setProperty(IContentDescriptionExtended.ENCODING_MEMENTO,
-		// encodingMemento);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/EncodingParserConstants.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/EncodingParserConstants.java
deleted file mode 100644
index 9a002b7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/EncodingParserConstants.java
+++ /dev/null
@@ -1,30 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-
-public interface EncodingParserConstants {
-
-	final String EOF = "EOF"; //$NON-NLS-1$
-	final String InvalidTerminatedStringValue = "InvalidTerminatedStringValue"; //$NON-NLS-1$
-	final String InvalidTermintatedUnDelimitedStringValue = "InvalidTermintatedUnDelimitedStringValue"; //$NON-NLS-1$
-	final String MAX_CHARS_REACHED = "MAX_CHARS_REACHED"; //$NON-NLS-1$
-	final String StringValue = "strval"; //$NON-NLS-1$
-	final String UnDelimitedStringValue = "UnDelimitedStringValue"; //$NON-NLS-1$
-	public final String UTF16BE = "UTF16BE"; //$NON-NLS-1$
-	public final String UTF16LE = "UTF16LE"; //$NON-NLS-1$
-
-
-	public final String UTF83ByteBOM = "UTF83ByteBOM"; //$NON-NLS-1$
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/HeadParserToken.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/HeadParserToken.java
deleted file mode 100644
index 0f14b8b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/HeadParserToken.java
+++ /dev/null
@@ -1,44 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-public class HeadParserToken {
-	private int fStart;
-
-	private String fText;
-	private String fType;
-
-	protected HeadParserToken() {
-		super();
-	}
-
-	public HeadParserToken(String type, int start, String text) {
-		this();
-		fType = type;
-		fStart = start;
-		fText = text;
-
-	}
-
-	public String getText() {
-		return fText;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return ("text: " + fText + " offset: " + fStart + " type: " + fType); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/IntStack.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/IntStack.java
deleted file mode 100644
index 1d1052d..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/IntStack.java
+++ /dev/null
@@ -1,99 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-/*
- * 
- * A non-resizable class implementing the behavior of java.util.Stack, but
- * directly for the <code> integer </code> primitive.
- */
-import java.util.EmptyStackException;
-
-public class IntStack {
-	private int[] list = null;
-
-	private int size = 0;
-
-	public IntStack() {
-		this(100);
-	}
-
-	public IntStack(int maxdepth) {
-		super();
-		list = new int[maxdepth];
-		initialize();
-	}
-
-	public void clear() {
-		initialize();
-	}
-
-	public boolean empty() {
-		return size == 0;
-	}
-
-	public int get(int slot) {
-		return list[slot];
-	}
-
-	private void initialize() {
-		for (int i = 0; i < list.length; i++)
-			list[i] = -1;
-	}
-
-	/**
-	 * Returns the int at the top of the stack without removing it
-	 * 
-	 * @return int at the top of this stack.
-	 * @exception EmptyStackException
-	 *                when empty.
-	 */
-	public int peek() {
-		if (size == 0)
-			throw new EmptyStackException();
-		return list[size - 1];
-	}
-
-	/**
-	 * Removes and returns the int at the top of the stack
-	 * 
-	 * @return int at the top of this stack.
-	 * @exception EmptyStackException
-	 *                when empty.
-	 */
-	public int pop() {
-		int value = peek();
-		list[size - 1] = -1;
-		size--;
-		return value;
-	}
-
-	/**
-	 * Pushes an item onto the top of this stack.
-	 * 
-	 * @param newValue -
-	 *            the int to be pushed onto this stack.
-	 * @return the <code>newValue</code> argument.
-	 */
-	public int push(int newValue) {
-		if (size == list.length) {
-			throw new StackOverflowError();
-		}
-		list[size++] = newValue;
-		return newValue;
-	}
-
-	public int size() {
-		return list.length;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/NullMemento.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/NullMemento.java
deleted file mode 100644
index bc47024..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/NullMemento.java
+++ /dev/null
@@ -1,37 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.NonContentBasedEncodingRules;
-
-
-
-/**
- * This class can be used in place of an EncodingMemento (its super class),
- * when there is not in fact ANY encoding information. For example, when a
- * structuredDocument is created directly from a String
- */
-public class NullMemento extends EncodingMemento {
-	/**
-	 *  
-	 */
-	public NullMemento() {
-		super();
-		String defaultCharset = NonContentBasedEncodingRules.useDefaultNameRules(null);
-		setJavaCharsetName(defaultCharset);
-		setAppropriateDefault(defaultCharset);
-		setDetectedCharsetName(null);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLDeclDetector.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLDeclDetector.java
deleted file mode 100644
index 5843f61..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLDeclDetector.java
+++ /dev/null
@@ -1,156 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Reader;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-
-public class XMLDeclDetector {
-	private static final int MAX_BUF_SIZE = 1024 * 2;
-	private static final int MAX_MARK_SIZE = 1024 * 2;
-	protected boolean fHeaderParsed;
-	private boolean fIsXML;
-	protected Reader fReader;
-	//private boolean DEBUG = false;
-	private XMLHeadTokenizer fTokenizer;
-
-	private boolean canHandleAsUnicodeStream(String tokenType) {
-		boolean canHandleAsUnicodeStream = false;
-		if (tokenType == EncodingParserConstants.UTF83ByteBOM) {
-			canHandleAsUnicodeStream = true;
-			//fUnicode = "UTF-8"; //$NON-NLS-1$
-		} else if (tokenType == EncodingParserConstants.UTF16BE) {
-			canHandleAsUnicodeStream = true;
-			//fUnicode = "UTF-16BE"; //$NON-NLS-1$
-		} else if (tokenType == EncodingParserConstants.UTF16LE) {
-			canHandleAsUnicodeStream = true;
-			//fUnicode = "UTF-16"; //$NON-NLS-1$
-		}
-		return canHandleAsUnicodeStream;
-	}
-
-	final private void ensureInputSet() {
-		if (fReader == null) {
-			throw new IllegalStateException("input must be set before use"); //$NON-NLS-1$
-		}
-	}
-
-	//private String fUnicode;
-
-	/**
-	 * @return Returns the tokenizer.
-	 */
-	private XMLHeadTokenizer getTokenizer() {
-		if (fTokenizer == null) {
-			fTokenizer = new XMLHeadTokenizer();
-		}
-		return fTokenizer;
-	}
-
-	/**
-	 * @return Returns the isXML.
-	 */
-	public boolean isXML() throws IOException {
-		ensureInputSet();
-		if (!fHeaderParsed) {
-			parseInput();
-		}
-		return fIsXML;
-	}
-
-	private void parseInput() throws IOException {
-		XMLHeadTokenizer tokenizer = getTokenizer();
-		tokenizer.reset(fReader);
-		HeadParserToken token = null;
-		String tokenType = null;
-		do {
-			token = tokenizer.getNextToken();
-			tokenType = token.getType();
-			if (canHandleAsUnicodeStream(tokenType)) {
-				fReader.reset();
-				// this is (obviously) not always true.
-				// TODO: need to fix so we "remember" original iFile or
-				// inputstream, and
-				// create appropriate InputStreamReader.
-				// I'm not sure what to do for the set(reader) case ... if its
-				// even relevent.
-				// plus, ensure against infinite loops!
-				fIsXML = true;
-				//fReader = new InputStreamReader(fReader, fUnicode);
-				// parseInput();
-			} else {
-				if (tokenType == XMLHeadTokenizerConstants.XMLDelEncoding) {
-					fIsXML = true;
-				}
-			}
-		} while (tokenizer.hasMoreTokens());
-
-	}
-
-	private void resetAll() {
-		fReader = null;
-		fHeaderParsed = false;
-		fIsXML = false;
-		//fUnicode = null;
-
-	}
-
-	public void set(IFile iFile) throws CoreException {
-		resetAll();
-		InputStream inputStream = iFile.getContents(true);
-		InputStream resettableStream = new BufferedInputStream(inputStream, MAX_BUF_SIZE);
-		resettableStream.mark(MAX_MARK_SIZE);
-		set(resettableStream);
-	}
-
-	public void set(InputStream inputStream) {
-		resetAll();
-		fReader = new ByteReader(inputStream);
-		try {
-			fReader.mark(MAX_MARK_SIZE);
-		} catch (IOException e) {
-			// impossible, since we know ByteReader supports marking
-			throw new Error(e);
-		}
-	}
-
-	/**
-	 * Note: this is not part of interface to help avoid confusion ... it
-	 * expected this Reader is a well formed character reader ... that is, its
-	 * all ready been determined to not be a unicode marked input stream. And,
-	 * its assumed to be in the correct position, at position zero, ready to
-	 * read first character.
-	 */
-	public void set(Reader reader) {
-		resetAll();
-		fReader = reader;
-		if (!fReader.markSupported()) {
-			fReader = new BufferedReader(fReader);
-		}
-
-		try {
-			fReader.mark(MAX_MARK_SIZE);
-		} catch (IOException e) {
-			// impossble, since we just checked if markable
-			throw new Error(e);
-		}
-
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLHeadTokenizer.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLHeadTokenizer.java
deleted file mode 100644
index b42e3d8..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLHeadTokenizer.java
+++ /dev/null
@@ -1,1223 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-/* The following code was generated by JFlex 1.2.2 on 4/6/04 11:13 PM */
-
-/*nlsXXX*/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-import java.io.IOException;
-import java.io.Reader;
-
-
-
-
-/**
- * This class is a scanner generated by <a
- * href="http://www.informatik.tu-muenchen.de/~kleing/jflex/">JFlex </a> 1.2.2
- * on 4/6/04 11:13 PM from the specification file
- * <tt>file:/D:/DevTimeSupport/HeadParsers/XMLHeadTokenizer/XMLHeadTokenizer.jflex</tt>
- */
-public class XMLHeadTokenizer {
-
-	/** this character denotes the end of file */
-	final public static int YYEOF = -1;
-
-	/** lexical states */
-	final public static int YYINITIAL = 0;
-	final public static int UnDelimitedString = 10;
-	final public static int DQ_STRING = 6;
-	final public static int SQ_STRING = 8;
-	final public static int ST_XMLDecl = 2;
-	final public static int QuotedAttributeValue = 4;
-
-	/**
-	 * YY_LEXSTATE[l] is the state in the DFA for the lexical state l
-	 * YY_LEXSTATE[l+1] is the state in the DFA for the lexical state l at the
-	 * beginning of a line l is of the form l = 2*k, k a non negative integer
-	 */
-	private final static int YY_LEXSTATE[] = {0, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6};
-
-	/**
-	 * Translates characters to character classes
-	 */
-	final private static String yycmap_packed = "\11\0\1\6\1\7\2\0\1\11\22\0\1\6\1\0\1\27\2\0" + "\1\31\1\0\1\30\24\0\1\12\1\10\1\26\1\13\3\0\1\21" + "\1\23\1\17\1\0\1\25\1\0\1\24\2\0\1\16\1\15\1\20" + "\1\22\10\0\1\14\12\0\1\21\1\23\1\17\1\0\1\25\1\0" + "\1\24\2\0\1\16\1\15\1\20\1\22\10\0\1\14\102\0\1\4" + "\3\0\1\5\17\0\1\3\16\0\1\1\20\0\1\3\16\0\1\1" + "\1\2\170\0\1\2\ufe87\0"; //$NON-NLS-2$//$NON-NLS-3$
-
-	/**
-	 * Translates characters to character classes
-	 */
-	final private static char[] yycmap = yy_unpack_cmap(yycmap_packed);
-
-
-	/* error codes */
-	final private static int YY_UNKNOWN_ERROR = 0;
-	final private static int YY_ILLEGAL_STATE = 1;
-	final private static int YY_NO_MATCH = 2;
-	final private static int YY_PUSHBACK_2BIG = 3;
-
-	/* error messages for the codes above */
-	final private static String YY_ERROR_MSG[] = {"Unkown internal scanner error", "Internal error: unknown state", "Error: could not match input", "Error: pushback value was too large"};
-
-	/** the input device */
-	private java.io.Reader yy_reader;
-
-	/** the current state of the DFA */
-	private int yy_state;
-
-	/** the current lexical state */
-	private int yy_lexical_state = YYINITIAL;
-
-	/**
-	 * this buffer contains the current text to be matched and is the source
-	 * of the yytext() string
-	 */
-	private char yy_buffer[] = new char[16384];
-
-	/** the textposition at the last accepting state */
-	private int yy_markedPos;
-
-	/** the textposition at the last state to be included in yytext */
-	private int yy_pushbackPos;
-
-	/** the current text position in the buffer */
-	private int yy_currentPos;
-
-	/** startRead marks the beginning of the yytext() string in the buffer */
-	private int yy_startRead;
-
-	/**
-	 * endRead marks the last character in the buffer, that has been read from
-	 * input
-	 */
-	private int yy_endRead;
-
-	/** number of newlines encountered up to the start of the matched text */
-	// future_TODO: remove from skeleton
-	// private int yyline;
-	/** the number of characters up to the start of the matched text */
-	private int yychar;
-
-	/**
-	 * the number of characters from the last newline up to the start of the
-	 * matched text
-	 */
-	// future_TODO: remove from skeleton
-	//private int yycolumn;
-	/**
-	 * yy_atBOL == true <=>the scanner is currently at the beginning of a line
-	 */
-	private boolean yy_atBOL;
-
-	/** yy_atEOF == true <=>the scanner has returned a value for EOF */
-	private boolean yy_atEOF;
-
-	/** denotes if the user-EOF-code has already been executed */
-	private boolean yy_eof_done;
-
-	/* user code: */
-
-
-	private boolean hasMore = true;
-	private final static int MAX_TO_SCAN = 1000;
-	StringBuffer string = new StringBuffer();
-	// state stack for easier state handling
-	private IntStack fStateStack = new IntStack();
-	private String valueText = null;
-
-
-	public XMLHeadTokenizer() {
-		super();
-	}
-
-	public void reset(Reader in) {
-		/* the input device */
-		yy_reader = in;
-
-		/* the current state of the DFA */
-		yy_state = 0;
-
-		/* the current lexical state */
-		yy_lexical_state = YYINITIAL;
-
-		/*
-		 * this buffer contains the current text to be matched and is the
-		 * source of the yytext() string
-		 */
-		java.util.Arrays.fill(yy_buffer, (char) 0);
-
-		/* the textposition at the last accepting state */
-		yy_markedPos = 0;
-
-		/* the textposition at the last state to be included in yytext */
-		yy_pushbackPos = 0;
-
-		/* the current text position in the buffer */
-		yy_currentPos = 0;
-
-		/* startRead marks the beginning of the yytext() string in the buffer */
-		yy_startRead = 0;
-
-		/**
-		 * endRead marks the last character in the buffer, that has been read
-		 * from input
-		 */
-		yy_endRead = 0;
-
-		/* number of newlines encountered up to the start of the matched text */
-		// future_TODO: remove from skeleton
-		//yyline = 0;
-		/* the number of characters up to the start of the matched text */
-		yychar = 0;
-
-		/**
-		 * the number of characters from the last newline up to the start of
-		 * the matched text
-		 */
-		// future_TODO: remove from skeleton
-		//yycolumn = 0;
-		/**
-		 * yy_atBOL == true <=>the scanner is currently at the beginning of a
-		 * line
-		 */
-		yy_atBOL = false;
-
-		/* yy_atEOF == true <=> the scanner has returned a value for EOF */
-		yy_atEOF = false;
-
-		/* denotes if the user-EOF-code has already been executed */
-		yy_eof_done = false;
-
-
-		fStateStack.clear();
-
-		hasMore = true;
-
-		// its a little wasteful to "throw away" first char array generated
-		// by class init (via auto generated code), but we really do want
-		// a small buffer for our head parsers.
-		if (yy_buffer.length != MAX_TO_SCAN) {
-			yy_buffer = new char[MAX_TO_SCAN];
-		}
-
-
-	}
-
-
-	public final HeadParserToken getNextToken() throws IOException {
-		String context = null;
-		context = primGetNextToken();
-		HeadParserToken result = null;
-		if (valueText != null) {
-			result = createToken(context, yychar, valueText);
-			valueText = null;
-		} else {
-			result = createToken(context, yychar, yytext());
-		}
-		return result;
-	}
-
-	public final boolean hasMoreTokens() {
-		return hasMore && yychar < MAX_TO_SCAN;
-	}
-
-	private void pushCurrentState() {
-		fStateStack.push(yystate());
-
-	}
-
-	private void popState() {
-		yybegin(fStateStack.pop());
-	}
-
-	private HeadParserToken createToken(String context, int start, String text) {
-		return new HeadParserToken(context, start, text);
-	}
-
-
-
-	/**
-	 * Creates a new scanner There is also a java.io.InputStream version of
-	 * this constructor.
-	 * 
-	 * @param in
-	 *            the java.io.Reader to read input from.
-	 */
-	public XMLHeadTokenizer(java.io.Reader in) {
-		this.yy_reader = in;
-	}
-
-	/**
-	 * Creates a new scanner. There is also java.io.Reader version of this
-	 * constructor.
-	 * 
-	 * @param in
-	 *            the java.io.Inputstream to read input from.
-	 */
-	public XMLHeadTokenizer(java.io.InputStream in) {
-		this(new java.io.InputStreamReader(in));
-	}
-
-	/**
-	 * Unpacks the compressed character translation table.
-	 * 
-	 * @param packed
-	 *            the packed character translation table
-	 * @return the unpacked character translation table
-	 */
-	private static char[] yy_unpack_cmap(String packed) {
-		char[] map = new char[0x10000];
-		int i = 0; /* index in packed string */
-		int j = 0; /* index in unpacked array */
-		while (i < 128) {
-			int count = packed.charAt(i++);
-			char value = packed.charAt(i++);
-			do
-				map[j++] = value;
-			while (--count > 0);
-		}
-		return map;
-	}
-
-
-	/**
-	 * Gets the next input character.
-	 * 
-	 * @return the next character of the input stream, EOF if the end of the
-	 *         stream is reached.
-	 * @exception IOException
-	 *                if any I/O-Error occurs
-	 */
-	private int yy_advance() throws java.io.IOException {
-
-		/* standard case */
-		if (yy_currentPos < yy_endRead)
-			return yy_buffer[yy_currentPos++];
-
-		/* if the eof is reached, we don't need to work hard */
-		if (yy_atEOF)
-			return YYEOF;
-
-		/* otherwise: need to refill the buffer */
-
-		/* first: make room (if you can) */
-		if (yy_startRead > 0) {
-			System.arraycopy(yy_buffer, yy_startRead, yy_buffer, 0, yy_endRead - yy_startRead);
-
-			/* translate stored positions */
-			yy_endRead -= yy_startRead;
-			yy_currentPos -= yy_startRead;
-			yy_markedPos -= yy_startRead;
-			yy_pushbackPos -= yy_startRead;
-			yy_startRead = 0;
-		}
-
-		/* is the buffer big enough? */
-		if (yy_currentPos >= yy_buffer.length) {
-			/* if not: blow it up */
-			char newBuffer[] = new char[yy_currentPos * 2];
-			System.arraycopy(yy_buffer, 0, newBuffer, 0, yy_buffer.length);
-			yy_buffer = newBuffer;
-		}
-
-		/* finally: fill the buffer with new input */
-		int numRead = yy_reader.read(yy_buffer, yy_endRead, yy_buffer.length - yy_endRead);
-
-		if (numRead == -1)
-			return YYEOF;
-
-		yy_endRead += numRead;
-
-		return yy_buffer[yy_currentPos++];
-	}
-
-
-	/**
-	 * Closes the input stream.
-	 */
-	final public void yyclose() throws java.io.IOException {
-		yy_atEOF = true; /* indicate end of file */
-		yy_endRead = yy_startRead; /* invalidate buffer */
-		yy_reader.close();
-	}
-
-
-	/**
-	 * Returns the current lexical state.
-	 */
-	final public int yystate() {
-		return yy_lexical_state;
-	}
-
-	/**
-	 * Enters a new lexical state
-	 * 
-	 * @param newState
-	 *            the new lexical state
-	 */
-	final public void yybegin(int newState) {
-		yy_lexical_state = newState;
-	}
-
-
-	/**
-	 * Returns the text matched by the current regular expression.
-	 */
-	final public String yytext() {
-		return new String(yy_buffer, yy_startRead, yy_markedPos - yy_startRead);
-	}
-
-	/**
-	 * Returns the length of the matched text region.
-	 */
-	final public int yylength() {
-		return yy_markedPos - yy_startRead;
-	}
-
-
-	/**
-	 * Reports an error that occured while scanning.
-	 * 
-	 * @param errorCode
-	 *            the code of the errormessage to display
-	 */
-	private void yy_ScanError(int errorCode) {
-		try {
-			System.out.println(YY_ERROR_MSG[errorCode]);
-		} catch (ArrayIndexOutOfBoundsException e) {
-			System.out.println(YY_ERROR_MSG[YY_UNKNOWN_ERROR]);
-		}
-
-		// System.exit(1);
-	}
-
-
-	/**
-	 * Pushes the specified amount of characters back into the input stream.
-	 * 
-	 * They will be read again by then next call of the scanning method
-	 * 
-	 * @param number
-	 *            the number of characters to be read again. This number must
-	 *            not be greater than yylength()!
-	 */
-	private void yypushback(int number) {
-		if (number > yylength())
-			yy_ScanError(YY_PUSHBACK_2BIG);
-
-		yy_markedPos -= number;
-	}
-
-
-	/**
-	 * Contains user EOF-code, which will be executed exactly once, when the
-	 * end of file is reached
-	 */
-	private void yy_do_eof() {
-		if (!yy_eof_done) {
-			yy_eof_done = true;
-			hasMore = false;
-
-		}
-	}
-
-
-	/**
-	 * Resumes scanning until the next regular expression is matched, the end
-	 * of input is encountered or an I/O-Error occurs.
-	 * 
-	 * @return the next token
-	 * @exception IOException
-	 *                if any I/O-Error occurs
-	 */
-	public String primGetNextToken() throws java.io.IOException {
-		int yy_input;
-		int yy_action;
-
-
-		while (true) {
-
-			yychar += yylength();
-
-			yy_atBOL = yy_markedPos <= 0 || yy_buffer[yy_markedPos - 1] == '\n';
-			if (!yy_atBOL && yy_buffer[yy_markedPos - 1] == '\r') {
-				yy_atBOL = yy_advance() != '\n';
-				if (!yy_atEOF)
-					yy_currentPos--;
-			}
-
-			yy_action = -1;
-
-			yy_currentPos = yy_startRead = yy_markedPos;
-
-			if (yy_atBOL)
-				yy_state = YY_LEXSTATE[yy_lexical_state + 1];
-			else
-				yy_state = YY_LEXSTATE[yy_lexical_state];
-
-
-			yy_forAction : {
-				while (true) {
-
-					yy_input = yy_advance();
-
-					if (yy_input == YYEOF)
-						break yy_forAction;
-
-					yy_input = yycmap[yy_input];
-
-					boolean yy_isFinal = false;
-					boolean yy_noLookAhead = false;
-
-					yy_forNext : {
-						switch (yy_state) {
-							case 0 :
-								switch (yy_input) {
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 7;
-										break yy_forNext;
-								}
-
-							case 1 :
-								switch (yy_input) {
-									case 1 :
-										yy_isFinal = true;
-										yy_state = 8;
-										break yy_forNext;
-									case 2 :
-										yy_isFinal = true;
-										yy_state = 9;
-										break yy_forNext;
-									case 3 :
-										yy_isFinal = true;
-										yy_state = 10;
-										break yy_forNext;
-									case 6 :
-									case 7 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 11;
-										break yy_forNext;
-									case 10 :
-										yy_isFinal = true;
-										yy_state = 12;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 7;
-										break yy_forNext;
-								}
-
-							case 2 :
-								switch (yy_input) {
-									case 11 :
-										yy_isFinal = true;
-										yy_state = 13;
-										break yy_forNext;
-									case 15 :
-										yy_isFinal = true;
-										yy_state = 14;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 7;
-										break yy_forNext;
-								}
-
-							case 3 :
-								switch (yy_input) {
-									case 6 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 16;
-										break yy_forNext;
-									case 7 :
-										yy_isFinal = true;
-										yy_state = 17;
-										break yy_forNext;
-									case 23 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 18;
-										break yy_forNext;
-									case 24 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 19;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 15;
-										break yy_forNext;
-								}
-
-							case 4 :
-								switch (yy_input) {
-									case 7 :
-									case 9 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 21;
-										break yy_forNext;
-									case 11 :
-										yy_isFinal = true;
-										yy_state = 22;
-										break yy_forNext;
-									case 23 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 23;
-										break yy_forNext;
-									case 24 :
-										yy_isFinal = true;
-										yy_state = 24;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 20;
-										break yy_forNext;
-								}
-
-							case 5 :
-								switch (yy_input) {
-									case 7 :
-									case 9 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 21;
-										break yy_forNext;
-									case 24 :
-										yy_isFinal = true;
-										yy_state = 25;
-										break yy_forNext;
-									case 25 :
-										yy_isFinal = true;
-										yy_state = 26;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 20;
-										break yy_forNext;
-								}
-
-							case 6 :
-								switch (yy_input) {
-									case 11 :
-										yy_isFinal = true;
-										yy_state = 26;
-										break yy_forNext;
-									case 6 :
-									case 7 :
-									case 9 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 27;
-										break yy_forNext;
-									case 23 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 28;
-										break yy_forNext;
-									case 24 :
-										yy_isFinal = true;
-										yy_state = 29;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 20;
-										break yy_forNext;
-								}
-
-							case 8 :
-								switch (yy_input) {
-									case 2 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 30;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 9 :
-								switch (yy_input) {
-									case 1 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 31;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 10 :
-								switch (yy_input) {
-									case 4 :
-										yy_state = 32;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 11 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-										yy_state = 33;
-										break yy_forNext;
-									case 10 :
-										yy_state = 34;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 12 :
-								switch (yy_input) {
-									case 11 :
-										yy_state = 35;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 13 :
-								switch (yy_input) {
-									case 22 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 36;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 14 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 37;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 16 :
-								switch (yy_input) {
-									case 6 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 16;
-										break yy_forNext;
-									case 7 :
-										yy_state = 38;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 15;
-										break yy_forNext;
-								}
-
-							case 17 :
-								switch (yy_input) {
-									case 6 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 16;
-										break yy_forNext;
-									case 7 :
-										yy_state = 38;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 15;
-										break yy_forNext;
-								}
-
-							case 22 :
-								switch (yy_input) {
-									case 22 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 39;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 24 :
-								switch (yy_input) {
-									case 10 :
-										yy_state = 40;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 25 :
-								switch (yy_input) {
-									case 10 :
-										yy_state = 40;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 26 :
-								switch (yy_input) {
-									case 22 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 41;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 29 :
-								switch (yy_input) {
-									case 10 :
-										yy_state = 40;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 32 :
-								switch (yy_input) {
-									case 5 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 42;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 33 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-										yy_state = 33;
-										break yy_forNext;
-									case 10 :
-										yy_state = 34;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 34 :
-								switch (yy_input) {
-									case 11 :
-										yy_state = 35;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 35 :
-								switch (yy_input) {
-									case 12 :
-										yy_state = 43;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 37 :
-								switch (yy_input) {
-									case 17 :
-										yy_state = 44;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 38 :
-								switch (yy_input) {
-									case 6 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 16;
-										break yy_forNext;
-									case 7 :
-										yy_state = 38;
-										break yy_forNext;
-									default :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 15;
-										break yy_forNext;
-								}
-
-							case 40 :
-								switch (yy_input) {
-									case 24 :
-										yy_isFinal = true;
-										yy_noLookAhead = true;
-										yy_state = 21;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 43 :
-								switch (yy_input) {
-									case 13 :
-										yy_state = 45;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 44 :
-								switch (yy_input) {
-									case 18 :
-										yy_state = 46;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 45 :
-								switch (yy_input) {
-									case 14 :
-										yy_state = 47;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 46 :
-								switch (yy_input) {
-									case 19 :
-										yy_state = 48;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 47 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 49;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 48 :
-								switch (yy_input) {
-									case 20 :
-										yy_state = 50;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 49 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 49;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 50 :
-								switch (yy_input) {
-									case 16 :
-										yy_state = 51;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 51 :
-								switch (yy_input) {
-									case 21 :
-										yy_state = 52;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 52 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-										yy_state = 52;
-										break yy_forNext;
-									case 8 :
-										yy_isFinal = true;
-										yy_state = 53;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							case 53 :
-								switch (yy_input) {
-									case 6 :
-									case 7 :
-									case 9 :
-										yy_isFinal = true;
-										yy_state = 53;
-										break yy_forNext;
-									default :
-										break yy_forAction;
-								}
-
-							default :
-								yy_ScanError(YY_ILLEGAL_STATE);
-								break;
-						}
-					}
-
-					if (yy_isFinal) {
-						yy_action = yy_state;
-						yy_markedPos = yy_currentPos;
-						if (yy_noLookAhead)
-							break yy_forAction;
-					}
-
-				}
-			}
-
-
-			switch (yy_action) {
-
-				case 25 : {
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.StringValue;
-				}
-				case 55 :
-					break;
-				case 21 : {
-					yypushback(1);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTerminatedStringValue;
-				}
-				case 56 :
-					break;
-				case 15 :
-				case 16 : {
-					yypushback(1);
-					yybegin(UnDelimitedString);
-					string.setLength(0);
-				}
-				case 57 :
-					break;
-				case 28 :
-				case 29 : {
-					yypushback(1);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue;
-				}
-				case 58 :
-					break;
-				case 39 : {
-					yypushback(2);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTerminatedStringValue;
-				}
-				case 59 :
-					break;
-				case 41 : {
-					yypushback(2);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.InvalidTerminatedStringValue;
-				}
-				case 60 :
-					break;
-				case 7 :
-				case 8 :
-				case 9 :
-				case 10 :
-				case 11 :
-				case 12 :
-				case 13 :
-				case 14 :
-				case 17 : {
-					if (yychar > MAX_TO_SCAN) {
-						hasMore = false;
-						return EncodingParserConstants.MAX_CHARS_REACHED;
-					}
-				}
-				case 61 :
-					break;
-				case 30 : {
-					if (yychar == 0) {
-						hasMore = false;
-						return EncodingParserConstants.UTF16BE;
-					}
-				}
-				case 62 :
-					break;
-				case 31 : {
-					if (yychar == 0) {
-						hasMore = false;
-						return EncodingParserConstants.UTF16LE;
-					}
-				}
-				case 63 :
-					break;
-				case 42 : {
-					if (yychar == 0) {
-						hasMore = false;
-						return EncodingParserConstants.UTF83ByteBOM;
-					}
-				}
-				case 64 :
-					break;
-				case 49 : {
-					if (yychar == 0) {
-						yybegin(ST_XMLDecl);
-						return XMLHeadTokenizerConstants.XMLDeclStart;
-					}
-				}
-				case 65 :
-					break;
-				case 36 : {
-					yybegin(YYINITIAL);
-					hasMore = false;
-					return XMLHeadTokenizerConstants.XMLDeclEnd;
-				}
-				case 66 :
-					break;
-				case 53 : {
-					pushCurrentState();
-					yybegin(QuotedAttributeValue);
-					return XMLHeadTokenizerConstants.XMLDelEncoding;
-				}
-				case 67 :
-					break;
-				case 23 : {
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.StringValue;
-				}
-				case 68 :
-					break;
-				case 20 :
-				case 22 :
-				case 24 :
-				case 26 : {
-					string.append(yytext());
-				}
-				case 69 :
-					break;
-				case 19 : {
-					yybegin(SQ_STRING);
-					string.setLength(0);
-				}
-				case 70 :
-					break;
-				case 18 : {
-					yybegin(DQ_STRING);
-					string.setLength(0);
-				}
-				case 71 :
-					break;
-				case 27 : {
-					yypushback(1);
-					popState();
-					valueText = string.toString();
-					return EncodingParserConstants.UnDelimitedStringValue;
-				}
-				case 72 :
-					break;
-				default :
-					if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
-						yy_atEOF = true;
-						yy_do_eof();
-						{
-							hasMore = false;
-							return EncodingParserConstants.EOF;
-						}
-					} else {
-						yy_ScanError(YY_NO_MATCH);
-					}
-			}
-		}
-	}
-
-	/**
-	 * Runs the scanner on input files.
-	 * 
-	 * This main method is the debugging routine for the scanner. It prints
-	 * each returned token to System.out until the end of file is reached, or
-	 * an error occured.
-	 * 
-	 * @param argv
-	 *            the command line, contains the filenames to run the scanner
-	 *            on.
-	 */
-	public static void main(String argv[]) {
-		for (int i = 0; i < argv.length; i++) {
-			XMLHeadTokenizer scanner = null;
-			try {
-				scanner = new XMLHeadTokenizer(new java.io.FileReader(argv[i]));
-			} catch (java.io.FileNotFoundException e) {
-				System.out.println("File not found : \"" + argv[i] + "\"");
-				System.exit(1);
-			}
-			//			catch (java.io.IOException e) {
-			//				System.out.println("Error opening file \"" + argv[i] + "\"");
-			//				System.exit(1);
-			//			}
-			catch (ArrayIndexOutOfBoundsException e) {
-				System.out.println("Usage : java XMLHeadTokenizer <inputfile>");
-				System.exit(1);
-			}
-
-			try {
-				do {
-					System.out.println(scanner.primGetNextToken());
-				} while (!scanner.yy_atEOF);
-
-			} catch (java.io.IOException e) {
-				System.out.println("An I/O error occured while scanning :");
-				System.out.println(e);
-				System.exit(1);
-			} catch (Exception e) {
-				e.printStackTrace();
-				System.exit(1);
-			}
-		}
-	}
-
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLHeadTokenizerConstants.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLHeadTokenizerConstants.java
deleted file mode 100644
index ebca236..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLHeadTokenizerConstants.java
+++ /dev/null
@@ -1,24 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-
-;
-
-public interface XMLHeadTokenizerConstants extends EncodingParserConstants {
-
-	final String XMLDeclEnd = "XMLDeclEnd"; //$NON-NLS-1$
-	final String XMLDeclStart = "XMLDeclStart"; //$NON-NLS-1$
-	final String XMLDelEncoding = "XMLDelEncoding"; //$NON-NLS-1$
-	//	final String XMLDeclVersion = "XMLDeclVersion";
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLResourceEncodingDetector.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLResourceEncodingDetector.java
deleted file mode 100644
index c010026..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/contenttype/XMLResourceEncodingDetector.java
+++ /dev/null
@@ -1,99 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.contenttype;
-
-import java.io.IOException;
-
-import org.eclipse.wst.sse.core.internal.encoding.EncodingMemento;
-import org.eclipse.wst.sse.core.internal.encoding.IResourceCharsetDetector;
-
-
-public class XMLResourceEncodingDetector extends AbstractResourceEncodingDetector implements IResourceCharsetDetector {
-	private XMLHeadTokenizer fTokenizer;
-
-	private boolean canHandleAsUnicodeStream(String tokenType) {
-		boolean canHandleAsUnicodeStream = false;
-		if (tokenType == EncodingParserConstants.UTF83ByteBOM) {
-			canHandleAsUnicodeStream = true;
-			String enc = "UTF-8"; //$NON-NLS-1$
-			createEncodingMemento(enc, EncodingMemento.DETECTED_STANDARD_UNICODE_BYTES);
-			fEncodingMemento.setUTF83ByteBOMUsed(true);
-		}
-
-		else if (tokenType == EncodingParserConstants.UTF16BE) {
-			canHandleAsUnicodeStream = true;
-			String enc = "UTF-16BE"; //$NON-NLS-1$
-			createEncodingMemento(enc, EncodingMemento.DETECTED_STANDARD_UNICODE_BYTES);
-		} else if (tokenType == EncodingParserConstants.UTF16LE) {
-			canHandleAsUnicodeStream = true;
-			String enc = "UTF-16"; //$NON-NLS-1$
-			createEncodingMemento(enc, EncodingMemento.DETECTED_STANDARD_UNICODE_BYTES);
-		}
-		return canHandleAsUnicodeStream;
-	}
-
-	public String getSpecDefaultEncoding() {
-		// by default, UTF-8 as per XML spec
-		final String enc = "UTF-8"; //$NON-NLS-1$
-		return enc;
-	}
-
-	/**
-	 * @return Returns the tokenizer.
-	 */
-	private XMLHeadTokenizer getTokenizer() {
-		// TODO: need to work on 'reset' in tokenizer, so new instance isn't
-		// always needed
-		//if (fTokenizer == null) {
-		fTokenizer = new XMLHeadTokenizer();
-		//}
-		return fTokenizer;
-	}
-
-	private boolean isLegalString(String valueTokenType) {
-		if (valueTokenType == null)
-			return false;
-		else
-			return valueTokenType.equals(EncodingParserConstants.StringValue) || valueTokenType.equals(EncodingParserConstants.UnDelimitedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTerminatedStringValue) || valueTokenType.equals(EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue);
-	}
-
-	protected void parseInput() throws IOException {
-		XMLHeadTokenizer tokenizer = getTokenizer();
-		tokenizer.reset(fReader);
-		HeadParserToken token = null;
-		String tokenType = null;
-		do {
-			token = tokenizer.getNextToken();
-			tokenType = token.getType();
-			if (canHandleAsUnicodeStream(tokenType)) {
-				// side effect of canHandle is to create appropriate memento
-			} else {
-				if (tokenType == XMLHeadTokenizerConstants.XMLDelEncoding) {
-					if (tokenizer.hasMoreTokens()) {
-						token = tokenizer.getNextToken();
-						tokenType = token.getType();
-						if (isLegalString(tokenType)) {
-							String enc = token.getText();
-							if (enc != null && enc.length() > 0) {
-								createEncodingMemento(enc, EncodingMemento.FOUND_ENCODING_IN_CONTENT);
-							}
-
-						}
-					}
-				}
-			}
-		} while (tokenizer.hasMoreTokens());
-
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/AttrImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/AttrImpl.java
deleted file mode 100644
index 7bb9c52..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/AttrImpl.java
+++ /dev/null
@@ -1,769 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLCharEntity;
-import org.eclipse.wst.xml.core.document.XMLNamespace;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- * AttrImpl class
- */
-public class AttrImpl extends NodeImpl implements XMLAttr {
-	private ITextRegion equalRegion = null;
-
-	private String name = null;
-	private ITextRegion nameRegion = null;
-	private String namespaceURI = null;
-	private ElementImpl ownerElement = null;
-	private ITextRegion valueRegion = null;
-	private String valueSource = null;
-
-	/**
-	 * AttrImpl constructor
-	 */
-	protected AttrImpl() {
-		super();
-	}
-
-	/**
-	 * AttrImpl constructor
-	 * 
-	 * @param that
-	 *            AttrImpl
-	 */
-	protected AttrImpl(AttrImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.name = that.name;
-			this.valueSource = that.getValueSource();
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node cloneNode(boolean deep) {
-		AttrImpl cloned = new AttrImpl(this);
-		return cloned;
-	}
-
-	/**
-	 */
-	protected CMAttributeDeclaration getDeclaration() {
-		ElementImpl element = (ElementImpl) getOwnerElement();
-		if (element == null)
-			return null;
-		CMElementDeclaration elementDecl = element.getDeclaration();
-		if (elementDecl == null)
-			return null;
-		CMNamedNodeMap attributes = elementDecl.getAttributes();
-		if (attributes == null)
-			return null;
-		return (CMAttributeDeclaration) attributes.getNamedItem(getName());
-	}
-
-	/**
-	 * getEndOffset method
-	 * 
-	 * @return int
-	 */
-	public int getEndOffset() {
-		if (this.ownerElement == null)
-			return 0;
-		int offset = this.ownerElement.getStartOffset();
-		if (this.valueRegion != null) {
-			return (offset + this.valueRegion.getEnd());
-		}
-		if (this.equalRegion != null) {
-			return (offset + this.equalRegion.getEnd());
-		}
-		if (this.nameRegion != null) {
-			return (offset + this.nameRegion.getEnd());
-		}
-		return 0;
-	}
-
-	/**
-	 * getEqualRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	public ITextRegion getEqualRegion() {
-		return this.equalRegion;
-	}
-
-	/**
-	 */
-	public String getLocalName() {
-		if (this.name == null)
-			return null;
-		int index = this.name.indexOf(':');
-		if (index < 0)
-			return this.name;
-		return this.name.substring(index + 1);
-	}
-
-	/**
-	 * getName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getName() {
-		if (this.name == null)
-			return new String();
-		return this.name;
-	}
-
-	/**
-	 * getNameRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	public ITextRegion getNameRegion() {
-		return this.nameRegion;
-	}
-
-	public int getNameRegionEndOffset() {
-		if (this.ownerElement == null)
-			return 0;
-		// assuming the firstStructuredDocumentRegion is the one that contains
-		// attributes
-		IStructuredDocumentRegion flatNode = this.ownerElement.getFirstStructuredDocumentRegion();
-		if (flatNode == null)
-			return 0;
-		return flatNode.getEndOffset(this.nameRegion);
-	}
-
-	public int getNameRegionStartOffset() {
-		if (this.ownerElement == null)
-			return 0;
-		// assuming the firstStructuredDocumentRegion is the one that contains
-		// attributes
-		IStructuredDocumentRegion flatNode = this.ownerElement.getFirstStructuredDocumentRegion();
-		if (flatNode == null)
-			return 0;
-		return flatNode.getStartOffset(this.nameRegion);
-	}
-
-	public String getNameRegionText() {
-		if (this.ownerElement == null)
-			return null;
-		// assuming the firstStructuredDocumentRegion is the one that contains
-		// attributes
-		IStructuredDocumentRegion flatNode = this.ownerElement.getFirstStructuredDocumentRegion();
-		if (flatNode == null)
-			return null;
-		return flatNode.getText(this.nameRegion);
-	}
-
-	public int getNameRegionTextEndOffset() {
-		if (this.ownerElement == null)
-			return 0;
-		// assuming the firstStructuredDocumentRegion is the one that contains
-		// attributes
-		IStructuredDocumentRegion flatNode = this.ownerElement.getFirstStructuredDocumentRegion();
-		if (flatNode == null)
-			return 0;
-		return flatNode.getTextEndOffset(this.nameRegion);
-	}
-
-	/**
-	 */
-	public String getNamespaceURI() {
-		String nsAttrName = null;
-		String prefix = getPrefix();
-		if (prefix != null && prefix.length() > 0) {
-			if (prefix.equals(XMLNamespace.XMLNS)) {
-				// fixed URI
-				return XMLNamespace.XMLNS_URI;
-			}
-			nsAttrName = XMLNamespace.XMLNS_PREFIX + prefix;
-		}
-		else {
-			String name = getName();
-			if (name != null && name.equals(XMLNamespace.XMLNS)) {
-				// fixed URI
-				return XMLNamespace.XMLNS_URI;
-			}
-			// does not inherit namespace from owner element
-			// if (this.ownerElement != null) return
-			// this.ownerElement.getNamespaceURI();
-			return this.namespaceURI;
-		}
-
-		for (Node node = this.ownerElement; node != null; node = node.getParentNode()) {
-			if (node.getNodeType() != ELEMENT_NODE)
-				break;
-			Element element = (Element) node;
-			Attr attr = element.getAttributeNode(nsAttrName);
-			if (attr != null)
-				return attr.getValue();
-		}
-
-		return this.namespaceURI;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return getName();
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return ATTRIBUTE_NODE;
-	}
-
-	/**
-	 * getNodeValue method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeValue() {
-		return getValue();
-	}
-
-	/**
-	 * getOwnerElement method
-	 * 
-	 * @return org.w3c.dom.Element
-	 */
-	public Element getOwnerElement() {
-		return this.ownerElement;
-	}
-
-	/**
-	 */
-	public String getPrefix() {
-		if (this.name == null)
-			return null;
-		int index = this.name.indexOf(':');
-		if (index <= 0)
-			return null;
-		// exclude JSP tag in name
-		if (this.name.charAt(0) == '<')
-			return null;
-		return this.name.substring(0, index);
-	}
-
-	/**
-	 * getSpecified method
-	 * 
-	 * @return boolean
-	 */
-	public boolean getSpecified() {
-		return true;
-	}
-
-	/**
-	 * getStartOffset method
-	 * 
-	 * @return int
-	 */
-	public int getStartOffset() {
-		if (this.ownerElement == null)
-			return 0;
-		int offset = this.ownerElement.getStartOffset();
-		if (this.nameRegion != null) {
-			return (offset + this.nameRegion.getStart());
-		}
-		if (this.equalRegion != null) {
-			return (offset + this.equalRegion.getStart());
-		}
-		if (this.valueRegion != null) {
-			return (offset + this.valueRegion.getStart());
-		}
-		return 0;
-	}
-
-	/**
-	 * getValue method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getValue() {
-		return getValue(getValueSource());
-	}
-
-	/**
-	 * Returns value for the source
-	 */
-	private String getValue(String source) {
-		if (source == null)
-			return new String();
-		if (source.length() == 0)
-			return source;
-		StringBuffer buffer = null;
-		int offset = 0;
-		int length = source.length();
-		int ref = source.indexOf('&');
-		while (ref >= 0) {
-			int end = source.indexOf(';', ref + 1);
-			if (end > ref + 1) {
-				String name = source.substring(ref + 1, end);
-				String value = getCharValue(name);
-				if (value != null) {
-					if (buffer == null)
-						buffer = new StringBuffer(length);
-					if (ref > offset)
-						buffer.append(source.substring(offset, ref));
-					buffer.append(value);
-					offset = end + 1;
-					ref = end;
-				}
-			}
-			ref = source.indexOf('&', ref + 1);
-		}
-		if (buffer == null)
-			return source;
-		if (length > offset)
-			buffer.append(source.substring(offset));
-		return buffer.toString();
-	}
-
-	/**
-	 * getValueRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	public ITextRegion getValueRegion() {
-		return this.valueRegion;
-	}
-
-	public int getValueRegionStartOffset() {
-		if (this.ownerElement == null)
-			return 0;
-		// assuming the firstStructuredDocumentRegion is the one that contains
-		// attributes
-		IStructuredDocumentRegion flatNode = this.ownerElement.getFirstStructuredDocumentRegion();
-		if (flatNode == null)
-			return 0;
-		return flatNode.getStartOffset(this.valueRegion);
-	}
-
-	public String getValueRegionText() {
-		if (this.ownerElement == null)
-			return null;
-		// assuming the firstStructuredDocumentRegion is the one that contains
-		// attributes
-		IStructuredDocumentRegion flatNode = this.ownerElement.getFirstStructuredDocumentRegion();
-		if (flatNode == null)
-			return null;
-		if (this.valueRegion == null)
-			return null;
-		return flatNode.getText(this.valueRegion);
-	}
-
-	/**
-	 */
-	public String getValueSource() {
-		if (this.valueSource != null)
-			return this.valueSource;
-		// DW: 4/16/2003 due to change in structuredDocument ... we need a
-		// flatnode to
-		// get at region values. For now I'll assume this is always the first
-		// flatnode .. may need to make smarter later (e.g. to search for
-		// the flatnode that this.valueRegion belongs to.
-		// DW: 4/30/2003 For some reason, this method is getting called a lot
-		// Not sure if its a threading problem, or a fundamental error
-		// elsewhere.
-		// It needs more investigation, but in the use cases I've seen,
-		// doesn't
-		// seem to hurt to simply return null in those cases. I saw this null
-		// case,
-		// when tryint go format an XML file.
-		if (this.ownerElement == null)
-			return null;
-		IStructuredDocumentRegion ownerRegion = this.ownerElement.getFirstStructuredDocumentRegion();
-		if (ownerRegion == null)
-			return null;
-		if (this.valueRegion != null)
-			return StructuredDocumentRegionUtil.getAttrValue(ownerRegion, this.valueRegion);
-		return new String();
-	}
-
-	private String getValueSource(ElementImpl ownerElement) {
-		if (this.valueSource != null)
-			return this.valueSource;
-		// DW: 4/16/2003 due to change in structuredDocument ... we need a
-		// flatnode to
-		// get at region values. For now I'll assume this is always the first
-		// flatnode .. may need to make smarter later (e.g. to search for
-		// the flatnode that this.valueRegion belongs to.
-		if (this.valueRegion != null)
-			return StructuredDocumentRegionUtil.getAttrValue(ownerElement.getStructuredDocumentRegion(), this.valueRegion);
-		return new String();
-	}
-
-	/**
-	 */
-	private String getValueSource(String value) {
-		if (value == null)
-			return null;
-		if (value.length() == 0)
-			return value;
-		StringBuffer buffer = null;
-		int offset = 0;
-		int length = value.length();
-		int amp = value.indexOf('&');
-		while (amp >= 0) {
-			if (buffer == null)
-				buffer = new StringBuffer(length + 4);
-			if (amp > offset)
-				buffer.append(value.substring(offset, amp));
-			buffer.append(XMLCharEntity.AMP_REF);
-			offset = amp + 1;
-			amp = value.indexOf('&', offset);
-		}
-		if (buffer == null)
-			return value;
-		if (length > offset)
-			buffer.append(value.substring(offset));
-		return buffer.toString();
-	}
-
-	/**
-	 * Check if Attr has JSP in value
-	 */
-public boolean hasNestedValue() {
-		if (this.valueRegion == null)
-			return false;
-		if (!(this.valueRegion instanceof ITextRegionContainer))
-			return false;
-		ITextRegionList regions = ((ITextRegionContainer) this.valueRegion).getRegions();
-		if (regions == null)
-			return false;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			if (region == null)
-				continue;
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_TAG_OPEN || isNestedLanguageOpening(regionType))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Check if Attr has only name but not equal sign nor value
-	 */
-	public boolean hasNameOnly() {
-		return (this.nameRegion != null && this.equalRegion == null && this.valueRegion == null);
-	}
-
-	/**
-	 */
-	protected final boolean hasPrefix() {
-		if (this.name == null)
-			return false;
-		if (this.name.indexOf(':') <= 0)
-			return false;
-		// exclude JSP tag in name
-		if (this.name.charAt(0) == '<')
-			return false;
-		return true;
-	}
-
-	/**
-	 */
-	protected final boolean ignoreCase() {
-		if (this.ownerElement != null) {
-			if (this.ownerElement.ignoreCase()) {
-				return !hasPrefix();
-			}
-		}
-		else {
-			DocumentImpl document = (DocumentImpl) getOwnerDocument();
-			if (document != null && document.ignoreCase()) {
-				// even in case insensitive document, if having prefix, it's
-				// case sensitive
-				return !hasPrefix();
-			}
-		}
-		return false;
-	}
-
-	/**
-	 */
-	public boolean isGlobalAttr() {
-		if (hasPrefix())
-			return false;
-		if (this.ownerElement == null)
-			return false;
-		return this.ownerElement.isGlobalTag();
-	}
-
-	/**
-	 */
-	public final boolean isXMLAttr() {
-		if (this.ownerElement != null) {
-			if (!this.ownerElement.isXMLTag()) {
-				return hasPrefix();
-			}
-		}
-		else {
-			DocumentImpl document = (DocumentImpl) getOwnerDocument();
-			if (document != null && !document.isXMLType()) {
-				// even in non-XML document, if having prefix, it's XML tag
-				return hasPrefix();
-			}
-		}
-		return true;
-	}
-
-	/**
-	 * matchName method
-	 * 
-	 * @return boolean
-	 * @param name
-	 *            java.lang.String
-	 */
-	protected boolean matchName(String name) {
-		if (name == null)
-			return (this.name == null);
-		if (this.name == null)
-			return false;
-		if (!ignoreCase())
-			return this.name.equals(name);
-		return this.name.equalsIgnoreCase(name);
-	}
-
-	/**
-	 * notifyValueChanged method
-	 */
-	protected void notifyNameChanged() {
-		if (this.ownerElement == null)
-			return;
-		DocumentImpl document = (DocumentImpl) this.ownerElement.getContainerDocument();
-		if (document == null)
-			return;
-		XMLModelImpl model = (XMLModelImpl) document.getModel();
-		if (model == null)
-			return;
-		model.nameChanged(this);
-	}
-
-	/**
-	 * notifyValueChanged method
-	 */
-	protected void notifyValueChanged() {
-		if (this.ownerElement == null)
-			return;
-		DocumentImpl document = (DocumentImpl) this.ownerElement.getContainerDocument();
-		if (document == null)
-			return;
-		XMLModelImpl model = (XMLModelImpl) document.getModel();
-		if (model == null)
-			return;
-		model.valueChanged(this);
-	}
-
-	/**
-	 * removeRegions method
-	 */
-	void removeRegions() {
-		this.nameRegion = null;
-		this.valueRegion = null;
-		this.equalRegion = null;
-	}
-
-	/**
-	 */
-	void resetRegions() {
-		this.valueSource = getValueSource();
-		removeRegions();
-	}
-
-	/**
-	 */
-	void resetRegions(ElementImpl ownerElement) {
-		this.valueSource = getValueSource(ownerElement);
-		removeRegions();
-	}
-
-	/**
-	 * setEqualRegion method
-	 * 
-	 * @param equalRegion
-	 *            com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	void setEqualRegion(ITextRegion equalRegion) {
-		this.equalRegion = equalRegion;
-	}
-
-	/**
-	 * setName method
-	 * 
-	 * @param name
-	 *            java.lang.String
-	 */
-	protected void setName(String name) {
-		String value = null;
-		int startOffset = 0;
-		if (this.ownerElement != null) {
-			value = getValue();
-			startOffset = this.ownerElement.getStartOffset();
-			this.ownerElement.notify(CHANGE, this, value, null, startOffset);
-		}
-		this.name = name;
-		if (this.ownerElement != null) {
-			this.ownerElement.notify(CHANGE, this, null, value, startOffset);
-		}
-	}
-
-	/**
-	 * setNameRegion method
-	 * 
-	 * @param nameRegion
-	 *            com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	void setNameRegion(ITextRegion nameRegion) {
-		this.nameRegion = nameRegion;
-	}
-
-	/**
-	 */
-	protected void setNamespaceURI(String namespaceURI) {
-		this.namespaceURI = namespaceURI;
-	}
-
-	/**
-	 * setNodeValue method
-	 * 
-	 * @param nodeValue
-	 *            java.lang.String
-	 */
-	public void setNodeValue(String nodeValue) throws DOMException {
-		setValue(nodeValue);
-	}
-
-	/**
-	 * setOwnerElement method
-	 * 
-	 * @param ownerElement
-	 *            org.w3c.dom.Element
-	 */
-	protected void setOwnerElement(Element ownerElement) {
-		this.ownerElement = (ElementImpl) ownerElement;
-	}
-
-	/**
-	 */
-	public void setPrefix(String prefix) throws DOMException {
-		if (this.ownerElement != null && !this.ownerElement.isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		int prefixLength = (prefix != null ? prefix.length() : 0);
-		String localName = getLocalName();
-		if (prefixLength == 0) {
-			setName(localName);
-			return;
-		}
-		if (localName == null)
-			localName = new String();
-		int localLength = localName.length();
-		StringBuffer buffer = new StringBuffer(prefixLength + 1 + localLength);
-		buffer.append(prefix);
-		buffer.append(':');
-		buffer.append(localName);
-		setName(buffer.toString());
-
-		notifyNameChanged();
-	}
-
-	/**
-	 * setValue method
-	 * 
-	 * @param value
-	 *            java.lang.String
-	 */
-	public void setValue(String value) {
-		// Remember: as we account for "floaters" in
-		// future, remember that some are created
-		// in the natural process of implementing
-		// DOM apis.
-		// this "self notification" of about/changed,
-		// is added for this case, because it known to
-		// be called from properties pages. Should be a
-		// added to all DOM Modifiying APIs eventually.
-		try {
-			getModel().aboutToChangeModel();
-			setValueSource(getValueSource(value));
-		}
-		finally {
-			getModel().changedModel();
-		}
-	}
-
-	/**
-	 * setValueRegion method
-	 * 
-	 * @param newValueRegion
-	 *            com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	void setValueRegion(ITextRegion valueRegion) {
-		this.valueRegion = valueRegion;
-		if (valueRegion != null)
-			this.valueSource = null;
-	}
-
-	/**
-	 */
-	public void setValueSource(String source) {
-		if (this.ownerElement != null && !this.ownerElement.isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		this.valueSource = source;
-
-		notifyValueChanged();
-	}
-
-	/**
-	 * Subclasses must override
-	 * @param regionType
-	 * @return
-	 */
-	protected boolean isNestedLanguageOpening(String regionType) {
-		boolean result = false;
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CDATASectionImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CDATASectionImpl.java
deleted file mode 100644
index 3954ca2..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CDATASectionImpl.java
+++ /dev/null
@@ -1,140 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.CDATASection;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-
-
-/**
- * CDATASectionImpl class
- */
-public class CDATASectionImpl extends TextImpl implements CDATASection {
-
-	/**
-	 * CDATASectionImpl constructor
-	 */
-	protected CDATASectionImpl() {
-		super();
-	}
-
-	/**
-	 * CDATASectionImpl constructor
-	 * 
-	 * @param that
-	 *            CDATASectionImpl
-	 */
-	protected CDATASectionImpl(CDATASectionImpl that) {
-		super(that);
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		CDATASectionImpl cloned = new CDATASectionImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * getData method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getData() throws DOMException {
-		// instead of super(TextImpl).getData(), call getCharacterData()
-		String data = getCharacterData();
-		if (data == null) {
-			data = getData(getStructuredDocumentRegion());
-			if (data == null)
-				data = new String();
-		}
-		return data;
-	}
-
-	/**
-	 */
-	private String getData(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return null;
-
-		ITextRegion contentRegion = null;
-		StringBuffer buffer = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_CDATA_OPEN || regionType == XMLRegionContext.XML_CDATA_CLOSE) {
-				continue;
-			}
-			if (contentRegion == null) { // first content
-				contentRegion = region;
-			} else { // multiple contents
-				if (buffer == null) {
-					buffer = new StringBuffer(flatNode.getText(contentRegion));
-				}
-				buffer.append(flatNode.getText(region));
-			}
-		}
-
-		if (buffer != null)
-			return buffer.toString();
-		if (contentRegion != null)
-			return flatNode.getText(contentRegion);
-		return null;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return "#cdata-section";//$NON-NLS-1$
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return CDATA_SECTION_NODE;
-	}
-
-	/**
-	 */
-	public boolean isClosed() {
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return true; // will be generated
-		String regionType = StructuredDocumentRegionUtil.getLastRegionType(flatNode);
-		return (regionType == XMLRegionContext.XML_CDATA_CLOSE);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CMNodeUtil.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CMNodeUtil.java
deleted file mode 100644
index b10f6dd..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CMNodeUtil.java
+++ /dev/null
@@ -1,42 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-
-
-/**
- */
-public class CMNodeUtil {
-
-	/**
-	 */
-	public static CMAttributeDeclaration getAttributeDeclaration(Attr attr) {
-		if (attr == null)
-			return null;
-		return ((AttrImpl) attr).getDeclaration();
-	}
-
-	/**
-	 */
-	public static CMElementDeclaration getElementDeclaration(Element element) {
-		if (element == null)
-			return null;
-		return ((ElementImpl) element).getDeclaration();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CharacterDataImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CharacterDataImpl.java
deleted file mode 100644
index 935a7e7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CharacterDataImpl.java
+++ /dev/null
@@ -1,352 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.w3c.dom.CharacterData;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-
-
-/**
- * CharacterDataImpl class
- */
-public abstract class CharacterDataImpl extends NodeImpl implements CharacterData {
-
-	private String data = null;
-
-	/**
-	 * CharacterDataImpl constructor
-	 */
-	protected CharacterDataImpl() {
-		super();
-	}
-
-	/**
-	 * CharacterDataImpl constructor
-	 * 
-	 * @param that
-	 *            CharacterDataImpl
-	 */
-	protected CharacterDataImpl(CharacterDataImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.data = that.getData();
-		}
-	}
-
-	/**
-	 * appendData method
-	 * 
-	 * @param arg
-	 *            java.lang.String
-	 */
-	public void appendData(String arg) throws DOMException {
-		if (arg == null)
-			return;
-
-		String data = getData();
-		if (data == null)
-			data = arg;
-		else
-			data += arg;
-		setData(data);
-	}
-
-	/**
-	 * deleteData method
-	 * 
-	 * @param offset
-	 *            int
-	 * @param count
-	 *            int
-	 */
-	public void deleteData(int offset, int count) throws DOMException {
-		if (count == 0)
-			return;
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		if (count < 0 || offset < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String data = getData();
-		if (data == null) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		int length = data.length();
-		if (offset > length) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		if (offset == 0) {
-			if (count > length) {
-				throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-			}
-			if (count == length)
-				data = new String();
-			else
-				data = data.substring(count);
-		} else {
-			int end = offset + count;
-			if (end > length) {
-				throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-			}
-			if (end == length)
-				data = data.substring(0, offset);
-			else
-				data = data.substring(0, offset) + data.substring(end);
-		}
-		setData(data);
-	}
-
-	/**
-	 */
-	protected final String getCharacterData() {
-		return this.data;
-	}
-
-	/**
-	 * getData method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getData() throws DOMException {
-		return getCharacterData();
-	}
-
-	/**
-	 * getLength method
-	 * 
-	 * @return int
-	 */
-	public int getLength() {
-		String data = getData();
-		if (data == null)
-			return 0;
-		return data.length();
-	}
-
-	/**
-	 * getNodeValue method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeValue() {
-		return getData();
-	}
-
-	/**
-	 * insertData method
-	 * 
-	 * @param offset
-	 *            int
-	 * @param arg
-	 *            java.lang.String
-	 */
-	public void insertData(int offset, String arg) throws DOMException {
-		if (arg == null)
-			return;
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		if (offset < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String data = getData();
-		if (data == null) {
-			if (offset > 0) {
-				throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-			}
-			data = arg;
-		} else if (offset == 0) {
-			data = arg + data;
-		} else {
-			int length = data.length();
-			if (offset > length) {
-				throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-			}
-			if (offset == length)
-				data += arg;
-			else
-				data = data.substring(0, offset) + arg + data.substring(offset);
-		}
-		setData(data);
-	}
-
-	/**
-	 * isJSPContent method
-	 * 
-	 * @return boolean
-	 */
-	public boolean isJSPContent() {
-		Node parent = getParentNode();
-		if (parent == null || parent.getNodeType() != Node.ELEMENT_NODE)
-			return false;
-		ElementImpl element = (ElementImpl) parent;
-		return element.isJSPContainer();
-	}
-
-	/**
-	 * replaceData method
-	 * 
-	 * @param offset
-	 *            int
-	 * @param count
-	 *            int
-	 * @param arg
-	 *            java.lang.String
-	 */
-	public void replaceData(int offset, int count, String arg) throws DOMException {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		if (arg == null) {
-			deleteData(offset, count);
-			return;
-		}
-		if (count == 0) {
-			insertData(offset, arg);
-			return;
-		}
-		if (offset < 0 || count < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String data = getData();
-		if (data == null) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		} else if (offset == 0) {
-			int length = data.length();
-			if (count > length) {
-				throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-			}
-			if (count == length)
-				data = arg;
-			else
-				data = arg + data.substring(count);
-		} else {
-			int length = data.length();
-			int end = offset + count;
-			if (end > length) {
-				throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-			}
-			if (end == length)
-				data = data.substring(0, offset) + arg;
-			else
-				data = data.substring(0, offset) + arg + data.substring(end);
-		}
-		setData(data);
-	}
-
-	/**
-	 */
-	void resetStructuredDocumentRegions() {
-		this.data = getData();
-		setStructuredDocumentRegion(null);
-	}
-
-	/**
-	 * setData method
-	 * 
-	 * @param data
-	 *            java.lang.String
-	 */
-	public void setData(String data) throws DOMException {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.data = data;
-
-		notifyValueChanged();
-	}
-
-	/**
-	 * setNodeValue method
-	 * 
-	 * @param nodeValue
-	 *            java.lang.String
-	 */
-	public void setNodeValue(String nodeValue) throws DOMException {
-		setData(nodeValue);
-	}
-
-	/**
-	 */
-	void setStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		super.setStructuredDocumentRegion(flatNode);
-		if (flatNode != null)
-			this.data = null;
-	}
-
-	/**
-	 * substringData method
-	 * 
-	 * @return java.lang.String
-	 * @param offset
-	 *            int
-	 * @param count
-	 *            int
-	 */
-	public String substringData(int offset, int count) throws DOMException {
-		if (count == 0)
-			return new String();
-		if (offset < 0 || count < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String data = getData();
-		if (data == null) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		int length = data.length();
-		if (offset == 0 && count == length)
-			return data;
-		if (offset > length) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		int end = offset + count;
-		if (end > length) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		return data.substring(offset, end);
-	}
-
-	/**
-	 * toString method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(getNodeName());
-		buffer.append('(');
-		buffer.append(getData());
-		buffer.append(')');
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode != null) {
-			buffer.append('@');
-			buffer.append(flatNode.toString());
-		}
-		return buffer.toString();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CommentImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CommentImpl.java
deleted file mode 100644
index 81779de..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/CommentImpl.java
+++ /dev/null
@@ -1,197 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Comment;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-
-
-/**
- * CommentImpl class
- */
-public class CommentImpl extends CharacterDataImpl implements Comment {
-
-	private boolean isJSPTag = false;
-
-	/**
-	 * CommentImpl constructor
-	 */
-	protected CommentImpl() {
-		super();
-	}
-
-	/**
-	 * CommentImpl constructor
-	 * 
-	 * @param that
-	 *            CommentImpl
-	 */
-	protected CommentImpl(CommentImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.isJSPTag = that.isJSPTag;
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		CommentImpl cloned = new CommentImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * getData method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getData() throws DOMException {
-		String data = getCharacterData();
-		if (data == null) {
-			data = getData(getStructuredDocumentRegion());
-			if (data == null)
-				data = new String();
-		}
-		return data;
-	}
-
-	/**
-	 */
-	private String getData(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return null;
-
-		ITextRegion contentRegion = null;
-		StringBuffer buffer = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_COMMENT_OPEN || regionType == XMLRegionContext.XML_COMMENT_CLOSE || isNestedCommentOpenClose(regionType)) {
-				continue;
-			}
-			if (contentRegion == null) { // first content
-				contentRegion = region;
-			}
-			else { // multiple contents
-				if (buffer == null) {
-					buffer = new StringBuffer(flatNode.getText(contentRegion));
-				}
-				buffer.append(flatNode.getText(region));
-			}
-		}
-
-		if (buffer != null)
-			return buffer.toString();
-		if (contentRegion != null)
-			return flatNode.getText(contentRegion);
-		return null;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return "#comment";//$NON-NLS-1$
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return COMMENT_NODE;
-	}
-
-	/**
-	 */
-	public boolean isClosed() {
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return true; // will be generated
-		String regionType = StructuredDocumentRegionUtil.getLastRegionType(flatNode);
-		return (regionType == XMLRegionContext.XML_COMMENT_CLOSE || isNestedCommentClose(regionType));
-	}
-
-	/**
-	 * Subclasses must override
-	 * @param regionType
-	 * @return
-	 */
-	protected boolean isNestedCommentClose(String regionType) {
-		boolean result = false;
-		return result; 
-	}
-	/**
-	 * Subclasses must override
-	 * @param regionType
-	 * @return
-	 */
-	protected boolean isNestedCommentOpenClose(String regionType) {
-		boolean result = false;
-		return result; 
-	}
-																											
-	public boolean isJSPTag() {
-		return this.isJSPTag;
-	}
-
-	/**
-	 * setJSPTag method
-	 * 
-	 * @param isJSPTag
-	 *            boolean
-	 */
-	public void setJSPTag(boolean isJSPTag) {
-		if (isJSPTag == this.isJSPTag)
-			return;
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		DocumentImpl document = (DocumentImpl) getOwnerDocument();
-		if (isJSPTag) {
-			if (document == null || !document.isJSPType())
-				return;
-		}
-
-		this.isJSPTag = isJSPTag;
-
-		if (getContainerDocument() != null) {
-			// already in the tree, update IStructuredDocument
-			setData(getData()); // calls notifyValueChanged();
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentFragmentImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentFragmentImpl.java
deleted file mode 100644
index 06058a5..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentFragmentImpl.java
+++ /dev/null
@@ -1,74 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.w3c.dom.DocumentFragment;
-import org.w3c.dom.Node;
-
-
-/**
- * DocumentFragmentImpl class
- */
-public class DocumentFragmentImpl extends NodeContainer implements DocumentFragment {
-
-	/**
-	 * DocumentFragmentImpl constructor
-	 */
-	protected DocumentFragmentImpl() {
-		super();
-	}
-
-	/**
-	 * DocumentFragmentImpl constructor
-	 * 
-	 * @param that
-	 *            DocumentFragmentImpl
-	 */
-	protected DocumentFragmentImpl(DocumentFragmentImpl that) {
-		super(that);
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		DocumentFragmentImpl cloned = new DocumentFragmentImpl(this);
-		if (deep)
-			cloneChildNodes(cloned, deep);
-		return cloned;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return "#document-fragment";//$NON-NLS-1$
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return DOCUMENT_FRAGMENT_NODE;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentImpl.java
deleted file mode 100644
index abefabe..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentImpl.java
+++ /dev/null
@@ -1,1072 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-// for org.apache.xerces 3.2.1
-// import org.apache.xerces.utils.XMLCharacterProperties;
-// DMW modified for XML4J 4.0.1
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.wst.sse.core.modelhandler.IModelHandler;
-import org.eclipse.wst.xml.core.NameValidator;
-import org.eclipse.wst.xml.core.commentelement.impl.CommentElementRegistry;
-import org.eclipse.wst.xml.core.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.document.JSPTag;
-import org.eclipse.wst.xml.core.document.XMLCharEntity;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMEntityDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Attr;
-import org.w3c.dom.CDATASection;
-import org.w3c.dom.Comment;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.DOMImplementation;
-import org.w3c.dom.DocumentFragment;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Entity;
-import org.w3c.dom.EntityReference;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.Notation;
-import org.w3c.dom.ProcessingInstruction;
-import org.w3c.dom.Text;
-import org.w3c.dom.ranges.Range;
-import org.w3c.dom.traversal.NodeFilter;
-import org.w3c.dom.traversal.NodeIterator;
-import org.w3c.dom.traversal.TreeWalker;
-
-
-/**
- * DocumentImpl class
- */
-public class DocumentImpl extends NodeContainer implements XMLDocument {
-
-	/**
-	 * Internal-use only class. This class was added to better able to handle
-	 * repetetive request for getElementsByTagName. The cache is cleared when
-	 * ever the document changes at all, so still not real efficient,
-	 */
-	class TagNameCache {
-
-		private boolean active = true;
-
-		private Map cache;
-
-		public TagNameCache() {
-			super();
-			cache = new HashMap();
-		}
-
-		/**
-		 * @param b
-		 */
-		public void activate(boolean b) {
-			active = b;
-			if (!b)
-				clear();
-		}
-
-		public void addItem(String tagname, NodeListImpl nodelist) {
-			if (tagname == null || nodelist == null)
-				return;
-			cache.put(tagname, nodelist);
-		}
-
-		public void clear() {
-			cache.clear();
-		}
-
-		public NodeListImpl getItem(String tagName) {
-			NodeListImpl result = null;
-			if (active) {
-				result = (NodeListImpl) cache.get(tagName);
-				//					if (result != null) {
-				//						System.out.println("getElementsByTagname from cache: " +
-				// tagName);
-				//					}
-			}
-			return result;
-		}
-
-	}
-
-	// this is a constant just to give compile-time control over
-	// whether or not to use the cache. If, in future, its found that
-	// there are no (or few) "duplicate requests" ... then this cache
-	// is not needed.
-	private static final boolean usetagnamecache = true;
-	private DocumentTypeAdapter documentTypeAdapter = null;
-
-	private XMLModelImpl model = null;
-	private TagNameCache tagNameCache;
-
-	/**
-	 * DocumentImpl constructor
-	 */
-	protected DocumentImpl() {
-		super();
-		if (usetagnamecache) {
-			tagNameCache = new TagNameCache();
-		}
-	}
-
-	/**
-	 * DocumentImpl constructor
-	 * 
-	 * @param that
-	 *            DocumentImpl
-	 */
-	protected DocumentImpl(DocumentImpl that) {
-		super(that);
-		if (usetagnamecache) {
-			tagNameCache = new TagNameCache();
-		}
-	}
-
-	/**
-	 * @param b
-	 */
-	void activateTagNameCache(boolean b) {
-		tagNameCache.activate(b);
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * Changes the <code>ownerDocument</code> of a node, its children, as
-	 * well as the attached attribute nodes if there are any. If the node has
-	 * a parent it is first removed from its parent child list. This
-	 * effectively allows moving a subtree from one document to another. The
-	 * following list describes the specifics for each type of node.
-	 * <dl>
-	 * <dt>ATTRIBUTE_NODE</dt>
-	 * <dd>The <code>ownerElement</code> attribute is set to
-	 * <code>null</code> and the <code>specified</code> flag is set to
-	 * <code>true</code> on the adopted <code>Attr</code>. The
-	 * descendants of the source <code>Attr</code> are recursively adopted.
-	 * </dd>
-	 * <dt>DOCUMENT_FRAGMENT_NODE</dt>
-	 * <dd>The descendants of the source node are recursively adopted.</dd>
-	 * <dt>DOCUMENT_NODE</dt>
-	 * <dd><code>Document</code> nodes cannot be adopted.</dd>
-	 * <dt>DOCUMENT_TYPE_NODE</dt>
-	 * <dd><code>DocumentType</code> nodes cannot be adopted.</dd>
-	 * <dt>ELEMENT_NODE</dt>
-	 * <dd>Specified attribute nodes of the source element are adopted, and
-	 * the generated <code>Attr</code> nodes. Default attributes are
-	 * discarded, though if the document being adopted into defines default
-	 * attributes for this element name, those are assigned. The descendants
-	 * of the source element are recursively adopted.</dd>
-	 * <dt>ENTITY_NODE</dt>
-	 * <dd><code>Entity</code> nodes cannot be adopted.</dd>
-	 * <dt>ENTITY_REFERENCE_NODE</dt>
-	 * <dd>Only the <code>EntityReference</code> node itself is adopted,
-	 * the descendants are discarded, since the source and destination
-	 * documents might have defined the entity differently. If the document
-	 * being imported into provides a definition for this entity name, its
-	 * value is assigned.</dd>
-	 * <dt>NOTATION_NODE</dt>
-	 * <dd><code>Notation</code> nodes cannot be adopted.</dd>
-	 * <dt>PROCESSING_INSTRUCTION_NODE, TEXT_NODE, CDATA_SECTION_NODE,
-	 * COMMENT_NODE</dt>
-	 * <dd>These nodes can all be adopted. No specifics.</dd>
-	 * Should this method simply return null when it fails? How "exceptional"
-	 * is failure for this method?Stick with raising exceptions only in
-	 * exceptional circumstances, return null on failure (F2F 19 Jun 2000).Can
-	 * an entity node really be adopted?No, neither can Notation nodes (Telcon
-	 * 13 Dec 2000).Does this affect keys and hashCode's of the adopted
-	 * subtree nodes?If so, what about readonly-ness of key and hashCode?if
-	 * not, would appendChild affect keys/hashCodes or would it generate
-	 * exceptions if key's are duplicate? Update: Hashcodes have been dropped.
-	 * Given that the key is only unique within a document an adopted node
-	 * needs to be given a new key, but what does it mean for the application?
-	 * 
-	 * @param source
-	 *            The node to move into this document.
-	 * @return The adopted node, or <code>null</code> if this operation
-	 *         fails, such as when the source node comes from a different
-	 *         implementation.
-	 * @exception DOMException
-	 *                NOT_SUPPORTED_ERR: Raised if the source node is of type
-	 *                <code>DOCUMENT</code>,<code>DOCUMENT_TYPE</code>.
-	 *                <br>
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised when the source node
-	 *                is readonly.
-	 * @since DOM Level 3
-	 */
-	public org.w3c.dom.Node adoptNode(org.w3c.dom.Node source) throws org.w3c.dom.DOMException {
-		return null;
-	}
-
-	/**
-	 * @param tagName
-	 */
-	protected void checkTagNameValidity(String tagName) {
-		if (!isValidName(tagName)) {
-			throw new DOMException(DOMException.INVALID_CHARACTER_ERR, createDOMExceptionMessage(DOMException.INVALID_CHARACTER_ERR, tagName));
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		DocumentImpl cloned = new DocumentImpl(this);
-		if (deep)
-			cloned.importChildNodes(this, true);
-		return cloned;
-	}
-
-	/**
-	 * createAttribute method
-	 * 
-	 * @return org.w3c.dom.Attr
-	 * @param name
-	 *            java.lang.String
-	 */
-	public Attr createAttribute(String name) throws DOMException {
-		AttrImpl attr = new AttrImpl();
-		attr.setOwnerDocument(this);
-		attr.setName(name);
-		return attr;
-	}
-
-	/**
-	 */
-	public Attr createAttributeNS(String uri, String name) throws DOMException {
-		AttrImpl attr = new AttrImpl();
-		attr.setOwnerDocument(this);
-		attr.setName(name);
-		attr.setNamespaceURI(uri);
-		return attr;
-	}
-
-	/**
-	 * createCDATASection method
-	 * 
-	 * @return org.w3c.dom.CDATASection
-	 * @param data
-	 *            java.lang.String
-	 */
-	public CDATASection createCDATASection(String data) throws DOMException {
-		// allow CDATA section
-		// if (!isXMLType()) {
-		//	throw new DOMException(DOMException.NOT_SUPPORTED_ERR, new
-		// String());
-		// }
-		CDATASectionImpl cdata = new CDATASectionImpl();
-		cdata.setOwnerDocument(this);
-		if (data != null)
-			cdata.setData(data);
-		return cdata;
-	}
-
-	/**
-	 * createComment method
-	 * 
-	 * @return org.w3c.dom.Comment
-	 * @param data
-	 *            java.lang.String
-	 */
-	public Comment createComment(String data) {
-		CommentImpl comment = new CommentImpl();
-		comment.setOwnerDocument(this);
-		if (data != null)
-			comment.setData(data);
-		return comment;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.model.xml.XMLDocument#createCommentElement(java.lang.String,
-	 *      boolean)
-	 */
-	public Element createCommentElement(String tagName, boolean isJSPTag) throws DOMException {
-		if (!isJSPType() && isJSPTag) {
-			throw new DOMException(DOMException.INVALID_MODIFICATION_ERR, new String());
-		}
-		ElementImpl element = (ElementImpl) createElement(tagName);
-		element.setJSPTag(isJSPTag);
-		CommentElementRegistry registry = CommentElementRegistry.getInstance();
-		if (registry.setupCommentElement(element)) {
-			return element;
-		} else {
-			throw new DOMException(DOMException.INVALID_CHARACTER_ERR, new String());
-		}
-	}
-
-	/**
-	 * createDoctype method
-	 * 
-	 * @return org.w3c.dom.DocumentType
-	 * @param name
-	 *            java.lang.String
-	 */
-	public DocumentType createDoctype(String name) {
-		DocumentTypeImpl docType = new DocumentTypeImpl();
-		docType.setOwnerDocument(this);
-		docType.setName(name);
-		return docType;
-	}
-
-	/**
-	 * createDocumentFragment method
-	 * 
-	 * @return org.w3c.dom.DocumentFragment
-	 */
-	public DocumentFragment createDocumentFragment() {
-		DocumentFragmentImpl fragment = new DocumentFragmentImpl();
-		fragment.setOwnerDocument(this);
-		return fragment;
-	}
-
-	/**
-	 * createElement method
-	 * 
-	 * @return org.w3c.dom.Element
-	 * @param tagName
-	 *            java.lang.String
-	 */
-	public Element createElement(String tagName) throws DOMException {
-		checkTagNameValidity(tagName);
-
-		ElementImpl element = new ElementImpl();
-		element.setOwnerDocument(this);
-		element.setTagName(tagName);
-		return element;
-	}
-
-	/**
-	 */
-	public Element createElementNS(String uri, String tagName) throws DOMException {
-		if (!isValidName(tagName)) {
-			throw new DOMException(DOMException.INVALID_CHARACTER_ERR, new String());
-		}
-
-		ElementImpl element = (ElementImpl) createElement(tagName);
-		element.setNamespaceURI(uri);
-		return element;
-	}
-
-	/**
-	 * createEntity method
-	 * 
-	 * @return org.w3c.dom.Entity
-	 * @param name
-	 *            java.lang.String
-	 */
-	public Entity createEntity(String name) {
-		EntityImpl entity = new EntityImpl();
-		entity.setOwnerDocument(this);
-		entity.setName(name);
-		return entity;
-	}
-
-	/**
-	 * createEntityReference method
-	 * 
-	 * @return org.w3c.dom.EntityReference
-	 * @param name
-	 *            java.lang.String
-	 */
-	public EntityReference createEntityReference(String name) throws DOMException {
-		if (!isXMLType()) {
-			throw new DOMException(DOMException.NOT_SUPPORTED_ERR, new String());
-		}
-
-		EntityReferenceImpl ref = new EntityReferenceImpl();
-		ref.setOwnerDocument(this);
-		ref.setName(name);
-		return ref;
-	}
-
-	/**
-	 */
-	public NodeIterator createNodeIterator(Node root, int whatToShow, NodeFilter filter, boolean entityReferenceExpansion) {
-		if (root == null)
-			root = this;
-		return new NodeIteratorImpl(root, whatToShow, filter);
-	}
-
-	/**
-	 * createNotation method
-	 * 
-	 * @return org.w3c.dom.Notation
-	 * @param name
-	 *            java.lang.String
-	 */
-	public Notation createNotation(String name) {
-		NotationImpl notation = new NotationImpl();
-		notation.setOwnerDocument(this);
-		notation.setName(name);
-		return notation;
-	}
-
-	/**
-	 * createProcessingInstruction method
-	 * 
-	 * @return org.w3c.dom.ProcessingInstruction
-	 * @param target
-	 *            java.lang.String
-	 * @param data
-	 *            java.lang.String
-	 */
-	public ProcessingInstruction createProcessingInstruction(String target, String data) throws DOMException {
-		ProcessingInstructionImpl pi = new ProcessingInstructionImpl();
-		pi.setOwnerDocument(this);
-		pi.setTarget(target);
-		if (data != null)
-			pi.setData(data);
-		return pi;
-	}
-
-	/**
-	 */
-	public Range createRange() {
-		return new RangeImpl();
-	}
-
-	/**
-	 * createTextNode method
-	 * 
-	 * @return org.w3c.dom.Text
-	 * @param data
-	 *            java.lang.String
-	 */
-	public Text createTextNode(String data) {
-		TextImpl text = new TextImpl();
-		text.setOwnerDocument(this);
-		text.setData(data);
-		return text;
-	}
-
-	/**
-	 */
-	public TreeWalker createTreeWalker(Node root, int whatToShow, NodeFilter filter, boolean entityReferenceExpansion) {
-		// not suppoerted
-		return null;
-	}
-
-	private DocumentType findDoctype(Node node) {
-		for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (child.getNodeType() == DOCUMENT_TYPE_NODE && child instanceof DocumentType) {
-				return (DocumentType) child;
-			} else if (child.getNodeType() == ELEMENT_NODE && ((XMLElement) child).isCommentTag()) {
-				// search DOCTYPE inside of generic comment element
-				DocumentType docType = findDoctype(child);
-				if (docType != null) {
-					return docType;
-				}
-			}
-		}
-
-		return null;
-	}
-
-	private Element findDocumentElement(String docName, Node node, Node[] firstFound) {
-		for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (child.getNodeType() != ELEMENT_NODE)
-				continue;
-			ElementImpl element = (ElementImpl) child;
-			if (element.isCommentTag()) {
-				Element docElement = findDocumentElement(docName, element, firstFound);
-				if (docElement != null) {
-					return docElement;
-				} else {
-					// added 'else continue' to better handle cases where
-					// there is "more than one root" element
-					// especially complicated by CommentElements, which are
-					// sometimes treated as elements, but should
-					// be treated as comments in this context.
-					continue;
-				}
-			}
-			// note: the "name" won't match in the event of a jsp tag ... but
-			// incase
-			// the name is null, we do not want the jsp element returned as
-			// documentElement
-			if (element.isJSPTag())
-				continue;
-			if (docName == null)
-				return element;
-			// use local name for namespace
-			String localName = element.getLocalName();
-			if (localName == null)
-				continue;
-			if (isXMLType()) {
-				if (localName.equals(docName))
-					return element;
-			} else {
-				if (localName.equalsIgnoreCase(docName))
-					return element;
-			}
-			if (firstFound[0] == null)
-				firstFound[0] = element;
-		}
-		return null;
-	}
-
-	/**
-	 * getCharValue method
-	 * 
-	 * @return java.lang.String
-	 * @param name
-	 *            java.lang.String
-	 */
-	protected String getCharValue(String name) {
-		if (name == null)
-			return null;
-		int length = name.length();
-		if (length == 0)
-			return null;
-
-		if (name.charAt(0) == '#') { // character reference
-			if (length == 1)
-				return null;
-			int radix = 10;
-			String s = null;
-			// now allow hexadecimal also for non XML document
-			if (name.charAt(1) == 'x') { // hexadecimal
-				radix = 16;
-				s = name.substring(2);
-			} else { // decimal
-				s = name.substring(1);
-			}
-			if (s == null || s.length() == 0)
-				return null;
-			if (s.charAt(0) == '-')
-				return null; // no minus accepted
-			char c = 0;
-			try {
-				c = (char) Integer.parseInt(s, radix);
-			} catch (NumberFormatException ex) {
-			}
-			if (c == 0)
-				return null;
-			return String.valueOf(c);
-		}
-
-		// implicit character entities for XML
-		if (name.equals(XMLCharEntity.LT_NAME))
-			return XMLCharEntity.LT_VALUE;
-		if (name.equals(XMLCharEntity.GT_NAME))
-			return XMLCharEntity.GT_VALUE;
-		if (name.equals(XMLCharEntity.AMP_NAME))
-			return XMLCharEntity.AMP_VALUE;
-		if (name.equals(XMLCharEntity.QUOT_NAME))
-			return XMLCharEntity.QUOT_VALUE;
-		if (isXMLType()) {
-			if (name.equals(XMLCharEntity.APOS_NAME))
-				return XMLCharEntity.APOS_VALUE;
-		}
-
-		CMDocument cm = getCMDocument();
-		if (cm != null) {
-			CMNamedNodeMap map = cm.getEntities();
-			if (map != null) {
-				CMEntityDeclaration decl = (CMEntityDeclaration) map.getNamedItem(name);
-				if (decl != null) {
-					String value = decl.getValue();
-					if (value == null)
-						return null;
-					int valueLength = value.length();
-					if (valueLength > 1 && value.charAt(0) == '&' && value.charAt(1) == '#' && value.charAt(valueLength - 1) == ';') {
-						// character reference
-						return getCharValue(value.substring(1, valueLength - 1));
-					}
-					return value;
-				}
-			}
-		}
-
-		return null;
-	}
-
-	/**
-	 */
-	protected CMDocument getCMDocument() {
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(this);
-		if (modelQuery == null)
-			return null;
-		return modelQuery.getCorrespondingCMDocument(this);
-	}
-
-	/**
-	 * getDoctype method
-	 * 
-	 * @return org.w3c.dom.DocumentType
-	 */
-	public DocumentType getDoctype() {
-		return findDoctype(this);
-	}
-
-	/**
-	 * getDocumentElement
-	 * 
-	 * @return org.w3c.dom.Element From DOM 2 Spec: documentElement of type
-	 *         Element [p.62] , readonly This is a convenience [p.119]
-	 *         attribute that allows direct access to the child node that is
-	 *         the root element of the document. For HTML documents, this is
-	 *         the element with the tagName "HTML". Note: we differ from this
-	 *         definition a little in that we don't necessarily take the first
-	 *         child but also look to match the name. In a well formed
-	 *         document, of course, the result is the same, but not
-	 *         necessarily the same in an ill-formed document.
-	 */
-	public Element getDocumentElement() {
-		String name = null;
-		DocumentType docType = getDocumentType();
-		if (docType != null) {
-			name = docType.getName();
-		}
-
-		Element first[] = new Element[1];
-		Element docElement = findDocumentElement(name, this, first);
-		if (docElement == null) {
-			docElement = first[0];
-		}
-
-		return docElement;
-	}
-
-	/**
-	 */
-	protected DocumentType getDocumentType() {
-		DocumentTypeAdapter adapter = getDocumentTypeAdapter();
-		if (adapter == null)
-			return getDoctype();
-		return adapter.getDocumentType();
-	}
-
-	/**
-	 */
-	protected DocumentTypeAdapter getDocumentTypeAdapter() {
-	    // be sure to release since possibly changing
-	    if(this.documentTypeAdapter != null) {
-	        this.documentTypeAdapter.release();
-	    }
-	    this.documentTypeAdapter = (DocumentTypeAdapter) getAdapterFor(DocumentTypeAdapter.class);
-		if (this.documentTypeAdapter == null) {
-			// add default adapter
-		    this.documentTypeAdapter = new DocumentTypeAdapterImpl(this);
-			addAdapter(this.documentTypeAdapter);
-		}
-		return this.documentTypeAdapter;
-	}
-
-	/**
-	 */
-	public String getDocumentTypeId() {
-		DocumentType docType = getDocumentType();
-		if (docType == null)
-			return null;
-		String id = docType.getPublicId();
-		if (id == null)
-			id = docType.getSystemId();
-		return id;
-	}
-
-	/**
-	 */
-	public Element getElementById(String id) {
-		if (id == null)
-			return null;
-		NodeIterator it = createNodeIterator(this, NodeFilter.SHOW_ALL, null, false);
-		if (it == null)
-			return null;
-
-		for (Node node = it.nextNode(); node != null; node = it.nextNode()) {
-			if (node.getNodeType() != ELEMENT_NODE)
-				continue;
-			ElementImpl element = (ElementImpl) node;
-			String value = element.getAttribute("id");//$NON-NLS-1$
-			if (value != null && value.equals(id))
-				return element;
-		}
-
-		return null;
-	}
-
-	/**
-	 * getElementsByTagName method
-	 * 
-	 * @return org.w3c.dom.NodeList
-	 * @param tagName
-	 *            java.lang.String
-	 */
-	public NodeList getElementsByTagName(String tagName) {
-		if (tagName == null)
-			return new NodeListImpl();
-
-		NodeListImpl elements = null;
-
-		if (usetagnamecache) {
-			elements = tagNameCache.getItem(tagName);
-		}
-
-		if (elements == null) {
-			elements = internalGetElementsByTagName(tagName);
-
-		}
-
-		return elements;
-	}
-
-	/**
-	 */
-	public NodeList getElementsByTagNameNS(String uri, String tagName) {
-		if (tagName == null)
-			return new NodeListImpl();
-
-		NodeIterator it = createNodeIterator(this, NodeFilter.SHOW_ALL, null, false);
-		if (it == null)
-			return new NodeListImpl();
-		NodeListImpl elements = new NodeListImpl();
-
-		if (uri != null && uri.length() == 1 && uri.charAt(0) == '*') {
-			uri = null; // do not care
-		}
-		if (tagName.length() == 1 && tagName.charAt(0) == '*') {
-			tagName = null; // do not care
-		}
-
-		for (Node node = it.nextNode(); node != null; node = it.nextNode()) {
-			if (node.getNodeType() != ELEMENT_NODE)
-				continue;
-			ElementImpl element = (ElementImpl) node;
-			if (tagName != null) {
-				String localName = element.getLocalName();
-				if (localName == null || !localName.equals(tagName))
-					continue;
-			}
-			if (uri != null) {
-				String nsURI = element.getNamespaceURI();
-				if (nsURI == null || !nsURI.equals(uri))
-					continue;
-			}
-			elements.appendNode(element);
-		}
-
-		return elements;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the XML declaration, the encoding
-	 * of this document. This is <code>null</code> when unspecified.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public java.lang.String getEncoding() {
-		return null;
-	}
-
-	/**
-	 */
-	public DOMImplementation getImplementation() {
-		return model;
-	}
-
-	/**
-	 * other nodes will be referring to this one to get the owning model
-	 */
-	public XMLModel getModel() {
-		return model;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return "#document";//$NON-NLS-1$
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return DOCUMENT_NODE;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the XML declaration, whether this
-	 * document is standalone.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public boolean getStandalone() {
-		return false;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying whether errors checking is enforced or not.
-	 * When set to <code>false</code>, the implementation is free to not
-	 * test every possible error case normally defined on DOM operations, and
-	 * not raise any <code>DOMException</code>. In case of error, the
-	 * behavior is undefined. This attribute is <code>true</code> by
-	 * defaults.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public boolean getStrictErrorChecking() {
-		return false;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the XML declaration, the version
-	 * number of this document. This is <code>null</code> when unspecified.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public String getVersion() {
-		return null;
-	}
-
-	/**
-	 */
-	protected boolean ignoreCase() {
-		DocumentTypeAdapter adapter = getDocumentTypeAdapter();
-		if (adapter == null)
-			return false;
-		return (adapter.getTagNameCase() != DocumentTypeAdapter.STRICT_CASE);
-	}
-
-	/**
-	 */
-	protected void importChildNodes(Node parent, boolean deep) {
-		if (parent == null)
-			return;
-
-		removeChildNodes();
-
-		for (Node child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {
-			Node imported = importNode(child, deep);
-			if (imported == null)
-				continue;
-			appendChild(imported);
-		}
-	}
-
-	/**
-	 */
-	public Node importNode(Node node, boolean deep) throws DOMException {
-		if (node == null)
-			return null;
-		NodeImpl imported = (NodeImpl) node.cloneNode(deep);
-		if (imported == null)
-			return null;
-		imported.setOwnerDocument(this, deep);
-		return imported;
-	}
-
-	private NodeListImpl internalGetElementsByTagName(String tagName) {
-		//System.out.println("getElementsByTagname: " + tagName);
-		NodeIterator it = createNodeIterator(this, NodeFilter.SHOW_ALL, null, false);
-		if (it == null)
-			return new NodeListImpl();
-		NodeListImpl elements = new NodeListImpl();
-
-		if (tagName.length() == 1 && tagName.charAt(0) == '*') {
-			tagName = null; // do not care
-		}
-
-		for (Node node = it.nextNode(); node != null; node = it.nextNode()) {
-			if (node.getNodeType() != ELEMENT_NODE)
-				continue;
-			if (tagName != null) {
-				ElementImpl element = (ElementImpl) node;
-				if (!element.matchTagName(tagName))
-					continue;
-			}
-			elements.appendNode(node);
-		}
-		if (usetagnamecache) {
-			tagNameCache.addItem(tagName, elements);
-		}
-		return elements;
-	}
-
-	/**
-	 */
-	public boolean isJSPDocument() {
-		Element element = getDocumentElement();
-		if (element == null)
-			return false;
-		String tagName = element.getTagName();
-		if (tagName == null)
-			return false;
-		return tagName.equals(JSPTag.JSP_ROOT);
-	}
-
-	/**
-	 */
-	public boolean isJSPType() {
-		if (this.model == null)
-			return false;
-		IModelHandler handler = this.model.getModelHandler();
-		if (handler == null)
-			return false;
-		String id = handler.getAssociatedContentTypeId();
-		if (id == null)
-			return false;
-		// ISSUE: -- avoid this hardcoded string
-		return id.equals("org.eclipse.jst.jsp.core.jspsource");
-	}
-
-	/**
-	 */
-	protected boolean isValidName(String name) {
-		if (name == null || name.length() == 0)
-			return false;
-		//	// DMW: modified for XML4J 4.0.1
-		//	if (XMLChar.isValidName(name)) return true;
-		if (NameValidator.isValid(name))
-			return true;
-		// special for invalid declaration
-		if (name.length() == 1 && name.charAt(0) == '!')
-			return true;
-		// special for JSP tag in tag name
-		if (name.startsWith(JSPTag.TAG_OPEN))
-			return true;
-		return false;
-	}
-
-	/**
-	 */
-	public boolean isXMLType() {
-		DocumentTypeAdapter adapter = getDocumentTypeAdapter();
-		if (adapter == null)
-			return true;
-		return adapter.isXMLType();
-	}
-
-	/**
-	 */
-	protected void releaseDocumentType() {
-		if (this.documentTypeAdapter == null)
-			return;
-		this.documentTypeAdapter.release();
-		this.documentTypeAdapter = null;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the XML declaration, the encoding
-	 * of this document. This is <code>null</code> when unspecified.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public void setEncoding(java.lang.String encoding) {
-	}
-
-	/**
-	 * setModel method
-	 * 
-	 * @param model
-	 *            XMLModel
-	 */
-
-	protected void setModel(XMLModel model) {
-		this.model = (XMLModelImpl) model;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the XML declaration, whether this
-	 * document is standalone.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public void setStandalone(boolean standalone) {
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying whether errors checking is enforced or not.
-	 * When set to <code>false</code>, the implementation is free to not
-	 * test every possible error case normally defined on DOM operations, and
-	 * not raise any <code>DOMException</code>. In case of error, the
-	 * behavior is undefined. This attribute is <code>true</code> by
-	 * defaults.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public void setStrictErrorChecking(boolean strictErrorChecking) {
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the XML declaration, the version
-	 * number of this document. This is <code>null</code> when unspecified.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public void setVersion(java.lang.String version) {
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeAdapterImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeAdapterImpl.java
deleted file mode 100644
index 8d63d99..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeAdapterImpl.java
+++ /dev/null
@@ -1,120 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.xml.core.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.w3c.dom.DocumentType;
-
-
-/**
- */
-public class DocumentTypeAdapterImpl implements DocumentTypeAdapter {
-
-	private XMLDocument document = null;
-	private DocumentType documentType = null;
-
-	/**
-	 */
-	protected DocumentTypeAdapterImpl() {
-		super();
-	}
-
-	/**
-	 */
-	protected DocumentTypeAdapterImpl(XMLDocument document) {
-		this.document = document;
-		if (document != null) {
-			this.documentType = document.getDoctype();
-		}
-	}
-
-	/**
-	 */
-	public int getAttrNameCase() {
-		return STRICT_CASE;
-	}
-
-	/**
-	 */
-	protected XMLDocument getDocument() {
-		return this.document;
-	}
-
-	/**
-	 */
-	public DocumentType getDocumentType() {
-		return this.documentType;
-	}
-
-	/**
-	 */
-	public int getTagNameCase() {
-		return STRICT_CASE;
-	}
-
-	/**
-	 */
-	public boolean hasFeature(String feature) {
-		return false;
-	}
-
-	/**
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == DocumentTypeAdapter.class);
-	}
-
-	/**
-	 */
-	public boolean isXMLType() {
-		return true;
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (eventType != INodeNotifier.STRUCTURE_CHANGED)
-			return;
-		if (notifier == null || !(notifier instanceof XMLDocument))
-			return;
-		this.documentType = ((XMLDocument) notifier).getDoctype();
-	}
-
-	/**
-	 */
-	protected void notifyDocumentTypeChanged() {
-		if (this.document == null)
-			return;
-		XMLModel model = this.document.getModel();
-		if (model == null)
-			return;
-		((XMLModelImpl) model).documentTypeChanged();
-	}
-
-	/**
-	 */
-	public void release() {
-		// nothing to do
-	}
-
-	/**
-	 */
-	protected void setDocumentType(DocumentType documentType) {
-		this.documentType = documentType;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeImpl.java
deleted file mode 100644
index c8137da..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/DocumentTypeImpl.java
+++ /dev/null
@@ -1,222 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.document.XMLDocumentType;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-
-/**
- * DocumentType class
- */
-public class DocumentTypeImpl extends NodeImpl implements XMLDocumentType {
-	private String internalSubset = null;
-
-	private String name = null;
-	private String publicId = null;
-	private String systemId = null;
-
-	/**
-	 * DocumentTypeImpl constructor
-	 */
-	protected DocumentTypeImpl() {
-		super();
-	}
-
-	/**
-	 * DocumentTypeImpl constructor
-	 * 
-	 * @param that
-	 *            DocumentTypeImpl
-	 */
-	protected DocumentTypeImpl(DocumentTypeImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.name = that.name;
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		DocumentTypeImpl cloned = new DocumentTypeImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * getEntities method
-	 * 
-	 * @return org.w3c.dom.NamedNodeMap
-	 */
-	public NamedNodeMap getEntities() {
-		return null;
-	}
-
-	/**
-	 */
-	public String getInternalSubset() {
-		return this.internalSubset;
-	}
-
-	/**
-	 * getName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getName() {
-		if (this.name == null)
-			return new String();
-		return this.name;
-	}
-
-	/**
-	 * getNodeName
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return getName();
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return DOCUMENT_TYPE_NODE;
-	}
-
-	/**
-	 * getNotations method
-	 * 
-	 * @return org.w3c.dom.NamedNodeMap
-	 */
-	public NamedNodeMap getNotations() {
-		return null;
-	}
-
-	/**
-	 * getPublicId method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getPublicId() {
-		return this.publicId;
-	}
-
-	/**
-	 * getSystemId method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getSystemId() {
-		return this.systemId;
-	}
-
-	/**
-	 */
-	public boolean isClosed() {
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return true; // will be generated
-		String regionType = StructuredDocumentRegionUtil.getLastRegionType(flatNode);
-		return (regionType == XMLRegionContext.XML_DOCTYPE_DECLARATION_CLOSE || regionType == XMLRegionContext.XML_DECLARATION_CLOSE);
-	}
-
-	/**
-	 */
-	public void setInternalSubset(String internalSubset) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.internalSubset = internalSubset;
-	}
-
-	/**
-	 * setName method
-	 * 
-	 * @param name
-	 *            java.lang.String
-	 */
-	protected void setName(String name) {
-		this.name = name;
-	}
-
-	/**
-	 * setPublicId method
-	 * 
-	 * @param publicId
-	 *            java.lang.String
-	 */
-	public void setPublicId(String publicId) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.publicId = publicId;
-
-		notifyValueChanged();
-	}
-
-	/**
-	 * setSystemId method
-	 * 
-	 * @param systemId
-	 *            java.lang.String
-	 */
-	public void setSystemId(String systemId) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.systemId = systemId;
-
-		notifyValueChanged();
-	}
-
-	/**
-	 * toString method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(getName());
-		buffer.append('(');
-		buffer.append(getPublicId());
-		buffer.append(')');
-		buffer.append('(');
-		buffer.append(getSystemId());
-		buffer.append(')');
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode != null) {
-			buffer.append('@');
-			buffer.append(flatNode.toString());
-		}
-		return buffer.toString();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ElementImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ElementImpl.java
deleted file mode 100644
index 2ad79a3..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ElementImpl.java
+++ /dev/null
@@ -1,1446 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.commentelement.CommentElementAdapter;
-import org.eclipse.wst.xml.core.document.JSPTag;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNamespace;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.internal.parser.XMLSourceParser;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.traversal.NodeFilter;
-import org.w3c.dom.traversal.NodeIterator;
-
-
-/**
- * ElementImpl class
- */
-public class ElementImpl extends NodeContainer implements XMLElement {
-
-	private class Attributes implements NamedNodeMap {
-		Attributes() {
-			super();
-		}
-
-		public int getLength() {
-			if (attrNodes == null)
-				return 0;
-			return attrNodes.getLength();
-		}
-
-		public Node getNamedItem(String name) {
-			return getAttributeNode(name);
-		}
-
-		public Node getNamedItemNS(String uri, String name) {
-			return getAttributeNodeNS(uri, name);
-		}
-
-		public Node item(int index) {
-			if (attrNodes == null)
-				return null;
-			return attrNodes.item(index);
-		}
-
-		public Node removeNamedItem(String name) throws DOMException {
-			return removeAttributeNode(name);
-		}
-
-		public Node removeNamedItemNS(String uri, String name) throws DOMException {
-			return removeAttributeNodeNS(uri, name);
-		}
-
-		public Node setNamedItem(Node arg) throws DOMException {
-			return setAttributeNode((AttrImpl) arg);
-		}
-
-		public Node setNamedItemNS(Node arg) throws DOMException {
-			return setAttributeNodeNS((AttrImpl) arg);
-		}
-	}
-
-	NodeListImpl attrNodes = null;
-	private IStructuredDocumentRegion endStructuredDocumentRegion = null;
-	private boolean isCommentTag = false;
-	private boolean isEmptyTag = false;
-	private boolean isJSPTag = false;
-	private String namespaceURI = null;
-
-	private String tagName = null;
-
-	/**
-	 * ElementImpl constructor
-	 */
-	protected ElementImpl() {
-		super();
-	}
-
-	/**
-	 * ElementImpl constructor
-	 * 
-	 * @param that
-	 *            ElementImpl
-	 */
-	protected ElementImpl(ElementImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.tagName = that.tagName;
-			this.isEmptyTag = that.isEmptyTag;
-			this.isJSPTag = that.isJSPTag;
-			this.isCommentTag = that.isCommentTag;
-
-			// clone attributes
-			that.cloneAttributes(this);
-		}
-	}
-
-	/**
-	 * addEndTag method
-	 * 
-	 * @param end
-	 *            org.w3c.dom.Element
-	 */
-	protected void addEndTag(Element endTag) {
-		if (endTag == null)
-			return;
-		if (hasEndTag())
-			return;
-		ElementImpl end = (ElementImpl) endTag;
-
-		// move the end flat node from the end tag
-		IStructuredDocumentRegion flatNode = end.getEndStructuredDocumentRegion();
-		if (flatNode == null)
-			return;
-		end.setEndStructuredDocumentRegion(null);
-		setEndStructuredDocumentRegion(flatNode);
-	}
-
-	/**
-	 * appendAttibuteNode method
-	 * 
-	 * @return org.w3c.dom.Attr
-	 * @param newAttr
-	 *            org.w3c.dom.Attr
-	 */
-	public Attr appendAttributeNode(Attr newAttr) {
-		if (newAttr == null)
-			return null;
-		AttrImpl attr = (AttrImpl) newAttr;
-		if (attr.getOwnerElement() != null)
-			return null;
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		if (this.attrNodes == null)
-			this.attrNodes = new NodeListImpl();
-		this.attrNodes.appendNode(attr);
-		attr.setOwnerElement(this);
-
-		notifyAttrReplaced(attr, null);
-		return attr;
-	}
-
-	/**
-	 * cloneAttributes method
-	 * 
-	 * @param newOwner
-	 *            org.w3c.dom.Element
-	 */
-	protected void cloneAttributes(Element newOwner) {
-		if (newOwner == null || newOwner == this)
-			return;
-
-		ElementImpl element = (ElementImpl) newOwner;
-		element.removeAttributes();
-
-		if (this.attrNodes == null)
-			return;
-
-		int length = this.attrNodes.getLength();
-		for (int i = 0; i < length; i++) {
-			Node node = this.attrNodes.item(i);
-			if (node == null)
-				continue;
-			Attr cloned = (Attr) node.cloneNode(false);
-			if (cloned != null)
-				element.appendAttributeNode(cloned);
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		ElementImpl cloned = new ElementImpl(this);
-		if (deep)
-			cloneChildNodes(cloned, deep);
-		return cloned;
-	}
-
-	/**
-	 * getAttribute method
-	 * 
-	 * @return java.lang.String
-	 * @param name
-	 *            java.lang.String
-	 */
-	public String getAttribute(String name) {
-		Attr attr = getAttributeNode(name);
-		if (attr == null)
-			return null;
-		return attr.getValue();
-	}
-
-	/**
-	 * getAttributeNode method
-	 * 
-	 * @return org.w3c.dom.Attr
-	 * @param name
-	 *            java.lang.String
-	 */
-	public Attr getAttributeNode(String name) {
-		if (name == null)
-			return null; // invalid parameter
-		if (this.attrNodes == null)
-			return null; // no attribute
-
-		int length = this.attrNodes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) this.attrNodes.item(i);
-			if (attr == null)
-				continue;
-			if (attr.matchName(name))
-				return attr; // found
-		}
-
-		return null; // not found
-	}
-
-	/**
-	 */
-	public Attr getAttributeNodeNS(String uri, String name) {
-		if (name == null)
-			return null; // invalid parameter
-		if (this.attrNodes == null)
-			return null; // no attribute
-
-		int length = this.attrNodes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) this.attrNodes.item(i);
-			if (attr == null)
-				continue;
-			String localName = attr.getLocalName();
-			if (localName == null || !localName.equals(name))
-				continue;
-			String nsURI = attr.getNamespaceURI();
-			if (uri == null) {
-				if (nsURI != null)
-					continue;
-			}
-			else {
-				if (nsURI == null || !nsURI.equals(uri))
-					continue;
-			}
-
-			// found
-			return attr;
-		}
-
-		return null; // not found
-	}
-
-	/**
-	 */
-	public String getAttributeNS(String uri, String name) {
-		Attr attr = getAttributeNodeNS(uri, name);
-		if (attr == null)
-			return null;
-		return attr.getValue();
-	}
-
-	/**
-	 * getAttributes method
-	 * 
-	 * @return org.w3c.dom.NamedNodeMap
-	 */
-	public NamedNodeMap getAttributes() {
-		return new Attributes();
-	}
-
-	/**
-	 */
-	protected CMElementDeclaration getDeclaration() {
-		Document document = getOwnerDocument();
-		if (document == null)
-			return null;
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-		if (modelQuery == null)
-			return null;
-		return modelQuery.getCMElementDeclaration(this);
-	}
-
-	/**
-	 * getElementsByTagName method
-	 * 
-	 * @return org.w3c.dom.NodeList
-	 * @param tagName
-	 *            java.lang.String
-	 */
-	public NodeList getElementsByTagName(String tagName) {
-		if (tagName == null)
-			return new NodeListImpl();
-
-		DocumentImpl document = (DocumentImpl) getOwnerDocument();
-		if (document == null)
-			return new NodeListImpl();
-		NodeIterator it = document.createNodeIterator(this, NodeFilter.SHOW_ALL, null, false);
-		if (it == null)
-			return new NodeListImpl();
-		NodeListImpl elements = new NodeListImpl();
-
-		if (tagName.length() == 1 && tagName.charAt(0) == '*') {
-			tagName = null; // do not care
-		}
-
-		for (Node node = it.nextNode(); node != null; node = it.nextNode()) {
-			if (node.getNodeType() != ELEMENT_NODE)
-				continue;
-			if (tagName != null) {
-				ElementImpl element = (ElementImpl) node;
-				if (!element.matchTagName(tagName))
-					continue;
-			}
-			elements.appendNode(node);
-		}
-
-		return elements;
-	}
-
-	/**
-	 */
-	public NodeList getElementsByTagNameNS(String uri, String tagName) {
-		if (tagName == null)
-			return new NodeListImpl();
-
-		DocumentImpl document = (DocumentImpl) getOwnerDocument();
-		if (document == null)
-			return new NodeListImpl();
-		NodeIterator it = document.createNodeIterator(this, NodeFilter.SHOW_ALL, null, false);
-		if (it == null)
-			return new NodeListImpl();
-		NodeListImpl elements = new NodeListImpl();
-
-		if (uri != null && uri.length() == 1 && uri.charAt(0) == '*') {
-			uri = null; // do not care
-		}
-		if (tagName.length() == 1 && tagName.charAt(0) == '*') {
-			tagName = null; // do not care
-		}
-
-		for (Node node = it.nextNode(); node != null; node = it.nextNode()) {
-			if (node.getNodeType() != ELEMENT_NODE)
-				continue;
-			ElementImpl element = (ElementImpl) node;
-			if (tagName != null) {
-				String localName = element.getLocalName();
-				if (localName == null || !localName.equals(tagName))
-					continue;
-			}
-			if (uri != null) {
-				String nsURI = element.getNamespaceURI();
-				if (nsURI == null || !nsURI.equals(uri))
-					continue;
-			}
-			elements.appendNode(element);
-		}
-
-		return elements;
-	}
-
-	/**
-	 * getEndOffset method
-	 * 
-	 * @return int
-	 */
-	public int getEndOffset() {
-		if (this.endStructuredDocumentRegion != null)
-			return this.endStructuredDocumentRegion.getEnd();
-		return super.getEndOffset();
-	}
-
-	/**
-	 * getEndStartOffset method
-	 * 
-	 * @return int
-	 */
-	public int getEndStartOffset() {
-		if (this.endStructuredDocumentRegion != null)
-			return this.endStructuredDocumentRegion.getStart();
-		return super.getEndOffset();
-	}
-
-	/**
-	 * getEndStructuredDocumentRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getEndStructuredDocumentRegion() {
-		return this.endStructuredDocumentRegion;
-	}
-
-	/**
-	 */
-	public String getEndTagName() {
-		if (this.endStructuredDocumentRegion == null)
-			return null;
-
-		ITextRegionList regions = this.endStructuredDocumentRegion.getRegions();
-		if (regions == null)
-			return null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_TAG_NAME || isNestedEndTag(regionType)) {
-				return this.endStructuredDocumentRegion.getText(region);
-			}
-		}
-
-		return null;
-	}
-
-	protected boolean isNestedEndTag(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	/**
-	 * getFirstStructuredDocumentRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getFirstStructuredDocumentRegion() {
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode != null)
-			return StructuredDocumentRegionUtil.getStructuredDocumentRegion(flatNode);
-		return StructuredDocumentRegionUtil.getStructuredDocumentRegion(this.endStructuredDocumentRegion);
-	}
-
-	/**
-	 * getLastStructuredDocumentRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getLastStructuredDocumentRegion() {
-		if (this.endStructuredDocumentRegion != null)
-			return StructuredDocumentRegionUtil.getStructuredDocumentRegion(this.endStructuredDocumentRegion);
-		return StructuredDocumentRegionUtil.getStructuredDocumentRegion(getStructuredDocumentRegion());
-	}
-
-	/**
-	 */
-	public String getLocalName() {
-		if (this.tagName == null)
-			return null;
-		int index = this.tagName.indexOf(':');
-		if (index < 0)
-			return this.tagName;
-		return this.tagName.substring(index + 1);
-	}
-
-	/**
-	 */
-	public String getNamespaceURI() {
-		String nsAttrName = null;
-		String prefix = getPrefix();
-		if (prefix != null && prefix.length() > 0) {
-			nsAttrName = XMLNamespace.XMLNS_PREFIX + prefix;
-		}
-		else {
-			nsAttrName = XMLNamespace.XMLNS;
-		}
-
-		for (Node node = this; node != null; node = node.getParentNode()) {
-			if (node.getNodeType() != ELEMENT_NODE)
-				break;
-			Element element = (Element) node;
-			Attr attr = element.getAttributeNode(nsAttrName);
-			if (attr != null)
-				return attr.getValue();
-		}
-
-		return this.namespaceURI;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return getTagName();
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return ELEMENT_NODE;
-	}
-
-	/**
-	 */
-	public String getPrefix() {
-		if (this.tagName == null)
-			return null;
-		int index = this.tagName.indexOf(':');
-		if (index <= 0)
-			return null;
-		// exclude JSP tag in tag name
-		if (this.tagName.charAt(0) == '<')
-			return null;
-		return this.tagName.substring(0, index);
-	}
-
-	/**
-	 * getStartEndOffset method
-	 * 
-	 * @return int
-	 */
-	public int getStartEndOffset() {
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode != null)
-			return flatNode.getEnd();
-		return super.getStartOffset();
-	}
-
-	/**
-	 * getStartOffset method
-	 * 
-	 * @return int
-	 */
-	public int getStartOffset() {
-		if (getStartStructuredDocumentRegion() == null && this.endStructuredDocumentRegion != null && !hasChildNodes()) {
-			return this.endStructuredDocumentRegion.getStart();
-		}
-		return super.getStartOffset();
-	}
-
-	/**
-	 * getStartStructuredDocumentRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getStartStructuredDocumentRegion() {
-		return getStructuredDocumentRegion();
-	}
-
-	/**
-	 * getTagName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getTagName() {
-		if (this.tagName == null)
-			return new String();
-		return this.tagName;
-	}
-
-	/**
-	 */
-	public boolean hasAttribute(String name) {
-		return (getAttributeNode(name) != null);
-	}
-
-	/**
-	 */
-	public boolean hasAttributeNS(String uri, String name) {
-		return (getAttributeNodeNS(uri, name) != null);
-	}
-
-	/**
-	 */
-	public boolean hasAttributes() {
-		return (this.attrNodes != null && this.attrNodes.getLength() > 0);
-	}
-
-	/**
-	 * hasEndTag method
-	 * 
-	 * @return boolean
-	 */
-	public boolean hasEndTag() {
-		return (this.endStructuredDocumentRegion != null);
-	}
-
-	/**
-	 */
-	protected final boolean hasPrefix() {
-		if (this.tagName == null)
-			return false;
-		if (this.tagName.indexOf(':') <= 0)
-			return false;
-		// exclude JSP tag in tag name
-		if (this.tagName.charAt(0) == '<')
-			return false;
-		return true;
-	}
-
-	/**
-	 * hasStartTag method
-	 * 
-	 * @return boolean
-	 */
-	public boolean hasStartTag() {
-		return (getStructuredDocumentRegion() != null);
-	}
-
-	/**
-	 */
-	protected final boolean ignoreCase() {
-		DocumentImpl document = (DocumentImpl) getOwnerDocument();
-		if (document != null && document.ignoreCase()) {
-			// even in case insensitive document, if having prefix, it's case
-			// sensitive tag
-			return !hasPrefix();
-		}
-		return false;
-	}
-
-	/**
-	 */
-	protected Attr insertAttributeNode(Attr newAttr, int index) {
-		if (newAttr == null)
-			return null;
-		AttrImpl attr = (AttrImpl) newAttr;
-		if (attr.getOwnerElement() != null)
-			return null;
-
-		if (this.attrNodes == null)
-			this.attrNodes = new NodeListImpl();
-		this.attrNodes.insertNode(attr, index);
-		attr.setOwnerElement(this);
-
-		notifyAttrReplaced(attr, null);
-		return attr;
-	}
-
-	/**
-	 * insertBefore method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param refChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node insertBefore(Node newChild, Node refChild) throws DOMException {
-		// should throw DOMException instead of return null?
-		if (newChild == null)
-			return null;
-		if (!isContainer()) { // never be container
-			throw new DOMException(DOMException.HIERARCHY_REQUEST_ERR, new String());
-		}
-		if (newChild.getNodeType() != TEXT_NODE) {
-			if (isJSPContainer() || isCDATAContainer()) { // accepts only
-				// Text
-				// child
-				throw new DOMException(DOMException.HIERARCHY_REQUEST_ERR, new String());
-			}
-		}
-		return super.insertBefore(newChild, refChild);
-	}
-
-	/**
-	 */
-	protected boolean isCDATAContainer() {
-		// use BlockMaker instead of CMElementDeclaration
-		// because <style> and <script> in XHTML is not CDATA content type
-		XMLModel model = getModel();
-		if (model == null)
-			return false; // error
-		IStructuredDocument structuredDocument = model.getStructuredDocument();
-		if (structuredDocument == null)
-			return false; // eror
-		RegionParser parser = structuredDocument.getParser();
-		if (parser == null || !(parser instanceof XMLSourceParser))
-			return false;
-		return (((XMLSourceParser) parser).getBlockMarker(this.tagName) != null);
-		/*
-		 * CMElementDeclaration decl = getDeclaration(); if (decl == null)
-		 * return false; if (decl instanceof CMNodeWrapper) { decl =
-		 * (CMElementDeclaration)((CMNodeWrapper)decl).getOriginNode(); if
-		 * (decl == null) return false; } if (decl instanceof
-		 * TLDElementDeclaration) { String content =
-		 * ((TLDElementDeclaration)decl).getBodycontent(); if (content ==
-		 * null) return false; return
-		 * content.equals(JSP11TLDNames.CONTENT_TAGDEPENDENT); } if
-		 * (!isGlobalTag()) return false; return (decl.getContentType() ==
-		 * CMElementDeclaration.CDATA);
-		 */
-	}
-
-	/**
-	 */
-	public boolean isClosed() {
-		IStructuredDocumentRegion flatNode = null;
-		if (isEmptyTag() || !isContainer()) {
-			flatNode = getStructuredDocumentRegion();
-			if (flatNode == null)
-				return true; // will be generated
-		}
-		else {
-			flatNode = getEndStructuredDocumentRegion();
-			if (flatNode == null)
-				return false; // must be generated
-		}
-		String regionType = StructuredDocumentRegionUtil.getLastRegionType(flatNode);
-		if (isCommentTag()) {
-			return (isNestedClosedComment(regionType) || regionType == XMLRegionContext.XML_COMMENT_CLOSE);
-		}
-		if (isJSPTag()) {
-			return isNestedClosed(regionType);
-		}
-		return (regionType == XMLRegionContext.XML_TAG_CLOSE || regionType == XMLRegionContext.XML_EMPTY_TAG_CLOSE || regionType == XMLRegionContext.XML_DECLARATION_CLOSE);
-	}
-
-	protected boolean isNestedClosed(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	protected boolean isNestedClosedComment(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	/**
-	 */
-	public final boolean isCommentTag() {
-		return this.isCommentTag;
-	}
-
-	/**
-	 * isContainer method
-	 * 
-	 * @return boolean
-	 */
-	public boolean isContainer() {
-		if (isCommentTag()) {
-			CommentElementAdapter adapter = (CommentElementAdapter) getAdapterFor(CommentElementAdapter.class);
-			if (adapter != null) {
-				return (adapter.isContainer());
-			}
-			return (getDeclaration() == null);
-		}
-		if (isJSPTag()) {
-			// exclude JSP directive
-			return (matchTagName(JSPTag.JSP_SCRIPTLET) || matchTagName(JSPTag.JSP_DECLARATION) || matchTagName(JSPTag.JSP_EXPRESSION));
-		}
-		if (!isXMLTag()) { // non-XML tag
-			CMElementDeclaration decl = getDeclaration();
-			if (decl == null)
-				return false; // undefined tag
-			return (decl.getContentType() != CMElementDeclaration.EMPTY);
-		}
-		return true;
-	}
-
-	/**
-	 * isEmptyTag method
-	 * 
-	 * @return boolean
-	 */
-	public boolean isEmptyTag() {
-		if (isJSPTag())
-			return false;
-		if (isCommentTag())
-			return false;
-		if (!isXMLTag())
-			return false;
-		return this.isEmptyTag;
-	}
-
-	/**
-	 */
-	public boolean isEndTag() {
-		return (hasEndTag() && !hasStartTag() && !hasChildNodes());
-	}
-
-	/**
-	 */
-	public boolean isGlobalTag() {
-		return !hasPrefix();
-	}
-
-	/**
-	 */
-	public boolean isImplicitTag() {
-		if (hasStartTag() || hasEndTag())
-			return false;
-		// make sure this is in the document tree
-		// because if not in the document tree, no tags are generated yet
-		return (getContainerDocument() != null);
-	}
-
-	/**
-	 */
-	public boolean isJSPContainer() {
-		return (isJSPTag() && !isCommentTag() && isContainer());
-	}
-
-	/**
-	 * isJSPTag method
-	 * 
-	 * @return boolean
-	 */
-	public final boolean isJSPTag() {
-		return this.isJSPTag;
-	}
-
-	/**
-	 */
-	public boolean isStartTagClosed() {
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return true; // will be generated
-		String regionType = StructuredDocumentRegionUtil.getLastRegionType(flatNode);
-		if (isCommentTag()) {
-			return (isNestedClosedComment(regionType) || regionType == XMLRegionContext.XML_COMMENT_CLOSE);
-		}
-		if (isJSPTag()) {
-			if (isContainer())
-				return true; // start tag always has a single region
-			return isClosedNestedDirective(regionType);
-		}
-		return (regionType == XMLRegionContext.XML_TAG_CLOSE || regionType == XMLRegionContext.XML_EMPTY_TAG_CLOSE || regionType == XMLRegionContext.XML_DECLARATION_CLOSE);
-	}
-
-	protected boolean isClosedNestedDirective(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	/**
-	 */
-	public final boolean isXMLTag() {
-		if (isJSPTag())
-			return false;
-		if (isCommentTag())
-			return false;
-		DocumentImpl document = (DocumentImpl) getOwnerDocument();
-		if (document != null && !document.isXMLType()) {
-			// even in non-XML document, if having prefix, it's XML tag
-			return hasPrefix();
-		}
-		return true;
-	}
-
-	/**
-	 */
-	protected boolean matchEndTag(Element element) {
-		if (element == null)
-			return false;
-		ElementImpl impl = (ElementImpl) element;
-		if (isJSPTag() && !isCommentTag()) {
-			return (impl.isJSPTag() && !impl.isCommentTag());
-		}
-		return matchTagName(element.getTagName());
-	}
-
-	/**
-	 * matchTagName method
-	 * 
-	 * @return boolean
-	 * @param tagName
-	 *            java.lang.String
-	 */
-	public boolean matchTagName(String tagName) {
-		if (tagName == null)
-			return (this.tagName == null);
-		if (this.tagName == null)
-			return false;
-		if (!ignoreCase())
-			return this.tagName.equals(tagName);
-		return this.tagName.equalsIgnoreCase(tagName);
-	}
-
-	/**
-	 * notifyAttrReplaced method
-	 * 
-	 * @param newAttr
-	 *            org.w3c.dom.Attr
-	 * @param oldAttr
-	 *            org.w3c.dom.Attr
-	 */
-	protected void notifyAttrReplaced(Attr newAttr, Attr oldAttr) {
-		DocumentImpl document = (DocumentImpl) getContainerDocument();
-		if (document == null)
-			return;
-		XMLModelImpl model = (XMLModelImpl) document.getModel();
-		if (model == null)
-			return;
-		model.attrReplaced(this, newAttr, oldAttr);
-	}
-
-	/**
-	 * notifyValueChanged method
-	 */
-	public void notifyEndTagChanged() {
-		DocumentImpl document = (DocumentImpl) getContainerDocument();
-		if (document == null)
-			return;
-		XMLModelImpl model = (XMLModelImpl) document.getModel();
-		if (model == null)
-			return;
-		model.endTagChanged(this);
-	}
-
-	/**
-	 */
-	public void notifyStartTagChanged() {
-		DocumentImpl document = (DocumentImpl) getContainerDocument();
-		if (document == null)
-			return;
-		XMLModelImpl model = (XMLModelImpl) document.getModel();
-		if (model == null)
-			return;
-		model.startTagChanged(this);
-	}
-
-	/**
-	 */
-	public boolean preferEmptyTag() {
-		if (hasChildNodes())
-			return false;
-		if (isJSPTag())
-			return false;
-		if (isCommentTag())
-			return false;
-		if (!isXMLTag())
-			return false;
-		CMElementDeclaration decl = getDeclaration();
-		if (decl == null)
-			return false;
-		return (decl.getContentType() == CMElementDeclaration.EMPTY);
-	}
-
-	/**
-	 * removeAttribute method
-	 * 
-	 * @param name
-	 *            java.lang.String
-	 */
-	public void removeAttribute(String name) throws DOMException {
-		removeAttributeNode(name);
-	}
-
-	/**
-	 * removeAttributeNode method
-	 * 
-	 * @return org.w3c.dom.Attr
-	 * @param oldAttr
-	 *            org.w3c.dom.Attr
-	 */
-	public Attr removeAttributeNode(Attr oldAttr) throws DOMException {
-		if (oldAttr == null)
-			return null; // invalid parameter
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		if (this.attrNodes == null) { // no attribute
-			throw new DOMException(DOMException.NOT_FOUND_ERR, new String());
-		}
-
-		int length = this.attrNodes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) this.attrNodes.item(i);
-			if (attr != oldAttr)
-				continue;
-
-			// found
-			this.attrNodes.removeNode(i);
-			attr.setOwnerElement(null);
-
-			notifyAttrReplaced(null, attr);
-			return attr;
-		}
-
-		// not found
-		throw new DOMException(DOMException.NOT_FOUND_ERR, new String());
-	}
-
-	/**
-	 * removeAttributeNode method
-	 * 
-	 * @return org.w3c.dom.Attr
-	 * @param name
-	 *            java.lang.String
-	 */
-	public Attr removeAttributeNode(String name) {
-		if (name == null)
-			return null; // invalid parameter
-		if (this.attrNodes == null)
-			return null; // no attribute
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		int length = this.attrNodes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) this.attrNodes.item(i);
-			if (attr == null)
-				continue;
-			if (!attr.matchName(name))
-				continue;
-
-			// found
-			this.attrNodes.removeNode(i);
-			attr.setOwnerElement(null);
-
-			notifyAttrReplaced(null, attr);
-			return attr;
-		}
-
-		return null; // not found
-	}
-
-	/**
-	 */
-	public Attr removeAttributeNodeNS(String uri, String name) {
-		if (name == null)
-			return null; // invalid parameter
-		if (this.attrNodes == null)
-			return null; // no attribute
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		int length = this.attrNodes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) this.attrNodes.item(i);
-			if (attr == null)
-				continue;
-			String localName = attr.getLocalName();
-			if (localName == null || !localName.equals(name))
-				continue;
-			String nsURI = attr.getNamespaceURI();
-			if (uri == null) {
-				if (nsURI != null)
-					continue;
-			}
-			else {
-				if (nsURI == null || !nsURI.equals(uri))
-					continue;
-			}
-
-			// found
-			this.attrNodes.removeNode(i);
-			attr.setOwnerElement(null);
-
-			notifyAttrReplaced(null, attr);
-			return attr;
-		}
-
-		return null; // not found
-	}
-
-	/**
-	 */
-	public void removeAttributeNS(String uri, String name) throws DOMException {
-		removeAttributeNodeNS(uri, name);
-	}
-
-	/**
-	 * removeAttributes method
-	 */
-	public void removeAttributes() {
-		if (this.attrNodes == null)
-			return;
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		int length = this.attrNodes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) this.attrNodes.item(i);
-			if (attr != null) {
-				attr.setOwnerElement(null);
-				notifyAttrReplaced(null, attr);
-			}
-		}
-
-		this.attrNodes = null;
-	}
-
-	/**
-	 * removeEndTag method
-	 * 
-	 * @return org.w3c.dom.Element
-	 */
-	protected Element removeEndTag() {
-		if (!hasEndTag())
-			return null;
-		NodeListImpl attrNodes = this.attrNodes;
-		this.attrNodes = null; // not to copy attributes
-		ElementImpl end = (ElementImpl) cloneNode(false);
-		this.attrNodes = attrNodes;
-		if (end == null)
-			return null;
-
-		// move the end flat node to the end tag
-		IStructuredDocumentRegion flatNode = getEndStructuredDocumentRegion();
-		if (flatNode == null)
-			return null;
-		setEndStructuredDocumentRegion(null);
-		end.setEndStructuredDocumentRegion(flatNode);
-		return end;
-	}
-
-	/**
-	 */
-	protected void removeStartTag() {
-		removeAttributes();
-	}
-
-	/**
-	 * Resets attribute values from IStructuredDocumentRegion.
-	 */
-	void resetStructuredDocumentRegions() {
-		if (this.attrNodes != null) {
-			int length = this.attrNodes.getLength();
-			for (int i = 0; i < length; i++) {
-				AttrImpl attr = (AttrImpl) this.attrNodes.item(i);
-				if (attr == null)
-					continue;
-				attr.resetRegions();
-			}
-		}
-
-		super.resetStructuredDocumentRegions(); // for children
-
-		this.endStructuredDocumentRegion = null;
-	}
-
-	/**
-	 * setAttribute method
-	 * 
-	 * @param name
-	 *            java.lang.String
-	 * @param value
-	 *            java.lang.String
-	 */
-	public void setAttribute(String name, String value) throws DOMException {
-		if (name == null)
-			return;
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		Attr attr = getAttributeNode(name);
-		if (attr != null) {
-			attr.setValue(value); // change value
-			return;
-		}
-
-		// new attribute
-		Document doc = getOwnerDocument();
-		if (doc == null)
-			return;
-		attr = doc.createAttribute(name);
-		if (attr == null)
-			return;
-		attr.setValue(value);
-		appendAttributeNode(attr);
-	}
-
-	/**
-	 * setAttributeNode method
-	 * 
-	 * @return org.w3c.dom.Attr
-	 * @param newAttr
-	 *            org.w3c.dom.Attr
-	 */
-	public Attr setAttributeNode(Attr newAttr) throws DOMException {
-		if (newAttr == null)
-			return null; // nothing to do
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		AttrImpl attr = (AttrImpl) newAttr;
-		Element owner = attr.getOwnerElement();
-		if (owner != null) {
-			if (owner == this)
-				return null; // nothing to do
-			throw new DOMException(DOMException.INUSE_ATTRIBUTE_ERR, new String());
-		}
-
-		Attr oldAttr = removeAttributeNode(newAttr.getName());
-		appendAttributeNode(attr);
-		return oldAttr;
-	}
-
-	/**
-	 */
-	public Attr setAttributeNodeNS(Attr newAttr) throws DOMException {
-		if (newAttr == null)
-			return null; // nothing to do
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		AttrImpl attr = (AttrImpl) newAttr;
-		Element owner = attr.getOwnerElement();
-		if (owner != null) {
-			if (owner == this)
-				return null; // nothing to do
-			throw new DOMException(DOMException.INUSE_ATTRIBUTE_ERR, new String());
-		}
-
-		String name = newAttr.getLocalName();
-		String uri = newAttr.getNamespaceURI();
-		Attr oldAttr = removeAttributeNodeNS(uri, name);
-		appendAttributeNode(attr);
-		return oldAttr;
-	}
-
-	/**
-	 */
-	public void setAttributeNS(String uri, String name, String value) throws DOMException {
-		if (name == null)
-			return;
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		Attr attr = getAttributeNodeNS(uri, name);
-		if (attr != null) {
-			attr.setValue(value); // change value
-			return;
-		}
-
-		// new attribute
-		Document doc = getOwnerDocument();
-		if (doc == null)
-			return;
-		attr = doc.createAttributeNS(uri, name);
-		if (attr == null)
-			return;
-		attr.setValue(value);
-		appendAttributeNode(attr);
-	}
-
-	/**
-	 */
-	public void setCommentTag(boolean isCommentTag) {
-		XMLNode parent = (XMLNode) getParentNode();
-		if (parent != null && !parent.isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.isCommentTag = isCommentTag;
-	}
-
-	/**
-	 * setEmptyTag method
-	 * 
-	 * @param isEmptyTag
-	 *            boolean
-	 */
-	public void setEmptyTag(boolean isEmptyTag) {
-		XMLNode parent = (XMLNode) getParentNode();
-		if (parent != null && !parent.isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.isEmptyTag = isEmptyTag;
-	}
-
-	/**
-	 * setEndStructuredDocumentRegion method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	void setEndStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		this.endStructuredDocumentRegion = flatNode;
-
-		NodeContainer parent = (NodeContainer) getParentNode();
-		if (parent != null) {
-			parent.syncChildEditableState(this);
-		}
-	}
-
-	/**
-	 * setJSPTag method
-	 * 
-	 * @param isJSPTag
-	 *            boolean
-	 */
-	public void setJSPTag(boolean isJSPTag) {
-		XMLNode parent = (XMLNode) getParentNode();
-		if (parent != null && !parent.isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.isJSPTag = isJSPTag;
-	}
-
-	/**
-	 */
-	protected void setNamespaceURI(String namespaceURI) {
-		this.namespaceURI = namespaceURI;
-	}
-
-	/**
-	 */
-	protected void setOwnerDocument(Document ownerDocument, boolean deep) {
-		super.setOwnerDocument(ownerDocument, deep);
-
-		if (this.attrNodes == null)
-			return;
-
-		int length = this.attrNodes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) this.attrNodes.item(i);
-			if (attr == null)
-				continue;
-			attr.setOwnerDocument(ownerDocument);
-		}
-	}
-
-	/**
-	 */
-	public void setPrefix(String prefix) throws DOMException {
-		XMLNode parent = (XMLNode) getParentNode();
-		if (parent != null && !parent.isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		int prefixLength = (prefix != null ? prefix.length() : 0);
-		String localName = getLocalName();
-		if (prefixLength == 0) {
-			if (localName == null || localName.length() == 0) {
-				// invalid local name
-				return;
-			}
-			setTagName(localName);
-		}
-		else {
-			int localLength = (localName != null ? localName.length() : 0);
-			StringBuffer buffer = new StringBuffer(prefixLength + 1 + localLength);
-			buffer.append(prefix);
-			buffer.append(':');
-			if (localName != null)
-				buffer.append(localName);
-			setTagName(buffer.toString());
-		}
-
-		boolean changeEndTag = hasEndTag();
-		notifyStartTagChanged();
-		if (changeEndTag)
-			notifyEndTagChanged();
-	}
-
-	/**
-	 * setStartStructuredDocumentRegion method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	void setStartStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		setStructuredDocumentRegion(flatNode);
-	}
-
-	/**
-	 * setTagName method
-	 * 
-	 * @param tagName
-	 *            java.lang.String
-	 */
-	protected void setTagName(String tagName) {
-		this.tagName = tagName;
-	}
-
-	/**
-	 * toString method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		String tagName = getTagName();
-		if (hasStartTag())
-			buffer.append(tagName);
-		if (isEmptyTag())
-			buffer.append('/');
-		if (hasEndTag()) {
-			buffer.append('/');
-			buffer.append(tagName);
-		}
-		if (buffer.length() == 0)
-			buffer.append(tagName);
-
-		IStructuredDocumentRegion startStructuredDocumentRegion = getStartStructuredDocumentRegion();
-		if (startStructuredDocumentRegion != null) {
-			buffer.append('@');
-			buffer.append(startStructuredDocumentRegion.toString());
-		}
-		IStructuredDocumentRegion endStructuredDocumentRegion = getEndStructuredDocumentRegion();
-		if (endStructuredDocumentRegion != null) {
-			buffer.append('@');
-			buffer.append(endStructuredDocumentRegion.toString());
-		}
-		return buffer.toString();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/EntityImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/EntityImpl.java
deleted file mode 100644
index 80e5d6f..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/EntityImpl.java
+++ /dev/null
@@ -1,227 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Entity;
-import org.w3c.dom.Node;
-
-/**
- * EntityImpl class
- */
-public class EntityImpl extends NodeImpl implements Entity {
-
-	private String name = null;
-	private String notationName = null;
-	private String publicId = null;
-	private String systemId = null;
-
-	/**
-	 * EntityImpl constructor
-	 */
-	protected EntityImpl() {
-		super();
-	}
-
-	/**
-	 * EntityImpl constructor
-	 * 
-	 * @param that
-	 *            EntityImpl
-	 */
-	protected EntityImpl(EntityImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.name = that.name;
-			this.publicId = that.publicId;
-			this.systemId = that.systemId;
-			this.notationName = that.notationName;
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		EntityImpl cloned = new EntityImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the text declaration, the encoding
-	 * of this entity, when it is an external parsed entity. This is
-	 * <code>null</code> otherwise.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public java.lang.String getEncoding() {
-		return null;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		if (this.name == null)
-			return new String();
-		return this.name;
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return ENTITY_NODE;
-	}
-
-	/**
-	 * getNotationName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNotationName() {
-		return this.notationName;
-	}
-
-	/**
-	 * getPublicId method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getPublicId() {
-		return this.publicId;
-	}
-
-	/**
-	 * getSystemId method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getSystemId() {
-		return this.systemId;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the text declaration, the version
-	 * number of this entity, when it is an external parsed entity. This is
-	 * <code>null</code> otherwise.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public java.lang.String getVersion() {
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the text declaration, the encoding
-	 * of this entity, when it is an external parsed entity. This is
-	 * <code>null</code> otherwise.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public void setEncoding(java.lang.String encoding) {
-	}
-
-	/**
-	 * setName method
-	 * 
-	 * @param name
-	 *            java.lang.String
-	 */
-	protected void setName(String name) {
-		this.name = name;
-	}
-
-	/**
-	 * setNotationName method
-	 * 
-	 * @param notationName
-	 *            java.lang.String
-	 */
-	public void setNotationName(String notationName) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.notationName = notationName;
-	}
-
-	/**
-	 * setPublicId method
-	 * 
-	 * @param publicId
-	 *            java.lang.String
-	 */
-	public void setPublicId(String publicId) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.publicId = publicId;
-	}
-
-	/**
-	 * setSystemId method
-	 * 
-	 * @param systemId
-	 *            java.lang.String
-	 */
-	public void setSystemId(String systemId) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.systemId = systemId;
-	}
-
-	/**
-	 * <p>
-	 * EXPERIMENTAL! Based on the <a
-	 * href='http://www.w3.org/TR/2001/WD-DOM-Level-3-Core-20010605'>Document
-	 * Object Model (DOM) Level 3 Core Working Draft of 5 June 2001. </a>.
-	 * <p>
-	 * An attribute specifying, as part of the text declaration, the version
-	 * number of this entity, when it is an external parsed entity. This is
-	 * <code>null</code> otherwise.
-	 * 
-	 * @since DOM Level 3
-	 */
-	public void setVersion(java.lang.String version) {
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/EntityReferenceImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/EntityReferenceImpl.java
deleted file mode 100644
index 366ecc0..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/EntityReferenceImpl.java
+++ /dev/null
@@ -1,89 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.w3c.dom.EntityReference;
-import org.w3c.dom.Node;
-
-/**
- * EntityReference class
- */
-public class EntityReferenceImpl extends NodeImpl implements EntityReference {
-
-	private String name = null;
-
-	/**
-	 * EntityReferenceImpl constructor
-	 */
-	protected EntityReferenceImpl() {
-		super();
-	}
-
-	/**
-	 * EntityReferenceImpl constructor
-	 * 
-	 * @param that
-	 *            EntityReferenceImpl
-	 */
-	protected EntityReferenceImpl(EntityReferenceImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.name = that.name;
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		EntityReferenceImpl cloned = new EntityReferenceImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		if (this.name == null)
-			return new String();
-		return this.name;
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return ENTITY_REFERENCE_NODE;
-	}
-
-	/**
-	 * setName method
-	 * 
-	 * @param name
-	 *            java.lang.String
-	 */
-	protected void setName(String name) {
-		this.name = name;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ModelParserAdapter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ModelParserAdapter.java
deleted file mode 100644
index 011079b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ModelParserAdapter.java
+++ /dev/null
@@ -1,55 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- */
-public interface ModelParserAdapter extends INodeAdapter {
-
-	/**
-	 */
-	public boolean canBeImplicitTag(Element element);
-
-	/**
-	 */
-	public boolean canBeImplicitTag(Element element, Node child);
-
-	/**
-	 */
-	public boolean canContain(Element element, Node child);
-
-	/**
-	 */
-	public Element createCommentElement(Document document, String data, boolean isJSPTag);
-
-	/**
-	 */
-	public Element createImplicitElement(Document document, Node parent, Node child);
-
-	/**
-	 */
-	public String getFindRootName(String tagName);
-
-	/**
-	 */
-	public boolean isEndTag(XMLElement element);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeContainer.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeContainer.java
deleted file mode 100644
index 121d57c..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeContainer.java
+++ /dev/null
@@ -1,514 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentFragment;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-/**
- * NodeContainer class
- */
-public abstract class NodeContainer extends NodeImpl implements Node, NodeList {
-
-	/**
-	 */
-	private class ChildNodesCache implements NodeList {
-		private Node curChild = null;
-		private int curIndex = -1;
-		private int length = 0;
-
-		ChildNodesCache() {
-			initializeCache();
-		}
-
-		public int getLength() {
-			// atomic
-			return this.length;
-		}
-
-		private void initializeCache() {
-			// note we use the outter objects lockobject
-			// (since we are using their "children".
-			synchronized (lockObject) {
-				for (Node child = firstChild; child != null; child = child.getNextSibling()) {
-					this.length++;
-				}
-			}
-		}
-
-		public Node item(int index) {
-			synchronized (lockObject) {
-				if (this.length == 0)
-					return null;
-				if (index < 0)
-					return null;
-				if (index >= this.length)
-					return null;
-
-				if (this.curIndex < 0) { // first time
-					if (index * 2 >= this.length) { // search from the last
-						this.curIndex = this.length - 1;
-						this.curChild = lastChild;
-					} else { // search from the first
-						this.curIndex = 0;
-						this.curChild = firstChild;
-					}
-				}
-
-				if (index == this.curIndex)
-					return this.curChild;
-
-				if (index > this.curIndex) {
-					while (index > this.curIndex) {
-						this.curIndex++;
-						this.curChild = this.curChild.getNextSibling();
-					}
-				} else { // index < this.curIndex
-					while (index < this.curIndex) {
-						this.curIndex--;
-						this.curChild = this.curChild.getPreviousSibling();
-					}
-				}
-
-				return this.curChild;
-			}
-		}
-	}
-
-	private NodeList childNodesCache = null;
-
-	private boolean fChildEditable = true;
-	NodeImpl firstChild = null;
-	NodeImpl lastChild = null;
-
-	Object lockObject = new byte[0];
-
-	/**
-	 * NodeContainer constructor
-	 */
-	protected NodeContainer() {
-		super();
-	}
-
-	/**
-	 * NodeContainer constructor
-	 * 
-	 * @param that
-	 *            NodeContainer
-	 */
-	protected NodeContainer(NodeContainer that) {
-		super(that);
-	}
-
-	/**
-	 * appendChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node appendChild(Node newChild) throws DOMException {
-		return insertBefore(newChild, null);
-	}
-
-	/**
-	 * cloneChildNodes method
-	 * 
-	 * @param container
-	 *            org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	protected void cloneChildNodes(Node newParent, boolean deep) {
-		if (newParent == null || newParent == this)
-			return;
-		if (!(newParent instanceof NodeContainer))
-			return;
-
-		NodeContainer container = (NodeContainer) newParent;
-		container.removeChildNodes();
-
-		for (Node child = getFirstChild(); child != null; child = child.getNextSibling()) {
-			Node cloned = child.cloneNode(deep);
-			if (cloned != null)
-				container.appendChild(cloned);
-		}
-	}
-
-	/**
-	 * getChildNodes method
-	 * 
-	 * @return org.w3c.dom.NodeList
-	 */
-	public NodeList getChildNodes() {
-		return this;
-	}
-
-	/**
-	 * getFirstChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node getFirstChild() {
-		return this.firstChild;
-	}
-
-	/**
-	 * getLastChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node getLastChild() {
-		return this.lastChild;
-	}
-
-	/**
-	 * getLength method
-	 * 
-	 * @return int
-	 */
-	public int getLength() {
-		if (this.firstChild == null)
-			return 0;
-		synchronized (lockObject) {
-			if (this.childNodesCache == null)
-				this.childNodesCache = new ChildNodesCache();
-			return this.childNodesCache.getLength();
-		}
-	}
-
-	/**
-	 */
-	public String getSource() {
-		StringBuffer buffer = new StringBuffer();
-
-		IStructuredDocumentRegion startStructuredDocumentRegion = getStartStructuredDocumentRegion();
-		if (startStructuredDocumentRegion != null) {
-			String source = startStructuredDocumentRegion.getText();
-			if (source != null)
-				buffer.append(source);
-		}
-
-		for (NodeImpl child = firstChild; child != null; child = (NodeImpl) child.getNextSibling()) {
-			String source = child.getSource();
-			if (source != null)
-				buffer.append(source);
-		}
-
-		IStructuredDocumentRegion endStructuredDocumentRegion = getEndStructuredDocumentRegion();
-		if (endStructuredDocumentRegion != null) {
-			String source = endStructuredDocumentRegion.getText();
-			if (source != null)
-				buffer.append(source);
-		}
-
-		return buffer.toString();
-	}
-
-	/**
-	 * hasChildNodes method
-	 * 
-	 * @return boolean
-	 */
-	public boolean hasChildNodes() {
-		return (this.firstChild != null);
-	}
-
-	/**
-	 * insertBefore method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param refChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node insertBefore(Node newChild, Node refChild) throws DOMException {
-		if (newChild == null)
-			return null; // nothing to do
-		if (refChild != null && refChild.getParentNode() != this) {
-			throw new DOMException(DOMException.NOT_FOUND_ERR, new String());
-		}
-		if (!isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		if (newChild == refChild)
-			return newChild; // nothing to do
-
-		if (newChild.getNodeType() == DOCUMENT_FRAGMENT_NODE) {
-			// insert child nodes instead
-			for (Node child = newChild.getFirstChild(); child != null; child = newChild.getFirstChild()) {
-				newChild.removeChild(child);
-				insertBefore(child, refChild);
-			}
-			return newChild;
-		}
-		// synchronized in case another thread is getting item, or length
-		synchronized (lockObject) {
-			this.childNodesCache = null; // invalidate child nodes cache
-		}
-
-		NodeImpl child = (NodeImpl) newChild;
-		NodeImpl next = (NodeImpl) refChild;
-		NodeImpl prev = null;
-		Node oldParent = child.getParentNode();
-		if (oldParent != null)
-			oldParent.removeChild(child);
-		if (next == null) {
-			prev = this.lastChild;
-			this.lastChild = child;
-		} else {
-			prev = (NodeImpl) next.getPreviousSibling();
-			next.setPreviousSibling(child);
-		}
-		if (prev == null)
-			this.firstChild = child;
-		else
-			prev.setNextSibling(child);
-		child.setPreviousSibling(prev);
-		child.setNextSibling(next);
-		child.setParentNode(this);
-		// make sure having the same owner document
-		if (child.getOwnerDocument() == null) {
-			if (getNodeType() == DOCUMENT_NODE) {
-				child.setOwnerDocument((Document) this);
-			} else {
-				child.setOwnerDocument(getOwnerDocument());
-			}
-		}
-
-		notifyChildReplaced(child, null);
-
-		return child;
-	}
-
-	public boolean isChildEditable() {
-		if (!fChildEditable) {
-			XMLModelImpl model = (XMLModelImpl) getModel();
-			if (model != null && model.isReparsing()) {
-				return true;
-			}
-		}
-		return fChildEditable;
-	}
-
-	/**
-	 * isContainer method
-	 * 
-	 * @return boolean
-	 */
-	public boolean isContainer() {
-		return true;
-	}
-
-	/**
-	 * item method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param index
-	 *            int
-	 */
-	public Node item(int index) {
-		if (this.firstChild == null)
-			return null;
-		synchronized (lockObject) {
-			if (this.childNodesCache == null)
-				this.childNodesCache = new ChildNodesCache();
-			return this.childNodesCache.item(index);
-		}
-	}
-
-	/**
-	 * notifyChildReplaced method
-	 * 
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	protected void notifyChildReplaced(Node newChild, Node oldChild) {
-		DocumentImpl document = (DocumentImpl) getContainerDocument();
-		if (document == null)
-			return;
-
-		syncChildEditableState(newChild);
-
-		XMLModelImpl model = (XMLModelImpl) document.getModel();
-		if (model == null)
-			return;
-		model.childReplaced(this, newChild, oldChild);
-	}
-
-	/**
-	 * removeChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node removeChild(Node oldChild) throws DOMException {
-		if (oldChild == null)
-			return null;
-		if (oldChild.getParentNode() != this) {
-			throw new DOMException(DOMException.NOT_FOUND_ERR, new String());
-		}
-
-		if (!isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		// synchronized in case another thread is getting item, or length
-		synchronized (lockObject) {
-			this.childNodesCache = null; // invalidate child nodes cache
-		}
-
-		NodeImpl child = (NodeImpl) oldChild;
-		NodeImpl prev = (NodeImpl) child.getPreviousSibling();
-		NodeImpl next = (NodeImpl) child.getNextSibling();
-
-		child.setEditable(true, true); // clear ReadOnly flags
-
-		if (prev == null)
-			this.firstChild = next;
-		else
-			prev.setNextSibling(next);
-		if (next == null)
-			this.lastChild = prev;
-		else
-			next.setPreviousSibling(prev);
-		child.setPreviousSibling(null);
-		child.setNextSibling(null);
-		child.setParentNode(null);
-
-		notifyChildReplaced(null, child);
-
-		return child;
-	}
-
-	/**
-	 * removeChildNodes method
-	 */
-	public void removeChildNodes() {
-		if (!isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		Node nextChild = null;
-		for (Node child = getFirstChild(); child != null; child = nextChild) {
-			nextChild = child.getNextSibling();
-			removeChild(child);
-		}
-	}
-
-	/**
-	 * removeChildNodes method
-	 * 
-	 * @return org.w3c.dom.DocumentFragment
-	 * @param firstChild
-	 *            org.w3c.dom.Node
-	 * @param lastChild
-	 *            org.w3c.dom.Node
-	 */
-	public DocumentFragment removeChildNodes(Node firstChild, Node lastChild) {
-		if (!hasChildNodes())
-			return null;
-		if (!isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		Document document = null;
-		if (getNodeType() == DOCUMENT_NODE)
-			document = (Document) this;
-		else
-			document = getOwnerDocument();
-		if (document == null)
-			return null;
-		DocumentFragment fragment = document.createDocumentFragment();
-		if (fragment == null)
-			return null;
-
-		if (firstChild == null)
-			firstChild = getFirstChild();
-		if (lastChild == null)
-			lastChild = getLastChild();
-		Node nextChild = null;
-		for (Node child = firstChild; child != null; child = nextChild) {
-			nextChild = child.getNextSibling();
-			removeChild(child);
-			fragment.appendChild(child);
-			if (child == lastChild)
-				break;
-		}
-
-		return fragment;
-	}
-
-	/**
-	 * replaceChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node replaceChild(Node newChild, Node oldChild) throws DOMException {
-		if (!isChildEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		if (oldChild == null)
-			return newChild;
-		if (newChild != null)
-			insertBefore(newChild, oldChild);
-		return removeChild(oldChild);
-	}
-
-	public void setChildEditable(boolean editable) {
-		if (fChildEditable == editable) {
-			return;
-		}
-
-		ReadOnlyController roc = ReadOnlyController.getInstance();
-		Node node;
-		if (editable) {
-			for (node = getFirstChild(); node != null; node = node.getNextSibling()) {
-				roc.unlockNode((XMLNode) node);
-			}
-		} else {
-			for (node = getFirstChild(); node != null; node = node.getNextSibling()) {
-				roc.lockNode((XMLNode) node);
-			}
-		}
-
-		fChildEditable = editable;
-		notifyEditableChanged();
-	}
-
-	protected void syncChildEditableState(Node child) {
-		ReadOnlyController roc = ReadOnlyController.getInstance();
-		if (fChildEditable) {
-			roc.unlockNode((NodeImpl) child);
-		} else {
-			roc.lockNode((NodeImpl) child);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeImpl.java
deleted file mode 100644
index db75e89..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeImpl.java
+++ /dev/null
@@ -1,809 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.AbstractNotifier;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.document.InvalidCharacterException;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.DOMImplementation;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentFragment;
-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;
-
-
-/**
- * NodeImpl class
- */
-public abstract class NodeImpl extends AbstractNotifier implements XMLNode {
-	// define one empty nodelist, for repeated use
-	private final static NodeList EMPTY_NODE_LIST = new NodeListImpl();
-
-	private boolean fDataEditable = true;
-	private IStructuredDocumentRegion flatNode = null;
-	private NodeImpl nextSibling = null;
-
-	private DocumentImpl ownerDocument = null;
-	private NodeImpl parentNode = null;
-	private NodeImpl previousSibling = null;
-
-	/**
-	 * NodeImpl constructor
-	 */
-	protected NodeImpl() {
-		super();
-	}
-
-	/**
-	 * NodeImpl constructor
-	 * 
-	 * @param that
-	 *            NodeImpl
-	 */
-	protected NodeImpl(NodeImpl that) {
-		if (that != null) {
-			this.ownerDocument = that.ownerDocument;
-		}
-	}
-
-	/**
-	 * appendChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node appendChild(Node newChild) throws DOMException {
-		throw new DOMException(DOMException.HIERARCHY_REQUEST_ERR, new String());
-	}
-
-	/**
-	 * contains method
-	 * 
-	 * @return boolean
-	 * @param offset
-	 *            int
-	 */
-	public boolean contains(int offset) {
-		return (offset >= getStartOffset() && offset < getEndOffset());
-	}
-
-	/**
-	 * @param s
-	 * @param tagName
-	 * @return
-	 */
-	protected String createDOMExceptionMessage(short s, String tagName) {
-		String result = null;
-		// TODO: Should localize these messages, and provide /u escaped
-		// version of tagName
-		result = lookupMessage(s) + " " + tagName; //$NON-NLS-1$
-		return result;
-	}
-
-	/**
-	 * getAttributes method
-	 * 
-	 * @return org.w3c.dom.NamedNodeMap
-	 */
-	public NamedNodeMap getAttributes() {
-		return null;
-	}
-
-	/**
-	 */
-	protected String getCharValue(String name) {
-		DocumentImpl document = (DocumentImpl) getOwnerDocument();
-		if (document == null)
-			return null;
-		return document.getCharValue(name);
-	}
-
-	/**
-	 * getChildNodes method
-	 * 
-	 * @return org.w3c.dom.NodeList
-	 */
-	public NodeList getChildNodes() {
-		// As per DOM spec, correct behavior for getChildNodes is to return a
-		// zero length NodeList, not null, when there are no children.
-		// We'll use a common instance of an empty node list, just to prevent
-		// creating a trival object many many times.
-
-		return EMPTY_NODE_LIST;
-	}
-
-	/**
-	 * getCommonAncestor method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	public Node getCommonAncestor(Node node) {
-		if (node == null)
-			return null;
-
-		for (Node na = node; na != null; na = na.getParentNode()) {
-			for (Node ta = this; ta != null; ta = ta.getParentNode()) {
-				if (ta == na)
-					return ta;
-			}
-		}
-
-		return null; // not found
-	}
-
-	/**
-	 * getContainerDocument method
-	 * 
-	 * @return org.w3c.dom.Document
-	 */
-	public Document getContainerDocument() {
-		for (Node node = this; node != null; node = node.getParentNode()) {
-			if (node.getNodeType() == Node.DOCUMENT_NODE) {
-				return (Document) node;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * getEndOffset method
-	 * 
-	 * @return int
-	 */
-	public int getEndOffset() {
-		Node node = this;
-		while (node != null) {
-			if (node.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl element = (ElementImpl) node;
-				IStructuredDocumentRegion endStructuredDocumentRegion = element.getEndStructuredDocumentRegion();
-				if (endStructuredDocumentRegion != null)
-					return endStructuredDocumentRegion.getEnd();
-			}
-
-			Node last = node.getLastChild();
-			if (last != null) { // dig into the last
-				node = last;
-				continue;
-			}
-
-			IStructuredDocumentRegion lastStructuredDocumentRegion = ((NodeImpl) node).getStructuredDocumentRegion();
-			if (lastStructuredDocumentRegion != null)
-				return lastStructuredDocumentRegion.getEnd();
-
-			Node prev = node.getPreviousSibling();
-			if (prev != null) { // move to the previous
-				node = prev;
-				continue;
-			}
-
-			Node parent = node.getParentNode();
-			node = null;
-			while (parent != null) {
-				if (parent.getNodeType() == Node.ELEMENT_NODE) {
-					ElementImpl element = (ElementImpl) parent;
-					IStructuredDocumentRegion startStructuredDocumentRegion = element.getStartStructuredDocumentRegion();
-					if (startStructuredDocumentRegion != null)
-						return startStructuredDocumentRegion.getEnd();
-				}
-				Node parentPrev = parent.getPreviousSibling();
-				if (parentPrev != null) { // move to the previous
-					node = parentPrev;
-					break;
-				}
-				parent = parent.getParentNode();
-			}
-		}
-		return 0;
-	}
-
-	public IStructuredDocumentRegion getEndStructuredDocumentRegion() {
-		return null;
-	}
-
-	/**
-	 */
-	public FactoryRegistry getFactoryRegistry() {
-		XMLModel model = getModel();
-		if (model != null) {
-			FactoryRegistry reg = model.getFactoryRegistry();
-			if (reg != null)
-				return reg;
-		}
-		return null;
-	}
-
-	/**
-	 * getFirstChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node getFirstChild() {
-		return null;
-	}
-
-	/**
-	 * getFirstStructuredDocumentRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getFirstStructuredDocumentRegion() {
-		return StructuredDocumentRegionUtil.getStructuredDocumentRegion(this.flatNode);
-	}
-
-	/**
-	 */
-	public int getIndex() {
-		Node parent = getParentNode();
-		if (parent == null)
-			return -1; // error
-		int index = 0;
-		for (Node child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (child == this)
-				return index;
-			index++;
-		}
-		return -1; // error
-	}
-
-	/**
-	 * getLastChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node getLastChild() {
-		return null;
-	}
-
-	/**
-	 * getLastStructuredDocumentRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getLastStructuredDocumentRegion() {
-		return StructuredDocumentRegionUtil.getStructuredDocumentRegion(this.flatNode);
-	}
-
-	/**
-	 */
-	public String getLocalName() {
-		return null;
-	}
-
-	/**
-	 * the default implementation can just refer to the owning document
-	 */
-	public XMLModel getModel() {
-		if (this.ownerDocument == null)
-			return null;
-		return this.ownerDocument.getModel();
-	}
-
-	/**
-	 * all but attr return null
-	 */
-	public ITextRegion getNameRegion() {
-		return null;
-	}
-
-	/**
-	 */
-	public String getNamespaceURI() {
-		return null;
-	}
-
-	/**
-	 * getNextSibling method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node getNextSibling() {
-		return this.nextSibling;
-	}
-
-	/**
-	 * getNodeAt method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param offset
-	 *            int
-	 */
-	Node getNodeAt(int offset) {
-		XMLNode parent = this;
-		XMLNode child = (XMLNode) getFirstChild();
-		while (child != null) {
-			if (child.getEndOffset() <= offset) {
-				child = (XMLNode) child.getNextSibling();
-				continue;
-			}
-			if (child.getStartOffset() > offset) {
-				break;
-			}
-
-			IStructuredDocumentRegion startStructuredDocumentRegion = child.getStartStructuredDocumentRegion();
-			if (startStructuredDocumentRegion != null) {
-				if (startStructuredDocumentRegion.getEnd() > offset)
-					return child;
-			}
-
-			// dig more
-			parent = child;
-			child = (XMLNode) parent.getFirstChild();
-		}
-
-		return parent;
-	}
-
-	/**
-	 * getNodeValue method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeValue() throws DOMException {
-		return null;
-	}
-
-	/**
-	 * getOwnerDocument method
-	 * 
-	 * @return org.w3c.dom.Document
-	 */
-	public Document getOwnerDocument() {
-		return this.ownerDocument;
-	}
-
-	/**
-	 * getParentNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node getParentNode() {
-		return this.parentNode;
-	}
-
-	/**
-	 */
-	public String getPrefix() {
-		return null;
-	}
-
-	/**
-	 * getPreviousSibling method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node getPreviousSibling() {
-		return this.previousSibling;
-	}
-
-	/**
-	 */
-	public String getSource() {
-		if (this.flatNode == null)
-			return new String();
-		return this.flatNode.getText();
-	}
-
-	/**
-	 * getStartOffset method
-	 * 
-	 * @return int
-	 */
-	public int getStartOffset() {
-		if (this.flatNode != null)
-			return this.flatNode.getStart();
-		NodeImpl prev = (NodeImpl) getPreviousSibling();
-		if (prev != null)
-			return prev.getEndOffset();
-		Node parent = getParentNode();
-		if (parent != null && parent.getNodeType() == Node.ELEMENT_NODE) {
-			ElementImpl element = (ElementImpl) parent;
-			if (element.hasStartTag())
-				return element.getStartEndOffset();
-			return element.getStartOffset();
-		}
-		// final fallback to look into first child
-		NodeImpl child = (NodeImpl) getFirstChild();
-		while (child != null) {
-			IStructuredDocumentRegion childStructuredDocumentRegion = child.getStructuredDocumentRegion();
-			if (childStructuredDocumentRegion != null)
-				return childStructuredDocumentRegion.getStart();
-			child = (NodeImpl) child.getFirstChild();
-		}
-		return 0;
-	}
-
-	public IStructuredDocumentRegion getStartStructuredDocumentRegion() {
-		return getFirstStructuredDocumentRegion();
-	}
-
-	/**
-	 * Every node (indirectly) knows its structuredDocument
-	 */
-	public IStructuredDocument getStructuredDocument() {
-		return getModel().getStructuredDocument();
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion getStructuredDocumentRegion() {
-		return this.flatNode;
-	}
-
-	/**
-	 * all but attr return null
-	 */
-	public ITextRegion getValueRegion() {
-		return null;
-	}
-
-	/**
-	 */
-	public String getValueSource() {
-		return getNodeValue();
-	}
-
-	/**
-	 */
-	public boolean hasAttributes() {
-		return false;
-	}
-
-	/**
-	 * hasChildNodes method
-	 * 
-	 * @return boolean
-	 */
-	public boolean hasChildNodes() {
-		return false;
-	}
-
-	/**
-	 * hasProperties method
-	 * 
-	 * @return boolean
-	 */
-	public boolean hasProperties() {
-		return false;
-	}
-
-	/**
-	 * insertBefore method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param refChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node insertBefore(Node newChild, Node refChild) throws DOMException {
-		throw new DOMException(DOMException.HIERARCHY_REQUEST_ERR, new String());
-	}
-
-	public boolean isChildEditable() {
-		return false;
-	}
-
-	/**
-	 */
-	public boolean isClosed() {
-		return true;
-	}
-
-	/**
-	 * isContainer method
-	 * 
-	 * @return boolean
-	 */
-	public boolean isContainer() {
-		return false;
-	}
-
-	public boolean isDataEditable() {
-		if (!fDataEditable) {
-			XMLModelImpl model = (XMLModelImpl) getModel();
-			if (model != null && model.isReparsing()) {
-				return true;
-			}
-		}
-		return fDataEditable;
-	}
-
-	/**
-	 */
-	public boolean isSupported(String feature, String version) {
-		if (this.ownerDocument == null)
-			return false;
-		DOMImplementation impl = this.ownerDocument.getImplementation();
-		if (impl == null)
-			return false;
-		return impl.hasFeature(feature, version);
-	}
-
-	/**
-	 * @param s
-	 * @return
-	 */
-	private String lookupMessage(short s) {
-		// TODO: make localized version
-		String result = null;
-		switch (s) {
-			case DOMException.INVALID_CHARACTER_ERR :
-				result = "INVALID_CHARACTER_ERR"; //$NON-NLS-1$
-				break;
-
-			default :
-				result = new String();
-				break;
-		}
-		return result;
-	}
-
-	/**
-	 * normalize method
-	 */
-	public void normalize() {
-		TextImpl prevText = null;
-		for (Node child = getFirstChild(); child != null; child = child.getNextSibling()) {
-			switch (child.getNodeType()) {
-				case TEXT_NODE : {
-					if (prevText == null) {
-						prevText = (TextImpl) child;
-						break;
-					}
-					Text text = (Text) child;
-					removeChild(text);
-					prevText.appendText(text);
-					child = prevText;
-					break;
-				}
-				case ELEMENT_NODE : {
-					Element element = (Element) child;
-					element.normalize();
-					prevText = null;
-					break;
-				}
-				default :
-					prevText = null;
-					break;
-			}
-		}
-	}
-
-	protected void notifyEditableChanged() {
-		DocumentImpl document = (DocumentImpl) getContainerDocument();
-		if (document == null)
-			return;
-		XMLModelImpl model = (XMLModelImpl) document.getModel();
-		if (model == null)
-			return;
-		model.editableChanged(this);
-	}
-
-	/**
-	 * notifyValueChanged method
-	 */
-	protected void notifyValueChanged() {
-		DocumentImpl document = (DocumentImpl) getContainerDocument();
-		if (document == null)
-			return;
-
-		syncDataEditableState();
-
-		XMLModelImpl model = (XMLModelImpl) document.getModel();
-		if (model == null)
-			return;
-		model.valueChanged(this);
-	}
-
-	/**
-	 * removeChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node removeChild(Node oldChild) throws DOMException {
-		throw new DOMException(DOMException.NOT_FOUND_ERR, new String());
-	}
-
-	/**
-	 * removeChildNodes method
-	 */
-	public void removeChildNodes() {
-	}
-
-	/**
-	 * removeChildNodes method
-	 * 
-	 * @return org.w3c.dom.DocumentFragment
-	 * @param firstChild
-	 *            org.w3c.dom.Node
-	 * @param lastChild
-	 *            org.w3c.dom.Node
-	 */
-	public DocumentFragment removeChildNodes(Node firstChild, Node lastChild) {
-		return null;
-	}
-
-	/**
-	 * replaceChild method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	public Node replaceChild(Node newChild, Node oldChild) throws DOMException {
-		throw new DOMException(DOMException.HIERARCHY_REQUEST_ERR, new String());
-	}
-
-	/**
-	 * Resets children values from IStructuredDocumentRegion.
-	 */
-	void resetStructuredDocumentRegions() {
-		for (NodeImpl child = (NodeImpl) getFirstChild(); child != null; child = (NodeImpl) child.getNextSibling()) {
-			child.resetStructuredDocumentRegions();
-		}
-		this.flatNode = null;
-	}
-
-	public void setChildEditable(boolean editable) {
-		// nop
-	}
-
-	public void setDataEditable(boolean editable) {
-		if (fDataEditable == editable) {
-			return;
-		}
-
-		ReadOnlyController roc = ReadOnlyController.getInstance();
-		if (editable) {
-			roc.unlockData(this);
-		} else {
-			roc.lockData(this);
-		}
-
-		fDataEditable = editable;
-
-		notifyEditableChanged();
-	}
-
-	public void setEditable(boolean editable, boolean deep) {
-		if (deep) {
-			XMLNode node = (XMLNode) getFirstChild();
-			while (node != null) {
-				node.setEditable(editable, deep);
-				node = (XMLNode) node.getNextSibling();
-			}
-		}
-		setChildEditable(editable);
-		setDataEditable(editable);
-	}
-
-	/**
-	 * setNextSibling method
-	 * 
-	 * @param nextSibling
-	 *            org.w3c.dom.Node
-	 */
-	protected void setNextSibling(Node nextSibling) {
-		this.nextSibling = (NodeImpl) nextSibling;
-	}
-
-	/**
-	 * setNodeValue method
-	 * 
-	 * @param nodeValue
-	 *            java.lang.String
-	 */
-	public void setNodeValue(String nodeValue) throws DOMException {
-	}
-
-	/**
-	 * setOwnerDocument method
-	 * 
-	 * @param ownerDocument
-	 *            org.w3c.dom.Document
-	 */
-	protected void setOwnerDocument(Document ownerDocument) {
-		this.ownerDocument = (DocumentImpl) ownerDocument;
-	}
-
-	/**
-	 */
-	protected void setOwnerDocument(Document ownerDocument, boolean deep) {
-		this.ownerDocument = (DocumentImpl) ownerDocument;
-
-		if (deep) {
-			for (NodeImpl child = (NodeImpl) getFirstChild(); child != null; child = (NodeImpl) child.getNextSibling()) {
-				child.setOwnerDocument(ownerDocument, deep);
-			}
-		}
-	}
-
-	/**
-	 * setParentNode method
-	 * 
-	 * @param parentNode
-	 *            org.w3c.dom.Node
-	 */
-	protected void setParentNode(Node parentNode) {
-		this.parentNode = (NodeImpl) parentNode;
-	}
-
-	/**
-	 */
-	public void setPrefix(String prefix) throws DOMException {
-	}
-
-	/**
-	 * setPreviousSibling method
-	 * 
-	 * @param previousSibling
-	 *            org.w3c.dom.Node
-	 */
-	protected void setPreviousSibling(Node previousSibling) {
-		this.previousSibling = (NodeImpl) previousSibling;
-	}
-
-	/**
-	 */
-	public void setSource(String source) throws InvalidCharacterException {
-		// not supported
-	}
-
-	/**
-	 */
-	void setStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		this.flatNode = flatNode;
-	}
-
-	/**
-	 */
-	public void setValueSource(String source) {
-		setNodeValue(source);
-	}
-
-	protected void syncDataEditableState() {
-		ReadOnlyController roc = ReadOnlyController.getInstance();
-		if (fDataEditable) {
-			roc.unlockData(this);
-		} else {
-			roc.lockData(this);
-		}
-	}
-
-	/**
-	 * toString method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return getNodeName();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeIteratorImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeIteratorImpl.java
deleted file mode 100644
index c4a278b..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeIteratorImpl.java
+++ /dev/null
@@ -1,257 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-import org.w3c.dom.traversal.NodeFilter;
-import org.w3c.dom.traversal.NodeIterator;
-
-/**
- * NodeIteratorImpl class
- */
-public class NodeIteratorImpl implements NodeIterator {
-	private NodeFilter filter = null;
-	private Node nextNode = null;
-
-	private Node rootNode = null;
-	private int whatToShow = NodeFilter.SHOW_ALL;
-
-	/**
-	 * NodeIteratorImpl constructor
-	 * 
-	 * @param rootNode
-	 *            org.w3c.dom.Node
-	 */
-	NodeIteratorImpl(Node rootNode, int whatToShow, NodeFilter filter) {
-		this.rootNode = rootNode;
-		this.nextNode = rootNode;
-		this.whatToShow = whatToShow;
-		this.filter = filter;
-	}
-
-	/**
-	 */
-	private final boolean acceptNode(Node node) {
-		if (this.whatToShow != NodeFilter.SHOW_ALL) {
-			if (node == null)
-				return false;
-			short nodeType = node.getNodeType();
-			switch (this.whatToShow) {
-				case NodeFilter.SHOW_ELEMENT :
-					if (nodeType != Node.ELEMENT_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_ATTRIBUTE :
-					if (nodeType != Node.ATTRIBUTE_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_TEXT :
-					if (nodeType != Node.TEXT_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_CDATA_SECTION :
-					if (nodeType != Node.CDATA_SECTION_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_ENTITY_REFERENCE :
-					if (nodeType != Node.ENTITY_REFERENCE_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_ENTITY :
-					if (nodeType != Node.ENTITY_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_PROCESSING_INSTRUCTION :
-					if (nodeType != Node.PROCESSING_INSTRUCTION_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_COMMENT :
-					if (nodeType != Node.COMMENT_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_DOCUMENT :
-					if (nodeType != Node.DOCUMENT_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_DOCUMENT_TYPE :
-					if (nodeType != Node.DOCUMENT_TYPE_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_DOCUMENT_FRAGMENT :
-					if (nodeType != Node.DOCUMENT_FRAGMENT_NODE)
-						return false;
-					break;
-				case NodeFilter.SHOW_NOTATION :
-					if (nodeType != Node.NOTATION_NODE)
-						return false;
-					break;
-				default :
-					return false;
-			}
-		}
-		if (this.filter != null) {
-			return (this.filter.acceptNode(node) == NodeFilter.FILTER_ACCEPT);
-		}
-		return true;
-	}
-
-	/**
-	 * Detaches the <code>NodeIterator</code> from the set which it iterated
-	 * over, releasing any computational resources and placing the iterator in
-	 * the INVALID state. After <code>detach</code> has been invoked, calls
-	 * to <code>nextNode</code> or <code>previousNode</code> will raise
-	 * the exception INVALID_STATE_ERR.
-	 */
-	public void detach() {
-		this.rootNode = null;
-		this.nextNode = null;
-		this.filter = null;
-	}
-
-	/**
-	 * The value of this flag determines whether the children of entity
-	 * reference nodes are visible to the iterator. If false, they and their
-	 * descendants will be rejected. Note that this rejection takes precedence
-	 * over <code>whatToShow</code> and the filter. Also note that this is
-	 * currently the only situation where <code>NodeIterators</code> may
-	 * reject a complete subtree rather than skipping individual nodes. <br>
-	 * <br>
-	 * To produce a view of the document that has entity references expanded
-	 * and does not expose the entity reference node itself, use the
-	 * <code>whatToShow</code> flags to hide the entity reference node and
-	 * set <code>expandEntityReferences</code> to true when creating the
-	 * iterator. To produce a view of the document that has entity reference
-	 * nodes but no entity expansion, use the <code>whatToShow</code> flags
-	 * to show the entity reference node and set
-	 * <code>expandEntityReferences</code> to false.
-	 */
-	public boolean getExpandEntityReferences() {
-		// not supported
-		return false;
-	}
-
-	/**
-	 * The <code>NodeFilter</code> used to screen nodes.
-	 */
-	public NodeFilter getFilter() {
-		return this.filter;
-	}
-
-	/**
-	 */
-	private final Node getNextNode() {
-		if (this.nextNode == null)
-			return null;
-		Node oldNext = this.nextNode;
-		Node child = this.nextNode.getFirstChild();
-		if (child != null) {
-			this.nextNode = child;
-			return oldNext;
-		}
-		for (Node node = this.nextNode; node != null && node != this.rootNode; node = node.getParentNode()) {
-			Node next = node.getNextSibling();
-			if (next != null) {
-				this.nextNode = next;
-				return oldNext;
-			}
-		}
-		this.nextNode = null;
-		return oldNext;
-	}
-
-	/**
-	 */
-	private final Node getPreviousNode() {
-		if (this.nextNode == this.rootNode)
-			return null;
-		Node prev = null;
-		if (this.nextNode == null) {
-			prev = this.rootNode; // never null
-		} else {
-			prev = this.nextNode.getPreviousSibling();
-			if (prev == null) {
-				this.nextNode = this.nextNode.getParentNode();
-				return this.nextNode;
-			}
-		}
-		Node last = prev.getLastChild();
-		while (last != null) {
-			prev = last;
-			last = prev.getLastChild();
-		}
-		this.nextNode = prev;
-		return this.nextNode;
-	}
-
-	/**
-	 * The root node of the <code>NodeIterator</code>, as specified when it
-	 * was created.
-	 */
-	public Node getRoot() {
-		return this.rootNode;
-	}
-
-	/**
-	 * This attribute determines which node types are presented via the
-	 * iterator. The available set of constants is defined in the
-	 * <code>NodeFilter</code> interface. Nodes not accepted by
-	 * <code>whatToShow</code> will be skipped, but their children may still
-	 * be considered. Note that this skip takes precedence over the filter, if
-	 * any.
-	 */
-	public int getWhatToShow() {
-		return this.whatToShow;
-	}
-
-	/**
-	 * Returns the next node in the set and advances the position of the
-	 * iterator in the set. After a <code>NodeIterator</code> is created,
-	 * the first call to <code>nextNode()</code> returns the first node in
-	 * the set.
-	 * 
-	 * @return The next <code>Node</code> in the set being iterated over, or
-	 *         <code>null</code> if there are no more members in that set.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if this method is called after
-	 *                the <code>detach</code> method was invoked.
-	 */
-	public Node nextNode() throws DOMException {
-		for (Node node = getNextNode(); node != null; node = getNextNode()) {
-			if (acceptNode(node))
-				return node;
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the previous node in the set and moves the position of the
-	 * <code>NodeIterator</code> backwards in the set.
-	 * 
-	 * @return The previous <code>Node</code> in the set being iterated
-	 *         over, or <code>null</code> if there are no more members in
-	 *         that set.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if this method is called after
-	 *                the <code>detach</code> method was invoked.
-	 */
-	public Node previousNode() throws DOMException {
-		for (Node node = getPreviousNode(); node != null; node = getPreviousNode()) {
-			if (acceptNode(node))
-				return node;
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeListImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeListImpl.java
deleted file mode 100644
index 4bfed52..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NodeListImpl.java
+++ /dev/null
@@ -1,111 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Vector;
-
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * NodeListImpl class
- */
-public class NodeListImpl implements NodeList {
-
-	Object lockObject = new byte[0];
-
-	private Vector nodes = null;
-
-	/**
-	 * NodeListImpl constructor
-	 */
-	public NodeListImpl() {
-		super();
-	}
-
-	/**
-	 * appendNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	protected Node appendNode(Node node) {
-		if (node == null)
-			return null;
-		if (this.nodes == null)
-			this.nodes = new Vector();
-		this.nodes.addElement(node);
-		return node;
-	}
-
-	/**
-	 * getLength method
-	 * 
-	 * @return int
-	 */
-	public int getLength() {
-		synchronized (lockObject) {
-			if (this.nodes == null)
-				return 0;
-			return this.nodes.size();
-		}
-	}
-
-	/**
-	 */
-	protected Node insertNode(Node node, int index) {
-		if (node == null)
-			return null;
-		if (this.nodes == null || index >= this.nodes.size()) {
-			return appendNode(node);
-		}
-		this.nodes.insertElementAt(node, index);
-		return node;
-	}
-
-	/**
-	 * item method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public Node item(int index) {
-		synchronized (lockObject) {
-			if (this.nodes == null)
-				return null;
-			if (index < 0 || index >= this.nodes.size())
-				return null;
-			return (Node) this.nodes.elementAt(index);
-		}
-	}
-
-	/**
-	 * removeNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param index
-	 *            int
-	 */
-	protected Node removeNode(int index) {
-		if (this.nodes == null)
-			return null; // no node
-		if (index < 0 || index >= this.nodes.size())
-			return null; // invalid parameter
-
-		Node removed = (Node) this.nodes.elementAt(index);
-		this.nodes.removeElementAt(index);
-		return removed;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NotationImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NotationImpl.java
deleted file mode 100644
index e048949..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/NotationImpl.java
+++ /dev/null
@@ -1,138 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-import org.w3c.dom.Notation;
-
-/**
- * NotationImpl class
- */
-public class NotationImpl extends NodeImpl implements Notation {
-
-	private String name = null;
-	private String publicId = null;
-	private String systemId = null;
-
-	/**
-	 * NotationImpl constructor
-	 */
-	protected NotationImpl() {
-		super();
-	}
-
-	/**
-	 * NotationImpl constructor
-	 * 
-	 * @param that
-	 *            NotationImpl
-	 */
-	protected NotationImpl(NotationImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.name = that.name;
-			this.publicId = that.publicId;
-			this.systemId = that.systemId;
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		NotationImpl cloned = new NotationImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		if (this.name == null)
-			return new String();
-		return this.name;
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return NOTATION_NODE;
-	}
-
-	/**
-	 * getPublicId method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getPublicId() {
-		return this.publicId;
-	}
-
-	/**
-	 * getSystemId method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getSystemId() {
-		return this.systemId;
-	}
-
-	/**
-	 * setName method
-	 * 
-	 * @param name
-	 *            java.lang.String
-	 */
-	protected void setName(String name) {
-		this.name = name;
-	}
-
-	/**
-	 * setPublicId method
-	 * 
-	 * @param publicId
-	 *            java.lang.String
-	 */
-	public void setPublicId(String publicId) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		this.publicId = publicId;
-	}
-
-	/**
-	 * setSystemId method
-	 * 
-	 * @param systemId
-	 *            java.lang.String
-	 */
-	public void setSystemId(String systemId) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		this.systemId = systemId;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ProcessingInstructionImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ProcessingInstructionImpl.java
deleted file mode 100644
index 9378ca6..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ProcessingInstructionImpl.java
+++ /dev/null
@@ -1,227 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Iterator;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-
-
-/**
- * ProcessingInstructionImpl class
- */
-public class ProcessingInstructionImpl extends NodeImpl implements ProcessingInstruction {
-	private String data = null;
-
-	private String target = null;
-
-	/**
-	 * ProcessingInstructionImpl constructor
-	 */
-	protected ProcessingInstructionImpl() {
-		super();
-	}
-
-	/**
-	 * ProcessingInstructionImpl constructor
-	 * 
-	 * @param that
-	 *            ProcessingInstructionImpl
-	 */
-	protected ProcessingInstructionImpl(ProcessingInstructionImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.target = that.target;
-			this.data = that.getData();
-		}
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		ProcessingInstructionImpl cloned = new ProcessingInstructionImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * getData method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getData() {
-		if (this.data != null)
-			return this.data;
-
-		IStructuredDocumentRegion flatNode = getFirstStructuredDocumentRegion();
-		if (flatNode == null)
-			return new String();
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return new String();
-
-		ITextRegion targetRegion = null;
-		ITextRegion dataRegion = null;
-		ITextRegion closeRegion = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_PI_OPEN)
-				continue;
-			if (regionType == XMLRegionContext.XML_PI_CLOSE) {
-				closeRegion = region;
-			}
-			else {
-				if (targetRegion == null)
-					targetRegion = region;
-				else if (dataRegion == null)
-					dataRegion = region;
-			}
-		}
-		if (dataRegion == null)
-			return new String();
-		int offset = dataRegion.getStart();
-		int end = flatNode.getLength();
-		if (closeRegion != null)
-			end = closeRegion.getStart();
-		String source = flatNode.getText();
-		return source.substring(offset, end);
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return getTarget();
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return PROCESSING_INSTRUCTION_NODE;
-	}
-
-	/**
-	 * getNodeValue method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeValue() {
-		return getData();
-	}
-
-	/**
-	 * getTarget method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getTarget() {
-		if (this.target == null)
-			return new String();
-		return this.target;
-	}
-
-	/**
-	 */
-	public boolean isClosed() {
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return true; // will be generated
-		String regionType = StructuredDocumentRegionUtil.getLastRegionType(flatNode);
-		return (regionType == XMLRegionContext.XML_PI_CLOSE);
-	}
-
-	/**
-	 */
-	void resetStructuredDocumentRegions() {
-		this.data = getData();
-		setStructuredDocumentRegion(null);
-	}
-
-	/**
-	 * setData method
-	 * 
-	 * @param data
-	 *            java.lang.String
-	 */
-	public void setData(String data) throws DOMException {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.data = data;
-
-		notifyValueChanged();
-	}
-
-	/**
-	 * setNodeValue method
-	 * 
-	 * @param nodeValue
-	 *            java.lang.String
-	 */
-	public void setNodeValue(String nodeValue) throws DOMException {
-		setData(nodeValue);
-	}
-
-	/**
-	 */
-	void setStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		super.setStructuredDocumentRegion(flatNode);
-		if (flatNode != null)
-			this.data = null;
-	}
-
-	/**
-	 * setTarget method
-	 * 
-	 * @param target
-	 *            java.lang.String
-	 */
-	protected void setTarget(String target) {
-		this.target = target;
-	}
-
-	/**
-	 * toString method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(getTarget());
-		buffer.append('(');
-		buffer.append(getData());
-		buffer.append(')');
-		return buffer.toString();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/RangeImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/RangeImpl.java
deleted file mode 100644
index 1c54ba5..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/RangeImpl.java
+++ /dev/null
@@ -1,630 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.DocumentFragment;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.Text;
-import org.w3c.dom.ranges.Range;
-import org.w3c.dom.ranges.RangeException;
-
-
-/**
- */
-public class RangeImpl implements Range {
-	private Node endContainer = null;
-	private int endOffset = 0;
-
-	private Node startContainer = null;
-	private int startOffset = 0;
-
-	/**
-	 */
-	protected RangeImpl() {
-		super();
-	}
-
-	/**
-	 */
-	protected RangeImpl(RangeImpl that) {
-		super();
-
-		if (that != null) {
-			this.startContainer = that.startContainer;
-			this.startOffset = that.startOffset;
-			this.endContainer = that.endContainer;
-			this.endOffset = that.endOffset;
-		}
-	}
-
-	/**
-	 * Duplicates the contents of a Range
-	 * 
-	 * @return A DocumentFragment that contains content equivalent to this
-	 *         Range.
-	 * @exception DOMException
-	 *                HIERARCHY_REQUEST_ERR: Raised if a DocumentType node
-	 *                would be extracted into the new DocumentFragment. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public DocumentFragment cloneContents() throws DOMException {
-		// not supported
-		return null;
-	}
-
-	/**
-	 * Produces a new Range whose boundary-points are equal to the
-	 * boundary-points of the Range.
-	 * 
-	 * @return The duplicated Range.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Range cloneRange() throws DOMException {
-		return new RangeImpl(this);
-	}
-
-	/**
-	 * Collapse a Range onto one of its boundary-points
-	 * 
-	 * @param toStartIf
-	 *            TRUE, collapses the Range onto its start; if FALSE,
-	 *            collapses it onto its end.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void collapse(boolean toStart) throws DOMException {
-		if (toStart) {
-			this.endContainer = this.startContainer;
-			this.endOffset = this.startOffset;
-		} else {
-			this.startContainer = this.endContainer;
-			this.startOffset = this.endOffset;
-		}
-	}
-
-	/**
-	 * Compare the boundary-points of two Ranges in a document.
-	 * 
-	 * @param howA
-	 *            code representing the type of comparison, as defined above.
-	 * @param sourceRangeThe
-	 *            <code>Range</code> on which this current
-	 *            <code>Range</code> is compared to.
-	 * @return -1, 0 or 1 depending on whether the corresponding
-	 *         boundary-point of the Range is respectively before, equal to,
-	 *         or after the corresponding boundary-point of
-	 *         <code>sourceRange</code>.
-	 * @exception DOMException
-	 *                WRONG_DOCUMENT_ERR: Raised if the two Ranges are not in
-	 *                the same Document or DocumentFragment. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public short compareBoundaryPoints(short how, Range sourceRange) throws DOMException {
-		if (sourceRange == null)
-			return (short) 0; // error
-
-		Node container1 = null;
-		int offset1 = 0;
-		Node container2 = null;
-		int offset2 = 0;
-
-		switch (how) {
-			case START_TO_START :
-				container1 = this.startContainer;
-				offset1 = this.startOffset;
-				container2 = sourceRange.getStartContainer();
-				offset2 = sourceRange.getStartOffset();
-				break;
-			case START_TO_END :
-				container1 = this.startContainer;
-				offset1 = this.startOffset;
-				container2 = sourceRange.getEndContainer();
-				offset2 = sourceRange.getEndOffset();
-				break;
-			case END_TO_END :
-				container1 = this.endContainer;
-				offset1 = this.endOffset;
-				container2 = sourceRange.getEndContainer();
-				offset2 = sourceRange.getEndOffset();
-				break;
-			case END_TO_START :
-				container1 = this.endContainer;
-				offset1 = this.endOffset;
-				container2 = sourceRange.getStartContainer();
-				offset2 = sourceRange.getStartOffset();
-				break;
-			default :
-				return (short) 0; // error
-		}
-
-		return comparePoints(container1, offset1, container2, offset2);
-	}
-
-	/*
-	 */
-	protected short comparePoints(Node container1, int offset1, Node container2, int offset2) {
-		if (container1 == null || container2 == null)
-			return (short) 0; // error
-
-		if (container1 == container2) {
-			if (offset1 > offset2)
-				return (short) 1;
-			if (offset1 < offset2)
-				return (short) -1;
-			return 0;
-		}
-
-		// get node offsets
-		XMLNode node1 = null;
-		if (container1.hasChildNodes()) {
-			Node child = container1.getFirstChild();
-			for (int i = 0; i < offset1; i++) {
-				Node next = child.getNextSibling();
-				if (next == null)
-					break;
-				child = next;
-			}
-			node1 = (XMLNode) child;
-			offset1 = 0;
-		} else {
-			node1 = (XMLNode) container1;
-		}
-		int nodeOffset1 = node1.getStartOffset();
-		XMLNode node2 = null;
-		if (container2.hasChildNodes()) {
-			Node child = container2.getFirstChild();
-			for (int i = 0; i < offset2; i++) {
-				Node next = child.getNextSibling();
-				if (next == null)
-					break;
-				child = next;
-			}
-			node2 = (XMLNode) child;
-			offset2 = 0;
-		} else {
-			node2 = (XMLNode) container1;
-		}
-		int nodeOffset2 = node2.getStartOffset();
-
-		if (nodeOffset1 > nodeOffset2)
-			return (short) 1;
-		if (nodeOffset1 < nodeOffset2)
-			return (short) -1;
-		if (offset1 > offset2)
-			return (short) 1;
-		if (offset1 < offset2)
-			return (short) -1;
-		return (short) 0;
-	}
-
-	/**
-	 * Removes the contents of a Range from the containing document or
-	 * document fragment without returning a reference to the removed content.
-	 * 
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of
-	 *                the content of the Range is read-only or any of the
-	 *                nodes that contain any of the content of the Range are
-	 *                read-only. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void deleteContents() throws DOMException {
-		// not supported
-	}
-
-	/**
-	 * Called to indicate that the Range is no longer in use and that the
-	 * implementation may relinquish any resources associated with this Range.
-	 * Subsequent calls to any methods or attribute getters on this Range will
-	 * result in a <code>DOMException</code> being thrown with an error code
-	 * of <code>INVALID_STATE_ERR</code>.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void detach() throws DOMException {
-		this.startContainer = null;
-		this.startOffset = 0;
-		this.endContainer = null;
-		this.endOffset = 0;
-	}
-
-	/**
-	 * Moves the contents of a Range from the containing document or document
-	 * fragment to a new DocumentFragment.
-	 * 
-	 * @return A DocumentFragment containing the extracted contents.
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of
-	 *                the content of the Range is read-only or any of the
-	 *                nodes which contain any of the content of the Range are
-	 *                read-only. <br>
-	 *                HIERARCHY_REQUEST_ERR: Raised if a DocumentType node
-	 *                would be extracted into the new DocumentFragment. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public DocumentFragment extractContents() throws DOMException {
-		// not supported
-		return null;
-	}
-
-	/**
-	 * TRUE if the Range is collapsed
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public boolean getCollapsed() throws DOMException {
-		if (this.startContainer == this.endContainer && this.startOffset == this.endOffset)
-			return true;
-		return false;
-	}
-
-	/**
-	 * The deepest common ancestor container of the Range's two
-	 * boundary-points.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getCommonAncestorContainer() throws DOMException {
-		if (this.startContainer == null)
-			return null;
-		return ((NodeImpl) this.startContainer).getCommonAncestor(this.endContainer);
-	}
-
-	/**
-	 * Node within which the Range ends
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getEndContainer() throws DOMException {
-		return this.endContainer;
-	}
-
-	/**
-	 * Offset within the ending node of the Range.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public int getEndOffset() throws DOMException {
-		return this.endOffset;
-	}
-
-	/**
-	 * Node within which the Range begins
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getStartContainer() throws DOMException {
-		return this.startContainer;
-	}
-
-	/**
-	 * Offset within the starting node of the Range.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public int getStartOffset() throws DOMException {
-		return this.startOffset;
-	}
-
-	/**
-	 * Inserts a node into the Document or DocumentFragment at the start of
-	 * the Range. If the container is a Text node, this will be split at the
-	 * start of the Range (as if the Text node's splitText method was
-	 * performed at the insertion point) and the insertion will occur between
-	 * the two resulting Text nodes. Adjacent Text nodes will not be
-	 * automatically merged. If the node to be inserted is a DocumentFragment
-	 * node, the children will be inserted rather than the DocumentFragment
-	 * node itself.
-	 * 
-	 * @param newNodeThe
-	 *            node to insert at the start of the Range
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor
-	 *                container of the start of the Range is read-only. <br>
-	 *                WRONG_DOCUMENT_ERR: Raised if <code>newNode</code> and
-	 *                the container of the start of the Range were not created
-	 *                from the same document. <br>
-	 *                HIERARCHY_REQUEST_ERR: Raised if the container of the
-	 *                start of the Range is of a type that does not allow
-	 *                children of the type of <code>newNode</code> or if
-	 *                <code>newNode</code> is an ancestor of the container.
-	 *                <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>newNode</code>
-	 *                is an Attr, Entity, Notation, or Document node.
-	 */
-	public void insertNode(Node newNode) throws RangeException, DOMException {
-		// not supported
-	}
-
-	/**
-	 * Select a node and its contents
-	 * 
-	 * @param refNodeThe
-	 *            node to select.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if an ancestor of
-	 *                <code>refNode</code> is an Entity, Notation or
-	 *                DocumentType node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void selectNode(Node refNode) throws RangeException, DOMException {
-		if (refNode == null)
-			return;
-		Node parent = refNode.getParentNode();
-		if (parent == null)
-			return;
-		int index = ((NodeImpl) refNode).getIndex();
-		if (index < 0)
-			return;
-		setStart(parent, index);
-		setEnd(parent, index + 1);
-	}
-
-	/**
-	 * Select the contents within a node
-	 * 
-	 * @param refNodeNode
-	 *            to select from
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation or DocumentType node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void selectNodeContents(Node refNode) throws RangeException, DOMException {
-		if (refNode == null)
-			return;
-		if (refNode.getNodeType() == Node.TEXT_NODE) {
-			Text text = (Text) refNode;
-			setStart(refNode, 0);
-			setEnd(refNode, text.getLength());
-		} else {
-			NodeList childNodes = refNode.getChildNodes();
-			int length = (childNodes != null ? childNodes.getLength() : 0);
-			setStart(refNode, 0);
-			setEnd(refNode, length);
-		}
-	}
-
-	/**
-	 * Sets the attributes describing the end of a Range.
-	 * 
-	 * @param refNodeThe
-	 *            <code>refNode</code> value. This parameter must be
-	 *            different from <code>null</code>.
-	 * @param offsetThe
-	 *            <code>endOffset</code> value.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation, or DocumentType node.
-	 * @exception DOMException
-	 *                INDEX_SIZE_ERR: Raised if <code>offset</code> is
-	 *                negative or greater than the number of child units in
-	 *                <code>refNode</code>. Child units are 16-bit units if
-	 *                <code>refNode</code> is a type of CharacterData node
-	 *                (e.g., a Text or Comment node) or a
-	 *                ProcessingInstruction node. Child units are Nodes in all
-	 *                other cases. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEnd(Node refNode, int offset) throws RangeException, DOMException {
-		this.endContainer = refNode;
-		this.endOffset = offset;
-	}
-
-	/**
-	 * Sets the end of a Range to be after a node
-	 * 
-	 * @param refNodeRange
-	 *            ends after <code>refNode</code>.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEndAfter(Node refNode) throws RangeException, DOMException {
-		if (refNode == null)
-			return;
-		Node parent = refNode.getParentNode();
-		if (parent == null)
-			return;
-		int index = ((NodeImpl) refNode).getIndex();
-		if (index < 0)
-			return;
-		setEnd(parent, index + 1);
-	}
-
-	/**
-	 * Sets the end position to be before a node.
-	 * 
-	 * @param refNodeRange
-	 *            ends before <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEndBefore(Node refNode) throws RangeException, DOMException {
-		if (refNode == null)
-			return;
-		Node parent = refNode.getParentNode();
-		if (parent == null)
-			return;
-		int index = ((NodeImpl) refNode).getIndex();
-		if (index < 0)
-			return;
-		setEnd(parent, index);
-	}
-
-	/**
-	 * Sets the attributes describing the start of the Range.
-	 * 
-	 * @param refNodeThe
-	 *            <code>refNode</code> value. This parameter must be
-	 *            different from <code>null</code>.
-	 * @param offsetThe
-	 *            <code>startOffset</code> value.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation, or DocumentType node.
-	 * @exception DOMException
-	 *                INDEX_SIZE_ERR: Raised if <code>offset</code> is
-	 *                negative or greater than the number of child units in
-	 *                <code>refNode</code>. Child units are 16-bit units if
-	 *                <code>refNode</code> is a type of CharacterData node
-	 *                (e.g., a Text or Comment node) or a
-	 *                ProcessingInstruction node. Child units are Nodes in all
-	 *                other cases. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStart(Node refNode, int offset) throws RangeException, DOMException {
-		this.startContainer = refNode;
-		this.startOffset = offset;
-	}
-
-	/**
-	 * Sets the start position to be after a node
-	 * 
-	 * @param refNodeRange
-	 *            starts after <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStartAfter(Node refNode) throws RangeException, DOMException {
-		if (refNode == null)
-			return;
-		Node parent = refNode.getParentNode();
-		if (parent == null)
-			return;
-		int index = ((NodeImpl) refNode).getIndex();
-		if (index < 0)
-			return;
-		setStart(parent, index + 1);
-	}
-
-	/**
-	 * Sets the start position to be before a node
-	 * 
-	 * @param refNodeRange
-	 *            starts before <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStartBefore(Node refNode) throws RangeException, DOMException {
-		if (refNode == null)
-			return;
-		Node parent = refNode.getParentNode();
-		if (parent == null)
-			return;
-		int index = ((NodeImpl) refNode).getIndex();
-		if (index < 0)
-			return;
-		setStart(parent, index);
-	}
-
-	/**
-	 * Reparents the contents of the Range to the given node and inserts the
-	 * node at the position of the start of the Range.
-	 * 
-	 * @param newParentThe
-	 *            node to surround the contents with.
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor
-	 *                container of either boundary-point of the Range is
-	 *                read-only. <br>
-	 *                WRONG_DOCUMENT_ERR: Raised if <code> newParent</code>
-	 *                and the container of the start of the Range were not
-	 *                created from the same document. <br>
-	 *                HIERARCHY_REQUEST_ERR: Raised if the container of the
-	 *                start of the Range is of a type that does not allow
-	 *                children of the type of <code>newParent</code> or if
-	 *                <code>newParent</code> is an ancestor of the container
-	 *                or if <code>node</code> would end up with a child node
-	 *                of a type not allowed by the type of <code>node</code>.
-	 *                <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 * @exception RangeException
-	 *                BAD_BOUNDARYPOINTS_ERR: Raised if the Range partially
-	 *                selects a non-text node. <br>
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code> node</code> is
-	 *                an Attr, Entity, DocumentType, Notation, Document, or
-	 *                DocumentFragment node.
-	 */
-	public void surroundContents(Node newParent) throws RangeException, DOMException {
-		// not supported
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ReadOnlyController.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ReadOnlyController.java
deleted file mode 100644
index 67aa59c..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/ReadOnlyController.java
+++ /dev/null
@@ -1,334 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.document.XMLText;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Node;
-
-
-class ReadOnlyController {
-
-	class Span {
-		int length;
-		int offset;
-
-		Span(int offset, int length) {
-			this.offset = offset;
-			this.length = length;
-		}
-	}
-
-	private static ReadOnlyController fInstance;
-
-	static synchronized ReadOnlyController getInstance() {
-		if (fInstance == null) {
-			fInstance = new ReadOnlyController();
-		}
-		return fInstance;
-	}
-
-	static private void lock(IStructuredDocument doc, int offset, int length, boolean canInsertBefore, boolean canInsertAfter) {
-		if (doc == null) {
-			return;
-		}
-		doc.makeReadOnly(offset, length);
-	}
-
-	static private void lock(IStructuredDocumentRegion node, boolean canInsertBefore, boolean canInsertAfter) {
-		if (node == null) {
-			return;
-		}
-		IStructuredDocument doc = node.getParentDocument();
-		if (doc == null) {
-			return;
-		}
-		doc.makeReadOnly(node.getStart(), node.getLength());
-	}
-
-	static private void unlock(IStructuredDocumentRegion node) {
-		if (node == null) {
-			return;
-		}
-		IStructuredDocument doc = node.getParentDocument();
-		if (doc == null) {
-			return;
-		}
-		doc.clearReadOnly(node.getStart(), node.getLength());
-	}
-
-	private ReadOnlyController() {
-		super();
-	}
-
-	private Span getDataSpan(XMLNode node) {
-		switch (node.getNodeType()) {
-			case Node.ELEMENT_NODE :
-				return getDataSpanForElement((XMLElement) node);
-			case Node.TEXT_NODE :
-				return getDataSpanForText((XMLText) node);
-			default :
-				return new Span(0, -1);
-		}
-	}
-
-	private Span getDataSpanForElement(XMLElement node) {
-		IStructuredDocumentRegion docRegion = node.getStartStructuredDocumentRegion();
-		if (docRegion == null) {
-			return new Span(0, -1);
-		}
-
-		ITextRegionList regions = docRegion.getRegions();
-		if (regions == null) {
-			return new Span(0, -1);
-		}
-
-		String startType;
-		String endType;
-		if (node.isCommentTag()) {
-			startType = XMLRegionContext.XML_COMMENT_OPEN;
-			endType = XMLRegionContext.XML_COMMENT_CLOSE;
-		} else {
-			startType = XMLRegionContext.XML_TAG_NAME;
-			endType = XMLRegionContext.XML_TAG_CLOSE;
-		}
-
-		int startOffset = -1;
-		int endOffset = -1;
-		ITextRegion prevRegion = null;
-		ITextRegion region;
-		for (int i = 0; i < regions.size(); i++) {
-			region = regions.get(i);
-			String type = region.getType();
-			if (type == startType) {
-				startOffset = region.getEnd();
-			} else if (type == endType && prevRegion != null) {
-				endOffset = prevRegion.getTextEnd();
-			}
-			prevRegion = region;
-		}
-
-		if (0 <= startOffset && 0 <= endOffset) {
-			return new Span(startOffset, endOffset - startOffset);
-		} else {
-			return new Span(0, -1);
-		}
-	}
-
-	private Span getDataSpanForText(XMLText node) {
-		IStructuredDocumentRegion docRegion = ((NodeImpl) node).getStructuredDocumentRegion();
-		if (docRegion == null) {
-			return new Span(0, -1);
-		}
-		return new Span(0, docRegion.getLength());
-	}
-
-	/**
-	 * This method is used from parent's setChildEditable()
-	 * 
-	 * case 1:<parent><node attr="value"/> <node2></parent>
-	 * x####################x case 2:<parent><node attr="value"> <child>
-	 * </child> </node> </parent> x###################? ?#######x (? :
-	 * editable if node.isEditable() == true)
-	 */
-	void lockBoth(XMLNode node) {
-		if (node == null) {
-			return;
-		}
-
-		IStructuredDocumentRegion flatNode;
-		boolean canInsert = false;
-
-		// end node (element)
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			flatNode = node.getEndStructuredDocumentRegion();
-			if (flatNode != null) {
-				canInsert = node.isChildEditable();
-				lock(flatNode, canInsert, false);
-			}
-		}
-		// start node
-		flatNode = node.getStartStructuredDocumentRegion();
-		if (flatNode != null) {
-			lock(flatNode, false, canInsert);
-		}
-	}
-
-	void lockData(XMLNode node) {
-		if (node == null) {
-			return;
-		}
-
-		Span span = getDataSpan(node);
-		if (0 <= span.length) {
-			lock(node.getModel().getStructuredDocument(), node.getStartOffset() + span.offset, span.length, false, false);
-		}
-	}
-
-	/**
-	 * lock itself and all descendants
-	 */
-	void lockDeep(XMLNode node) {
-		if (node == null) {
-			return;
-		}
-
-		int offset = node.getStartOffset();
-		int length = node.getEndOffset() - offset;
-
-		boolean canInsert = true;
-		XMLNode parent = (XMLNode) node.getParentNode();
-		if (parent != null && !parent.isChildEditable()) {
-			canInsert = false;
-		}
-		lock(node.getStructuredDocument(), offset, length, canInsert, canInsert);
-	}
-
-	/**
-	 * This method is used from parent's setChildEditable()
-	 * 
-	 * case 1:<parent><node attr="value"/> <node2></parent> x######x x##x
-	 * case 2:<parent><node attr="value"> <child></child> </node> </parent>
-	 * x######x x#? ?#######x (? : editable if node.isEditable() == true)
-	 */
-	void lockNode(XMLNode node) {
-		if (node == null) {
-			return;
-		}
-		if (!node.isDataEditable()) {
-			lockBoth(node);
-			return;
-		}
-
-		IStructuredDocumentRegion flatNode;
-		boolean canInsert = false;
-
-		// end node (element)
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			flatNode = node.getEndStructuredDocumentRegion();
-			if (flatNode != null) {
-				canInsert = node.isChildEditable();
-				lock(flatNode, canInsert, false);
-			}
-		}
-		// start node
-		flatNode = node.getStartStructuredDocumentRegion();
-		if (flatNode != null) {
-			Span span = getDataSpan(node);
-			if (0 <= span.length) {
-				IStructuredDocument structuredDocument = flatNode.getParentDocument();
-				int offset, length;
-				offset = flatNode.getStart();
-				length = span.offset;
-				lock(structuredDocument, offset, length, false, false);
-				offset = offset + span.offset + span.length;
-				length = flatNode.getEnd() - offset;
-				lock(structuredDocument, offset, length, canInsert, false);
-			} else {
-				lock(flatNode, false, canInsert);
-			}
-		}
-	}
-
-	private void unlock(IStructuredDocument doc, int offset, int length) {
-		if (doc == null) {
-			return;
-		}
-		doc.clearReadOnly(offset, length);
-	}
-
-	void unlockBoth(XMLNode node) {
-		if (node == null) {
-			return;
-		}
-
-		IStructuredDocumentRegion flatNode;
-		// start node
-		flatNode = node.getStartStructuredDocumentRegion();
-		if (flatNode != null) {
-			unlock(flatNode);
-		}
-		// end node
-		flatNode = node.getEndStructuredDocumentRegion();
-		if (flatNode != null) {
-			unlock(flatNode);
-		}
-	}
-
-	void unlockData(XMLNode node) {
-		if (node == null) {
-			return;
-		}
-
-		Span span = getDataSpan(node);
-		if (0 <= span.length) {
-			unlock(node.getModel().getStructuredDocument(), span.offset, span.length);
-		}
-	}
-
-	void unlockDeep(XMLNode node) {
-		if (node == null) {
-			return;
-		}
-
-		int offset = node.getStartOffset();
-		int length = node.getEndOffset() - offset;
-
-		unlock(node.getStructuredDocument(), offset, length);
-	}
-
-	void unlockNode(XMLNode node) {
-		if (node == null) {
-			return;
-		}
-
-		IStructuredDocumentRegion flatNode;
-		// end node
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			flatNode = node.getEndStructuredDocumentRegion();
-			if (flatNode != null) {
-				unlock(flatNode);
-			}
-		}
-
-		// start node
-		flatNode = node.getStartStructuredDocumentRegion();
-		if (flatNode != null) {
-			if (node.isDataEditable()) {
-				unlock(flatNode);
-			} else {
-				Span span = getDataSpan(node);
-				if (span.length <= 0) {
-					unlock(flatNode);
-				} else {
-					IStructuredDocument structuredDocument = flatNode.getParentDocument();
-					int offset, length;
-					offset = flatNode.getStart();
-					length = span.offset - offset;
-					unlock(structuredDocument, offset, length);
-					offset = span.offset + span.length;
-					length = flatNode.getEnd() - span.offset;
-					unlock(structuredDocument, offset, length);
-				}
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/SourceValidator.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/SourceValidator.java
deleted file mode 100644
index a7d89a3..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/SourceValidator.java
+++ /dev/null
@@ -1,348 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-import org.eclipse.wst.xml.core.document.InvalidCharacterException;
-import org.eclipse.wst.xml.core.document.JSPTag;
-import org.eclipse.wst.xml.core.document.XMLCharEntity;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Node;
-
-/**
- */
-public class SourceValidator {
-
-	private NodeImpl node = null;
-
-	/**
-	 */
-	public SourceValidator(Node node) {
-		super();
-
-		if (node != null) {
-			this.node = (NodeImpl) node;
-		}
-	}
-
-	/**
-	 */
-	public String convertSource(String source) {
-		if (source == null)
-			return null;
-		if (this.node == null)
-			return null; // error
-
-		// setup conversion conditions
-		boolean acceptTag = false;
-		boolean acceptClose = false;
-		boolean acceptQuote = false;
-		boolean acceptAmpersand = false;
-		boolean acceptEntityRef = true;
-		boolean acceptJSPEnd = true;
-		String endTagName = null;
-		if (this.node.getNodeType() == Node.ATTRIBUTE_NODE) {
-			XMLDocument document = (XMLDocument) this.node.getOwnerDocument();
-			if (document != null && document.isJSPType())
-				acceptTag = true;
-			if (acceptTag) {
-				Attr attr = (Attr) this.node;
-				ElementImpl element = (ElementImpl) attr.getOwnerElement();
-				if (element != null && element.isJSPTag())
-					acceptTag = false;
-			}
-			// if the source does not include single quote,
-			// double quote is valid
-			acceptQuote = (source.indexOf('\'') < 0);
-		} else if (this.node.getNodeType() == Node.TEXT_NODE) {
-			TextImpl text = (TextImpl) this.node;
-			if (text.isJSPContent()) {
-				int index = source.indexOf(JSPTag.TAG_CLOSE);
-				if (index < 0)
-					return source;
-				acceptTag = true;
-				acceptClose = true;
-				acceptQuote = true;
-				acceptAmpersand = true;
-				acceptJSPEnd = false;
-			} else if (text.isCDATAContent()) {
-				endTagName = text.getParentNode().getNodeName();
-				if (endTagName == null)
-					return null; // error
-				acceptTag = true;
-				acceptClose = true;
-				acceptQuote = true;
-				acceptAmpersand = true;
-			}
-		} else {
-			XMLDocument document = null;
-			if (this.node.getNodeType() == Node.DOCUMENT_NODE) {
-				document = (XMLDocument) this.node;
-			} else {
-				document = (XMLDocument) this.node.getOwnerDocument();
-			}
-			if (document != null && document.isJSPType())
-				acceptTag = true;
-		}
-
-		StringBuffer buffer = null;
-		int copiedLength = 0;
-		int length = source.length();
-		for (int i = 0; i < length; i++) {
-			String ref = null;
-			char c = source.charAt(i);
-			switch (c) {
-				case '<' :
-					if (acceptTag) {
-						if (endTagName != null) {
-							if (!matchEndTag(source, i + 1, endTagName))
-								continue;
-						} else {
-							int skip = skipTag(source, i + 1);
-							if (skip >= 0) {
-								i += skip;
-								continue;
-							}
-						}
-						// invalid JSP tag
-					}
-					ref = XMLCharEntity.LT_REF;
-					break;
-				case '>' :
-					if (acceptClose)
-						continue;
-					ref = XMLCharEntity.GT_REF;
-					break;
-				case '&' :
-					if (acceptAmpersand)
-						continue;
-					if (acceptEntityRef) {
-						int skip = skipEntityRef(source, i + 1);
-						if (skip >= 0) {
-							i += skip;
-							continue;
-						}
-					}
-					ref = XMLCharEntity.AMP_REF;
-					break;
-				case '"' :
-					if (acceptQuote)
-						continue;
-					ref = XMLCharEntity.QUOT_REF;
-					break;
-				case '%' :
-					if (acceptJSPEnd)
-						continue;
-					if (source.charAt(i + 1) != '>')
-						continue;
-					i++;
-					ref = XMLCharEntity.GT_REF;
-					break;
-				default :
-					continue;
-			}
-
-			if (ref != null) {
-				if (buffer == null) {
-					buffer = new StringBuffer(length + 8);
-				}
-				if (i > copiedLength) {
-					buffer.append(source.substring(copiedLength, i));
-				}
-				buffer.append(ref);
-				copiedLength = i + 1; // skip this character
-			}
-		}
-
-		if (buffer != null) {
-			if (copiedLength < length) {
-				buffer.append(source.substring(copiedLength, length));
-			}
-			return buffer.toString();
-		}
-		return source;
-	}
-
-	/**
-	 */
-	private final boolean matchEndTag(String source, int offset, String endTagName) {
-		if (source == null || endTagName == null)
-			return false;
-		int length = source.length();
-		if (offset < 0 || offset >= length)
-			return false;
-		if (source.charAt(offset) != '/')
-			return false;
-		offset++;
-		int end = offset + endTagName.length();
-		if (end > length)
-			return false;
-		return endTagName.equalsIgnoreCase(source.substring(offset, end));
-	}
-
-	/**
-	 */
-	private final int skipEntityRef(String source, int offset) {
-		if (source == null)
-			return -1;
-		if (offset < 0 || offset >= source.length())
-			return -1;
-		DocumentImpl document = (DocumentImpl) this.node.getOwnerDocument();
-		if (document == null)
-			return -1; // error
-
-		int end = source.indexOf(';', offset);
-		if (end < 0 || end == offset)
-			return -1;
-		String name = source.substring(offset, end);
-		if (name == null || document.getCharValue(name) == null)
-			return -1;
-		return (end + 1 - offset);
-	}
-
-	/**
-	 */
-	private final int skipTag(String source, int offset) {
-		if (source == null)
-			return -1;
-		if (offset < 0 || offset >= source.length())
-			return -1;
-
-		int end = offset;
-		if (source.charAt(offset) == '%') {
-			// JSP tag
-			int found = source.indexOf(JSPTag.TAG_CLOSE, offset + 1);
-			if (found < 0)
-				return -1; // invalid JSP tag
-			end = found + 2;
-		} else {
-			// normal tag
-			int found = source.indexOf('>', offset);
-			if (found < 0)
-				return -1; // invalid tag
-			end = found + 1;
-		}
-		return (end - offset);
-	}
-
-	/**
-	 */
-	public boolean validateSource(String source) throws InvalidCharacterException {
-		if (source == null)
-			return true;
-		if (this.node == null)
-			return false; // error
-		String message = null;
-
-		// setup validation conditions
-		boolean acceptTag = false;
-		boolean acceptClose = false;
-		boolean acceptQuote = true;
-		boolean acceptEntityRef = true;
-		String endTagName = null;
-		if (this.node.getNodeType() == Node.ATTRIBUTE_NODE) {
-			XMLDocument document = (XMLDocument) this.node.getOwnerDocument();
-			if (document != null && document.isJSPType())
-				acceptTag = true;
-			if (acceptTag) {
-				Attr attr = (Attr) this.node;
-				ElementImpl element = (ElementImpl) attr.getOwnerElement();
-				if (element != null && element.isJSPTag())
-					acceptTag = false;
-			}
-			// if the source does not include single quote,
-			// double quote is valid
-			acceptQuote = (source.indexOf('\'') < 0);
-		} else if (this.node.getNodeType() == Node.TEXT_NODE) {
-			TextImpl text = (TextImpl) this.node;
-			if (text.isJSPContent()) {
-				int index = source.indexOf(JSPTag.TAG_CLOSE);
-				if (index < 0)
-					return true;
-				message = XMLCorePlugin.getResourceString("%Invalid_character_('>')_fo_ERROR_"); //$NON-NLS-1$ = "Invalid character ('>') found"
-				throw new InvalidCharacterException(message, '>', index + 1);
-			} else if (text.isCDATAContent()) {
-				endTagName = text.getParentNode().getNodeName();
-				if (endTagName == null)
-					return false; // error
-				acceptTag = true;
-				acceptClose = true;
-			}
-		} else {
-			XMLDocument document = null;
-			if (this.node.getNodeType() == Node.DOCUMENT_NODE) {
-				document = (XMLDocument) this.node;
-			} else {
-				document = (XMLDocument) this.node.getOwnerDocument();
-			}
-			if (document != null && document.isJSPType())
-				acceptTag = true;
-		}
-
-		char c = 0;
-		int length = source.length();
-		for (int i = 0; i < length; i++) {
-			c = source.charAt(i);
-			switch (c) {
-				case '<' :
-					if (acceptTag) {
-						if (endTagName != null) {
-							if (!matchEndTag(source, i + 1, endTagName))
-								continue;
-						} else {
-							int skip = skipTag(source, i + 1);
-							if (skip >= 0) {
-								i += skip;
-								continue;
-							}
-						}
-						// invalid tag
-					}
-					message = XMLCorePlugin.getResourceString("%Invalid_character_('<')_fo_ERROR_"); //$NON-NLS-1$ = "Invalid character ('<') found"
-					break;
-				case '>' :
-					if (acceptClose)
-						continue;
-					message = XMLCorePlugin.getResourceString("%Invalid_character_('>')_fo_ERROR_"); //$NON-NLS-1$ = "Invalid character ('>') found"
-					break;
-				case '&' :
-					if (acceptEntityRef) {
-						if (endTagName != null)
-							continue;
-						int skip = skipEntityRef(source, i + 1);
-						if (skip >= 0) {
-							i += skip;
-							continue;
-						}
-						// invalid entity reference
-					}
-					message = XMLCorePlugin.getResourceString("%Invalid_character_('&')_fo_ERROR_"); //$NON-NLS-1$ = "Invalid character ('&') found"
-					break;
-				case '"' :
-					if (acceptQuote)
-						continue;
-					message = XMLCorePlugin.getResourceString("%Invalid_character_('__')_f_EXC_"); //$NON-NLS-1$ = "Invalid character ('\"') found"
-					break;
-				default :
-					continue;
-			}
-
-			if (message != null) {
-				throw new InvalidCharacterException(message, c, i);
-			}
-		}
-
-		return true;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionChecker.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionChecker.java
deleted file mode 100644
index 47a50fd..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionChecker.java
+++ /dev/null
@@ -1,143 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.io.IOException;
-import java.io.Writer;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.w3c.dom.Node;
-
-
-/**
- * This class is only for debug purpose.
- */
-public class StructuredDocumentRegionChecker {
-	String EOL = System.getProperty("line.separator"); //$NON-NLS-1$
-
-	private int offset = 0;
-	Writer testWriter = null;
-
-	/**
-	 */
-	public StructuredDocumentRegionChecker() {
-		super();
-	}
-
-	public StructuredDocumentRegionChecker(Writer writer) {
-		super();
-		testWriter = writer;
-	}
-
-	/**
-	 */
-	private void checkChildNodes(Node node) {
-		for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
-			checkNode(child);
-		}
-	}
-
-	/**
-	 */
-	public void checkModel(XMLModel model) {
-		checkChildNodes(model.getDocument());
-	}
-
-	/**
-	 */
-	private void checkNode(Node node) {
-		checkStructuredDocumentRegion(((NodeImpl) node).getStructuredDocumentRegion());
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			checkChildNodes(node);
-			checkStructuredDocumentRegion(((ElementImpl) node).getEndStructuredDocumentRegion());
-		}
-	}
-
-	/**
-	 */
-	private void checkStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return;
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			int n = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < n; i++) {
-				IStructuredDocumentRegion c = container.getStructuredDocumentRegion(i);
-				if (c == null) {
-					reportError("null"); //$NON-NLS-1$
-					continue;
-				}
-				checkStructuredDocumentRegion(c);
-			}
-			return;
-		}
-
-		int start = flatNode.getStart();
-		if (start < this.offset)
-			reportError("overwrap"); //$NON-NLS-1$
-		if (start > this.offset)
-			reportError("gap"); //$NON-NLS-1$
-		int end = flatNode.getEnd();
-		this.offset = end;
-
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) flatNode;
-			IStructuredDocumentRegion p = proxy.getStructuredDocumentRegion();
-			if (p == null) {
-				reportError("null"); //$NON-NLS-1$
-				return;
-			}
-			int s = p.getStart();
-			int e = p.getEnd();
-			if (s > start || e < end)
-				reportError("out"); //$NON-NLS-1$
-			if (s == start && e == end)
-				reportWarning("vain"); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 */
-	private void reportError(String message) {
-		String msg = "StructuredDocumentRegionChecker : error : " + message; //$NON-NLS-1$
-		if (testWriter != null) {
-			try {
-				testWriter.write(msg + EOL);
-			} catch (IOException e) {
-				e.printStackTrace();
-			}
-		} else {
-			System.out.println(msg);
-		}
-		throw new StructuredDocumentRegionManagementException();
-	}
-
-	/**
-	 */
-	private void reportWarning(String message) {
-		String msg = "StructuredDocumentRegionChecker : warning : " + message; //$NON-NLS-1$
-		if (testWriter != null) {
-			try {
-				testWriter.write(msg + EOL);
-			} catch (IOException e) {
-				e.printStackTrace();
-			}
-		} else {
-			System.out.println(msg);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionContainer.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionContainer.java
deleted file mode 100644
index 166d8c6..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionContainer.java
+++ /dev/null
@@ -1,605 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Vector;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-
-
-class StructuredDocumentRegionContainer implements IStructuredDocumentRegion {
-
-	private Vector flatNodes = new Vector(2);
-
-	/**
-	 */
-	StructuredDocumentRegionContainer() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#addRegion(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public void addRegion(ITextRegion aRegion) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjust(int)
-	 */
-	public void adjust(int i) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustLengthWith(int)
-	 */
-	public void adjustLengthWith(int i) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustStart(int)
-	 */
-	public void adjustStart(int i) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/**
-	 */
-	void appendStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return;
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			if (container.getStructuredDocumentRegionCount() > 0) {
-				this.flatNodes.addAll(container.flatNodes);
-			}
-		} else {
-			this.flatNodes.addElement(flatNode);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#containsOffset(int)
-	 */
-	public boolean containsOffset(int i) {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#containsOffset(com.ibm.sed.structured.text.ITextRegion,
-	 *      int)
-	 */
-	public boolean containsOffset(ITextRegion region, int i) {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#equatePositions(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public void equatePositions(ITextRegion region) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getDeepestRegionAtCharacterOffset(int)
-	 */
-	public ITextRegion getDeepestRegionAtCharacterOffset(int offset) {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 */
-	public int getEnd() {
-		IStructuredDocumentRegion last = getLastStructuredDocumentRegion();
-		if (last == null)
-			return 0;
-		return last.getEnd();
-	}
-
-	/**
-	 */
-	public int getEndOffset() {
-		return getEnd();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getEndOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getEndOffset(ITextRegion containedRegion) {
-		// XXX Auto-generated method stub
-		return 0;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getFirstRegion()
-	 */
-	public ITextRegion getFirstRegion() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion getFirstStructuredDocumentRegion() {
-		if (this.flatNodes.isEmpty())
-			return null;
-		return (IStructuredDocumentRegion) this.flatNodes.elementAt(0);
-	}
-
-	/**
-	 */
-	public String getFullText() {
-		return getText();
-	}
-
-	/**
-	 */
-	public String getFullText(ITextRegion aRegion) {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public String getFullText(String context) {
-		// not supported
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getLastRegion()
-	 */
-	public ITextRegion getLastRegion() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion getLastStructuredDocumentRegion() {
-		int size = this.flatNodes.size();
-		if (size == 0)
-			return null;
-		return (IStructuredDocumentRegion) this.flatNodes.elementAt(size - 1);
-	}
-
-	/** 
-	 */
-	public int getLength() {
-		return (getEnd() - getStart());
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#getNext()
-	 */
-	public IStructuredDocumentRegion getNext() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/** 
-	 */
-	public int getNumberOfRegions() {
-		// not supported
-		return 0;
-	}
-
-	/**
-	 */
-	public ITextRegionContainer getParent() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#getParentDocument()
-	 */
-	public IStructuredDocument getParentDocument() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#getPrevious()
-	 */
-	public IStructuredDocumentRegion getPrevious() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 */
-	public ITextRegion getRegionAtCharacterOffset(int offset) {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public ITextRegionList getRegions() {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public int getStart() {
-		IStructuredDocumentRegion first = getFirstStructuredDocumentRegion();
-		if (first == null)
-			return 0;
-		return first.getStart();
-	}
-
-	/**
-	 */
-	public int getStartOffset() {
-		return getStart();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getStartOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getStartOffset(ITextRegion containedRegion) {
-		// XXX Auto-generated method stub
-		return 0;
-	}
-
-	/**
-	 */
-	public IStructuredDocument getStructuredDocument() {
-		IStructuredDocumentRegion first = getFirstStructuredDocumentRegion();
-		if (first == null)
-			return null;
-		return first.getParentDocument();
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion getStructuredDocumentRegion(int index) {
-		if (index < 0 || index >= this.flatNodes.size())
-			return null;
-		return (IStructuredDocumentRegion) this.flatNodes.elementAt(index);
-	}
-
-	/**
-	 */
-	int getStructuredDocumentRegionCount() {
-		return this.flatNodes.size();
-	}
-
-	/**
-	 */
-	public String getText() {
-		int size = this.flatNodes.size();
-		if (size == 0)
-			return new String();
-		StringBuffer buffer = new StringBuffer();
-		for (int i = 0; i < size; i++) {
-			IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) this.flatNodes.elementAt(i);
-			if (flatNode == null)
-				continue;
-			buffer.append(flatNode.getText());
-		}
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	public String getText(ITextRegion aRegion) {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public String getText(String context) {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public int getTextEnd() {
-		return getEnd();
-	}
-
-	/**
-	 */
-	public int getTextEndOffset() {
-		return getTextEnd();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getTextEndOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getTextEndOffset(ITextRegion containedRegion) {
-		// XXX Auto-generated method stub
-		return 0;
-	}
-
-	/**
-	 * The text length is equal to length if there is no white space at the
-	 * end of a region. Otherwise it is smaller than length.
-	 */
-	public int getTextLength() {
-		return (getTextEnd() - getStart());
-	}
-
-	/**
-	 */
-	public String getType() {
-		return "StructuredDocumentRegionContainer";//$NON-NLS-1$
-	}
-
-	/**
-	 */
-	void insertStructuredDocumentRegion(IStructuredDocumentRegion flatNode, int index) {
-		if (flatNode == null)
-			return;
-		if (index < 0)
-			return;
-		int size = this.flatNodes.size();
-		if (index > size)
-			return;
-		if (index == size) {
-			appendStructuredDocumentRegion(flatNode);
-			return;
-		}
-		this.flatNodes.insertElementAt(flatNode, index);
-	}
-
-	public boolean isDeleted() {
-		// I'll assume never really needed here
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#isEnded()
-	 */
-	public boolean isEnded() {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion removeStructuredDocumentRegion(int index) {
-		if (index < 0 || index >= this.flatNodes.size())
-			return null;
-		IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) this.flatNodes.elementAt(index);
-		this.flatNodes.removeElementAt(index);
-		return flatNode;
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion removeStructuredDocumentRegion(IStructuredDocumentRegion oldStructuredDocumentRegion) {
-		if (oldStructuredDocumentRegion == null)
-			return null;
-		int size = this.flatNodes.size();
-		for (int i = 0; i < size; i++) {
-			IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) this.flatNodes.elementAt(i);
-			if (flatNode == oldStructuredDocumentRegion) {
-				this.flatNodes.removeElementAt(i);
-				return flatNode;
-			}
-		}
-		return null; // not found
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion replaceStructuredDocumentRegion(IStructuredDocumentRegion flatNode, int index) {
-		if (flatNode == null)
-			return removeStructuredDocumentRegion(index);
-		if (index < 0 || index >= this.flatNodes.size())
-			return null;
-		IStructuredDocumentRegion oldStructuredDocumentRegion = (IStructuredDocumentRegion) this.flatNodes.elementAt(index);
-		this.flatNodes.setElementAt(flatNode, index);
-		return oldStructuredDocumentRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#sameAs(com.ibm.sed.structured.text.IStructuredDocumentRegion,
-	 *      int)
-	 */
-	public boolean sameAs(IStructuredDocumentRegion region, int shift) {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	/**
-	 */
-	public boolean sameAs(ITextRegion region, int shift) {
-		// not support
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#sameAs(com.ibm.sed.structured.text.ITextRegion,
-	 *      com.ibm.sed.structured.text.IStructuredDocumentRegion,
-	 *      com.ibm.sed.structured.text.ITextRegion, int)
-	 */
-	public boolean sameAs(ITextRegion oldRegion, IStructuredDocumentRegion documentRegion, ITextRegion newRegion, int shift) {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	public void setDeleted(boolean deleted) {
-		// I'll assume never really needed here
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setEnded(boolean)
-	 */
-	public void setEnded(boolean hasEnd) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setLength(int)
-	 */
-	public void setLength(int newLength) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setNext(com.ibm.sed.structured.text.IStructuredDocumentRegion)
-	 */
-	public void setNext(IStructuredDocumentRegion newNext) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setParentDocument(com.ibm.sed.structured.text.IStructuredDocument)
-	 */
-	public void setParentDocument(IStructuredDocument document) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setPrevious(com.ibm.sed.structured.text.IStructuredDocumentRegion)
-	 */
-	public void setPrevious(IStructuredDocumentRegion newPrevious) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/**
-	 */
-	public void setRegions(ITextRegionList embeddedRegions) {
-		// not supported
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setStart(int)
-	 */
-	public void setStart(int newStart) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/**
-	 * toString method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append('{');
-		int count = getStructuredDocumentRegionCount();
-		for (int i = 0; i < count; i++) {
-			if (i != 0)
-				buffer.append(',');
-			IStructuredDocumentRegion flatNode = getStructuredDocumentRegion(i);
-			if (flatNode == null)
-				buffer.append("null");//$NON-NLS-1$
-			else
-				buffer.append(flatNode.toString());
-		}
-		buffer.append('}');
-		return buffer.toString();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#updateModel(java.lang.Object,
-	 *      com.ibm.sed.structured.text.IStructuredDocumentRegion,
-	 *      java.lang.String, int, int)
-	 */
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion flatnode, String changes, int start, int end) {
-		// XXX Auto-generated method stub
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionManagementException.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionManagementException.java
deleted file mode 100644
index 082bc92..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionManagementException.java
+++ /dev/null
@@ -1,34 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-
-
-
-/**
- */
-public class StructuredDocumentRegionManagementException extends SourceEditingRuntimeException {
-
-	/**
-	 * Default <code>serialVersionUID</code>
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * StructuredDocumentRegionManagementException constructor
-	 */
-	public StructuredDocumentRegionManagementException() {
-		super("IStructuredDocumentRegion management failed.");//$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionProxy.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionProxy.java
deleted file mode 100644
index 1503845..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionProxy.java
+++ /dev/null
@@ -1,548 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-
-
-class StructuredDocumentRegionProxy implements IStructuredDocumentRegion {
-	private IStructuredDocumentRegion flatNode = null;
-	private int length = 0;
-
-	private int offset = 0;
-
-	/**
-	 */
-	StructuredDocumentRegionProxy() {
-		super();
-	}
-
-	/**
-	 */
-	StructuredDocumentRegionProxy(int offset, int length) {
-		super();
-
-		this.offset = offset;
-		this.length = length;
-	}
-
-	/**
-	 */
-	StructuredDocumentRegionProxy(int offset, int length, IStructuredDocumentRegion flatNode) {
-		super();
-
-		this.offset = offset;
-		this.length = length;
-		this.flatNode = flatNode;
-		if (this.flatNode != null)
-			this.offset -= this.flatNode.getStart();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#addRegion(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public void addRegion(ITextRegion aRegion) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjust(int)
-	 */
-	public void adjust(int i) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustLengthWith(int)
-	 */
-	public void adjustLengthWith(int i) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustStart(int)
-	 */
-	public void adjustStart(int i) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#containsOffset(int)
-	 */
-	public boolean containsOffset(int i) {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#containsOffset(com.ibm.sed.structured.text.ITextRegion,
-	 *      int)
-	 */
-	public boolean containsOffset(ITextRegion region, int i) {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#equatePositions(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public void equatePositions(ITextRegion region) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getDeepestRegionAtCharacterOffset(int)
-	 */
-	public ITextRegion getDeepestRegionAtCharacterOffset(int offset) {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 */
-	public int getEnd() {
-		int flatNodeOffset = 0;
-		if (this.flatNode != null)
-			flatNodeOffset = this.flatNode.getStart();
-		return flatNodeOffset + this.offset + this.length;
-	}
-
-	/**
-	 */
-	public int getEndOffset() {
-		return getEnd();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getEndOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getEndOffset(ITextRegion containedRegion) {
-		// XXX Auto-generated method stub
-		return 0;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getFirstRegion()
-	 */
-	public ITextRegion getFirstRegion() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 */
-	public String getFullText() {
-		return getText();
-	}
-
-	/**
-	 */
-	public String getFullText(ITextRegion aRegion) {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public String getFullText(String context) {
-		// not supported
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getLastRegion()
-	 */
-	public ITextRegion getLastRegion() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/** 
-	 */
-	public int getLength() {
-		return this.length;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#getNext()
-	 */
-	public IStructuredDocumentRegion getNext() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/** 
-	 */
-	public int getNumberOfRegions() {
-		// not supported
-		return 0;
-	}
-
-	/** 
-	 */
-	int getOffset() {
-		int flatNodeOffset = 0;
-		if (this.flatNode != null)
-			flatNodeOffset = this.flatNode.getStart();
-		return flatNodeOffset + this.offset;
-	}
-
-	/**
-	 */
-	public ITextRegionContainer getParent() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#getParentDocument()
-	 */
-	public IStructuredDocument getParentDocument() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#getPrevious()
-	 */
-	public IStructuredDocumentRegion getPrevious() {
-		// XXX Auto-generated method stub
-		return null;
-	}
-
-	/**
-	 */
-	public ITextRegion getRegionAtCharacterOffset(int offset) {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public ITextRegionList getRegions() {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public int getStart() {
-		int flatNodeOffset = 0;
-		if (this.flatNode != null)
-			flatNodeOffset = this.flatNode.getStart();
-		return flatNodeOffset + this.offset;
-	}
-
-	/**
-	 */
-	public int getStartOffset() {
-		return getStart();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getStartOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getStartOffset(ITextRegion containedRegion) {
-		// XXX Auto-generated method stub
-		return 0;
-	}
-
-	/**
-	 */
-	public IStructuredDocument getStructuredDocument() {
-		// not supported
-		return null;
-	}
-
-	/** 
-	 */
-	IStructuredDocumentRegion getStructuredDocumentRegion() {
-		return this.flatNode;
-	}
-
-	/**
-	 */
-	public String getText() {
-		if (this.flatNode == null)
-			return new String();
-		String text = this.flatNode.getText();
-		if (text == null)
-			return new String();
-		int end = this.offset + this.length;
-		return text.substring(this.offset, end);
-	}
-
-	/**
-	 */
-	public String getText(ITextRegion aRegion) {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public String getText(String context) {
-		// not supported
-		return null;
-	}
-
-	/**
-	 */
-	public int getTextEnd() {
-		return getEnd();
-	}
-
-	/**
-	 */
-	public int getTextEndOffset() {
-		return getTextEnd();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getTextEndOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getTextEndOffset(ITextRegion containedRegion) {
-		// XXX Auto-generated method stub
-		return 0;
-	}
-
-	/**
-	 * The text length is equal to length if there is no white space at the
-	 * end of a region. Otherwise it is smaller than length.
-	 */
-	public int getTextLength() {
-		return getLength();
-	}
-
-	/**
-	 */
-	public String getType() {
-		return "StructuredDocumentRegionProxy";//$NON-NLS-1$
-	}
-
-	public boolean isDeleted() {
-		// I'll assume never really needed here
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#isEnded()
-	 */
-	public boolean isEnded() {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#sameAs(com.ibm.sed.structured.text.IStructuredDocumentRegion,
-	 *      int)
-	 */
-	public boolean sameAs(IStructuredDocumentRegion region, int shift) {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	/**
-	 */
-	public boolean sameAs(ITextRegion region, int shift) {
-		// not supported
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#sameAs(com.ibm.sed.structured.text.ITextRegion,
-	 *      com.ibm.sed.structured.text.IStructuredDocumentRegion,
-	 *      com.ibm.sed.structured.text.ITextRegion, int)
-	 */
-	public boolean sameAs(ITextRegion oldRegion, IStructuredDocumentRegion documentRegion, ITextRegion newRegion, int shift) {
-		// XXX Auto-generated method stub
-		return false;
-	}
-
-	public void setDeleted(boolean deleted) {
-		// I'll assume never really needed here
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setEnded(boolean)
-	 */
-	public void setEnded(boolean hasEnd) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/**
-	 * had to make public, due to API transition.
-	 */
-	public void setLength(int length) {
-		this.length = length;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setNext(com.ibm.sed.structured.text.IStructuredDocumentRegion)
-	 */
-	public void setNext(IStructuredDocumentRegion newNext) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/**
-	 */
-	void setOffset(int offset) {
-		this.offset = offset;
-		if (this.flatNode != null)
-			this.offset -= this.flatNode.getStart();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setParentDocument(com.ibm.sed.structured.text.IStructuredDocument)
-	 */
-	public void setParentDocument(IStructuredDocument document) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setPrevious(com.ibm.sed.structured.text.IStructuredDocumentRegion)
-	 */
-	public void setPrevious(IStructuredDocumentRegion newPrevious) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/**
-	 */
-	public void setRegions(ITextRegionList embeddedRegions) {
-		// not supported
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.IStructuredDocumentRegion#setStart(int)
-	 */
-	public void setStart(int newStart) {
-		// XXX Auto-generated method stub
-
-	}
-
-	/**
-	 */
-	void setStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		if (this.flatNode != null)
-			this.offset += this.flatNode.getStart();
-		this.flatNode = flatNode;
-		if (this.flatNode != null)
-			this.offset -= flatNode.getStart();
-	}
-
-	/**
-	 * toString method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append('[');
-		buffer.append(getStart());
-		buffer.append(',');
-		buffer.append(getEnd());
-		buffer.append(']');
-		buffer.append('(');
-		if (this.flatNode != null)
-			buffer.append(this.flatNode.toString());
-		else
-			buffer.append("null");//$NON-NLS-1$
-		buffer.append(')');
-		return buffer.toString();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#updateModel(java.lang.Object,
-	 *      com.ibm.sed.structured.text.IStructuredDocumentRegion,
-	 *      java.lang.String, int, int)
-	 */
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion flatnode, String changes, int start, int end) {
-		// XXX Auto-generated method stub
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionUtil.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionUtil.java
deleted file mode 100644
index 81d2a63..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/StructuredDocumentRegionUtil.java
+++ /dev/null
@@ -1,166 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * Provides convenient functions to handle IStructuredDocumentRegion and
- * ITextRegion.
- */
-class StructuredDocumentRegionUtil {
-
-	/**
-	 * Extracts contents enclosed with quotes. Quotes may be double or single.
-	 */
-	static String getAttrValue(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		if (region == null)
-			return null;
-		if (flatNode == null)
-			return null;
-		String value = flatNode.getText(region);
-		if (value == null)
-			return null;
-		int length = value.length();
-		if (length == 0)
-			return value;
-		char firstChar = value.charAt(0);
-		if (firstChar == '"' || firstChar == '\'') {
-			if (length == 1)
-				return null;
-			if (value.charAt(length - 1) == firstChar)
-				length--;
-			return value.substring(1, length);
-		}
-		return value;
-	}
-
-	/**
-	 * Extracts the name without heading '&' and tailing ';'.
-	 */
-	static String getEntityRefName(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		if (region == null)
-			return null;
-		String ref = flatNode.getText(region);
-		int length = ref.length();
-		if (length == 0)
-			return ref;
-		int offset = 0;
-		if (ref.charAt(0) == '&')
-			offset = 1;
-		if (ref.charAt(length - 1) == ';')
-			length--;
-		if (offset >= length)
-			return null;
-		return ref.substring(offset, length);
-	}
-
-	/**
-	 * Returns the first region.
-	 */
-	static ITextRegion getFirstRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null || regions.size() == 0)
-			return null;
-		return regions.get(0);
-	}
-
-	/**
-	 * Returns the type of the first region.
-	 */
-	static String getFirstRegionType(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return XMLRegionContext.UNDEFINED;
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null || regions.size() == 0)
-			return XMLRegionContext.UNDEFINED;
-		ITextRegion region = regions.get(0);
-		return region.getType();
-	}
-
-	/**
-	 */
-	static IStructuredDocumentRegion getFirstStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			flatNode = ((StructuredDocumentRegionContainer) flatNode).getFirstStructuredDocumentRegion();
-		}
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			flatNode = ((StructuredDocumentRegionProxy) flatNode).getStructuredDocumentRegion();
-		}
-		return flatNode;
-	}
-
-	/**
-	 * Returns the last region.
-	 */
-	static ITextRegion getLastRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null || regions.size() == 0)
-			return null;
-		return regions.get(regions.size() - 1);
-	}
-
-	/**
-	 * Returns the type of the first region.
-	 */
-	static String getLastRegionType(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return XMLRegionContext.UNDEFINED;
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null || regions.size() == 0)
-			return XMLRegionContext.UNDEFINED;
-		ITextRegion region = regions.get(regions.size() - 1);
-		return region.getType();
-	}
-
-	/**
-	 */
-	static IStructuredDocumentRegion getLastStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			flatNode = ((StructuredDocumentRegionContainer) flatNode).getLastStructuredDocumentRegion();
-		}
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			flatNode = ((StructuredDocumentRegionProxy) flatNode).getStructuredDocumentRegion();
-		}
-		return flatNode;
-	}
-
-	/**
-	 */
-	static IStructuredDocumentRegion getStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			flatNode = ((StructuredDocumentRegionProxy) flatNode).getStructuredDocumentRegion();
-		}
-		return flatNode;
-	}
-
-	StructuredDocumentRegionUtil() {
-		super();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/TextImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/TextImpl.java
deleted file mode 100644
index 0eb7f4a..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/TextImpl.java
+++ /dev/null
@@ -1,1115 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.document.InvalidCharacterException;
-import org.eclipse.wst.xml.core.document.XMLGenerator;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLText;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-
-/**
- * TextImpl class
- */
-public class TextImpl extends CharacterDataImpl implements XMLText {
-
-	/**
-	 */
-	private class StringPair {
-		private String fFirst = null;
-		private String fSecond = null;
-
-		StringPair(String first, String second) {
-			this.fFirst = first;
-			this.fSecond = second;
-		}
-
-		String getFirst() {
-			return this.fFirst;
-		}
-
-		String getSecond() {
-			return this.fSecond;
-		}
-	}
-
-	private String fSource = null;
-
-	/**
-	 * TextImpl constructor
-	 */
-	protected TextImpl() {
-		super();
-	}
-
-	/**
-	 * TextImpl constructor
-	 * 
-	 * @param that
-	 *            TextImpl
-	 */
-	protected TextImpl(TextImpl that) {
-		super(that);
-
-		if (that != null) {
-			this.fSource = that.getSource();
-		}
-	}
-
-	/**
-	 * appendData method
-	 * 
-	 * @param arg
-	 *            java.lang.String
-	 */
-	public void appendData(String arg) throws DOMException {
-		if (arg == null || arg.length() == 0)
-			return;
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		String newSource = getSource(arg);
-		if (newSource == null)
-			return;
-		String source = getSource();
-		if (source != null)
-			setTextSource(source + newSource);
-		else
-			setTextSource(newSource);
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion appendStructuredDocumentRegion(IStructuredDocumentRegion newStructuredDocumentRegion) {
-		if (newStructuredDocumentRegion == null)
-			return null;
-
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null) {
-			setStructuredDocumentRegion(newStructuredDocumentRegion);
-			return newStructuredDocumentRegion;
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			container.appendStructuredDocumentRegion(newStructuredDocumentRegion);
-		}
-		else {
-			StructuredDocumentRegionContainer container = new StructuredDocumentRegionContainer();
-			container.appendStructuredDocumentRegion(flatNode);
-			container.appendStructuredDocumentRegion(newStructuredDocumentRegion);
-			setStructuredDocumentRegion(container);
-		}
-
-		return newStructuredDocumentRegion;
-	}
-
-	/**
-	 * appendText method
-	 * 
-	 * @param text
-	 *            org.w3c.dom.Text
-	 */
-	public void appendText(Text newText) {
-		if (newText == null)
-			return;
-
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		TextImpl text = (TextImpl) newText;
-		String newSource = text.getSource();
-		if (newSource == null && newSource.length() == 0)
-			return;
-		String source = getSource();
-		if (source != null)
-			setTextSource(source + newSource);
-		else
-			setTextSource(newSource);
-	}
-
-	/**
-	 * cloneNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 * @param deep
-	 *            boolean
-	 */
-	public Node cloneNode(boolean deep) {
-		TextImpl cloned = new TextImpl(this);
-		return cloned;
-	}
-
-	/**
-	 * deleteData method
-	 * 
-	 * @param offset
-	 *            int
-	 * @param count
-	 *            int
-	 */
-	public void deleteData(int offset, int count) throws DOMException {
-		if (count == 0)
-			return;
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		if (count < 0 || offset < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String source = getSource();
-		if (source == null || source.length() == 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		StringPair pair = substringSourceExcluded(source, offset, count);
-		if (pair == null)
-			return;
-		source = null;
-		String first = pair.getFirst();
-		if (first != null)
-			source = first;
-		String second = pair.getSecond();
-		if (second != null) {
-			if (source != null)
-				source += second;
-			else
-				source = second;
-		}
-		if (source == null)
-			source = new String(); // delete all
-		setTextSource(source);
-	}
-
-	/**
-	 * getData method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getData() throws DOMException {
-		if (this.fSource != null)
-			return getData(this.fSource);
-		String data = super.getData();
-		if (data != null)
-			return data;
-		return getData(getStructuredDocumentRegion());
-	}
-
-	/**
-	 */
-	private String getData(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return new String();
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			int length = container.getLength();
-			if (length < 16)
-				length = 16; // default
-			StringBuffer buffer = new StringBuffer(length);
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				String data = getData(content);
-				if (data == null)
-					continue;
-				buffer.append(data);
-			}
-			return buffer.toString();
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			return flatNode.getText();
-		}
-
-		ITextRegion region = StructuredDocumentRegionUtil.getFirstRegion(flatNode);
-		if (region != null) {
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_ENTITY_REFERENCE || regionType == XMLRegionContext.XML_CHAR_REFERENCE) {
-				String name = StructuredDocumentRegionUtil.getEntityRefName(flatNode, region);
-				if (name != null) {
-					DocumentImpl document = (DocumentImpl) getOwnerDocument();
-					if (document != null) {
-						String value = document.getCharValue(name);
-						if (value != null)
-							return value;
-					}
-				}
-			}
-		}
-
-		return flatNode.getText();
-	}
-
-	/**
-	 * Returns data for the source
-	 */
-	private String getData(String source) {
-		if (source == null)
-			return null;
-		StringBuffer buffer = null;
-		int offset = 0;
-		int length = source.length();
-		int ref = source.indexOf('&');
-		while (ref >= 0) {
-			int end = source.indexOf(';', ref + 1);
-			if (end > ref + 1) {
-				String name = source.substring(ref + 1, end);
-				String value = getCharValue(name);
-				if (value != null) {
-					if (buffer == null)
-						buffer = new StringBuffer(length);
-					if (ref > offset)
-						buffer.append(source.substring(offset, ref));
-					buffer.append(value);
-					offset = end + 1;
-					ref = end;
-				}
-			}
-			ref = source.indexOf('&', ref + 1);
-		}
-		if (buffer == null)
-			return source;
-		if (length > offset)
-			buffer.append(source.substring(offset));
-		return buffer.toString();
-	}
-
-	/**
-	 * getFirstStructuredDocumentRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getFirstStructuredDocumentRegion() {
-		return StructuredDocumentRegionUtil.getFirstStructuredDocumentRegion(getStructuredDocumentRegion());
-	}
-
-	/**
-	 * getLastStructuredDocumentRegion method
-	 * 
-	 * @return com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getLastStructuredDocumentRegion() {
-		return StructuredDocumentRegionUtil.getLastStructuredDocumentRegion(getStructuredDocumentRegion());
-	}
-
-	/**
-	 * getNodeName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getNodeName() {
-		return "#text";//$NON-NLS-1$
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return short
-	 */
-	public short getNodeType() {
-		return TEXT_NODE;
-	}
-
-	/**
-	 */
-	public String getSource() {
-		if (this.fSource != null)
-			return this.fSource;
-		String data = super.getData();
-		if (data != null && data.length() > 0) {
-			String source = getSource(data);
-			if (source != null)
-				return source;
-		}
-		return super.getSource();
-	}
-
-	/**
-	 * Returns source for the data
-	 */
-	private String getSource(String data) {
-		if (data == null)
-			return null;
-		XMLModel model = getModel();
-		if (model == null)
-			return null; // error
-		XMLGenerator generator = model.getGenerator();
-		if (generator == null)
-			return null; // error
-		return generator.generateTextData(this, data);
-	}
-
-	/**
-	 */
-	String getTextSource() {
-		return this.fSource;
-	}
-
-	/**
-	 */
-	public String getValueSource() {
-		return getSource();
-	}
-
-	/**
-	 */
-	boolean hasStructuredDocumentRegion(IStructuredDocumentRegion askedStructuredDocumentRegion) {
-		if (askedStructuredDocumentRegion == null)
-			return false;
-
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return false;
-
-		if (flatNode == askedStructuredDocumentRegion)
-			return true;
-
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) flatNode;
-			if (proxy.getStructuredDocumentRegion() == askedStructuredDocumentRegion)
-				return true;
-			return false;
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (content == null)
-					continue;
-				if (content == askedStructuredDocumentRegion)
-					return true;
-				if (content instanceof StructuredDocumentRegionProxy) {
-					StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-					if (proxy.getStructuredDocumentRegion() == askedStructuredDocumentRegion)
-						return true;
-				}
-			}
-			return false;
-		}
-
-		return false;
-	}
-
-	/**
-	 * insertData method
-	 * 
-	 * @param offset
-	 *            int
-	 * @param arg
-	 *            java.lang.String
-	 */
-	public void insertData(int offset, String arg) throws DOMException {
-		if (arg == null || arg.length() == 0)
-			return;
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		if (offset < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String source = getSource();
-		if (source == null || source.length() == 0) {
-			if (offset > 0) {
-				throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-			}
-			source = getSource(arg);
-			if (source != null)
-				setTextSource(source);
-			return;
-		}
-
-		StringPair pair = substringSourceExcluded(source, offset, 0);
-		if (pair == null)
-			return; // error
-		StringBuffer buffer = new StringBuffer(source.length() + arg.length());
-		String first = pair.getFirst();
-		if (first != null)
-			buffer.append(first);
-		source = getSource(arg);
-		if (source != null)
-			buffer.append(source);
-		String second = pair.getSecond();
-		if (second != null)
-			buffer.append(second);
-		setTextSource(buffer.toString());
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion insertStructuredDocumentRegion(IStructuredDocumentRegion newStructuredDocumentRegion, IStructuredDocumentRegion nextStructuredDocumentRegion) {
-		if (newStructuredDocumentRegion == null)
-			return null;
-		if (nextStructuredDocumentRegion == null)
-			return appendStructuredDocumentRegion(newStructuredDocumentRegion);
-
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return null; // error
-
-		if (flatNode == nextStructuredDocumentRegion) {
-			StructuredDocumentRegionContainer container = new StructuredDocumentRegionContainer();
-			container.appendStructuredDocumentRegion(newStructuredDocumentRegion);
-			container.appendStructuredDocumentRegion(flatNode);
-			setStructuredDocumentRegion(container);
-			return newStructuredDocumentRegion;
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (content == nextStructuredDocumentRegion) {
-					container.insertStructuredDocumentRegion(newStructuredDocumentRegion, i);
-					return newStructuredDocumentRegion;
-				}
-			}
-			return null; // error
-		}
-
-		return null; // error
-	}
-
-	/**
-	 * insertText method
-	 * 
-	 * @param text
-	 *            org.w3c.dom.Text
-	 * @param offset
-	 *            int
-	 */
-	public void insertText(Text newText, int offset) throws DOMException {
-		if (newText == null)
-			return;
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		TextImpl text = (TextImpl) newText;
-		String newSource = text.getSource();
-		if (newSource == null && newSource.length() == 0)
-			return;
-		if (offset < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String source = getSource();
-		if (source == null || source.length() == 0) {
-			if (offset > 0) {
-				throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-			}
-			setTextSource(newSource);
-			return;
-		}
-
-		StringPair pair = substringSourceExcluded(source, offset, 0);
-		if (pair == null)
-			return; // error
-		StringBuffer buffer = new StringBuffer(source.length() + newSource.length());
-		String first = pair.getFirst();
-		if (first != null)
-			buffer.append(first);
-		buffer.append(newSource);
-		String second = pair.getSecond();
-		if (second != null)
-			buffer.append(second);
-		setTextSource(buffer.toString());
-	}
-
-	/**
-	 * isCDATAContent method
-	 * 
-	 * @return boolean
-	 */
-	public boolean isCDATAContent() {
-		Node parent = getParentNode();
-		if (parent == null || parent.getNodeType() != Node.ELEMENT_NODE)
-			return false;
-		ElementImpl element = (ElementImpl) parent;
-		return element.isCDATAContainer();
-	}
-
-	/**
-	 */
-	public boolean isInvalid() {
-		return isInvalid(getStructuredDocumentRegion());
-	}
-
-	/**
-	 */
-	private boolean isInvalid(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return false;
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (isInvalid(content))
-					return true;
-			}
-			return false;
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) flatNode;
-			return isInvalid(proxy.getStructuredDocumentRegion());
-		}
-
-		String regionType = StructuredDocumentRegionUtil.getFirstRegionType(flatNode);
-		if (regionType != XMLRegionContext.XML_CONTENT && isNotNestedContent(regionType) && regionType != XMLRegionContext.XML_ENTITY_REFERENCE && regionType != XMLRegionContext.XML_CHAR_REFERENCE && regionType != XMLRegionContext.BLOCK_TEXT && regionType != XMLRegionContext.WHITE_SPACE) {
-			return true;
-		}
-
-		return false;
-	}
-
-	protected boolean isNotNestedContent(String regionType) {
-		boolean result = true;
-		return result;
-	}
-
-	/**
-	 */
-	boolean isSharingStructuredDocumentRegion(IStructuredDocumentRegion sharedStructuredDocumentRegion) {
-		if (sharedStructuredDocumentRegion == null)
-			return false;
-
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return false;
-
-		if (flatNode == sharedStructuredDocumentRegion)
-			return false;
-
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) flatNode;
-			if (proxy.getStructuredDocumentRegion() == sharedStructuredDocumentRegion)
-				return true;
-			return false;
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (content == null)
-					continue;
-				if (content == sharedStructuredDocumentRegion)
-					return false;
-				if (content instanceof StructuredDocumentRegionProxy) {
-					StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-					if (proxy.getStructuredDocumentRegion() == sharedStructuredDocumentRegion)
-						return true;
-				}
-			}
-			return false;
-		}
-
-		return false;
-	}
-
-	/**
-	 */
-	public boolean isWhitespace() {
-		String data = getData();
-		if (data == null)
-			return true;
-		int length = data.length();
-		for (int i = 0; i < length; i++) {
-			if (!Character.isWhitespace(data.charAt(i)))
-				return false;
-		}
-		return true;
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion removeStructuredDocumentRegion(IStructuredDocumentRegion oldStructuredDocumentRegion) {
-		if (oldStructuredDocumentRegion == null)
-			return null;
-
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return null; // error
-
-		if (flatNode == oldStructuredDocumentRegion) {
-			setStructuredDocumentRegion(null);
-			return oldStructuredDocumentRegion;
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) flatNode;
-			if (proxy.getStructuredDocumentRegion() == oldStructuredDocumentRegion) {
-				// removed with proxy
-				setStructuredDocumentRegion(null);
-				return oldStructuredDocumentRegion;
-			}
-			return null; // error
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (content == oldStructuredDocumentRegion) {
-					container.removeStructuredDocumentRegion(i);
-					if (container.getStructuredDocumentRegionCount() == 1) {
-						// get back to single IStructuredDocumentRegion
-						setStructuredDocumentRegion(container.getStructuredDocumentRegion(0));
-					}
-					return oldStructuredDocumentRegion;
-				}
-
-				if (content instanceof StructuredDocumentRegionProxy) {
-					StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-					if (proxy.getStructuredDocumentRegion() == oldStructuredDocumentRegion) {
-						// removed with proxy
-						container.removeStructuredDocumentRegion(i);
-						if (container.getStructuredDocumentRegionCount() == 1) {
-							// get back to single IStructuredDocumentRegion
-							setStructuredDocumentRegion(container.getStructuredDocumentRegion(0));
-						}
-						return oldStructuredDocumentRegion;
-					}
-				}
-			}
-			return null; // error
-		}
-
-		return null; // error
-	}
-
-	/**
-	 * replaceData method
-	 * 
-	 * @param offset
-	 *            int
-	 * @param count
-	 *            int
-	 * @param arg
-	 *            java.lang.String
-	 */
-	public void replaceData(int offset, int count, String arg) throws DOMException {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		if (arg == null || arg.length() == 0) {
-			deleteData(offset, count);
-			return;
-		}
-		if (count == 0) {
-			insertData(offset, arg);
-			return;
-		}
-		if (offset < 0 || count < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String source = getSource();
-		if (source == null || source.length() == 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		StringPair pair = substringSourceExcluded(source, offset, count);
-		if (pair == null)
-			return; // error
-		StringBuffer buffer = new StringBuffer(source.length() + arg.length());
-		String first = pair.getFirst();
-		if (first != null)
-			buffer.append(first);
-		source = getSource(arg);
-		if (source != null)
-			buffer.append(source);
-		String second = pair.getSecond();
-		if (second != null)
-			buffer.append(second);
-		setTextSource(buffer.toString());
-	}
-
-	/**
-	 */
-	IStructuredDocumentRegion replaceStructuredDocumentRegion(IStructuredDocumentRegion newStructuredDocumentRegion, IStructuredDocumentRegion oldStructuredDocumentRegion) {
-		if (oldStructuredDocumentRegion == null)
-			return null;
-		if (newStructuredDocumentRegion == null)
-			return removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null)
-			return null; // error
-
-		if (flatNode == oldStructuredDocumentRegion) {
-			setStructuredDocumentRegion(newStructuredDocumentRegion);
-			return oldStructuredDocumentRegion;
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) flatNode;
-			if (proxy.getStructuredDocumentRegion() == oldStructuredDocumentRegion) {
-				if (newStructuredDocumentRegion instanceof StructuredDocumentRegionProxy) {
-					// proxy must not be nested
-					setStructuredDocumentRegion(newStructuredDocumentRegion);
-				}
-				else {
-					proxy.setStructuredDocumentRegion(newStructuredDocumentRegion);
-				}
-				return oldStructuredDocumentRegion;
-			}
-			return null; // error
-		}
-
-		if (flatNode instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (content == null)
-					continue; // error
-				if (content == oldStructuredDocumentRegion) {
-					container.replaceStructuredDocumentRegion(newStructuredDocumentRegion, i);
-					return oldStructuredDocumentRegion;
-				}
-
-				if (content instanceof StructuredDocumentRegionProxy) {
-					StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-					if (proxy.getStructuredDocumentRegion() == oldStructuredDocumentRegion) {
-						if (newStructuredDocumentRegion instanceof StructuredDocumentRegionProxy) {
-							// proxy must not be nested
-							container.replaceStructuredDocumentRegion(newStructuredDocumentRegion, i);
-						}
-						else {
-							proxy.setStructuredDocumentRegion(newStructuredDocumentRegion);
-						}
-						return oldStructuredDocumentRegion;
-					}
-				}
-			}
-			return null; // error
-		}
-
-		return null; // error
-	}
-
-	/**
-	 */
-	void resetStructuredDocumentRegions() {
-		String source = getSource();
-		if (source != null && source.length() > 0)
-			this.fSource = source;
-		super.resetStructuredDocumentRegions();
-	}
-
-	/**
-	 * getData method
-	 * 
-	 * @return java.lang.String
-	 */
-	public void setData(String data) throws DOMException {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.fSource = null;
-		super.setData(data);
-	}
-
-	/**
-	 */
-	public void setSource(String source) throws InvalidCharacterException {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		SourceValidator validator = new SourceValidator(this);
-		if (validator.validateSource(source))
-			setTextSource(source);
-	}
-
-	/**
-	 */
-	void setStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		super.setStructuredDocumentRegion(flatNode);
-		if (flatNode != null)
-			this.fSource = null;
-	}
-
-	/**
-	 */
-	public void setTextSource(String source) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		this.fSource = source;
-
-		notifyValueChanged();
-	}
-
-	/**
-	 */
-	public void setValueSource(String source) {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-
-		SourceValidator validator = new SourceValidator(this);
-		setTextSource(validator.convertSource(source));
-	}
-
-	/**
-	 * splitText method
-	 * 
-	 * @return org.w3c.dom.Text
-	 * @param offset
-	 *            int
-	 */
-	public Text splitText(int offset) throws DOMException {
-		if (!isDataEditable()) {
-			throw new DOMException(DOMException.NO_MODIFICATION_ALLOWED_ERR, new String());
-		}
-		if (offset < 0) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		int length = getLength();
-		if (offset > length) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		Document document = getOwnerDocument();
-		if (document == null)
-			return null;
-
-		String source = null;
-		if (offset < length) {
-			int count = length - offset;
-			source = substringSource(offset, count);
-			deleteData(offset, count);
-		}
-		TextImpl text = (TextImpl) document.createTextNode(null);
-		if (source != null)
-			text.setTextSource(source);
-
-		Node parent = getParentNode();
-		if (parent != null)
-			parent.insertBefore(text, getNextSibling());
-
-		return text;
-	}
-
-	/**
-	 */
-	Text splitText(IStructuredDocumentRegion nextStructuredDocumentRegion) {
-		if (nextStructuredDocumentRegion == null)
-			return null;
-
-		IStructuredDocumentRegion flatNode = getStructuredDocumentRegion();
-		if (flatNode == null || !(flatNode instanceof StructuredDocumentRegionContainer))
-			return null; // error
-
-		StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-		int count = container.getStructuredDocumentRegionCount();
-		int index = 0;
-		for (; index < count; index++) {
-			if (container.getStructuredDocumentRegion(index) == nextStructuredDocumentRegion)
-				break;
-		}
-		if (index >= count) {
-			// this is the case nextStructuredDocumentRegion is a new
-			// IStructuredDocumentRegion
-			// search gap by offset
-			int offset = nextStructuredDocumentRegion.getStart();
-			for (index = 0; index < count; index++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(index);
-				if (content == null)
-					continue; // error
-				if (content.getStart() >= offset)
-					break;
-			}
-			if (index >= count)
-				return null; // error
-		}
-		if (index == 0)
-			return this; // nothing to do
-
-		Document document = getOwnerDocument();
-		if (document == null)
-			return null; // error
-		Node parent = getParentNode();
-		if (parent == null)
-			return null; // error
-		TextImpl nextText = (TextImpl) document.createTextNode(null);
-		if (nextText == null)
-			return null; // error
-
-		for (; index < count; count--) {
-			nextText.appendStructuredDocumentRegion(container.removeStructuredDocumentRegion(index));
-		}
-
-		// normalize IStructuredDocumentRegion
-		if (index == 1) {
-			setStructuredDocumentRegion(container.getStructuredDocumentRegion(0));
-		}
-
-		parent.insertBefore(nextText, getNextSibling());
-		return nextText;
-	}
-
-	/**
-	 * Retruns data for the range
-	 */
-	private String substringData(String data, int offset, int count) throws DOMException {
-		// sure offset and count are non-negative
-		if (count == 0)
-			return new String();
-		if (data == null) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		int length = data.length();
-		if (offset > length) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		int end = offset + count;
-		if (end > length) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-		return data.substring(offset, end);
-	}
-
-	/**
-	 * Returns source for the range specified by: offset: data offset count:
-	 * data count
-	 */
-	private String substringSource(int offset, int count) throws DOMException {
-		// sure offset and count are non-negative
-		if (this.fSource != null)
-			return substringSource(this.fSource, offset, count);
-
-		String data = super.getData();
-		if (data != null && data.length() > 0) {
-			data = substringData(data, offset, count);
-			if (data == null)
-				return new String();
-			String source = getSource(data);
-			if (source != null)
-				return source;
-		}
-
-		return substringSource(getSource(), offset, count);
-	}
-
-	/**
-	 * Returns source for the range specified by: offset: data offset count:
-	 * data count
-	 */
-	private String substringSource(String source, int offset, int count) throws DOMException {
-		// sure offset and count are non-negative
-		if (count == 0)
-			return new String();
-		if (source == null) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		int length = source.length();
-		int end = offset + count;
-
-		// find character reference
-		int ref = source.indexOf('&');
-		while (ref >= 0) {
-			if (ref >= end)
-				break;
-			int refEnd = source.indexOf(';', ref + 1);
-			if (refEnd > ref + 1) {
-				String name = source.substring(ref + 1, refEnd);
-				if (getCharValue(name) != null) {
-					// found, shift for source offsets
-					int refCount = refEnd - ref;
-					if (ref < offset)
-						offset += refCount;
-					if (ref < end)
-						end += refCount;
-					ref = refEnd;
-				}
-			}
-			ref = source.indexOf('&', ref + 1);
-		}
-
-		if (offset > length || end > length) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		return source.substring(offset, end);
-	}
-
-	/**
-	 * Returns sources before and after the range specified by: offset: data
-	 * offset count: data count
-	 */
-	private StringPair substringSourceExcluded(String source, int offset, int count) throws DOMException {
-		// sure offset and count are non-negative
-		if (source == null) {
-			if (offset == 0 && count == 0)
-				return new StringPair(null, null);
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		int length = source.length();
-		int end = offset + count;
-
-		// find character reference
-		int ref = source.indexOf('&');
-		while (ref >= 0) {
-			if (ref >= end)
-				break;
-			int refEnd = source.indexOf(';', ref + 1);
-			if (refEnd > ref + 1) {
-				String name = source.substring(ref + 1, refEnd);
-				if (getCharValue(name) != null) {
-					// found, shift for source offsets
-					int refCount = refEnd - ref;
-					if (ref < offset)
-						offset += refCount;
-					if (ref < end)
-						end += refCount;
-					ref = refEnd;
-				}
-			}
-			ref = source.indexOf('&', ref + 1);
-		}
-
-		if (offset > length || end > length) {
-			throw new DOMException(DOMException.INDEX_SIZE_ERR, new String());
-		}
-
-		String first = (offset > 0 ? source.substring(0, offset) : null);
-		String second = (end < length ? source.substring(end, length) : null);
-		return new StringPair(first, second);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLGeneratorImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLGeneratorImpl.java
deleted file mode 100644
index a6834f6..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLGeneratorImpl.java
+++ /dev/null
@@ -1,738 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.eclipse.wst.xml.core.commentelement.impl.CommentElementRegistry;
-import org.eclipse.wst.xml.core.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.document.JSPTag;
-import org.eclipse.wst.xml.core.document.TagAdapter;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLCharEntity;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLGenerator;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.w3c.dom.Attr;
-import org.w3c.dom.CDATASection;
-import org.w3c.dom.Comment;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.EntityReference;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-import org.w3c.dom.Text;
-
-
-/** 
- */
-public class XMLGeneratorImpl implements XMLGenerator {
-	private static final String CDATA_CLOSE = "]]>";//$NON-NLS-1$
-	private static final String CDATA_OPEN = "<![CDATA[";//$NON-NLS-1$
-	private static final String COMMENT_CLOSE = "-->";//$NON-NLS-1$
-	private static final String COMMENT_OPEN = "<!--";//$NON-NLS-1$
-	private static final String DOCTYPE_OPEN = "<!DOCTYPE";//$NON-NLS-1$
-	private static final String EMPTY_CLOSE = " />";//$NON-NLS-1$
-	private static final String END_OPEN = "</";//$NON-NLS-1$
-
-	private static XMLGeneratorImpl instance = null;
-	private static final String PI_CLOSE = "?>";//$NON-NLS-1$
-	private static final String PI_OPEN = "<?";//$NON-NLS-1$
-	private static final String PUBLIC_ID = "PUBLIC";//$NON-NLS-1$
-	private static final String SSI_PREFIX = "ssi";//$NON-NLS-1$
-	//private static final String SSI_FEATURE = "SSI";//$NON-NLS-1$
-	private static final String SSI_TOKEN = "#";//$NON-NLS-1$
-	private static final String SYSTEM_ID = "SYSTEM";//$NON-NLS-1$
-	private static final String TAG_CLOSE = ">";//$NON-NLS-1$
-
-	/**
-	 */
-	public synchronized static XMLGenerator getInstance() {
-		if (instance == null)
-			instance = new XMLGeneratorImpl();
-		return instance;
-	}
-
-	/**
-	 */
-	//private boolean isCommentTag(XMLElement element) {
-	//	if (element == null) return false;
-	//	DocumentImpl document = (DocumentImpl)element.getOwnerDocument();
-	//	if (document == null) return false;
-	//	DocumentTypeAdapter adapter = document.getDocumentTypeAdapter();
-	//	if (adapter == null) return false;
-	//	if (!adapter.hasFeature(SSI_FEATURE)) return false;
-	//	String prefix = element.getPrefix();
-	//	return (prefix != null && prefix.equals(SSI_PREFIX));
-	//}
-	/**
-	 * Helper to modify the tag name in sub-classes
-	 */
-	private static void setTagName(Element element, String tagName) {
-		if (element == null || tagName == null)
-			return;
-		((ElementImpl) element).setTagName(tagName);
-	}
-
-	/**
-	 * XMLModelGenerator constructor
-	 */
-	private XMLGeneratorImpl() {
-		super();
-	}
-
-	/**
-	 */
-	public String generateAttrName(Attr attr) {
-		if (attr == null)
-			return null;
-		String attrName = attr.getName();
-		if (attrName == null)
-			return null;
-		if (attrName.startsWith(JSPTag.TAG_OPEN)) {
-			if (!attrName.endsWith(JSPTag.TAG_CLOSE)) {
-				// close JSP
-				return (attrName + JSPTag.TAG_CLOSE);
-			}
-		}
-		if (((XMLAttr) attr).isGlobalAttr() && CMNodeUtil.getAttributeDeclaration(attr) != null) {
-			switch (getAttrNameCase(attr)) {
-				case DocumentTypeAdapter.UPPER_CASE :
-					attrName = attrName.toUpperCase();
-					break;
-				case DocumentTypeAdapter.LOWER_CASE :
-					attrName = attrName.toLowerCase();
-					break;
-				default :
-					// ASIS_CASE
-					break;
-			}
-		}
-		return attrName;
-	}
-
-	/**
-	 */
-	public String generateAttrValue(Attr attr) {
-		return generateAttrValue(attr, (char) 0); // no quote preference
-	}
-
-	/**
-	 */
-	public String generateAttrValue(Attr attr, char quote) {
-		if (attr == null)
-			return null;
-		String name = attr.getName();
-		SourceValidator validator = new SourceValidator(attr);
-		String value = validator.convertSource(((XMLNode) attr).getValueSource());
-		if (value == null || value.length() == 0) {
-			if (name != null && name.startsWith(JSPTag.TAG_OPEN))
-				return null;
-			if (isBooleanAttr(attr)) {
-				if (((AttrImpl) attr).isXMLAttr()) {
-					// generate the name as value
-					value = attr.getName();
-				} else {
-					// not to generate '=' and value for HTML boolean
-					return null;
-				}
-			}
-		}
-		return generateAttrValue(value, quote);
-	}
-
-	/**
-	 */
-	public String generateAttrValue(String value, char quote) {
-		// assume the valid is already validated not to include both quotes
-		if (quote == '"') {
-			if ((value != null) && (value.indexOf('"') >= 0))
-				quote = '\''; // force
-		} else if (quote == '\'') {
-			if ((value != null) && (value.indexOf('\'') >= 0))
-				quote = '"'; // force
-		} else { // no preference
-			if ((value != null) && (value.indexOf('"') < 0))
-				quote = '"';
-			else
-				quote = '\'';
-		}
-
-		int length = (value == null ? 0 : value.length());
-		StringBuffer buffer = new StringBuffer(length + 2);
-		buffer.append(quote);
-		if (value != null)
-			buffer.append(value);
-		buffer.append(quote);
-		return buffer.toString();
-	}
-
-	/**
-	 * generateCDATASection method
-	 * 
-	 * @return java.lang.String
-	 * @param comment
-	 *            org.w3c.dom.CDATASection
-	 */
-	public String generateCDATASection(CDATASection cdata) {
-		if (cdata == null)
-			return null;
-
-		String data = cdata.getData();
-		int length = (data != null ? data.length() : 0);
-		StringBuffer buffer = new StringBuffer(length + 16);
-		buffer.append(CDATA_OPEN);
-		if (data != null)
-			buffer.append(data);
-		buffer.append(CDATA_CLOSE);
-		return buffer.toString();
-	}
-
-	/**
-	 * generateChild method
-	 * 
-	 * @return java.lang.String
-	 * @param org.w3c.dom.Node
-	 */
-	public String generateChild(Node parentNode) {
-		if (parentNode == null)
-			return null;
-		if (!parentNode.hasChildNodes())
-			return null;
-
-		StringBuffer buffer = new StringBuffer();
-		for (Node child = parentNode.getFirstChild(); child != null; child = child.getNextSibling()) {
-			String childSource = generateSource(child);
-			if (childSource != null)
-				buffer.append(childSource);
-		}
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	public String generateCloseTag(Node node) {
-		if (node == null)
-			return null;
-
-		switch (node.getNodeType()) {
-			case Node.ELEMENT_NODE : {
-				ElementImpl element = (ElementImpl) node;
-				if (element.isCommentTag()) {
-					if (element.isJSPTag())
-						return JSPTag.COMMENT_CLOSE;
-					return COMMENT_CLOSE;
-				}
-				if (element.isJSPTag())
-					return JSPTag.TAG_CLOSE;
-				if (element.isEmptyTag())
-					return EMPTY_CLOSE;
-				return TAG_CLOSE;
-			}
-			case Node.COMMENT_NODE : {
-				CommentImpl comment = (CommentImpl) node;
-				if (comment.isJSPTag())
-					return JSPTag.COMMENT_CLOSE;
-				return COMMENT_CLOSE;
-			}
-			case Node.DOCUMENT_TYPE_NODE :
-				return TAG_CLOSE;
-			case Node.PROCESSING_INSTRUCTION_NODE :
-				return PI_CLOSE;
-			case Node.CDATA_SECTION_NODE :
-				return CDATA_CLOSE;
-			default :
-				break;
-		}
-
-		return null;
-	}
-
-	/**
-	 * generateComment method
-	 * 
-	 * @return java.lang.String
-	 * @param comment
-	 *            org.w3c.dom.Comment
-	 */
-	public String generateComment(Comment comment) {
-		if (comment == null)
-			return null;
-
-		String data = comment.getData();
-		int length = (data != null ? data.length() : 0);
-		StringBuffer buffer = new StringBuffer(length + 8);
-		CommentImpl impl = (CommentImpl) comment;
-		if (!impl.isJSPTag())
-			buffer.append(COMMENT_OPEN);
-		else
-			buffer.append(JSPTag.COMMENT_OPEN);
-		if (data != null)
-			buffer.append(data);
-		if (!impl.isJSPTag())
-			buffer.append(COMMENT_CLOSE);
-		else
-			buffer.append(JSPTag.COMMENT_CLOSE);
-		return buffer.toString();
-	}
-
-	/**
-	 * generateDoctype method
-	 * 
-	 * @return java.lang.String
-	 * @param docType
-	 *            org.w3c.dom.DocumentType
-	 */
-	public String generateDoctype(DocumentType docType) {
-		if (docType == null)
-			return null;
-
-		String name = docType.getName();
-		int length = (name != null ? name.length() : 0);
-		StringBuffer buffer = new StringBuffer(length + 16);
-		buffer.append(DOCTYPE_OPEN);
-		buffer.append(' ');
-		if (name != null)
-			buffer.append(name);
-		DocumentTypeImpl dt = (DocumentTypeImpl) docType;
-		String publicID = dt.getPublicId();
-		String systemID = dt.getSystemId();
-		if (publicID != null) {
-			buffer.append(' ');
-			buffer.append(PUBLIC_ID);
-			buffer.append(' ');
-			buffer.append('"');
-			buffer.append(publicID);
-			buffer.append('"');
-			if (systemID != null) {
-				buffer.append(' ');
-				buffer.append('"');
-				buffer.append(systemID);
-				buffer.append('"');
-			}
-		} else {
-			if (systemID != null) {
-				buffer.append(' ');
-				buffer.append(SYSTEM_ID);
-				buffer.append(' ');
-				buffer.append('"');
-				buffer.append(systemID);
-				buffer.append('"');
-			}
-		}
-		buffer.append('>');
-		return buffer.toString();
-	}
-
-	/**
-	 * generateElement method
-	 * 
-	 * @return java.lang.String
-	 * @param element
-	 *            Element
-	 */
-	public String generateElement(Element element) {
-		if (element == null)
-			return null;
-
-		// if empty tag is preferrable, generate as empty tag
-		ElementImpl impl = (ElementImpl) element;
-		if (impl.preferEmptyTag())
-			impl.setEmptyTag(true);
-
-		StringBuffer buffer = new StringBuffer();
-		String startTag = generateStartTag(element);
-		if (startTag != null)
-			buffer.append(startTag);
-		String child = generateChild(element);
-		if (child != null)
-			buffer.append(child);
-		String endTag = generateEndTag(element);
-		if (endTag != null)
-			buffer.append(endTag);
-		return buffer.toString();
-	}
-
-	/**
-	 * generateEndTag method
-	 * 
-	 * @return java.lang.String
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	public String generateEndTag(Element element) {
-		if (element == null)
-			return null;
-
-		ElementImpl impl = (ElementImpl) element;
-
-		// first check if tag adapter exists
-		TagAdapter adapter = (TagAdapter) impl.getExistingAdapter(TagAdapter.class);
-		if (adapter != null) {
-			String endTag = adapter.getEndTag(impl);
-			if (endTag != null)
-				return endTag;
-		}
-
-		if (impl.isEmptyTag())
-			return null;
-		if (!impl.isContainer())
-			return null;
-		if (impl.isJSPTag())
-			return JSPTag.TAG_CLOSE;
-
-		String tagName = generateTagName(element);
-		int length = (tagName != null ? tagName.length() : 0);
-		StringBuffer buffer = new StringBuffer(length + 4);
-		buffer.append(END_OPEN);
-		if (tagName != null)
-			buffer.append(tagName);
-		buffer.append('>');
-		return buffer.toString();
-	}
-
-	/**
-	 * generateEntityRef method
-	 * 
-	 * @return java.lang.String
-	 * @param entityRef
-	 *            org.w3c.dom.EntityReference
-	 */
-	public String generateEntityRef(EntityReference entityRef) {
-		if (entityRef == null)
-			return null;
-
-		String name = entityRef.getNodeName();
-		int length = (name != null ? name.length() : 0);
-		StringBuffer buffer = new StringBuffer(length + 4);
-		buffer.append('&');
-		if (name != null)
-			buffer.append(name);
-		buffer.append(';');
-		return buffer.toString();
-	}
-
-	/**
-	 * generatePI method
-	 * 
-	 * @return java.lang.String
-	 * @param pi
-	 *            org.w3c.dom.ProcessingInstruction
-	 */
-	public String generatePI(ProcessingInstruction pi) {
-		if (pi == null)
-			return null;
-
-		String target = pi.getTarget();
-		String data = pi.getData();
-		int length = (target != null ? target.length() : 0);
-		if (data != null)
-			length += data.length();
-		StringBuffer buffer = new StringBuffer(length + 8);
-		buffer.append(PI_OPEN);
-		if (target != null)
-			buffer.append(target);
-		buffer.append(' ');
-		if (data != null)
-			buffer.append(data);
-		buffer.append(PI_CLOSE);
-		return buffer.toString();
-	}
-
-	/**
-	 * generateSource method
-	 * 
-	 * @return java.lang.String
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	public String generateSource(Node node) {
-		switch (node.getNodeType()) {
-			case Node.ELEMENT_NODE :
-				return generateElement((Element) node);
-			case Node.TEXT_NODE :
-				return generateText((Text) node);
-			case Node.COMMENT_NODE :
-				return generateComment((Comment) node);
-			case Node.DOCUMENT_TYPE_NODE :
-				return generateDoctype((DocumentType) node);
-			case Node.PROCESSING_INSTRUCTION_NODE :
-				return generatePI((ProcessingInstruction) node);
-			case Node.CDATA_SECTION_NODE :
-				return generateCDATASection((CDATASection) node);
-			case Node.ENTITY_REFERENCE_NODE :
-				return generateEntityRef((EntityReference) node);
-			default :
-				// DOCUMENT
-				break;
-		}
-		return generateChild(node);
-	}
-
-	/**
-	 * generateStartTag method
-	 * 
-	 * @return java.lang.String
-	 * @param element
-	 *            Element
-	 */
-	public String generateStartTag(Element element) {
-		if (element == null)
-			return null;
-
-		ElementImpl impl = (ElementImpl) element;
-
-		if (impl.isJSPTag()) {
-			// check if JSP content type and JSP Document
-			XMLDocument document = (XMLDocument) element.getOwnerDocument();
-			if (document != null && document.isJSPType()) {
-				if (document.isJSPDocument() && !impl.hasChildNodes()) {
-					impl.setJSPTag(false);
-				}
-			} else {
-				impl.setJSPTag(false);
-			}
-		}
-		if (impl.isCommentTag() && impl.getExistingAdapter(TagAdapter.class) == null) {
-			CommentElementRegistry registry = CommentElementRegistry.getInstance();
-			registry.setupCommentElement(impl);
-		}
-
-		// first check if tag adapter exists
-		TagAdapter adapter = (TagAdapter) impl.getExistingAdapter(TagAdapter.class);
-		if (adapter != null) {
-			String startTag = adapter.getStartTag(impl);
-			if (startTag != null)
-				return startTag;
-		}
-
-		StringBuffer buffer = new StringBuffer();
-
-		if (impl.isCommentTag()) {
-			if (impl.isJSPTag())
-				buffer.append(JSPTag.COMMENT_OPEN);
-			else
-				buffer.append(COMMENT_OPEN);
-			String tagName = generateTagName(element);
-			if (tagName != null)
-				buffer.append(tagName);
-		} else if (impl.isJSPTag()) {
-			buffer.append(JSPTag.TAG_OPEN);
-			String tagName = generateTagName(element);
-			if (tagName != null)
-				buffer.append(tagName);
-			if (impl.isContainer())
-				return buffer.toString(); // JSP container
-		} else {
-			buffer.append('<');
-			String tagName = generateTagName(element);
-			if (tagName != null)
-				buffer.append(tagName);
-		}
-
-		NamedNodeMap attributes = element.getAttributes();
-		int length = attributes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) attributes.item(i);
-			if (attr == null)
-				continue;
-			buffer.append(' ');
-			String attrName = generateAttrName(attr);
-			if (attrName != null)
-				buffer.append(attrName);
-			String attrValue = generateAttrValue(attr);
-			if (attrValue != null) {
-				// attr name only for HTML boolean and JSP
-				buffer.append('=');
-				buffer.append(attrValue);
-			}
-		}
-
-		String closeTag = generateCloseTag(element);
-		if (closeTag != null)
-			buffer.append(closeTag);
-
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	public String generateTagName(Element element) {
-		if (element == null)
-			return null;
-		XMLElement xe = (XMLElement) element;
-		String tagName = element.getTagName();
-		if (tagName == null)
-			return null;
-		if (xe.isJSPTag()) {
-			if (tagName.equals(JSPTag.JSP_EXPRESSION))
-				return JSPTag.EXPRESSION_TOKEN;
-			if (tagName.equals(JSPTag.JSP_DECLARATION))
-				return JSPTag.DECLARATION_TOKEN;
-			if (tagName.equals(JSPTag.JSP_DIRECTIVE))
-				return JSPTag.DIRECTIVE_TOKEN;
-			if (tagName.startsWith(JSPTag.JSP_DIRECTIVE)) {
-				int offset = JSPTag.JSP_DIRECTIVE.length() + 1; // after '.'
-				return (JSPTag.DIRECTIVE_TOKEN + tagName.substring(offset));
-			}
-			return (xe.isCommentTag()) ? tagName : null;
-		} else if (tagName.startsWith(JSPTag.TAG_OPEN)) {
-			if (!tagName.endsWith(JSPTag.TAG_CLOSE)) {
-				// close JSP
-				return (tagName + JSPTag.TAG_CLOSE);
-			}
-		} else if (xe.isCommentTag()) {
-			String prefix = element.getPrefix();
-			if (prefix.equals(SSI_PREFIX)) {
-				return (SSI_TOKEN + element.getLocalName());
-			}
-		} else {
-			if (!xe.isJSPTag() && xe.isGlobalTag() && // global tag
-						CMNodeUtil.getElementDeclaration(xe) != null) {
-				String newName = tagName;
-				switch (getTagNameCase(xe)) {
-					case DocumentTypeAdapter.UPPER_CASE :
-						newName = tagName.toUpperCase();
-						break;
-					case DocumentTypeAdapter.LOWER_CASE :
-						newName = tagName.toLowerCase();
-						break;
-				}
-				if (newName != tagName) {
-					tagName = newName;
-					setTagName(element, tagName);
-				}
-			}
-		}
-		return tagName;
-	}
-
-	/**
-	 * generateText method
-	 * 
-	 * @return java.lang.String
-	 * @param text
-	 *            org.w3c.dom.Text
-	 */
-	public String generateText(Text text) {
-		if (text == null)
-			return null;
-		TextImpl impl = (TextImpl) text;
-		String source = impl.getTextSource();
-		if (source != null)
-			return source;
-		return generateTextData(text, impl.getData());
-	}
-
-	/**
-	 */
-	public String generateTextData(Text text, String data) {
-		if (data == null)
-			return null;
-		if (text == null)
-			return null;
-		TextImpl impl = (TextImpl) text;
-		if (impl.isJSPContent() || impl.isCDATAContent()) {
-			return new SourceValidator(impl).convertSource(data);
-		}
-		String source = data;
-
-		// convert special characters to character entities
-		StringBuffer buffer = null;
-		int offset = 0;
-		int length = data.length();
-		for (int i = 0; i < length; i++) {
-			String name = getCharName(data.charAt(i));
-			if (name == null)
-				continue;
-			if (buffer == null)
-				buffer = new StringBuffer(length + 8);
-			if (i > offset)
-				buffer.append(data.substring(offset, i));
-			buffer.append('&');
-			buffer.append(name);
-			buffer.append(';');
-			offset = i + 1;
-		}
-		if (buffer != null) {
-			if (length > offset)
-				buffer.append(data.substring(offset));
-			source = buffer.toString();
-		}
-
-		if (source == null || source.length() == 0)
-			return null;
-		return source;
-	}
-
-	/**
-	 */
-	private int getAttrNameCase(Attr attr) {
-		DocumentImpl document = (DocumentImpl) attr.getOwnerDocument();
-		if (document == null)
-			return DocumentTypeAdapter.STRICT_CASE;
-		DocumentTypeAdapter adapter = document.getDocumentTypeAdapter();
-		if (adapter == null)
-			return DocumentTypeAdapter.STRICT_CASE;
-		return adapter.getAttrNameCase();
-	}
-
-	/**
-	 */
-	private String getCharName(char c) {
-		switch (c) {
-			case '<' :
-				return XMLCharEntity.LT_NAME;
-			case '>' :
-				return XMLCharEntity.GT_NAME;
-			case '&' :
-				return XMLCharEntity.AMP_NAME;
-			case '"' :
-				return XMLCharEntity.QUOT_NAME;
-		}
-		return null;
-	}
-
-	/**
-	 */
-	private int getTagNameCase(Element element) {
-		DocumentImpl document = (DocumentImpl) element.getOwnerDocument();
-		if (document == null)
-			return DocumentTypeAdapter.STRICT_CASE;
-		DocumentTypeAdapter adapter = document.getDocumentTypeAdapter();
-		if (adapter == null)
-			return DocumentTypeAdapter.STRICT_CASE;
-		return adapter.getTagNameCase();
-	}
-
-	/**
-	 */
-	private boolean isBooleanAttr(Attr attr) {
-		if (attr == null)
-			return false;
-		CMAttributeDeclaration decl = CMNodeUtil.getAttributeDeclaration(attr);
-		if (decl == null)
-			return false;
-		CMDataType type = decl.getAttrType();
-		if (type == null)
-			return false;
-		String values[] = type.getEnumeratedValues();
-		if (values == null)
-			return false;
-		return (values.length == 1 && values[0].equals(decl.getAttrName()));
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelContext.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelContext.java
deleted file mode 100644
index 6a799f7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelContext.java
+++ /dev/null
@@ -1,237 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-/**
- * XMLModelContext class
- */
-class XMLModelContext {
-	private Node nextNode = null;
-	private Node parentNode = null;
-
-	//	private XMLModelImpl model = null;
-	private Node rootNode = null;
-
-	/**
-	 * XMLModelContext constructor
-	 * 
-	 * @param rootNode
-	 *            org.w3c.dom.Node
-	 */
-	XMLModelContext(Node rootNode) {
-		super();
-
-		this.rootNode = rootNode;
-	}
-
-	/**
-	 * findEndTag method
-	 * 
-	 * @return org.w3c.dom.Element
-	 * @param tagName
-	 *            java.lang.String
-	 */
-	Element findEndTag(String tagName) {
-		if (tagName == null)
-			return null;
-		if (this.parentNode == null)
-			return null;
-
-		for (Node parent = this.parentNode.getParentNode(); parent != null; parent = parent.getParentNode()) {
-			if (parent.getNodeType() != Node.ELEMENT_NODE)
-				break;
-			ElementImpl element = (ElementImpl) parent;
-			if (element.hasEndTag()) {
-				if (element.matchTagName(tagName))
-					return element;
-				// if ancestor element has end tag stop search
-				break;
-			}
-			if (element.getNextSibling() != null)
-				break;
-		}
-
-		return null;
-	}
-
-	/**
-	 */
-	Text findNextText() {
-		Node node = this.nextNode;
-		while (node != null) {
-			if (node != this.nextNode && node.getNodeType() == Node.TEXT_NODE) {
-				TextImpl text = (TextImpl) node;
-				// skip empty text
-				if (text.getStructuredDocumentRegion() != null)
-					return text;
-			}
-			Node child = node.getFirstChild();
-			if (child != null) {
-				node = child;
-				continue;
-			}
-			while (node != null) {
-				Node next = node.getNextSibling();
-				if (next != null) {
-					node = next;
-					break;
-				}
-				node = node.getParentNode();
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * findPreviousText method
-	 * 
-	 * @return org.w3c.dom.Text
-	 */
-	Text findPreviousText() {
-		if (this.parentNode == null)
-			return null;
-		Node node = null;
-		if (this.nextNode != null)
-			node = this.nextNode.getPreviousSibling();
-		else
-			node = this.parentNode.getLastChild();
-		if (node == null || node.getNodeType() != Node.TEXT_NODE)
-			return null;
-		return (Text) node;
-	}
-
-	/**
-	 * findStartTag method
-	 * 
-	 * @return org.w3c.dom.Element
-	 * @param tagName
-	 *            java.lang.String
-	 */
-	Element findStartTag(String tagName, String rootName) {
-		if (tagName == null)
-			return null;
-
-		// check previous for empty content element
-		Node prev = null;
-		if (this.nextNode != null)
-			prev = this.nextNode.getPreviousSibling();
-		else if (this.parentNode != null)
-			prev = this.parentNode.getLastChild();
-		if (prev != null && prev.getNodeType() == Node.ELEMENT_NODE) {
-			ElementImpl element = (ElementImpl) prev;
-			if (!element.hasEndTag() && !element.isEmptyTag() && element.matchTagName(tagName))
-				return element;
-		}
-
-		for (Node parent = this.parentNode; parent != null; parent = parent.getParentNode()) {
-			if (parent.getNodeType() != Node.ELEMENT_NODE)
-				break;
-			ElementImpl element = (ElementImpl) parent;
-			if (element.matchTagName(tagName))
-				return element;
-			if (rootName != null && element.matchTagName(rootName))
-				break;
-		}
-
-		return null;
-	}
-
-	/**
-	 * getNextNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	Node getNextNode() {
-		return this.nextNode;
-	}
-
-	/**
-	 * getParentNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	Node getParentNode() {
-		return this.parentNode;
-	}
-
-	/**
-	 * getRootNode method
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	Node getRootNode() {
-		return this.rootNode;
-	}
-
-	/**
-	 * setLast method
-	 */
-	void setLast() {
-		if (this.parentNode == null)
-			return;
-		if (this.nextNode != null) {
-			Node prev = this.nextNode.getPreviousSibling();
-			if (prev == null || prev.getNodeType() != Node.ELEMENT_NODE)
-				return;
-			ElementImpl element = (ElementImpl) prev;
-			if (element.hasEndTag() || !element.isContainer() || element.isEmptyTag())
-				return;
-			setParentNode(prev);
-		}
-
-		// find last open parent
-		Node parent = this.parentNode;
-		Node last = parent.getLastChild();
-		while (last != null) {
-			if (last.getNodeType() != Node.ELEMENT_NODE)
-				break;
-			ElementImpl element = (ElementImpl) last;
-			if (element.hasEndTag() || !element.isContainer() || element.isEmptyTag())
-				break;
-			parent = element;
-			last = parent.getLastChild();
-		}
-		if (parent != this.parentNode)
-			setParentNode(parent);
-	}
-
-	/**
-	 * setNextNode method
-	 * 
-	 * @param nextNode
-	 *            org.w3c.dom.Node
-	 */
-	void setNextNode(Node nextNode) {
-		this.nextNode = nextNode;
-		if (nextNode == null)
-			return;
-		this.parentNode = nextNode.getParentNode();
-	}
-
-	/**
-	 * setParentNode method
-	 * 
-	 * @param parentNode
-	 *            org.w3c.dom.Node
-	 */
-	void setParentNode(Node parentNode) {
-		this.parentNode = parentNode;
-		this.nextNode = null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelImpl.java
deleted file mode 100644
index b4a864e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelImpl.java
+++ /dev/null
@@ -1,885 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-import org.eclipse.wst.sse.core.AbstractStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.events.IStructuredDocumentListener;
-import org.eclipse.wst.sse.core.events.NewDocumentEvent;
-import org.eclipse.wst.sse.core.events.NoChangeEvent;
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.RegionsReplacedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentRegionsReplacedEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLGenerator;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLModelNotifier;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.Logger;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.DOMImplementation;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- * XMLModelImpl class
- */
-public class XMLModelImpl extends AbstractStructuredModel implements IStructuredDocumentListener, XMLModel, DOMImplementation {
-	private static String TRACE_PARSER_MANAGEMENT_EXCEPTION = "parserManagement"; //$NON-NLS-1$
-	private Object active = null;
-	private DocumentImpl document = null;
-	private XMLGenerator generator = null;
-	private XMLModelNotifier notifier = null;
-	private XMLModelParser parser = null;
-	private boolean refresh = false;
-	private XMLModelUpdater updater = null;
-
-	/**
-	 * XMLModelImpl constructor
-	 */
-	public XMLModelImpl() {
-		super();
-		this.document = (DocumentImpl) internalCreateDocument();
-	}
-
-	/**
-	 * This API allows clients to declare that they are about to make a
-	 * "large" change to the model. This change might be in terms of content
-	 * or it might be in terms of the model id or base location.
-	 * 
-	 * Note that in the case of embedded calls, notification to listners is
-	 * sent only once.
-	 * 
-	 * Note that the client who is making these changes has the responsibility
-	 * to restore the models state once finished with the changes. See
-	 * getMemento and restoreState.
-	 * 
-	 * The method isModelStateChanging can be used by a client to determine if
-	 * the model is already in a change sequence.
-	 */
-	public void aboutToChangeModel() {
-		super.aboutToChangeModel();
-		// technically, no need to call beginChanging so often,
-		// since aboutToChangeModel can be nested.
-		// but will leave as is for this release.
-		// see modelChanged, and be sure stays coordinated there.
-		getModelNotifier().beginChanging();
-	}
-
-	public void aboutToReinitializeModel() {
-		XMLModelNotifier notifier = getModelNotifier();
-		notifier.cancelPending();
-		super.aboutToReinitializeModel();
-	}
-
-	/**
-	 * attrReplaced method
-	 * 
-	 * @param element
-	 *            org.w3c.dom.Element
-	 * @param newAttr
-	 *            org.w3c.dom.Attr
-	 * @param oldAttr
-	 *            org.w3c.dom.Attr
-	 */
-	protected void attrReplaced(Element element, Attr newAttr, Attr oldAttr) {
-		if (element == null)
-			return;
-		if (getActiveParser() == null) {
-			XMLModelUpdater updater = getModelUpdater();
-			setActive(updater);
-			updater.initialize();
-			updater.replaceAttr(element, newAttr, oldAttr);
-			setActive(null);
-		}
-		getModelNotifier().attrReplaced(element, newAttr, oldAttr);
-	}
-
-	/**
-	 * This API allows a client controlled way of notifying all ModelEvent
-	 * listners that the model has been changed. This method is a matched pair
-	 * to aboutToChangeModel, and must be called after aboutToChangeModel ...
-	 * or some listeners could be left waiting indefinitely for the changed
-	 * event. So, its suggested that changedModel always be in a finally
-	 * clause. Likewise, a client should never call changedModel without
-	 * calling aboutToChangeModel first.
-	 * 
-	 * In the case of embedded calls, the notification is just sent once.
-	 *  
-	 */
-	public void changedModel() {
-		// NOTE: the order of 'changedModel' and 'endChanging' is significant.
-		// By calling changedModel first, this basically decrements the
-		// "isChanging" counter
-		// in super class and when zero all listeners to model state events
-		// will be notified
-		// that the model has been changed. 'endChanging' will notify all
-		// deferred adapters.
-		// So, the significance of order is that adapters (and methods they
-		// call)
-		// can count on the state of model "isChanging" to be accurate.
-		// But, remember, that this means the "modelChanged" event can be
-		// received before all
-		// adapters have finished their processing.
-		// NOTE NOTE: The above note is obsolete in fact (though still states
-		// issue correctly).
-		// Due to popular demand, the order of these calls were reversed and
-		// behavior
-		// changed on 07/22/2004.
-		// 
-		// see also
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=4302
-		// for motivation for this 'on verge of' call.
-		// this could be improved in future if notifier also used counting
-		// flag to avoid nested calls. If/when changed be sure to check if
-		// aboutToChangeModel needs any changes too.
-		if (isModelChangeStateOnVergeOfEnding()) {
-			// end lock before noticiation loop, since directly or indirectly
-			// we may be "called from foriegn code" during notification.
-			endLock();
-
-			// the notifier is what controls adaper notification, which
-			// should be sent out before the 'modelChanged' event.
-			getModelNotifier().endChanging();
-		}
-		// changedModel handles 'nesting', so only one event sent out
-		// when mulitple calls to 'aboutToChange/Changed'.
-		super.changedModel();
-		handleRefresh();
-	}
-
-	/**
-	 * childReplaced method
-	 * 
-	 * @param parentNode
-	 *            org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	protected void childReplaced(Node parentNode, Node newChild, Node oldChild) {
-		if (parentNode == null)
-			return;
-		if (getActiveParser() == null) {
-			XMLModelUpdater updater = getModelUpdater();
-			setActive(updater);
-			updater.initialize();
-			updater.replaceChild(parentNode, newChild, oldChild);
-			setActive(null);
-		}
-		getModelNotifier().childReplaced(parentNode, newChild, oldChild);
-	}
-
-	/**
-	 * Creates an XML <code>Document</code> object of the specified type
-	 * with its document element. HTML-only DOM implementations do not need to
-	 * implement this method.
-	 * 
-	 * @param namespaceURIThe
-	 *            namespace URI of the document element to create.
-	 * @param qualifiedNameThe
-	 *            qualified name of the document element to be created.
-	 * @param doctypeThe
-	 *            type of document to be created or <code>null</code>. When
-	 *            <code>doctype</code> is not <code>null</code>, its
-	 *            <code>Node.ownerDocument</code> attribute is set to the
-	 *            document being created.
-	 * @return A new <code>Document</code> object.
-	 * @exception DOMException
-	 *                INVALID_CHARACTER_ERR: Raised if the specified qualified
-	 *                name contains an illegal character. <br>
-	 *                NAMESPACE_ERR: Raised if the <code>qualifiedName</code>
-	 *                is malformed, if the <code>qualifiedName</code> has a
-	 *                prefix and the <code>namespaceURI</code> is
-	 *                <code>null</code>, or if the
-	 *                <code>qualifiedName</code> has a prefix that is "xml"
-	 *                and the <code>namespaceURI</code> is different from "
-	 *                http://www.w3.org/XML/1998/namespace" .<br>
-	 *                WRONG_DOCUMENT_ERR: Raised if <code>doctype</code> has
-	 *                already been used with a different document or was
-	 *                created from a different implementation.
-	 * @since DOM Level 2
-	 */
-	public Document createDocument(String namespaceURI, String qualifiedName, DocumentType doctype) throws DOMException {
-		return null;
-	}
-
-	/**
-	 * Creates an empty <code>DocumentType</code> node. Entity declarations
-	 * and notations are not made available. Entity reference expansions and
-	 * default attribute additions do not occur. It is expected that a future
-	 * version of the DOM will provide a way for populating a
-	 * <code>DocumentType</code>.<br>
-	 * HTML-only DOM implementations do not need to implement this method.
-	 * 
-	 * @param qualifiedNameThe
-	 *            qualified name of the document type to be created.
-	 * @param publicIdThe
-	 *            external subset public identifier.
-	 * @param systemIdThe
-	 *            external subset system identifier.
-	 * @return A new <code>DocumentType</code> node with
-	 *         <code>Node.ownerDocument</code> set to <code>null</code>.
-	 * @exception DOMException
-	 *                INVALID_CHARACTER_ERR: Raised if the specified qualified
-	 *                name contains an illegal character. <br>
-	 *                NAMESPACE_ERR: Raised if the <code>qualifiedName</code>
-	 *                is malformed.
-	 * @since DOM Level 2
-	 */
-	public DocumentType createDocumentType(String qualifiedName, String publicId, String systemId) throws DOMException {
-		DocumentTypeImpl documentType = new DocumentTypeImpl();
-		documentType.setName(qualifiedName);
-		documentType.setPublicId(publicId);
-		documentType.setSystemId(systemId);
-		return documentType;
-	}
-
-	/**
-	 */
-	protected void documentTypeChanged() {
-		if (this.refresh)
-			return;
-		// unlike 'resfresh', 'reinitialize' finishes loop
-		// and flushes remaining notification que before
-		// actually reinitializing.
-		// ISSUE: should reinit be used instead of handlerefresh?
-		// this.setReinitializeNeeded(true);
-		if (this.active != null || getModelNotifier().isChanging())
-			return; // defer
-		handleRefresh();
-	}
-
-	protected void editableChanged(Node node) {
-		if (node != null) {
-			getModelNotifier().editableChanged(node);
-		}
-	}
-
-	/**
-	 */
-	protected void endTagChanged(Element element) {
-		if (element == null)
-			return;
-		if (getActiveParser() == null) {
-			XMLModelUpdater updater = getModelUpdater();
-			setActive(updater);
-			updater.initialize();
-			updater.changeEndTag(element);
-			setActive(null);
-		}
-		getModelNotifier().endTagChanged(element);
-	}
-
-	/**
-	 */
-	private XMLModelParser getActiveParser() {
-		if (this.parser == null)
-			return null;
-		if (this.parser != this.active)
-			return null;
-		return this.parser;
-	}
-
-	/**
-	 */
-	private XMLModelUpdater getActiveUpdater() {
-		if (this.updater == null)
-			return null;
-		if (this.updater != this.active)
-			return null;
-		return this.updater;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		if (Document.class.equals(adapter))
-			return getDocument();
-		return super.getAdapter(adapter);
-	}
-
-	/**
-	 * getDocument method
-	 * 
-	 * @return XMLDocument
-	 */
-	public XMLDocument getDocument() {
-		return this.document;
-	}
-
-	public XMLGenerator getGenerator() {
-		if (this.generator == null) {
-			this.generator = XMLGeneratorImpl.getInstance();
-		}
-		return this.generator;
-	}
-
-	/**
-	 * getNode method
-	 * 
-	 * @param offset
-	 *            int
-	 */
-	public IndexedRegion getIndexedRegion(int offset) {
-		if (this.document == null)
-			return null;
-		// search in document children
-		XMLNode parent = null;
-		int length = this.document.getEndOffset();
-		if (offset * 2 < length) {
-			// search from the first
-			XMLNode child = (XMLNode) this.document.getFirstChild();
-			while (child != null) {
-				if (child.getEndOffset() <= offset) {
-					child = (XMLNode) child.getNextSibling();
-					continue;
-				}
-				if (child.getStartOffset() > offset) {
-					break;
-				}
-				IStructuredDocumentRegion startStructuredDocumentRegion = child.getStartStructuredDocumentRegion();
-				if (startStructuredDocumentRegion != null) {
-					if (startStructuredDocumentRegion.getEnd() > offset)
-						return child;
-				}
-				IStructuredDocumentRegion endStructuredDocumentRegion = child.getEndStructuredDocumentRegion();
-				if (endStructuredDocumentRegion != null) {
-					if (endStructuredDocumentRegion.getStart() <= offset)
-						return child;
-				}
-				// dig more
-				parent = child;
-				child = (XMLNode) parent.getFirstChild();
-			}
-		} else {
-			// search from the last
-			XMLNode child = (XMLNode) this.document.getLastChild();
-			while (child != null) {
-				if (child.getStartOffset() > offset) {
-					child = (XMLNode) child.getPreviousSibling();
-					continue;
-				}
-				if (child.getEndOffset() <= offset) {
-					break;
-				}
-				IStructuredDocumentRegion startStructuredDocumentRegion = child.getStartStructuredDocumentRegion();
-				if (startStructuredDocumentRegion != null) {
-					if (startStructuredDocumentRegion.getEnd() > offset)
-						return child;
-				}
-				IStructuredDocumentRegion endStructuredDocumentRegion = child.getEndStructuredDocumentRegion();
-				if (endStructuredDocumentRegion != null) {
-					if (endStructuredDocumentRegion.getStart() <= offset)
-						return child;
-				}
-				// dig more
-				parent = child;
-				child = (XMLNode) parent.getLastChild();
-			}
-		}
-		return parent;
-	}
-
-	/**
-	 */
-	public XMLModelNotifier getModelNotifier() {
-		if (this.notifier == null) {
-			this.notifier = new XMLModelNotifierImpl();
-		}
-		return this.notifier;
-	}
-
-	/**
-	 */
-	private XMLModelParser getModelParser() {
-		if (this.parser == null) {
-			this.parser = createModelParser();
-		}
-		return this.parser;
-	}
-
-	protected XMLModelParser createModelParser() {
-		return new XMLModelParser(this);
-	}
-
-	/**
-	 */
-	private XMLModelUpdater getModelUpdater() {
-		if (this.updater == null) {
-			this.updater = createModelUpdater();
-		}
-		return this.updater;
-	}
-
-	protected XMLModelUpdater createModelUpdater() {
-		return new XMLModelUpdater(this);
-	}
-
-	/**
-	 */
-	private void handleRefresh() {
-		if (!this.refresh)
-			return;
-		XMLModelNotifier notifier = getModelNotifier();
-		boolean isChanging = notifier.isChanging();
-		if (!isChanging)
-			notifier.beginChanging(true);
-		XMLModelParser parser = getModelParser();
-		setActive(parser);
-		this.document.removeChildNodes();
-		try {
-			parser.replaceStructuredDocumentRegions(getStructuredDocument().getRegionList(), null);
-		} catch (Exception ex) {
-			Logger.logException(ex);
-		} finally {
-			setActive(null);
-			if (!isChanging)
-				notifier.endChanging();
-			this.refresh = false;
-		}
-	}
-
-	/**
-	 * Test if the DOM implementation implements a specific feature.
-	 * 
-	 * @param featureThe
-	 *            name of the feature to test (case-insensitive). The values
-	 *            used by DOM features are defined throughout the DOM Level 2
-	 *            specifications and listed in the section. The name must be
-	 *            an XML name. To avoid possible conflicts, as a convention,
-	 *            names referring to features defined outside the DOM
-	 *            specification should be made unique by reversing the name of
-	 *            the Internet domain name of the person (or the organization
-	 *            that the person belongs to) who defines the feature,
-	 *            component by component, and using this as a prefix. For
-	 *            instance, the W3C SVG Working Group defines the feature
-	 *            "org.w3c.dom.svg".
-	 * @param versionThis
-	 *            is the version number of the feature to test. In Level 2,
-	 *            the string can be either "2.0" or "1.0". If the version is
-	 *            not specified, supporting any version of the feature causes
-	 *            the method to return <code>true</code>.
-	 * @return <code>true</code> if the feature is implemented in the
-	 *         specified version, <code>false</code> otherwise.
-	 */
-	public boolean hasFeature(String feature, String version) {
-		if (feature == null)
-			return false;
-		if (version != null) {
-			if (!version.equals("1.0") && !version.equals("2.0")) { //$NON-NLS-2$//$NON-NLS-1$
-				return false;
-			}
-		}
-		if (feature.equalsIgnoreCase("Core")) //$NON-NLS-1$
-			return true; //$NON-NLS-1$
-		if (feature.equalsIgnoreCase("XML")) //$NON-NLS-1$
-			return true; //$NON-NLS-1$
-		return false;
-	}
-
-	/**
-	 * createDocument method
-	 * 
-	 * @return org.w3c.dom.Document
-	 */
-	protected Document internalCreateDocument() {
-		DocumentImpl document = new DocumentImpl();
-		document.setModel(this);
-		return document;
-	}
-
-	boolean isReparsing() {
-		return (active != null);
-	}
-
-	/**
-	 * nameChanged method
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	protected void nameChanged(Node node) {
-		if (node == null)
-			return;
-		if (getActiveParser() == null) {
-			XMLModelUpdater updater = getModelUpdater();
-			setActive(updater);
-			updater.initialize();
-			updater.changeName(node);
-			setActive(null);
-		}
-		// notification is already sent
-	}
-
-	/**
-	 * newModel method
-	 * 
-	 * @param structuredDocumentEvent
-	 *            com.ibm.sed.structuredDocument.impl.events.NewModelEvent
-	 */
-	public void newModel(NewDocumentEvent structuredDocumentEvent) {
-		if (structuredDocumentEvent == null)
-			return;
-		IStructuredDocument structuredDocument = structuredDocumentEvent.getStructuredDocument();
-		if (structuredDocument == null)
-			return;
-		// this should not happen, but for the case
-		if (structuredDocument != getStructuredDocument())
-			setStructuredDocument(structuredDocument);
-		IStructuredDocumentRegionList flatNodes = structuredDocument.getRegionList();
-		if (flatNodes == null)
-			return;
-		if (this.document == null)
-			return; // being constructed
-		XMLModelUpdater updater = getActiveUpdater();
-		if (updater != null) { // being updated
-			try {
-				updater.replaceStructuredDocumentRegions(flatNodes, null);
-			} catch (Exception ex) {
-				Logger.logException(ex);
-				this.refresh = true;
-				handleRefresh();
-			} finally {
-				setActive(null);
-			}
-			//			// for new model, we might need to
-			//			// re-init, e.g. if someone calls setText
-			//			// on an existing model
-			//          checkForReinit();
-			return;
-		}
-		XMLModelNotifier notifier = getModelNotifier();
-		boolean isChanging = notifier.isChanging();
-		// call even if changing to notify doing new model
-		getModelNotifier().beginChanging(true);
-		XMLModelParser parser = getModelParser();
-		setActive(parser);
-		this.document.removeChildNodes();
-		try {
-			parser.replaceStructuredDocumentRegions(flatNodes, null);
-		} catch (Exception ex) {
-			Logger.logException(ex);
-			// meaningless to refresh, because the result might be the same
-		} finally {
-			setActive(null);
-			if (!isChanging) {
-				getModelNotifier().endChanging();
-			}
-			// ignore refresh
-			this.refresh = false;
-		}
-		//			checkForReinit();
-	}
-
-	/**
-	 */
-	public void noChange(NoChangeEvent event) {
-		XMLModelUpdater updater = getActiveUpdater();
-		if (updater != null) { // being updated
-			// cleanup updater staffs
-			try {
-				updater.replaceStructuredDocumentRegions(null, null);
-			} catch (Exception ex) {
-				Logger.logException(ex);
-				this.refresh = true;
-				handleRefresh();
-			} finally {
-				setActive(null);
-			}
-			// I guess no chanage means the model could not need re-init
-			//checkForReinit();
-			return;
-		}
-	}
-
-	/**
-	 * nodesReplaced method
-	 * 
-	 * @param event
-	 *            com.ibm.sed.structuredDocument.impl.events.NodesReplacedElement
-	 */
-	public void nodesReplaced(StructuredDocumentRegionsReplacedEvent event) {
-		if (event == null)
-			return;
-		IStructuredDocumentRegionList oldStructuredDocumentRegions = event.getOldStructuredDocumentRegions();
-		IStructuredDocumentRegionList newStructuredDocumentRegions = event.getNewStructuredDocumentRegions();
-		XMLModelUpdater updater = getActiveUpdater();
-		if (updater != null) { // being updated
-			try {
-				updater.replaceStructuredDocumentRegions(newStructuredDocumentRegions, oldStructuredDocumentRegions);
-			} catch (Exception ex) {
-				if (ex.getClass().equals(StructuredDocumentRegionManagementException.class)) {
-					Logger.traceException(TRACE_PARSER_MANAGEMENT_EXCEPTION, ex);
-				} else {
-					Logger.logException(ex);
-				}
-				this.refresh = true;
-				handleRefresh();
-			} finally {
-				setActive(null);
-			}
-			//checkForReinit();
-			return;
-		}
-		XMLModelNotifier notifier = getModelNotifier();
-		boolean isChanging = notifier.isChanging();
-		if (!isChanging)
-			notifier.beginChanging();
-		XMLModelParser parser = getModelParser();
-		setActive(parser);
-		try {
-			parser.replaceStructuredDocumentRegions(newStructuredDocumentRegions, oldStructuredDocumentRegions);
-		} catch (Exception ex) {
-			Logger.logException(ex);
-			this.refresh = true;
-			handleRefresh();
-		} finally {
-			setActive(null);
-			if (!isChanging) {
-				notifier.endChanging();
-				handleRefresh();
-			}
-		}
-
-	}
-
-	/**
-	 * regionChanged method
-	 * 
-	 * @param structuredDocumentEvent
-	 *            com.ibm.sed.structuredDocument.impl.events.RegionChangedEvent
-	 */
-	public void regionChanged(RegionChangedEvent event) {
-		if (event == null)
-			return;
-		IStructuredDocumentRegion flatNode = event.getStructuredDocumentRegion();
-		if (flatNode == null)
-			return;
-		ITextRegion region = event.getRegion();
-		if (region == null)
-			return;
-		XMLModelUpdater updater = getActiveUpdater();
-		if (updater != null) { // being updated
-			try {
-				updater.changeRegion(flatNode, region);
-			} catch (Exception ex) {
-				Logger.logException(ex);
-				this.refresh = true;
-				handleRefresh();
-			} finally {
-				setActive(null);
-			}
-			//			checkForReinit();
-			return;
-		}
-		XMLModelNotifier notifier = getModelNotifier();
-		boolean isChanging = notifier.isChanging();
-		if (!isChanging)
-			notifier.beginChanging();
-		XMLModelParser parser = getModelParser();
-		setActive(parser);
-		try {
-			parser.changeRegion(flatNode, region);
-		} catch (Exception ex) {
-			Logger.logException(ex);
-			this.refresh = true;
-			handleRefresh();
-		} finally {
-			setActive(null);
-			if (!isChanging) {
-				notifier.endChanging();
-				handleRefresh();
-			}
-		}
-		//			checkForReinit();
-	}
-
-	/**
-	 * regionsReplaced method
-	 * 
-	 * @param event
-	 *            com.ibm.sed.structuredDocument.impl.events.RegionReplacedEvent
-	 */
-	public void regionsReplaced(RegionsReplacedEvent event) {
-		if (event == null)
-			return;
-		IStructuredDocumentRegion flatNode = event.getStructuredDocumentRegion();
-		if (flatNode == null)
-			return;
-		ITextRegionList oldRegions = event.getOldRegions();
-		ITextRegionList newRegions = event.getNewRegions();
-		if (oldRegions == null && newRegions == null)
-			return;
-		XMLModelUpdater updater = getActiveUpdater();
-		if (updater != null) { // being updated
-			try {
-				updater.replaceRegions(flatNode, newRegions, oldRegions);
-			} catch (Exception ex) {
-				Logger.logException(ex);
-				this.refresh = true;
-				handleRefresh();
-			} finally {
-				setActive(null);
-			}
-			//			checkForReinit();
-			return;
-		}
-		XMLModelNotifier notifier = getModelNotifier();
-		boolean isChanging = notifier.isChanging();
-		if (!isChanging)
-			notifier.beginChanging();
-		XMLModelParser parser = getModelParser();
-		setActive(parser);
-		try {
-			parser.replaceRegions(flatNode, newRegions, oldRegions);
-		} catch (Exception ex) {
-			Logger.logException(ex);
-			this.refresh = true;
-			handleRefresh();
-		} finally {
-			setActive(null);
-			if (!isChanging) {
-				notifier.endChanging();
-				handleRefresh();
-			}
-		}
-		//			checkForReinit();
-	}
-
-	/**
-	 */
-	public void releaseFromEdit() {
-		if (!isShared()) {
-			//this.document.releaseStyleSheets();
-			this.document.releaseDocumentType();
-		}
-		super.releaseFromEdit();
-	}
-
-	/**
-	 */
-	public void releaseFromRead() {
-		if (!isShared()) {
-			//this.document.releaseStyleSheets();
-			this.document.releaseDocumentType();
-		}
-		super.releaseFromRead();
-	}
-
-	/**
-	 */
-	private void setActive(Object active) {
-		this.active = active;
-		// side effect
-		// when ever becomes active, besure tagNameCache is cleared
-		// (and not used)
-		if (active == null) {
-			document.activateTagNameCache(true);
-		} else {
-			document.activateTagNameCache(false);
-		}
-
-	}
-
-	/**
-	 */
-	public void setGenerator(XMLGenerator generator) {
-		this.generator = generator;
-	}
-
-	/**
-	 */
-	public void setModelNotifier(XMLModelNotifier notifier) {
-		this.notifier = notifier;
-	}
-
-	/**
-	 */
-	public void setModelParser(XMLModelParser parser) {
-		this.parser = parser;
-	}
-
-	/**
-	 */
-	public void setModelUpdater(XMLModelUpdater updater) {
-		this.updater = updater;
-	}
-
-	/**
-	 * setStructuredDocument method
-	 * 
-	 * @param structuredDocument
-	 *            com.ibm.sed.structuredDocument.IStructuredDocument
-	 */
-	public void setStructuredDocument(IStructuredDocument structuredDocument) {
-		IStructuredDocument oldStructuredDocument = super.getStructuredDocument();
-		if (structuredDocument == oldStructuredDocument)
-			return; // nothing to do
-		if (oldStructuredDocument != null)
-			oldStructuredDocument.removeDocumentChangingListener(this);
-		super.setStructuredDocument(structuredDocument);
-		if (structuredDocument.getLength() > 0) {
-			newModel(new NewDocumentEvent(structuredDocument, this));
-		}
-		if (structuredDocument != null)
-			structuredDocument.addDocumentChangingListener(this);
-	}
-
-	/**
-	 */
-	protected void startTagChanged(Element element) {
-		if (element == null)
-			return;
-		if (getActiveParser() == null) {
-			XMLModelUpdater updater = getModelUpdater();
-			setActive(updater);
-			updater.initialize();
-			updater.changeStartTag(element);
-			setActive(null);
-		}
-		getModelNotifier().startTagChanged(element);
-	}
-
-	/**
-	 * valueChanged method
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	protected void valueChanged(Node node) {
-		if (node == null)
-			return;
-		if (getActiveParser() == null) {
-			XMLModelUpdater updater = getModelUpdater();
-			setActive(updater);
-			updater.initialize();
-			updater.changeValue(node);
-			setActive(null);
-		}
-		getModelNotifier().valueChanged(node);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelNotifierImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelNotifierImpl.java
deleted file mode 100644
index e2849d7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelNotifierImpl.java
+++ /dev/null
@@ -1,469 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.xml.core.document.XMLModelNotifier;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.Logger;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class XMLModelNotifierImpl implements XMLModelNotifier {
-
-	/* end: for debugging only */
-	private class NotifyEvent {
-		Object changedFeature;
-		boolean discarded;
-		Object newValue;
-		// note: don't initialize instance variables, since
-		// that causes double assignments, and lots of these are created.
-		INodeNotifier notifier;
-		Object oldValue;
-		int pos;
-		String reason;
-		int type;
-
-		NotifyEvent(INodeNotifier notifier, int type, Object changedFeature, Object oldValue, Object newValue, int pos) {
-			this.notifier = notifier;
-			this.type = type;
-			this.changedFeature = changedFeature;
-			this.oldValue = oldValue;
-			this.newValue = newValue;
-			this.pos = pos;
-			this.reason = ""; //$NON-NLS-1$
-		}
-	}
-
-	private final static String ADDED_THEN_REMOVED = "Discard: Added then removed rule"; //$NON-NLS-1$
-	private final static boolean fOptimizeDeferred = true;
-	private final static boolean fOptimizeDeferredAccordingToParentAdded = true;
-	private final static boolean fOptimizeDeferredAccordingToParentRemoved = true;
-	private final static String PARENT_IS_ADDED = "Disarded: Parent has just been added"; //$NON-NLS-1$
-	/* start: for debugging only */
-	private final static String PARENT_IS_REMOVED_TOO = "Discard: Parent was removed too"; //$NON-NLS-1$
-	private final static String PARENT_IS_REPARENTED = "Not Discard: Parent was removed so this implies reparenting"; //$NON-NLS-1$
-	private Node changedRoot = null;
-
-	private boolean changing = false;
-	private boolean doingNewModel = false;
-	private Vector events = null;
-	private boolean flushing = false;
-
-	/**
-	 */
-	public XMLModelNotifierImpl() {
-		super();
-	}
-
-	/**
-	 * attrReplaced method
-	 * 
-	 * @param element
-	 *            org.w3c.dom.Element
-	 * @param newAttr
-	 *            org.w3c.dom.Attr
-	 * @param oldAttr
-	 *            org.w3c.dom.Attr
-	 */
-	public void attrReplaced(Element element, Attr newAttr, Attr oldAttr) {
-		if (element == null)
-			return;
-		Attr attr = null;
-		String oldValue = null;
-		String newValue = null;
-		if (oldAttr != null) {
-			attr = oldAttr;
-			oldValue = oldAttr.getValue();
-		}
-		if (newAttr != null) {
-			attr = newAttr;
-			newValue = newAttr.getValue();
-		}
-		XMLNode notifier = (XMLNode) element;
-		int offset = notifier.getStartOffset();
-		notify(notifier, INodeNotifier.CHANGE, attr, oldValue, newValue, offset);
-		propertyChanged(notifier);
-	}
-
-	/**
-	 */
-	public void beginChanging() {
-		this.changing = true;
-	}
-
-	/**
-	 */
-	public void beginChanging(boolean newModel) {
-		beginChanging();
-		this.doingNewModel = newModel;
-	}
-
-	/**
-	 * @see com.ibm.sed.model.xml.XMLModelNotifier#cancelPending()
-	 */
-	public void cancelPending() {
-		// we don't want to change the size of this array, since
-		// the array may be being processed, in the defferred notification
-		// loop, but we can signal that all
-		// should be discarded, so any remaining ones will be ignored.
-		if (this.events != null) {
-			Iterator iterator = this.events.iterator();
-			while (iterator.hasNext()) {
-				NotifyEvent event = (NotifyEvent) iterator.next();
-				event.discarded = true;
-			}
-		}
-		// this cancel is presumably being called as a function of
-		// "reinitiailization" so we can ignore changes to the
-		// old root, and changes to the new one will be triggered during
-		// reinitialization.
-		changedRoot = null;
-	}
-
-	/**
-	 * childReplaced method
-	 * 
-	 * @param parentNode
-	 *            org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	public void childReplaced(Node parentNode, Node newChild, Node oldChild) {
-		if (parentNode == null)
-			return;
-		XMLNode notifier = (XMLNode) parentNode;
-		int type = INodeNotifier.CHANGE;
-		if (newChild == null)
-			type = INodeNotifier.REMOVE;
-		else if (oldChild == null)
-			type = INodeNotifier.ADD;
-		int offset = notifier.getStartOffset();
-		notify(notifier, type, oldChild, oldChild, newChild, offset);
-		structureChanged(notifier);
-	}
-
-	public void editableChanged(Node node) {
-		if (node == null)
-			return;
-		XMLNode notifier = (XMLNode) node;
-		int offset = notifier.getStartOffset();
-		notify(notifier, INodeNotifier.CHANGE, null, null, null, offset);
-		propertyChanged(notifier);
-	}
-
-	/**
-	 */
-	public void endChanging() {
-		this.doingNewModel = false;
-		if (!this.changing)
-			return; // avoid nesting calls
-		notifyDeferred();
-		if (this.changedRoot != null) {
-			notifyStructureChanged(this.changedRoot);
-			if (Debug.debugNotifyDeferred) {
-				String p = this.changedRoot.getNodeName();
-				System.out.println("Deferred STRUCUTRE_CHANGED: " + p); //$NON-NLS-1$
-			}
-			this.changedRoot = null;
-		}
-		this.changing = false;
-	}
-
-	/**
-	 */
-	public void endTagChanged(Element element) {
-		if (element == null)
-			return;
-		XMLNode notifier = (XMLNode) element;
-		int offset = notifier.getStartOffset();
-		notify(notifier, INodeNotifier.CHANGE, null, null, null, offset);
-		propertyChanged(element);
-	}
-
-	/**
-	 */
-	public boolean hasChanged() {
-		return (this.events != null);
-	}
-
-	/**
-	 */
-	public boolean isChanging() {
-		return this.changing;
-	}
-
-	/**
-	 */
-	private void notify(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		if (notifier == null)
-			return;
-		if (this.changing && !this.flushing) {
-			// defer notification
-			if (this.events == null)
-				this.events = new Vector();
-			// we do not defer anything if we are doing a new Model,
-			// except for the document event, since all others are
-			// trivial and not needed at that initial point.
-			// But even for that one document event, in the new model case,
-			// it is still important to defer it.
-			if ((!doingNewModel) || (((Node) notifier).getNodeType() == Node.DOCUMENT_NODE)) {
-				this.events.addElement(new NotifyEvent(notifier, eventType, changedFeature, oldValue, newValue, pos));
-			}
-			return;
-		}
-		try {
-			// Its important to "keep going" if exception occurs, since this
-			// notification
-			// comes in between "about to change" and "changed" events. We do
-			// log, however,
-			// since would indicate a program error.
-			notifier.notify(eventType, changedFeature, oldValue, newValue, pos);
-		} catch (Exception e) {
-			Logger.logException("A structured model client threw following exception during adapter notification (" + INodeNotifier.EVENT_TYPE_STRINGS[eventType] + " )", e); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-
-	/**
-	 */
-	private void notifyDeferred() {
-		if (this.events == null)
-			return;
-		if (this.flushing)
-			return;
-		this.flushing = true; // force notification
-		int count = this.events.size();
-		for (int i = 0; i < count; i++) {
-			NotifyEvent event = (NotifyEvent) this.events.elementAt(i);
-			if (event == null)
-				continue; // error
-			if (event.discarded)
-				continue;
-			if (!doingNewModel && fOptimizeDeferred) {
-				// check redundant events (no need to check if doing NewModel,
-				// since
-				// shouldn't be redunancies)
-				if (event.type == INodeNotifier.ADD) {
-					for (int n = i + 1; n < count; n++) {
-						NotifyEvent next = (NotifyEvent) this.events.elementAt(n);
-						if (next == null)
-							continue; // error
-						if (next.type == INodeNotifier.REMOVE && next.oldValue == event.newValue) {
-							// Added then removed later, discard both
-							event.discarded = true;
-							next.discarded = true;
-							if (Debug.debugNotifyDeferred) {
-								event.reason = event.reason + ADDED_THEN_REMOVED + "(see " + n + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-								next.reason = next.reason + ADDED_THEN_REMOVED + "(see " + i + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-							}
-							break;
-						}
-					}
-					if (event.discarded)
-						continue;
-					if (fOptimizeDeferredAccordingToParentAdded) {
-						for (int p = 0; p < i; p++) {
-							NotifyEvent prev = (NotifyEvent) this.events.elementAt(p);
-							if (prev == null)
-								continue; // error
-							if (prev.type == INodeNotifier.REMOVE && prev.oldValue == event.notifier) {
-								// parent is reparented, do not discard
-								if (Debug.debugNotifyDeferred) {
-									event.reason = event.reason + PARENT_IS_REPARENTED + "(see " + p + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-								}
-								break;
-							} else if (prev.type == INodeNotifier.ADD && prev.newValue == event.notifier) {
-								// parent has been added, discard this
-								event.discarded = true;
-								if (Debug.debugNotifyDeferred) {
-									event.reason = event.reason + PARENT_IS_ADDED + "(see " + p + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-								}
-								break;
-							}
-						}
-						if (event.discarded)
-							continue;
-					}
-				} else if (event.type == INodeNotifier.REMOVE) {
-					if (fOptimizeDeferredAccordingToParentRemoved) {
-						for (int n = i + 1; n < count; n++) {
-							NotifyEvent next = (NotifyEvent) this.events.elementAt(n);
-							if (next == null)
-								continue; // error
-							if (next.type == INodeNotifier.REMOVE) {
-								if (next.oldValue == event.notifier) {
-									// parent will be removed, discard this
-									event.discarded = true;
-									if (Debug.debugNotifyDeferred) {
-										event.reason = event.reason + PARENT_IS_REMOVED_TOO + "(see " + n + ")"; //$NON-NLS-1$ //$NON-NLS-2$
-									}
-									break;
-								}
-							}
-						}
-						if (event.discarded)
-							continue;
-					}
-				}
-			}
-			notify(event.notifier, event.type, event.changedFeature, event.oldValue, event.newValue, event.pos);
-		}
-		if (Debug.debugNotifyDeferred) {
-			for (int l = 0; l < count; l++) {
-				NotifyEvent event = (NotifyEvent) this.events.elementAt(l);
-				Object o = null;
-				String t = null;
-				if (event.type == INodeNotifier.ADD) {
-					o = event.newValue;
-					t = " + "; //$NON-NLS-1$
-				} else if (event.type == INodeNotifier.REMOVE) {
-					o = event.oldValue;
-					t = " - "; //$NON-NLS-1$
-				}
-				if (o instanceof Element) {
-					String p = ((Node) event.notifier).getNodeName();
-					String c = ((Node) o).getNodeName();
-					String d = (event.discarded ? "! " : "  "); //$NON-NLS-1$ //$NON-NLS-2$
-					System.out.println(d + p + t + c);
-				}
-			}
-		}
-		this.flushing = false;
-		this.events = null;
-	}
-
-	/**
-	 */
-	private void notifyStructureChanged(Node root) {
-		if (root == null)
-			return;
-		INodeNotifier notifier = (INodeNotifier) root;
-		try {
-			// Its important to "keep going" if exception occurs, since this
-			// notification
-			// comes in between "about to change" and "changed" events. We do
-			// log, however,
-			// since would indicate a program error.
-			notifier.notify(INodeNotifier.STRUCTURE_CHANGED, null, null, null, -1);
-		} catch (Exception e) {
-			Logger.logException("A structured model client threw following exception during adapter notification (" + INodeNotifier.EVENT_TYPE_STRINGS[INodeNotifier.STRUCTURE_CHANGED] + " )", e); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-
-	}
-
-	/**
-	 */
-	public void propertyChanged(Node node) {
-	}
-
-	/**
-	 * @param node
-	 */
-	private void setCommonRootIfNeeded(Node node) {
-		// defer notification
-		if (this.changedRoot == null) {
-			this.changedRoot = node;
-		} else {
-			// tiny optimization: if previous commonAncestor (changedRoot) is
-			// already 'document',
-			// or if already equal to this 'node',
-			// then no need to re-calculate
-			if (changedRoot.getNodeType() != Node.DOCUMENT_NODE && changedRoot != node) {
-				Node common = ((NodeImpl) this.changedRoot).getCommonAncestor(node);
-				if (common != null)
-					this.changedRoot = common;
-				else
-					this.changedRoot = node;
-			}
-		}
-	}
-
-	/**
-	 */
-	public void startTagChanged(Element element) {
-		if (element == null)
-			return;
-		XMLNode notifier = (XMLNode) element;
-		int offset = notifier.getStartOffset();
-		notify(notifier, INodeNotifier.CHANGE, null, null, null, offset);
-		propertyChanged(element);
-	}
-
-	/**
-	 */
-	public void structureChanged(Node node) {
-		if (node == null)
-			return;
-		if (isChanging()) {
-			setCommonRootIfNeeded(node);
-			if (Debug.debugNotifyDeferred) {
-				String p = this.changedRoot.getNodeName();
-				System.out.println("requested STRUCUTRE_CHANGED: " + p); //$NON-NLS-1$
-			}
-			return;
-		}
-		if (Debug.debugNotifyDeferred) {
-			String p = node.getNodeName();
-			System.out.println("STRUCUTRE_CHANGED: " + p); //$NON-NLS-1$
-		}
-		notifyStructureChanged(node);
-	}
-
-	/**
-	 * valueChanged method
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	public void valueChanged(Node node) {
-		if (node == null)
-			return;
-		XMLNode notifier = null;
-		if (node.getNodeType() == Node.ATTRIBUTE_NODE) {
-			Attr attr = (Attr) node;
-			notifier = (XMLNode) attr.getOwnerElement();
-			// TODO_dmw: experimental: changed 06/29/2004 to send "strucuture
-			// changed" even for attribute value changes
-			// there are pros and cons to considering attribute value
-			// "structure changed". Will (re)consider
-			// setCommonRootIfNeeded(notifier);
-			if (notifier == null)
-				return;
-			String value = attr.getValue();
-			int offset = notifier.getStartOffset();
-			notify(notifier, INodeNotifier.CHANGE, attr, null, value, offset);
-		} else {
-			// note: we do not send structured changed event for content
-			// changed
-			notifier = (XMLNode) node;
-			String value = node.getNodeValue();
-			int offset = notifier.getStartOffset();
-			notify(notifier, INodeNotifier.CHANGE, null, null, value, offset);
-			if (node.getNodeType() != Node.ELEMENT_NODE) {
-				XMLNode parent = (XMLNode) node.getParentNode();
-				if (parent != null) {
-					notify(parent, INodeNotifier.CONTENT_CHANGED, node, null, value, offset);
-				}
-			}
-		}
-		propertyChanged(notifier);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelParser.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelParser.java
deleted file mode 100644
index 39911e4..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelParser.java
+++ /dev/null
@@ -1,2476 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.Vector;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.commentelement.impl.CommentElementConfiguration;
-import org.eclipse.wst.xml.core.commentelement.impl.CommentElementRegistry;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-
-/**
- * XMLModelParser
- */
-public class XMLModelParser {
-	private ModelParserAdapter adapter = null;
-	private XMLModelContext context = null;
-	private DocumentImpl document = null;
-
-	private XMLModelImpl model = null;
-
-	/**
-	 */
-	protected XMLModelParser(XMLModelImpl model) {
-		super();
-
-		if (model != null) {
-			this.model = model;
-			this.document = (DocumentImpl) model.getDocument();
-			if (this.document != null) {
-				this.adapter = (ModelParserAdapter) this.document.getAdapterFor(ModelParserAdapter.class);
-			}
-		}
-	}
-
-	/**
-	 */
-	protected boolean canBeImplicitTag(Element element) {
-		if (this.adapter != null) {
-			return this.adapter.canBeImplicitTag(element);
-		}
-		return false;
-	}
-
-	/**
-	 */
-	protected boolean canBeImplicitTag(Element element, Node child) {
-		if (this.adapter != null) {
-			return this.adapter.canBeImplicitTag(element, child);
-		}
-		return false;
-	}
-
-	/**
-	 */
-	protected boolean canContain(Element element, Node child) {
-		if (element == null || child == null)
-			return false;
-		ElementImpl impl = (ElementImpl) element;
-		if (impl.isEndTag())
-			return false; // invalid (floating) end tag
-		if (!impl.isContainer())
-			return false;
-		if (child.getNodeType() != Node.TEXT_NODE) {
-			if (impl.isJSPContainer() || impl.isCDATAContainer()) {
-				// accepts only Text child
-				return false;
-			}
-		}
-		if (this.adapter != null) {
-			return this.adapter.canContain(element, child);
-		}
-		return true;
-	}
-
-	/**
-	 */
-	private void changeAttrEqual(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		int offset = flatNode.getStart();
-		if (offset < 0)
-			return;
-		NodeImpl root = (NodeImpl) this.context.getRootNode();
-		if (root == null)
-			return;
-		Node node = root.getNodeAt(offset);
-		if (node == null)
-			return;
-		if (node.getNodeType() != Node.ELEMENT_NODE) {
-			if (node.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) {
-				// just notify the change instead of setting data
-				ProcessingInstructionImpl pi = (ProcessingInstructionImpl) node;
-				pi.notifyValueChanged();
-			}
-			return;
-		}
-		// actually, do nothing
-	}
-
-	/**
-	 * changeAttrName method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 * @param region
-	 *            com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	private void changeAttrName(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		int offset = flatNode.getStart();
-		if (offset < 0)
-			return;
-		NodeImpl root = (NodeImpl) this.context.getRootNode();
-		if (root == null)
-			return;
-		Node node = root.getNodeAt(offset);
-		if (node == null)
-			return;
-		if (node.getNodeType() != Node.ELEMENT_NODE) {
-			if (node.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) {
-				// just notify the change instead of setting data
-				ProcessingInstructionImpl pi = (ProcessingInstructionImpl) node;
-				pi.notifyValueChanged();
-			}
-			return;
-		}
-
-		ElementImpl element = (ElementImpl) node;
-		NamedNodeMap attributes = element.getAttributes();
-		if (attributes == null)
-			return;
-		int length = attributes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) attributes.item(i);
-			if (attr == null)
-				continue;
-			if (attr.getNameRegion() != region)
-				continue;
-
-			String name = flatNode.getText(region);
-			attr.setName(name);
-			break;
-		}
-	}
-
-	/**
-	 * changeAttrValue method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 * @param region
-	 *            com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	private void changeAttrValue(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		int offset = flatNode.getStart();
-		if (offset < 0)
-			return;
-		NodeImpl root = (NodeImpl) this.context.getRootNode();
-		if (root == null)
-			return;
-		Node node = root.getNodeAt(offset);
-		if (node == null)
-			return;
-		if (node.getNodeType() != Node.ELEMENT_NODE) {
-			if (node.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) {
-				// just notify the change instead of setting data
-				ProcessingInstructionImpl pi = (ProcessingInstructionImpl) node;
-				pi.notifyValueChanged();
-			}
-			return;
-		}
-
-		ElementImpl element = (ElementImpl) node;
-		NamedNodeMap attributes = element.getAttributes();
-		if (attributes == null)
-			return;
-		int length = attributes.getLength();
-		for (int i = 0; i < length; i++) {
-			AttrImpl attr = (AttrImpl) attributes.item(i);
-			if (attr == null)
-				continue;
-			if (attr.getValueRegion() != region)
-				continue;
-			// just notify the change instead of setting value
-			attr.notifyValueChanged();
-			break;
-		}
-	}
-
-	/**
-	 * changeData method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 * @param region
-	 *            com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	private void changeData(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		int offset = flatNode.getStart();
-		if (offset < 0)
-			return;
-		NodeImpl root = (NodeImpl) this.context.getRootNode();
-		if (root == null)
-			return;
-		Node node = root.getNodeAt(offset);
-		if (node == null)
-			return;
-		switch (node.getNodeType()) {
-			case Node.TEXT_NODE : {
-				TextImpl text = (TextImpl) node;
-				if (text.isSharingStructuredDocumentRegion(flatNode)) {
-					// has consecutive text sharing IStructuredDocumentRegion
-					changeStructuredDocumentRegion(flatNode);
-					return;
-				}
-				this.context.setNextNode(node);
-				cleanupText();
-				break;
-			}
-			case Node.CDATA_SECTION_NODE :
-			case Node.PROCESSING_INSTRUCTION_NODE :
-				break;
-			case Node.COMMENT_NODE :
-			case Node.ELEMENT_NODE :
-				// comment tag
-				changeStructuredDocumentRegion(flatNode);
-				return;
-			default :
-				return;
-		}
-
-		// just notify the change instead of setting data
-		NodeImpl impl = (NodeImpl) node;
-		impl.notifyValueChanged();
-	}
-
-	/**
-	 */
-	private void changeEndTag(IStructuredDocumentRegion flatNode, ITextRegionList newRegions, ITextRegionList oldRegions) {
-		int offset = flatNode.getStart();
-		if (offset < 0)
-			return; // error
-		NodeImpl root = (NodeImpl) this.context.getRootNode();
-		if (root == null)
-			return; // error
-		Node node = root.getNodeAt(offset);
-		if (node == null)
-			return; // error
-
-		if (node.getNodeType() != Node.ELEMENT_NODE) {
-			changeStructuredDocumentRegion(flatNode);
-			return;
-		}
-
-		// check if change is only for close tag
-		if (newRegions != null) {
-			Iterator e = newRegions.iterator();
-			while (e.hasNext()) {
-				ITextRegion region = (ITextRegion) e.next();
-				String regionType = region.getType();
-				if (regionType == XMLRegionContext.XML_TAG_CLOSE)
-					continue;
-
-				// other region has changed
-				changeStructuredDocumentRegion(flatNode);
-				return;
-			}
-		}
-		if (oldRegions != null) {
-			Iterator e = oldRegions.iterator();
-			while (e.hasNext()) {
-				ITextRegion region = (ITextRegion) e.next();
-				String regionType = region.getType();
-				if (regionType == XMLRegionContext.XML_TAG_CLOSE)
-					continue;
-
-				// other region has changed
-				changeStructuredDocumentRegion(flatNode);
-				return;
-			}
-		}
-
-		// change for close tag has no impact
-		// do nothing
-	}
-
-	/**
-	 * changeRegion method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 * @param region
-	 *            com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	void changeRegion(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		if (flatNode == null || region == null)
-			return;
-		if (this.document == null)
-			return;
-		this.context = new XMLModelContext(this.document);
-
-		// optimize typical cases
-		String regionType = region.getType();
-		if (regionType == XMLRegionContext.XML_CONTENT || regionType == XMLRegionContext.XML_COMMENT_TEXT || regionType == XMLRegionContext.XML_CDATA_TEXT || regionType == XMLRegionContext.BLOCK_TEXT || isNestedContent(regionType)) {
-			changeData(flatNode, region);
-		}
-		else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-			changeAttrName(flatNode, region);
-		}
-		else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-			changeAttrValue(flatNode, region);
-		}
-		else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-			changeAttrEqual(flatNode, region);
-		}
-		else if (regionType == XMLRegionContext.XML_TAG_NAME || isNestedTagName(regionType)) {
-			changeTagName(flatNode, region);
-		}
-		else {
-			changeStructuredDocumentRegion(flatNode);
-		}
-	}
-
-
-
-	/**
-	 */
-	private void changeStartTag(IStructuredDocumentRegion flatNode, ITextRegionList newRegions, ITextRegionList oldRegions) {
-		int offset = flatNode.getStart();
-		if (offset < 0)
-			return; // error
-		NodeImpl root = (NodeImpl) this.context.getRootNode();
-		if (root == null)
-			return; // error
-		Node node = root.getNodeAt(offset);
-		if (node == null)
-			return; // error
-
-		if (node.getNodeType() != Node.ELEMENT_NODE) {
-			changeStructuredDocumentRegion(flatNode);
-			return;
-		}
-		ElementImpl element = (ElementImpl) node;
-
-		// check if changes are only for attributes and close tag
-		boolean tagNameUnchanged = false;
-		if (newRegions != null) {
-			Iterator e = newRegions.iterator();
-			while (e.hasNext()) {
-				ITextRegion region = (ITextRegion) e.next();
-				String regionType = region.getType();
-				if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME || regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS || regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-					continue;
-				if (regionType == XMLRegionContext.XML_TAG_CLOSE) {
-					// change from empty tag may have impact on structure
-					if (!element.isEmptyTag())
-						continue;
-				}
-				else if (regionType == XMLRegionContext.XML_TAG_NAME || isNestedTagName(regionType)) {
-					String oldTagName = element.getTagName();
-					String newTagName = flatNode.getText(region);
-					if (oldTagName != null && newTagName != null && oldTagName.equals(newTagName)) {
-						// the tag name is unchanged
-						tagNameUnchanged = true;
-						continue;
-					}
-				}
-
-				// other region has changed
-				changeStructuredDocumentRegion(flatNode);
-				return;
-			}
-		}
-		if (oldRegions != null) {
-			Iterator e = oldRegions.iterator();
-			while (e.hasNext()) {
-				ITextRegion region = (ITextRegion) e.next();
-				String regionType = region.getType();
-				if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME || regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS || regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-					continue;
-				if (regionType == XMLRegionContext.XML_TAG_CLOSE) {
-					// change from empty tag may have impact on structure
-					if (!element.isEmptyTag())
-						continue;
-				}
-				else if (regionType == XMLRegionContext.XML_TAG_NAME || isNestedTagName(regionType)) {
-					// if new tag name is unchanged, it's OK
-					if (tagNameUnchanged)
-						continue;
-				}
-
-				// other region has changed
-				changeStructuredDocumentRegion(flatNode);
-				return;
-			}
-		}
-
-		// update attributes
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return; // error
-		NamedNodeMap attributes = element.getAttributes();
-		if (attributes == null)
-			return; // error
-
-		// first remove attributes
-		int regionIndex = 0;
-		int attrIndex = 0;
-		AttrImpl attr = null;
-		while (attrIndex < attributes.getLength()) {
-			attr = (AttrImpl) attributes.item(attrIndex);
-			if (attr == null) { // error
-				attrIndex++;
-				continue;
-			}
-			ITextRegion nameRegion = attr.getNameRegion();
-			if (nameRegion == null) { // error
-				element.removeAttributeNode(attr);
-				continue;
-			}
-			boolean found = false;
-			for (int i = regionIndex; i < regions.size(); i++) {
-				ITextRegion region = regions.get(i);
-				if (region == nameRegion) {
-					regionIndex = i + 1; // next region
-					found = true;
-					break;
-				}
-			}
-			if (found) {
-				attrIndex++;
-			}
-			else {
-				element.removeAttributeNode(attr);
-			}
-		}
-
-		// insert or update attributes
-		attrIndex = 0; // reset to first
-		AttrImpl newAttr = null;
-		ITextRegion oldValueRegion = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				if (newAttr != null) {
-					// insert deferred new attribute
-					element.insertAttributeNode(newAttr, attrIndex++);
-					newAttr = null;
-				}
-				else if (attr != null && oldValueRegion != null) {
-					// notify existing attribute value removal
-					attr.notifyValueChanged();
-				}
-
-				oldValueRegion = null;
-				attr = (AttrImpl) attributes.item(attrIndex);
-				if (attr != null && attr.getNameRegion() == region) {
-					// existing attribute
-					attrIndex++;
-					// clear other regions
-					oldValueRegion = attr.getValueRegion();
-					attr.setEqualRegion(null);
-					attr.setValueRegion(null);
-				}
-				else {
-					String name = flatNode.getText(region);
-					attr = (AttrImpl) this.document.createAttribute(name);
-					if (attr != null)
-						attr.setNameRegion(region);
-					// defer insertion of new attribute
-					newAttr = attr;
-				}
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				if (attr != null) {
-					attr.setEqualRegion(region);
-				}
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				if (attr != null) {
-					attr.setValueRegion(region);
-					if (attr != newAttr && oldValueRegion != region) {
-						// notify existing attribute value changed
-						attr.notifyValueChanged();
-					}
-					oldValueRegion = null;
-					attr = null;
-				}
-			}
-		}
-
-		if (newAttr != null) {
-			// insert deferred new attribute
-			element.appendAttributeNode(newAttr);
-		}
-		else if (attr != null && oldValueRegion != null) {
-			// notify existing attribute value removal
-			attr.notifyValueChanged();
-		}
-	}
-
-	/**
-	 * changeStructuredDocumentRegion method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void changeStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return;
-		if (this.document == null)
-			return;
-
-		setupContext(flatNode);
-
-		removeStructuredDocumentRegion(flatNode);
-		// make sure the parent is set to deepest level
-		// when end tag has been removed
-		this.context.setLast();
-		insertStructuredDocumentRegion(flatNode);
-
-		cleanupText();
-		cleanupEndTag();
-	}
-
-	/**
-	 */
-	private void changeTagName(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		int offset = flatNode.getStart();
-		if (offset < 0)
-			return; // error
-		NodeImpl root = (NodeImpl) this.context.getRootNode();
-		if (root == null)
-			return; // error
-		Node node = root.getNodeAt(offset);
-		if (node == null)
-			return; // error
-
-		if (node.getNodeType() != Node.ELEMENT_NODE) {
-			changeStructuredDocumentRegion(flatNode);
-			return;
-		}
-
-		ElementImpl element = (ElementImpl) node;
-		String newTagName = flatNode.getText(region);
-		if (newTagName == null || !element.matchTagName(newTagName)) {
-			// the tag name is changed
-			changeStructuredDocumentRegion(flatNode);
-			return;
-		}
-
-		// the tag name is unchanged
-		// this happens when typing spaces after the tag name
-		// do nothing, but...
-		// if it's not a change in the end tag of an element with the start
-		// tag,
-		// and case has been changed, set to element and notify
-		if (!element.hasStartTag() || StructuredDocumentRegionUtil.getFirstRegionType(flatNode) != XMLRegionContext.XML_END_TAG_OPEN) {
-			String tagName = element.getTagName();
-			if (tagName == null || !tagName.equals(newTagName)) {
-				element.setTagName(newTagName);
-				element.notifyValueChanged();
-			}
-		}
-	}
-
-	/**
-	 * cleanupContext method
-	 */
-	private void cleanupEndTag() {
-		Node parent = this.context.getParentNode();
-		Node next = this.context.getNextNode();
-		while (parent != null) {
-			while (next != null) {
-				if (next.getNodeType() == Node.ELEMENT_NODE) {
-					ElementImpl element = (ElementImpl) next;
-					if (element.isEndTag()) {
-						// floating end tag
-						String tagName = element.getTagName();
-						String rootName = getFindRootName(tagName);
-						ElementImpl start = (ElementImpl) this.context.findStartTag(tagName, rootName);
-						if (start != null) {
-							insertEndTag(start);
-							// move the end tag from 'element' to 'start'
-							start.addEndTag(element);
-							removeNode(element);
-							parent = this.context.getParentNode();
-							next = this.context.getNextNode();
-							continue;
-						}
-					}
-				}
-
-				Node first = next.getFirstChild();
-				if (first != null) {
-					parent = next;
-					next = first;
-					this.context.setNextNode(next);
-				}
-				else {
-					next = next.getNextSibling();
-					this.context.setNextNode(next);
-				}
-			}
-
-			if (parent.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl element = (ElementImpl) parent;
-				if (!element.hasEndTag() && element.hasStartTag() && element.getNextSibling() == null) {
-					String tagName = element.getTagName();
-					ElementImpl end = (ElementImpl) this.context.findEndTag(tagName);
-					if (end != null) {
-						// move the end tag from 'end' to 'element'
-						element.addEndTag(end);
-						removeEndTag(end);
-						this.context.setParentNode(parent); // reset context
-						continue;
-					}
-				}
-			}
-
-			next = parent.getNextSibling();
-			parent = parent.getParentNode();
-			if (next != null) {
-				this.context.setNextNode(next);
-			}
-			else {
-				this.context.setParentNode(parent);
-			}
-		}
-	}
-
-	/**
-	 */
-	private void cleanupText() {
-		Node parent = this.context.getParentNode();
-		if (parent == null)
-			return; // error
-		Node next = this.context.getNextNode();
-		Node prev = (next == null ? parent.getLastChild() : next.getPreviousSibling());
-
-		TextImpl nextText = null;
-		TextImpl prevText = null;
-		if (next != null && next.getNodeType() == Node.TEXT_NODE) {
-			nextText = (TextImpl) next;
-		}
-		if (prev != null && prev.getNodeType() == Node.TEXT_NODE) {
-			prevText = (TextImpl) prev;
-		}
-		if (nextText == null && prevText == null)
-			return;
-		if (nextText != null && prevText != null) {
-			// consecutive Text nodes created by setupContext(),
-			// concat them
-			IStructuredDocumentRegion flatNode = nextText.getStructuredDocumentRegion();
-			if (flatNode != null)
-				prevText.appendStructuredDocumentRegion(flatNode);
-			Node newNext = next.getNextSibling();
-			parent.removeChild(next);
-			next = null;
-			this.context.setNextNode(newNext);
-		}
-
-		TextImpl childText = (prevText != null ? prevText : nextText);
-		if (childText.getNextSibling() == null && childText.getPreviousSibling() == null) {
-			if (parent.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl parentElement = (ElementImpl) parent;
-				if (!parentElement.hasStartTag() && !parentElement.hasEndTag()) {
-					if (childText.isWhitespace() || childText.isInvalid()) {
-						// implicit parent is not required
-						Node newParent = parent.getParentNode();
-						if (newParent != null) {
-							Node newNext = parent.getNextSibling();
-							newParent.removeChild(parent);
-							parent.removeChild(childText);
-							newParent.insertBefore(childText, newNext);
-							if (childText == next) {
-								this.context.setNextNode(childText);
-							}
-							else if (newNext != null) {
-								this.context.setNextNode(newNext);
-							}
-							else {
-								this.context.setParentNode(newParent);
-							}
-							// try again
-							cleanupText();
-						}
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * This routine create an Element from comment data for comment style
-	 * elements, such as SSI and METADATA
-	 */
-	protected Element createCommentElement(String data, boolean isJSPTag) {
-		String trimmedData = data.trim();
-		CommentElementConfiguration[] configs = CommentElementRegistry.getInstance().getConfigurations();
-		for (int iConfig = 0; iConfig < configs.length; iConfig++) {
-			CommentElementConfiguration config = configs[iConfig];
-			if ((isJSPTag && !config.acceptJSPComment()) || (!isJSPTag && !config.acceptXMLComment())) {
-				continue;
-			}
-			String[] prefixes = config.getPrefix();
-			for (int iPrefix = 0; iPrefix < prefixes.length; iPrefix++) {
-				if (trimmedData.startsWith(prefixes[iPrefix])) {
-					return config.createElement(this.document, data, isJSPTag);
-				}
-			}
-		}
-		if (this.adapter != null) {
-			return this.adapter.createCommentElement(this.document, data, isJSPTag);
-		}
-		return null;
-	}
-
-	/**
-	 * This routine create an implicit Element for given parent and child,
-	 * such as HTML, BODY, HEAD, and TBODY for HTML document.
-	 */
-	protected Element createImplicitElement(Node parent, Node child) {
-		if (this.adapter != null) {
-			return this.adapter.createImplicitElement(this.document, parent, child);
-		}
-		return null;
-	}
-
-	/**
-	 */
-	private void demoteNodes(Node root, Node newParent, Node oldParent, Node next) {
-		if (newParent.getNodeType() != Node.ELEMENT_NODE)
-			return;
-		ElementImpl newElement = (ElementImpl) newParent;
-
-		// find next
-		while (next == null) {
-			if (oldParent.getNodeType() != Node.ELEMENT_NODE)
-				return;
-			ElementImpl oldElement = (ElementImpl) oldParent;
-			if (oldElement.hasEndTag())
-				return;
-			oldParent = oldElement.getParentNode();
-			if (oldParent == null)
-				return; // error
-			next = oldElement.getNextSibling();
-		}
-
-		while (next != null) {
-			boolean done = false;
-			if (next.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl nextElement = (ElementImpl) next;
-				if (!nextElement.hasStartTag()) {
-					Node nextChild = nextElement.getFirstChild();
-					if (nextChild != null) {
-						// demote children
-						next = nextChild;
-						oldParent = nextElement;
-						continue;
-					}
-
-					if (nextElement.hasEndTag()) {
-						if (nextElement.matchEndTag(newElement)) {
-							// stop at the matched invalid end tag
-							next = nextElement.getNextSibling();
-							oldParent.removeChild(nextElement);
-							newElement.addEndTag(nextElement);
-
-							if (newElement == root)
-								return;
-							Node p = newElement.getParentNode();
-							// check if reached to top
-							if (p == null || p == oldParent || p.getNodeType() != Node.ELEMENT_NODE)
-								return;
-							newElement = (ElementImpl) p;
-							done = true;
-						}
-					}
-					else {
-						// remove implicit element
-						next = nextElement.getNextSibling();
-						oldParent.removeChild(nextElement);
-						done = true;
-					}
-				}
-			}
-
-			if (!done) {
-				if (!canContain(newElement, next)) {
-					if (newElement == root)
-						return;
-					Node p = newElement.getParentNode();
-					// check if reached to top
-					if (p == null || p == oldParent || p.getNodeType() != Node.ELEMENT_NODE)
-						return;
-					newElement = (ElementImpl) p;
-					continue;
-				}
-
-				Node child = next;
-				next = next.getNextSibling();
-				oldParent.removeChild(child);
-				insertNode(newElement, child, null);
-				Node childParent = child.getParentNode();
-				if (childParent != newElement) {
-					newElement = (ElementImpl) childParent;
-				}
-			}
-
-			// find next parent and sibling
-			while (next == null) {
-				if (oldParent.getNodeType() != Node.ELEMENT_NODE)
-					return;
-				ElementImpl oldElement = (ElementImpl) oldParent;
-
-				// dug parent must not have children at this point
-				if (!oldElement.hasChildNodes() && !oldElement.hasStartTag()) {
-					oldParent = oldElement.getParentNode();
-					if (oldParent == null)
-						return; // error
-					next = oldElement;
-					break;
-				}
-
-				if (oldElement.hasEndTag())
-					return;
-				oldParent = oldElement.getParentNode();
-				if (oldParent == null)
-					return; // error
-				next = oldElement.getNextSibling();
-			}
-		}
-	}
-
-	/**
-	 */
-	protected final XMLDocument getDocument() {
-		return this.document;
-	}
-
-	/**
-	 */
-	protected String getFindRootName(String tagName) {
-		if (this.adapter != null) {
-			return this.adapter.getFindRootName(tagName);
-		}
-		return null;
-	}
-
-	/**
-	 */
-	protected final XMLModel getModel() {
-		return this.model;
-	}
-
-	/**
-	 * insertCDATASection method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertCDATASection(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		CDATASectionImpl cdata = null;
-		try {
-			cdata = (CDATASectionImpl) this.document.createCDATASection(null);
-		}
-		catch (DOMException ex) {
-		}
-		if (cdata == null) { // CDATA section might not be supported
-			insertInvalidDecl(flatNode); // regard as invalid decl
-			return;
-		}
-
-		cdata.setStructuredDocumentRegion(flatNode);
-		insertNode(cdata);
-	}
-
-	/**
-	 * insertComment method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertComment(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		String data = null;
-		boolean isJSPTag = false;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (isNestedCommentOpen(regionType)) {
-				isJSPTag = true;
-			}
-			else if (regionType == XMLRegionContext.XML_COMMENT_TEXT || isNestedCommentText(regionType)) {
-				if (data == null) {
-					data = flatNode.getText(region);
-				}
-			}
-		}
-
-		if (data != null) {
-			ElementImpl element = (ElementImpl) createCommentElement(data, isJSPTag);
-			if (element != null) {
-				if (!isEndTag(element)) {
-					element.setStartStructuredDocumentRegion(flatNode);
-					insertStartTag(element);
-					return;
-				}
-
-				// end tag
-				element.setEndStructuredDocumentRegion(flatNode);
-
-				String tagName = element.getTagName();
-				String rootName = getFindRootName(tagName);
-				ElementImpl start = (ElementImpl) this.context.findStartTag(tagName, rootName);
-				if (start != null) { // start tag found
-					insertEndTag(start);
-					start.addEndTag(element);
-					return;
-				}
-
-				// invalid end tag
-				insertNode(element);
-				return;
-			}
-		}
-
-		CommentImpl comment = (CommentImpl) this.document.createComment(null);
-		if (comment == null)
-			return;
-		if (isJSPTag)
-			comment.setJSPTag(true);
-		comment.setStructuredDocumentRegion(flatNode);
-		insertNode(comment);
-	}
-
-	/**
-	 * insertDecl method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertDecl(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		boolean isDocType = false;
-		String name = null;
-		String publicId = null;
-		String systemId = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_DOCTYPE_DECLARATION) {
-				isDocType = true;
-			}
-			else if (regionType == XMLRegionContext.XML_DOCTYPE_NAME) {
-				if (name == null)
-					name = flatNode.getText(region);
-			}
-			else if (regionType == XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_PUBREF) {
-				if (publicId == null)
-					publicId = StructuredDocumentRegionUtil.getAttrValue(flatNode, region);
-			}
-			else if (regionType == XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_SYSREF) {
-				if (systemId == null)
-					systemId = StructuredDocumentRegionUtil.getAttrValue(flatNode, region);
-			}
-		}
-
-		// invalid declaration
-		if (!isDocType) {
-			insertInvalidDecl(flatNode);
-			return;
-		}
-
-		DocumentTypeImpl docType = (DocumentTypeImpl) this.document.createDoctype(name);
-		if (docType == null)
-			return;
-		if (publicId != null)
-			docType.setPublicId(publicId);
-		if (systemId != null)
-			docType.setSystemId(systemId);
-		docType.setStructuredDocumentRegion(flatNode);
-		insertNode(docType);
-	}
-
-	/**
-	 * insertEndTag method can be used by subclasses, but not overrided.
-	 * 
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	protected void insertEndTag(Element element) {
-		if (element == null)
-			return;
-
-		Node newParent = element.getParentNode();
-		if (newParent == null)
-			return; // error
-
-		if (!((ElementImpl) element).isContainer()) {
-			// just update context
-			Node elementNext = element.getNextSibling();
-			if (elementNext != null)
-				this.context.setNextNode(elementNext);
-			else
-				this.context.setParentNode(newParent);
-			return;
-		}
-
-		// promote children
-		Node newNext = element.getNextSibling();
-		Node oldParent = this.context.getParentNode();
-		if (oldParent == null)
-			return; // error
-		Node oldNext = this.context.getNextNode();
-		promoteNodes(element, newParent, newNext, oldParent, oldNext);
-
-		// update context
-		// re-check the next sibling
-		newNext = element.getNextSibling();
-		if (newNext != null)
-			this.context.setNextNode(newNext);
-		else
-			this.context.setParentNode(newParent);
-	}
-
-	/**
-	 * insertEndTag method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertEndTag(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		String tagName = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_TAG_NAME || isNestedTagName(regionType)) {
-				if (tagName == null)
-					tagName = flatNode.getText(region);
-			}
-		}
-
-		if (tagName == null) { // invalid end tag
-			insertText(flatNode); // regard as invalid text
-			return;
-		}
-
-		String rootName = getFindRootName(tagName);
-		ElementImpl start = (ElementImpl) this.context.findStartTag(tagName, rootName);
-		if (start != null) { // start tag found
-			insertEndTag(start);
-			start.setEndStructuredDocumentRegion(flatNode);
-			return;
-		}
-
-		// invalid end tag
-		ElementImpl end = null;
-		try {
-			end = (ElementImpl) this.document.createElement(tagName);
-		}
-		catch (DOMException ex) {
-		}
-		if (end == null) { // invalid end tag
-			insertText(flatNode); // regard as invalid text
-			return;
-		}
-		end.setEndStructuredDocumentRegion(flatNode);
-		insertNode(end);
-	}
-
-	/**
-	 * insertEntityRef method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertEntityRef(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		String name = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_ENTITY_REFERENCE || regionType == XMLRegionContext.XML_CHAR_REFERENCE) {
-				if (name == null)
-					name = StructuredDocumentRegionUtil.getEntityRefName(flatNode, region);
-			}
-		}
-
-		if (name == null) { // invalid entity
-			insertText(flatNode);
-			return;
-		}
-
-		String value = this.document.getCharValue(name);
-		if (value != null) { // character entity
-			TextImpl text = (TextImpl) this.context.findPreviousText();
-			if (text != null) { // existing text found
-				// do not append data
-				text.appendStructuredDocumentRegion(flatNode);
-				// notify the change
-				text.notifyValueChanged();
-				return;
-			}
-
-			// new text
-			text = (TextImpl) this.document.createTextNode(null);
-			if (text == null)
-				return;
-			text.setStructuredDocumentRegion(flatNode);
-			insertNode(text);
-			return;
-		}
-
-		// general entity reference
-		EntityReferenceImpl ref = null;
-		try {
-			ref = (EntityReferenceImpl) this.document.createEntityReference(name);
-		}
-		catch (DOMException ex) {
-		}
-		if (ref == null) { // entity reference might not be supported
-			insertText(flatNode); // regard as invalid text
-			return;
-		}
-
-		ref.setStructuredDocumentRegion(flatNode);
-		insertNode(ref);
-	}
-
-	/**
-	 * insertInvalidDecl method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertInvalidDecl(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		ElementImpl element = null;
-		try {
-			element = (ElementImpl) this.document.createElement("!");//$NON-NLS-1$
-		}
-		catch (DOMException ex) {
-		}
-		if (element == null) { // invalid tag
-			insertText(flatNode); // regard as invalid text
-			return;
-		}
-		element.setEmptyTag(true);
-		element.setStartStructuredDocumentRegion(flatNode);
-		insertNode(element);
-	}
-
-	/**
-	 * insertJSPTag method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertNestedTag(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		String tagName = null;
-		AttrImpl attr = null;
-		Vector attrNodes = null;
-		boolean isCloseTag = false;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (isNestedTagOpen(regionType) || isNestedTagName(regionType)) {
-				tagName = computeNestedTag(regionType, tagName, flatNode, region);
-			}
-			else if (isNestedTagClose(regionType)) {
-				isCloseTag = true;
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				String name = flatNode.getText(region);
-				attr = (AttrImpl) this.document.createAttribute(name);
-				if (attr != null) {
-					attr.setNameRegion(region);
-					if (attrNodes == null)
-						attrNodes = new Vector();
-					attrNodes.addElement(attr);
-				}
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				if (attr != null) {
-					attr.setEqualRegion(region);
-				}
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				if (attr != null) {
-					attr.setValueRegion(region);
-					attr = null;
-				}
-			}
-		}
-
-		if (tagName == null) {
-			if (isCloseTag) {
-				// close JSP tag
-				Node parent = this.context.getParentNode();
-				if (parent != null && parent.getNodeType() == Node.ELEMENT_NODE) {
-					ElementImpl start = (ElementImpl) parent;
-					if (start.isJSPContainer()) {
-						insertEndTag(start);
-						start.setEndStructuredDocumentRegion(flatNode);
-						return;
-					}
-				}
-			}
-			// invalid JSP tag
-			insertText(flatNode); // regard as invalid text
-			return;
-		}
-
-		ElementImpl element = null;
-		try {
-			element = (ElementImpl) this.document.createElement(tagName);
-		}
-		catch (DOMException ex) {
-		}
-		if (element == null) { // invalid tag
-			insertText(flatNode); // regard as invalid text
-			return;
-		}
-		if (attrNodes != null) {
-			Enumeration ae = attrNodes.elements();
-			while (ae.hasMoreElements()) {
-				Attr a = (Attr) ae.nextElement();
-				if (a == null)
-					continue;
-				element.appendAttributeNode(a);
-			}
-		}
-		element.setJSPTag(true);
-		element.setStartStructuredDocumentRegion(flatNode);
-		insertStartTag(element);
-	}
-
-	protected boolean isNestedTagClose(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	protected boolean isNestedTagOpen(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	protected String computeNestedTag(String regionType, String tagName, IStructuredDocumentRegion structuredDocumentRegion, ITextRegion region) {
-		return tagName;
-	}
-
-	/**
-	 * insertNode method
-	 * 
-	 * @param child
-	 *            org.w3c.dom.Node
-	 */
-	private void insertNode(Node node) {
-		if (node == null)
-			return;
-		if (this.context == null)
-			return;
-
-		Node parent = this.context.getParentNode();
-		if (parent == null)
-			return;
-		Node next = this.context.getNextNode();
-		while (parent.getNodeType() == Node.ELEMENT_NODE) {
-			ElementImpl element = (ElementImpl) parent;
-			if (canContain(element, node)) {
-				if (!element.hasStartTag() && next == element.getFirstChild()) {
-					// first child of implicit tag
-					// deletege to the parent
-					parent = element.getParentNode();
-					if (parent == null)
-						return;
-					next = element;
-					this.context.setNextNode(next);
-					continue;
-				}
-				break;
-			}
-			parent = element.getParentNode();
-			if (parent == null)
-				return;
-
-			// promote siblings
-			Node newNext = element.getNextSibling();
-			Node child = next;
-			while (child != null) {
-				Node nextChild = child.getNextSibling();
-				element.removeChild(child);
-				parent.insertBefore(child, newNext);
-				child = nextChild;
-			}
-
-			// leave the old end tag where it is
-			if (element.hasEndTag()) {
-				Element end = element.removeEndTag();
-				if (end != null) {
-					parent.insertBefore(end, newNext);
-					if (next == null)
-						next = end;
-				}
-			}
-			if (!element.hasStartTag()) {
-				// implicit element
-				if (!element.hasChildNodes()) {
-					parent.removeChild(element);
-				}
-			}
-
-			// update context
-			if (next == null)
-				next = newNext;
-			if (next != null)
-				this.context.setNextNode(next);
-			else
-				this.context.setParentNode(parent);
-		}
-
-		insertNode(parent, node, next);
-		next = node.getNextSibling();
-		if (next != null)
-			this.context.setNextNode(next);
-		else
-			this.context.setParentNode(node.getParentNode());
-	}
-
-	/**
-	 */
-	private void insertNode(Node parent, Node node, Node next) {
-		while (next != null && next.getNodeType() == Node.ELEMENT_NODE) {
-			ElementImpl nextElement = (ElementImpl) next;
-			if (nextElement.hasStartTag())
-				break;
-			if (!canBeImplicitTag(nextElement, node))
-				break;
-			parent = nextElement;
-			next = nextElement.getFirstChild();
-		}
-		Element implicitElement = createImplicitElement(parent, node);
-		if (implicitElement != null)
-			node = implicitElement;
-		parent.insertBefore(node, next);
-	}
-
-	/**
-	 * insertPI method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertPI(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		String target = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_PI_OPEN || regionType == XMLRegionContext.XML_PI_CLOSE)
-				continue;
-			if (target == null)
-				target = flatNode.getText(region);
-		}
-
-		ProcessingInstructionImpl pi = (ProcessingInstructionImpl) this.document.createProcessingInstruction(target, null);
-		if (pi == null)
-			return;
-		pi.setStructuredDocumentRegion(flatNode);
-		insertNode(pi);
-	}
-
-	/**
-	 * insertStartTag method can be used by subclasses, but not overridden.
-	 * 
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	protected void insertStartTag(Element element) {
-		if (element == null)
-			return;
-		if (this.context == null)
-			return;
-
-		insertNode(element);
-
-		ElementImpl newElement = (ElementImpl) element;
-		if (newElement.isEmptyTag() || !newElement.isContainer())
-			return;
-
-		// demote siblings
-		Node parent = this.context.getParentNode();
-		if (parent == null)
-			return; // error
-		Node next = this.context.getNextNode();
-		demoteNodes(element, element, parent, next);
-
-		// update context
-		Node firstChild = element.getFirstChild();
-		if (firstChild != null)
-			this.context.setNextNode(firstChild);
-		else
-			this.context.setParentNode(element);
-	}
-
-	/**
-	 * insertStartTag method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void insertStartTag(IStructuredDocumentRegion flatNode) {
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-
-		String tagName = null;
-		boolean isEmptyTag = false;
-		AttrImpl attr = null;
-		Vector attrNodes = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_TAG_NAME || isNestedTagName(regionType)) {
-				if (tagName == null)
-					tagName = flatNode.getText(region);
-			}
-			else if (regionType == XMLRegionContext.XML_EMPTY_TAG_CLOSE) {
-				isEmptyTag = true;
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				String name = flatNode.getText(region);
-				attr = (AttrImpl) this.document.createAttribute(name);
-				if (attr != null) {
-					attr.setNameRegion(region);
-					if (attrNodes == null)
-						attrNodes = new Vector();
-					attrNodes.addElement(attr);
-				}
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				if (attr != null) {
-					attr.setEqualRegion(region);
-				}
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				if (attr != null) {
-					attr.setValueRegion(region);
-					attr = null;
-				}
-			}
-		}
-
-		if (tagName == null) { // invalid start tag
-			insertText(flatNode); // regard as invalid text
-			return;
-		}
-
-		ElementImpl element = null;
-		try {
-			element = (ElementImpl) this.document.createElement(tagName);
-		}
-		catch (DOMException ex) {
-			// typically invalid name
-		}
-		if (element == null) { // invalid tag
-			insertText(flatNode); // regard as invalid text
-			return;
-		}
-		if (attrNodes != null) {
-			Enumeration ae = attrNodes.elements();
-			while (ae.hasMoreElements()) {
-				Attr a = (Attr) ae.nextElement();
-				if (a == null)
-					continue;
-				element.appendAttributeNode(a);
-			}
-		}
-		if (isEmptyTag)
-			element.setEmptyTag(true);
-		element.setStartStructuredDocumentRegion(flatNode);
-		insertStartTag(element);
-	}
-
-	/**
-	 * insertStructuredDocumentRegion method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	protected void insertStructuredDocumentRegion(IStructuredDocumentRegion flatNode) {
-		String regionType = StructuredDocumentRegionUtil.getFirstRegionType(flatNode);
-		if (regionType == XMLRegionContext.XML_TAG_OPEN) {
-			insertStartTag(flatNode);
-		}
-		else if (regionType == XMLRegionContext.XML_END_TAG_OPEN) {
-			insertEndTag(flatNode);
-		}
-		else if (regionType == XMLRegionContext.XML_COMMENT_OPEN || isNestedCommentOpen(regionType)) {
-			insertComment(flatNode);
-		}
-		else if (regionType == XMLRegionContext.XML_ENTITY_REFERENCE || regionType == XMLRegionContext.XML_CHAR_REFERENCE) {
-			insertEntityRef(flatNode);
-		}
-		else if (regionType == XMLRegionContext.XML_DECLARATION_OPEN) {
-			insertDecl(flatNode);
-		}
-		else if (regionType == XMLRegionContext.XML_PI_OPEN) {
-			insertPI(flatNode);
-		}
-		else if (regionType == XMLRegionContext.XML_CDATA_OPEN) {
-			insertCDATASection(flatNode);
-		}
-		else if (isNestedTag(regionType)) {
-			insertNestedTag(flatNode);
-		}
-		else {
-			insertText(flatNode);
-		}
-	}
-
-	protected boolean isNestedTag(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	protected boolean isNestedCommentText(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-
-	protected boolean isNestedCommentOpen(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	protected boolean isNestedTagName(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	protected boolean isNestedContent(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	/**
-	 * insertText method Can be called from subclasses, not to be overrided or
-	 * re-implemented.
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	protected void insertText(IStructuredDocumentRegion flatNode) {
-		TextImpl text = (TextImpl) this.context.findPreviousText();
-		if (text != null) { // existing text found
-			text.appendStructuredDocumentRegion(flatNode);
-			// notify the change
-			text.notifyValueChanged();
-			return;
-		}
-
-		// new text
-		text = (TextImpl) this.document.createTextNode(null);
-		if (text == null)
-			return;
-		text.setStructuredDocumentRegion(flatNode);
-		insertNode(text);
-	}
-
-	/**
-	 */
-	protected boolean isEndTag(XMLElement element) {
-		if (this.adapter != null) {
-			return this.adapter.isEndTag(element);
-		}
-		return element.isEndTag();
-	}
-
-	/**
-	 */
-	private void promoteNodes(Node root, Node newParent, Node newNext, Node oldParent, Node next) {
-		ElementImpl newElement = null;
-		if (newParent.getNodeType() == Node.ELEMENT_NODE) {
-			newElement = (ElementImpl) newParent;
-		}
-
-		Node rootParent = root.getParentNode();
-		while (oldParent != rootParent) {
-			while (next != null) {
-				boolean done = false;
-				boolean endTag = false;
-				if (next.getNodeType() == Node.ELEMENT_NODE) {
-					ElementImpl nextElement = (ElementImpl) next;
-					if (!nextElement.hasStartTag()) {
-						Node nextChild = nextElement.getFirstChild();
-						if (nextChild != null) {
-							// promote children
-							next = nextChild;
-							oldParent = nextElement;
-							continue;
-						}
-
-						if (nextElement.hasEndTag()) {
-							if (nextElement.matchEndTag(newElement)) {
-								endTag = true;
-							}
-						}
-						else {
-							// remove implicit element
-							next = nextElement.getNextSibling();
-							oldParent.removeChild(nextElement);
-							done = true;
-						}
-					}
-				}
-
-				if (!done) {
-					if (!endTag && newElement != null && !canContain(newElement, next)) {
-						newParent = newElement.getParentNode();
-						if (newParent == null)
-							return; // error
-						Node elementNext = newElement.getNextSibling();
-						// promote siblings
-						promoteNodes(newElement, newParent, elementNext, newElement, newNext);
-						newNext = newElement.getNextSibling();
-						if (newParent.getNodeType() == Node.ELEMENT_NODE) {
-							newElement = (ElementImpl) newParent;
-						}
-						else {
-							newElement = null;
-						}
-						continue;
-					}
-
-					Node child = next;
-					next = next.getNextSibling();
-					oldParent.removeChild(child);
-					insertNode(newParent, child, newNext);
-					Node childParent = child.getParentNode();
-					if (childParent != newParent) {
-						newParent = childParent;
-						newElement = (ElementImpl) newParent;
-						newNext = child.getNextSibling();
-					}
-				}
-			}
-
-			if (oldParent.getNodeType() != Node.ELEMENT_NODE)
-				return;
-			ElementImpl oldElement = (ElementImpl) oldParent;
-			oldParent = oldElement.getParentNode();
-			if (oldParent == null)
-				return; // error
-			next = oldElement.getNextSibling();
-
-			if (oldElement.hasEndTag()) {
-				Element end = null;
-				if (!oldElement.hasChildNodes() && !oldElement.hasStartTag()) {
-					oldParent.removeChild(oldElement);
-					end = oldElement;
-				}
-				else {
-					end = oldElement.removeEndTag();
-				}
-				if (end != null) {
-					insertNode(newParent, end, newNext);
-					Node endParent = end.getParentNode();
-					if (endParent != newParent) {
-						newParent = endParent;
-						newElement = (ElementImpl) newParent;
-						newNext = end.getNextSibling();
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * removeEndTag method
-	 * 
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	private void removeEndTag(Element element) {
-		if (element == null)
-			return;
-		if (this.context == null)
-			return;
-
-		Node parent = element.getParentNode();
-		if (parent == null)
-			return; // error
-
-		if (!((ElementImpl) element).isContainer()) {
-			// just update context
-			Node elementNext = element.getNextSibling();
-			if (elementNext != null)
-				this.context.setNextNode(elementNext);
-			else
-				this.context.setParentNode(parent);
-			return;
-		}
-
-		// demote siblings
-		Node next = element.getNextSibling();
-		ElementImpl newElement = (ElementImpl) element;
-		// find new parent
-		for (Node last = newElement.getLastChild(); last != null; last = last.getLastChild()) {
-			if (last.getNodeType() != Node.ELEMENT_NODE)
-				break;
-			ElementImpl lastElement = (ElementImpl) last;
-			if (lastElement.hasEndTag() || lastElement.isEmptyTag() || !lastElement.isContainer())
-				break;
-			newElement = lastElement;
-		}
-		Node lastChild = newElement.getLastChild();
-		demoteNodes(element, newElement, parent, next);
-
-		// update context
-		Node newNext = null;
-		if (lastChild != null)
-			newNext = lastChild.getNextSibling();
-		else
-			newNext = newElement.getFirstChild();
-		if (newNext != null)
-			this.context.setNextNode(newNext);
-		else
-			this.context.setParentNode(newElement);
-	}
-
-	/**
-	 * Remove the specified node if it is no longer required implicit tag with
-	 * remaining child nodes promoted.
-	 */
-	private Element removeImplicitElement(Node parent) {
-		if (parent == null)
-			return null;
-		if (parent.getNodeType() != Node.ELEMENT_NODE)
-			return null;
-		ElementImpl element = (ElementImpl) parent;
-		if (!element.isImplicitTag())
-			return null;
-		if (canBeImplicitTag(element))
-			return null;
-
-		Node elementParent = element.getParentNode();
-		if (elementParent == null)
-			return null; // error
-		Node firstChild = element.getFirstChild();
-		Node child = firstChild;
-		Node elementNext = element.getNextSibling();
-		while (child != null) {
-			Node nextChild = child.getNextSibling();
-			element.removeChild(child);
-			elementParent.insertBefore(child, elementNext);
-			child = nextChild;
-		}
-
-		// reset context
-		if (this.context.getParentNode() == element) {
-			Node oldNext = this.context.getNextNode();
-			if (oldNext != null) {
-				this.context.setNextNode(oldNext);
-			}
-			else {
-				if (elementNext != null) {
-					this.context.setNextNode(elementNext);
-				}
-				else {
-					this.context.setParentNode(elementParent);
-				}
-			}
-		}
-		else if (this.context.getNextNode() == element) {
-			if (firstChild != null) {
-				this.context.setNextNode(firstChild);
-			}
-			else {
-				if (elementNext != null) {
-					this.context.setNextNode(elementNext);
-				}
-				else {
-					this.context.setParentNode(elementParent);
-				}
-			}
-		}
-
-		removeNode(element);
-		return element;
-	}
-
-	/**
-	 * removeNode method
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	private void removeNode(Node node) {
-		if (node == null)
-			return;
-		if (this.context == null)
-			return;
-
-		Node parent = node.getParentNode();
-		if (parent == null)
-			return;
-		Node next = node.getNextSibling();
-		Node prev = node.getPreviousSibling();
-
-		// update context
-		Node oldParent = this.context.getParentNode();
-		if (node == oldParent) {
-			if (next != null)
-				this.context.setNextNode(next);
-			else
-				this.context.setParentNode(parent);
-		}
-		else {
-			Node oldNext = this.context.getNextNode();
-			if (node == oldNext) {
-				this.context.setNextNode(next);
-			}
-		}
-
-		parent.removeChild(node);
-
-		if (removeImplicitElement(parent) != null)
-			return;
-
-		// demote sibling
-		if (prev != null && prev.getNodeType() == Node.ELEMENT_NODE) {
-			ElementImpl newElement = (ElementImpl) prev;
-			if (!newElement.hasEndTag() && !newElement.isEmptyTag() && newElement.isContainer()) {
-				// find new parent
-				for (Node last = newElement.getLastChild(); last != null; last = last.getLastChild()) {
-					if (last.getNodeType() != Node.ELEMENT_NODE)
-						break;
-					ElementImpl lastElement = (ElementImpl) last;
-					if (lastElement.hasEndTag() || lastElement.isEmptyTag() || !lastElement.isContainer())
-						break;
-					newElement = lastElement;
-				}
-				Node lastChild = newElement.getLastChild();
-				demoteNodes(prev, newElement, parent, next);
-
-				// update context
-				Node newNext = null;
-				if (lastChild != null)
-					newNext = lastChild.getNextSibling();
-				else
-					newNext = newElement.getFirstChild();
-				if (newNext != null)
-					this.context.setNextNode(newNext);
-				else
-					this.context.setParentNode(newElement);
-			}
-		}
-	}
-
-	/**
-	 * removeStartTag method
-	 * 
-	 * @param element
-	 *            org.w3c.dom.Element
-	 */
-	private void removeStartTag(Element element) {
-		if (element == null)
-			return;
-		if (this.context == null)
-			return;
-
-		// for implicit tag
-		ElementImpl oldElement = (ElementImpl) element;
-		if (canBeImplicitTag(oldElement)) {
-			Node newParent = null;
-			Node prev = oldElement.getPreviousSibling();
-			if (prev != null && prev.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl prevElement = (ElementImpl) prev;
-				if (!prevElement.hasEndTag()) {
-					if (prevElement.hasStartTag() || prevElement.matchTagName(oldElement.getTagName())) {
-						newParent = prevElement;
-					}
-				}
-			}
-			if (newParent == null) {
-				// this element should stay as implicit tag
-				// just remove all attributes
-				oldElement.removeStartTag();
-
-				// update context
-				Node child = oldElement.getFirstChild();
-				if (child != null) {
-					this.context.setNextNode(child);
-				}
-				else if (oldElement.hasEndTag()) {
-					this.context.setParentNode(oldElement);
-				}
-				return;
-			}
-		}
-		// for comment tag
-		if (oldElement.isCommentTag())
-			oldElement.removeStartTag();
-
-		// promote children
-		Node elementParent = element.getParentNode();
-		Node parent = elementParent;
-		if (parent == null)
-			return;
-		Node first = element.getFirstChild();
-		Node firstElement = null; // for the case first is removed as end
-		// tag
-		if (first != null) {
-			// find new parent for children
-			ElementImpl newElement = null;
-			for (Node last = element.getPreviousSibling(); last != null; last = last.getLastChild()) {
-				if (last.getNodeType() != Node.ELEMENT_NODE)
-					break;
-				ElementImpl lastElement = (ElementImpl) last;
-				if (lastElement.hasEndTag() || lastElement.isEmptyTag() || !lastElement.isContainer())
-					break;
-				newElement = lastElement;
-			}
-			Node next = first;
-			if (newElement != null) {
-				while (next != null) {
-					if (!newElement.hasEndTag() && newElement.hasStartTag() && next.getNodeType() == Node.ELEMENT_NODE) {
-						ElementImpl nextElement = (ElementImpl) next;
-						if (!nextElement.hasStartTag() && nextElement.hasEndTag() && nextElement.matchEndTag(newElement)) {
-							// stop at the matched invalid end tag
-							Node elementChild = nextElement.getFirstChild();
-							while (elementChild != null) {
-								Node nextChild = elementChild.getNextSibling();
-								nextElement.removeChild(elementChild);
-								newElement.appendChild(elementChild);
-								elementChild = nextChild;
-							}
-
-							next = nextElement.getNextSibling();
-							element.removeChild(nextElement);
-							newElement.addEndTag(nextElement);
-							if (nextElement == first)
-								firstElement = newElement;
-
-							Node newParent = newElement.getParentNode();
-							if (newParent == parent)
-								break;
-							if (newParent == null || newParent.getNodeType() != Node.ELEMENT_NODE)
-								break; // error
-							newElement = (ElementImpl) newParent;
-							continue;
-						}
-					}
-					if (!canContain(newElement, next)) {
-						Node newParent = newElement.getParentNode();
-						if (newParent == parent)
-							break;
-						if (newParent == null || newParent.getNodeType() != Node.ELEMENT_NODE)
-							break; // error
-						newElement = (ElementImpl) newParent;
-						continue;
-					}
-					Node child = next;
-					next = next.getNextSibling();
-					element.removeChild(child);
-					newElement.appendChild(child);
-				}
-				newElement = null;
-			}
-			if (parent.getNodeType() == Node.ELEMENT_NODE) {
-				newElement = (ElementImpl) parent;
-			}
-			while (next != null) {
-				if (newElement == null || canContain(newElement, next)) {
-					Node child = next;
-					next = next.getNextSibling();
-					element.removeChild(child);
-					parent.insertBefore(child, element);
-					continue;
-				}
-
-				parent = newElement.getParentNode();
-				if (parent == null)
-					return;
-
-				// promote siblings
-				Node newNext = newElement.getNextSibling();
-				Node child = element;
-				while (child != null) {
-					Node nextChild = child.getNextSibling();
-					newElement.removeChild(child);
-					parent.insertBefore(child, newNext);
-					child = nextChild;
-				}
-
-				// leave the old end tag where it is
-				if (newElement.hasEndTag()) {
-					Element end = newElement.removeEndTag();
-					if (end != null) {
-						parent.insertBefore(end, newNext);
-					}
-				}
-				if (!newElement.hasStartTag()) {
-					// implicit element
-					if (!newElement.hasChildNodes()) {
-						parent.removeChild(newElement);
-					}
-				}
-
-				if (parent.getNodeType() == Node.ELEMENT_NODE) {
-					newElement = (ElementImpl) parent;
-				}
-				else {
-					newElement = null;
-				}
-			}
-		}
-
-		Node newNext = element;
-		Node startElement = null; // for the case element is removed as end
-		// tag
-		if (oldElement.hasEndTag()) {
-			// find new parent for invalid end tag and siblings
-			ElementImpl newElement = null;
-			for (Node last = element.getPreviousSibling(); last != null; last = last.getLastChild()) {
-				if (last.getNodeType() != Node.ELEMENT_NODE)
-					break;
-				ElementImpl lastElement = (ElementImpl) last;
-				if (lastElement.hasEndTag() || lastElement.isEmptyTag() || !lastElement.isContainer())
-					break;
-				newElement = lastElement;
-			}
-			if (newElement != null) {
-				// demote invalid end tag and sibling
-				Node next = element;
-				while (next != null) {
-					if (!newElement.hasEndTag() && newElement.hasStartTag() && next.getNodeType() == Node.ELEMENT_NODE) {
-						ElementImpl nextElement = (ElementImpl) next;
-						if (!nextElement.hasStartTag() && nextElement.hasEndTag() && nextElement.matchEndTag(newElement)) {
-							// stop at the matched invalid end tag
-							Node elementChild = nextElement.getFirstChild();
-							while (elementChild != null) {
-								Node nextChild = elementChild.getNextSibling();
-								nextElement.removeChild(elementChild);
-								newElement.appendChild(elementChild);
-								elementChild = nextChild;
-							}
-
-							next = nextElement.getNextSibling();
-							parent.removeChild(nextElement);
-							newElement.addEndTag(nextElement);
-							if (nextElement == newNext)
-								startElement = newElement;
-
-							Node newParent = newElement.getParentNode();
-							if (newParent == parent)
-								break;
-							if (newParent == null || newParent.getNodeType() != Node.ELEMENT_NODE)
-								break; // error
-							newElement = (ElementImpl) newParent;
-							continue;
-						}
-					}
-					if (!canContain(newElement, next)) {
-						Node newParent = newElement.getParentNode();
-						if (newParent == parent)
-							break;
-						if (newParent == null || newParent.getNodeType() != Node.ELEMENT_NODE)
-							break; // error
-						newElement = (ElementImpl) newParent;
-						continue;
-					}
-					Node child = next;
-					next = next.getNextSibling();
-					parent.removeChild(child);
-					if (child == oldElement) {
-						if (!oldElement.isCommentTag()) {
-							// clone (re-create) end tag
-							Element end = oldElement.removeEndTag();
-							if (end != null) {
-								child = end;
-								newNext = end;
-							}
-						}
-					}
-					newElement.appendChild(child);
-				}
-			}
-			else {
-				if (!oldElement.isCommentTag()) {
-					// clone (re-create) end tag
-					Element end = oldElement.removeEndTag();
-					if (end != null) {
-						parent.insertBefore(end, oldElement);
-						parent.removeChild(oldElement);
-						newNext = end;
-					}
-				}
-			}
-		}
-		else {
-			newNext = oldElement.getNextSibling();
-			parent.removeChild(oldElement);
-		}
-
-		// update context
-		Node oldParent = this.context.getParentNode();
-		Node oldNext = this.context.getNextNode();
-		if (element == oldParent) {
-			if (oldNext != null) {
-				this.context.setNextNode(oldNext); // reset for new parent
-			}
-			else if (newNext != null) {
-				this.context.setNextNode(newNext);
-			}
-			else {
-				this.context.setParentNode(parent);
-			}
-		}
-		else if (element == oldNext) {
-			if (firstElement != null) {
-				this.context.setParentNode(firstElement);
-			}
-			else if (first != null) {
-				this.context.setNextNode(first);
-			}
-			else if (startElement != null) {
-				this.context.setParentNode(startElement);
-			}
-			else {
-				this.context.setNextNode(newNext);
-			}
-		}
-
-		removeImplicitElement(elementParent);
-	}
-
-	/**
-	 * removeStructuredDocumentRegion method
-	 * 
-	 * @param oldStructuredDocumentRegion
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void removeStructuredDocumentRegion(IStructuredDocumentRegion oldStructuredDocumentRegion) {
-		NodeImpl next = (NodeImpl) this.context.getNextNode();
-		if (next != null) {
-			short nodeType = next.getNodeType();
-			if (nodeType != Node.ELEMENT_NODE) {
-				IStructuredDocumentRegion flatNode = next.getStructuredDocumentRegion();
-				if (flatNode == oldStructuredDocumentRegion) {
-					removeNode(next);
-					return;
-				}
-				if (nodeType != Node.TEXT_NODE) {
-					throw new StructuredDocumentRegionManagementException();
-				}
-				if (flatNode == null) {
-					// this is the case for empty Text
-					// remove and continue
-					removeNode(next);
-					removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-					return;
-				}
-				TextImpl text = (TextImpl) next;
-				boolean isShared = text.isSharingStructuredDocumentRegion(oldStructuredDocumentRegion);
-				if (isShared) {
-					// make sure there is next Text node sharing this
-					TextImpl nextText = (TextImpl) this.context.findNextText();
-					if (nextText == null || !nextText.hasStructuredDocumentRegion(oldStructuredDocumentRegion)) {
-						isShared = false;
-					}
-				}
-				oldStructuredDocumentRegion = text.removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-				if (oldStructuredDocumentRegion == null) {
-					throw new StructuredDocumentRegionManagementException();
-				}
-				if (text.getStructuredDocumentRegion() == null) {
-					// this is the case partial IStructuredDocumentRegion is
-					// removed
-					removeNode(text);
-				}
-				else {
-					// notify the change
-					text.notifyValueChanged();
-				}
-				// if shared, continue to remove IStructuredDocumentRegion
-				// from them
-				if (isShared)
-					removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-				return;
-			}
-
-			ElementImpl element = (ElementImpl) next;
-			if (element.hasStartTag()) {
-				IStructuredDocumentRegion flatNode = element.getStartStructuredDocumentRegion();
-				if (flatNode != oldStructuredDocumentRegion) {
-					throw new StructuredDocumentRegionManagementException();
-				}
-				if (element.hasEndTag() || element.hasChildNodes()) {
-					element.setStartStructuredDocumentRegion(null);
-					removeStartTag(element);
-				}
-				else {
-					removeNode(element);
-				}
-			}
-			else {
-				Node child = element.getFirstChild();
-				if (child != null) {
-					this.context.setNextNode(child);
-					removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-					return;
-				}
-
-				if (!element.hasEndTag()) {
-					// implicit element
-					removeNode(element);
-					removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-					return;
-				}
-
-				IStructuredDocumentRegion flatNode = element.getEndStructuredDocumentRegion();
-				if (flatNode != oldStructuredDocumentRegion) {
-					throw new StructuredDocumentRegionManagementException();
-				}
-				removeNode(element);
-			}
-			return;
-		}
-
-		Node parent = this.context.getParentNode();
-		if (parent == null || parent.getNodeType() != Node.ELEMENT_NODE) {
-			throw new StructuredDocumentRegionManagementException();
-		}
-
-		ElementImpl end = (ElementImpl) parent;
-		if (end.hasEndTag()) {
-			IStructuredDocumentRegion flatNode = end.getEndStructuredDocumentRegion();
-			if (flatNode != oldStructuredDocumentRegion) {
-				throw new StructuredDocumentRegionManagementException();
-			}
-			if (!end.hasStartTag() && !end.hasChildNodes()) {
-				this.context.setNextNode(end);
-				removeNode(end);
-			}
-			else {
-				end.setEndStructuredDocumentRegion(null);
-				removeEndTag(end);
-			}
-			return;
-		}
-
-		next = (NodeImpl) end.getNextSibling();
-		if (next != null) {
-			this.context.setNextNode(next);
-			removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-			return;
-		}
-
-		parent = (NodeImpl) end.getParentNode();
-		if (parent != null) {
-			this.context.setParentNode(parent);
-			removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-			return;
-		}
-	}
-
-	/**
-	 * replaceRegions method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 * @param newRegions
-	 *            java.util.Vector
-	 * @param oldRegions
-	 *            java.util.Vector
-	 */
-	void replaceRegions(IStructuredDocumentRegion flatNode, ITextRegionList newRegions, ITextRegionList oldRegions) {
-		if (flatNode == null)
-			return;
-		if (this.document == null)
-			return;
-		this.context = new XMLModelContext(this.document);
-
-		// optimize typical cases
-		String regionType = StructuredDocumentRegionUtil.getFirstRegionType(flatNode);
-		if (regionType == XMLRegionContext.XML_TAG_OPEN) {
-			changeStartTag(flatNode, newRegions, oldRegions);
-		}
-		else if (regionType == XMLRegionContext.XML_END_TAG_OPEN) {
-			changeEndTag(flatNode, newRegions, oldRegions);
-		}
-		else {
-			changeStructuredDocumentRegion(flatNode);
-		}
-	}
-
-	/**
-	 * replaceStructuredDocumentRegions method
-	 * 
-	 * @param newStructuredDocumentRegions
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegionList
-	 * @param oldStructuredDocumentRegions
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegionList
-	 */
-	void replaceStructuredDocumentRegions(IStructuredDocumentRegionList newStructuredDocumentRegions, IStructuredDocumentRegionList oldStructuredDocumentRegions) {
-		if (this.document == null)
-			return;
-		this.context = new XMLModelContext(this.document);
-
-		int newCount = (newStructuredDocumentRegions != null ? newStructuredDocumentRegions.getLength() : 0);
-		int oldCount = (oldStructuredDocumentRegions != null ? oldStructuredDocumentRegions.getLength() : 0);
-
-		if (oldCount > 0) {
-			setupContext(oldStructuredDocumentRegions.item(0));
-			// Node startParent = this.context.getParentNode();
-
-			Enumeration e = oldStructuredDocumentRegions.elements();
-			while (e.hasMoreElements()) {
-				IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) e.nextElement();
-				if (flatNode == null)
-					continue;
-				removeStructuredDocumentRegion(flatNode);
-			}
-		}
-		else {
-			if (newCount == 0)
-				return;
-			setupContext(newStructuredDocumentRegions.item(0));
-		}
-		// make sure the parent is set to deepest level
-		// when end tag has been removed
-		this.context.setLast();
-
-		if (newCount > 0) {
-			Enumeration e = newStructuredDocumentRegions.elements();
-			while (e.hasMoreElements()) {
-				IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) e.nextElement();
-				if (flatNode == null)
-					continue;
-				insertStructuredDocumentRegion(flatNode);
-			}
-		}
-
-		cleanupText();
-		cleanupEndTag();
-	}
-
-	/**
-	 * setupContext method
-	 * 
-	 * @param flatNode
-	 *            com.ibm.sed.structuredDocument.IStructuredDocumentRegion
-	 */
-	private void setupContext(IStructuredDocumentRegion startStructuredDocumentRegion) {
-		int offset = startStructuredDocumentRegion.getStart();
-		if (offset < 0)
-			return;
-		NodeImpl root = (NodeImpl) this.context.getRootNode();
-		if (root == null)
-			return;
-
-		if (offset == 0) {
-			// at the beggining of document
-			Node child = root.getFirstChild();
-			if (child != null)
-				this.context.setNextNode(child);
-			else
-				this.context.setParentNode(root);
-			return;
-		}
-
-		NodeImpl node = (NodeImpl) root.getNodeAt(offset);
-		if (node == null) {
-			// might be at the end of document
-			this.context.setParentNode(root);
-			this.context.setLast();
-			return;
-		}
-
-		if (offset == node.getStartOffset()) {
-			this.context.setNextNode(node);
-			return;
-		}
-
-		if (node.getNodeType() == Node.TEXT_NODE) {
-			TextImpl text = (TextImpl) node;
-			Text nextText = text.splitText(startStructuredDocumentRegion);
-			// notify the change
-			text.notifyValueChanged();
-			if (nextText == null)
-				return; // error
-			this.context.setNextNode(nextText);
-			return;
-		}
-
-		for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (offset >= ((NodeImpl) child).getEndOffset())
-				continue;
-			this.context.setNextNode(child);
-			return;
-		}
-		this.context.setParentNode(node);
-		this.context.setLast();
-	}
-
-	protected XMLModelContext getContext() {
-		return context;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelUpdater.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelUpdater.java
deleted file mode 100644
index 7a37516..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/document/XMLModelUpdater.java
+++ /dev/null
@@ -1,1701 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.document;
-
-
-
-import java.util.Enumeration;
-import java.util.Iterator;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegionList;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.document.JSPTag;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLGenerator;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-
-/**
- * XMLModelUpdater class
- */
-public class XMLModelUpdater {
-	private int diff = 0;
-	private int gapLength = 0;
-	private int gapOffset = 0;
-	private IStructuredDocumentRegion gapStructuredDocumentRegion = null;
-	private XMLGenerator generator = null;
-	private XMLModelImpl model = null;
-	private NodeImpl nextNode = null;
-	private NodeImpl parentNode = null;
-
-	protected XMLModelUpdater(XMLModelImpl model) {
-		super();
-
-		if (model != null) {
-			this.model = model;
-			this.generator = model.getGenerator();
-		}
-	}
-
-	/**
-	 * changeAttrValue method
-	 * 
-	 * @param attrNode
-	 *            org.w3c.dom.Attr
-	 */
-	private void changeAttrName(Attr attrNode) {
-		if (attrNode == null)
-			return;
-
-		AttrImpl attr = (AttrImpl) attrNode;
-		ElementImpl element = (ElementImpl) attr.getOwnerElement();
-		if (element == null)
-			return;
-
-		if (element.isCommentTag()) {
-			changeStartTag(element);
-			return;
-		}
-
-		int offset = element.getStartOffset();
-		int start = offset;
-		int end = offset;
-
-		String name = attr.getName();
-		if (name == null)
-			name = new String();
-		ITextRegion nameRegion = attr.getNameRegion();
-		if (nameRegion == null)
-			return; // error
-		start += nameRegion.getStart();
-		// use getTextEnd() because getEnd() may include the tailing spaces
-		end += nameRegion.getTextEnd();
-
-		replaceSource(name, start, end);
-	}
-
-	/**
-	 * changeAttrValue method
-	 * 
-	 * @param attrNode
-	 *            org.w3c.dom.Attr
-	 */
-	private void changeAttrValue(Attr attrNode) {
-		if (attrNode == null)
-			return;
-
-		AttrImpl attr = (AttrImpl) attrNode;
-		ElementImpl element = (ElementImpl) attr.getOwnerElement();
-		if (element == null)
-			return;
-
-		if (element.isCommentTag()) {
-			changeStartTag(element);
-			return;
-		}
-
-		int offset = element.getStartOffset();
-		int start = offset;
-		int end = offset;
-
-		String value = null;
-		ITextRegion valueRegion = attr.getValueRegion();
-		if (valueRegion != null) {
-			char quote = 0; // no quote preference
-			// DW: 4/16/2003 due to change in structuredDocument ... we need a
-			// flatnode to
-			// get at region values. For now I'll assume this is always the
-			// first
-			// flatnode .. may need to make smarter later (e.g. to search for
-			// the flatnode that this.valueRegion belongs to.
-			IStructuredDocumentRegion documentRegion = element.getFirstStructuredDocumentRegion();
-			String oldValue = documentRegion.getText(valueRegion);
-			if (oldValue != null && oldValue.length() > 0) {
-				char firstChar = oldValue.charAt(0);
-				if (firstChar == '"' || firstChar == '\'') {
-					quote = firstChar;
-				}
-			}
-
-			ITextRegion startRegion = valueRegion;
-
-			value = this.generator.generateAttrValue(attr, quote);
-			if (value == null) {
-				value = new String();
-				// remove equal too
-				ITextRegion equalRegion = attr.getEqualRegion();
-				if (equalRegion != null)
-					startRegion = equalRegion;
-			}
-			attr.setValueRegion(valueRegion); // reset value
-
-			start += startRegion.getStart();
-			// use getTextEnd() because getEnd() may include the tailing
-			// spaces
-			end += valueRegion.getTextEnd();
-		}
-		else {
-			ITextRegion equalRegion = attr.getEqualRegion();
-
-			value = this.generator.generateAttrValue(attr);
-			if (value == null) {
-				if (equalRegion == null)
-					return; // nothng to do
-				value = new String();
-				// remove equal
-				start += equalRegion.getStart();
-				end += equalRegion.getTextEnd();
-			}
-			else {
-				if (equalRegion != null) {
-					// use getTextEnd() because getEnd() may include the
-					// tailing spaces
-					start += equalRegion.getTextEnd();
-				}
-				else {
-					ITextRegion nameRegion = attr.getNameRegion();
-					if (nameRegion == null)
-						return; // must never happen
-					// use getTextEnd() because getEnd() may include the
-					// tailing spaces
-					start += nameRegion.getTextEnd();
-					value = '=' + value;
-				}
-				end = start;
-			}
-		}
-
-		replaceSource(value, start, end);
-	}
-
-	/**
-	 */
-	void changeEndTag(Element element) {
-		String source = this.generator.generateEndTag(element);
-		if (source == null)
-			return;
-		int length = source.length();
-		if (length == 0)
-			return;
-
-		ElementImpl impl = (ElementImpl) element;
-		int offset = impl.getEndStartOffset();
-		int start = offset;
-		int end = offset;
-		if (impl.hasEndTag()) {
-			end = impl.getEndOffset();
-			this.gapStructuredDocumentRegion = impl.getEndStructuredDocumentRegion();
-			impl.setEndStructuredDocumentRegion(new StructuredDocumentRegionProxy(offset, length));
-		}
-
-		replaceSource(source, start, end);
-	}
-
-	/**
-	 * changeName method
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	void changeName(Node node) {
-		if (node == null)
-			return;
-		if (getStructuredDocument() == null)
-			return;
-
-		// support changing name of attribute for setPrefix()
-		short nodeType = node.getNodeType();
-		if (nodeType == Node.ATTRIBUTE_NODE) {
-			changeAttrName((Attr) node);
-			return;
-		}
-
-		// not supported
-		return;
-	}
-
-	void changeRegion(IStructuredDocumentRegion flatNode, ITextRegion region) {
-		// future_TODO: optimize
-
-		NodeImpl root = (NodeImpl) this.model.getDocument();
-		this.parentNode = root;
-		this.nextNode = (NodeImpl) root.getFirstChild();
-
-		removeGapStructuredDocumentRegion(flatNode);
-		insertGapStructuredDocumentRegionBefore(flatNode.getStart());
-		changeStructuredDocumentRegion(flatNode);
-		insertGapStructuredDocumentRegionAfter(flatNode.getEnd());
-	}
-
-	/**
-	 * This is a fallback method to regenerate the start tag.
-	 */
-	void changeStartTag(Element element) {
-		if (element == null)
-			return;
-		ElementImpl impl = (ElementImpl) element;
-
-		if (!impl.hasStartTag() && !impl.hasEndTag()) {
-			// need to generate the start and the end tags
-			Node parent = element.getParentNode();
-			if (parent != null) {
-				replaceChild(parent, element, element);
-				return;
-			}
-			// else error
-		}
-
-		String source = this.generator.generateStartTag(element);
-		if (source == null)
-			return;
-		int length = source.length();
-		if (length == 0)
-			return;
-
-		int offset = impl.getStartOffset();
-		int start = offset;
-		int end = offset;
-		if (impl.hasStartTag()) {
-			end = impl.getStartEndOffset();
-			this.gapStructuredDocumentRegion = impl.getStartStructuredDocumentRegion();
-		}
-		impl.setStartStructuredDocumentRegion(new StructuredDocumentRegionProxy(offset, length));
-
-		replaceSource(source, start, end);
-	}
-
-	private void changeStructuredDocumentRegion(IStructuredDocumentRegion oldStructuredDocumentRegion) {
-		if (oldStructuredDocumentRegion == null)
-			return; // error
-		if (this.parentNode == null)
-			return; // error
-
-		int oldOffset = oldStructuredDocumentRegion.getStart();
-		int oldEnd = oldStructuredDocumentRegion.getEnd();
-		boolean isEndTag = false;
-
-		// find owner node
-		NodeImpl ownerNode = null;
-		while (this.parentNode != null) {
-			if (this.nextNode != null) {
-				IStructuredDocumentRegion nextStructuredDocumentRegion = this.nextNode.getStructuredDocumentRegion();
-				if (nextStructuredDocumentRegion != null) {
-					if (nextStructuredDocumentRegion == oldStructuredDocumentRegion) {
-						ownerNode = this.nextNode;
-						break;
-					}
-					int nextOffset = nextStructuredDocumentRegion.getStart();
-					if (nextOffset == oldOffset) { // found
-						ownerNode = this.nextNode;
-						break;
-					}
-					if (this.nextNode.getNodeType() == Node.TEXT_NODE) {
-						TextImpl text = (TextImpl) this.nextNode;
-						if (text.hasStructuredDocumentRegion(oldStructuredDocumentRegion)) {
-							ownerNode = this.nextNode;
-							break;
-						}
-						int nextEnd = nextStructuredDocumentRegion.getEnd();
-						if (nextOffset < oldEnd && nextEnd > oldOffset) {
-							ownerNode = this.nextNode;
-							break;
-						}
-					}
-				}
-
-				Node child = this.nextNode.getFirstChild();
-				if (child != null) {
-					this.parentNode = this.nextNode;
-					this.nextNode = (NodeImpl) child;
-					continue;
-				}
-
-				if (this.nextNode.getNodeType() == Node.ELEMENT_NODE) {
-					this.parentNode = this.nextNode;
-					this.nextNode = null;
-					continue;
-				}
-
-				this.nextNode = (NodeImpl) this.nextNode.getNextSibling();
-				if (this.nextNode != null)
-					continue;
-			}
-
-			if (this.parentNode.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl element = (ElementImpl) this.parentNode;
-				IStructuredDocumentRegion endStructuredDocumentRegion = element.getEndStructuredDocumentRegion();
-				if (endStructuredDocumentRegion != null) {
-					if (endStructuredDocumentRegion == oldStructuredDocumentRegion) {
-						ownerNode = this.parentNode;
-						isEndTag = true;
-						break;
-					}
-					int endOffset = endStructuredDocumentRegion.getStart();
-					if (endOffset == oldOffset) { // found
-						ownerNode = this.parentNode;
-						isEndTag = true;
-						break;
-					}
-				}
-			}
-
-			this.nextNode = (NodeImpl) this.parentNode.getNextSibling();
-			this.parentNode = (NodeImpl) this.parentNode.getParentNode();
-		}
-		if (ownerNode == null)
-			throw new StructuredDocumentRegionManagementException();
-
-		short nodeType = ownerNode.getNodeType();
-		if (nodeType == Node.ELEMENT_NODE) {
-			ElementImpl element = (ElementImpl) ownerNode;
-			if (isEndTag) {
-				element.setEndStructuredDocumentRegion(oldStructuredDocumentRegion);
-			}
-			else {
-				element.setStartStructuredDocumentRegion(oldStructuredDocumentRegion);
-				updateAttrRegions(element, oldStructuredDocumentRegion);
-			}
-		}
-		else if (nodeType == Node.TEXT_NODE) {
-			TextImpl text = (TextImpl) ownerNode;
-
-			IStructuredDocumentRegion flatNode = text.getStructuredDocumentRegion();
-			if (flatNode == oldStructuredDocumentRegion) {
-				int newOffset = oldOffset;
-				int newEnd = oldEnd;
-				if (oldOffset == this.gapOffset) {
-					newOffset += this.diff;
-				}
-				else {
-					newEnd = this.gapOffset;
-				}
-				int newLength = newEnd - newOffset;
-				IStructuredDocumentRegion newStructuredDocumentRegion = new StructuredDocumentRegionProxy(newOffset, newLength, oldStructuredDocumentRegion);
-				text.setStructuredDocumentRegion(newStructuredDocumentRegion);
-
-				if (oldEnd > newEnd) {
-					this.nextNode = (NodeImpl) text.getNextSibling();
-					changeStructuredDocumentRegion(oldStructuredDocumentRegion);
-				}
-				return;
-			}
-
-			if (flatNode instanceof StructuredDocumentRegionProxy) {
-				StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) flatNode;
-				int offset = proxy.getOffset();
-				int end = offset + proxy.getLength();
-				if (proxy.getStructuredDocumentRegion() == null) {
-					if (offset == oldOffset && end == oldEnd) {
-						text.setStructuredDocumentRegion(oldStructuredDocumentRegion);
-					}
-					else {
-						if (end > oldEnd) {
-							StructuredDocumentRegionContainer container = new StructuredDocumentRegionContainer();
-							container.appendStructuredDocumentRegion(oldStructuredDocumentRegion);
-							proxy.setOffset(oldEnd);
-							proxy.setLength(end - oldEnd);
-							container.appendStructuredDocumentRegion(proxy);
-							text.setStructuredDocumentRegion(container);
-						}
-						else {
-							proxy.setStructuredDocumentRegion(oldStructuredDocumentRegion);
-
-							if (end < oldEnd) { // to be shared
-								this.nextNode = (NodeImpl) text.getNextSibling();
-								changeStructuredDocumentRegion(oldStructuredDocumentRegion);
-							}
-						}
-					}
-					return;
-				}
-
-				if (offset >= this.gapOffset) {
-					proxy.setOffset(offset + this.diff);
-					end += this.diff;
-				}
-				if (end < oldEnd) { // to be shared
-					this.nextNode = (NodeImpl) text.getNextSibling();
-					changeStructuredDocumentRegion(oldStructuredDocumentRegion);
-					return;
-				}
-			}
-			else if (flatNode instanceof StructuredDocumentRegionContainer) {
-				StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-				int count = container.getStructuredDocumentRegionCount();
-				for (int i = 0; i < count; i++) {
-					IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-					if (content == null)
-						continue; // error
-					if (content == oldStructuredDocumentRegion) {
-						int newOffset = oldOffset;
-						int newEnd = oldEnd;
-						if (oldOffset == this.gapOffset) {
-							newOffset += this.diff;
-						}
-						else {
-							newEnd = this.gapOffset;
-						}
-						int newLength = newEnd - newOffset;
-						IStructuredDocumentRegion newStructuredDocumentRegion = new StructuredDocumentRegionProxy(newOffset, newLength, oldStructuredDocumentRegion);
-						container.replaceStructuredDocumentRegion(newStructuredDocumentRegion, i);
-
-						if (oldEnd > newEnd) { // to be shared
-							this.nextNode = (NodeImpl) text.getNextSibling();
-							changeStructuredDocumentRegion(oldStructuredDocumentRegion);
-						}
-						return;
-					}
-
-					if (content instanceof StructuredDocumentRegionProxy) {
-						StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-						int offset = proxy.getOffset();
-						int end = offset + proxy.getLength();
-						if (end <= oldOffset)
-							continue;
-						if (proxy.getStructuredDocumentRegion() == null) {
-							if (offset == oldOffset && end == oldEnd) {
-								container.replaceStructuredDocumentRegion(oldStructuredDocumentRegion, i);
-							}
-							else {
-								if (end > oldEnd) {
-									container.insertStructuredDocumentRegion(oldStructuredDocumentRegion, i);
-									proxy.setOffset(oldEnd);
-									proxy.setLength(end - oldEnd);
-								}
-								else {
-									proxy.setStructuredDocumentRegion(oldStructuredDocumentRegion);
-
-									if (end < oldEnd) { // to be shared
-										this.nextNode = (NodeImpl) text.getNextSibling();
-										changeStructuredDocumentRegion(oldStructuredDocumentRegion);
-									}
-								}
-							}
-							return;
-						}
-
-						if (offset >= this.gapOffset) {
-							proxy.setOffset(offset + this.diff);
-							end += this.diff;
-						}
-						if (end < oldEnd) { // to be shared
-							this.nextNode = (NodeImpl) text.getNextSibling();
-							changeStructuredDocumentRegion(oldStructuredDocumentRegion);
-							return;
-						}
-					}
-				}
-			}
-			else {
-				throw new StructuredDocumentRegionManagementException();
-			}
-		}
-		else {
-			ownerNode.setStructuredDocumentRegion(oldStructuredDocumentRegion);
-		}
-	}
-
-	/**
-	 */
-	private void changeTextData(Text text) {
-		if (text == null)
-			return;
-
-		String source = this.generator.generateSource(text);
-		if (source == null)
-			source = new String();
-		int length = source.length();
-
-		TextImpl impl = (TextImpl) text;
-		int start = impl.getStartOffset();
-		int end = impl.getEndOffset();
-		int offset = start;
-
-		// make sure previous tag is closed
-		Node prev = text.getPreviousSibling();
-		if (prev != null) {
-			String preTag = getCloseTag((XMLNode) prev);
-			if (preTag != null && preTag.length() > 0) {
-				offset += preTag.length();
-				source = preTag + source;
-			}
-		}
-		else {
-			Node parent = text.getParentNode();
-			if (parent != null && parent.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl element = (ElementImpl) parent;
-				String preTag = getStartCloseTag(element);
-				if (preTag != null && preTag.length() > 0) {
-					offset += preTag.length();
-					StringBuffer buffer = new StringBuffer();
-					buffer.append(preTag);
-					buffer.append(source);
-					if (text.getNextSibling() == null && !element.hasEndTag() && (element.isJSPContainer() || element.isCDATAContainer())) {
-						// need to generate the end tag
-						String postTag = this.generator.generateEndTag(element);
-						if (postTag != null) {
-							int postLength = postTag.length();
-							if (postLength > 0) {
-								buffer.append(postTag);
-								int postOffset = offset + length;
-								IStructuredDocumentRegion flatNode = new StructuredDocumentRegionProxy(postOffset, postLength);
-								element.setEndStructuredDocumentRegion(flatNode);
-							}
-						}
-					}
-					source = buffer.toString();
-				}
-			}
-		}
-
-		this.gapStructuredDocumentRegion = impl.getStructuredDocumentRegion();
-		IStructuredDocumentRegion newStructuredDocumentRegion = null;
-		if (length > 0)
-			newStructuredDocumentRegion = new StructuredDocumentRegionProxy(offset, length);
-		impl.setStructuredDocumentRegion(newStructuredDocumentRegion);
-
-		replaceSource(source, start, end);
-	}
-
-	/**
-	 * changeValue method
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 */
-	void changeValue(Node node) {
-		if (node == null)
-			return;
-		if (getStructuredDocument() == null)
-			return;
-
-		short nodeType = node.getNodeType();
-		if (nodeType == Node.TEXT_NODE) {
-			changeTextData((Text) node);
-			return;
-		}
-		if (nodeType == Node.ATTRIBUTE_NODE) {
-			changeAttrValue((Attr) node);
-			return;
-		}
-		if (nodeType == Node.ELEMENT_NODE) {
-			changeStartTag((Element) node);
-			return;
-		}
-
-		String source = this.generator.generateSource(node);
-		if (source == null)
-			source = new String();
-		int length = source.length();
-
-		NodeImpl impl = (NodeImpl) node;
-		int start = impl.getStartOffset();
-		int end = impl.getEndOffset();
-
-		this.gapStructuredDocumentRegion = impl.getStructuredDocumentRegion();
-		IStructuredDocumentRegion flatNode = null;
-		if (length > 0)
-			flatNode = new StructuredDocumentRegionProxy(start, length);
-		impl.setStructuredDocumentRegion(flatNode);
-
-		replaceSource(source, start, end);
-	}
-
-	/**
-	 */
-	private String getAttrValueClose(XMLElement element) {
-		if (element == null)
-			return null;
-
-		IStructuredDocumentRegion flatNode = element.getStartStructuredDocumentRegion();
-		if (flatNode == null)
-			return null;
-		ITextRegion region = StructuredDocumentRegionUtil.getLastRegion(flatNode);
-		if (region == null || region.getType() != XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-			return null;
-		String value = flatNode.getText(region);
-		if (value == null)
-			return null;
-		int length = value.length();
-		if (length == 0)
-			return null;
-
-		// check open JSP tag
-		boolean closeJSPTag = false;
-		int offset = value.indexOf(JSPTag.TAG_OPEN);
-		while (offset >= 0) {
-			offset = value.indexOf(JSPTag.TAG_CLOSE, offset + 2);
-			if (offset < 0) {
-				closeJSPTag = true;
-				break;
-			}
-			offset = value.indexOf(JSPTag.TAG_OPEN, offset + 2);
-		}
-
-		// check quote
-		boolean closeQuote = false;
-		char firstChar = value.charAt(0);
-		if (firstChar == '"' || firstChar == '\'') {
-			if (closeJSPTag || length == 1 || value.charAt(length - 1) != firstChar) {
-				closeQuote = true;
-			}
-		}
-
-		if (!closeJSPTag && !closeQuote)
-			return null;
-
-		StringBuffer buffer = new StringBuffer();
-		if (closeJSPTag)
-			buffer.append(JSPTag.TAG_CLOSE);
-		if (closeQuote)
-			buffer.append(firstChar);
-		return buffer.toString();
-	}
-
-	/**
-	 * Gather close tags recursively.
-	 */
-	private String getCloseTag(XMLNode node) {
-		if (node == null || node.isClosed())
-			return null;
-
-		if (node.getNodeType() != Node.ELEMENT_NODE) {
-			return this.generator.generateCloseTag(node);
-		}
-
-		ElementImpl element = (ElementImpl) node;
-		if (element.hasEndTag()) {
-			// end tag is not closed
-			return this.generator.generateCloseTag(element);
-		}
-
-		// no end tag
-		int offset = element.getEndOffset();
-		StringBuffer buffer = new StringBuffer();
-
-		XMLNode lastChild = (XMLNode) element.getLastChild();
-		if (lastChild == null) {
-			if (!element.isStartTagClosed()) {
-				if (element.preferEmptyTag())
-					element.setEmptyTag(true);
-				String closeTag = getStartCloseTag(element);
-				if (closeTag != null) {
-					int length = closeTag.length();
-					if (length > 0) {
-						buffer.append(closeTag);
-						offset += length;
-					}
-				}
-			}
-		}
-		else {
-			String closeTag = getCloseTag(lastChild);
-			if (closeTag != null) {
-				int length = closeTag.length();
-				if (length > 0) {
-					buffer.append(closeTag);
-					offset += length;
-				}
-			}
-		}
-
-		String endTag = this.generator.generateEndTag(element);
-		if (endTag != null) {
-			int length = endTag.length();
-			if (length > 0) {
-				buffer.append(endTag);
-				IStructuredDocumentRegion flatNode = new StructuredDocumentRegionProxy(offset, length);
-				element.setEndStructuredDocumentRegion(flatNode);
-			}
-		}
-
-		return buffer.toString();
-	}
-
-	/**
-	 */
-	private String getStartCloseTag(XMLElement element) {
-		if (element == null || element.isStartTagClosed())
-			return null;
-
-		StringBuffer buffer = new StringBuffer();
-		String attrValueClose = getAttrValueClose(element);
-		if (attrValueClose != null)
-			buffer.append(attrValueClose);
-		String closeTag = this.generator.generateCloseTag(element);
-		if (closeTag != null)
-			buffer.append(closeTag);
-		return buffer.toString();
-	}
-
-	private IStructuredDocument getStructuredDocument() {
-		if (model == null)
-			return null;
-		return model.getStructuredDocument();
-	}
-
-	/**
-	 */
-	void initialize() {
-		this.gapStructuredDocumentRegion = null;
-		this.gapOffset = 0;
-		this.gapLength = 0;
-		this.diff = 0;
-		this.parentNode = null;
-		this.nextNode = null;
-	}
-
-	private void insertGapStructuredDocumentRegionAfter(int endOffset) {
-		if (this.gapStructuredDocumentRegion == null)
-			return;
-
-		if (this.gapStructuredDocumentRegion instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) this.gapStructuredDocumentRegion;
-			IStructuredDocumentRegion flatNode = proxy.getStructuredDocumentRegion();
-			if (flatNode != null)
-				insertStructuredDocumentRegion(flatNode);
-		}
-		else if (this.gapStructuredDocumentRegion instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) this.gapStructuredDocumentRegion;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (content == null)
-					continue;
-				if (content.getStart() < endOffset)
-					continue;
-				if (content instanceof StructuredDocumentRegionProxy) {
-					StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-					IStructuredDocumentRegion flatNode = proxy.getStructuredDocumentRegion();
-					if (flatNode != null)
-						insertStructuredDocumentRegion(flatNode);
-				}
-				else {
-					insertStructuredDocumentRegion(content);
-				}
-			}
-		}
-		else {
-			insertStructuredDocumentRegion(this.gapStructuredDocumentRegion);
-		}
-	}
-
-	private void insertGapStructuredDocumentRegionBefore(int startOffset) {
-		if (this.gapStructuredDocumentRegion == null)
-			return;
-
-		if (this.gapStructuredDocumentRegion instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) this.gapStructuredDocumentRegion;
-			IStructuredDocumentRegion flatNode = proxy.getStructuredDocumentRegion();
-			if (flatNode != null)
-				insertStructuredDocumentRegion(flatNode);
-		}
-		else if (this.gapStructuredDocumentRegion instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) this.gapStructuredDocumentRegion;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (content == null)
-					continue;
-				if (content.getStart() >= startOffset)
-					return;
-				if (content instanceof StructuredDocumentRegionProxy) {
-					StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-					IStructuredDocumentRegion flatNode = proxy.getStructuredDocumentRegion();
-					if (flatNode != null)
-						insertStructuredDocumentRegion(flatNode);
-				}
-				else {
-					insertStructuredDocumentRegion(content);
-				}
-			}
-		}
-		else {
-			insertStructuredDocumentRegion(this.gapStructuredDocumentRegion);
-		}
-	}
-
-	/**
-	 */
-	private void insertStructuredDocumentRegion(IStructuredDocumentRegion newStructuredDocumentRegion) {
-		if (newStructuredDocumentRegion == null)
-			return; // error
-		if (this.parentNode == null)
-			return; // error
-
-		int newOffset = newStructuredDocumentRegion.getStart();
-		int newEnd = newStructuredDocumentRegion.getEnd();
-		boolean isEndTag = false;
-
-		// find owner node
-		NodeImpl ownerNode = null;
-		while (this.parentNode != null) {
-			if (this.nextNode != null) {
-				IStructuredDocumentRegion nextStructuredDocumentRegion = this.nextNode.getStructuredDocumentRegion();
-				if (nextStructuredDocumentRegion != null) {
-					int nextOffset = nextStructuredDocumentRegion.getStart();
-					if (nextOffset == newOffset) { // found
-						ownerNode = this.nextNode;
-						break;
-					}
-					if (this.nextNode.getNodeType() == Node.TEXT_NODE) {
-						int nextEnd = nextStructuredDocumentRegion.getEnd();
-						if (nextOffset < newEnd && nextEnd > newOffset) {
-							ownerNode = this.nextNode;
-							break;
-						}
-					}
-				}
-
-				Node child = this.nextNode.getFirstChild();
-				if (child != null) {
-					this.parentNode = this.nextNode;
-					this.nextNode = (NodeImpl) child;
-					continue;
-				}
-
-				if (this.nextNode.getNodeType() == Node.ELEMENT_NODE) {
-					this.parentNode = this.nextNode;
-					this.nextNode = null;
-					continue;
-				}
-
-				this.nextNode = (NodeImpl) this.nextNode.getNextSibling();
-				if (this.nextNode != null)
-					continue;
-			}
-
-			if (this.parentNode.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl element = (ElementImpl) this.parentNode;
-				IStructuredDocumentRegion endStructuredDocumentRegion = element.getEndStructuredDocumentRegion();
-				if (endStructuredDocumentRegion != null) {
-					int endOffset = endStructuredDocumentRegion.getStart();
-					if (endOffset == newOffset) { // found
-						ownerNode = this.parentNode;
-						isEndTag = true;
-						break;
-					}
-				}
-			}
-
-			this.nextNode = (NodeImpl) this.parentNode.getNextSibling();
-			this.parentNode = (NodeImpl) this.parentNode.getParentNode();
-		}
-		if (ownerNode == null)
-			throw new StructuredDocumentRegionManagementException();
-
-		short nodeType = ownerNode.getNodeType();
-		if (nodeType == Node.ELEMENT_NODE) {
-			ElementImpl element = (ElementImpl) ownerNode;
-			if (isEndTag) {
-				element.setEndStructuredDocumentRegion(newStructuredDocumentRegion);
-			}
-			else {
-				element.setStartStructuredDocumentRegion(newStructuredDocumentRegion);
-				updateAttrRegions(element, newStructuredDocumentRegion);
-			}
-		}
-		else if (nodeType == Node.TEXT_NODE) {
-			TextImpl text = (TextImpl) ownerNode;
-			IStructuredDocumentRegion oldStructuredDocumentRegion = text.getStructuredDocumentRegion();
-			if (oldStructuredDocumentRegion == null) {
-				throw new StructuredDocumentRegionManagementException();
-			}
-			int oldOffset = oldStructuredDocumentRegion.getStart();
-			int oldEnd = oldStructuredDocumentRegion.getEnd();
-			if (oldOffset == newOffset && oldEnd == newEnd) {
-				text.setStructuredDocumentRegion(newStructuredDocumentRegion);
-				return;
-			}
-
-			if (oldStructuredDocumentRegion instanceof StructuredDocumentRegionProxy) {
-				StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) oldStructuredDocumentRegion;
-				if (oldEnd > newEnd) {
-					StructuredDocumentRegionContainer container = new StructuredDocumentRegionContainer();
-					if (oldOffset == newOffset) {
-						container.appendStructuredDocumentRegion(newStructuredDocumentRegion);
-					}
-					else {
-						StructuredDocumentRegionProxy newProxy = new StructuredDocumentRegionProxy();
-						newProxy.setOffset(oldOffset);
-						newProxy.setLength(newEnd - oldOffset);
-						newProxy.setStructuredDocumentRegion(newStructuredDocumentRegion);
-						container.appendStructuredDocumentRegion(newProxy);
-					}
-					proxy.setOffset(newEnd);
-					proxy.setLength(oldEnd - newEnd);
-					container.appendStructuredDocumentRegion(proxy);
-					text.setStructuredDocumentRegion(container);
-				}
-				else {
-					proxy.setStructuredDocumentRegion(newStructuredDocumentRegion);
-
-					if (oldEnd < newEnd) { // to be shared
-						this.nextNode = (NodeImpl) text.getNextSibling();
-						insertStructuredDocumentRegion(newStructuredDocumentRegion);
-					}
-				}
-				return;
-			}
-
-			if (oldStructuredDocumentRegion instanceof StructuredDocumentRegionContainer) {
-				StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) oldStructuredDocumentRegion;
-				int count = container.getStructuredDocumentRegionCount();
-				for (int i = 0; i < count; i++) {
-					IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-					if (content == null)
-						continue; // error
-					int offset = content.getStart();
-					int end = content.getEnd();
-					if (end <= newOffset)
-						continue;
-					if (offset == newOffset && end == newEnd) {
-						container.replaceStructuredDocumentRegion(newStructuredDocumentRegion, i);
-						return;
-					}
-
-					if (content instanceof StructuredDocumentRegionProxy) {
-						StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-						if (end > newEnd) {
-							if (offset == newOffset) {
-								container.insertStructuredDocumentRegion(newStructuredDocumentRegion, i);
-							}
-							else {
-								StructuredDocumentRegionProxy newProxy = new StructuredDocumentRegionProxy();
-								newProxy.setOffset(offset);
-								newProxy.setLength(newEnd - offset);
-								newProxy.setStructuredDocumentRegion(newStructuredDocumentRegion);
-								container.insertStructuredDocumentRegion(newProxy, i);
-							}
-							proxy.setOffset(newEnd);
-							proxy.setLength(end - newEnd);
-							return;
-						}
-						else {
-							proxy.setStructuredDocumentRegion(newStructuredDocumentRegion);
-							if (end == newEnd)
-								return;
-						}
-					}
-				}
-
-				if (oldEnd < newEnd) { // to be shared
-					this.nextNode = (NodeImpl) text.getNextSibling();
-					insertStructuredDocumentRegion(newStructuredDocumentRegion);
-				}
-				return;
-			}
-			else {
-				throw new StructuredDocumentRegionManagementException();
-			}
-		}
-		else {
-			ownerNode.setStructuredDocumentRegion(newStructuredDocumentRegion);
-		}
-	}
-
-	private void removeGapStructuredDocumentRegion(IStructuredDocumentRegion oldStructuredDocumentRegion) {
-		if (this.gapStructuredDocumentRegion == null)
-			return;
-
-		if (this.gapStructuredDocumentRegion == oldStructuredDocumentRegion) {
-			this.gapStructuredDocumentRegion = null;
-			return;
-		}
-
-		if (this.gapStructuredDocumentRegion instanceof StructuredDocumentRegionProxy) {
-			StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) this.gapStructuredDocumentRegion;
-			IStructuredDocumentRegion flatNode = proxy.getStructuredDocumentRegion();
-			if (flatNode == oldStructuredDocumentRegion)
-				this.gapStructuredDocumentRegion = null;
-		}
-		else if (this.gapStructuredDocumentRegion instanceof StructuredDocumentRegionContainer) {
-			StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) this.gapStructuredDocumentRegion;
-			int count = container.getStructuredDocumentRegionCount();
-			for (int i = 0; i < count; i++) {
-				IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-				if (content == null)
-					continue;
-				if (content == oldStructuredDocumentRegion) {
-					if (count > 1)
-						container.removeStructuredDocumentRegion(i);
-					else
-						this.gapStructuredDocumentRegion = null;
-					return;
-				}
-				if (content instanceof StructuredDocumentRegionProxy) {
-					StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-					if (proxy.getStructuredDocumentRegion() == oldStructuredDocumentRegion) {
-						if (count > 1)
-							container.removeStructuredDocumentRegion(i);
-						else
-							this.gapStructuredDocumentRegion = null;
-						return;
-					}
-				}
-			}
-		}
-	}
-
-	private void removeStructuredDocumentRegion(IStructuredDocumentRegion oldStructuredDocumentRegion) {
-		if (oldStructuredDocumentRegion == null)
-			return; // error
-		if (this.parentNode == null)
-			return; // error
-
-		int gapEnd = this.gapOffset + this.gapLength;
-		int oldOffset = oldStructuredDocumentRegion.getStart();
-		int oldEnd = oldStructuredDocumentRegion.getEnd();
-		if (oldOffset >= this.gapOffset && oldEnd <= gapEnd)
-			return; // do nothing
-		int oldLength = oldEnd - oldOffset;
-		if (oldOffset >= gapEnd)
-			oldOffset += this.diff;
-
-		// find owner node
-		NodeImpl ownerNode = null;
-		ElementImpl ownerEndTag = null;
-		TextImpl ownerText = null;
-		while (this.parentNode != null) {
-			if (this.nextNode != null) {
-				if (this.nextNode.getStructuredDocumentRegion() == oldStructuredDocumentRegion) {
-					ownerNode = this.nextNode;
-					break;
-				}
-				if (this.nextNode.getNodeType() == Node.TEXT_NODE) {
-					TextImpl text = (TextImpl) this.nextNode;
-					if (text.hasStructuredDocumentRegion(oldStructuredDocumentRegion)) {
-						ownerNode = this.nextNode;
-						ownerText = text;
-						break;
-					}
-				}
-
-				Node child = this.nextNode.getFirstChild();
-				if (child != null) {
-					this.parentNode = this.nextNode;
-					this.nextNode = (NodeImpl) child;
-					continue;
-				}
-
-				if (this.nextNode.getNodeType() == Node.ELEMENT_NODE) {
-					this.parentNode = this.nextNode;
-					this.nextNode = null;
-					continue;
-				}
-
-				this.nextNode = (NodeImpl) this.nextNode.getNextSibling();
-				if (this.nextNode != null)
-					continue;
-			}
-
-			if (this.parentNode.getNodeType() == Node.ELEMENT_NODE) {
-				ElementImpl element = (ElementImpl) this.parentNode;
-				if (element.getEndStructuredDocumentRegion() == oldStructuredDocumentRegion) {
-					ownerNode = this.parentNode;
-					ownerEndTag = element;
-					break;
-				}
-			}
-
-			this.nextNode = (NodeImpl) this.parentNode.getNextSibling();
-			this.parentNode = (NodeImpl) this.parentNode.getParentNode();
-		}
-		if (ownerNode == null)
-			throw new StructuredDocumentRegionManagementException();
-
-		if (ownerText != null) {
-			IStructuredDocumentRegion flatNode = ownerText.getStructuredDocumentRegion();
-			if (flatNode == oldStructuredDocumentRegion) {
-				IStructuredDocumentRegion newStructuredDocumentRegion = new StructuredDocumentRegionProxy(oldOffset, oldLength);
-				ownerText.setStructuredDocumentRegion(newStructuredDocumentRegion);
-				return;
-			}
-
-			if (flatNode instanceof StructuredDocumentRegionProxy) {
-				StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) flatNode;
-				if (proxy.getStructuredDocumentRegion() != oldStructuredDocumentRegion) {
-					throw new StructuredDocumentRegionManagementException();
-				}
-				int offset = proxy.getOffset();
-				int end = offset + proxy.getLength();
-				if (offset >= this.gapOffset) {
-					proxy.setOffset(offset + this.diff);
-				}
-				proxy.setStructuredDocumentRegion(null);
-				if (end < oldEnd && (end < this.gapOffset || oldEnd > gapEnd)) { // has
-					// shared
-					removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-					return;
-				}
-			}
-			else if (flatNode instanceof StructuredDocumentRegionContainer) {
-				StructuredDocumentRegionContainer container = (StructuredDocumentRegionContainer) flatNode;
-				int count = container.getStructuredDocumentRegionCount();
-				for (int i = 0; i < count; i++) {
-					IStructuredDocumentRegion content = container.getStructuredDocumentRegion(i);
-					if (content == null)
-						continue; // error
-					if (content == oldStructuredDocumentRegion) {
-						IStructuredDocumentRegion newStructuredDocumentRegion = new StructuredDocumentRegionProxy(oldOffset, oldLength);
-						container.replaceStructuredDocumentRegion(newStructuredDocumentRegion, i);
-						return;
-					}
-
-					if (content instanceof StructuredDocumentRegionProxy) {
-						StructuredDocumentRegionProxy proxy = (StructuredDocumentRegionProxy) content;
-						if (proxy.getStructuredDocumentRegion() == oldStructuredDocumentRegion) {
-							int offset = proxy.getOffset();
-							int end = offset + proxy.getLength();
-							if (offset >= this.gapOffset) {
-								proxy.setOffset(offset + this.diff);
-							}
-							proxy.setStructuredDocumentRegion(null);
-							if (end < oldEnd && (end < this.gapOffset || oldEnd > gapEnd)) { // has
-								// shared
-								removeStructuredDocumentRegion(oldStructuredDocumentRegion);
-								return;
-							}
-						}
-					}
-				}
-			}
-			else {
-				throw new StructuredDocumentRegionManagementException();
-			}
-		}
-		else {
-			IStructuredDocumentRegion newStructuredDocumentRegion = new StructuredDocumentRegionProxy(oldOffset, oldLength);
-			if (ownerEndTag != null) {
-				ownerEndTag.setEndStructuredDocumentRegion(newStructuredDocumentRegion);
-			}
-			else {
-				ownerNode.setStructuredDocumentRegion(newStructuredDocumentRegion);
-			}
-		}
-	}
-
-	/**
-	 * replaceAttr method
-	 * 
-	 * @param ownerElement
-	 *            org.w3c.dom.Element
-	 * @param newAttr
-	 *            org.w3c.dom.Attr
-	 * @param oldAttr
-	 *            org.w3c.dom.Attr
-	 */
-	void replaceAttr(Element ownerElement, Attr newAttr, Attr oldAttr) {
-		if (ownerElement == null)
-			return;
-		if (getStructuredDocument() == null)
-			return;
-
-		ElementImpl element = (ElementImpl) ownerElement;
-		if (!element.hasStartTag()) {
-			changeStartTag(element);
-			return;
-		}
-		if (element.isCommentTag()) {
-			changeStartTag(element);
-			return;
-		}
-
-		int offset = element.getStartOffset();
-		int start = offset;
-		int end = offset;
-
-		boolean insertSpace = false;
-		String attrValueClose = null;
-		if (oldAttr != null) {
-			AttrImpl impl = (AttrImpl) oldAttr;
-			ITextRegion nameRegion = impl.getNameRegion();
-			if (nameRegion == null)
-				return; // must never happen
-			ITextRegion lastRegion = impl.getValueRegion();
-			if (lastRegion != null) {
-				end += lastRegion.getEnd();
-			}
-			else {
-				lastRegion = impl.getEqualRegion();
-				if (lastRegion != null) {
-					end += lastRegion.getEnd();
-				}
-				else {
-					end += nameRegion.getEnd();
-					lastRegion = nameRegion;
-				}
-			}
-			// check there are extra space before the last attribute
-			IStructuredDocumentRegion flatNode = element.getStartStructuredDocumentRegion();
-			if (flatNode == null)
-				return; // must never happen
-			ITextRegionList regions = flatNode.getRegions();
-			if (regions == null)
-				return; // must never happen
-			ITextRegion prevRegion = null;
-			ITextRegion nextRegion = null;
-			for (int i = 0; i < regions.size(); i++) {
-				ITextRegion region = regions.get(i);
-				if (region == nameRegion) {
-					if (i > 0) {
-						prevRegion = regions.get(i - 1);
-					}
-				}
-				if (region == lastRegion) {
-					if (i + 1 < regions.size()) {
-						nextRegion = regions.get(i + 1);
-					}
-					break;
-				}
-			}
-			boolean isLastAttr = false;
-			if (nextRegion != null) {
-				String regionType = nextRegion.getType();
-				if (regionType == XMLRegionContext.XML_TAG_CLOSE || regionType == XMLRegionContext.XML_EMPTY_TAG_CLOSE || isNestedTagClose(regionType)) {
-					isLastAttr = true;
-				}
-			}
-			if (isLastAttr && prevRegion != null) {
-				start += prevRegion.getTextEnd();
-			}
-			else {
-				start += nameRegion.getStart();
-			}
-
-			// impl.resetRegions(ownerElement);
-			impl.resetRegions(element);
-		}
-		else { // append attribute
-			IStructuredDocumentRegion flatNode = element.getStartStructuredDocumentRegion();
-			if (flatNode == null)
-				return; // must never happen
-
-			attrValueClose = getAttrValueClose(element);
-			if (attrValueClose != null && attrValueClose.length() > 0) {
-				insertSpace = true;
-				start = flatNode.getEndOffset();
-				end = start;
-			}
-			else {
-				ITextRegionList regions = flatNode.getRegions();
-				if (regions == null)
-					return; // must never happen
-				int attrStart = 0;
-				for (int i = regions.size() - 1; i >= 0; i--) {
-					ITextRegion region = regions.get(i);
-					String regionType = region.getType();
-					if (regionType == XMLRegionContext.XML_TAG_CLOSE || regionType == XMLRegionContext.XML_EMPTY_TAG_CLOSE || isNestedTagClose(regionType))
-						continue;
-					int regionEnd = region.getEnd();
-					if (regionEnd == region.getTextEnd())
-						insertSpace = true;
-					attrStart = regionEnd;
-					break;
-				}
-				if (attrStart == 0)
-					return; // not found, must never happen
-				start += attrStart;
-				end = start;
-			}
-		}
-
-		String source = null;
-		if (newAttr != null) {
-			int size = 2;
-			if (attrValueClose != null)
-				size += attrValueClose.length();
-			String name = this.generator.generateAttrName(newAttr);
-			if (name != null)
-				size += name.length();
-			String value = this.generator.generateAttrValue(newAttr);
-			if (value != null)
-				size += value.length();
-			StringBuffer buffer = new StringBuffer(size);
-			if (attrValueClose != null)
-				buffer.append(attrValueClose);
-			if (insertSpace)
-				buffer.append(' ');
-			buffer.append(name);
-			if (value != null) {
-				buffer.append('=');
-				buffer.append(value);
-			}
-			source = buffer.toString();
-		}
-
-		replaceSource(source, start, end);
-	}
-
-	protected boolean isNestedTagClose(String regionType) {
-		boolean result = false;
-		return result;
-	}
-
-	/**
-	 * replaceChild method
-	 * 
-	 * @param parentNode
-	 *            org.w3c.dom.Node
-	 * @param newChild
-	 *            org.w3c.dom.Node
-	 * @param oldChild
-	 *            org.w3c.dom.Node
-	 */
-	void replaceChild(Node parentNode, Node newChild, Node oldChild) {
-		if (parentNode == null)
-			return;
-		if (newChild == null && oldChild == null)
-			return;
-		if (getStructuredDocument() == null)
-			return;
-
-		int start = 0;
-		int end = 0;
-		String preTag = null;
-		String postTag = null;
-		ElementImpl postElement = null;
-		if (oldChild != null) {
-			NodeImpl node = (NodeImpl) oldChild;
-			start = node.getStartOffset();
-			end = node.getEndOffset();
-			if (oldChild.getNodeType() == Node.TEXT_NODE) {
-				this.gapStructuredDocumentRegion = node.getStructuredDocumentRegion();
-			}
-			node.resetStructuredDocumentRegions(); // reset values from
-			// IStructuredDocumentRegion
-		}
-		else {
-			NodeImpl prev = (NodeImpl) newChild.getPreviousSibling();
-			if (prev != null) {
-				start = prev.getEndOffset();
-				end = start;
-				preTag = getCloseTag(prev);
-			}
-			else {
-				// first child
-				NodeImpl next = (NodeImpl) newChild.getNextSibling();
-				if (next != null) {
-					start = next.getStartOffset();
-					end = start;
-					if (parentNode.getNodeType() == Node.ELEMENT_NODE) {
-						preTag = getStartCloseTag((XMLElement) parentNode);
-					}
-				}
-				else {
-					// newly having a child
-					if (parentNode.getNodeType() == Node.ELEMENT_NODE) {
-						ElementImpl element = (ElementImpl) parentNode;
-						if (element.isEmptyTag()) { // empty tag format
-							// need to generate the start and the end tags
-							end = element.getEndOffset();
-							start = end - 2; // for "/>"
-							element.setEmptyTag(false);
-							preTag = this.generator.generateCloseTag(element);
-							postTag = this.generator.generateEndTag(element);
-							postElement = element;
-						}
-						else if (!element.hasStartTag()) {
-							start = element.getStartOffset();
-							end = start;
-							// invalid end tag or implicit tag
-							// need to generate the start tag
-							preTag = this.generator.generateStartTag(element);
-							if (preTag != null) {
-								int length = preTag.length();
-								if (length > 0) {
-									IStructuredDocumentRegion flatNode = new StructuredDocumentRegionProxy(start, length);
-									element.setStartStructuredDocumentRegion(flatNode);
-								}
-							}
-							if (!element.hasEndTag()) {
-								// implicit tag
-								// need to generate the end tags
-								postTag = this.generator.generateEndTag(element);
-								postElement = element;
-							}
-						}
-						else {
-							start = element.getStartEndOffset();
-							end = start;
-							preTag = getStartCloseTag(element);
-							if (preTag != null && preTag.length() > 0) {
-								if (!element.hasEndTag() && (element.isJSPContainer() || element.isCDATAContainer())) {
-									// need to generate the end tag
-									postTag = this.generator.generateEndTag(element);
-									postElement = element;
-								}
-							}
-						}
-					}
-					// else might DOCUMENT_NODE, start and end are 0
-				}
-			}
-		}
-
-		String source = null;
-		if (newChild != null) {
-			StringBuffer buffer = new StringBuffer();
-			int offset = start;
-			if (preTag != null) {
-				int length = preTag.length();
-				if (length > 0) {
-					offset += length;
-					buffer.append(preTag);
-				}
-			}
-
-			NodeImpl node = (NodeImpl) newChild;
-			while (node != null) {
-				if (node.getNodeType() == Node.ELEMENT_NODE) {
-					ElementImpl element = (ElementImpl) node;
-					if (element.preferEmptyTag())
-						element.setEmptyTag(true);
-					IStructuredDocumentRegion flatNode = null;
-					String startTag = this.generator.generateStartTag(element);
-					if (startTag != null) {
-						int length = startTag.length();
-						if (length > 0) {
-							buffer.append(startTag);
-							flatNode = new StructuredDocumentRegionProxy(offset, length);
-							offset += length;
-						}
-					}
-					element.setStartStructuredDocumentRegion(flatNode);
-				}
-				else {
-					String content = this.generator.generateSource(node);
-					if (content == null)
-						content = new String();
-					int length = content.length();
-					IStructuredDocumentRegion flatNode = null;
-					if (length > 0) {
-						buffer.append(content);
-						flatNode = new StructuredDocumentRegionProxy(offset, length);
-						offset += length;
-					}
-					node.setStructuredDocumentRegion(flatNode);
-				}
-
-				NodeImpl child = (NodeImpl) node.getFirstChild();
-				if (child != null) {
-					node = child;
-					continue;
-				}
-
-				if (node.getNodeType() == Node.ELEMENT_NODE) {
-					ElementImpl element = (ElementImpl) node;
-					IStructuredDocumentRegion flatNode = null;
-					String endTag = this.generator.generateEndTag(element);
-					if (endTag != null) {
-						int length = endTag.length();
-						if (length > 0) {
-							buffer.append(endTag);
-							flatNode = new StructuredDocumentRegionProxy(offset, length);
-							offset += length;
-						}
-					}
-					element.setEndStructuredDocumentRegion(flatNode);
-				}
-
-				while (node != null) {
-					if (node == newChild) {
-						node = null;
-						break;
-					}
-					NodeImpl next = (NodeImpl) node.getNextSibling();
-					if (next != null) {
-						node = next;
-						break;
-					}
-
-					node = (NodeImpl) node.getParentNode();
-					if (node.getNodeType() != Node.ELEMENT_NODE)
-						continue;
-					ElementImpl element = (ElementImpl) node;
-					IStructuredDocumentRegion flatNode = null;
-					String endTag = this.generator.generateEndTag(element);
-					if (endTag != null) {
-						int length = endTag.length();
-						if (length > 0) {
-							buffer.append(endTag);
-							flatNode = new StructuredDocumentRegionProxy(offset, length);
-							offset += length;
-						}
-					}
-					element.setEndStructuredDocumentRegion(flatNode);
-				}
-			}
-
-			if (postTag != null) {
-				int length = postTag.length();
-				if (length > 0) {
-					buffer.append(postTag);
-					if (postElement != null) {
-						IStructuredDocumentRegion flatNode = new StructuredDocumentRegionProxy(offset, length);
-						postElement.setEndStructuredDocumentRegion(flatNode);
-					}
-				}
-			}
-			source = buffer.toString();
-		}
-
-		if (start == end && (source == null || source.length() == 0)) {
-			// no thing changed
-			return;
-		}
-
-		replaceSource(source, start, end);
-	}
-
-	void replaceRegions(IStructuredDocumentRegion flatNode, ITextRegionList newRegions, ITextRegionList oldRegions) {
-		// future_TODO: optimize
-
-		NodeImpl root = (NodeImpl) this.model.getDocument();
-		this.parentNode = root;
-		this.nextNode = (NodeImpl) root.getFirstChild();
-
-		removeGapStructuredDocumentRegion(flatNode);
-		insertGapStructuredDocumentRegionBefore(flatNode.getStart());
-		changeStructuredDocumentRegion(flatNode);
-		insertGapStructuredDocumentRegionAfter(flatNode.getEnd());
-	}
-
-	/**
-	 * Wraps IStructuredDocumentRegion.replaceText() and sets contextual
-	 * information.
-	 */
-	private void replaceSource(String source, int start, int end) {
-		int inserted = 0;
-		if (source == null)
-			source = new String();
-		else
-			inserted = source.length();
-		int removed = end - start;
-		if (inserted == 0 && removed == 0)
-			return;
-
-		this.gapOffset = start;
-		this.gapLength = removed;
-		this.diff = inserted - removed;
-		// Note: due to bug
-		// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=3619
-		// for now assume "ignore readonly" region is ok -- assume DOM itself
-		// checks if
-		// ok to insert or not. In reality, we may have to make or "contains"
-		// method more
-		// better. Or, we may have to "perculate up" the parameter for clients
-		// to tell us programatically
-		// that its ok to insert/format in a read-only region.
-		getStructuredDocument().replaceText(this.model, this.gapOffset, this.gapLength, source, true);
-	}
-
-	void replaceStructuredDocumentRegions(IStructuredDocumentRegionList newStructuredDocumentRegions, IStructuredDocumentRegionList oldStructuredDocumentRegions) {
-		NodeImpl root = (NodeImpl) this.model.getDocument();
-
-		if (oldStructuredDocumentRegions != null) {
-			this.parentNode = root;
-			this.nextNode = (NodeImpl) root.getFirstChild();
-
-			Enumeration e = oldStructuredDocumentRegions.elements();
-			while (e.hasMoreElements()) {
-				IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) e.nextElement();
-				if (flatNode == null)
-					continue;
-				removeStructuredDocumentRegion(flatNode);
-				removeGapStructuredDocumentRegion(flatNode);
-			}
-		}
-
-		if (newStructuredDocumentRegions != null) {
-			this.parentNode = root;
-			this.nextNode = (NodeImpl) root.getFirstChild();
-
-			IStructuredDocumentRegion lastStructuredDocumentRegion = null;
-			Enumeration e = newStructuredDocumentRegions.elements();
-			while (e.hasMoreElements()) {
-				IStructuredDocumentRegion flatNode = (IStructuredDocumentRegion) e.nextElement();
-				if (flatNode == null)
-					continue;
-				if (lastStructuredDocumentRegion == null)
-					insertGapStructuredDocumentRegionBefore(flatNode.getStart());
-				insertStructuredDocumentRegion(flatNode);
-				lastStructuredDocumentRegion = flatNode;
-			}
-			if (lastStructuredDocumentRegion != null) {
-				insertGapStructuredDocumentRegionAfter(lastStructuredDocumentRegion.getEnd());
-			}
-			else {
-				insertGapStructuredDocumentRegionBefore(this.gapOffset);
-				// make sure to restore all backuped StructuredDocumentRegions
-				insertGapStructuredDocumentRegionAfter(this.gapOffset);
-			}
-		}
-		else {
-			this.parentNode = root;
-			this.nextNode = (NodeImpl) root.getFirstChild();
-
-			insertGapStructuredDocumentRegionBefore(this.gapOffset);
-			// make sure to restore all backuped StructuredDocumentRegions
-			insertGapStructuredDocumentRegionAfter(this.gapOffset);
-		}
-	}
-
-	/**
-	 */
-	private void updateAttrRegions(Element element, IStructuredDocumentRegion flatNode) {
-
-		// update attributes
-		ITextRegionList regions = flatNode.getRegions();
-		if (regions == null)
-			return;
-		NamedNodeMap attributes = element.getAttributes();
-		if (attributes == null)
-			return;
-		int index = -1;
-		AttrImpl attr = null;
-		Iterator e = regions.iterator();
-		while (e.hasNext()) {
-			ITextRegion region = (ITextRegion) e.next();
-			String regionType = region.getType();
-			if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				attr = (AttrImpl) attributes.item(++index);
-				if (attr != null) {
-					attr.setNameRegion(region);
-					// reset other regions
-					attr.setEqualRegion(null);
-					attr.setValueRegion(null);
-				}
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				if (attr != null)
-					attr.setEqualRegion(region);
-			}
-			else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				if (attr != null) {
-					attr.setValueRegion(region);
-					attr = null;
-				}
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryAdapterFactoryForEmbeddedXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryAdapterFactoryForEmbeddedXML.java
deleted file mode 100644
index 805133e..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryAdapterFactoryForEmbeddedXML.java
+++ /dev/null
@@ -1,54 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-
-
-public class ModelQueryAdapterFactoryForEmbeddedXML extends ModelQueryAdapterFactoryForXML {
-
-
-	/**
-	 * Constructor for ModelQueryAdapterFactoryForEmbeddedXML.
-	 */
-	public ModelQueryAdapterFactoryForEmbeddedXML() {
-		this(ModelQueryAdapter.class, false);
-	}
-
-	/**
-	 * Constructor for ModelQueryAdapterFactoryForEmbeddedXML.
-	 * 
-	 * @param adapterKey
-	 * @param registerAdapters
-	 */
-	protected ModelQueryAdapterFactoryForEmbeddedXML(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.core.IAdapterFactory#adapt(INodeNotifier)
-	 */
-	public INodeAdapter adapt(INodeNotifier object) {
-		return adaptNew(object);
-	}
-
-	protected void configureDocumentManager(CMDocumentManager mgr) {
-		super.configureDocumentManager(mgr);
-		mgr.setPropertyEnabled(CMDocumentManager.PROPERTY_ASYNC_LOAD, true);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryAdapterFactoryForXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryAdapterFactoryForXML.java
deleted file mode 100644
index aa05d74..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryAdapterFactoryForXML.java
+++ /dev/null
@@ -1,197 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.modelquery;
-
-
-
-import java.io.File;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.IModelStateListener;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapterImpl;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-
-
-public class ModelQueryAdapterFactoryForXML extends AbstractAdapterFactory implements IModelStateListener {
-
-	protected ModelQueryAdapterImpl modelQueryAdapterImpl;
-	protected IStructuredModel stateNotifier = null;
-
-	/**
-	 * ModelQueryAdapterFactoryForXML constructor comment.
-	 */
-	public ModelQueryAdapterFactoryForXML() {
-		this(ModelQueryAdapter.class, true);
-	}
-
-	/**
-	 * ModelQueryAdapterFactoryForXML constructor comment.
-	 * 
-	 * @param adapterKey
-	 *            java.lang.Object
-	 * @param registerAdapters
-	 *            boolean
-	 */
-	public ModelQueryAdapterFactoryForXML(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	protected boolean autoLoadCM() {
-		// until the existence of a CMDocumentRequesterFactory to create the
-		// load requests,
-		// return true
-		return true;
-	}
-
-	protected void configureDocumentManager(CMDocumentManager mgr) {
-		// this depends on there being a CMDocumentRequesterFactory installed
-		mgr.setPropertyEnabled(CMDocumentManager.PROPERTY_AUTO_LOAD, autoLoadCM());
-	}
-
-	public IAdapterFactory copy() {
-
-		return new ModelQueryAdapterFactoryForXML(this.adapterKey, this.shouldRegisterAdapter);
-	}
-
-	/**
-	 * createAdapter method comment.
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-
-		if (org.eclipse.wst.sse.core.util.Debug.displayInfo)
-			System.out.println("-----------------------ModelQueryAdapterFactoryForXML.createAdapter" + target); //$NON-NLS-1$
-		if (modelQueryAdapterImpl == null) {
-			if (target instanceof XMLNode) {
-				XMLNode xmlNode = (XMLNode) target;
-				IStructuredModel model = stateNotifier = xmlNode.getModel();
-				stateNotifier.addModelStateListener(this);
-				String baseLocation = null;
-				File file = new Path(model.getBaseLocation()).toFile();
-				if (file.exists()) {
-					baseLocation = file.getAbsolutePath();
-				}
-				else {
-					IPath basePath = new Path(model.getBaseLocation());
-					IPath derivedPath = null;
-					if (basePath.segmentCount() > 1)
-						derivedPath = ResourcesPlugin.getWorkspace().getRoot().getFile(basePath).getLocation();
-					else
-						derivedPath = ResourcesPlugin.getWorkspace().getRoot().getLocation().append(basePath);
-					if (derivedPath != null) {
-						baseLocation = derivedPath.toString();
-					}
-				}
-				if (org.eclipse.wst.sse.core.util.Debug.displayInfo)
-					System.out.println("----------------ModelQueryAdapterFactoryForXML... baseLocation : " + baseLocation); //$NON-NLS-1$
-
-				CMDocumentCache cmDocumentCache = new CMDocumentCache();
-				ModelQuery modelQuery = null;
-				IdResolver idResolver = null;
-
-				if (org.eclipse.wst.sse.core.util.Debug.displayInfo)
-					System.out.println("********XMLModelQueryImpl"); //$NON-NLS-1$
-				idResolver = new XMLCatalogIdResolver(baseLocation, model.getResolver());
-				modelQuery = new XMLModelQueryImpl(cmDocumentCache, idResolver);
-
-				// cs todo...
-				// for now we create a CMDocumentCache on a 'per editor' basis
-				// in the future we need to support a CMDocumentCache that is
-				// shared between editors
-				// nsd comment: may not be appropriate depending on
-				CMDocumentManager documentManager = modelQuery.getCMDocumentManager();
-				if (documentManager != null) {
-					configureDocumentManager(documentManager);
-				}
-				modelQueryAdapterImpl = new ModelQueryAdapterImpl(cmDocumentCache, modelQuery, idResolver);
-			}
-		}
-		return modelQueryAdapterImpl;
-	}
-
-	/**
-	 * @see IModelStateListener#modelAboutToBeChanged(IStructuredModel)
-	 */
-	public void modelAboutToBeChanged(IStructuredModel model) {
-	}
-
-	/**
-	 * @see IModelStateListener#modelChanged(IStructuredModel)
-	 */
-	public void modelChanged(IStructuredModel model) {
-	}
-
-	/**
-	 * @see IModelStateListener#modelDirtyStateChanged(IStructuredModel,
-	 *      boolean)
-	 */
-	public void modelDirtyStateChanged(IStructuredModel model, boolean isDirty) {
-	}
-
-	/**
-	 * @see IModelStateListener#modelResourceDeleted(IStructuredModel)
-	 */
-	public void modelResourceDeleted(IStructuredModel model) {
-	}
-
-	/**
-	 * @see IModelStateListener#modelResourceMoved(IStructuredModel,
-	 *      IStructuredModel)
-	 */
-	public void modelResourceMoved(IStructuredModel oldModel, IStructuredModel newModel) {
-		stateNotifier.removeModelStateListener(this);
-		stateNotifier = newModel;
-		updateResolver(stateNotifier);
-		stateNotifier.addModelStateListener(this);
-	}
-
-	public void release() {
-		super.release();
-		if (stateNotifier != null)
-			stateNotifier.removeModelStateListener(this);
-		stateNotifier = null;
-		if (modelQueryAdapterImpl != null)
-			modelQueryAdapterImpl.release();
-	}
-
-	protected void updateResolver(IStructuredModel model) {
-		String baseLocation = model.getBaseLocation();
-		IFile baseFile = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(model.getBaseLocation()));
-		if (baseFile != null) {
-			baseLocation = baseFile.getLocation().toString();
-		}
-		modelQueryAdapterImpl.setIdResolver(new XMLCatalogIdResolver(baseLocation, model.getResolver()));
-	}
-
-	public void modelAboutToBeReinitialized(IStructuredModel structuredModel) {
-		// TODO Auto-generated method stub
-		
-	}
-
-	public void modelReinitialized(IStructuredModel structuredModel) {
-		// TODO Auto-generated method stub
-		
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryUtil.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryUtil.java
deleted file mode 100644
index d24f90c..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/ModelQueryUtil.java
+++ /dev/null
@@ -1,64 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.w3c.dom.Document;
-
-
-/**
- * This class is used to associate ModelQuery (and related data) with a
- * Document (or IStructuredModel).
- */
-public class ModelQueryUtil {
-
-	public static CMDocumentCache getCMDocumentCache(Document node) {
-		ModelQueryAdapter modelQueryAdapter = getModelQueryAdapter(node);
-		return modelQueryAdapter != null ? modelQueryAdapter.getCMDocumentCache() : null;
-	}
-
-	public static IdResolver getIdResolver(Document node) {
-		ModelQueryAdapter modelQueryAdapter = getModelQueryAdapter(node);
-		return modelQueryAdapter != null ? modelQueryAdapter.getIdResolver() : null;
-	}
-
-	public static ModelQuery getModelQuery(Document node) {
-		ModelQueryAdapter modelQueryAdapter = getModelQueryAdapter(node);
-		return modelQueryAdapter != null ? modelQueryAdapter.getModelQuery() : null;
-	}
-
-	public static ModelQuery getModelQuery(IStructuredModel model) {
-		if ((!(model instanceof XMLModel)) || model == null)
-			return null;
-		return getModelQuery(((XMLModel) model).getDocument());
-	}
-
-	public static ModelQueryAdapter getModelQueryAdapter(Document node) {
-		ModelQueryAdapter result = null;
-
-		if (node instanceof INodeNotifier) {
-			INodeNotifier notifier = (INodeNotifier) node;
-			result = (ModelQueryAdapter) notifier.getAdapterFor(ModelQueryAdapter.class);
-		}
-
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLCatalogIdResolver.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLCatalogIdResolver.java
deleted file mode 100644
index 2a14712..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLCatalogIdResolver.java
+++ /dev/null
@@ -1,89 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.modelquery;
-
-import org.eclipse.wst.sse.core.util.URIResolver;
-import org.eclipse.wst.xml.uriresolver.XMLCatalog;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogPlugin;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-
-public class XMLCatalogIdResolver implements IdResolver {
-	protected String resourceLocation;
-
-	protected URIResolver uriresolver;
-
-	public XMLCatalogIdResolver(String resourceLocation) {
-		this.resourceLocation = resourceLocation;
-	}
-
-	public XMLCatalogIdResolver(String resourceLocation, URIResolver uriresolver) {
-		this.resourceLocation = resourceLocation;
-		this.uriresolver = uriresolver;
-	}
-
-
-	/**
-	 * Gets the resourceLocation.
-	 * 
-	 * @return Returns a String
-	 */
-	public String getResourceLocation() {
-		String location = resourceLocation;
-		if (location == null) {
-			if (uriresolver != null)
-				location = uriresolver.getFileBaseLocation();
-		}
-		return location;
-	}
-
-	/**
-	 * @deprecated in superclass
-	 */
-	public String resolveId(String publicId, String systemId) {
-		return resolveId(getResourceLocation(), publicId, systemId);
-	}
-
-	public String resolveId(String base, String publicId, String systemId) {
-		// first see if we can map the publicId to an alternative systemId
-		// note: should probably verify the mappedSystemId before ignoring the
-		// systemId
-		XMLCatalog xmlCatalog = XMLCatalogPlugin.getInstance().getDefaultXMLCatalog();
-		String mappedSystemId = xmlCatalog.getMappedSystemId(publicId, systemId);
-		if (mappedSystemId != null) {
-			systemId = mappedSystemId;
-		}
-
-		// normalize the systemId
-		boolean normalized = false;
-		// account for Web Projects and others where *any* string may legally
-		// resolve somehow
-		if (this.uriresolver != null && systemId != null) {
-			// check the provided URIResolver
-			String resolvedValue = this.uriresolver.getLocationByURI(systemId, base);
-			if (resolvedValue != null && resolvedValue.length() > 0) {
-				systemId = resolvedValue;
-				normalized = true;
-			}
-		}
-		if (!normalized) {
-			// no URIResolver available; ask the URIHelper directly
-			systemId = URIHelper.normalize(systemId, base, null);
-			normalized = true;
-		}
-		return systemId;
-	}
-
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLModelQueryAssociationProvider.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLModelQueryAssociationProvider.java
deleted file mode 100644
index c3b4e15..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLModelQueryAssociationProvider.java
+++ /dev/null
@@ -1,37 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.XMLAssociationProvider;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.w3c.dom.Document;
-
-/**
- * XMLModelQueryAssociationProvider
- */
-class XMLModelQueryAssociationProvider extends XMLAssociationProvider {
-
-	protected IdResolver idResolver;
-
-	public XMLModelQueryAssociationProvider(CMDocumentCache cache, IdResolver idResolver) {
-		super(cache);
-		this.idResolver = idResolver;
-	}
-
-	protected String resolveGrammarURI(Document document, String publicId, String systemId) {
-		return idResolver.resolveId(publicId, systemId);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLModelQueryImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLModelQueryImpl.java
deleted file mode 100644
index a86f7f6..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/modelquery/XMLModelQueryImpl.java
+++ /dev/null
@@ -1,38 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.modelquery;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.ModelQueryImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.MovableModelQuery;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-
-
-public class XMLModelQueryImpl extends ModelQueryImpl implements MovableModelQuery {
-
-	protected CMDocumentCache fCache = null;
-
-	public XMLModelQueryImpl(CMDocumentCache cache, IdResolver idResolver) {
-		super(new XMLModelQueryAssociationProvider(cache, idResolver));
-		fCache = cache;
-	}
-
-	/**
-	 * @see MovableModelQuery#setIdResolver(IdResolver)
-	 */
-	public void setIdResolver(IdResolver newIdResolver) {
-		modelQueryAssociationProvider = new XMLModelQueryAssociationProvider(fCache, newIdResolver);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/BlockStructuredDocumentRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/BlockStructuredDocumentRegion.java
deleted file mode 100644
index 5442a10..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/BlockStructuredDocumentRegion.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser;
-
-
-
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.parser.IBlockedStructuredDocumentRegion;
-
-
-public class BlockStructuredDocumentRegion extends BasicStructuredDocumentRegion implements IBlockedStructuredDocumentRegion {
-
-	private String partitionType;
-
-	/**
-	 * A BlockStructuredDocumentRegion is like a IStructuredDocumentRegion,
-	 * but is the result of a "block scan".
-	 */
-	public BlockStructuredDocumentRegion() {
-		super();
-	}
-
-	public String getPartitionType() {
-		if (partitionType == null) {
-			// eventually can look up surroundingTag name
-			// but this field is primarily entended for future
-			// extensibility. This may change.
-			//partitionType = "org.eclipse.wst.sse.core." + tagname;
-		}
-		return partitionType;
-	}
-
-	public void setPartitionType(String partitionType) {
-		this.partitionType = partitionType;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/ContextRegionContainer.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/ContextRegionContainer.java
deleted file mode 100644
index cc908ad..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/ContextRegionContainer.java
+++ /dev/null
@@ -1,386 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser;
-
-
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.internal.text.TextRegionListImpl;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionCollection;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.internal.Logger;
-
-
-public class ContextRegionContainer implements ITextRegionContainer {
-	protected int length;
-	protected ITextRegionCollection parent;
-	protected ITextRegionList regions;
-	protected int start;
-	protected int textLength;
-	protected String type;
-
-	public ContextRegionContainer() {
-		super();
-		regions = new TextRegionListImpl();
-
-	}
-
-	/**
-	 * these "deep" parenting is not normal, but just in case.
-	 */
-	private IStructuredDocument _getParentDocument() {
-		// go up enough parents to get to document
-		ITextRegionCollection parent = getParent();
-		while (!(parent instanceof IStructuredDocumentRegion)) {
-			// would be an error not to be container, but
-			// won't check for it now
-			parent = ((ITextRegionContainer) parent).getParent();
-		}
-		return ((IStructuredDocumentRegion) parent).getParentDocument();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjust(int)
-	 */
-	public void adjust(int i) {
-
-		start += i;
-		// I erroneously added length and textLength
-		// may want to rename this method to adjustStart
-		//length += i;
-		//textLength += i;
-
-	}
-
-	public void adjustLengthWith(int i) {
-		length += i;
-	}
-
-	public void adjustStart(int i) {
-		start += i;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		textLength += i;
-
-	}
-
-	public boolean containsOffset(int i) {
-
-		return getStartOffset() <= i && i < getEndOffset();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#containsOffset(com.ibm.sed.structured.text.ITextRegion,
-	 *      int)
-	 */
-	public boolean containsOffset(ITextRegion containedRegion, int offset) {
-		return getStartOffset(containedRegion) <= offset && offset < getEndOffset(containedRegion);
-	}
-
-	/**
-	 * This method is just to equate positions. clients may (will probably)
-	 * still need to make calls to equate regions, parent, etc.
-	 */
-	public void equatePositions(ITextRegion region) {
-		start = region.getStart();
-		length = region.getLength();
-		textLength = region.getTextLength();
-	}
-
-	public int getEnd() {
-		return start + length;
-	}
-
-	public int getEndOffset() {
-		// our startOffset take into account our parent, and our start
-		return getStartOffset() + getLength();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getEndOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getEndOffset(ITextRegion containedRegion) {
-		return getStartOffset(containedRegion) + containedRegion.getLength();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getFirstRegion()
-	 */
-	public ITextRegion getFirstRegion() {
-		return getRegions().get(0);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getFullText()
-	 */
-	public String getFullText() {
-		// CMVC > 252430, 245586
-		// unit test > com.ibm.sed.tests.other.UnitTests.testDeepEmbeddedJSP3
-		// this code modified on 6/25/03 (pa)
-
-		//		String result = null;
-		//		try {
-		//			result = _getParentDocument().get(start, length);
-		//		} catch (BadLocationException e) {
-		//			Logger.logException("program error: unreachable exception", e);
-		// //$NON-NLS-1$
-		//		}
-		//		return result;
-		return getParent().getFullText(this);
-	}
-
-	public String getFullText(org.eclipse.wst.sse.core.text.ITextRegion aRegion) {
-		// Must be proxied here since aRegion should always be a child of
-		// *this* container and indexed from
-		// this container's offset
-		//	try {
-		return parent.getFullText().substring(start + aRegion.getStart(), start + aRegion.getEnd());
-		//} catch (Exception e) {
-		//if (com.ibm.sed.util.Debug.debugStructuredDocument)
-		//e.printStackTrace();
-		//}
-		//return "";//$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getLastRegion()
-	 */
-	public ITextRegion getLastRegion() {
-		return getRegions().get(getRegions().size() - 1);
-	}
-
-	public int getLength() {
-		return length;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getNumberOfRegions()
-	 */
-	public int getNumberOfRegions() {
-		return getRegions().size();
-	}
-
-	public ITextRegionCollection getParent() {
-		return parent;
-	}
-
-	/**
-	 * The parameter offset refers to the overall offset in the document.
-	 */
-	public ITextRegion getRegionAtCharacterOffset(int offset) {
-		ITextRegion result = null;
-		if (regions != null) {
-			// transform the requested offset to the "scale" that
-			// regions are stored in, which are all relative to the
-			// start point.
-			//int transformedOffset = offset - getStartOffset();
-			//
-			int length = getRegions().size();
-			for (int i = 0; i < length; i++) {
-				ITextRegion region = getRegions().get(i);
-				if (org.eclipse.wst.sse.core.util.Debug.debugStructuredDocument) {
-					System.out.println("region(s) in IStructuredDocumentRegion::getRegionAtCharacterOffset: " + region); //$NON-NLS-1$
-					System.out.println("       requested offset: " + offset); //$NON-NLS-1$
-					//System.out.println(" transformedOffset: " +
-					// transformedOffset); //$NON-NLS-1$
-					System.out.println("       region start: " + region.getStart()); //$NON-NLS-1$
-					System.out.println("       region end: " + region.getEnd()); //$NON-NLS-1$
-					System.out.println("       region type: " + region.getType()); //$NON-NLS-1$
-					System.out.println("       region class: " + region.getClass()); //$NON-NLS-1$
-
-				}
-				if ((getStartOffset(region) <= offset) && (offset < getEndOffset(region))) {
-					result = region;
-					break;
-				}
-			}
-		}
-		return result;
-	}
-
-	public ITextRegionList getRegions() {
-		return regions;
-	}
-
-	public int getStart() {
-		return start;
-	}
-
-	public int getStartOffset() {
-		return getParent().getStartOffset() + getStart();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getStartOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getStartOffset(ITextRegion containedRegion) {
-		return getStartOffset() + containedRegion.getStart();
-	}
-
-	/**
-	 * same as getFullText for this region type ... do we need to take white
-	 * space off?
-	 */
-
-	public String getText() {
-		String result = null;
-		try {
-			IStructuredDocument parentDocument = _getParentDocument();
-			result = parentDocument.get(start, length);
-		} catch (BadLocationException e) {
-			Logger.logException("program error: unreachable exception", e); //$NON-NLS-1$
-		}
-		return result;
-	}
-
-	public String getText(org.eclipse.wst.sse.core.text.ITextRegion aRegion) {
-		// Must be proxied here since aRegion should always be a child of
-		// *this* container and indexed from
-		// this container's offset
-		//	com.ibm.sed.util.Assert.isTrue(regions.contains(aRegion));
-		//try {
-		return parent.getText().substring(start + aRegion.getStart(), start + aRegion.getTextEnd());
-		//} catch (Exception e) {
-		//if (com.ibm.sed.util.Debug.debugStructuredDocument)
-		//com.ibm.sed.util.Logger.log(e);
-		//}
-		// return ""; //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#getTextEnd()
-	 */
-	public int getTextEnd() {
-		//		int result = 0;
-		//		ITextRegion lastRegion = (ITextRegion) regions.get(regions.size() -
-		// 1);
-		//		result = getStartOffset(lastRegion) + lastRegion.getTextLength();
-		//		return result;
-		return start + textLength;
-	}
-
-	public int getTextEndOffset() {
-		ITextRegion region = regions.get(regions.size() - 1);
-		// our startOffset take into account our parent, and our start
-		// (pa) 10/4 changed to be based on text end
-		//           it used to return incorrect value for embedded region containers
-		//
-
-		// TODO CRITICAL -- need to re-work this work around, so doesn't
-		// depend on XMLRegionContext
-		//		// this is a workaround for 226823///////////
-		//		for (int i = regions.size() - 1; i >= 0 && region.getType() ==
-		// XMLRegionContext.WHITE_SPACE; i--)
-		//			region = (ITextRegion) regions.get(i);
-		//		/////////////////////////////////////////////
-
-		return getStartOffset() + region.getTextEnd();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegionCollection#getTextEndOffset(com.ibm.sed.structured.text.ITextRegion)
-	 */
-	public int getTextEndOffset(ITextRegion containedRegion) {
-		int result = 0;
-		if (regions != null) {
-			int length = getRegions().size();
-			for (int i = 0; i < length; i++) {
-				ITextRegion region = getRegions().get(i);
-				if (region == containedRegion) {
-					result = getStartOffset(region) + region.getTextEnd();
-					break;
-				}
-			}
-		}
-		return result;
-	}
-
-	public int getTextLength() {
-		return textLength;
-	}
-
-	public String getType() {
-		return type;
-	}
-
-	public void setLength(int i) {
-		length = i;
-	}
-
-	public void setParent(ITextRegionCollection parentRegion) {
-		parent = parentRegion;
-	}
-
-	public void setRegions(ITextRegionList containedRegions) {
-		regions = containedRegions;
-	}
-
-	public void setStart(int i) {
-		start = i;
-	}
-
-	public void setTextLength(int i) {
-		textLength = i;
-	}
-
-	public void setType(String string) {
-		type = string;
-	}
-
-	public String toString() {
-		String className = getClass().getName();
-		String shortClassName = className.substring(className.lastIndexOf(".") + 1); //$NON-NLS-1$
-		String result = "Container!!! " + shortClassName + "--> " + getType() + ": " + getStart() + "-" + getTextEnd() + (getTextEnd() != getEnd() ? ("/" + getEnd()) : ""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
-		return result;
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		org.eclipse.wst.sse.core.events.RegionChangedEvent result = null;
-		// FUTURE_TO_DO: need to implement region level parsing in
-		// ITextRegionContainer::updateModel
-		// never being called?
-		return result;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/IntStack.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/IntStack.java
deleted file mode 100644
index b871545..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/IntStack.java
+++ /dev/null
@@ -1,97 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser;
-
-
-
-/*
- * 
- * A non-resizable class implementing the behavior of java.util.Stack, but
- * directly for the <code> integer </code> primitive.
- */
-import java.util.EmptyStackException;
-
-public class IntStack {
-	private int[] list = null;
-
-	private int size = 0;
-
-	public IntStack() {
-		this(100);
-	}
-
-	public IntStack(int maxdepth) {
-		super();
-		list = new int[maxdepth];
-		initialize();
-	}
-
-	public boolean empty() {
-		return size == 0;
-	}
-
-	public int get(int slot) {
-		return list[slot];
-	}
-
-	void initialize() {
-		for (int i = 0; i < list.length; i++)
-			list[i] = -1;
-	}
-
-	/**
-	 * Returns the int at the top of the stack without removing it
-	 * 
-	 * @return int at the top of this stack.
-	 * @exception EmptyStackException
-	 *                when empty.
-	 */
-	public int peek() {
-		if (size == 0)
-			throw new EmptyStackException();
-		return list[size - 1];
-	}
-
-	/**
-	 * Removes and returns the int at the top of the stack
-	 * 
-	 * @return int at the top of this stack.
-	 * @exception EmptyStackException
-	 *                when empty.
-	 */
-	public int pop() {
-		int value = peek();
-		list[size - 1] = -1;
-		size--;
-		return value;
-	}
-
-	/**
-	 * Pushes an item onto the top of this stack.
-	 * 
-	 * @param newValue -
-	 *            the int to be pushed onto this stack.
-	 * @return the <code>newValue</code> argument.
-	 */
-	public int push(int newValue) {
-		if (size == list.length) {
-			throw new StackOverflowError();
-		}
-		list[size++] = newValue;
-		return newValue;
-	}
-
-	public int size() {
-		return list.length;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/RegionFactory.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/RegionFactory.java
deleted file mode 100644
index f9c4ab9..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/RegionFactory.java
+++ /dev/null
@@ -1,49 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser;
-
-
-
-import org.eclipse.wst.sse.core.internal.parser.ContextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-
-
-public class RegionFactory {
-
-	public RegionFactory() {
-		super();
-	}
-
-	public ITextRegion createToken(ITextRegionContainer parent, String context, int start, int textLength, int length) {
-		return this.createToken(parent, context, start, textLength, length, null, null);
-	}
-
-	public ITextRegion createToken(ITextRegionContainer parent, String context, int start, int textLength, int length, String lang, String surroundingTag) {
-		ITextRegion newRegion = createToken(context, start, textLength, length);
-		// DW, 4/16/2003 token regions no longer have parents
-		//newRegion.setParent(parent);
-		return newRegion;
-	}
-
-	public ITextRegion createToken(String context, int start, int textLength, int length) {
-		return this.createToken(context, start, textLength, length, null, null);
-	}
-
-	public ITextRegion createToken(String context, int start, int textLength, int length, String lang, String surroundingTag) {
-		ITextRegion newRegion = new ContextRegion(context, start, textLength, length);
-		return newRegion;
-
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XML10Names.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XML10Names.java
deleted file mode 100644
index 1ff05a0..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XML10Names.java
+++ /dev/null
@@ -1,541 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-/* The following code was generated by JFlex 1.4 on 7/17/04 3:43 AM */
-
-/*nlsXXX*/
-package org.eclipse.wst.xml.core.internal.parser;
-
-
-
-/**
- * This class is a scanner generated by <a href="http://www.jflex.de/">JFlex
- * </a> 1.4 on 7/17/04 3:43 AM from the specification file
- * <tt>XML10Names.jflex</tt>
- */
-public final class XML10Names {
-
-	/** This character denotes the end of file */
-	private static final int YYEOF = -1;
-
-	/** initial size of the lookahead buffer */
-	private static final int ZZ_BUFFERSIZE = 2048;
-
-	/** lexical states */
-	private static final int YYINITIAL = 0;
-
-	/**
-	 * Translates characters to character classes
-	 */
-	private static final String ZZ_CMAP_PACKED = "\11\0\1\1\1\2\2\0\1\1\22\0\1\1\14\0\1\0\2\0" + "\12\0\1\3\6\0\32\3\4\0\1\3\1\0\32\3\74\0\1\0" + "\10\0\27\3\1\0\37\3\1\0\72\3\2\0\13\3\2\0\10\3" + "\1\0\65\3\1\0\104\3\11\0\44\3\3\0\2\3\4\0\36\3" + "\70\0\131\3\22\0\7\3\16\0\2\0\56\0\106\0\32\0\2\0" + "\44\0\1\3\1\0\3\3\1\0\1\3\1\0\24\3\1\0\54\3" + "\1\0\7\3\3\0\1\3\1\0\1\3\1\0\1\3\1\0\1\3" + "\1\0\22\3\15\0\14\3\1\0\102\3\1\0\14\3\1\0\44\3" + "\1\0\4\0\11\0\65\3\2\0\2\3\2\0\2\3\3\0\34\3" + "\2\0\10\3\2\0\2\3\67\0\46\3\2\0\1\3\7\0\46\3" + "\12\0\21\0\1\0\27\0\1\0\3\0\1\0\1\0\1\0\2\0" + "\1\0\1\0\13\0\33\3\5\0\3\3\56\0\32\3\5\0\1\0" + "\12\3\10\0\15\0\12\0\6\0\1\0\107\3\2\0\5\3\1\0" + "\17\3\1\0\4\3\1\0\1\3\17\0\2\3\2\0\1\0\4\0" + "\2\0\12\0\u0207\0\3\0\1\0\65\3\2\0\1\0\1\3\20\0" + "\3\0\4\0\3\0\12\3\2\0\2\0\12\0\21\0\3\0\1\0" + "\10\3\2\0\2\3\2\0\26\3\1\0\7\3\1\0\1\3\3\0" + "\4\3\2\0\1\0\1\0\7\0\2\0\2\0\2\0\3\0\11\0" + "\1\0\4\0\2\3\1\0\3\3\2\0\2\0\12\0\2\3\20\0"
-				+ "\1\0\2\0\6\3\4\0\2\3\2\0\26\3\1\0\7\3\1\0" + "\2\3\1\0\2\3\1\0\2\3\2\0\1\0\1\0\5\0\4\0" + "\2\0\2\0\3\0\13\0\4\3\1\0\1\3\7\0\12\0\2\0" + "\3\3\14\0\3\0\1\0\7\3\1\0\1\3\1\0\3\3\1\0" + "\26\3\1\0\7\3\1\0\2\3\1\0\5\3\2\0\1\0\1\3" + "\10\0\1\0\3\0\1\0\3\0\22\0\1\3\5\0\12\0\21\0" + "\3\0\1\0\10\3\2\0\2\3\2\0\26\3\1\0\7\3\1\0" + "\2\3\2\0\4\3\2\0\1\0\1\3\6\0\3\0\2\0\2\0" + "\3\0\10\0\2\0\4\0\2\3\1\0\3\3\4\0\12\0\22\0" + "\2\0\1\0\6\3\3\0\3\3\1\0\4\3\3\0\2\3\1\0" + "\1\3\1\0\2\3\3\0\2\3\3\0\3\3\3\0\10\3\1\0" + "\3\3\4\0\5\0\3\0\3\0\1\0\4\0\11\0\1\0\17\0" + "\11\0\21\0\3\0\1\0\10\3\1\0\3\3\1\0\27\3\1\0" + "\12\3\1\0\5\3\4\0\7\0\1\0\3\0\1\0\4\0\7\0" + "\2\0\11\0\2\3\4\0\12\0\22\0\2\0\1\0\10\3\1\0" + "\3\3\1\0\27\3\1\0\12\3\1\0\5\3\4\0\7\0\1\0" + "\3\0\1\0\4\0\7\0\2\0\7\0\1\3\1\0\2\3\4\0" + "\12\0\22\0\2\0\1\0\10\3\1\0\3\3\1\0\27\3\1\0" + "\20\3\4\0\6\0\2\0\3\0\1\0\4\0\11\0\1\0\10\0" + "\2\3\4\0\12\0\221\0\56\3\1\0\1\3\1\0\2\3\7\0"
-				+ "\5\0\6\3\1\0\10\0\1\0\12\0\47\0\2\3\1\0\1\3" + "\2\0\2\3\1\0\1\3\2\0\1\3\6\0\4\3\1\0\7\3" + "\1\0\3\3\1\0\1\3\1\0\1\3\2\0\2\3\1\0\2\3" + "\1\0\1\3\1\0\2\3\6\0\1\0\2\0\1\3\2\0\5\3" + "\1\0\1\0\1\0\6\0\2\0\12\0\76\0\2\0\6\0\12\0" + "\13\0\1\0\1\0\1\0\1\0\1\0\4\0\2\0\10\3\1\0" + "\41\3\7\0\24\0\1\0\6\0\4\0\6\0\1\0\1\0\1\0" + "\25\0\3\0\7\0\1\0\1\0\346\0\46\3\12\0\47\3\11\0" + "\1\3\1\0\2\3\1\0\3\3\1\0\1\3\1\0\2\3\1\0" + "\5\3\51\0\1\3\1\0\1\3\1\0\1\3\13\0\1\3\1\0" + "\1\3\1\0\1\3\3\0\2\3\3\0\1\3\5\0\3\3\1\0" + "\1\3\1\0\1\3\1\0\1\3\1\0\1\3\3\0\2\3\3\0" + "\2\3\1\0\1\3\50\0\1\3\11\0\1\3\2\0\1\3\2\0" + "\2\3\7\0\2\3\1\0\1\3\1\0\7\3\50\0\1\3\4\0" + "\1\3\10\0\1\3\u0c06\0\234\3\4\0\132\3\6\0\26\3\2\0" + "\6\3\2\0\46\3\2\0\6\3\2\0\10\3\1\0\1\3\1\0" + "\1\3\1\0\1\3\1\0\37\3\2\0\65\3\1\0\7\3\1\0" + "\1\3\3\0\3\3\1\0\7\3\3\0\4\3\2\0\6\3\4\0" + "\15\3\5\0\3\3\1\0\7\3\323\0\15\0\4\0\1\0\104\0" + "\1\3\3\0\2\3\2\0\1\3\121\0\3\3\u0e82\0\1\0\1\0"
-				+ "\1\3\31\0\11\3\6\0\1\0\5\0\13\0\124\3\4\0\2\0" + "\2\0\2\0\2\0\132\3\1\0\3\0\6\0\50\3\u1cd3\0\u51a6\3" + "\u0c5a\0\u2ba4\3\u285c\0";
-
-	/**
-	 * Translates characters to character classes
-	 */
-	private static final char[] ZZ_CMAP = zzUnpackCMap(ZZ_CMAP_PACKED);
-
-	/**
-	 * Translates DFA states to action switch labels.
-	 */
-	private static final int[] ZZ_ACTION = zzUnpackAction();
-
-	private static final String ZZ_ACTION_PACKED_0 = "\1\0\1\1\1\2\4\1";
-
-	private static int[] zzUnpackAction() {
-		int[] result = new int[7];
-		int offset = 0;
-		offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
-		return result;
-	}
-
-	private static int zzUnpackAction(String packed, int offset, int[] result) {
-		int i = 0; /* index in packed string */
-		int j = offset; /* index in unpacked array */
-		int l = packed.length();
-		while (i < l) {
-			int count = packed.charAt(i++);
-			int value = packed.charAt(i++);
-			do
-				result[j++] = value;
-			while (--count > 0);
-		}
-		return j;
-	}
-
-
-	/**
-	 * Translates a state to a row index in the transition table
-	 */
-	private static final int[] ZZ_ROWMAP = zzUnpackRowMap();
-
-	private static final String ZZ_ROWMAP_PACKED_0 = "\0\0\0\4\0\10\0\14\0\20\0\24\0\30";
-
-	private static int[] zzUnpackRowMap() {
-		int[] result = new int[7];
-		int offset = 0;
-		offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
-		return result;
-	}
-
-	private static int zzUnpackRowMap(String packed, int offset, int[] result) {
-		int i = 0; /* index in packed string */
-		int j = offset; /* index in unpacked array */
-		int l = packed.length();
-		while (i < l) {
-			int high = packed.charAt(i++) << 16;
-			result[j++] = high | packed.charAt(i++);
-		}
-		return j;
-	}
-
-	/**
-	 * The transition table of the DFA
-	 */
-	private static final int ZZ_TRANS[] = {1, 1, -1, 2, -1, -1, -1, -1, 2, 3, 4, 2, 2, 3, 4, 5, -1, 4, 4, 6, 5, 5, 4, 5, 6, 6, -1, 6,};
-
-	/* error codes */
-	private static final int ZZ_UNKNOWN_ERROR = 0;
-	private static final int ZZ_NO_MATCH = 1;
-	private static final int ZZ_PUSHBACK_2BIG = 2;
-
-	/* error messages for the codes above */
-	private static final String ZZ_ERROR_MSG[] = {"Unkown internal scanner error", "Error: could not match input", "Error: pushback value was too large"};
-
-	/**
-	 * ZZ_ATTRIBUTE[aState] contains the attributes of state
-	 * <code>aState</code>
-	 */
-	private static final int[] ZZ_ATTRIBUTE = zzUnpackAttribute();
-
-	private static final String ZZ_ATTRIBUTE_PACKED_0 = "\1\0\1\11\5\1";
-
-	private static int[] zzUnpackAttribute() {
-		int[] result = new int[7];
-		int offset = 0;
-		offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
-		return result;
-	}
-
-	private static int zzUnpackAttribute(String packed, int offset, int[] result) {
-		int i = 0; /* index in packed string */
-		int j = offset; /* index in unpacked array */
-		int l = packed.length();
-		while (i < l) {
-			int count = packed.charAt(i++);
-			int value = packed.charAt(i++);
-			do
-				result[j++] = value;
-			while (--count > 0);
-		}
-		return j;
-	}
-
-	/** the input device */
-	private java.io.Reader zzReader;
-
-	/** the current state of the DFA */
-	private int zzState;
-
-	/** the current lexical state */
-	private int zzLexicalState = YYINITIAL;
-
-	/**
-	 * this buffer contains the current text to be matched and is the source
-	 * of the yytext() string
-	 */
-	private char zzBuffer[] = new char[ZZ_BUFFERSIZE];
-
-	/** the textposition at the last accepting state */
-	private int zzMarkedPos;
-
-	/** the textposition at the last state to be included in yytext */
-	private int zzPushbackPos;
-
-	/** the current text position in the buffer */
-	private int zzCurrentPos;
-
-	/** startRead marks the beginning of the yytext() string in the buffer */
-	private int zzStartRead;
-
-	/**
-	 * endRead marks the last character in the buffer, that has been read from
-	 * input
-	 */
-	private int zzEndRead;
-
-	/** number of newlines encountered up to the start of the matched text */
-	 int yyline;
-
-	/** the number of characters up to the start of the matched text */
-	 int yychar;
-
-	/**
-	 * the number of characters from the last newline up to the start of the
-	 * matched text
-	 */
-	 int yycolumn;
-
-	/**
-	 * zzAtBOL == true <=>the scanner is currently at the beginning of a line
-	 */
-	 boolean zzAtBOL = true;
-
-	/** zzAtEOF == true <=>the scanner is at the EOF */
-	private boolean zzAtEOF;
-
-	/* user code: */
-
-	/**
-	 * Creates a new scanner
-	 */
-	public XML10Names() {
-		this.zzReader = null;
-	}
-
-	public boolean isValidXML10Name(String stringToCheck) {
-		boolean result = false;
-		yyreset(new java.io.StringReader(stringToCheck));
-		try {
-			result = isValidXML10Name();
-		} catch (java.io.IOException e) {
-			// should be impossible with strings, but if occurs, just means
-			// "not"
-			result = false;
-		}
-		return result;
-	}
-
-
-
-	/**
-	 * Creates a new scanner There is also a java.io.InputStream version of
-	 * this constructor.
-	 * 
-	 * @param in
-	 *            the java.io.Reader to read input from.
-	 */
-	public XML10Names(java.io.Reader in) {
-		this.zzReader = in;
-	}
-
-	/**
-	 * Creates a new scanner. There is also java.io.Reader version of this
-	 * constructor.
-	 * 
-	 * @param in
-	 *            the java.io.Inputstream to read input from.
-	 */
-	public XML10Names(java.io.InputStream in) {
-		this(new java.io.InputStreamReader(in));
-	}
-
-	/**
-	 * Unpacks the compressed character translation table.
-	 * 
-	 * @param packed
-	 *            the packed character translation table
-	 * @return the unpacked character translation table
-	 */
-	private static char[] zzUnpackCMap(String packed) {
-		char[] map = new char[0x10000];
-		int i = 0; /* index in packed string */
-		int j = 0; /* index in unpacked array */
-		while (i < 1226) {
-			int count = packed.charAt(i++);
-			char value = packed.charAt(i++);
-			do
-				map[j++] = value;
-			while (--count > 0);
-		}
-		return map;
-	}
-
-
-	/**
-	 * Refills the input buffer.
-	 * 
-	 * @return <code>false</code>, iff there was new input.
-	 * 
-	 * @exception java.io.IOException
-	 *                if any I/O-Error occurs
-	 */
-	private boolean zzRefill() throws java.io.IOException {
-
-		/* first: make room (if you can) */
-		if (zzStartRead > 0) {
-			System.arraycopy(zzBuffer, zzStartRead, zzBuffer, 0, zzEndRead - zzStartRead);
-
-			/* translate stored positions */
-			zzEndRead -= zzStartRead;
-			zzCurrentPos -= zzStartRead;
-			zzMarkedPos -= zzStartRead;
-			zzPushbackPos -= zzStartRead;
-			zzStartRead = 0;
-		}
-
-		/* is the buffer big enough? */
-		if (zzCurrentPos >= zzBuffer.length) {
-			/* if not: blow it up */
-			char newBuffer[] = new char[zzCurrentPos * 2];
-			System.arraycopy(zzBuffer, 0, newBuffer, 0, zzBuffer.length);
-			zzBuffer = newBuffer;
-		}
-
-		/* finally: fill the buffer with new input */
-		int numRead = zzReader.read(zzBuffer, zzEndRead, zzBuffer.length - zzEndRead);
-
-		if (numRead < 0) {
-			return true;
-		} else {
-			zzEndRead += numRead;
-			return false;
-		}
-	}
-
-
-	/**
-	 * Closes the input stream.
-	 */
-	 final void yyclose() throws java.io.IOException {
-		zzAtEOF = true; /* indicate end of file */
-		zzEndRead = zzStartRead; /* invalidate buffer */
-
-		if (zzReader != null)
-			zzReader.close();
-	}
-
-
-	/**
-	 * Resets the scanner to read from a new input stream. Does not close the
-	 * old reader.
-	 * 
-	 * All internal variables are reset, the old input stream <b>cannot </b>
-	 * be reused (internal buffer is discarded and lost). Lexical state is set
-	 * to <tt>ZZ_INITIAL</tt>.
-	 * 
-	 * @param reader
-	 *            the new input stream
-	 */
-	private final void yyreset(java.io.Reader reader) {
-		zzReader = reader;
-		//zzAtBOL = true;
-		zzAtEOF = false;
-		zzEndRead = zzStartRead = 0;
-		zzCurrentPos = zzMarkedPos = zzPushbackPos = 0;
-		yyline = yychar = yycolumn = 0;
-		zzLexicalState = YYINITIAL;
-	}
-
-
-	/**
-	 * Returns the current lexical state.
-	 */
-	 final int yystate() {
-		return zzLexicalState;
-	}
-
-
-	/**
-	 * Enters a new lexical state
-	 * 
-	 * @param newState
-	 *            the new lexical state
-	 */
-	 final void yybegin(int newState) {
-		zzLexicalState = newState;
-	}
-
-
-	/**
-	 * Returns the text matched by the current regular expression.
-	 */
-	 final String yytext() {
-		return new String(zzBuffer, zzStartRead, zzMarkedPos - zzStartRead);
-	}
-
-
-	/**
-	 * Returns the character at position <tt>pos</tt> from the matched text.
-	 * 
-	 * It is equivalent to yytext().charAt(pos), but faster
-	 * 
-	 * @param pos
-	 *            the position of the character to fetch. A value from 0 to
-	 *            yylength()-1.
-	 * 
-	 * @return the character at position pos
-	 */
-	 final char yycharat(int pos) {
-		return zzBuffer[zzStartRead + pos];
-	}
-
-
-	/**
-	 * Returns the length of the matched text region.
-	 */
-	private final int yylength() {
-		return zzMarkedPos - zzStartRead;
-	}
-
-
-	/**
-	 * Reports an error that occured while scanning.
-	 * 
-	 * In a wellformed scanner (no or only correct usage of yypushback(int)
-	 * and a match-all fallback rule) this method will only be called with
-	 * things that "Can't Possibly Happen". If this method is called,
-	 * something is seriously wrong (e.g. a JFlex bug producing a faulty
-	 * scanner etc.).
-	 * 
-	 * Usual syntax/scanner level error handling should be done in error
-	 * fallback rules.
-	 * 
-	 * @param errorCode
-	 *            the code of the errormessage to display
-	 */
-	private void zzScanError(int errorCode) {
-		String message;
-		try {
-			message = ZZ_ERROR_MSG[errorCode];
-		} catch (ArrayIndexOutOfBoundsException e) {
-			message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR];
-		}
-
-		throw new Error(message);
-	}
-
-
-	/**
-	 * Pushes the specified amount of characters back into the input stream.
-	 * 
-	 * They will be read again by then next call of the scanning method
-	 * 
-	 * @param number
-	 *            the number of characters to be read again. This number must
-	 *            not be greater than yylength()!
-	 */
-	 void yypushback(int number) {
-		if (number > yylength())
-			zzScanError(ZZ_PUSHBACK_2BIG);
-
-		zzMarkedPos -= number;
-	}
-
-
-	/**
-	 * Resumes scanning until the next regular expression is matched, the end
-	 * of input is encountered or an I/O-Error occurs.
-	 * 
-	 * @return the next token
-	 * @exception java.io.IOException
-	 *                if any I/O-Error occurs
-	 */
-	private boolean isValidXML10Name() throws java.io.IOException {
-		int zzInput;
-		int zzAction;
-
-		// cached fields:
-		int zzCurrentPosL;
-		int zzMarkedPosL;
-		int zzEndReadL = zzEndRead;
-		char[] zzBufferL = zzBuffer;
-		char[] zzCMapL = ZZ_CMAP;
-
-		int[] zzTransL = ZZ_TRANS;
-		int[] zzRowMapL = ZZ_ROWMAP;
-		int[] zzAttrL = ZZ_ATTRIBUTE;
-
-		while (true) {
-			zzMarkedPosL = zzMarkedPos;
-
-			zzAction = -1;
-
-			zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;
-
-			zzState = zzLexicalState;
-
-
-			zzForAction : {
-				while (true) {
-
-					if (zzCurrentPosL < zzEndReadL)
-						zzInput = zzBufferL[zzCurrentPosL++];
-					else if (zzAtEOF) {
-						zzInput = YYEOF;
-						break zzForAction;
-					} else {
-						// store back cached positions
-						zzCurrentPos = zzCurrentPosL;
-						zzMarkedPos = zzMarkedPosL;
-						boolean eof = zzRefill();
-						// get translated positions and possibly new buffer
-						zzCurrentPosL = zzCurrentPos;
-						zzMarkedPosL = zzMarkedPos;
-						zzBufferL = zzBuffer;
-						zzEndReadL = zzEndRead;
-						if (eof) {
-							zzInput = YYEOF;
-							break zzForAction;
-						} else {
-							zzInput = zzBufferL[zzCurrentPosL++];
-						}
-					}
-					int zzNext = zzTransL[zzRowMapL[zzState] + zzCMapL[zzInput]];
-					if (zzNext == -1)
-						break zzForAction;
-					zzState = zzNext;
-
-					int zzAttributes = zzAttrL[zzState];
-					if ((zzAttributes & 1) == 1) {
-						zzAction = zzState;
-						zzMarkedPosL = zzCurrentPosL;
-						if ((zzAttributes & 8) == 8)
-							break zzForAction;
-					}
-
-				}
-			}
-
-			// store back cached position
-			zzMarkedPos = zzMarkedPosL;
-
-			switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
-				case 1 : {
-					return false;
-				}
-				case 3 :
-					break;
-				case 2 : {
-					return true;
-				}
-				case 4 :
-					break;
-				default :
-					if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
-						zzAtEOF = true;
-						{
-							{
-								return false;
-							}
-						}
-					} else {
-						zzScanError(ZZ_NO_MATCH);
-					}
-			}
-		}
-	}
-
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLRegionContexts.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLRegionContexts.java
deleted file mode 100644
index 5c622ab..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLRegionContexts.java
+++ /dev/null
@@ -1,21 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser;
-
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-/**
- * @deprecated - use org.eclipse.wst.xml.core.parser.XMLRegionContext
- */
-public interface XMLRegionContexts extends XMLRegionContext {
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLSourceParser.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLSourceParser.java
deleted file mode 100644
index b519fcc..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLSourceParser.java
+++ /dev/null
@@ -1,595 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser;
-
-
-
-import java.io.StringReader;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.wst.sse.core.document.DocumentReader;
-import org.eclipse.wst.sse.core.internal.text.CharSequenceReader;
-import org.eclipse.wst.sse.core.internal.text.IRegionComparible;
-import org.eclipse.wst.sse.core.parser.BlockMarker;
-import org.eclipse.wst.sse.core.parser.BlockTagParser;
-import org.eclipse.wst.sse.core.parser.BlockTokenizer;
-import org.eclipse.wst.sse.core.parser.RegionParser;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionHandler;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionParser;
-import org.eclipse.wst.sse.core.parser.StructuredDocumentRegionParserExtension;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.xml.core.internal.Logger;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * Takes input from the HTMLTokenizer and creates a tag list
- */
-
-public class XMLSourceParser implements RegionParser, BlockTagParser, StructuredDocumentRegionParser, IRegionComparible, StructuredDocumentRegionParserExtension {
-	// made public to aid access from inner classes in hierarchy.
-	// TODO: in future, figure out how to solve without exposing data.
-	public CharSequence fCharSequenceSource = null;
-	private IDocument fDocumentInput;
-	protected int fOffset = 0;
-	// DMW: 2/12/03. Removed some state data, since not really needed,
-	// and since it added a lot to overhead (since so many regions are
-	// created.
-	// protected IStructuredDocumentRegion fCurrentNode = null;
-	// protected IStructuredDocumentRegion fNodes = null;
-	// protected List fRegions = null;
-	// protected Object fInput = null;
-	protected String fStringInput = null;
-	protected List fStructuredDocumentRegionHandlers;
-
-	protected BlockTokenizer fTokenizer = null;
-	protected long startTime;
-	protected long stopTime;
-
-	/**
-	 * HTMLSourceParser constructor comment.
-	 */
-	public XMLSourceParser() {
-		super();
-		fStructuredDocumentRegionHandlers = new ArrayList();
-	}
-
-	/**
-	 * This is a simple utility to count nodes. Used only for debug
-	 * statements.
-	 */
-	protected int _countNodes(IStructuredDocumentRegion nodes) {
-		int result = 0;
-		IStructuredDocumentRegion countNode = nodes;
-		while (countNode != null) {
-			result++;
-			countNode = countNode.getNext();
-		}
-		return result;
-	}
-
-	public void addBlockMarker(BlockMarker marker) {
-		getTokenizer().addBlockMarker(marker);
-	}
-
-	public void addStructuredDocumentRegionHandler(StructuredDocumentRegionHandler handler) {
-		if (fStructuredDocumentRegionHandlers == null)
-			fStructuredDocumentRegionHandlers = new ArrayList();
-		fStructuredDocumentRegionHandlers.add(handler);
-	}
-
-	public void beginBlockScan(String newTagName) {
-		getTokenizer().beginBlockTagScan(newTagName);
-	}
-
-	/**
-	 * @return IStructuredDocumentRegion
-	 */
-	protected IStructuredDocumentRegion createStructuredDocumentRegion(String type) {
-		IStructuredDocumentRegion newNode = null;
-		if (type == XMLRegionContext.BLOCK_TEXT)
-			newNode = XMLStructuredRegionFactory.createRegion(XMLStructuredRegionFactory.XML_BLOCK);
-		else
-			newNode = XMLStructuredRegionFactory.createRegion(XMLStructuredRegionFactory.XML);
-		return newNode;
-	}
-
-	protected void fireNodeParsed(IStructuredDocumentRegion fCurrentNode) {
-		if (fCurrentNode != null && fStructuredDocumentRegionHandlers != null) {
-			for (int i = 0; i < fStructuredDocumentRegionHandlers.size(); i++)
-				((StructuredDocumentRegionHandler) fStructuredDocumentRegionHandlers.get(i)).nodeParsed(fCurrentNode);
-		}
-	}
-
-	public BlockMarker getBlockMarker(String tagName) {
-		List markers = getTokenizer().getBlockMarkers();
-		for (int i = 0; i < markers.size(); i++) {
-			BlockMarker marker = (BlockMarker) markers.get(i);
-			if (marker.isCaseSensitive()) {
-				if (marker.getTagName().equals(tagName))
-					return marker;
-			} else {
-				if (marker.getTagName().equalsIgnoreCase(tagName))
-					return marker;
-			}
-		}
-		return null;
-	}
-
-	public List getBlockMarkers() {
-		return getTokenizer().getBlockMarkers();
-	}
-
-	/**
-	 * @return IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getDocumentRegions() {
-		IStructuredDocumentRegion headnode = null;
-		if (headnode == null) {
-			if (Debug.perfTest) {
-				startTime = System.currentTimeMillis();
-			}
-			headnode = parseNodes();
-			if (Debug.perfTest) {
-				stopTime = System.currentTimeMillis();
-				System.out.println(" -- creating nodes of IStructuredDocument -- "); //$NON-NLS-1$
-				System.out.println(" Time parse and init all regions: " + (stopTime - startTime) + " (msecs)"); //$NON-NLS-2$//$NON-NLS-1$
-				//System.out.println(" for " + fRegions.size() + "
-				// Regions");//$NON-NLS-2$//$NON-NLS-1$
-				System.out.println("      and " + _countNodes(headnode) + " Nodes"); //$NON-NLS-2$//$NON-NLS-1$
-			}
-		}
-		return headnode;
-	}
-
-	protected ITextRegion getNextRegion() {
-		ITextRegion region = null;
-		try {
-			region = getTokenizer().getNextToken();
-			// DMW: 2/12/03 Removed state
-			//		if (region != null) {
-			//			fRegions.add(region);
-			//		}
-			return region;
-		} catch (StackOverflowError e) {
-			Logger.logException(getClass().getName() + ": input could not be parsed correctly at position " + getTokenizer().getOffset(), e); //$NON-NLS-1$
-			throw e;
-		} catch (Exception e) {
-			Logger.logException(getClass().getName() + ": input could not be parsed correctly at position " + getTokenizer().getOffset() + " (" + e.getLocalizedMessage() + ")", e); //$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		}
-		return null;
-	}
-
-	/**
-	 * Return the full list of known regions. Typically getNodes should be
-	 * used instead of this method.
-	 */
-	public List getRegions() {
-		IStructuredDocumentRegion headNode = null;
-		if (!getTokenizer().isEOF()) {
-			headNode = getDocumentRegions();
-			//		throw new IllegalStateException("parsing has not finished");
-		}
-		// for memory recovery, we assume if someone
-		// requests all regions, we can reset our big
-		// memory consuming objects
-		// but the new "getRegions" method is then more expensive.
-		// I don't think its used much, though.
-		List localRegionsList = getRegions(headNode);
-		primReset();
-		return localRegionsList;
-	}
-
-	/**
-	 * Method getRegions.
-	 * 
-	 * @param headNode
-	 * @return List
-	 */
-	protected List getRegions(IStructuredDocumentRegion headNode) {
-		List allRegions = new ArrayList();
-		IStructuredDocumentRegion currentNode = headNode;
-		while (currentNode != null) {
-			ITextRegionList nodeRegions = currentNode.getRegions();
-			for (int i = 0; i < nodeRegions.size(); i++) {
-				allRegions.add(nodeRegions.get(i));
-			}
-			currentNode = currentNode.getNext();
-		}
-		return allRegions;
-	}
-
-	/**
-	 * 
-	 * @return java.util.List
-	 */
-	public List getStructuredDocumentRegionHandlers() {
-		if (fStructuredDocumentRegionHandlers == null) {
-			fStructuredDocumentRegionHandlers = new ArrayList(0);
-		}
-		return fStructuredDocumentRegionHandlers;
-	}
-
-	/**
-	 * Returns text from the current input. Text is only valid before
-	 * getNodes() has been called and only when a raw String or DocumentReader
-	 * is given as the input.
-	 */
-	public String getText(int offset, int length) {
-		String text = null;
-		if (fCharSequenceSource != null) {
-			int start = fOffset + offset;
-			int end = start + length;
-			text = fCharSequenceSource.subSequence(start, end).toString();
-		} else if (fDocumentInput != null) {
-			try {
-				text = fDocumentInput.get(offset, length);
-			} catch (BadLocationException e) {
-				text = "";
-			}
-		} else {
-			if (fStringInput == null || fStringInput.length() == 0 || offset + length > fStringInput.length() || offset < 0) {
-				text = ""; //$NON-NLS-1$
-			} else {
-				// offset is entirely valid during parsing as the parse
-				//   numbers haven't been adjusted.
-				text = fStringInput.substring(offset, offset + length);
-			}
-		}
-		return text;
-	}
-
-	protected BlockTokenizer getTokenizer() {
-		if (fTokenizer == null) {
-			fTokenizer = new XMLTokenizer();
-		}
-		return fTokenizer;
-	}
-
-	/**
-	 * @see com.ibm.sed.parser.RegionParser#newInstance()
-	 */
-	public RegionParser newInstance() {
-		XMLSourceParser newInstance = new XMLSourceParser();
-		newInstance.setTokenizer(getTokenizer().newInstance());
-		return newInstance;
-	}
-
-	protected IStructuredDocumentRegion parseNodes() {
-		// regions are initially reported as complete offsets within the
-		// scanned input
-		// they are adjusted here to be indexes from the currentNode's start
-		// offset
-		IStructuredDocumentRegion headNode = null;
-		IStructuredDocumentRegion lastNode = null;
-		ITextRegion region = null;
-		IStructuredDocumentRegion currentNode = null;
-		String type = null;
-
-		while ((region = getNextRegion()) != null) {
-			type = region.getType();
-			// these types (might) demand a IStructuredDocumentRegion for each
-			// of them
-			if (type == XMLRegionContext.BLOCK_TEXT) {
-				if (currentNode != null && currentNode.getLastRegion().getType() == XMLRegionContext.BLOCK_TEXT) {
-					// multiple block texts indicated embedded containers; no
-					// new IStructuredDocumentRegion
-					currentNode.addRegion(region);
-					currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-					region.adjustStart(-currentNode.getStart());
-					// DW 4/16/2003 regions no longer have parents
-					//region.setParent(currentNode);
-				} else {
-					// not continuing a IStructuredDocumentRegion
-					if (currentNode != null) {
-						// ensure that any existing node is at least
-						// terminated
-						if (!currentNode.isEnded()) {
-							currentNode.setLength(region.getStart() - currentNode.getStart());
-							// fCurrentNode.setTextLength(region.getStart() -
-							// fCurrentNode.getStart());
-						}
-						lastNode = currentNode;
-					}
-					fireNodeParsed(currentNode);
-					currentNode = createStructuredDocumentRegion(type);
-					if (lastNode != null) {
-						lastNode.setNext(currentNode);
-					}
-					currentNode.setPrevious(lastNode);
-					currentNode.setStart(region.getStart());
-					currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-					currentNode.setEnded(true);
-					region.adjustStart(-currentNode.getStart());
-					currentNode.addRegion(region);
-					// DW 4/16/2003 regions no longer have parents
-					//region.setParent(currentNode);
-				}
-			}
-			// the following contexts OPEN new StructuredDocumentRegions
-			else if ((currentNode != null && currentNode.isEnded()) || (type == XMLRegionContext.XML_CONTENT) || (type == XMLRegionContext.XML_CHAR_REFERENCE) || (type == XMLRegionContext.XML_ENTITY_REFERENCE) || (type == XMLRegionContext.XML_PI_OPEN) || (type == XMLRegionContext.XML_TAG_OPEN) || (type == XMLRegionContext.XML_END_TAG_OPEN) || (type == XMLRegionContext.XML_COMMENT_OPEN) || (type == XMLRegionContext.XML_CDATA_OPEN) || (type == XMLRegionContext.XML_DECLARATION_OPEN)) {
-				if (currentNode != null) {
-					// ensure that any existing node is at least terminated
-					if (!currentNode.isEnded()) {
-						currentNode.setLength(region.getStart() - currentNode.getStart());
-						// fCurrentNode.setTextLength(region.getStart() -
-						// fCurrentNode.getStart());
-					}
-					lastNode = currentNode;
-				}
-				fireNodeParsed(currentNode);
-				currentNode = createStructuredDocumentRegion(type);
-				if (lastNode != null) {
-					lastNode.setNext(currentNode);
-				}
-				currentNode.setPrevious(lastNode);
-				currentNode.setStart(region.getStart());
-				currentNode.addRegion(region);
-				currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-				region.adjustStart(-currentNode.getStart());
-				// DW 4/16/2003 regions no longer have parents
-				//region.setParent(currentNode);
-			}
-			// the following contexts neither open nor close
-			// StructuredDocumentRegions; just add to them
-			else if ((type == XMLRegionContext.XML_TAG_NAME) || (type == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) || (type == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) || (type == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) || (type == XMLRegionContext.XML_COMMENT_TEXT) || (type == XMLRegionContext.XML_PI_CONTENT) || (type == XMLRegionContext.XML_DOCTYPE_INTERNAL_SUBSET)) {
-				currentNode.addRegion(region);
-				currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-				region.adjustStart(-currentNode.getStart());
-				// DW 4/16/2003 regions no longer have parents
-				//region.setParent(currentNode);
-			}
-			// the following contexts close off StructuredDocumentRegions
-			// cleanly
-			else if ((type == XMLRegionContext.XML_PI_CLOSE) || (type == XMLRegionContext.XML_TAG_CLOSE) || (type == XMLRegionContext.XML_EMPTY_TAG_CLOSE) || (type == XMLRegionContext.XML_COMMENT_CLOSE) || (type == XMLRegionContext.XML_DECLARATION_CLOSE) || (type == XMLRegionContext.XML_CDATA_CLOSE)) {
-				currentNode.setEnded(true);
-				currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-				currentNode.addRegion(region);
-				region.adjustStart(-currentNode.getStart());
-				// DW 4/16/2003 regions no longer have parents
-				//region.setParent(currentNode);
-			}
-			// this is extremely rare, but valid
-			else if (type == XMLRegionContext.WHITE_SPACE) {
-				ITextRegion lastRegion = currentNode.getLastRegion();
-				// pack the embedded container with this region
-				if (lastRegion instanceof ITextRegionContainer) {
-					ITextRegionContainer container = (ITextRegionContainer) lastRegion;
-					container.getRegions().add(region);
-					// containers must have parent set ...
-					// setting for EACH subregion is redundent, but not sure
-					// where else to do, so will do here for now.
-					container.setParent(currentNode);
-					// DW 4/16/2003 regions no longer have parents
-					//region.setParent(container);
-					region.adjustStart(container.getLength() - region.getStart());
-				}
-				currentNode.getLastRegion().adjustLengthWith(region.getLength());
-				currentNode.adjustLengthWith(region.getLength());
-			} else if (type == XMLRegionContext.UNDEFINED && currentNode != null) {
-				// skip on a very-first region situation as the default
-				// behavior is good enough
-				// combine with previous if also undefined
-				if (currentNode.getLastRegion() != null && currentNode.getLastRegion().getType() == XMLRegionContext.UNDEFINED) {
-					currentNode.getLastRegion().adjustLengthWith(region.getLength());
-					currentNode.adjustLengthWith(region.getLength());
-				}
-				// previous wasn't undefined
-				else {
-					currentNode.addRegion(region);
-					currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-					region.adjustStart(-currentNode.getStart());
-				}
-			} else {
-				// if an unknown type is the first region in the document,
-				// ensure that a node exists
-				if (currentNode == null) {
-					currentNode = createStructuredDocumentRegion(type);
-					currentNode.setStart(region.getStart());
-				}
-				currentNode.addRegion(region);
-				currentNode.setLength(region.getStart() + region.getLength() - currentNode.getStart());
-				region.adjustStart(-currentNode.getStart());
-				// DW 4/16/2003 regions no longer have parents
-				//region.setParent(currentNode);
-				if (Debug.debugTokenizer)
-					System.out.println(getClass().getName() + " found region of not specifically handled type " + region.getType() + " @ " + region.getStart() + "[" + region.getLength() + "]"); //$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-			}
-
-			// these regions also get their own node, so close them cleanly
-			// NOTE: these regions have new StructuredDocumentRegions created
-			// for them above; it may
-			// be more readable if that is handled here as well, but the
-			// current layout
-			// ensures that they open StructuredDocumentRegions the same way
-			if ((type == XMLRegionContext.XML_CONTENT) || (type == XMLRegionContext.XML_CHAR_REFERENCE) || (type == XMLRegionContext.XML_ENTITY_REFERENCE)) {
-				currentNode.setEnded(true);
-			}
-			if (headNode == null && currentNode != null) {
-				headNode = currentNode;
-			}
-		}
-		if (currentNode != null) {
-			fireNodeParsed(currentNode);
-			currentNode.setPrevious(lastNode);
-		}
-		//fStringInput = null;
-		primReset();
-		return headNode;
-	}
-
-	protected void primReset() {
-		//fNodes = null;
-		//fRegions = null;
-		//fInput = null;
-		fStringInput = null;
-		fCharSequenceSource = null;
-		fDocumentInput = null;
-		fOffset = 0;
-		//fCurrentNode = null;
-		// DMW: also reset tokenizer so it doesn't hold on
-		// to large arrays
-		getTokenizer().reset(new char[0]);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.internal.text.IRegionComparible#regionMatches(int,
-	 *      int, java.lang.String)
-	 */
-	public boolean regionMatches(int offset, int length, String stringToCompare) {
-		// by definition
-		if (stringToCompare == null)
-			return false;
-
-		boolean result = false;
-		if (fCharSequenceSource != null && fCharSequenceSource instanceof IRegionComparible) {
-			result = ((IRegionComparible) fCharSequenceSource).regionMatches(offset, length, stringToCompare);
-		} else {
-			// old fashioned ways
-			String test = null;
-			if (fCharSequenceSource != null) {
-				test = fCharSequenceSource.subSequence(offset, offset + length).toString();
-			} else if (fStringInput != null) {
-				test = fStringInput.substring(offset, offset + length);
-			}
-			result = stringToCompare.equals(test);
-		}
-		return result;
-	}
-
-	public boolean regionMatchesIgnoreCase(int offset, int length, String stringToCompare) {
-		// by definition
-		if (stringToCompare == null)
-			return false;
-
-		boolean result = false;
-		if (fCharSequenceSource != null && fCharSequenceSource instanceof IRegionComparible) {
-			result = ((IRegionComparible) fCharSequenceSource).regionMatchesIgnoreCase(offset, length, stringToCompare);
-		} else {
-			// old fashioned ways
-			String test = null;
-			if (fCharSequenceSource != null) {
-				test = fCharSequenceSource.subSequence(offset, offset + length).toString();
-			} else if (fStringInput != null) {
-				test = fStringInput.substring(offset, offset + length);
-			}
-			result = stringToCompare.equalsIgnoreCase(test);
-		}
-		return result;
-	}
-
-	public void removeBlockMarker(BlockMarker marker) {
-		getTokenizer().removeBlockMarker(marker);
-	}
-
-	public void removeBlockMarker(String tagName) {
-		getTokenizer().removeBlockMarker(tagName);
-	}
-
-	public void removeStructuredDocumentRegionHandler(StructuredDocumentRegionHandler handler) {
-		if (fStructuredDocumentRegionHandlers == null)
-			return;
-		if (fStructuredDocumentRegionHandlers.contains(handler))
-			fStructuredDocumentRegionHandlers.remove(handler);
-	}
-
-	/**
-	 * Resets the input.
-	 */
-	public void reset(java.io.FileInputStream instream) {
-		primReset();
-		//fInput = instream;
-		getTokenizer().reset(instream);
-	}
-
-	/**
-	 * Resets the input.
-	 */
-	public void reset(java.io.Reader reader) {
-		reset(reader, 0);
-	}
-
-	/**
-	 * Resets the input.
-	 */
-	public void reset(java.io.Reader reader, int position) {
-		primReset();
-		fOffset = position;
-		getTokenizer().reset(reader, position);
-		if (reader instanceof DocumentReader) {
-			IDocument doc = ((DocumentReader) reader).getDocument();
-			if (doc instanceof CharSequence) {
-				fCharSequenceSource = (CharSequence) doc;
-			} else {
-				// old fashioned IDocument
-				fDocumentInput = ((DocumentReader) reader).getDocument();
-			}
-
-		} else if (reader instanceof CharSequenceReader) {
-			fCharSequenceSource = ((CharSequenceReader) reader).getOriginalSource();
-		}
-	}
-
-	/**
-	 * Resets the input. Use this version to allow text to be retrieved
-	 * <em>during</em> parsing, such as by the
-	 * StructuredDocumentRegionHandler.
-	 */
-	public void reset(String sourceString) {
-		reset(new StringReader(sourceString));
-		fStringInput = sourceString;
-	}
-
-	/**
-	 * Resets the input. Use this version to allow text to be retrieved
-	 * <em>during</em> parsing, such as by the
-	 * StructuredDocumentRegionHandler.
-	 */
-	public void reset(String sourceString, int position) {
-		StringReader reader = new StringReader(sourceString);
-		reset(reader, position);
-		fStringInput = sourceString;
-	}
-
-	public void resetHandlers() {
-		if (fStructuredDocumentRegionHandlers != null) {
-			int size = fStructuredDocumentRegionHandlers.size();
-			for (int i = 0; i < size; i++)
-				((StructuredDocumentRegionHandler) fStructuredDocumentRegionHandlers.get(i)).resetNodes();
-		}
-	}
-
-	/**
-	 * 
-	 * @param List
-	 */
-	public void setStructuredDocumentRegionHandlers(List newStructuredDocumentRegionHandlers) {
-		fStructuredDocumentRegionHandlers = newStructuredDocumentRegionHandlers;
-	}
-
-	protected void setTokenizer(BlockTokenizer newTokenizer) {
-		// DMW: changed from private to protected, so subclass could use in
-		// creation of 'newInstance'.
-		fTokenizer = newTokenizer;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLStructuredDocumentReParser.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLStructuredDocumentReParser.java
deleted file mode 100644
index 8442a89..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLStructuredDocumentReParser.java
+++ /dev/null
@@ -1,124 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser;
-
-import org.eclipse.wst.sse.core.internal.text.StructuredDocumentReParser;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredTextReParser;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class XMLStructuredDocumentReParser extends StructuredDocumentReParser {
-
-	public XMLStructuredDocumentReParser() {
-		super();
-	}
-
-	protected IStructuredDocumentRegion findDirtyEnd(int end) {
-		// Caution: here's one place we have to cast
-		IStructuredDocumentRegion result = fStructuredDocument.getRegionAtCharacterOffset(end);
-		// if not well formed, get one past, if there is something there
-		if ((result != null) && (!result.isEnded())) {
-			if (result.getNext() != null) {
-				result = result.getNext();
-			}
-		}
-		// also, get one past if exactly equal to the end (this was needed
-		// as a simple fix to when a whole exact region is deleted.
-		// there's probably a better way.
-		if ((result != null) && (end == result.getEnd())) {
-			if (result.getNext() != null) {
-				result = result.getNext();
-			}
-		}
-
-		// 12/6/2001 - Since we've changed the parser/scanner to allow a lone
-		// '<' without
-		// always interpretting it as start of a tag name, we need to be a
-		// little fancier, in order
-		// to "skip" over any plain 'ol content between the lone '<' and any
-		// potential meating
-		// regions past plain 'ol content.
-		if (isLoneOpenFollowedByContent(result) && (result.getNext() != null)) {
-			result = result.getNext();
-		}
-
-		if (result != null)
-			fStructuredDocument.setCachedDocumentRegion(result);
-		dirtyEnd = result;
-
-		return dirtyEnd;
-	}
-
-	protected void findDirtyStart(int start) {
-		IStructuredDocumentRegion result = fStructuredDocument.getRegionAtCharacterOffset(start);
-		// heuristic: if the postion is exactly equal to the start, then
-		// go back one more, if it exists. This prevents problems with
-		// insertions
-		// of text that should be merged with the previous node instead of
-		// simply hung
-		// off of it as a separate node (ex.: XML content inserted right
-		// before an open
-		// bracket should become part of the previous content node)
-		if (result != null) {
-			IStructuredDocumentRegion previous = result.getPrevious();
-			if ((previous != null) && ((!(previous.isEnded())) || (start == result.getStart()))) {
-				result = previous;
-			}
-			// If we are now at the end of a "tag dependent" content area (or
-			// JSP area)
-			// then we need to back up all the way to the beginning of that.
-			IStructuredDocumentRegion potential = result;
-			while (isPartOfBlockRegion(potential)) {
-				potential = potential.getPrevious();
-			}
-			if (potential != null) {
-				result = potential;
-				fStructuredDocument.setCachedDocumentRegion(result);
-			}
-		}
-		dirtyStart = result;
-	}
-
-	/**
-	 * The rule is, that is we are content, preceded by lone <, then we need
-	 * to advance one more for dirty end.
-	 */
-	protected boolean isLoneOpenFollowedByContent(IStructuredDocumentRegion flatNode) {
-		boolean result = false;
-		String type = flatNode.getType();
-		if (type == XMLRegionContext.XML_CONTENT) {
-			IStructuredDocumentRegion previous = flatNode.getPrevious();
-			String previousType = null;
-			if (previous != null) {
-				previousType = previous.getType();
-			}
-			if (previousType != null) {
-				result = (previousType == XMLRegionContext.XML_TAG_OPEN);
-			}
-		}
-		return result;
-	}
-
-	protected boolean isPartOfBlockRegion(IStructuredDocumentRegion flatNode) {
-		boolean result = false;
-		String type = flatNode.getType();
-		result = (type == XMLRegionContext.BLOCK_TEXT);
-		return result;
-	}
-
-	public IStructuredTextReParser newInstance() {
-		return new XMLStructuredDocumentReParser();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLStructuredRegionFactory.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLStructuredRegionFactory.java
deleted file mode 100644
index 0411d66..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLStructuredRegionFactory.java
+++ /dev/null
@@ -1,42 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.internal.text.XMLStructuredDocumentRegion;
-
-
-/**
- * A simple class to generate instances of StructuredRegions.
- */
-public class XMLStructuredRegionFactory {
-	public final static int JSP_DIRECTIVE = 1003;
-	public final static int XML = 1001;
-	public final static int XML_BLOCK = 1002;
-
-	public static IStructuredDocumentRegion createRegion(int type) {
-		IStructuredDocumentRegion instance = null;
-		switch (type) {
-			case XML :
-				instance = new XMLStructuredDocumentRegion();
-				break;
-			case XML_BLOCK :
-				instance = new BlockStructuredDocumentRegion();
-				break;
-			default :
-				throw new IllegalArgumentException("AbstractRegion::createRegion. Invalid type."); //$NON-NLS-1$
-		}
-		return instance;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLTokenizer.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLTokenizer.java
deleted file mode 100644
index 0943d20..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/XMLTokenizer.java
+++ /dev/null
@@ -1,1882 +0,0 @@
-/* The following code was generated by JFlex 1.2.2 on 1/27/05 4:48 PM */
-
-/*******************************************************************************
- * Copyright (c) 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
- *******************************************************************************/
-/*nlsXXX*/
-package org.eclipse.wst.xml.core.internal.parser;
-
-import java.io.CharArrayReader;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.sse.core.parser.BlockMarker;
-import org.eclipse.wst.sse.core.parser.BlockTokenizer;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.internal.Logger;
-import org.eclipse.wst.xml.core.internal.parser.regions.XMLParserRegionFactory;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * This class is a scanner generated by 
- * <a href="http://www.informatik.tu-muenchen.de/~kleing/jflex/">JFlex</a> 1.2.2
- * on 1/27/05 4:48 PM from the specification file
- * <tt>file:/D:/eclipse.wtp/workspace/org.eclipse.wst.sse.core/DevTimeSupport/SedModel/HTMLTokenizer/devel/XMLTokenizer.jflex</tt>
- */
-public class XMLTokenizer implements BlockTokenizer, XMLRegionContext {
-
-  /** this character denotes the end of file */
-  final public static int YYEOF = -1;
-
-  /** lexical states */
-  final public static int ST_XML_DOCTYPE_EXTERNAL_ID = 23;
-  final public static int ST_XML_ELEMENT_DECLARATION_CONTENT = 27;
-  final public static int ST_DHTML_ATTRIBUTE_NAME = 12;
-  final public static int ST_XML_PI_TAG_CLOSE = 11;
-  final public static int ST_XML_DECLARATION_CLOSE = 21;
-  final public static int ST_XML_PI_ATTRIBUTE_VALUE = 10;
-  final public static int ST_DHTML_EQUALS = 13;
-  final public static int ST_XML_TAG_NAME = 16;
-  final public static int ST_XML_ATTRIBUTE_VALUE = 19;
-  final public static int ST_DHTML_ATTRIBUTE_VALUE = 14;
-  final public static int ST_XML_DOCTYPE_ID_SYSTEM = 25;
-  final public static int ST_XML_ATTRIBUTE_NAME = 17;
-  final public static int ST_XML_ELEMENT_DECLARATION = 26;
-  final public static int ST_XML_DOCTYPE_DECLARATION = 22;
-  final public static int ST_XML_ATTLIST_DECLARATION = 28;
-  final public static int ST_XML_COMMENT_END = 4;
-  final public static int ST_CDATA_TEXT = 1;
-  final public static int ST_DHTML_TAG_CLOSE = 15;
-  final public static int ST_XML_COMMENT = 3;
-  final public static int ST_PI_CONTENT = 7;
-  final public static int ST_PI_WS = 6;
-  final public static int ST_CDATA_END = 2;
-  final public static int ST_XML_ATTLIST_DECLARATION_CONTENT = 29;
-  final public static int ST_BLOCK_TAG_SCAN = 30;
-  final public static int ST_XML_PI_EQUALS = 9;
-  final public static int ST_XML_DECLARATION = 20;
-  final public static int YYINITIAL = 0;
-  final public static int ST_XML_DOCTYPE_ID_PUBLIC = 24;
-  final public static int ST_XML_EQUALS = 18;
-  final public static int ST_PI = 5;
-  final public static int ST_XML_PI_ATTRIBUTE_NAME = 8;
-
-  /** 
-   * Translates characters to character classes
-   */
-  final private static String yycmap_packed = 
-    "\11\0\1\5\1\22\2\0\1\14\22\0\1\14\1\21\1\11\1\51"+
-    "\1\16\1\17\1\12\1\13\1\16\1\16\1\16\1\16\1\16\1\7"+
-    "\1\6\1\3\12\15\1\10\1\54\1\1\1\43\1\2\1\4\1\16"+
-    "\1\32\1\55\1\30\1\31\1\35\1\52\1\34\1\34\1\40\1\34"+
-    "\1\34\1\26\1\25\1\42\1\41\1\45\1\34\1\36\1\37\1\33"+
-    "\1\53\2\34\1\23\1\44\1\34\1\27\1\0\1\20\1\0\1\10"+
-    "\1\0\1\47\1\55\1\56\1\50\1\35\1\52\1\34\1\34\1\40"+
-    "\2\34\1\26\1\25\1\42\1\41\1\45\1\34\1\36\1\37\1\46"+
-    "\1\53\1\34\1\34\1\24\1\44\1\34\1\0\1\0\72\0\1\60"+
-    "\10\0\27\57\1\0\37\57\1\0\72\57\2\0\13\57\2\0\10\57"+
-    "\1\0\65\57\1\0\104\57\11\0\44\57\3\0\2\57\4\0\36\57"+
-    "\70\0\131\57\22\0\7\57\16\0\2\60\56\0\106\60\32\0\2\60"+
-    "\44\0\1\57\1\60\3\57\1\0\1\57\1\0\24\57\1\0\54\57"+
-    "\1\0\7\57\3\0\1\57\1\0\1\57\1\0\1\57\1\0\1\57"+
-    "\1\0\22\57\15\0\14\57\1\0\102\57\1\0\14\57\1\0\44\57"+
-    "\1\0\4\60\11\0\65\57\2\0\2\57\2\0\2\57\3\0\34\57"+
-    "\2\0\10\57\2\0\2\57\67\0\46\57\2\0\1\57\7\0\46\57"+
-    "\12\0\21\60\1\0\27\60\1\0\3\60\1\0\1\60\1\0\2\60"+
-    "\1\0\1\60\13\0\33\57\5\0\3\57\56\0\32\57\5\0\1\60"+
-    "\12\57\10\60\15\0\12\60\6\0\1\60\107\57\2\0\5\57\1\0"+
-    "\17\57\1\0\4\57\1\0\1\57\17\60\2\57\2\60\1\0\4\60"+
-    "\2\0\12\60\u0207\0\3\60\1\0\65\57\2\0\1\60\1\57\20\60"+
-    "\3\0\4\60\3\0\12\57\2\60\2\0\12\60\21\0\3\60\1\0"+
-    "\10\57\2\0\2\57\2\0\26\57\1\0\7\57\1\0\1\57\3\0"+
-    "\4\57\2\0\1\60\1\0\7\60\2\0\2\60\2\0\3\60\11\0"+
-    "\1\60\4\0\2\57\1\0\3\57\2\60\2\0\12\60\2\57\20\0"+
-    "\1\60\2\0\6\57\4\0\2\57\2\0\26\57\1\0\7\57\1\0"+
-    "\2\57\1\0\2\57\1\0\2\57\2\0\1\60\1\0\5\60\4\0"+
-    "\2\60\2\0\3\60\13\0\4\57\1\0\1\57\7\0\12\60\2\60"+
-    "\3\57\14\0\3\60\1\0\7\57\1\0\1\57\1\0\3\57\1\0"+
-    "\26\57\1\0\7\57\1\0\2\57\1\0\5\57\2\0\1\60\1\57"+
-    "\10\60\1\0\3\60\1\0\3\60\22\0\1\57\5\0\12\60\21\0"+
-    "\3\60\1\0\10\57\2\0\2\57\2\0\26\57\1\0\7\57\1\0"+
-    "\2\57\2\0\4\57\2\0\1\60\1\57\6\60\3\0\2\60\2\0"+
-    "\3\60\10\0\2\60\4\0\2\57\1\0\3\57\4\0\12\60\22\0"+
-    "\2\60\1\0\6\57\3\0\3\57\1\0\4\57\3\0\2\57\1\0"+
-    "\1\57\1\0\2\57\3\0\2\57\3\0\3\57\3\0\10\57\1\0"+
-    "\3\57\4\0\5\60\3\0\3\60\1\0\4\60\11\0\1\60\17\0"+
-    "\11\60\21\0\3\60\1\0\10\57\1\0\3\57\1\0\27\57\1\0"+
-    "\12\57\1\0\5\57\4\0\7\60\1\0\3\60\1\0\4\60\7\0"+
-    "\2\60\11\0\2\57\4\0\12\60\22\0\2\60\1\0\10\57\1\0"+
-    "\3\57\1\0\27\57\1\0\12\57\1\0\5\57\4\0\7\60\1\0"+
-    "\3\60\1\0\4\60\7\0\2\60\7\0\1\57\1\0\2\57\4\0"+
-    "\12\60\22\0\2\60\1\0\10\57\1\0\3\57\1\0\27\57\1\0"+
-    "\20\57\4\0\6\60\2\0\3\60\1\0\4\60\11\0\1\60\10\0"+
-    "\2\57\4\0\12\60\221\0\56\57\1\0\1\57\1\60\2\57\7\60"+
-    "\5\0\6\57\1\60\10\60\1\0\12\60\47\0\2\57\1\0\1\57"+
-    "\2\0\2\57\1\0\1\57\2\0\1\57\6\0\4\57\1\0\7\57"+
-    "\1\0\3\57\1\0\1\57\1\0\1\57\2\0\2\57\1\0\2\57"+
-    "\1\0\1\57\1\60\2\57\6\60\1\0\2\60\1\57\2\0\5\57"+
-    "\1\0\1\60\1\0\6\60\2\0\12\60\76\0\2\60\6\0\12\60"+
-    "\13\0\1\60\1\0\1\60\1\0\1\60\4\0\2\60\10\57\1\0"+
-    "\41\57\7\0\24\60\1\0\6\60\4\0\6\60\1\0\1\60\1\0"+
-    "\25\60\3\0\7\60\1\0\1\60\346\0\46\57\12\0\47\57\11\0"+
-    "\1\57\1\0\2\57\1\0\3\57\1\0\1\57\1\0\2\57\1\0"+
-    "\5\57\51\0\1\57\1\0\1\57\1\0\1\57\13\0\1\57\1\0"+
-    "\1\57\1\0\1\57\3\0\2\57\3\0\1\57\5\0\3\57\1\0"+
-    "\1\57\1\0\1\57\1\0\1\57\1\0\1\57\3\0\2\57\3\0"+
-    "\2\57\1\0\1\57\50\0\1\57\11\0\1\57\2\0\1\57\2\0"+
-    "\2\57\7\0\2\57\1\0\1\57\1\0\7\57\50\0\1\57\4\0"+
-    "\1\57\10\0\1\57\u0c06\0\234\57\4\0\132\57\6\0\26\57\2\0"+
-    "\6\57\2\0\46\57\2\0\6\57\2\0\10\57\1\0\1\57\1\0"+
-    "\1\57\1\0\1\57\1\0\37\57\2\0\65\57\1\0\7\57\1\0"+
-    "\1\57\3\0\3\57\1\0\7\57\3\0\4\57\2\0\6\57\4\0"+
-    "\15\57\5\0\3\57\1\0\7\57\323\0\15\60\4\0\1\60\104\0"+
-    "\1\57\3\0\2\57\2\0\1\57\121\0\3\57\u0e82\0\1\60\1\0"+
-    "\1\57\31\0\11\57\6\60\1\0\5\60\13\0\124\57\4\0\2\60"+
-    "\2\0\2\60\2\0\132\57\1\0\3\60\6\0\50\57\u1cd3\0\u51a6\57"+
-    "\u0c5a\0\u2ba4\57\134\0\u0800\0\u1ffe\0\2\0";
-
-  /** 
-   * Translates characters to character classes
-   */
-  final private static char [] yycmap = yy_unpack_cmap(yycmap_packed);
-
-  /** 
-   * Translates a state to a row index in the transition table
-   */
-  final private static int yy_rowMap [] = { 
-        0,    49,    98,   147,   196,   245,   294,   343,   392,   441, 
-      490,   539,   588,   637,   686,   735,   784,   833,   882,   931, 
-      980,  1029,  1078,  1127,  1176,  1225,  1274,  1323,  1372,  1421, 
-     1470,  1519,  1568,  1617,  1666,  1715,  1764,  1715,  1764,  1813, 
-     1715,  1715,  1764,  1862,  1911,  1960,  2009,  2058,  2107,  2156, 
-     1715,  1764,  2205,  2254,  2303,  1715,  2352,  2352,  2401,  2450, 
-     2499,  2205,  1715,  2548,  2597,  1715,  2646,  2695,  2744,  2793, 
-     2842,  2891,  1715,  2940,  2989,  3038,  3087,  1715,  3136,  3185, 
-     3234,  3283,  3332,  1715,  3381,  3430,  3479,  3528,  3577,  3626, 
-     3675,  3724,  3724,  3773,  3822,  3871,  3920,  3920,  3969,  4018, 
-     4067,  4116,  4116,  4165,  4214,  4263,  4312,  1715,  4361,  4361, 
-     4410,  4459,  4508,  4557,  1715,  1715,  1764,  1715,  1715,  4606, 
-     4655,  4704,  4753,  4802,  4851,  4900,  4949,  1715,  4998,  5047, 
-     1715,  1715,  2352,  5096,  2450,  1715,  5145,  2499,  2548,  2646, 
-     2695,  5194,  2744,  1715,  5243,  2793,  1715,  3136,  5292,  3234, 
-     1715,  5341,  3283,  4606,  5390,  5439,  5488,  3528,  1715,  5537, 
-     5586,  3724,  5635,  3773,  1715,  5684,  5733,  5782,  5782,  5831, 
-     5880,  3871,  3724,  3920,  5929,  3969,  1715,  5978,  4018,  4067, 
-     3920,  4116,  6027,  4165,  1715,  6076,  6125,  6174,  6174,  6223, 
-     6272,  6321,  4361,  6370,  4410,  1715,  6419,  6468,  6517,  6517, 
-     6566,  6615,  6664,  6713,  6762,  6811,  6860,  1715,  6909,  6958, 
-     1715,  1715,  1715,  2009,  7007,  7056,  7105,  7154,  7203,  7252, 
-     5684,  7301,  7301,  6076,  7350,  7350,  7399,  6419,  7448,  7448, 
-     7497,  1715,  7546,  7595,  1715,  7644,  7693,  7742,  7791,  7840, 
-     7889,  7938,  5831,  6223,  7987,  6566,  8036,  8085,  8134,  8183, 
-     8232,  8281,  8330,  8379,  8428,  8477,  8526,  8575,  8624,  8673, 
-     8722,  1715,  1715,  8771,  8820,  8869,  8918,  1715,  1715,  1715, 
-     8967,  9016,  9065,  9114,  9163,  1715,  4263,  4508
-  };
-
-  /** 
-   * The packed transition table of the DFA
-   */
-  final private static String yy_packed = 
-    "\1\40\1\41\10\40\1\42\4\40\1\43\41\40\1\44"+
-    "\1\45\57\44\1\46\1\47\16\46\1\50\1\46\1\51"+
-    "\36\46\1\52\1\53\57\52\1\46\1\47\5\46\1\54"+
-    "\12\46\1\51\37\46\1\47\2\46\1\55\1\56\2\46"+
-    "\1\57\3\46\1\56\5\46\1\56\2\60\2\57\1\46"+
-    "\10\57\1\61\2\57\1\46\5\57\1\46\2\57\1\46"+
-    "\3\57\2\46\1\47\2\46\1\55\1\62\6\46\1\62"+
-    "\5\46\1\62\36\46\1\63\1\64\2\63\1\65\15\63"+
-    "\1\51\36\63\1\46\1\47\2\46\1\66\1\56\2\46"+
-    "\1\67\3\46\1\56\5\46\1\56\4\67\1\46\13\67"+
-    "\1\46\5\67\1\46\2\67\1\46\3\67\2\46\1\47"+
-    "\2\46\1\66\1\56\2\46\1\67\3\46\1\56\5\46"+
-    "\1\56\4\67\1\46\13\67\1\70\5\67\1\46\2\67"+
-    "\1\46\3\67\1\46\1\71\1\47\1\46\1\72\1\73"+
-    "\1\56\3\71\1\74\1\71\1\75\1\56\5\71\1\56"+
-    "\36\71\1\46\1\47\2\46\1\76\15\46\1\51\37\46"+
-    "\1\47\1\77\1\100\1\46\1\56\2\46\1\101\3\46"+
-    "\1\56\5\46\1\56\4\101\1\46\13\101\1\46\5\101"+
-    "\1\46\2\101\1\46\3\101\2\46\1\47\1\77\1\100"+
-    "\1\46\1\56\2\46\1\101\3\46\1\56\5\46\1\56"+
-    "\4\101\1\46\13\101\1\102\5\101\1\46\2\101\1\46"+
-    "\3\101\1\46\1\103\1\47\1\77\1\104\1\103\1\56"+
-    "\3\103\1\105\1\103\1\106\1\56\5\103\1\56\36\103"+
-    "\1\46\1\47\3\46\1\56\6\46\1\56\5\46\1\56"+
-    "\36\46\1\107\1\110\1\111\1\112\4\107\1\113\12\107"+
-    "\4\114\1\107\13\114\1\107\5\114\1\107\2\114\1\107"+
-    "\3\114\1\107\1\46\1\110\1\111\1\112\1\46\1\56"+
-    "\2\46\1\115\3\46\1\56\5\46\1\56\4\115\1\46"+
-    "\13\115\1\46\5\115\1\46\2\115\1\46\3\115\2\46"+
-    "\1\110\1\111\1\112\1\46\1\56\2\46\1\115\3\46"+
-    "\1\56\5\46\1\56\4\115\1\46\13\115\1\116\5\115"+
-    "\1\46\2\115\1\46\3\115\1\46\1\117\1\110\1\111"+
-    "\1\120\1\117\1\56\3\117\1\121\1\117\1\122\1\56"+
-    "\5\117\1\56\36\117\1\46\1\123\1\124\2\46\1\56"+
-    "\6\46\1\56\5\46\1\56\6\46\1\125\1\126\2\46"+
-    "\1\127\11\46\1\126\1\125\11\46\1\47\1\124\2\46"+
-    "\1\56\6\46\1\56\5\46\1\56\4\46\1\130\32\46"+
-    "\1\47\1\124\2\46\1\56\2\46\1\131\3\46\1\56"+
-    "\5\46\1\56\4\131\1\130\13\131\1\46\5\131\1\46"+
-    "\2\131\1\46\3\131\2\46\1\47\1\124\2\46\1\56"+
-    "\6\46\1\56\5\46\1\56\4\46\1\130\7\46\1\132"+
-    "\5\46\1\133\13\46\1\134\1\47\1\124\1\135\1\134"+
-    "\1\56\3\134\1\136\1\134\1\137\1\56\5\134\1\56"+
-    "\4\134\1\140\31\134\1\141\1\47\1\124\1\142\1\141"+
-    "\1\56\3\141\1\143\1\141\1\144\1\56\5\141\1\56"+
-    "\4\141\1\145\31\141\1\146\1\47\1\124\1\147\1\146"+
-    "\1\56\3\146\1\150\1\146\1\151\1\56\5\146\1\56"+
-    "\36\146\1\152\1\153\1\154\56\152\1\155\1\47\1\124"+
-    "\1\156\1\155\1\56\3\155\1\157\1\155\1\160\1\56"+
-    "\5\155\1\56\36\155\1\161\1\162\1\163\56\161\1\164"+
-    "\1\165\57\164\1\40\1\0\10\40\1\0\4\40\1\0"+
-    "\41\40\3\0\1\166\1\167\14\0\1\170\44\0\1\171"+
-    "\2\0\1\172\3\0\1\171\5\0\1\171\4\172\1\0"+
-    "\13\172\1\0\5\172\1\173\2\172\1\0\3\172\6\0"+
-    "\1\171\2\0\1\174\3\0\1\171\5\0\1\171\4\174"+
-    "\1\0\13\174\1\0\5\174\1\0\2\174\1\0\3\174"+
-    "\103\0\1\175\57\0\1\176\47\0\1\177\53\0\1\200"+
-    "\63\0\1\56\6\0\1\56\5\0\1\56\44\0\3\57"+
-    "\4\0\1\57\5\0\4\57\1\0\13\57\1\0\5\57"+
-    "\1\0\2\57\1\0\4\57\6\0\3\57\4\0\1\57"+
-    "\5\0\2\57\1\201\1\57\1\0\13\57\1\0\5\57"+
-    "\1\0\2\57\1\0\4\57\6\0\3\57\4\0\1\57"+
-    "\5\0\2\57\1\202\1\57\1\0\13\57\1\0\5\57"+
-    "\1\0\2\57\1\0\4\57\5\0\1\62\6\0\1\62"+
-    "\5\0\1\62\40\0\1\203\60\0\1\204\64\0\3\67"+
-    "\4\0\1\67\5\0\4\67\1\0\13\67\1\0\5\67"+
-    "\1\0\2\67\1\0\4\67\1\71\2\0\1\205\1\71"+
-    "\1\0\3\71\1\0\1\71\2\0\5\71\1\0\37\71"+
-    "\1\0\1\204\1\205\1\71\1\0\3\71\1\0\1\71"+
-    "\2\0\5\71\1\0\36\71\1\74\1\0\1\206\1\207"+
-    "\1\74\1\206\3\74\1\210\1\74\2\206\5\74\1\206"+
-    "\36\74\1\75\1\0\1\211\1\212\1\75\1\211\3\75"+
-    "\1\211\1\75\1\210\1\211\5\75\1\211\36\75\2\0"+
-    "\1\77\1\213\63\0\3\101\4\0\1\101\5\0\4\101"+
-    "\1\0\13\101\1\0\5\101\1\0\2\101\1\0\4\101"+
-    "\1\103\2\0\1\214\1\103\1\0\3\103\1\0\1\103"+
-    "\2\0\5\103\1\0\37\103\1\0\1\77\1\215\1\103"+
-    "\1\0\3\103\1\0\1\103\2\0\5\103\1\0\36\103"+
-    "\1\105\1\0\1\216\1\217\1\105\1\216\3\105\1\220"+
-    "\1\105\2\216\5\105\1\216\36\105\1\106\1\0\1\221"+
-    "\1\222\1\106\1\221\3\106\1\221\1\106\1\220\1\221"+
-    "\5\106\1\221\36\106\1\107\3\0\17\107\4\0\1\107"+
-    "\13\0\1\107\5\0\1\107\2\0\1\107\3\0\1\107"+
-    "\3\0\1\166\15\0\1\170\41\0\1\223\56\0\1\107"+
-    "\3\0\2\107\3\113\4\107\1\113\5\107\4\114\1\107"+
-    "\13\114\1\107\5\114\1\107\2\114\1\107\3\114\1\113"+
-    "\6\0\3\114\4\0\1\114\5\0\4\114\1\0\13\114"+
-    "\1\0\5\114\1\0\2\114\1\0\4\114\6\0\3\115"+
-    "\4\0\1\115\5\0\4\115\1\0\13\115\1\0\5\115"+
-    "\1\0\2\115\1\0\4\115\1\117\2\0\1\224\1\117"+
-    "\1\0\3\117\1\0\1\117\2\0\5\117\1\0\37\117"+
-    "\1\0\1\223\1\224\1\117\1\0\3\117\1\0\1\117"+
-    "\2\0\5\117\1\0\36\117\1\121\1\0\1\225\1\226"+
-    "\1\121\1\225\3\121\1\227\1\121\2\225\5\121\1\225"+
-    "\36\121\1\122\1\0\1\230\1\231\1\122\1\230\3\122"+
-    "\1\230\1\122\1\227\1\230\5\122\1\230\36\122\3\0"+
-    "\1\166\15\0\1\232\100\0\1\233\52\0\1\234\12\0"+
-    "\1\234\40\0\1\235\32\0\20\236\1\237\40\236\6\0"+
-    "\3\131\4\0\1\131\5\0\4\131\1\0\13\131\1\0"+
-    "\5\131\1\0\2\131\1\0\4\131\44\0\1\240\67\0"+
-    "\1\241\5\0\1\134\2\0\1\242\1\134\1\0\3\134"+
-    "\1\0\1\134\2\0\5\134\1\0\36\134\1\136\1\0"+
-    "\1\243\1\244\1\136\1\243\3\136\1\245\1\136\2\243"+
-    "\5\136\1\243\36\136\1\246\1\0\1\247\1\250\1\251"+
-    "\1\247\3\251\1\247\1\246\1\252\1\253\3\251\1\246"+
-    "\1\251\1\253\4\251\1\246\27\251\2\246\1\140\2\236"+
-    "\1\254\1\140\1\236\3\140\1\236\1\140\2\236\3\140"+
-    "\1\255\1\140\1\236\36\140\1\141\2\0\1\256\1\141"+
-    "\1\0\3\141\1\0\1\141\2\0\5\141\1\0\36\141"+
-    "\1\143\2\257\1\260\1\143\1\257\3\143\1\261\1\143"+
-    "\2\257\5\143\1\257\36\143\1\144\2\262\1\263\1\144"+
-    "\1\262\3\144\1\262\1\144\1\261\1\262\5\144\1\262"+
-    "\36\144\1\145\2\236\1\264\1\145\1\236\3\145\1\236"+
-    "\1\145\2\236\3\145\1\265\1\145\1\236\36\145\1\146"+
-    "\2\0\1\266\1\146\1\0\3\146\1\0\1\146\2\0"+
-    "\5\146\1\0\36\146\1\150\1\0\1\267\1\270\1\150"+
-    "\1\267\3\150\1\271\1\150\2\267\5\150\1\267\36\150"+
-    "\1\272\1\0\1\273\1\274\1\275\1\273\3\275\1\273"+
-    "\1\272\1\276\1\277\3\275\1\272\1\275\1\277\4\275"+
-    "\1\272\27\275\2\272\2\152\1\0\60\152\1\0\16\152"+
-    "\1\300\37\152\1\155\2\0\1\301\1\155\1\0\3\155"+
-    "\1\0\1\155\2\0\5\155\1\0\36\155\1\157\1\0"+
-    "\1\302\1\303\1\157\1\302\3\157\1\304\1\157\2\302"+
-    "\5\157\1\302\36\157\1\305\1\0\1\306\1\307\1\310"+
-    "\1\306\3\310\1\306\1\305\1\311\1\312\3\310\1\305"+
-    "\1\310\1\312\4\310\1\305\27\310\2\305\2\161\1\0"+
-    "\60\161\1\0\16\161\1\313\37\161\7\0\1\314\17\0"+
-    "\1\315\36\0\1\171\2\0\1\40\3\0\1\171\5\0"+
-    "\1\171\4\40\1\0\13\40\1\0\5\40\1\0\2\40"+
-    "\1\0\3\40\1\0\1\316\1\0\3\316\1\317\3\172"+
-    "\1\316\1\0\1\316\1\317\1\172\1\316\1\0\2\316"+
-    "\1\317\4\172\1\316\13\172\1\316\5\172\1\316\2\172"+
-    "\1\320\4\172\15\0\1\321\6\0\1\322\34\0\1\316"+
-    "\1\0\3\316\1\317\3\174\1\316\1\0\1\316\1\317"+
-    "\1\174\1\316\1\0\2\316\1\317\4\174\1\316\13\174"+
-    "\1\316\5\174\1\316\2\174\1\323\4\174\27\0\1\315"+
-    "\33\0\1\324\60\0\1\325\64\0\3\57\4\0\1\57"+
-    "\5\0\3\57\1\326\1\0\13\57\1\0\5\57\1\0"+
-    "\2\57\1\0\4\57\6\0\3\57\4\0\1\57\5\0"+
-    "\4\57\1\0\13\57\1\0\1\57\1\327\3\57\1\0"+
-    "\2\57\1\0\4\57\1\206\1\0\7\206\1\210\47\206"+
-    "\1\211\1\0\11\211\1\210\45\211\1\216\1\0\7\216"+
-    "\1\220\47\216\1\221\1\0\11\221\1\220\45\221\1\225"+
-    "\1\0\7\225\1\227\47\225\1\230\1\0\11\230\1\227"+
-    "\45\230\30\0\1\330\25\0\1\330\35\0\1\331\12\0"+
-    "\1\331\47\0\1\332\62\0\1\333\76\0\1\334\3\0"+
-    "\1\243\1\0\7\243\1\245\47\243\1\246\1\0\1\247"+
-    "\1\335\1\246\1\247\3\246\1\247\1\246\1\245\1\247"+
-    "\5\246\1\247\36\246\1\247\1\0\11\247\1\245\45\247"+
-    "\1\246\1\0\1\247\1\335\1\246\1\247\3\246\1\247"+
-    "\1\246\1\336\1\247\5\246\1\247\36\246\13\0\1\337"+
-    "\45\0\1\247\1\0\11\247\1\336\45\247\11\257\1\261"+
-    "\47\257\13\262\1\261\45\262\1\267\1\0\7\267\1\271"+
-    "\47\267\1\272\1\0\1\273\1\340\1\272\1\273\3\272"+
-    "\1\273\1\272\1\271\1\273\5\272\1\273\36\272\1\273"+
-    "\1\0\11\273\1\271\45\273\1\272\1\0\1\273\1\340"+
-    "\1\272\1\273\3\272\1\273\1\272\1\341\1\273\5\272"+
-    "\1\273\36\272\13\0\1\342\45\0\1\273\1\0\11\273"+
-    "\1\341\45\273\2\152\1\0\24\152\1\343\31\152\1\302"+
-    "\1\0\7\302\1\304\47\302\1\305\1\0\1\306\1\344"+
-    "\1\305\1\306\3\305\1\306\1\305\1\304\1\306\5\305"+
-    "\1\306\36\305\1\306\1\0\11\306\1\304\45\306\1\305"+
-    "\1\0\1\306\1\344\1\305\1\306\3\305\1\306\1\305"+
-    "\1\345\1\306\5\305\1\306\36\305\13\0\1\346\45\0"+
-    "\1\306\1\0\11\306\1\345\45\306\2\161\1\0\24\161"+
-    "\1\347\31\161\7\0\1\350\101\0\1\351\30\0\1\316"+
-    "\1\0\10\316\1\0\4\316\1\0\34\316\1\0\5\316"+
-    "\1\0\3\316\1\317\4\316\1\0\1\316\1\317\2\316"+
-    "\1\0\2\316\1\317\31\316\1\352\4\316\15\0\1\321"+
-    "\36\0\1\353\21\0\1\354\12\0\3\354\2\0\1\354"+
-    "\11\0\2\354\1\0\1\354\2\0\2\354\10\0\3\57"+
-    "\4\0\1\57\5\0\4\57\1\0\11\57\1\355\1\57"+
-    "\1\0\5\57\1\0\2\57\1\0\4\57\33\0\1\356"+
-    "\12\0\1\356\40\0\1\357\57\0\1\360\66\0\1\361"+
-    "\12\0\1\361\40\0\1\362\35\0\2\363\1\0\3\363"+
-    "\2\0\1\252\4\363\1\0\6\363\1\0\27\363\5\0"+
-    "\2\364\1\0\3\364\2\0\1\276\4\364\1\0\6\364"+
-    "\1\0\27\364\2\0\2\152\1\0\25\152\1\365\30\152"+
-    "\3\0\2\366\1\0\3\366\2\0\1\311\4\366\1\0"+
-    "\6\366\1\0\27\366\2\0\2\161\1\0\25\161\1\367"+
-    "\30\161\31\0\1\370\103\0\1\352\21\0\1\354\12\0"+
-    "\3\354\2\0\1\354\11\0\2\354\1\0\1\354\1\0"+
-    "\1\353\2\354\10\0\3\57\4\0\1\57\5\0\4\57"+
-    "\1\0\6\57\1\371\4\57\1\0\5\57\1\0\2\57"+
-    "\1\0\4\57\44\0\1\372\54\0\1\373\55\0\1\374"+
-    "\60\0\1\375\63\0\1\376\20\0\2\152\1\0\26\152"+
-    "\1\377\27\152\2\161\1\0\26\161\1\u0100\27\161\32\0"+
-    "\1\u0101\34\0\3\57\4\0\1\57\5\0\4\57\1\0"+
-    "\3\57\1\u0102\7\57\1\0\2\57\1\u0102\2\57\1\0"+
-    "\2\57\1\0\4\57\45\0\1\u0103\52\0\1\u0104\63\0"+
-    "\1\u0105\43\0\1\u0106\63\0\1\u0107\25\0\1\u0107\2\0"+
-    "\2\152\1\0\27\152\1\u0108\26\152\2\161\1\0\27\161"+
-    "\1\u0109\26\161\33\0\1\u010a\32\0\1\u010b\3\57\3\0"+
-    "\1\u010b\1\57\4\0\1\u010b\4\57\1\0\13\57\1\0"+
-    "\5\57\1\0\2\57\1\0\4\57\35\0\1\u010c\56\0"+
-    "\1\u010d\12\0\1\u010d\45\0\1\u010e\12\0\1\u010e\12\0"+
-    "\2\152\1\0\30\152\1\u010f\25\152\2\161\1\0\30\161"+
-    "\1\u0110\25\161\32\0\1\u0111\33\0\1\u010b\6\0\1\u010b"+
-    "\5\0\1\u010b\36\0\2\152\1\0\27\152\1\u0112\26\152"+
-    "\2\161\1\0\27\161\1\u0113\26\161\27\0\1\u0114\31\0"+
-    "\2\152\1\0\24\152\1\u0115\31\152\2\161\1\0\24\161"+
-    "\1\u0116\31\161";
-
-  /** 
-   * The transition table of the DFA
-   */
-  final private static int yytrans [] = yy_unpack(yy_packed);
-
-
-  /* error codes */
-  final private static int YY_UNKNOWN_ERROR = 0;
-  // final private static int YY_ILLEGAL_STATE = 1;
-  final private static int YY_NO_MATCH = 2;
-  final private static int YY_PUSHBACK_2BIG = 3;
-
-  /* error messages for the codes above */
-  final private static String YY_ERROR_MSG[] = {
-    "Unkown internal scanner error",		//$NON-NLS-1$
-    "Internal error: unknown state",		//$NON-NLS-1$
-    "Error: could not match input",		//$NON-NLS-1$
-    "Error: pushback value was too large"	//$NON-NLS-1$
-  };
-
-  /**
-   * YY_ATTRIBUTE[aState] contains the attributes of state <code>aState</code>
-   */
-  private final static byte YY_ATTRIBUTE[] = {
-     1,  0,  0,  0,  0,  1,  0,  0,  1,  1,  1,  0,  1,  1,  1,  1, 
-     1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  0,  1, 
-     1,  1,  1,  9,  1,  9,  1,  1,  9,  9,  1,  1,  1,  1,  1,  1, 
-     1,  1,  9,  1,  1,  1,  1,  9,  1,  1,  1,  1,  1,  1,  9,  1, 
-     1,  9,  1,  1,  1,  1,  1,  1,  9,  1,  1,  1,  1,  9,  1,  1, 
-     1,  1,  1,  9,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1, 
-     1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  9,  1,  1,  1,  1, 
-     1,  1,  9,  9,  1,  9,  9,  1,  0,  1,  0,  1,  0,  0,  0,  9, 
-     1,  1,  9,  9,  0,  0,  0,  9,  0,  0,  0,  0,  0,  0,  0,  9, 
-     0,  0,  9,  0,  0,  0,  9,  0,  0,  0,  0,  0,  0,  0,  9,  0, 
-     0,  0,  0,  0,  9,  1,  0,  0,  1,  1,  0,  0,  1,  0,  0,  0, 
-     9,  0,  0,  0,  1,  0,  0,  0,  9,  1,  0,  0,  1,  1,  0,  1, 
-     0,  0,  0,  9,  1,  0,  0,  1,  1,  0,  1,  0,  0,  1,  1,  9, 
-     0,  0,  9,  9,  9,  1,  1,  0,  0,  0,  0,  0,  0,  1,  0,  0, 
-     1,  0,  1,  0,  1,  0,  1,  9,  0,  1,  9,  0,  1,  0,  0,  0, 
-     0,  0,  0,  0,  1,  0,  1,  0,  1,  0,  0,  0,  0,  0,  1,  1, 
-     0,  1,  0,  0,  0,  9,  9,  1,  1,  0,  1,  9,  9,  9,  1,  1, 
-     0,  1,  1,  9,  1,  1
-  };
-
-  /** the input device */
-  private java.io.Reader yy_reader;
-
-  /** the current state of the DFA */
-  private int yy_state;
-
-  /** the current lexical state */
-  private int yy_lexical_state = YYINITIAL;
-
-  /** this buffer contains the current text to be matched and is
-      the source of the yytext() string */
-  private char yy_buffer[] = new char[16384];
-
-  /** the textposition at the last accepting state */
-  private int yy_markedPos;
-
-  /** the textposition at the last state to be included in yytext */
-  private int yy_pushbackPos;
-
-  /** the current text position in the buffer */
-  private int yy_currentPos;
-
-  /** startRead marks the beginning of the yytext() string in the buffer */
-  private int yy_startRead;
-
-  /** endRead marks the last character in the buffer, that has been read
-      from input */
-  private int yy_endRead;
-
-  /** number of newlines encountered up to the start of the matched text */
-  private int yyline;
-
-  /** the number of characters up to the start of the matched text */
-  private int yychar;
-
-  /**
-   * the number of characters from the last newline up to the start of the 
-   * matched text
-   */
-  // private int yycolumn; 
-
-  /** 
-   * yy_atBOL == true <=> the scanner is currently at the beginning of a line
-   */
-  // private boolean yy_atBOL;
-
-  /** yy_atEOF == true <=> the scanner has returned a value for EOF */
-  private boolean yy_atEOF;
-
-  /** denotes if the user-EOF-code has already been executed */
-  private boolean yy_eof_done;
-
-  /* user code: */
-	private int fTokenCount = 0;
- 
-	// required holders for white-space compacting
-	private boolean fShouldLoadBuffered = false;
-	private String fBufferedContext = null;
-	private int fBufferedStart = 1;
-	private int fBufferedLength = 0;
-	private String f_context = null;
-
-	// state stack for handling embedded regions
-	private IntStack fStateStack = new IntStack();
-
-	private String context = null;
-	private int start = 0;
-	private int textLength = 0;
-	private int length = 0;
-
-	// offset for tracking position specific block tags
-	private int fOffset = 0;
-	
-	// the name of the current tag being opened
-	private String fCurrentTagName = null;
-
-	// the list of tag name BlockMarkers
-	private List fBlockMarkers = new ArrayList();
-
-	// required to not seek text blocks on an end tag
-	private boolean fIsBlockingEnabled = false;
-	private boolean fIsCaseSensitiveBlocking = true;
-
-	private XMLParserRegionFactory fRegionFactory = new XMLParserRegionFactory();
-/**
- * user method 
- */
-public final void addBlockMarker(BlockMarker marker) {
-	if(containsTagName(marker.getTagName()))
-		return;
-	fBlockMarkers.add(marker);
-}
-/**
- * user method 
- */
-public final void removeBlockMarker(BlockMarker marker) {
-	fBlockMarkers.remove(marker);
-}
-/**
- * user method 
- */
-public final void removeBlockMarker(String tagname) {
-	if (fBlockMarkers != null) {
-		Iterator blocks = fBlockMarkers.iterator();
-		while (blocks.hasNext()) {
-			if (((BlockMarker) blocks.next()).getTagName().equals(tagname))
-				blocks.remove();
-		}
-	}
-}
-/* user method */
-public final boolean isCaseSensitiveBlocking() {
-	return fIsCaseSensitiveBlocking;
-}
-/* user method */
-public final void setCaseSensitiveBlocking(boolean newValue) {
-	fIsCaseSensitiveBlocking = newValue;
-}
-/* user method */
-public boolean getBlockMarkerCaseSensitivity() {
-        return getBlockMarkerCaseSensitivity(fCurrentTagName);
-}
-/* user method */
-public boolean getBlockMarkerCaseSensitivity(String name) {
-	Iterator iterator = fBlockMarkers.iterator();
-	while(iterator.hasNext()) {
-		BlockMarker marker = (BlockMarker)iterator.next();
-		boolean casesensitive = marker.isCaseSensitive();
-		if(casesensitive && marker.getTagName().equals(name))
-			return casesensitive;
-		else if(!casesensitive && marker.getTagName().equalsIgnoreCase(name))
-			return casesensitive;
-	}
-	return true;
-}
-/* user method */
-public String getBlockMarkerContext() {
-	return getBlockMarkerContext(fCurrentTagName);
-}
-/* user method */
-public String getBlockMarkerContext(String name) {
-	Iterator iterator = fBlockMarkers.iterator();
-	while(iterator.hasNext()) {
-		BlockMarker marker = (BlockMarker)iterator.next();
-		if(marker.getTagName().equals(name))
-			return marker.getContext();
-	}
-	return BLOCK_TEXT;
-}
-/* user method */
-public List getBlockMarkers() {
-	return fBlockMarkers;
-}
-/* user method */
-public final int getOffset() {
-	return fOffset + yychar;
-}
-private final boolean isBlockMarker() {
-	return isBlockMarker(fCurrentTagName);
-}
-private final boolean isBlockMarker(String tagName) {
-	if (!fIsBlockingEnabled)
-		return false;
-	return containsTagName(tagName);
-}
-/**
- * user method
- */
-public final void beginBlockTagScan(String newTagName) {
-	beginBlockMarkerScan(newTagName, BLOCK_TEXT);
-}
-/**
- * user method
- *
- * Special tokenizer setup.  Allows tokenization to be initiated at the
- * start of a text block within a "newTagName" tag.
- *
- * Example: 
- *	Tokenizer toker = new Tokenizer();
- *	toker.setCaseSensitiveBlocking(false);
- *	toker.reset(new java.io.StringReader("afiuhqwkejhtasihgalkwhtq</scripter></scr></script>asgdasga"));
- *	toker.beginBlockMarkerScan("script", BLOCK_TEXT);
- *	toker.getRegions(); 
- *
- * Returns:
- *	BLOCK_TEXT: 0-40
- *	XML_END_TAG_OPEN: 41-42
- *	XML_TAG_NAME: 43-48
- *	XML_TAG_CLOSE: 49-49
- *	XML_CONTENT: 50-57
- *
- */
-public final void beginBlockMarkerScan(String newTagName, String blockcontext) {
-	yybegin(ST_BLOCK_TAG_SCAN);
-	fCurrentTagName = newTagName;
-}
-/**
- * Method doScan.
- * 
- * Returns a context region for all of the text from the current position upto the end of input or
- * to right *before* the first occurence of searchString
- * 
- * @param searchString - target string to search for ex.: "-->", "</tagname"
- * @param requireTailSeparator - whether the target must be immediately followed by whitespace or '>'
- * @param context - the context of the scanned region if non-zero length
- * @param exitState - the state to go to if the region was of non-zero length
- * @param abortState - the state to go to if the searchString was found immediately
- * @return String - the context found: the desired context on a non-zero length match, the abortContext on immediate success
- * @throws IOException
- */
-private final String doScan(String searchString, boolean requireTailSeparator, String searchContext, int exitState, int immediateFallbackState) throws IOException {
-	boolean stillSearching = true;
-	// Disable further block (probably)
-	fIsBlockingEnabled = false;
-	int searchStringLength = searchString.length();
-	int n = 0;
-	char lastCheckChar;
-	int i;
-	boolean same = false;
-	while (stillSearching) {
-		n = 0;
-		// Ensure that enough data from the input exists to compare against the search String.
-		n = yy_advance();
-		while(n != YYEOF && yy_currentPos < searchStringLength)
-			n = yy_advance();
-		// If the input was too short or we've exhausted the input, stop immediately.
-		if (n == YYEOF) {
-			stillSearching = false;
-		}
-		else {
-			same = true;
-			// Ensure that we've not encountered a complete block (<%%>) that was *shorter* than the closeTagString and
-			// thus found twice at current-targetLength [since the first scan would have come out this far anyway].
-			// Check the characters in the target versus the last targetLength characters read from the buffer
-			// and see if it matches
-			
-			// safety check for array accesses (yy_currentPos is the *last* character we can check against)
-			if(yy_currentPos >= searchStringLength && yy_currentPos <= yy_buffer.length) {
-				for(i = 0; i < searchStringLength; i++) {
-					if(same && fIsCaseSensitiveBlocking)
-						same = yy_buffer[i + yy_currentPos - searchStringLength] == searchString.charAt(i);
-					else if(same && !fIsCaseSensitiveBlocking)
-						same = Character.toLowerCase(yy_buffer[i + yy_currentPos - searchStringLength]) == Character.toLowerCase(searchString.charAt(i));
-				}
-			}
-			// safety check failed; no match is possible right now
-			else {
-				same = false;
-			}
-			if (same && requireTailSeparator && yy_currentPos < yy_buffer.length) {
-				// Additional check for close tags to ensure that targetString="</script" doesn't match
-				// "</scriptS"
-				lastCheckChar = yy_buffer[yy_currentPos];
-				// Succeed on "</script>" and "</script "
-				if(lastCheckChar == '>' || Character.isWhitespace(lastCheckChar))
-					stillSearching = false;
-			}
-			else {
-				stillSearching = !same || (yy_currentPos < yy_startRead + searchStringLength);
-			}
-		}
-	}
-	if (n != YYEOF || same) {
-		// We've stopped short of the end or definitely found a match
-		yy_markedPos = yy_currentPos - searchStringLength;
-		yy_currentPos = yy_markedPos + 1;
-		// If the searchString occurs at the very beginning of what would have
-		// been a Block, resume scanning normally immediately
-		if (yy_markedPos == yy_startRead) {
-			yybegin(immediateFallbackState);
-			return primGetNextToken();
-		}
-	}
-	else {
-		// We ran through the rest of the input
-		yy_markedPos = yy_currentPos;
-		yy_currentPos++;
-	}
-	yybegin(exitState);
-	// If the ending occurs at the very beginning of what would have
-	// been a Block, resume scanning normally immediately
-	if(yy_markedPos == yy_startRead)
-		return primGetNextToken();
-	return searchContext;
-}
-/**
- * user method
- *
- * A generic lookahead-like operation
- */
-private final String doBlockScan(String target, String targetContext, int immediateFallbackState) throws IOException {
-	return doScan(target, false, targetContext, immediateFallbackState, immediateFallbackState);
-}
-/**
- * user method 
- * does a lookahead for the current tag name
- */
-private final String doBlockTagScan() throws IOException {
-        fIsCaseSensitiveBlocking = getBlockMarkerCaseSensitivity();
-	return doScan("</" + fCurrentTagName, true, getBlockMarkerContext(fCurrentTagName), YYINITIAL, YYINITIAL);
-}
-/**
- * user method
- *
- * Converts the raw context String returned by the primGetNextToken()
- * method into a full ITextRegion by pulling in values for the
- * current offset within the scanning text.
- *
- * Returns null when EOF is encountered and attaches intermittently
- * discovered whitespace onto the end of useful regions.
- *
- * Note that this algorithm caches the token following the one being returned
- * so that whitespace can be collapsed.
- */
-public final ITextRegion getNextToken() throws IOException {
-	// load the starting non-whitespace token (assume that it is so)
-	if (fShouldLoadBuffered) {
-		context = fBufferedContext;
-		start = fBufferedStart;
-		textLength = length = fBufferedLength;
-		fShouldLoadBuffered = false;
-	}
-	else {
-		context = primGetNextToken();
-		if (context == XML_TAG_NAME) {
-			if(containsTagName(yy_buffer, yy_startRead, yy_markedPos-yy_startRead))
-				fCurrentTagName = yytext();
-			else
-				fCurrentTagName = null;
-		}
-		else if (context == XML_TAG_OPEN) {
-			fIsBlockingEnabled = true;
-		}
-		else if (context == XML_END_TAG_OPEN) {
-			fIsBlockingEnabled = false;
-		}
-		start = yychar;
-		textLength = length = yylength();
-		if (yy_atEOF) {
-			fTokenCount++;
-			return null;
-		}
-	}
-	// store the next token
-	f_context = primGetNextToken();
-	if (f_context == XML_TAG_NAME) {
-		if(containsTagName(yy_buffer, yy_startRead, yy_markedPos-yy_startRead))
-			fCurrentTagName = yytext();
-		else
-			fCurrentTagName = null;
-	}
-	else if (f_context == XML_TAG_OPEN) {
-		fIsBlockingEnabled = true;
-	}
-	else if (f_context == XML_END_TAG_OPEN) {
-		fIsBlockingEnabled = false;
-	}
-	fBufferedContext = f_context;
-	fBufferedStart = yychar;
-	fBufferedLength = yylength();
-	fShouldLoadBuffered = true;
-	if (fBufferedContext == WHITE_SPACE) {
-		fShouldLoadBuffered = false;
-		length += fBufferedLength;
-	}
-	if (context == null) {
-		// EOF
-		if (Debug.debugTokenizer) {
-			System.out.println(getClass().getName() + " discovered " + fTokenCount + " tokens."); //$NON-NLS-2$//$NON-NLS-1$
-		}
-		return null;
-	}
-	fTokenCount++;
-	return fRegionFactory.createToken(context, start, textLength, length, null, fCurrentTagName);
-}
-/* user method */
-public XMLTokenizer(){
-	super();
-}
-/* user method */
-public XMLTokenizer(char[] charArray){
-		this(new CharArrayReader(charArray));
-}
-/* user method */
-public void reset(char[] charArray) {
-	reset(new CharArrayReader(charArray), 0);
-}
-/* user method */
-public void reset(char[] charArray, int newOffset) {
-	reset(new CharArrayReader(charArray), newOffset);
-}
-/* user method */
-public void reset(java.io.InputStream in) {
-	reset(new java.io.InputStreamReader(in), 0);
-}
-/* user method */
-public void reset(java.io.InputStream in, int newOffset) {
-	reset(new java.io.InputStreamReader(in), newOffset);
-}
-/* user method */
-public void reset(java.io.Reader in) {
-	reset(in, 0);
-}
-/**
- * user method *
- *
- * Reset internal counters and vars to "newly created" values, in the hopes
- * that resetting a pre-existing tokenizer is faster than creating a new one.
- *
- * This method contains code blocks that were essentially duplicated from the
- * <em>generated</em> output of this specification before this method was
- * added.  Those code blocks were under the above copyright.
- */
-public void reset(java.io.Reader in, int newOffset) {
-	if (Debug.debugTokenizer) {
-		System.out.println("resetting tokenizer");//$NON-NLS-1$
-	}
-	fOffset = newOffset;
-
-	/* the input device */
-	yy_reader = in;
-
-	/* the current state of the DFA */
-	yy_state = 0;
-
-	/* the current lexical state */
-	yy_lexical_state = YYINITIAL;
-
-	/* this buffer contains the current text to be matched and is
-	the source of the yytext() string */
-	java.util.Arrays.fill(yy_buffer, (char)0);
-
-	/* the textposition at the last accepting state */
-	yy_markedPos = 0;
-
-	/* the textposition at the last state to be included in yytext */
-	yy_pushbackPos = 0;
-
-	/* the current text position in the buffer */
-	yy_currentPos = 0;
-
-	/* startRead marks the beginning of the yytext() string in the buffer */
-	yy_startRead = 0;
-
-	/** 
-	 * endRead marks the last character in the buffer, that has been read
-	 * from input 
-	 */
-	yy_endRead = 0;
-
-	/* number of newlines encountered up to the start of the matched text */
-	yyline = 0;
-
-	/* the number of characters up to the start of the matched text */
-	yychar = 0;
-
-	/* yy_atEOF == true <=> the scanner has returned a value for EOF */
-	yy_atEOF = false;
-
-	/* denotes if the user-EOF-code has already been executed */
-	yy_eof_done = false;
-
-
-	/* user vars: */
-	fTokenCount = 0;
- 
-	fShouldLoadBuffered = false;
-	fBufferedContext = null;
-	fBufferedStart = 1;
-	fBufferedLength = 0;
-	fStateStack = new IntStack();
-
-	context = null;
-	start = 0;
-	textLength = 0;
-	length = 0;
-}
-
-	/**
-	 * user method
-	 *
-	 * @see com.ibm.sed.parser.BlockTokenizer#newInstance()
-	 */
-	public BlockTokenizer newInstance() {
-		XMLTokenizer newInstance = new XMLTokenizer();
-		// global tagmarkers can be shared; they have no state and 
-		// are never destroyed (e.g. 'release')
-		for(int i = 0; i < fBlockMarkers.size(); i++) {
-			BlockMarker blockMarker = (BlockMarker) fBlockMarkers.get(i);
-			if(blockMarker.isGlobal())
-				newInstance.addBlockMarker(blockMarker);
-		}
-		return newInstance;
-	}
-/* user method */
-private final String scanXMLCommentText() throws IOException {
-	// Scan for '-->' and return the text up to that point as
-	//   XML_COMMENT_TEXT unless the string occurs IMMEDIATELY, in which
-	//  case change to the ST_XML_COMMENT_END state and return the next
-	//  context as usual.
-	return doScan("-->", false, XML_COMMENT_TEXT, ST_XML_COMMENT_END, ST_XML_COMMENT_END);
-}
-
-
-  /**
-   * Creates a new scanner
-   * There is also a java.io.InputStream version of this constructor.
-   *
-   * @param   in  the java.io.Reader to read input from.
-   */
-  public XMLTokenizer(java.io.Reader in) {
-    this.yy_reader = in;
-  }
-
-  /**
-   * Creates a new scanner.
-   * There is also java.io.Reader version of this constructor.
-   *
-   * @param   in  the java.io.Inputstream to read input from.
-   */
-  public XMLTokenizer(java.io.InputStream in) {
-    this(new java.io.InputStreamReader(in));
-  }
-
-  /** 
-   * Unpacks the compressed DFA transition table.
-   *
-   * @param packed   the packed transition table
-   * @return         the unpacked transition table
-   */
-  private static int [] yy_unpack(String packed) {
-    int [] trans = new int[9212];
-    int i = 0;  /* index in packed string  */
-    int j = 0;  /* index in unpacked array */
-    while (i < 3220) {
-      int count = packed.charAt(i++);
-      int value = packed.charAt(i++);
-      value--;
-      do trans[j++] = value; while (--count > 0);
-    }
-    return trans;
-  }
-
-  /** 
-   * Unpacks the compressed character translation table.
-   *
-   * @param packed   the packed character translation table
-   * @return         the unpacked character translation table
-   */
-  private static char [] yy_unpack_cmap(String packed) {
-    char [] map = new char[0x10000];
-    int i = 0;  /* index in packed string  */
-    int j = 0;  /* index in unpacked array */
-    while (i < 1372) {
-      int  count = packed.charAt(i++);
-      char value = packed.charAt(i++);
-      do map[j++] = value; while (--count > 0);
-    }
-    return map;
-  }
-
-
-  /**
-   * Gets the next input character.
-   *
-   * @return      the next character of the input stream, EOF if the
-   *              end of the stream is reached.
-   * @exception   IOException  if any I/O-Error occurs
-   */
-  private int yy_advance() throws java.io.IOException {
-
-    /* standard case */
-    if (yy_currentPos < yy_endRead) return yy_buffer[yy_currentPos++];
-
-    /* if the eof is reached, we don't need to work hard */ 
-    if (yy_atEOF) return YYEOF;
-
-    /* otherwise: need to refill the buffer */
-
-    /* first: make room (if you can) */
-    if (yy_startRead > 0) {
-      System.arraycopy(yy_buffer, yy_startRead, 
-                       yy_buffer, 0, 
-                       yy_endRead-yy_startRead);
-
-      /* translate stored positions */
-      yy_endRead-= yy_startRead;
-      yy_currentPos-= yy_startRead;
-      yy_markedPos-= yy_startRead;
-      yy_pushbackPos-= yy_startRead;
-      yy_startRead = 0;
-    }
-
-    /* is the buffer big enough? */
-    if (yy_currentPos >= yy_buffer.length) {
-      /* if not: blow it up */
-      char newBuffer[] = new char[yy_currentPos*2];
-      System.arraycopy(yy_buffer, 0, newBuffer, 0, yy_buffer.length);
-      yy_buffer = newBuffer;
-    }
-
-    /* finally: fill the buffer with new input */
-    int numRead = yy_reader.read(yy_buffer, yy_endRead, 
-                                            yy_buffer.length-yy_endRead);
-
-    if ( numRead == -1 ) return YYEOF;
-
-    yy_endRead+= numRead;
-
-    return yy_buffer[yy_currentPos++];
-  }
-
-    
-  /**
-   * Closes the input stream.
-   */
-  final public void yyclose() throws java.io.IOException {
-    yy_atEOF = true;            /* indicate end of file */
-    yy_endRead = yy_startRead;  /* invalidate buffer    */
-    yy_reader.close();
-  }
-
-
-  /**
-   * Returns the current lexical state.
-   */
-  final public int yystate() {
-    return yy_lexical_state;
-  }
-
-  /**
-   * Enters a new lexical state
-   *
-   * @param newState the new lexical state
-   */
-  final public void yybegin(int newState) {
-    yy_lexical_state = newState;
-  }
-
-
-  /**
-   * Returns the text matched by the current regular expression.
-   */
-  final public String yytext() {
-    return new String( yy_buffer, yy_startRead, yy_markedPos-yy_startRead );
-  }
-
-  /**
-   * Returns the length of the matched text region.
-   */
-  final public int yylength() {
-    return yy_markedPos-yy_startRead;
-  }
-
-
-  /**
-   * Reports an error that occured while scanning - from the SED JFlex skeleton
-   *
-   * @param   errorCode  the code of the errormessage to display
-   */
-  private void yy_ScanError(int errorCode) {
-    try {
-      Logger.log(Logger.ERROR, YY_ERROR_MSG[errorCode]);
-    }
-    catch (ArrayIndexOutOfBoundsException e) {
-      Logger.log(Logger.ERROR, YY_ERROR_MSG[YY_UNKNOWN_ERROR]);
-    }
-    // DO NOT EXIT the VM on an error
-    // System.exit(1);
-  } 
-
-
-  /**
-   * Pushes the specified amount of characters back into the input stream.
-   *
-   * They will be read again by then next call of the scanning method
-   *
-   * @param number  the number of characters to be read again.
-   *                This number must not be greater than yylength()!
-   */
-  void yypushback(int number) {
-    if ( number > yylength() )
-      yy_ScanError(YY_PUSHBACK_2BIG);
-
-    yy_markedPos -= number;
-  }
-
-	/**
-	 * user method - skeleton.sed
-	 */
-	protected final boolean containsTagName(char[] markerTagName, int offset, int tagnameLength) {
-		for(int j = 0; j < fBlockMarkers.size(); j++) {
-			BlockMarker marker = (BlockMarker)fBlockMarkers.get(j);
-			if(marker.getTagName().length() == tagnameLength) {
-				boolean matchesSoFar = true;
-				for(int i = 0; i < tagnameLength && matchesSoFar; i++) {
-					if(marker.isCaseSensitive()) {
-						if(marker.getTagName().charAt(i) != markerTagName[i + offset])
-							matchesSoFar = false;
-					}
-					else {
-						if(Character.toLowerCase(marker.getTagName().charAt(i)) != Character.toLowerCase(markerTagName[i + offset]))
-							matchesSoFar = false;
-					}
-				}
-				if(matchesSoFar)
-					return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * user method - skeleton.sed
-	 *
-	 * Return ALL of the regions scannable within the remaining text
-	 * Note: for verification use
-	 */
-	public final List getRegions() {
-		List tokens = new ArrayList();
-		ITextRegion region = null;
-		try {
-			region = getNextToken();
-			while(region != null) {
-				if (region != null) {
-					tokens.add(region);
-				}
-				region = getNextToken();
-			}
-		}
-		catch (StackOverflowError e) {
-			Logger.logException(getClass().getName()+": input could not be tokenized correctly at position " + getOffset(), e);//$NON-NLS-1$
-			throw e;
-		}
-		catch (Exception e) {
-			// Since this is convenience method and NOT the recommended 
-			// way of getting tokens, many errors are simply hidden
-			Logger.logException("Exception not handled retrieving regions: " + e.getLocalizedMessage(), e);//$NON-NLS-1$
-		}
-		return tokens;
-	}
-	/**
-	 * user method - skeleton.sed
-	 */
-	private final void dump(String s) {
-		if (Debug.debugTokenizer) {
-			System.out.println(s + " (" + yychar + "-" + //$NON-NLS-2$//$NON-NLS-1$
-				(yylength() + yychar) + "):\'" +//$NON-NLS-1$
-					StringUtils.escape(yytext()) + "\'");//$NON-NLS-1$
-		}
-	}
-	/* user method  - skeleton.sed */
-	public final boolean isEOF() {
-		return yy_atEOF;
-	}
-/* user method - skeleton.sed */
-protected final boolean containsTagName(String markerTagName) {
-	Iterator blocks = fBlockMarkers.iterator();
-	while(blocks.hasNext()) {
-		BlockMarker marker = (BlockMarker)blocks.next();
-		if(marker.isCaseSensitive()) {
-			if(marker.getTagName().equals(markerTagName))
-				return true;
-		}
-		else {
-			if(marker.getTagName().equalsIgnoreCase(markerTagName))
-				return true;
-		}
-	}
-	return false;
-}
-
-  /**
-   * Contains user EOF-code, which will be executed exactly once,
-   * when the end of file is reached
-   */
-  private void yy_do_eof() {
-    if (!yy_eof_done) {
-      yy_eof_done = true;
-    // do nothing, this is the downstream parser's job
-
-    }
-  }
-
-
-  /**
-   * Resumes scanning until the next regular expression is matched,
-   * the end of input is encountered or an I/O-Error occurs.
-   *
-   * @return      the next token
-   * @exception   IOException  if any I/O-Error occurs
-   */
-  public String primGetNextToken() throws java.io.IOException {
-    int yy_input;
-    int yy_action;
-
-
-    while (true) {
-
-      yychar+= yylength();
-
-      boolean yy_counted = false;
-      for (yy_currentPos = yy_startRead; yy_currentPos < yy_markedPos;
-                                                      yy_currentPos++) {
-        switch (yy_buffer[yy_currentPos]) {
-        case '\r':
-          yyline++;
-          yy_counted = true;
-          break;
-        case '\n':
-          if (yy_counted)
-            yy_counted = false;
-          else {
-            yyline++;
-          }
-          break;
-        default:
-          yy_counted = false;
-        }
-      }
-
-      if (yy_counted) {
-        if ( yy_advance() == '\n' ) yyline--;
-        if ( !yy_atEOF ) yy_currentPos--;
-      }
-
-      yy_action = -1;
-
-      yy_currentPos = yy_startRead = yy_markedPos;
-
-      yy_state = yy_lexical_state;
-
-
-      yy_forAction: {
-        while (true) {
-    
-          yy_input = yy_advance();
-
-          if ( yy_input == YYEOF ) break yy_forAction;
-
-          int yy_next = yytrans[ yy_rowMap[yy_state] + yycmap[yy_input] ];
-          if (yy_next == -1) break yy_forAction;
-          yy_state = yy_next;
-
-          int yy_attributes = YY_ATTRIBUTE[yy_state];
-          if ( (yy_attributes & 1) > 0 ) {
-            yy_action = yy_state; 
-            yy_markedPos = yy_currentPos; 
-            if ( (yy_attributes & 8) > 0 ) break yy_forAction;
-          }
-
-        }
-      }
-
-
-      switch (yy_action) {    
-
-        case 275: 
-        case 276: 
-        case 277: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nCDATA start");//$NON-NLS-1$
-	fStateStack.push(yystate());
-	yybegin(ST_CDATA_TEXT);
-	return XML_CDATA_OPEN;
- }
-        case 279: break;
-        case 269: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("element");//$NON-NLS-1$
-	yybegin(ST_XML_ELEMENT_DECLARATION);
-	return XML_ELEMENT_DECLARATION;
- }
-        case 280: break;
-        case 268: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attlist");//$NON-NLS-1$
-	yybegin(ST_XML_ATTLIST_DECLARATION);
-	return XML_ATTLIST_DECLARATION;
- }
-        case 281: break;
-        case 267: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype");//$NON-NLS-1$
-	yybegin(ST_XML_DOCTYPE_DECLARATION);
-	return XML_DOCTYPE_DECLARATION;
- }
-        case 282: break;
-        case 262: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype external id");//$NON-NLS-1$
-	yybegin(ST_XML_DOCTYPE_ID_PUBLIC);
-	return XML_DOCTYPE_EXTERNAL_ID_PUBLIC;
- }
-        case 283: break;
-        case 261: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype external id");//$NON-NLS-1$
-	yybegin(ST_XML_DOCTYPE_ID_SYSTEM);
-	return XML_DOCTYPE_EXTERNAL_ID_SYSTEM;
- }
-        case 284: break;
-        case 257: 
-        case 266: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction target");//$NON-NLS-1$
-        yybegin(ST_DHTML_ATTRIBUTE_NAME);
-        return XML_TAG_NAME;
- }
-        case 285: break;
-        case 234: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nCharRef");//$NON-NLS-1$
-	return XML_CHAR_REFERENCE;
- }
-        case 286: break;
-        case 231: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\ncomment start");//$NON-NLS-1$
-	yybegin(ST_XML_COMMENT);
-	return XML_COMMENT_OPEN;
- }
-        case 287: break;
-        case 213: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction target");//$NON-NLS-1$
-        yybegin(ST_XML_PI_ATTRIBUTE_NAME);
-        return XML_TAG_NAME;
- }
-        case 288: break;
-        case 212: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("comment end");//$NON-NLS-1$
-	yybegin(YYINITIAL);
-	return XML_COMMENT_CLOSE;
- }
-        case 289: break;
-        case 211: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("CDATA end");//$NON-NLS-1$
-	yybegin(fStateStack.pop());
-	return XML_CDATA_CLOSE;
- }
-        case 290: break;
-        case 210: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nPEReference");//$NON-NLS-1$
-	return XML_PE_REFERENCE;
- }
-        case 291: break;
-        case 207: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nEntityRef");//$NON-NLS-1$
-	return XML_ENTITY_REFERENCE;
- }
-        case 292: break;
-        case 158: 
-        case 172: 
-        case 180: 
-          { 
-	return XML_DOCTYPE_INTERNAL_SUBSET;
- }
-        case 293: break;
-        case 146: 
-          { 
-        yybegin(YYINITIAL);
-	if(Debug.debugTokenizer)
-		dump("empty tag close");//$NON-NLS-1$
-        return XML_EMPTY_TAG_CLOSE;
- }
-        case 294: break;
-        case 131: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction end");//$NON-NLS-1$
-        yybegin(YYINITIAL);
-        return XML_PI_CLOSE;
- }
-        case 295: break;
-        case 130: 
-          { 
-		// ended with nothing inside
-        yybegin(YYINITIAL);
-        return XML_PI_CLOSE;
- }
-        case 296: break;
-        case 127: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("processing instruction end");//$NON-NLS-1$
-        yybegin(YYINITIAL);
-        return XML_PI_CLOSE;
- }
-        case 297: break;
-        case 119: 
-          { 
-	fStateStack.push(yystate());
-	if(Debug.debugTokenizer)
-		dump("\ndeclaration start");//$NON-NLS-1$
-        yybegin(ST_XML_DECLARATION);
-	return XML_DECLARATION_OPEN;
- }
-        case 298: break;
-        case 118: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nprocessing instruction start");//$NON-NLS-1$
-	yybegin(ST_PI);
-        return XML_PI_OPEN;
- }
-        case 299: break;
-        case 62: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction end");//$NON-NLS-1$
-        yybegin(YYINITIAL);
-        return XML_PI_CLOSE;
- }
-        case 300: break;
-        case 56: 
-        case 58: 
-        case 59: 
-        case 60: 
-        case 135: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction attribute value");//$NON-NLS-1$
-        yybegin(ST_XML_PI_ATTRIBUTE_NAME);
-        return XML_TAG_ATTRIBUTE_VALUE;
- }
-        case 301: break;
-        case 55: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction '='");//$NON-NLS-1$
-        yybegin(ST_XML_PI_ATTRIBUTE_VALUE);
-        return XML_TAG_ATTRIBUTE_EQUALS;
- }
-        case 302: break;
-        case 54: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("XML processing instruction attribute name");//$NON-NLS-1$
-        yybegin(ST_XML_PI_EQUALS);
-        return XML_TAG_ATTRIBUTE_NAME;
- }
-        case 303: break;
-        case 50: 
-        case 51: 
-        case 52: 
-          { 
-	// block scan until close is found
-	return doScan("?>", false, XML_PI_CONTENT, ST_XML_PI_TAG_CLOSE, ST_XML_PI_TAG_CLOSE);
- }
-        case 304: break;
-        case 49: 
-          { 
-        yybegin(ST_PI_CONTENT);
-        return WHITE_SPACE;
- }
-        case 305: break;
-        case 46: 
-        case 47: 
-        case 48: 
-        case 128: 
-        case 129: 
-        case 214: 
-        case 236: 
-        case 248: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("processing instruction target");//$NON-NLS-1$
-        yybegin(ST_PI_WS);
-        return XML_TAG_NAME;
- }
-        case 306: break;
-        case 41: 
-        case 42: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("comment content");//$NON-NLS-1$
-	return scanXMLCommentText();
- }
-        case 307: break;
-        case 40: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("LINE FEED");//$NON-NLS-1$
-	return WHITE_SPACE;
- }
-        case 308: break;
-        case 0: 
-        case 31: 
-        case 121: 
-        case 123: 
-        case 205: 
-        case 206: 
-        case 233: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nXML content");//$NON-NLS-1$
-	return XML_CONTENT;
- }
-        case 309: break;
-        case 5: 
-        case 8: 
-        case 9: 
-        case 10: 
-        case 12: 
-        case 13: 
-        case 14: 
-        case 15: 
-        case 17: 
-        case 18: 
-        case 19: 
-        case 20: 
-        case 21: 
-        case 22: 
-        case 23: 
-        case 24: 
-        case 25: 
-        case 26: 
-        case 28: 
-        case 45: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("white space");//$NON-NLS-1$
-        return WHITE_SPACE;
- }
-        case 310: break;
-        case 16: 
-        case 70: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("inappropriate tag name");//$NON-NLS-1$
-	yybegin(YYINITIAL);
-        return XML_CONTENT;
- }
-        case 311: break;
-        case 27: 
-        case 105: 
-        case 106: 
-        case 191: 
-        case 226: 
-        case 244: 
-        case 254: 
-        case 263: 
-        case 270: 
-        case 273: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("elementdecl contentspec");//$NON-NLS-1$
-	return XML_ELEMENT_DECL_CONTENT;
- }
-        case 312: break;
-        case 29: 
-        case 112: 
-        case 113: 
-        case 202: 
-        case 230: 
-        case 246: 
-        case 255: 
-        case 264: 
-        case 271: 
-        case 274: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attlist contentspec");//$NON-NLS-1$
-	return XML_ATTLIST_DECL_CONTENT;
- }
-        case 313: break;
-        case 32: 
-        case 71: 
-        case 82: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nstart tag open");//$NON-NLS-1$
-        yybegin(ST_XML_TAG_NAME);
-        return XML_TAG_OPEN;
- }
-        case 314: break;
-        case 33: 
-        case 34: 
-        case 37: 
-        case 38: 
-        case 39: 
-        case 43: 
-        case 44: 
-        case 53: 
-        case 57: 
-        case 61: 
-        case 63: 
-        case 67: 
-        case 73: 
-        case 79: 
-        case 84: 
-        case 85: 
-        case 86: 
-        case 87: 
-        case 89: 
-        case 90: 
-        case 92: 
-        case 97: 
-        case 102: 
-        case 109: 
-          { 
-	if (Debug.debugTokenizer)
-		System.out.println("!!!unexpected!!!: \"" + yytext() + "\":" + //$NON-NLS-2$//$NON-NLS-1$
-			yychar + "-" + (yychar + yylength()));//$NON-NLS-1$
-	return UNDEFINED;
- }
-        case 315: break;
-        case 35: 
-        case 36: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("CDATA text");//$NON-NLS-1$
-	String blockContext = doBlockScan("]]>", XML_CDATA_TEXT, ST_CDATA_END);//$NON-NLS-1$
-	if(blockContext == XML_CDATA_TEXT)
-		yybegin(ST_CDATA_END);
-	return blockContext;
- }
-        case 316: break;
-        case 64: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction attribute name");//$NON-NLS-1$
-        yybegin(ST_DHTML_EQUALS);
-        return XML_TAG_ATTRIBUTE_NAME;
- }
-        case 317: break;
-        case 65: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction '='");//$NON-NLS-1$
-        yybegin(ST_DHTML_ATTRIBUTE_VALUE);
-        return XML_TAG_ATTRIBUTE_EQUALS;
- }
-        case 318: break;
-        case 66: 
-        case 68: 
-        case 69: 
-        case 143: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("DHTML processing instruction attribute value");//$NON-NLS-1$
-        yybegin(ST_DHTML_ATTRIBUTE_NAME);
-        return XML_TAG_ATTRIBUTE_VALUE;
- }
-        case 319: break;
-        case 72: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("tag close");//$NON-NLS-1$
-	if(isBlockMarker()) {
-        	yybegin(ST_BLOCK_TAG_SCAN);
-	}
-	else
-        	yybegin(YYINITIAL);
-        return XML_TAG_CLOSE;
- }
-        case 320: break;
-        case 74: 
-        case 75: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("tag name");//$NON-NLS-1$
-        yybegin(ST_XML_ATTRIBUTE_NAME);
-        return XML_TAG_NAME;
- }
-        case 321: break;
-        case 76: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attr name");//$NON-NLS-1$
-        yybegin(ST_XML_EQUALS);
-        return XML_TAG_ATTRIBUTE_NAME;
- }
-        case 322: break;
-        case 77: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("equals");//$NON-NLS-1$
-        yybegin(ST_XML_ATTRIBUTE_VALUE);
-        return XML_TAG_ATTRIBUTE_EQUALS;
- }
-        case 323: break;
-        case 78: 
-        case 80: 
-        case 81: 
-        case 150: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attr value");//$NON-NLS-1$
-        yybegin(ST_XML_ATTRIBUTE_NAME);
-        return XML_TAG_ATTRIBUTE_VALUE;
- }
-        case 324: break;
-        case 83: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("declaration end");//$NON-NLS-1$
-	if (Debug.debugTokenizer) {
-		if(fStateStack.peek()!=YYINITIAL)
-			System.out.println("end embedded region");//$NON-NLS-1$
-	}
-	yybegin(fStateStack.pop());
-	return XML_DECLARATION_CLOSE;
- }
-        case 325: break;
-        case 88: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype type");//$NON-NLS-1$
-	yybegin(ST_XML_DOCTYPE_EXTERNAL_ID);
-	return XML_DOCTYPE_NAME;
- }
-        case 326: break;
-        case 91: 
-        case 93: 
-        case 94: 
-        case 95: 
-        case 164: 
-        case 165: 
-        case 168: 
-        case 169: 
-        case 221: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype public reference");//$NON-NLS-1$
-	yybegin(ST_XML_DOCTYPE_ID_SYSTEM);
-	return XML_DOCTYPE_EXTERNAL_ID_PUBREF;
- }
-        case 327: break;
-        case 96: 
-        case 98: 
-        case 99: 
-        case 100: 
-        case 176: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("doctype system reference");//$NON-NLS-1$
-	yybegin(ST_XML_DECLARATION_CLOSE);
-	return XML_DOCTYPE_EXTERNAL_ID_SYSREF;
- }
-        case 328: break;
-        case 101: 
-        case 103: 
-        case 104: 
-        case 184: 
-        case 185: 
-        case 188: 
-        case 189: 
-        case 224: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("elementdecl name");//$NON-NLS-1$
-	yybegin(ST_XML_ELEMENT_DECLARATION_CONTENT);
-	return XML_ELEMENT_DECL_NAME;
- }
-        case 329: break;
-        case 107: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("elementdecl close");//$NON-NLS-1$
-	if (Debug.debugTokenizer) {
-		if(fStateStack.peek()!=YYINITIAL)
-			System.out.println("end embedded region");//$NON-NLS-1$
-	}
-	yybegin(fStateStack.pop());
-	return XML_DECLARATION_CLOSE;
- }
-        case 330: break;
-        case 108: 
-        case 110: 
-        case 111: 
-        case 195: 
-        case 196: 
-        case 199: 
-        case 200: 
-        case 228: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attlist name");//$NON-NLS-1$
-	yybegin(ST_XML_ATTLIST_DECLARATION_CONTENT);
-	return XML_ATTLIST_DECL_NAME;
- }
-        case 331: break;
-        case 114: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("attlist close");//$NON-NLS-1$
-	if (Debug.debugTokenizer) {
-		if(fStateStack.peek()!=YYINITIAL)
-			System.out.println("end embedded region");//$NON-NLS-1$
-	}
-	yybegin(fStateStack.pop());
-	return XML_DECLARATION_CLOSE;
- }
-        case 332: break;
-        case 117: 
-          { 
-	if(Debug.debugTokenizer)
-		dump("\nend tag open");//$NON-NLS-1$
-        yybegin(ST_XML_TAG_NAME);
-        return XML_END_TAG_OPEN;
- }
-        case 333: break;
-        case 115: 
-        case 116: 
-          { 
-		return doBlockTagScan();
-	 }
-        case 334: break;
-        default: 
-          if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
-            yy_atEOF = true;
-            yy_do_eof();
-              return null;
-          } 
-          else {
-            yy_ScanError(YY_NO_MATCH);
-          }
-      }
-    }
-  }    
-
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeEqualsRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeEqualsRegion.java
deleted file mode 100644
index 2a57776..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeEqualsRegion.java
+++ /dev/null
@@ -1,92 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-
-public class AttributeEqualsRegion implements ITextRegion {
-	static private final byte fTextLength = 1;
-	static private final String fType = XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS;
-	private short fLength;
-	private int fStart;
-
-
-	public AttributeEqualsRegion() {
-		super();
-	}
-
-	public AttributeEqualsRegion(int start, int textLength, int length) {
-		this();
-		fStart = start;
-		fLength = (short) length;
-	}
-
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	public void adjustTextLength(int i) {
-		// not supported
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = (short) region.getLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// can never be updated
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeNameRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeNameRegion.java
deleted file mode 100644
index fd678bd..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeNameRegion.java
+++ /dev/null
@@ -1,170 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.Utilities;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class AttributeNameRegion implements ITextRegion {
-	// specify correct type
-	static private final String fType = XMLRegionContext.XML_TAG_ATTRIBUTE_NAME;
-	private int fLength;
-	private int fStart;
-	private int fTextLength;
-
-	public AttributeNameRegion() {
-		super();
-	}
-
-	public AttributeNameRegion(int start, int textLength, int length) {
-		this();
-		fStart = start;
-		fTextLength = textLength;
-		fLength = length;
-	}
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		fTextLength += 1;
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = region.getLength();
-		fTextLength = region.getTextLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		RegionChangedEvent result = null;
-		// if the region is an easy type (e.g. attribute value),
-		// and the requested changes are all
-		// alphanumeric, then make the change here locally.
-		// (This can obviously be made more sophisticated as the need arises,
-		// but should
-		// always follow this pattern.)
-		if (Debug.debugStructuredDocument) {
-			System.out.println("\t\tContextRegion::updateModel"); //$NON-NLS-1$
-			System.out.println("\t\t\tregion type is " + fType); //$NON-NLS-1$
-		}
-		boolean canHandle = false;
-		// note: we'll always handle deletes from these
-		// regions ... if its already that region,
-		// deleting something from it won't change its
-		// type. (remember, the calling program needs
-		// to insure we are not called, if not all contained
-		// on one region.
-		if ((changes == null) || (changes.length() == 0)) {
-			// delete case
-			// We can not do the quick delete, if
-			// if all the text in a region is to be deleted.
-			// Or, if the delete starts in the white space region.
-			// In these cases, a reparse is needed.
-			// Minor note, we use textEnd-start since it always
-			// less than or equal to end-start. This might
-			// cause us to miss a few cases we could have handled,
-			// but will prevent us from trying to handle funning cases
-			// involving whitespace.
-			if ((fStart >= getTextEnd()) || (Math.abs(lengthToReplace) >= getTextEnd() - getStart())) {
-				canHandle = false;
-			} else {
-				canHandle = true;
-			}
-		} else {
-			if ((RegionUpdateRule.canHandleAsWhiteSpace(this, parent, changes, requestStart, lengthToReplace)) || RegionUpdateRule.canHandleAsLetterOrDigit(this, parent, changes, requestStart, lengthToReplace)) {
-				canHandle = true;
-			} else {
-				canHandle = false;
-			}
-
-		}
-		if (canHandle) {
-			// at this point, we still have the old region. We won't create a
-			// new instance, we'll just update the one we have, by changing
-			// its end postion,
-			// The parent flatnode, upon return, has responsibility
-			// for updating sibling regions.
-			// and in turn, the structuredDocument itself has responsibility
-			// for
-			// updating the text store and down stream flatnodes.
-			if (Debug.debugStructuredDocument) {
-				System.out.println("change handled by region"); //$NON-NLS-1$
-			}
-			int lengthDifference = Utilities.calculateLengthDifference(changes, lengthToReplace);
-			// Note: we adjust both end and text end, because for any change
-			// that is in only the trailing whitespace region, we should not
-			// do a quick change,
-			// so 'canHandle' should have been false for those case.
-			// TO_DO_FUTURE: cache value of canHandleAsWhiteSpace from above
-			// If we are handling as whitespace, there is no need to increase
-			// the text length, only
-			// the total length is changing.
-			if (!RegionUpdateRule.canHandleAsWhiteSpace(this, parent, changes, requestStart, lengthToReplace)) {
-				fTextLength += lengthDifference;
-			}
-			fLength += lengthDifference;
-			result = new RegionChangedEvent(parent.getParentDocument(), requester, parent, this, changes, requestStart, lengthToReplace);
-		}
-
-		return result;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeValueRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeValueRegion.java
deleted file mode 100644
index 03eb463..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/AttributeValueRegion.java
+++ /dev/null
@@ -1,167 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.Utilities;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class AttributeValueRegion implements ITextRegion {
-	// specify correct type
-	static private final String fType = XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE;
-	private int fLength;
-	private int fStart;
-	private int fTextLength;
-
-	public AttributeValueRegion() {
-		super();
-	}
-
-	public AttributeValueRegion(int start, int textLength, int length) {
-		this();
-		fStart = start;
-		fTextLength = textLength;
-		fLength = length;
-	}
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		fTextLength += 1;
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = region.getLength();
-		fTextLength = region.getTextLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		RegionChangedEvent result = null;
-		// if the region is an easy type (e.g. attribute value),
-		// and the requested changes are all
-		// alphanumeric, then make the change here locally.
-		// (This can obviously be made more sophisticated as the need arises,
-		// but should
-		// always follow this pattern.)
-		if (Debug.debugStructuredDocument) {
-			System.out.println("\t\tContextRegion::updateModel"); //$NON-NLS-1$
-			System.out.println("\t\t\tregion type is " + fType); //$NON-NLS-1$
-		}
-		boolean canHandle = false;
-		// note: we'll always handle deletes from these
-		// regions ... if its already that region,
-		// deleting something from it won't change its
-		// type. (remember, the calling program needs
-		// to insure we are not called, if not all contained
-		// on one region.
-		if ((changes == null) || (changes.length() == 0)) {
-			// delete case
-			// We can not do the quick delete, if
-			// if all the text in a region is to be deleted.
-			// Or, if the delete starts in the white space region.
-			// In these cases, a reparse is needed.
-			// Minor note, we use textEnd-start since it always
-			// less than or equal to end-start. This might
-			// cause us to miss a few cases we could have handled,
-			// but will prevent us from trying to handle funning cases
-			// involving whitespace.
-			if ((fStart >= getTextEnd()) || (Math.abs(lengthToReplace) >= getTextEnd() - getStart())) {
-				canHandle = false;
-			} else {
-				canHandle = true;
-			}
-		} else {
-			if ((RegionUpdateRule.canHandleAsWhiteSpace(this, parent, changes, requestStart, lengthToReplace)) || RegionUpdateRule.canHandleAsLetterOrDigit(this, parent, changes, requestStart, lengthToReplace)) {
-				canHandle = true;
-			} else {
-				canHandle = false;
-			}
-		}
-		if (canHandle) {
-			// at this point, we still have the old region. We won't create a
-			// new instance, we'll just update the one we have, by changing
-			// its end postion,
-			// The parent flatnode, upon return, has responsibility
-			// for updating sibling regions.
-			// and in turn, the structuredDocument itself has responsibility
-			// for
-			// updating the text store and down stream flatnodes.
-			if (Debug.debugStructuredDocument) {
-				System.out.println("change handled by region"); //$NON-NLS-1$
-			}
-			int lengthDifference = Utilities.calculateLengthDifference(changes, lengthToReplace);
-			// Note: we adjust both end and text end, because for any change
-			// that is in only the trailing whitespace region, we should not
-			// do a quick change,
-			// so 'canHandle' should have been false for those case.
-			// TO_DO_FUTURE: cache value of canHandleAsWhiteSpace from above
-			// If we are handling as whitespace, there is no need to increase
-			// the text length, only
-			// the total length is changing.
-			if (!RegionUpdateRule.canHandleAsWhiteSpace(this, parent, changes, requestStart, lengthToReplace)) {
-				fTextLength += lengthDifference;
-			}
-			// update length (and end) after above check for white space,
-			// since
-			// it looks to determine if at end of region.
-			fLength += lengthDifference;
-			result = new RegionChangedEvent(parent.getParentDocument(), requester, parent, this, changes, requestStart, lengthToReplace);
-		}
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/BlockTextRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/BlockTextRegion.java
deleted file mode 100644
index b382257..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/BlockTextRegion.java
+++ /dev/null
@@ -1,36 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.internal.parser.ForeignRegion;
-
-
-
-public class BlockTextRegion extends ForeignRegion {
-
-	/**
-	 * BlockTextRegion constructor comment.
-	 */
-	public BlockTextRegion() {
-		super();
-	}
-
-	public BlockTextRegion(String newContext, int newStart, int newTextLength, int newLength) {
-		super(newContext, newStart, newTextLength, newLength);
-	}
-
-	public BlockTextRegion(String newContext, int newStart, int newTextLength, int newLength, String newLanguage) {
-		super(newContext, newStart, newTextLength, newLength, newLanguage);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/GenericTemplateRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/GenericTemplateRegion.java
deleted file mode 100644
index 291a341..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/GenericTemplateRegion.java
+++ /dev/null
@@ -1,105 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * 
- * This class is not intended to be used, its just present to server as a
- * generic starting point for adding new specific region types.
- */
-
-public class GenericTemplateRegion implements ITextRegion {
-	// specify correct type
-	static private final String fType = XMLRegionContext.UNDEFINED;
-	private int fLength;
-	private int fStart;
-	private int fTextLength;
-
-
-	public GenericTemplateRegion() {
-		super();
-	}
-
-	public GenericTemplateRegion(int start, int textLength, int length) {
-		this();
-		fStart = start;
-		fTextLength = textLength;
-		fLength = length;
-	}
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		fTextLength += 1;
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = region.getLength();
-		fTextLength = region.getTextLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// can never be updated
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/RegionToStringUtil.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/RegionToStringUtil.java
deleted file mode 100644
index 9693beb..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/RegionToStringUtil.java
+++ /dev/null
@@ -1,36 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-
-public class RegionToStringUtil {
-	static public String toString(ITextRegion region) {
-		String className = region.getClass().getName();
-		String shortClassName = className.substring(className.lastIndexOf(".") + 1); //$NON-NLS-1$
-		// ==> // String resultText = null;
-		String result = shortClassName + "--> " + region.getType() + ": " + region.getStart() + "-" + region.getTextEnd() + (region.getTextEnd() != region.getEnd() ? ("/" + region.getEnd()) : ""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
-		// NOTE: if the document held by any region has been updated and the
-		// region offsets have not
-		// yet been updated, the output from this method invalid.
-		//return com.ibm.sed.util.StringUtils.escape("('"+(getFirstRegion()
-		// == null || document == null? "" :
-		// getText(getFirstRegion()))+"'"+getStart()+" -
-		// "+getEnd()+"'"+(getClose() == null || document == null ||
-		// getRegions().size()<2 ? "" : getText(getClose()))+"')
-		// "+getRegions());
-		return result;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/RegionUpdateRule.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/RegionUpdateRule.java
deleted file mode 100644
index 8692688..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/RegionUpdateRule.java
+++ /dev/null
@@ -1,205 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.Utilities;
-
-
-/**
- * 
- * This is a utility class to centralize 'region' update. Note: care must be
- * taken that is is not used for StructuredDocumentRegions, or container
- * regions, its only for "token regions"
- *  
- */
-public class RegionUpdateRule {
-
-	static public boolean allLetterOrDigit(String changes) {
-		boolean result = true;
-		for (int i = 0; i < changes.length(); i++) {
-			// TO_DO_FUTURE: check that a Java Letter or Digit is
-			// the same thing as an XML letter or digit
-			if (!(Character.isLetterOrDigit(changes.charAt(i)))) {
-				result = false;
-				break;
-			}
-		}
-		return result;
-	}
-
-	static public boolean allWhiteSpace(String changes) {
-		boolean result = true;
-		for (int i = 0; i < changes.length(); i++) {
-			if (!Character.isWhitespace(changes.charAt(i))) {
-				result = false;
-				break;
-			}
-		}
-		return result;
-	}
-
-	static public boolean canHandleAsLetterOrDigit(ITextRegion region, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		if (parent == null)
-			return canHandleAsLetterOrDigit(region, changes, requestStart, lengthToReplace);
-		boolean result = false;
-		// Make sure we are in a non-white space area
-		if ((requestStart <= (parent.getTextEndOffset(region))) && (allLetterOrDigit(changes))) {
-			result = true;
-		}
-		return result;
-	}
-
-	static public boolean canHandleAsLetterOrDigit(ITextRegion region, String changes, int requestStart, int lengthToReplace) {
-		boolean result = false;
-		// Make sure we are in a non-white space area
-		if ((requestStart <= (region.getTextEnd())) && (allLetterOrDigit(changes))) {
-			result = true;
-		}
-		return result;
-	}
-
-	static public boolean canHandleAsWhiteSpace(ITextRegion region, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// we don't explect a null parent, but just in case!
-		// (in which case, we must be dealing with regions that are
-		// structuredDocumentRegions).
-		if (parent == null)
-			return canHandleAsWhiteSpace(region, changes, requestStart, lengthToReplace);
-		boolean result = false;
-		// if we are in the "white space" area of a region, then
-		// we don't want to handle, a reparse is needed.
-		// the white space region is consider anywhere that would
-		// leave whitespace between this character and the text part.
-		// and of course, we can insert whitespace in whitespace region
-		//
-		// if there is no whitespace in this region, no need to look further
-		if (region.getEnd() > region.getTextEnd()) {
-			// no need to add one to end of text, as we used to, since we
-			// change definition of length to equate to offset plus one.
-			if (requestStart > parent.getTextEndOffset(region)) {
-				// ok, we are in the whitespace region, so we can't handle,
-				// unless
-				// we are just inserting whitespace.
-				if (allWhiteSpace(changes)) {
-					result = true;
-				} else {
-					result = false;
-				}
-			}
-		}
-		return result;
-	}
-
-	static public boolean canHandleAsWhiteSpace(ITextRegion region, String changes, int requestStart, int lengthToReplace) {
-		boolean result = false;
-		// if we are in the "white space" area of a region, then
-		// we don't want to handle, a reparse is needed.
-		// the white space region is consider anywhere that would
-		// leave whitespace between this character and the text part.
-		// and of course, we can insert whitespace in whitespace region
-		//
-		// if there is no whitespace in this region, no need to look further
-		if (region.getEnd() > region.getTextEnd()) {
-			// no need to add one to end of text, as we used to, since we
-			// change definition of length to equate to offset plus one.
-			if (requestStart > region.getTextEnd()) {
-				// ok, we are in the whitespace region, so we can't handle,
-				// unless
-				// we are just inserting whitespace.
-				if (allWhiteSpace(changes)) {
-					result = true;
-				} else {
-					result = false;
-				}
-			}
-		}
-		return result;
-	}
-
-	// need an adjust text length API before this can be used
-	static public StructuredDocumentEvent updateModel(ITextRegion region, Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		RegionChangedEvent result = null;
-		// if the region is an easy type (e.g. attribute value),
-		// and the requested changes are all
-		// alphanumeric, then make the change here locally.
-		// (This can obviously be made more sophisticated as the need arises,
-		// but should
-		// always follow this pattern.)
-		if (Debug.debugStructuredDocument) {
-			System.out.println("\t\tContextRegion::updateModel"); //$NON-NLS-1$
-			System.out.println("\t\t\tregion type is " + region.getType()); //$NON-NLS-1$
-		}
-		boolean canHandle = false;
-		// note: we'll always handle deletes from these
-		// regions ... if its already that region,
-		// deleting something from it won't change its
-		// type. (remember, the calling program needs
-		// to insure we are not called, if not all contained
-		// on one region.
-		if ((changes == null) || (changes.length() == 0)) {
-			// delete case
-			// We can not do the quick delete, if
-			// if all the text in a region is to be deleted.
-			// Or, if the delete starts in the white space region.
-			// In these cases, a reparse is needed.
-			// Minor note, we use textEnd-start since it always
-			// less than or equal to end-start. This might
-			// cause us to miss a few cases we could have handled,
-			// but will prevent us from trying to handle funning cases
-			// involving whitespace.
-			if ((region.getStart() >= region.getTextEnd()) || (Math.abs(lengthToReplace) >= region.getTextEnd() - region.getStart())) {
-				canHandle = false;
-			} else {
-				canHandle = true;
-			}
-		} else {
-			if ((RegionUpdateRule.canHandleAsWhiteSpace(region, parent, changes, requestStart, lengthToReplace)) || RegionUpdateRule.canHandleAsLetterOrDigit(region, parent, changes, requestStart, lengthToReplace)) {
-				canHandle = true;
-			} else {
-				canHandle = false;
-			}
-		}
-		if (canHandle) {
-			// at this point, we still have the old region. We won't create a
-			// new instance, we'll just update the one we have, by changing
-			// its end postion,
-			// The parent flatnode, upon return, has responsibility
-			// for updating sibling regions.
-			// and in turn, the structuredDocument itself has responsibility
-			// for
-			// updating the text store and down stream flatnodes.
-			if (Debug.debugStructuredDocument) {
-				System.out.println("change handled by region"); //$NON-NLS-1$
-			}
-			int lengthDifference = Utilities.calculateLengthDifference(changes, lengthToReplace);
-			// Note: we adjust both end and text end, because for any change
-			// that is in only the trailing whitespace region, we should not
-			// do a quick change,
-			// so 'canHandle' should have been false for those case.
-			region.adjustLengthWith(lengthDifference);
-			// TO_DO_FUTURE: cache value of canHandleAsWhiteSpace from above
-			// If we are handling as whitespace, there is no need to increase
-			// the text length, only
-			// the total length is changing.
-			if (!RegionUpdateRule.canHandleAsWhiteSpace(region, parent, changes, region.getStart(), lengthToReplace)) {
-				//				region.adjustTextLength(lengthDifference);
-			}
-			result = new RegionChangedEvent(parent.getParentDocument(), requester, parent, region, changes, requestStart, lengthToReplace);
-		}
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagCloseRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagCloseRegion.java
deleted file mode 100644
index 87044dd..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagCloseRegion.java
+++ /dev/null
@@ -1,95 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class TagCloseRegion implements ITextRegion {
-	static private final byte fLength = 1;
-	static private final byte fTextLength = 1;
-	static private final String fType = XMLRegionContext.XML_TAG_CLOSE;
-	private int fStart;
-
-
-	public TagCloseRegion() {
-		super();
-	}
-
-	public TagCloseRegion(int start) {
-		this();
-		fStart = start;
-	}
-
-	public void adjustLengthWith(int i) {
-		throw new SourceEditingRuntimeException("invalid for this region type"); //$NON-NLS-1$
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		// not supported
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// can never be updated
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagNameRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagNameRegion.java
deleted file mode 100644
index f01e5b0..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagNameRegion.java
+++ /dev/null
@@ -1,98 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class TagNameRegion implements ITextRegion {
-	static private final String fType = XMLRegionContext.XML_TAG_NAME;
-	private short fLength;
-	private int fStart;
-	private short fTextLength;
-
-
-	public TagNameRegion() {
-		super();
-	}
-
-	public TagNameRegion(int start, int textLength, int length) {
-		this();
-		fStart = start;
-		fTextLength = (short) textLength;
-		fLength = (short) length;
-	}
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		fTextLength += i;
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = (short) region.getLength();
-		fTextLength = (short) region.getTextLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// can never be updated
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagOpenRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagOpenRegion.java
deleted file mode 100644
index f09c83d..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/TagOpenRegion.java
+++ /dev/null
@@ -1,98 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class TagOpenRegion implements ITextRegion {
-	static private final String fType = XMLRegionContext.XML_TAG_OPEN;
-	private int fLength;
-	private int fStart;
-	private int fTextLength;
-
-
-	public TagOpenRegion() {
-		super();
-	}
-
-	public TagOpenRegion(int start, int textLength, int length) {
-		this();
-		fStart = start;
-		fTextLength = textLength;
-		fLength = length;
-	}
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		fTextLength += 1;
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = region.getLength();
-		fTextLength = region.getTextLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// can never be updated
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/WhiteSpaceOnlyRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/WhiteSpaceOnlyRegion.java
deleted file mode 100644
index 2727095..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/WhiteSpaceOnlyRegion.java
+++ /dev/null
@@ -1,190 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-
-
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.Utilities;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class WhiteSpaceOnlyRegion implements ITextRegion {
-	static private final byte fTextLength = 0;
-
-	static private final String fType = XMLRegionContext.WHITE_SPACE;
-	protected int fLength;
-	protected int fStart;
-
-	public WhiteSpaceOnlyRegion(int start, int length) {
-		super();
-		fStart = start;
-		fLength = length;
-	}
-
-	public void adjust(int i) {
-		fStart += i;
-	}
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		// not supported
-
-	}
-
-	public boolean contains(int position) {
-
-		return fStart <= position && position < fStart + fLength;
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = region.getLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public void setLength(int i) {
-		fLength = i;
-	}
-
-	public void setStart(int i) {
-		fStart = i;
-	}
-
-	public void setTextLength(short i) {
-		throw new SourceEditingRuntimeException("invalid call"); //$NON-NLS-1$
-	}
-
-	public void setType(String string) {
-		throw new SourceEditingRuntimeException("invalid call"); //$NON-NLS-1$
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	/**
-	 * For this ITextRegion type, the start must in terms of what the region
-	 * expects ... that is, its not document offset, but start relative to
-	 * what ever contains it.
-	 */
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// if the region is an easy type (e.g. attribute value),
-		// and the requested changes are all
-		// alphanumeric, then make the change here locally.
-		// (This can obviously be made more sophisticated as the need arises,
-		// but should
-		// always follow this pattern.)
-		if (Debug.debugStructuredDocument) {
-			System.out.println("\t\tContextRegion::updateModel"); //$NON-NLS-1$
-			System.out.println("\t\t\tregion type is " + fType); //$NON-NLS-1$
-		}
-		boolean canHandle = false;
-		// note: we'll always handle deletes from these
-		// regions ... if its already that region,
-		// deleting something from it won't change its
-		// type. (remember, the calling program needs
-		// to insure we are not called, if not all contained
-		// on one region.
-		if ((changes == null) || (changes.length() == 0)) {
-			// delete case
-			// We can not do the quick delete, if
-			// if all the text in a region is to be deleted.
-			// Or, if the delete starts in the white space region.
-			// In these cases, a reparse is needed.
-			// Minor note, we use textEnd-start since it always
-			// less than or equal to end-start. This might
-			// cause us to miss a few cases we could have handled,
-			// but will prevent us from trying to handle funning cases
-			// involving whitespace.
-			if ((fStart >= getTextEnd()) || (Math.abs(lengthToReplace) >= getTextEnd() - getStart())) {
-				canHandle = false;
-			} else {
-				canHandle = true;
-			}
-		} else {
-			if (RegionUpdateRule.canHandleAsWhiteSpace(this, parent, changes, requestStart, lengthToReplace)) {
-				canHandle = true;
-			} else {
-				canHandle = false;
-			}
-
-		}
-		RegionChangedEvent result = null;
-
-		if (canHandle) {
-			// at this point, we still have the old region. We won't create a
-			// new instance, we'll just update the one we have, by changing
-			// its end postion,
-			// The parent flatnode, upon return, has responsibility
-			// for updating sibling regions.
-			// and in turn, the structuredDocument itself has responsibility
-			// for
-			// updating the text store and down stream flatnodes.
-			if (Debug.debugStructuredDocument) {
-				System.out.println("change handled by region"); //$NON-NLS-1$
-			}
-			int lengthDifference = Utilities.calculateLengthDifference(changes, lengthToReplace);
-			// Note: we adjust both end and text end, because for any change
-			// that is in only the trailing whitespace region, we should not
-			// do a quick change,
-			// so 'canHandle' should have been false for those case.
-			fLength += lengthDifference;
-
-			result = new RegionChangedEvent(parent.getParentDocument(), requester, parent, this, changes, requestStart, lengthToReplace);
-		}
-
-		return result;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLCDataTextRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLCDataTextRegion.java
deleted file mode 100644
index e6f3cbe..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLCDataTextRegion.java
+++ /dev/null
@@ -1,179 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.Utilities;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class XMLCDataTextRegion implements ITextRegion {
-	static private final String fType = XMLRegionContext.XML_CDATA_TEXT;
-	private int fLength;
-	private int fStart;
-	private int fTextLength;
-
-
-	public XMLCDataTextRegion() {
-		super();
-	}
-
-	public XMLCDataTextRegion(int start, int textLength, int length) {
-		this();
-		fStart = start;
-		fTextLength = textLength;
-		fLength = length;
-	}
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		fTextLength += i;
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = region.getLength();
-		fTextLength = region.getTextLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		// TODO: shouldn't cdata be like XML Content ... length and text
-		// length
-		// always be the same, regardless of whitespace?
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// TODO: this is a pretty lame method, since XML CData region can have
-		// a much
-		// better rule for region update, but this is what previous
-		// (unfactored)
-		// version had, so I'll carry it over, of now.
-		RegionChangedEvent result = null;
-		// if the region is an easy type (e.g. attribute value),
-		// and the requested changes are all
-		// alphanumeric, then make the change here locally.
-		// (This can obviously be made more sophisticated as the need arises,
-		// but should
-		// always follow this pattern.)
-		if (Debug.debugStructuredDocument) {
-			System.out.println("\t\tContextRegion::updateModel"); //$NON-NLS-1$
-			System.out.println("\t\t\tregion type is " + fType); //$NON-NLS-1$
-		}
-		boolean canHandle = false;
-		// note: we'll always handle deletes from these
-		// regions ... if its already that region,
-		// deleting something from it won't change its
-		// type. (remember, the calling program needs
-		// to insure we are not called, if not all contained
-		// on one region.
-		if ((changes == null) || (changes.length() == 0)) {
-			// delete case
-			// We can not do the quick delete, if
-			// if all the text in a region is to be deleted.
-			// Or, if the delete starts in the white space region.
-			// In these cases, a reparse is needed.
-			// Minor note, we use textEnd-start since it always
-			// less than or equal to end-start. This might
-			// cause us to miss a few cases we could have handled,
-			// but will prevent us from trying to handle funning cases
-			// involving whitespace.
-			if ((fStart >= getTextEnd()) || (Math.abs(lengthToReplace) >= getTextEnd() - getStart())) {
-				canHandle = false;
-			} else {
-				canHandle = true;
-			}
-		} else {
-			if ((RegionUpdateRule.canHandleAsWhiteSpace(this, parent, changes, requestStart, lengthToReplace)) || RegionUpdateRule.canHandleAsLetterOrDigit(this, parent, changes, requestStart, lengthToReplace)) {
-				canHandle = true;
-			} else {
-				canHandle = false;
-			}
-
-		}
-		if (canHandle) {
-			// at this point, we still have the old region. We won't create a
-			// new instance, we'll just update the one we have, by changing
-			// its end postion,
-			// The parent flatnode, upon return, has responsibility
-			// for updating sibling regions.
-			// and in turn, the structuredDocument itself has responsibility
-			// for
-			// updating the text store and down stream flatnodes.
-			if (Debug.debugStructuredDocument) {
-				System.out.println("change handled by region"); //$NON-NLS-1$
-			}
-			int lengthDifference = Utilities.calculateLengthDifference(changes, lengthToReplace);
-			// Note: we adjust both end and text end, because for any change
-			// that is in only the trailing whitespace region, we should not
-			// do a quick change,
-			// so 'canHandle' should have been false for those case.
-			// TO_DO_FUTURE: cache value of canHandleAsWhiteSpace from above
-			// If we are handling as whitespace, there is no need to increase
-			// the text length, only
-			// the total length is changing.
-			if (!RegionUpdateRule.canHandleAsWhiteSpace(this, parent, changes, requestStart, lengthToReplace)) {
-				fTextLength += lengthDifference;
-			}
-			fLength += lengthDifference;
-			result = new RegionChangedEvent(parent.getParentDocument(), requester, parent, this, changes, requestStart, lengthToReplace);
-		}
-
-		return result;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLContentRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLContentRegion.java
deleted file mode 100644
index 7155dfc..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLContentRegion.java
+++ /dev/null
@@ -1,179 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.RegionChangedEvent;
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.core.util.Utilities;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-
-public class XMLContentRegion implements ITextRegion {
-	static private final String fType = XMLRegionContext.XML_CONTENT;
-	// length and textLength are always the same for content region
-	//private int fTextLength;
-	private int fLength;
-	private int fStart;
-
-
-	public XMLContentRegion() {
-		super();
-	}
-
-	public XMLContentRegion(int start, int length) {
-		this();
-		fStart = start;
-		fLength = length;
-	}
-
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		// not supported
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = region.getLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public int getTextEnd() {
-		return fStart + fLength;
-	}
-
-	public int getTextLength() {
-		return fLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// TODO: this is a pretty lame method, since XML Content can have a
-		// much
-		// better rule for region update, but this is what previous
-		// (unfactored)
-		// version had, so I'll carry it over, of now.
-		RegionChangedEvent result = null;
-		// if the region is an easy type (e.g. attribute value),
-		// and the requested changes are all
-		// alphanumeric, then make the change here locally.
-		// (This can obviously be made more sophisticated as the need arises,
-		// but should
-		// always follow this pattern.)
-		if (Debug.debugStructuredDocument) {
-			System.out.println("\t\tContextRegion::updateModel"); //$NON-NLS-1$
-			System.out.println("\t\t\tregion type is " + fType); //$NON-NLS-1$
-		}
-		boolean canHandle = false;
-		// note: we'll always handle deletes from these
-		// regions ... if its already that region,
-		// deleting something from it won't change its
-		// type. (remember, the calling program needs
-		// to insure we are not called, if not all contained
-		// on one region.
-		if ((changes == null) || (changes.length() == 0)) {
-			// delete case
-			// We can not do the quick delete, if
-			// if all the text in a region is to be deleted.
-			// Or, if the delete starts in the white space region.
-			// In these cases, a reparse is needed.
-			// Minor note, we use textEnd-start since it always
-			// less than or equal to end-start. This might
-			// cause us to miss a few cases we could have handled,
-			// but will prevent us from trying to handle funning cases
-			// involving whitespace.
-			if ((fStart >= getTextEnd()) || (Math.abs(lengthToReplace) >= getTextEnd() - getStart())) {
-				canHandle = false;
-			} else {
-				canHandle = true;
-			}
-		} else {
-			if ((RegionUpdateRule.canHandleAsWhiteSpace(this, parent, changes, requestStart, lengthToReplace)) || RegionUpdateRule.canHandleAsLetterOrDigit(this, parent, changes, requestStart, lengthToReplace)) {
-				canHandle = true;
-			} else {
-				canHandle = false;
-			}
-
-		}
-		if (canHandle) {
-			// at this point, we still have the old region. We won't create a
-			// new instance, we'll just update the one we have, by changing
-			// its end postion,
-			// The parent flatnode, upon return, has responsibility
-			// for updating sibling regions.
-			// and in turn, the structuredDocument itself has responsibility
-			// for
-			// updating the text store and down stream flatnodes.
-			if (Debug.debugStructuredDocument) {
-				System.out.println("change handled by region"); //$NON-NLS-1$
-			}
-			int lengthDifference = Utilities.calculateLengthDifference(changes, lengthToReplace);
-			// Note: we adjust both end and text end, because for any change
-			// that is in only the trailing whitespace region, we should not
-			// do a quick change,
-			// so 'canHandle' should have been false for those case.
-			fLength += lengthDifference;
-			// TO_DO_FUTURE: cache value of canHandleAsWhiteSpace from above
-			// If we are handling as whitespace, there is no need to increase
-			// the text length, only
-			// the total length is changing.
-			// don't need for content region
-			//			if (!RegionUpdateRule.canHandleAsWhiteSpace(this, changes,
-			// fStart, lengthToReplace)) {
-			//				fTextLength += lengthDifference;
-			//			}
-			result = new RegionChangedEvent(parent.getParentDocument(), requester, parent, this, changes, requestStart, lengthToReplace);
-		}
-
-		return result;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLHeadParserFactory.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLHeadParserFactory.java
deleted file mode 100644
index 66d9ee9..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLHeadParserFactory.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.text.ITextRegion;
-
-public class XMLHeadParserFactory {
-	public ITextRegion createToken(String context, int start, int textLength, int length, String text) {
-		ITextRegion newRegion = null;
-		//		if (context == XMLRegionContext.XML_CDATA_TEXT) {
-		newRegion = new XMLHeadParserRegion(context, start, textLength, length, text);
-		//		}
-		return newRegion;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLHeadParserRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLHeadParserRegion.java
deleted file mode 100644
index 98dad74..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLHeadParserRegion.java
+++ /dev/null
@@ -1,111 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-import org.eclipse.wst.sse.core.events.StructuredDocumentEvent;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * 
- * This class is not intended to be used, its just present to server as a
- * generic starting point for adding new specific region types.
- */
-
-public class XMLHeadParserRegion implements ITextRegion {
-	private int fLength;
-	private int fStart;
-	private String fText;
-	private int fTextLength;
-	// specify correct type
-	private String fType = XMLRegionContext.UNDEFINED;
-
-	public XMLHeadParserRegion() {
-		super();
-	}
-
-	public XMLHeadParserRegion(String context, int start, int textLength, int length, String text) {
-		this();
-		fType = context;
-		fStart = start;
-		fTextLength = textLength;
-		fLength = length;
-		fText = text;
-	}
-
-	public void adjustLengthWith(int i) {
-		fLength += i;
-
-	}
-
-	public void adjustStart(int i) {
-		fStart += i;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.sed.structured.text.ITextRegion#adjustTextLength(int)
-	 */
-	public void adjustTextLength(int i) {
-		fTextLength += 1;
-
-	}
-
-	public void equatePositions(ITextRegion region) {
-		fStart = region.getStart();
-		fLength = region.getLength();
-		fTextLength = region.getTextLength();
-	}
-
-	public int getEnd() {
-		return fStart + fLength;
-	}
-
-	public int getLength() {
-		return fLength;
-	}
-
-	public int getStart() {
-		return fStart;
-	}
-
-	public String getText() {
-		return fText;
-	}
-
-	public int getTextEnd() {
-		return fStart + fTextLength;
-	}
-
-	public int getTextLength() {
-		return fTextLength;
-	}
-
-	public String getType() {
-		return fType;
-	}
-
-	public String toString() {
-		return RegionToStringUtil.toString(this);
-	}
-
-	public StructuredDocumentEvent updateModel(Object requester, IStructuredDocumentRegion parent, String changes, int requestStart, int lengthToReplace) {
-		// can never be updated
-		return null;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLParserRegionFactory.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLParserRegionFactory.java
deleted file mode 100644
index 6b03796..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/parser/regions/XMLParserRegionFactory.java
+++ /dev/null
@@ -1,86 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.parser.regions;
-
-
-
-import org.eclipse.wst.sse.core.internal.parser.ContextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * 
- * This region factory is very specific to the parser output, and the specific
- * implementation classes for various regions.
- */
-
-public class XMLParserRegionFactory {
-
-	public XMLParserRegionFactory() {
-		super();
-	}
-
-	public ITextRegion createToken(ITextRegionContainer parent, String context, int start, int textLength, int length) {
-		return this.createToken(parent, context, start, textLength, length, null, null);
-	}
-
-	public ITextRegion createToken(ITextRegionContainer parent, String context, int start, int textLength, int length, String lang, String surroundingTag) {
-		ITextRegion newRegion = createToken(context, start, textLength, length);
-		// DW, 4/16/2003 token regions no longer have parents
-		//newRegion.setParent(parent);
-		return newRegion;
-	}
-
-	public ITextRegion createToken(String context, int start, int textLength, int length) {
-		return this.createToken(context, start, textLength, length, null, null);
-	}
-
-	public ITextRegion createToken(String context, int start, int textLength, int length, String lang, String surroundingTag) {
-		ITextRegion newRegion = null;
-		if (context == XMLRegionContext.XML_CDATA_TEXT) {
-			newRegion = new XMLCDataTextRegion(start, textLength, length);
-		} else if (context == XMLRegionContext.XML_CONTENT) {
-			newRegion = new XMLContentRegion(start, length);
-		} else if (context == XMLRegionContext.XML_TAG_NAME) {
-			newRegion = new TagNameRegion(start, textLength, length);
-		} else if (context == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-			newRegion = new AttributeNameRegion(start, textLength, length);
-		} else if (context == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-			newRegion = new AttributeEqualsRegion(start, textLength, length);
-		} else if (context == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-			newRegion = new AttributeValueRegion(start, textLength, length);
-		} else if (context == XMLRegionContext.XML_TAG_OPEN) {
-			newRegion = new TagOpenRegion(start, textLength, length);
-		} else if (context == XMLRegionContext.XML_TAG_CLOSE) {
-			newRegion = new TagCloseRegion(start);
-		} else if (context == XMLRegionContext.WHITE_SPACE) {
-			newRegion = new WhiteSpaceOnlyRegion(start, length);
-		} else
-		// removed this condition during transition, and implemented in
-		// subclass
-		//		if (context == XMLJSPRegionContexts.JSP_CONTENT) {
-		//			newRegion = new JSPCodeRegion(context, start, textLength, length);
-		//		} else
-		if (context == XMLRegionContext.BLOCK_TEXT) {
-			newRegion = new BlockTextRegion(context, start, textLength, length);
-			((BlockTextRegion) newRegion).setSurroundingTag(surroundingTag);
-		} else {
-			newRegion = new ContextRegion(context, start, textLength, length);
-		}
-		return newRegion;
-	}
-
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/propagate/PropagatingAdapterFactoryImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/propagate/PropagatingAdapterFactoryImpl.java
deleted file mode 100644
index 304ea02..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/propagate/PropagatingAdapterFactoryImpl.java
+++ /dev/null
@@ -1,113 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.propagate;
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapterFactory;
-
-
-/**
- * The PropagatingAdapterFactory is part of the "adapt on create" mechanism. A
- * PropagatingAdapter, once added to a node, will cause proagating adapters to
- * be created for all child nodes. A side effect of creating a
- * PropagatingAdapter for a node is that is is also creates adapters for and
- * adapts the Node for all other registered 'create on adapt' Adapters. This
- * other adapters are registered by registering their factories via plugin
- * extension point.
- */
-public class PropagatingAdapterFactoryImpl extends AbstractAdapterFactory implements PropagatingAdapterFactory {
-
-	private PropagatingAdapter adapterInstance;
-	protected List contributedFactories = null;
-
-	/**
-	 * PropagatingAdapterFactory constructor comment.
-	 */
-	public PropagatingAdapterFactoryImpl() {
-		this(PropagatingAdapter.class, true);
-	}
-
-	protected PropagatingAdapterFactoryImpl(Object adapterKey, boolean registerAdapters) { //,
-		// Object
-		// modelType)
-		// {
-		super(adapterKey, registerAdapters);
-	}
-
-	public void addContributedFactories(IAdapterFactory factory) {
-		if (contributedFactories != null) {
-			contributedFactories.add(factory);
-		}
-
-	}
-
-	public IAdapterFactory copy() {
-		PropagatingAdapterFactory clonedInstance = new PropagatingAdapterFactoryImpl(this.adapterKey, this.shouldRegisterAdapter);
-		// clone this adapters specific list of adapter factories too
-		if (contributedFactories != null) {
-			Iterator iterator = contributedFactories.iterator();
-			clonedInstance.setContributedFactories(new ArrayList());
-			while (iterator.hasNext()) {
-				IAdapterFactory existingFactory = (IAdapterFactory) iterator.next();
-				clonedInstance.addContributedFactories(existingFactory.copy());
-			}
-		}
-		return clonedInstance;
-	}
-
-	/**
-	 * createAdapter method comment.
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		// every notifier get's one of these
-		// (and the same instance of it)
-		return getAdapterInstance();
-	}
-
-	/**
-	 * Gets the adapterInstance.
-	 * 
-	 * @return Returns a PropagatingAdapter
-	 */
-	protected PropagatingAdapter getAdapterInstance() {
-		if (adapterInstance == null) {
-			adapterInstance = new PropagatingAdapterImpl();
-			if (contributedFactories != null) {
-				for (int i = 0; i < contributedFactories.size(); i++)
-					adapterInstance.addAdaptOnCreateFactory((PropagatingAdapterFactory) contributedFactories.get(i));
-			}
-		}
-		return adapterInstance;
-	}
-
-	public void release() {
-		// give the adapter instance a chance to release its factories
-		getAdapterInstance().release();
-
-	}
-
-	public void setContributedFactories(ArrayList list) {
-		contributedFactories = list;
-
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/propagate/PropagatingAdapterImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/propagate/PropagatingAdapterImpl.java
deleted file mode 100644
index ae6d4da..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/propagate/PropagatingAdapterImpl.java
+++ /dev/null
@@ -1,168 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.propagate;
-
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class PropagatingAdapterImpl implements PropagatingAdapter {
-
-	public static final Class PropagatingAdapterClass = PropagatingAdapter.class;
-	// because so many of these are created in huge file,
-	// Jeffrey Liu suggested these be done lazily, since not all
-	// models and not all nodes actually have a list of factories.
-	private List adaptOnCreateFactories = null;
-
-	/**
-	 * AbstractPropagatingAdapterImpl constructor comment.
-	 */
-	public PropagatingAdapterImpl() {
-		super();
-	}
-
-	protected void adaptOnCreate(XMLNode node) {
-		// give each of the factories a chance to adapt the node, if it
-		// chooses to
-		if (adaptOnCreateFactories != null) {
-			Iterator iterator = adaptOnCreateFactories.iterator();
-			while (iterator.hasNext()) {
-				IAdapterFactory factory = (IAdapterFactory) iterator.next();
-				factory.adapt(node);
-			}
-		}
-
-	}
-
-	/**
-	 * This mechanism can be made "easier to use" later.
-	 */
-	public void addAdaptOnCreateFactory(IAdapterFactory factory) {
-		//adaptOnCreateFactories.add(factory);
-		getAdaptOnCreateFactories().add(factory);
-	}
-
-	/**
-	 * Gets the adaptOnCreateFactories.
-	 * 
-	 * @return Returns a List
-	 */
-	public List getAdaptOnCreateFactories() {
-		if (adaptOnCreateFactories == null)
-			adaptOnCreateFactories = new ArrayList();
-		return adaptOnCreateFactories;
-	}
-
-	//	protected void unadaptOnRemove(INodeNotifier node) {
-	//		// give each of the factories a chance to process remove event
-	//		// This is a bit out of the normal adapter pattern, but I couldn't
-	//		// think of a better way to "remove" pageDirectiveWatchers, if and
-	//		// when the page directive was 'removed' (edited).
-	//		//
-	//		Iterator iterator = adaptOnCreateFactories.iterator();
-	//		while (iterator.hasNext()) {
-	//			IAdapterFactory factory = (IAdapterFactory) iterator.next();
-	//			if (factory instanceof PropagatingAdapterFactory) {
-	//				((PropagatingAdapterFactory)factory).unadapt(node);
-	//			}
-	//		}
-	//
-	//	}
-
-	/**
-	 * @see PropagatingAdapter#initializeForFactory(IAdapterFactory,
-	 *      INodeNotifier)
-	 */
-	public void initializeForFactory(IAdapterFactory factory, INodeNotifier node) {
-		// we're DOM specific implimentation
-		if (node instanceof XMLNode) {
-			XMLNode xmlNode = (XMLNode) node;
-			propagateTo(xmlNode);
-		}
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type.equals(PropagatingAdapterClass);
-	}
-
-	protected boolean isInteresting(Object newValue) {
-		return (newValue != null && (newValue instanceof Element || newValue instanceof Document || newValue instanceof DocumentType));
-	}
-
-	/**
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		// DMW, 2002.8.10. I changed this so we only propagate to Elements ...
-		// not attributes too!
-		// I'm assuming this will help performance and memory, but don't know
-		// if anyone was depending on
-		// this being proagate to attributes.
-		if (eventType == INodeNotifier.ADD && isInteresting(newValue)) {
-			propagateTo((XMLNode) newValue);
-		}
-		//	else if (eventType == INodeNotifier.CONTENT_CHANGED) {
-		//		notifier.getAdapterFor(PropagatingAdapterClass);
-		//	}
-		//	else if (eventType == INodeNotifier.CHANGE) {
-		//	}
-		//		else if (eventType == INodeNotifier.REMOVE &&
-		// isInteresting(oldValue)) {
-		//			unadaptOnRemove((XMLNode)oldValue);
-		//		}
-		//	else if (eventType == INodeNotifier.STRUCTURE_CHANGED) {
-		//	}
-	}
-
-	protected void propagateTo(XMLNode node) {
-		// get adapter to ensure its created
-		node.getAdapterFor(PropagatingAdapterClass);
-		adaptOnCreate(node);
-		propagateToChildren(node);
-	}
-
-	protected void propagateToChildren(XMLNode parent) {
-		for (Node child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {
-			propagateTo((XMLNode) child);
-		}
-	}
-
-	/**
-	 * @see PropagatingAdapter#release()
-	 */
-	public void release() {
-		if (adaptOnCreateFactories != null) {
-			Iterator iterator = adaptOnCreateFactories.iterator();
-			while (iterator.hasNext()) {
-				IAdapterFactory factory = (IAdapterFactory) iterator.next();
-				factory.release();
-			}
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/ModelQueryAdapter.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/ModelQueryAdapter.java
deleted file mode 100644
index 6916401..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/ModelQueryAdapter.java
+++ /dev/null
@@ -1,32 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.ssemodelquery;
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-
-
-public interface ModelQueryAdapter extends INodeAdapter {
-
-	public CMDocumentCache getCMDocumentCache();
-
-	public IdResolver getIdResolver();
-
-	public ModelQuery getModelQuery();
-
-	void release();
-
-	void setIdResolver(IdResolver newIdResolver);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/ModelQueryAdapterImpl.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/ModelQueryAdapterImpl.java
deleted file mode 100644
index 5f4f63f..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/ModelQueryAdapterImpl.java
+++ /dev/null
@@ -1,76 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.ssemodelquery;
-
-
-
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-
-
-public class ModelQueryAdapterImpl implements ModelQueryAdapter {
-	protected CMDocumentCache cmDocumentCache;
-	protected IdResolver idResolver;
-
-	protected ModelQuery modelQuery;
-
-	public ModelQueryAdapterImpl(CMDocumentCache cmDocumentCache, ModelQuery modelQuery, IdResolver idResolver) {
-		this.cmDocumentCache = cmDocumentCache;
-		this.modelQuery = modelQuery;
-		this.idResolver = idResolver;
-	}
-
-	public CMDocumentCache getCMDocumentCache() {
-		return cmDocumentCache;
-	}
-
-	public IdResolver getIdResolver() {
-		return idResolver;
-	}
-
-	public ModelQuery getModelQuery() {
-		return modelQuery;
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type.equals(ModelQueryAdapter.class);
-	}
-
-	/**
-	 */
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-
-	/**
-	 * @see ModelQueryAdapter#release()
-	 */
-	public void release() {
-	}
-
-	/**
-	 * @see ModelQueryAdapter#setIdResolver(IdResolver)
-	 */
-
-	public void setIdResolver(IdResolver newIdResolver) {
-		idResolver = newIdResolver;
-		if (modelQuery instanceof MovableModelQuery)
-			((MovableModelQuery) modelQuery).setIdResolver(newIdResolver);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/MovableModelQuery.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/MovableModelQuery.java
deleted file mode 100644
index 1167cc7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/ssemodelquery/MovableModelQuery.java
+++ /dev/null
@@ -1,23 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.ssemodelquery;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-
-public interface MovableModelQuery extends ModelQuery {
-
-	void setIdResolver(IdResolver newIdResolver);
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/text/XMLStructuredDocumentRegion.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/text/XMLStructuredDocumentRegion.java
deleted file mode 100644
index 77de14a..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/text/XMLStructuredDocumentRegion.java
+++ /dev/null
@@ -1,36 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.text;
-
-import org.eclipse.wst.sse.core.internal.text.BasicStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class XMLStructuredDocumentRegion extends BasicStructuredDocumentRegion implements IStructuredDocumentRegion {
-
-	public XMLStructuredDocumentRegion() {
-		super();
-	}
-
-	public String getType() {
-		String result = super.getType();
-		// normally, we want the second region as the flatnode type ... since
-		// the
-		// first one is usually just "open tag".
-		if ((result != XMLRegionContext.XML_PI_OPEN) && (getRegions().size() > 1)) {
-			result = getRegions().get(1).getType();
-		}
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/text/rules/StructuredTextPartitionerForXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/text/rules/StructuredTextPartitionerForXML.java
deleted file mode 100644
index cc6000f..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/text/rules/StructuredTextPartitionerForXML.java
+++ /dev/null
@@ -1,124 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.text.rules;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.wst.sse.core.internal.parser.ForeignRegion;
-import org.eclipse.wst.sse.core.internal.text.rules.StructuredTextPartitioner;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.IStructuredTextPartitioner;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.internal.parser.regions.BlockTextRegion;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-
-public class StructuredTextPartitionerForXML extends StructuredTextPartitioner implements IStructuredTextPartitioner {
-
-	private final static String[] configuredContentTypes = new String[]{IXMLPartitions.XML_DEFAULT, IXMLPartitions.XML_CDATA, IXMLPartitions.XML_PI, IXMLPartitions.XML_DECLARATION, IXMLPartitions.XML_COMMENT, IXMLPartitions.DTD_SUBSET};
-
-	/**
-	 * Constructor for JSPDocumentPartioner.
-	 */
-	public StructuredTextPartitionerForXML() {
-		super();
-	}
-
-	protected void setInternalPartition(int offset, int length, String type) {
-		super.setInternalPartition(offset, length, type);
-	}
-
-	protected void initLegalContentTypes() {
-		fSupportedTypes = configuredContentTypes;
-	}
-
-	/**
-	 * @see com.ibm.sed.model.StructuredTextPartitioner#getPartitionType(com.ibm.sed.structuredDocument.ITextRegion)
-	 */
-	public String getPartitionType(ITextRegion region, int offset) {
-		String result = null;
-		if (region.getType() == XMLRegionContext.XML_COMMENT_TEXT)
-			result = IXMLPartitions.XML_COMMENT;
-		else if (region.getType() == XMLRegionContext.XML_CDATA_TEXT)
-			result = IXMLPartitions.XML_CDATA;
-		else if (region.getType() == XMLRegionContext.XML_PI_OPEN)
-			result = IXMLPartitions.XML_PI;
-		else if (region.getType() == XMLRegionContext.XML_DOCTYPE_DECLARATION)
-			result = IXMLPartitions.XML_DECLARATION;
-		else if (region.getType() == XMLRegionContext.XML_DOCTYPE_INTERNAL_SUBSET)
-			result = IXMLPartitions.DTD_SUBSET;
-		else
-			result = super.getPartitionType(region, offset);
-		return result;
-	}
-
-	protected String getPartitionType(ForeignRegion region, int offset) {
-		// temp added just to dis-ambiguate call from subclass
-		return super.getPartitionType(region, offset);
-	}
-
-	public String getPartitionTypeBetween(IStructuredDocumentRegion previousNode, ITextRegion previousStartTagNameRegion, IStructuredDocumentRegion nextNode, ITextRegion nextEndTagNameRegion) {
-		return super.getPartitionTypeBetween(previousNode, previousStartTagNameRegion, nextNode, nextEndTagNameRegion);
-	}
-
-	public String getDefault() {
-		return IXMLPartitions.XML_DEFAULT;
-	}
-
-	public IDocumentPartitioner newInstance() {
-		StructuredTextPartitionerForXML instance = new StructuredTextPartitionerForXML();
-		return instance;
-	}
-
-	/**
-	 * @return
-	 */
-	public static String[] getConfiguredContentTypes() {
-		return configuredContentTypes;
-	}
-
-	protected String getPartitionFromBlockedText(ITextRegion region, int offset, String result) {
-		// was moved to subclass for quick transition
-		String newResult = result;
-		// nsd_TODO: David and I need to discuss, design, and implement this
-		// for all block tags and comments
-		// and make sure is part of "extensible" design of block tags
-		if (region.getType() == XMLRegionContext.BLOCK_TEXT) {
-			// for code safety, we'll always check instanceof, but I think
-			// always true.
-			if (region instanceof BlockTextRegion) {
-				// super is used below so won't be ambiguous
-				newResult = getPartitionType((BlockTextRegion) region, offset);
-			} else if (region instanceof ForeignRegion) {
-				newResult = getPartitionType((ForeignRegion) region, offset);
-			} else {
-				newResult = getUnknown();
-			}
-		}
-		return newResult;
-	}
-
-	protected boolean doParserSpecificCheck(int offset, boolean partitionFound, IStructuredDocumentRegion sdRegion, IStructuredDocumentRegion previousStructuredDocumentRegion, ITextRegion next, ITextRegion previousStart) {
-		// this was moved down to subclass of StructuredTextPartioner
-		// for quick fix to transition problems. Heirarchy needs lots of
-		// cleanup.
-		if (previousStart != null && previousStart.getType() == XMLRegionContext.XML_TAG_OPEN && next.getType() == XMLRegionContext.XML_END_TAG_OPEN) {
-			ITextRegion previousName = previousStructuredDocumentRegion.getRegionAtCharacterOffset(previousStructuredDocumentRegion.getEndOffset(previousStart));
-			ITextRegion nextName = sdRegion.getRegionAtCharacterOffset(sdRegion.getEndOffset(next));
-			if (previousName != null && nextName != null && previousName.getType() == XMLRegionContext.XML_TAG_NAME && nextName.getType() == XMLRegionContext.XML_TAG_NAME) {
-				setInternalPartition(offset, 0, getPartitionTypeBetween(previousStructuredDocumentRegion, previousName, sdRegion, nextName));
-				partitionFound = true;
-			}
-		}
-		return partitionFound;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/util/DebugDocument.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/util/DebugDocument.java
deleted file mode 100644
index 13afbc8..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/util/DebugDocument.java
+++ /dev/null
@@ -1,104 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.util;
-
-import java.io.PrintStream;
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class DebugDocument {
-
-	public static void dump(Document document) {
-		if (document == null)
-			return;
-		System.out.println("Dump of DOM"); //$NON-NLS-1$
-
-		dump(document, System.out);
-
-		//
-		System.out.println();
-		System.out.println("= = = = = ="); //$NON-NLS-1$
-		System.out.println();
-
-	}
-
-	public static void dump(Document document, PrintStream out) {
-		Node node = document.getFirstChild();
-		while (node != null) {
-			dump(node, out);
-			node = node.getNextSibling();
-		}
-
-	}
-
-	public static void dump(Node topNode) {
-		dump(topNode, System.out);
-	}
-
-	public static void dump(Node topNode, PrintStream out) {
-		if (topNode == null)
-			return;
-		// print out this node
-		//
-		printNode(topNode, out);
-
-		// now print out its children
-		//NodeList nodes = topNode.getChildNodes();
-		//int len = nodes.getLength();
-		//for (int i = 0; i < len; i++) {
-
-		//Node node = nodes.item(i);
-		//dump(node, out);
-		//}
-	}
-
-	public static void printNode(Node topNode) {
-		printNode(topNode, System.out);
-
-	}
-
-	public static void printNode(Node topNode, PrintStream out) {
-		// print out this node
-		//
-		IStructuredDocumentRegion firstStructuredDocumentRegion = ((XMLNode) topNode).getFirstStructuredDocumentRegion();
-		IStructuredDocumentRegion lastStructuredDocumentRegion = ((XMLNode) topNode).getLastStructuredDocumentRegion();
-		if ((firstStructuredDocumentRegion == null) || (lastStructuredDocumentRegion == null)) {
-			// no text to output
-		} else {
-			int start = firstStructuredDocumentRegion.getStart();
-			int end = lastStructuredDocumentRegion.getEnd();
-
-			String outString = topNode.toString();
-			outString = org.eclipse.wst.sse.core.util.StringUtils.escape(outString);
-			out.println("[" + start + ", " + end + "]" + outString); //$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-		}
-		// now do its children
-		NodeList nodes = topNode.getChildNodes();
-		int len = nodes.getLength();
-		for (int i = 0; i < len; i++) {
-			Node childNode = nodes.item(i);
-			printNode(childNode, out);
-		}
-
-	}
-
-	public DebugDocument() {
-		super();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/AbstractPropagatingValidator.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/AbstractPropagatingValidator.java
deleted file mode 100644
index 9144662..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/AbstractPropagatingValidator.java
+++ /dev/null
@@ -1,45 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.validate;
-
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.validate.ValidationAdapter;
-import org.w3c.dom.Node;
-
-
-public abstract class AbstractPropagatingValidator extends ValidationComponent {
-
-	/**
-	 * Constructor for AbstractPropagatingValidator.
-	 */
-	public AbstractPropagatingValidator() {
-		super();
-	}
-
-	protected abstract ValidationComponent getPropagatee();
-
-	protected abstract ValidationAdapter getValidator();
-
-	/**
-	 * @see com.ibm.sed.adapters.validate.ValidationAdapter#validate(IndexedRegion)
-	 */
-	public void validate(IndexedRegion node) {
-		if (node == null)
-			return;
-		getValidator().validate(node);
-
-
-		Propagator.propagateToChildElements(getPropagatee(), (Node) node);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/Propagator.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/Propagator.java
deleted file mode 100644
index 3cdcca5..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/Propagator.java
+++ /dev/null
@@ -1,51 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.validate;
-
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.validate.ValidationAdapter;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class Propagator {
-
-	public static void propagateToChildElements(ValidationComponent validator, Node parent) {
-		if (parent == null)
-			return;
-		Class clazz = validator.getClass();
-
-		NodeList children = parent.getChildNodes();
-		for (int i = 0; i < children.getLength(); i++) {
-			Node child = children.item(i);
-			if (child == null || child.getNodeType() != Node.ELEMENT_NODE)
-				continue;
-
-			INodeNotifier notifier = (INodeNotifier) child;
-			ValidationAdapter va = (ValidationAdapter) notifier.getExistingAdapter(clazz);
-			if (va == null) {
-				notifier.addAdapter(validator);
-				va = validator;
-			}
-			va.validate((IndexedRegion) child);
-		}
-	}
-
-	/**
-	 * Propagator is just a placeholder of utilities. Don't instantiate.
-	 */
-	private Propagator() {
-		super();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/ValidationComponent.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/ValidationComponent.java
deleted file mode 100644
index 797d9cb..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/internal/validate/ValidationComponent.java
+++ /dev/null
@@ -1,50 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.internal.validate;
-
-
-
-import org.eclipse.wst.sse.core.validate.ValidationAdapter;
-import org.eclipse.wst.sse.core.validate.ValidationReporter;
-
-public abstract class ValidationComponent implements ValidationAdapter {
-
-	protected ValidationReporter reporter = null;
-
-	/**
-	 * ValidationComponent constructor comment.
-	 */
-	public ValidationComponent() {
-		super();
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-		return (type == ValidationAdapter.class);
-	}
-
-	/**
-	 */
-	public void notifyChanged(org.eclipse.wst.sse.core.INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		// This method will be implemented in the V2.
-	}
-
-	/**
-	 */
-	public void setReporter(ValidationReporter reporter) {
-		this.reporter = reporter;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/EmbeddedXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/EmbeddedXML.java
deleted file mode 100644
index 2924295..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/EmbeddedXML.java
+++ /dev/null
@@ -1,89 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.modelhandler;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.core.parser.JSPCapableParser;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryAdapterFactoryForEmbeddedXML;
-
-
-public class EmbeddedXML implements EmbeddedTypeHandler {
-
-	private static List supportedMimeTypes;
-	public String ContentTypeID_EmbeddedXML = "org.eclipse.wst.xml.core.contenttype.EmbeddedXML"; //$NON-NLS-1$
-
-	/**
-	 * Constructor for EmbeddedXML.
-	 */
-	public EmbeddedXML() {
-		super();
-	}
-
-	/*
-	 * @see EmbeddedContentType#getAdapterFactories()
-	 */
-	public List getAdapterFactories() {
-		List factories = new ArrayList();
-		factories.add(new ModelQueryAdapterFactoryForEmbeddedXML());
-		// factories.addAll(PluginContributedFactoryReader.getInstance().getFactories(this));
-		return factories;
-	}
-
-	/**
-	 * @see EmbeddedContentType#getFamilyId()
-	 */
-	public String getFamilyId() {
-		return ModelHandlerForXML.AssociatedContentTypeID;
-	}
-
-	public List getSupportedMimeTypes() {
-		if (supportedMimeTypes == null) {
-			supportedMimeTypes = new ArrayList();
-			supportedMimeTypes.add("text/xml"); //$NON-NLS-1$
-		}
-		return supportedMimeTypes;
-	}
-
-	public void initializeFactoryRegistry(FactoryRegistry registry) {
-		//TODO: initialize
-	}
-
-	/*
-	 * @see EmbeddedContentType#initializeParser(RegionParser)
-	 */
-	public void initializeParser(JSPCapableParser parser) {
-		// nothing to initialize for "pure" XML
-		// compare with XHTML
-	}
-
-	public boolean isDefault() {
-		return false;
-	}
-
-	public EmbeddedTypeHandler newInstance() {
-		return new EmbeddedXML();
-	}
-
-	public void uninitializeFactoryRegistry(FactoryRegistry registry) {
-		// TODO: need to undo anything we did in initialize
-
-	}
-
-	public void uninitializeParser(JSPCapableParser parser) {
-		// need to undo anything we did in initialize
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/ModelHandlerForXML.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/ModelHandlerForXML.java
deleted file mode 100644
index 526feea..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/ModelHandlerForXML.java
+++ /dev/null
@@ -1,59 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.modelhandler;
-
-import org.eclipse.wst.sse.core.IModelLoader;
-import org.eclipse.wst.sse.core.document.IDocumentCharsetDetector;
-import org.eclipse.wst.sse.core.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.modelhandler.AbstractModelHandler;
-import org.eclipse.wst.sse.core.modelhandler.IModelHandler;
-import org.eclipse.wst.xml.core.encoding.XMLDocumentCharsetDetector;
-import org.eclipse.wst.xml.core.encoding.XMLDocumentLoader;
-
-
-/**
- * Provides generic XML model handling. It is also marked as the default
- * content type handler. There should be only one implementation of the
- * default.
- */
-public class ModelHandlerForXML extends AbstractModelHandler implements IModelHandler {
-	/**
-	 * Needs to match what's in plugin registry. In fact, can be overwritten
-	 * at run time with what's in registry! (so should never be 'final')
-	 */
-	static String AssociatedContentTypeID = "org.eclipse.core.runtime.xml"; //$NON-NLS-1$
-	/**
-	 * Needs to match what's in plugin registry. In fact, can be overwritten
-	 * at run time with what's in registry! (so should never be 'final')
-	 */
-	private static String ModelHandlerID = "org.eclipse.wst.xml.core.modelhandler"; //$NON-NLS-1$
-
-	public ModelHandlerForXML() {
-		super();	
-		setId(ModelHandlerID);
-		setAssociatedContentTypeId(AssociatedContentTypeID);
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		return new XMLDocumentLoader();
-	}
-
-	public IDocumentCharsetDetector getEncodingDetector() {
-		return new XMLDocumentCharsetDetector();
-	}
-
-	public IModelLoader getModelLoader() {
-		return new XMLModelLoader();
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/XMLModelLoader.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/XMLModelLoader.java
deleted file mode 100644
index 9c1851f..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/modelhandler/XMLModelLoader.java
+++ /dev/null
@@ -1,93 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.modelhandler;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.sse.core.AbstractModelLoader;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IModelLoader;
-import org.eclipse.wst.sse.core.document.IDocumentLoader;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.encoding.XMLDocumentLoader;
-import org.eclipse.wst.xml.core.internal.DebugAdapterFactory;
-import org.eclipse.wst.xml.core.internal.document.XMLModelImpl;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryAdapterFactoryForXML;
-import org.eclipse.wst.xml.core.internal.propagate.PropagatingAdapterFactoryImpl;
-
-
-/**
- * This class reads an XML file and creates an XML Structured Model.
- *  
- */
-public class XMLModelLoader extends AbstractModelLoader {
-
-	//	private static final String STR_ENCODING = "encoding"; //$NON-NLS-1$
-
-	/**
-	 * XMLLoader constructor comment.
-	 */
-	public XMLModelLoader() {
-		super();
-	}
-
-	public List getAdapterFactories() {
-		List result = new ArrayList();
-		IAdapterFactory factory = null;
-		factory = new ModelQueryAdapterFactoryForXML();
-		result.add(factory);
-		// Does XML need propagating adapter? Or just JSP?
-		factory = new PropagatingAdapterFactoryImpl();
-		result.add(factory);
-		return result;
-	}
-
-	public IDocumentLoader getDocumentLoader() {
-		if (documentLoaderInstance == null) {
-			documentLoaderInstance = new XMLDocumentLoader();
-		}
-		return documentLoaderInstance;
-	}
-
-	public IModelLoader newInstance() {
-		return new XMLModelLoader();
-	}
-
-	public IStructuredModel newModel() {
-		return new XMLModelImpl();
-	}
-
-	protected void preLoadAdapt(IStructuredModel structuredModel) {
-		super.preLoadAdapt(structuredModel);
-		XMLModel domModel = (XMLModel) structuredModel;
-		// if there is a model in the adapter, this will adapt it to
-		// first node. After that the PropagatingAdater spreads over the
-		// children being
-		// created. Each time that happends, a side effect is to
-		// also "spread" sprecific registered adapters,
-		// they two can propigate is needed.
-		((INodeNotifier) domModel.getDocument()).getAdapterFor(PropagatingAdapter.class);
-
-		if (Debug.debugNotificationAndEvents) {
-			PropagatingAdapter propagatingAdapter = (PropagatingAdapter) ((INodeNotifier) domModel.getDocument()).getAdapterFor(PropagatingAdapter.class);
-			propagatingAdapter.addAdaptOnCreateFactory(new DebugAdapterFactory());
-		}
-
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/parser/XMLRegionContext.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/parser/XMLRegionContext.java
deleted file mode 100644
index d0b4204..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/parser/XMLRegionContext.java
+++ /dev/null
@@ -1,69 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.core.parser;
-
-public interface XMLRegionContext {
-
-	public static final String BLOCK_TEXT = "BLOCK_TEXT"; //$NON-NLS-1$
-
-	public static final String UNDEFINED = "UNDEFINED"; //$NON-NLS-1$
-
-	public static final String WHITE_SPACE = "WHITE_SPACE"; //$NON-NLS-1$
-	public static final String XML_ATTLIST_DECL_CLOSE = "XML_ATTLIST_DECL_CLOSE"; //$NON-NLS-1$
-	public static final String XML_ATTLIST_DECL_CONTENT = "XML_ATTLIST_DECL_CONTENT"; //$NON-NLS-1$
-	public static final String XML_ATTLIST_DECL_NAME = "XML_ATTLIST_DECL_NAME"; //$NON-NLS-1$
-
-	public static final String XML_ATTLIST_DECLARATION = "XML_ATTLIST_DECLARATION"; //$NON-NLS-1$
-	public static final String XML_CDATA_CLOSE = "XML_CDATA_CLOSE"; //$NON-NLS-1$
-	public static final String XML_CDATA_OPEN = "XML_CDATA_OPEN"; //$NON-NLS-1$
-	public static final String XML_CDATA_TEXT = "XML_CDATA_TEXT"; //$NON-NLS-1$
-	public static final String XML_CHAR_REFERENCE = "XML_CHAR_REFERENCE"; //$NON-NLS-1$
-	public static final String XML_COMMENT_CLOSE = "XML_COMMENT_CLOSE"; //$NON-NLS-1$
-
-	public static final String XML_COMMENT_OPEN = "XML_COMMENT_OPEN"; //$NON-NLS-1$
-	public static final String XML_COMMENT_TEXT = "XML_COMMENT_TEXT"; //$NON-NLS-1$
-
-	public static final String XML_CONTENT = "XML_CONTENT"; //$NON-NLS-1$
-	public static final String XML_DECLARATION_CLOSE = "XML_DECLARATION_CLOSE"; //$NON-NLS-1$
-
-	public static final String XML_DECLARATION_OPEN = "XML_DECLARATION_OPEN"; //$NON-NLS-1$
-
-	public static final String XML_DOCTYPE_DECLARATION = "XML_DOCTYPE_DECLARATION"; //$NON-NLS-1$
-	public static final String XML_DOCTYPE_DECLARATION_CLOSE = "XML_DOCTYPE_DECLARATION_CLOSE"; //$NON-NLS-1$
-	public static final String XML_DOCTYPE_EXTERNAL_ID_PUBLIC = "XML_DOCTYPE_EXTERNAL_ID_PUBLIC"; //$NON-NLS-1$
-	public static final String XML_DOCTYPE_EXTERNAL_ID_PUBREF = "XML_DOCTYPE_EXTERNAL_ID_PUBREF"; //$NON-NLS-1$
-	public static final String XML_DOCTYPE_EXTERNAL_ID_SYSREF = "XML_DOCTYPE_EXTERNAL_ID_SYSREF"; //$NON-NLS-1$
-	public static final String XML_DOCTYPE_EXTERNAL_ID_SYSTEM = "XML_DOCTYPE_EXTERNAL_ID_SYSTEM"; //$NON-NLS-1$
-	public static final String XML_DOCTYPE_INTERNAL_SUBSET = "XML_DOCTYPE_INTERNAL_SUBSET"; //$NON-NLS-1$
-	public static final String XML_DOCTYPE_NAME = "XML_DOCTYPE_NAME"; //$NON-NLS-1$
-	public static final String XML_ELEMENT_DECL_CLOSE = "XML_ELEMENT_DECL_CLOSE"; //$NON-NLS-1$
-	public static final String XML_ELEMENT_DECL_CONTENT = "XML_ELEMENT_DECL_CONTENT"; //$NON-NLS-1$
-	public static final String XML_ELEMENT_DECL_NAME = "XML_ELEMENT_DECL_NAME"; //$NON-NLS-1$
-
-	public static final String XML_ELEMENT_DECLARATION = "XML_ELEMENT_DECLARATION"; //$NON-NLS-1$
-	public static final String XML_EMPTY_TAG_CLOSE = "XML_EMPTY_TAG_CLOSE"; //$NON-NLS-1$
-	public static final String XML_END_TAG_OPEN = "XML_END_TAG_OPEN"; //$NON-NLS-1$
-	public static final String XML_ENTITY_REFERENCE = "XML_ENTITY_REFERENCE"; //$NON-NLS-1$
-
-	public static final String XML_PE_REFERENCE = "XML_PE_REFERENCE"; //$NON-NLS-1$
-	public static final String XML_PI_CLOSE = "XML_PI_CLOSE"; //$NON-NLS-1$
-	public static final String XML_PI_CONTENT = "XML_PI_CONTENT"; //$NON-NLS-1$
-	public static final String XML_PI_OPEN = "XML_PI_OPEN"; //$NON-NLS-1$
-	public static final String XML_TAG_ATTRIBUTE_EQUALS = "XML_TAG_ATTRIBUTE_EQUALS"; //$NON-NLS-1$
-	public static final String XML_TAG_ATTRIBUTE_NAME = "XML_TAG_ATTRIBUTE_NAME"; //$NON-NLS-1$
-	public static final String XML_TAG_ATTRIBUTE_VALUE = "XML_TAG_ATTRIBUTE_VALUE"; //$NON-NLS-1$
-	public static final String XML_TAG_CLOSE = "XML_TAG_CLOSE"; //$NON-NLS-1$
-	public static final String XML_TAG_NAME = "XML_TAG_NAME"; //$NON-NLS-1$
-
-	public static final String XML_TAG_OPEN = "XML_TAG_OPEN"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/text/IXMLPartitions.java b/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/text/IXMLPartitions.java
deleted file mode 100644
index 78a5219..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/eclipse/wst/xml/core/text/IXMLPartitions.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package org.eclipse.wst.xml.core.text;
-
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-
-
-/**
- * This interface is not intended to be implemented.
- * It defines the partitioning for XML and all its partitions.
- * Clients should reference the partition type Strings defined here directly.
- * 
- * @since 1.0
- */
-public interface IXMLPartitions {
-	
-	String XML_PARTITIONING = IStructuredPartitions.STRUCTURED_PARTITIONING;
-	
-	String XML_DEFAULT = "org.eclipse.wst.xml.XML_DEFAULT"; //$NON-NLS-1$
-	String XML_CDATA = "org.eclipse.wst.xml.XML_CDATA"; //$NON-NLS-1$
-	String XML_PI = "org.eclipse.wst.xml.XML_PI"; //$NON-NLS-1$
-	String XML_DECLARATION = "org.eclipse.wst.xml.XML_DECL"; //$NON-NLS-1$
-	String XML_COMMENT = "org.eclipse.wst.xml.XML_COMMENT"; //$NON-NLS-1$
-	
-	/**
-	 * Should match
-	 * org.eclipse.wst.sse.core.dtd.partitioning.StructuredTextPartitionerForDTD.ST_DTD_SUBSET
-	 */
-	String DTD_SUBSET = "org.eclipse.wst.xml.dtd.internal_subset"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/COPYRIGHT.html b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/COPYRIGHT.html
deleted file mode 100644
index 26049b7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/COPYRIGHT.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
-                      "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-    <title>W3C IPR SOFTWARE NOTICE</title>
-  </head>
-  <body bgcolor="#FFFFFF" text="#000000">
-    <h1>
-      W3C IPR SOFTWARE NOTICE
-    </h1>
-    <h3>
-      Copyright &copy; 2000 <loc href="http://www.w3.org/">World Wide Web
-      Consortium</loc>, (<loc href="http://www.lcs.mit.edu/">Massachusetts
-      Institute of Technology</loc>, <loc href="http://www.inria.fr/">Institut
-      National de Recherche en Informatique et en Automatique</loc>, <loc
-      href="http://www.keio.ac.jp/">Keio University</loc>). All Rights
-      Reserved.
-    </h3>
-    <p>
-      The DOM bindings are published under the W3C Software Copyright Notice
-      and License. The software license requires "Notice of any changes or
-      modifications to the W3C files, including the date changes were made."
-      Consequently, modified versions of the DOM bindings must document that
-      they do not conform to the W3C standard; in the case of the IDL binding,
-      the pragma prefix can no longer be 'w3c.org'; in the case of the Java
-      binding, the package names can no longer be in the 'org.w3c' package.
-    </p>
-    <p>
-      <b>Note:</b> The original version of the W3C Software Copyright Notice
-      and License could be found at <a
-      href='http://www.w3.org/Consortium/Legal/copyright-software-19980720'>http://www.w3.org/Consortium/Legal/copyright-software-19980720</a>
-    </p>
-    <h3>
-      Copyright &copy; 1994-2000 <a href="http://www.w3.org/">World Wide Web
-      Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
-      Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
-      National de Recherche en Informatique et en Automatique</a>, <a
-      href="http://www.keio.ac.jp/">Keio University</a>). All Rights
-      Reserved. http://www.w3.org/Consortium/Legal/
-    </h3>
-    <p>
-      This W3C work (including software, documents, or other related items) is
-      being provided by the copyright holders under the following license. By
-      obtaining, using and/or copying this work, you (the licensee) agree that
-      you have read, understood, and will comply with the following terms and
-      conditions:
-    </p>
-    <p>
-      Permission to use, copy, and modify this software and its documentation,
-      with or without modification,&nbsp; for any purpose and without fee or
-      royalty is hereby granted, provided that you include the following on ALL
-      copies of the software and documentation or portions thereof, including
-      modifications, that you make:
-    </p>
-    <ol>
-      <li>
-	The full text of this NOTICE in a location viewable to users of the
-	redistributed or derivative work.
-      </li>
-      <li>
-	Any pre-existing intellectual property disclaimers, notices, or terms
-	and conditions. If none exist, a short notice of the following form
-	(hypertext is preferred, text is permitted) should be used within the
-	body of any redistributed or derivative code: "Copyright &copy;
-	[$date-of-software] <a href="http://www.w3.org/">World Wide Web
-	Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
-	Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
-	National de Recherche en Informatique et en Automatique</a>, <a
-	href="http://www.keio.ac.jp/">Keio University</a>).  All Rights
-	Reserved. http://www.w3.org/Consortium/Legal/"
-      </li>
-      <li>
-	Notice of any changes or modifications to the W3C files, including the
-	date changes were made. (We recommend you provide URIs to the location
-	from which the code is derived.)
-      </li>
-    </ol>
-    <p>
-      THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT
-      HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED,
-      INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS
-      FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR
-      DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
-      TRADEMARKS OR OTHER RIGHTS.
-    </p>
-    <p>
-      COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
-      CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
-      DOCUMENTATION.
-    </p>
-    <p>
-      The name and trademarks of copyright holders may NOT be used in
-      advertising or publicity pertaining to the software without specific,
-      written prior permission. Title to copyright in this software and any
-      associated documentation will at all times remain with copyright
-      holders.
-    </p>
-  </body>
-</html>
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/DocumentRange.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/DocumentRange.java
deleted file mode 100644
index e40d080..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/DocumentRange.java
+++ /dev/null
@@ -1,39 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.w3c.dom.ranges;
-
-/**
- * <p>
- * See also the <a
- * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
- * 
- * @since DOM Level 2
- */
-public interface DocumentRange {
-	/**
-	 * This interface can be obtained from the object implementing the
-	 * <code>Document</code> interface using binding-specific casting
-	 * methods.
-	 * 
-	 * @return The initial state of the Range returned from this method is
-	 *         such that both of its boundary-points are positioned at the
-	 *         beginning of the corresponding Document, before any content.
-	 *         The Range returned can only be used to select content
-	 *         associated with this Document, or with DocumentFragments and
-	 *         Attrs for which this Document is the <code>ownerDocument</code>.
-	 */
-	public Range createRange();
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/Range.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/Range.java
deleted file mode 100644
index 63c3665..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/Range.java
+++ /dev/null
@@ -1,434 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.w3c.dom.ranges;
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.DocumentFragment;
-import org.w3c.dom.Node;
-
-/**
- * <p>
- * See also the <a
- * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
- * 
- * @since DOM Level 2
- */
-public interface Range {
-	/**
-	 * Compare end boundary-point of <code>sourceRange</code> to end
-	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
-	 * is invoked.
-	 */
-	public static final short END_TO_END = 2;
-	/**
-	 * Compare end boundary-point of <code>sourceRange</code> to start
-	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
-	 * is invoked.
-	 */
-	public static final short END_TO_START = 3;
-	/**
-	 * Compare start boundary-point of <code>sourceRange</code> to end
-	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
-	 * is invoked.
-	 */
-	public static final short START_TO_END = 1;
-
-	// CompareHow
-	/**
-	 * Compare start boundary-point of <code>sourceRange</code> to start
-	 * boundary-point of Range on which <code>compareBoundaryPoints</code>
-	 * is invoked.
-	 */
-	public static final short START_TO_START = 0;
-
-	/**
-	 * Duplicates the contents of a Range
-	 * 
-	 * @return A DocumentFragment that contains content equivalent to this
-	 *         Range.
-	 * @exception DOMException
-	 *                HIERARCHY_REQUEST_ERR: Raised if a DocumentType node
-	 *                would be extracted into the new DocumentFragment. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public DocumentFragment cloneContents() throws DOMException;
-
-	/**
-	 * Produces a new Range whose boundary-points are equal to the
-	 * boundary-points of the Range.
-	 * 
-	 * @return The duplicated Range.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Range cloneRange() throws DOMException;
-
-	/**
-	 * Collapse a Range onto one of its boundary-points
-	 * 
-	 * @param toStartIf
-	 *            TRUE, collapses the Range onto its start; if FALSE,
-	 *            collapses it onto its end.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void collapse(boolean toStart) throws DOMException;
-
-	/**
-	 * Compare the boundary-points of two Ranges in a document.
-	 * 
-	 * @param howA
-	 *            code representing the type of comparison, as defined above.
-	 * @param sourceRangeThe
-	 *            <code>Range</code> on which this current
-	 *            <code>Range</code> is compared to.
-	 * @return -1, 0 or 1 depending on whether the corresponding
-	 *         boundary-point of the Range is respectively before, equal to,
-	 *         or after the corresponding boundary-point of
-	 *         <code>sourceRange</code>.
-	 * @exception DOMException
-	 *                WRONG_DOCUMENT_ERR: Raised if the two Ranges are not in
-	 *                the same Document or DocumentFragment. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public short compareBoundaryPoints(short how, Range sourceRange) throws DOMException;
-
-	/**
-	 * Removes the contents of a Range from the containing document or
-	 * document fragment without returning a reference to the removed content.
-	 * 
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of
-	 *                the content of the Range is read-only or any of the
-	 *                nodes that contain any of the content of the Range are
-	 *                read-only. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void deleteContents() throws DOMException;
-
-	/**
-	 * Called to indicate that the Range is no longer in use and that the
-	 * implementation may relinquish any resources associated with this Range.
-	 * Subsequent calls to any methods or attribute getters on this Range will
-	 * result in a <code>DOMException</code> being thrown with an error code
-	 * of <code>INVALID_STATE_ERR</code>.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void detach() throws DOMException;
-
-	/**
-	 * Moves the contents of a Range from the containing document or document
-	 * fragment to a new DocumentFragment.
-	 * 
-	 * @return A DocumentFragment containing the extracted contents.
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of
-	 *                the content of the Range is read-only or any of the
-	 *                nodes which contain any of the content of the Range are
-	 *                read-only. <br>
-	 *                HIERARCHY_REQUEST_ERR: Raised if a DocumentType node
-	 *                would be extracted into the new DocumentFragment. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public DocumentFragment extractContents() throws DOMException;
-
-	/**
-	 * TRUE if the Range is collapsed
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public boolean getCollapsed() throws DOMException;
-
-	/**
-	 * The deepest common ancestor container of the Range's two
-	 * boundary-points.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getCommonAncestorContainer() throws DOMException;
-
-	/**
-	 * Node within which the Range ends
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getEndContainer() throws DOMException;
-
-	/**
-	 * Offset within the ending node of the Range.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public int getEndOffset() throws DOMException;
-
-	/**
-	 * Node within which the Range begins
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public Node getStartContainer() throws DOMException;
-
-	/**
-	 * Offset within the starting node of the Range.
-	 * 
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public int getStartOffset() throws DOMException;
-
-	/**
-	 * Inserts a node into the Document or DocumentFragment at the start of
-	 * the Range. If the container is a Text node, this will be split at the
-	 * start of the Range (as if the Text node's splitText method was
-	 * performed at the insertion point) and the insertion will occur between
-	 * the two resulting Text nodes. Adjacent Text nodes will not be
-	 * automatically merged. If the node to be inserted is a DocumentFragment
-	 * node, the children will be inserted rather than the DocumentFragment
-	 * node itself.
-	 * 
-	 * @param newNodeThe
-	 *            node to insert at the start of the Range
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor
-	 *                container of the start of the Range is read-only. <br>
-	 *                WRONG_DOCUMENT_ERR: Raised if <code>newNode</code> and
-	 *                the container of the start of the Range were not created
-	 *                from the same document. <br>
-	 *                HIERARCHY_REQUEST_ERR: Raised if the container of the
-	 *                start of the Range is of a type that does not allow
-	 *                children of the type of <code>newNode</code> or if
-	 *                <code>newNode</code> is an ancestor of the container.
-	 *                <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>newNode</code>
-	 *                is an Attr, Entity, Notation, or Document node.
-	 */
-	public void insertNode(Node newNode) throws DOMException, RangeException;
-
-	/**
-	 * Select a node and its contents
-	 * 
-	 * @param refNodeThe
-	 *            node to select.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if an ancestor of
-	 *                <code>refNode</code> is an Entity, Notation or
-	 *                DocumentType node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void selectNode(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Select the contents within a node
-	 * 
-	 * @param refNodeNode
-	 *            to select from
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation or DocumentType node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void selectNodeContents(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Sets the attributes describing the end of a Range.
-	 * 
-	 * @param refNodeThe
-	 *            <code>refNode</code> value. This parameter must be
-	 *            different from <code>null</code>.
-	 * @param offsetThe
-	 *            <code>endOffset</code> value.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation, or DocumentType node.
-	 * @exception DOMException
-	 *                INDEX_SIZE_ERR: Raised if <code>offset</code> is
-	 *                negative or greater than the number of child units in
-	 *                <code>refNode</code>. Child units are 16-bit units if
-	 *                <code>refNode</code> is a type of CharacterData node
-	 *                (e.g., a Text or Comment node) or a
-	 *                ProcessingInstruction node. Child units are Nodes in all
-	 *                other cases. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEnd(Node refNode, int offset) throws RangeException, DOMException;
-
-	/**
-	 * Sets the end of a Range to be after a node
-	 * 
-	 * @param refNodeRange
-	 *            ends after <code>refNode</code>.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEndAfter(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Sets the end position to be before a node.
-	 * 
-	 * @param refNodeRange
-	 *            ends before <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setEndBefore(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Sets the attributes describing the start of the Range.
-	 * 
-	 * @param refNodeThe
-	 *            <code>refNode</code> value. This parameter must be
-	 *            different from <code>null</code>.
-	 * @param offsetThe
-	 *            <code>startOffset</code> value.
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code>refNode</code>
-	 *                or an ancestor of <code>refNode</code> is an Entity,
-	 *                Notation, or DocumentType node.
-	 * @exception DOMException
-	 *                INDEX_SIZE_ERR: Raised if <code>offset</code> is
-	 *                negative or greater than the number of child units in
-	 *                <code>refNode</code>. Child units are 16-bit units if
-	 *                <code>refNode</code> is a type of CharacterData node
-	 *                (e.g., a Text or Comment node) or a
-	 *                ProcessingInstruction node. Child units are Nodes in all
-	 *                other cases. <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStart(Node refNode, int offset) throws RangeException, DOMException;
-
-	/**
-	 * Sets the start position to be after a node
-	 * 
-	 * @param refNodeRange
-	 *            starts after <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStartAfter(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Sets the start position to be before a node
-	 * 
-	 * @param refNodeRange
-	 *            starts before <code>refNode</code>
-	 * @exception RangeException
-	 *                INVALID_NODE_TYPE_ERR: Raised if the root container of
-	 *                <code>refNode</code> is not an Attr, Document, or
-	 *                DocumentFragment node or if <code>refNode</code> is a
-	 *                Document, DocumentFragment, Attr, Entity, or Notation
-	 *                node.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public void setStartBefore(Node refNode) throws RangeException, DOMException;
-
-	/**
-	 * Reparents the contents of the Range to the given node and inserts the
-	 * node at the position of the start of the Range.
-	 * 
-	 * @param newParentThe
-	 *            node to surround the contents with.
-	 * @exception DOMException
-	 *                NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor
-	 *                container of either boundary-point of the Range is
-	 *                read-only. <br>
-	 *                WRONG_DOCUMENT_ERR: Raised if <code> newParent</code>
-	 *                and the container of the start of the Range were not
-	 *                created from the same document. <br>
-	 *                HIERARCHY_REQUEST_ERR: Raised if the container of the
-	 *                start of the Range is of a type that does not allow
-	 *                children of the type of <code>newParent</code> or if
-	 *                <code>newParent</code> is an ancestor of the container
-	 *                or if <code>node</code> would end up with a child node
-	 *                of a type not allowed by the type of <code>node</code>.
-	 *                <br>
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 * @exception RangeException
-	 *                BAD_BOUNDARYPOINTS_ERR: Raised if the Range partially
-	 *                selects a non-text node. <br>
-	 *                INVALID_NODE_TYPE_ERR: Raised if <code> node</code> is
-	 *                an Attr, Entity, DocumentType, Notation, Document, or
-	 *                DocumentFragment node.
-	 */
-	public void surroundContents(Node newParent) throws DOMException, RangeException;
-
-	/**
-	 * Returns the contents of a Range as a string. This string contains only
-	 * the data characters, not any markup.
-	 * 
-	 * @return The contents of the Range.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if <code>detach()</code> has
-	 *                already been invoked on this object.
-	 */
-	public String toString() throws DOMException;
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/RangeException.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/RangeException.java
deleted file mode 100644
index aea5f49..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/RangeException.java
+++ /dev/null
@@ -1,50 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.w3c.dom.ranges;
-
-/**
- * Range operations may throw a <code>RangeException</code> as specified in
- * their method descriptions.
- * <p>
- * See also the <a
- * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
- * 
- * @since DOM Level 2
- */
-public class RangeException extends RuntimeException {
-	/**
-	 * Default <code>serialVersionUID</code>
-	 */
-	private static final long serialVersionUID = 1L;
-	// RangeExceptionCode
-	/**
-	 * If the boundary-points of a Range do not meet specific requirements.
-	 */
-	public static final short BAD_BOUNDARYPOINTS_ERR = 1;
-	/**
-	 * If the container of an boundary-point of a Range is being set to either
-	 * a node of an invalid type or a node with an ancestor of an invalid
-	 * type.
-	 */
-	public static final short INVALID_NODE_TYPE_ERR = 2;
-
-	public short code;
-
-	public RangeException(short code, String message) {
-		super(message);
-		this.code = code;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/package.html b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/package.html
deleted file mode 100644
index d8fbae6..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/ranges/package.html
+++ /dev/null
@@ -1,3 +0,0 @@
-<html>
-This package contains unmodified sources provided by http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113/java-binding.zip
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/COPYRIGHT.html b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/COPYRIGHT.html
deleted file mode 100644
index 26049b7..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/COPYRIGHT.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
-                      "http://www.w3.org/TR/REC-html40/loose.dtd">
-<html>
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-    <title>W3C IPR SOFTWARE NOTICE</title>
-  </head>
-  <body bgcolor="#FFFFFF" text="#000000">
-    <h1>
-      W3C IPR SOFTWARE NOTICE
-    </h1>
-    <h3>
-      Copyright &copy; 2000 <loc href="http://www.w3.org/">World Wide Web
-      Consortium</loc>, (<loc href="http://www.lcs.mit.edu/">Massachusetts
-      Institute of Technology</loc>, <loc href="http://www.inria.fr/">Institut
-      National de Recherche en Informatique et en Automatique</loc>, <loc
-      href="http://www.keio.ac.jp/">Keio University</loc>). All Rights
-      Reserved.
-    </h3>
-    <p>
-      The DOM bindings are published under the W3C Software Copyright Notice
-      and License. The software license requires "Notice of any changes or
-      modifications to the W3C files, including the date changes were made."
-      Consequently, modified versions of the DOM bindings must document that
-      they do not conform to the W3C standard; in the case of the IDL binding,
-      the pragma prefix can no longer be 'w3c.org'; in the case of the Java
-      binding, the package names can no longer be in the 'org.w3c' package.
-    </p>
-    <p>
-      <b>Note:</b> The original version of the W3C Software Copyright Notice
-      and License could be found at <a
-      href='http://www.w3.org/Consortium/Legal/copyright-software-19980720'>http://www.w3.org/Consortium/Legal/copyright-software-19980720</a>
-    </p>
-    <h3>
-      Copyright &copy; 1994-2000 <a href="http://www.w3.org/">World Wide Web
-      Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
-      Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
-      National de Recherche en Informatique et en Automatique</a>, <a
-      href="http://www.keio.ac.jp/">Keio University</a>). All Rights
-      Reserved. http://www.w3.org/Consortium/Legal/
-    </h3>
-    <p>
-      This W3C work (including software, documents, or other related items) is
-      being provided by the copyright holders under the following license. By
-      obtaining, using and/or copying this work, you (the licensee) agree that
-      you have read, understood, and will comply with the following terms and
-      conditions:
-    </p>
-    <p>
-      Permission to use, copy, and modify this software and its documentation,
-      with or without modification,&nbsp; for any purpose and without fee or
-      royalty is hereby granted, provided that you include the following on ALL
-      copies of the software and documentation or portions thereof, including
-      modifications, that you make:
-    </p>
-    <ol>
-      <li>
-	The full text of this NOTICE in a location viewable to users of the
-	redistributed or derivative work.
-      </li>
-      <li>
-	Any pre-existing intellectual property disclaimers, notices, or terms
-	and conditions. If none exist, a short notice of the following form
-	(hypertext is preferred, text is permitted) should be used within the
-	body of any redistributed or derivative code: "Copyright &copy;
-	[$date-of-software] <a href="http://www.w3.org/">World Wide Web
-	Consortium</a>, (<a href="http://www.lcs.mit.edu/">Massachusetts
-	Institute of Technology</a>, <a href="http://www.inria.fr/">Institut
-	National de Recherche en Informatique et en Automatique</a>, <a
-	href="http://www.keio.ac.jp/">Keio University</a>).  All Rights
-	Reserved. http://www.w3.org/Consortium/Legal/"
-      </li>
-      <li>
-	Notice of any changes or modifications to the W3C files, including the
-	date changes were made. (We recommend you provide URIs to the location
-	from which the code is derived.)
-      </li>
-    </ol>
-    <p>
-      THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT
-      HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED,
-      INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS
-      FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR
-      DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
-      TRADEMARKS OR OTHER RIGHTS.
-    </p>
-    <p>
-      COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
-      CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR
-      DOCUMENTATION.
-    </p>
-    <p>
-      The name and trademarks of copyright holders may NOT be used in
-      advertising or publicity pertaining to the software without specific,
-      written prior permission. Title to copyright in this software and any
-      associated documentation will at all times remain with copyright
-      holders.
-    </p>
-  </body>
-</html>
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/DocumentTraversal.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/DocumentTraversal.java
deleted file mode 100644
index dec9331..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/DocumentTraversal.java
+++ /dev/null
@@ -1,101 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.w3c.dom.traversal;
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-
-/**
- * <code>DocumentTraversal</code> contains methods that create iterators and
- * tree-walkers to traverse a node and its children in document order (depth
- * first, pre-order traversal, which is equivalent to the order in which the
- * start tags occur in the text representation of the document). In DOMs which
- * support the Traversal feature, <code>DocumentTraversal</code> will be
- * implemented by the same objects that implement the Document interface.
- * <p>
- * See also the <a
- * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
- * 
- * @since DOM Level 2
- */
-public interface DocumentTraversal {
-	/**
-	 * Create a new <code>NodeIterator</code> over the subtree rooted at the
-	 * specified node.
-	 * 
-	 * @param rootThe
-	 *            node which will be iterated together with its children. The
-	 *            iterator is initially positioned just before this node. The
-	 *            <code>whatToShow</code> flags and the filter, if any, are
-	 *            not considered when setting this position. The root must not
-	 *            be <code>null</code>.
-	 * @param whatToShowThis
-	 *            flag specifies which node types may appear in the logical
-	 *            view of the tree presented by the iterator. See the
-	 *            description of <code>NodeFilter</code> for the set of
-	 *            possible <code>SHOW_</code> values.These flags can be
-	 *            combined using <code>OR</code>.
-	 * @param filterThe
-	 *            <code>NodeFilter</code> to be used with this
-	 *            <code>TreeWalker</code>, or <code>null</code> to
-	 *            indicate no filter.
-	 * @param entityReferenceExpansionThe
-	 *            value of this flag determines whether entity reference nodes
-	 *            are expanded.
-	 * @return The newly created <code>NodeIterator</code>.
-	 * @exception DOMException
-	 *                NOT_SUPPORTED_ERR: Raised if the specified
-	 *                <code>root</code> is <code>null</code>.
-	 */
-	public NodeIterator createNodeIterator(Node root, int whatToShow, NodeFilter filter, boolean entityReferenceExpansion) throws DOMException;
-
-	/**
-	 * Create a new <code>TreeWalker</code> over the subtree rooted at the
-	 * specified node.
-	 * 
-	 * @param rootThe
-	 *            node which will serve as the <code>root</code> for the
-	 *            <code>TreeWalker</code>. The <code>whatToShow</code>
-	 *            flags and the <code>NodeFilter</code> are not considered
-	 *            when setting this value; any node type will be accepted as
-	 *            the <code>root</code>. The <code>currentNode</code> of
-	 *            the <code>TreeWalker</code> is initialized to this node,
-	 *            whether or not it is visible. The <code>root</code>
-	 *            functions as a stopping point for traversal methods that
-	 *            look upward in the document structure, such as
-	 *            <code>parentNode</code> and nextNode. The
-	 *            <code>root</code> must not be <code>null</code>.
-	 * @param whatToShowThis
-	 *            flag specifies which node types may appear in the logical
-	 *            view of the tree presented by the tree-walker. See the
-	 *            description of <code>NodeFilter</code> for the set of
-	 *            possible SHOW_ values.These flags can be combined using
-	 *            <code>OR</code>.
-	 * @param filterThe
-	 *            <code>NodeFilter</code> to be used with this
-	 *            <code>TreeWalker</code>, or <code>null</code> to
-	 *            indicate no filter.
-	 * @param entityReferenceExpansionIf
-	 *            this flag is false, the contents of
-	 *            <code>EntityReference</code> nodes are not presented in
-	 *            the logical view.
-	 * @return The newly created <code>TreeWalker</code>.
-	 * @exception DOMException
-	 *                NOT_SUPPORTED_ERR: Raised if the specified
-	 *                <code>root</code> is <code>null</code>.
-	 */
-	public TreeWalker createTreeWalker(Node root, int whatToShow, NodeFilter filter, boolean entityReferenceExpansion) throws DOMException;
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeFilter.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeFilter.java
deleted file mode 100644
index 48c746a..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeFilter.java
+++ /dev/null
@@ -1,151 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.w3c.dom.traversal;
-
-import org.w3c.dom.Node;
-
-/**
- * Filters are objects that know how to "filter out" nodes. If a
- * <code>NodeIterator</code> or <code>TreeWalker</code> is given a
- * <code>NodeFilter</code>, it applies the filter before it returns the
- * next node. If the filter says to accept the node, the traversal logic
- * returns it; otherwise, traversal looks for the next node and pretends that
- * the node that was rejected was not there.
- * <p>
- * The DOM does not provide any filters. <code>NodeFilter</code> is just an
- * interface that users can implement to provide their own filters.
- * <p>
- * <code>NodeFilters</code> do not need to know how to traverse from node to
- * node, nor do they need to know anything about the data structure that is
- * being traversed. This makes it very easy to write filters, since the only
- * thing they have to know how to do is evaluate a single node. One filter may
- * be used with a number of different kinds of traversals, encouraging code
- * reuse.
- * <p>
- * See also the <a
- * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
- * 
- * @since DOM Level 2
- */
-public interface NodeFilter {
-	// Constants returned by acceptNode
-	/**
-	 * Accept the node. Navigation methods defined for
-	 * <code>NodeIterator</code> or <code>TreeWalker</code> will return
-	 * this node.
-	 */
-	public static final short FILTER_ACCEPT = 1;
-	/**
-	 * Reject the node. Navigation methods defined for
-	 * <code>NodeIterator</code> or <code>TreeWalker</code> will not
-	 * return this node. For <code>TreeWalker</code>, the children of this
-	 * node will also be rejected. <code>NodeIterators</code> treat this as
-	 * a synonym for <code>FILTER_SKIP</code>.
-	 */
-	public static final short FILTER_REJECT = 2;
-	/**
-	 * Skip this single node. Navigation methods defined for
-	 * <code>NodeIterator</code> or <code>TreeWalker</code> will not
-	 * return this node. For both <code>NodeIterator</code> and
-	 * <code>TreeWalker</code>, the children of this node will still be
-	 * considered.
-	 */
-	public static final short FILTER_SKIP = 3;
-
-	// Constants for whatToShow
-	/**
-	 * Show all <code>Nodes</code>.
-	 */
-	public static final int SHOW_ALL = 0xFFFFFFFF;
-	/**
-	 * Show <code>Element</code> nodes.
-	 */
-	public static final int SHOW_ELEMENT = 0x00000001;
-	/**
-	 * Show <code>Attr</code> nodes. This is meaningful only when creating
-	 * an iterator or tree-walker with an attribute node as its
-	 * <code>root</code>; in this case, it means that the attribute node
-	 * will appear in the first position of the iteration or traversal. Since
-	 * attributes are never children of other nodes, they do not appear when
-	 * traversing over the document tree.
-	 */
-	public static final int SHOW_ATTRIBUTE = 0x00000002;
-	/**
-	 * Show <code>Text</code> nodes.
-	 */
-	public static final int SHOW_TEXT = 0x00000004;
-	/**
-	 * Show <code>CDATASection</code> nodes.
-	 */
-	public static final int SHOW_CDATA_SECTION = 0x00000008;
-	/**
-	 * Show <code>EntityReference</code> nodes.
-	 */
-	public static final int SHOW_ENTITY_REFERENCE = 0x00000010;
-	/**
-	 * Show <code>Entity</code> nodes. This is meaningful only when creating
-	 * an iterator or tree-walker with an <code> Entity</code> node as its
-	 * <code>root</code>; in this case, it means that the
-	 * <code>Entity</code> node will appear in the first position of the
-	 * traversal. Since entities are not part of the document tree, they do
-	 * not appear when traversing over the document tree.
-	 */
-	public static final int SHOW_ENTITY = 0x00000020;
-	/**
-	 * Show <code>ProcessingInstruction</code> nodes.
-	 */
-	public static final int SHOW_PROCESSING_INSTRUCTION = 0x00000040;
-	/**
-	 * Show <code>Comment</code> nodes.
-	 */
-	public static final int SHOW_COMMENT = 0x00000080;
-	/**
-	 * Show <code>Document</code> nodes.
-	 */
-	public static final int SHOW_DOCUMENT = 0x00000100;
-	/**
-	 * Show <code>DocumentType</code> nodes.
-	 */
-	public static final int SHOW_DOCUMENT_TYPE = 0x00000200;
-	/**
-	 * Show <code>DocumentFragment</code> nodes.
-	 */
-	public static final int SHOW_DOCUMENT_FRAGMENT = 0x00000400;
-	/**
-	 * Show <code>Notation</code> nodes. This is meaningful only when
-	 * creating an iterator or tree-walker with a <code>Notation</code> node
-	 * as its <code>root</code>; in this case, it means that the
-	 * <code>Notation</code> node will appear in the first position of the
-	 * traversal. Since notations are not part of the document tree, they do
-	 * not appear when traversing over the document tree.
-	 */
-	public static final int SHOW_NOTATION = 0x00000800;
-
-	/**
-	 * Test whether a specified node is visible in the logical view of a
-	 * <code>TreeWalker</code> or <code>NodeIterator</code>. This
-	 * function will be called by the implementation of
-	 * <code>TreeWalker</code> and <code>NodeIterator</code>; it is not
-	 * normally called directly from user code. (Though you could do so if you
-	 * wanted to use the same filter to guide your own application logic.)
-	 * 
-	 * @param nThe
-	 *            node to check to see if it passes the filter or not.
-	 * @return a constant to determine whether the node is accepted, rejected,
-	 *         or skipped, as defined above.
-	 */
-	public short acceptNode(Node n);
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeIterator.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeIterator.java
deleted file mode 100644
index b34a39c..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/NodeIterator.java
+++ /dev/null
@@ -1,113 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.w3c.dom.traversal;
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-
-/**
- * <code>Iterators</code> are used to step through a set of nodes, e.g. the
- * set of nodes in a <code>NodeList</code>, the document subtree governed
- * by a particular <code>Node</code>, the results of a query, or any other
- * set of nodes. The set of nodes to be iterated is determined by the
- * implementation of the <code>NodeIterator</code>. DOM Level 2 specifies a
- * single <code>NodeIterator</code> implementation for document-order
- * traversal of a document subtree. Instances of these iterators are created
- * by calling <code>DocumentTraversal</code>
- * <code>.createNodeIterator()</code>.
- * <p>
- * See also the <a
- * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
- * 
- * @since DOM Level 2
- */
-public interface NodeIterator {
-	/**
-	 * The root node of the <code>NodeIterator</code>, as specified when it
-	 * was created.
-	 */
-	public Node getRoot();
-
-	/**
-	 * This attribute determines which node types are presented via the
-	 * iterator. The available set of constants is defined in the
-	 * <code>NodeFilter</code> interface. Nodes not accepted by
-	 * <code>whatToShow</code> will be skipped, but their children may still
-	 * be considered. Note that this skip takes precedence over the filter, if
-	 * any.
-	 */
-	public int getWhatToShow();
-
-	/**
-	 * The <code>NodeFilter</code> used to screen nodes.
-	 */
-	public NodeFilter getFilter();
-
-	/**
-	 * The value of this flag determines whether the children of entity
-	 * reference nodes are visible to the iterator. If false, they and their
-	 * descendants will be rejected. Note that this rejection takes precedence
-	 * over <code>whatToShow</code> and the filter. Also note that this is
-	 * currently the only situation where <code>NodeIterators</code> may
-	 * reject a complete subtree rather than skipping individual nodes. <br>
-	 * <br>
-	 * To produce a view of the document that has entity references expanded
-	 * and does not expose the entity reference node itself, use the
-	 * <code>whatToShow</code> flags to hide the entity reference node and
-	 * set <code>expandEntityReferences</code> to true when creating the
-	 * iterator. To produce a view of the document that has entity reference
-	 * nodes but no entity expansion, use the <code>whatToShow</code> flags
-	 * to show the entity reference node and set
-	 * <code>expandEntityReferences</code> to false.
-	 */
-	public boolean getExpandEntityReferences();
-
-	/**
-	 * Returns the next node in the set and advances the position of the
-	 * iterator in the set. After a <code>NodeIterator</code> is created,
-	 * the first call to <code>nextNode()</code> returns the first node in
-	 * the set.
-	 * 
-	 * @return The next <code>Node</code> in the set being iterated over, or
-	 *         <code>null</code> if there are no more members in that set.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if this method is called after
-	 *                the <code>detach</code> method was invoked.
-	 */
-	public Node nextNode() throws DOMException;
-
-	/**
-	 * Returns the previous node in the set and moves the position of the
-	 * <code>NodeIterator</code> backwards in the set.
-	 * 
-	 * @return The previous <code>Node</code> in the set being iterated
-	 *         over, or <code>null</code> if there are no more members in
-	 *         that set.
-	 * @exception DOMException
-	 *                INVALID_STATE_ERR: Raised if this method is called after
-	 *                the <code>detach</code> method was invoked.
-	 */
-	public Node previousNode() throws DOMException;
-
-	/**
-	 * Detaches the <code>NodeIterator</code> from the set which it iterated
-	 * over, releasing any computational resources and placing the iterator in
-	 * the INVALID state. After <code>detach</code> has been invoked, calls
-	 * to <code>nextNode</code> or <code>previousNode</code> will raise
-	 * the exception INVALID_STATE_ERR.
-	 */
-	public void detach();
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/TreeWalker.java b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/TreeWalker.java
deleted file mode 100644
index 3747d60..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/TreeWalker.java
+++ /dev/null
@@ -1,185 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-package org.w3c.dom.traversal;
-
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Node;
-
-/**
- * <code>TreeWalker</code> objects are used to navigate a document tree or
- * subtree using the view of the document defined by their
- * <code>whatToShow</code> flags and filter (if any). Any function which
- * performs navigation using a <code>TreeWalker</code> will automatically
- * support any view defined by a <code>TreeWalker</code>.
- * <p>
- * Omitting nodes from the logical view of a subtree can result in a structure
- * that is substantially different from the same subtree in the complete,
- * unfiltered document. Nodes that are siblings in the <code>TreeWalker</code>
- * view may be children of different, widely separated nodes in the original
- * view. For instance, consider a <code>NodeFilter</code> that skips all
- * nodes except for Text nodes and the root node of a document. In the logical
- * view that results, all text nodes will be siblings and appear as direct
- * children of the root node, no matter how deeply nested the structure of the
- * original document.
- * <p>
- * See also the <a
- * href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113'>Document
- * Object Model (DOM) Level 2 Traversal and Range Specification </a>.
- * 
- * @since DOM Level 2
- */
-public interface TreeWalker {
-	/**
-	 * The <code>root</code> node of the <code>TreeWalker</code>, as
-	 * specified when it was created.
-	 */
-	public Node getRoot();
-
-	/**
-	 * This attribute determines which node types are presented via the
-	 * <code>TreeWalker</code>. The available set of constants is defined
-	 * in the <code>NodeFilter</code> interface. Nodes not accepted by
-	 * <code>whatToShow</code> will be skipped, but their children may still
-	 * be considered. Note that this skip takes precedence over the filter, if
-	 * any.
-	 */
-	public int getWhatToShow();
-
-	/**
-	 * The filter used to screen nodes.
-	 */
-	public NodeFilter getFilter();
-
-	/**
-	 * The value of this flag determines whether the children of entity
-	 * reference nodes are visible to the <code>TreeWalker</code>. If
-	 * false, they and their descendants will be rejected. Note that this
-	 * rejection takes precedence over <code>whatToShow</code> and the
-	 * filter, if any. <br>
-	 * To produce a view of the document that has entity references expanded
-	 * and does not expose the entity reference node itself, use the
-	 * <code>whatToShow</code> flags to hide the entity reference node and
-	 * set <code>expandEntityReferences</code> to true when creating the
-	 * <code>TreeWalker</code>. To produce a view of the document that has
-	 * entity reference nodes but no entity expansion, use the
-	 * <code>whatToShow</code> flags to show the entity reference node and
-	 * set <code>expandEntityReferences</code> to false.
-	 */
-	public boolean getExpandEntityReferences();
-
-	/**
-	 * The node at which the <code>TreeWalker</code> is currently
-	 * positioned. <br>
-	 * Alterations to the DOM tree may cause the current node to no longer be
-	 * accepted by the <code>TreeWalker</code>'s associated filter.
-	 * <code>currentNode</code> may also be explicitly set to any node,
-	 * whether or not it is within the subtree specified by the
-	 * <code>root</code> node or would be accepted by the filter and
-	 * <code>whatToShow</code> flags. Further traversal occurs relative to
-	 * <code>currentNode</code> even if it is not part of the current view,
-	 * by applying the filters in the requested direction; if no traversal is
-	 * possible, <code>currentNode</code> is not changed.
-	 * 
-	 * @exception DOMException
-	 *                NOT_SUPPORTED_ERR: Raised if an attempt is made to set
-	 *                <code>currentNode</code> to <code>null</code>.
-	 */
-	public Node getCurrentNode();
-
-	public void setCurrentNode(Node currentNode) throws DOMException;
-
-	/**
-	 * Moves to and returns the closest visible ancestor node of the current
-	 * node. If the search for <code>parentNode</code> attempts to step
-	 * upward from the <code>TreeWalker</code>'s<code>root</code> node,
-	 * or if it fails to find a visible ancestor node, this method retains the
-	 * current position and returns <code>null</code>.
-	 * 
-	 * @return The new parent node, or <code>null</code> if the current node
-	 *         has no parent in the <code>TreeWalker</code>'s logical view.
-	 */
-	public Node parentNode();
-
-	/**
-	 * Moves the <code>TreeWalker</code> to the first visible child of the
-	 * current node, and returns the new node. If the current node has no
-	 * visible children, returns <code>null</code>, and retains the current
-	 * node.
-	 * 
-	 * @return The new node, or <code>null</code> if the current node has no
-	 *         visible children in the <code>TreeWalker</code>'s logical
-	 *         view.
-	 */
-	public Node firstChild();
-
-	/**
-	 * Moves the <code>TreeWalker</code> to the last visible child of the
-	 * current node, and returns the new node. If the current node has no
-	 * visible children, returns <code>null</code>, and retains the current
-	 * node.
-	 * 
-	 * @return The new node, or <code>null</code> if the current node has no
-	 *         children in the <code>TreeWalker</code>'s logical view.
-	 */
-	public Node lastChild();
-
-	/**
-	 * Moves the <code>TreeWalker</code> to the previous sibling of the
-	 * current node, and returns the new node. If the current node has no
-	 * visible previous sibling, returns <code>null</code>, and retains the
-	 * current node.
-	 * 
-	 * @return The new node, or <code>null</code> if the current node has no
-	 *         previous sibling. in the <code>TreeWalker</code>'s logical
-	 *         view.
-	 */
-	public Node previousSibling();
-
-	/**
-	 * Moves the <code>TreeWalker</code> to the next sibling of the current
-	 * node, and returns the new node. If the current node has no visible next
-	 * sibling, returns <code>null</code>, and retains the current node.
-	 * 
-	 * @return The new node, or <code>null</code> if the current node has no
-	 *         next sibling. in the <code>TreeWalker</code>'s logical view.
-	 */
-	public Node nextSibling();
-
-	/**
-	 * Moves the <code>TreeWalker</code> to the previous visible node in
-	 * document order relative to the current node, and returns the new node.
-	 * If the current node has no previous node, or if the search for
-	 * <code>previousNode</code> attempts to step upward from the
-	 * <code>TreeWalker</code>'s<code>root</code> node, returns
-	 * <code>null</code>, and retains the current node.
-	 * 
-	 * @return The new node, or <code>null</code> if the current node has no
-	 *         previous node in the <code>TreeWalker</code>'s logical view.
-	 */
-	public Node previousNode();
-
-	/**
-	 * Moves the <code>TreeWalker</code> to the next visible node in
-	 * document order relative to the current node, and returns the new node.
-	 * If the current node has no next node, or if the search for nextNode
-	 * attempts to step upward from the <code>TreeWalker</code>'s
-	 * <code>root</code> node, returns <code>null</code>, and retains the
-	 * current node.
-	 * 
-	 * @return The new node, or <code>null</code> if the current node has no
-	 *         next node in the <code>TreeWalker</code>'s logical view.
-	 */
-	public Node nextNode();
-
-}
diff --git a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/package.html b/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/package.html
deleted file mode 100644
index d8fbae6..0000000
--- a/bundles/org.eclipse.wst.xml.core/src/org/w3c/dom/traversal/package.html
+++ /dev/null
@@ -1,3 +0,0 @@
-<html>
-This package contains unmodified sources provided by http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113/java-binding.zip
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/.classpath b/bundles/org.eclipse.wst.xml.ui/.classpath
deleted file mode 100644
index f147935..0000000
--- a/bundles/org.eclipse.wst.xml.ui/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src/"/>
-	<classpathentry kind="src" path="src-multipage/"/>
-	<classpathentry kind="src" path="src-wizards/"/>
-	<classpathentry excluding="org/eclipse/**/internal/**" 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/bundles/org.eclipse.wst.xml.ui/.cvsignore b/bundles/org.eclipse.wst.xml.ui/.cvsignore
deleted file mode 100644
index 03491a0..0000000
--- a/bundles/org.eclipse.wst.xml.ui/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-bin
-temp.folder
-build.xml
-xmleditor.jar
-org.eclipse.wst.xml.ui_1.0.0.jar
-org.eclipse.wst.xml.ui_1.0.0.zip
-xmleditorsrc.zip
diff --git a/bundles/org.eclipse.wst.xml.ui/.options b/bundles/org.eclipse.wst.xml.ui/.options
deleted file mode 100644
index 5acae8f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.wst.xml.ui/projectionperf=false
diff --git a/bundles/org.eclipse.wst.xml.ui/.project b/bundles/org.eclipse.wst.xml.ui/.project
deleted file mode 100644
index 50dc4a8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/.project
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.xml.ui</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/bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index cfa7369..0000000
--- a/bundles/org.eclipse.wst.xml.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Wed Jan 12 15:54:34 EST 2005

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=error

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=warning

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore

-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.4

-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning

-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=enabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=error

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/bundles/org.eclipse.wst.xml.ui/README.txt b/bundles/org.eclipse.wst.xml.ui/README.txt
deleted file mode 100644
index d5cec24..0000000
--- a/bundles/org.eclipse.wst.xml.ui/README.txt
+++ /dev/null
@@ -1 +0,0 @@
-The XML specific implementation of the sse editor.
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/build.properties b/bundles/org.eclipse.wst.xml.ui/build.properties
deleted file mode 100644
index 65bae85..0000000
--- a/bundles/org.eclipse.wst.xml.ui/build.properties
+++ /dev/null
@@ -1,29 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-bin.includes = plugin.xml,\
-               xml.jar,\
-               icons/,\
-               plugin.properties,\
-               templates/,\
-               xmleditor.jar,\
-               examples/
-source.xmleditor.jar = src/,\
-                       src-multipage/,\
-                       src-wizards/
-src.includes = plugin.xml,\
-               plugin.properties,\
-               icons/,\
-               templates/,\
-               examples/
-output.xmleditor.jar = bin/
-jars.compile.order = xmleditor.jar
diff --git a/bundles/org.eclipse.wst.xml.ui/buildnotes_xml.html b/bundles/org.eclipse.wst.xml.ui/buildnotes_xml.html
deleted file mode 100644
index 7a914d8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/buildnotes_xml.html
+++ /dev/null
@@ -1,208 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta
-	http-equiv="Content-Type"
-	content="text/html; charset=ISO-8859-1" />
-<meta
-	name="GENERATOR"
-	content="WTP" />
-<meta
-	http-equiv="Content-Style-Type"
-	content="text/css" />
-<link
-	href="theme/Master.css"
-	rel="stylesheet"
-	type="text/css" />
-<title>Build Notes for XML Component</title>
-</head>
-<body>
-<h2>Build Notes for  XML <br />
-<br />
-M3, 02/23/2005</h2>
-
-<h3>What's new in this drop</h3>
-<p>First version of a &quot;unified&quot; XML validation implementation, where batch validation and as you type validation should give same errors (still need some improvements, grey icon, match line numbers in messages, etc). </p>
-<h3>API Changes from previous Build/Milestone</h3>
-<h3>Problem reports fixed</h3>
-<table
-	class="bz_buglist"
-	cellpadding="4"
-	cellspacing="0"
-	width="100%">
-	<tbody>
-		<tr class="bz_critical bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=83835">83835</a>
-			<span style="display: none;"></span></td>
-
-			<td>When I open an invalid xml file with XML Source Page Edit...</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_critical bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=83117">83117</a>
-			<span style="display: none;"></span></td>
-
-			<td>Cannot type into source view of xml nor xslt</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_major bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=85180">85180</a>
-			<span style="display: none;"></span></td>
-
-			<td>XSD reconvile validator being used on WSDL files</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_major bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=85447">85447</a>
-			<span style="display: none;"></span></td>
-
-			<td>red "squiggle" updating problem</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_major bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=85833">85833</a>
-			<span style="display: none;"></span></td>
-
-			<td>schema for org.eclipse.wst.xml.validation Plugin.xml need...</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=80808">80808</a>
-			<span style="display: none;"></span></td>
-
-			<td>leftover annotations after revert</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=81709">81709</a>
-			<span style="display: none;"></span></td>
-
-			<td>XML validator : validation on save produces an ugly warni...</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=82457">82457</a>
-			<span style="display: none;"></span></td>
-
-			<td>XML Editor code completion failures with attributes in xs...</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=85084">85084</a>
-			<span style="display: none;"></span></td>
-
-			<td>Need to "squiggle as you type" some additional errors (xs...</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_normal bz_P3 bz_RESOLVED bz_FIXED bz_even">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=85838">85838</a>
-			<span style="display: none;"></span></td>
-
-			<td>need to add "include" attributes to plugin.xml for org.ec...</td>
-
-		</tr>
-
-
-
-
-
-
-		<tr class="bz_enhancement bz_P3 bz_RESOLVED bz_FIXED bz_odd">
-
-
-			<td class="first-child"><a
-				href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=84177">84177</a>
-			<span style="display: none;"></span></td>
-
-			<td>XML "Squiggle as you type" Validation</td>
-
-		</tr>
-
-
-	</tbody>
-</table>
-</body>
-</html>
diff --git a/bundles/org.eclipse.wst.xml.ui/examples/EditingAndValidatingXML.zip b/bundles/org.eclipse.wst.xml.ui/examples/EditingAndValidatingXML.zip
deleted file mode 100644
index 28f4ee0..0000000
--- a/bundles/org.eclipse.wst.xml.ui/examples/EditingAndValidatingXML.zip
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/XMLFile.gif b/bundles/org.eclipse.wst.xml.ui/icons/XMLFile.gif
deleted file mode 100644
index 14eb1be..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/XMLFile.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/collapse.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/collapse.gif
deleted file mode 100644
index ce74721..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/collapse.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/collapse_all.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/collapse_all.gif
deleted file mode 100644
index 7dc0de5..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/collapse_all.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/constrainoff.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/constrainoff.gif
deleted file mode 100644
index 4bdceb8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/constrainoff.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/constrainon.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/constrainon.gif
deleted file mode 100644
index e823d57..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/constrainon.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/expand.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/expand.gif
deleted file mode 100644
index bc37b7a..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/expand.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/expand_all.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/expand_all.gif
deleted file mode 100644
index 492c14f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/expand_all.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/new_xml.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/new_xml.gif
deleted file mode 100644
index e1cfdf7..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/new_xml.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/rldgrmr.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/rldgrmr.gif
deleted file mode 100644
index 49325dd..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/rldgrmr.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/validate.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/validate.gif
deleted file mode 100644
index 561d146..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/dtool16/validate.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/collapse.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/collapse.gif
deleted file mode 100644
index b75bc19..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/collapse.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/collapse_all.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/collapse_all.gif
deleted file mode 100644
index a2d80a9..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/collapse_all.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/constrainoff.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/constrainoff.gif
deleted file mode 100644
index c1ab04c..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/constrainoff.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/constrainon.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/constrainon.gif
deleted file mode 100644
index 082f9c0..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/constrainon.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/expand.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/expand.gif
deleted file mode 100644
index b2f4530..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/expand.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/expand_all.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/expand_all.gif
deleted file mode 100644
index 0205b29..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/expand_all.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/new_xml.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/new_xml.gif
deleted file mode 100644
index 9dfb62d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/new_xml.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/rldgrmr.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/rldgrmr.gif
deleted file mode 100644
index 049cac6..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/rldgrmr.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/validate.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/validate.gif
deleted file mode 100644
index 2b347ac..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/etool16/validate.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/XSDFile.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/XSDFile.gif
deleted file mode 100644
index cc0eeb7..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/XSDFile.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/add_correction.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/add_correction.gif
deleted file mode 100644
index 252d7eb..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/add_correction.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/att_req_obj.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/att_req_obj.gif
deleted file mode 100644
index a8c66d5..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/att_req_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/attribute_obj.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/attribute_obj.gif
deleted file mode 100644
index 79d49d0..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/attribute_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/cdatasection.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/cdatasection.gif
deleted file mode 100644
index 6b0872c..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/cdatasection.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/choice.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/choice.gif
deleted file mode 100644
index d13ba2e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/choice.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/comment_obj.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/comment_obj.gif
deleted file mode 100644
index 28c2ccb..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/comment_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/correction_change.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/correction_change.gif
deleted file mode 100644
index af83c52..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/correction_change.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/doctype.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/doctype.gif
deleted file mode 100644
index 3300f82..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/doctype.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/dtdfile.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/dtdfile.gif
deleted file mode 100644
index 3c0acad..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/dtdfile.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/element_obj.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/element_obj.gif
deleted file mode 100644
index 3567815..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/element_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/entity.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/entity.gif
deleted file mode 100644
index 61fd3d4..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/entity.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/entity_reference.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/entity_reference.gif
deleted file mode 100644
index 3af9149..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/entity_reference.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/enum.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/enum.gif
deleted file mode 100644
index 5c0a481..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/enum.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/error-overlay.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/error-overlay.gif
deleted file mode 100644
index 119dccc..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/error-overlay.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/localvariable_obj.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/localvariable_obj.gif
deleted file mode 100644
index 3244b26..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/localvariable_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/notation.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/notation.gif
deleted file mode 100644
index 57ad089..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/notation.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/occurone_obj.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/occurone_obj.gif
deleted file mode 100644
index 7bb65c9..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/occurone_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/proinst_obj.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/proinst_obj.gif
deleted file mode 100644
index 74436d8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/proinst_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag-generic.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag-generic.gif
deleted file mode 100644
index 65f516e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag-generic.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag-macro.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag-macro.gif
deleted file mode 100644
index 5d1f81b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/tag-macro.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/text.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/text.gif
deleted file mode 100644
index efa7a38..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/text.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/txtext.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/txtext.gif
deleted file mode 100644
index b226e41..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/txtext.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/warning_obj.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/warning_obj.gif
deleted file mode 100644
index 1e5f5eb..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/obj16/warning_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/error_ovr.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/error_ovr.gif
deleted file mode 100644
index 119dccc..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/error_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/stale_error_ovr.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/stale_error_ovr.gif
deleted file mode 100644
index 5b0471b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/stale_error_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/warn_ovr.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/warn_ovr.gif
deleted file mode 100644
index c350704..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/ovr16/warn_ovr.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/full/view16/attibute.gif b/bundles/org.eclipse.wst.xml.ui/icons/full/view16/attibute.gif
deleted file mode 100644
index 79d49d0..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/full/view16/attibute.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/newSampleProject_wiz.gif b/bundles/org.eclipse.wst.xml.ui/icons/newSampleProject_wiz.gif
deleted file mode 100644
index dc96b10..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/newSampleProject_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/newSampleProject_wizbanner.gif b/bundles/org.eclipse.wst.xml.ui/icons/newSampleProject_wizbanner.gif
deleted file mode 100644
index 9a0ff30..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/newSampleProject_wizbanner.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/sourceEditor.gif b/bundles/org.eclipse.wst.xml.ui/icons/sourceEditor.gif
deleted file mode 100644
index 75ebdb8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/sourceEditor.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/icons/xmldoc.gif b/bundles/org.eclipse.wst.xml.ui/icons/xmldoc.gif
deleted file mode 100644
index 14eb1be..0000000
--- a/bundles/org.eclipse.wst.xml.ui/icons/xmldoc.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/plugin.properties b/bundles/org.eclipse.wst.xml.ui/plugin.properties
deleted file mode 100644
index 9777e46..0000000
--- a/bundles/org.eclipse.wst.xml.ui/plugin.properties
+++ /dev/null
@@ -1,60 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-providerName=Eclipse.org
-pluginName=SSE XML Source Editor
-nlFeatureName=SSE XML Source Editor NL Support
-XML_Source_Page_Editor.name=XML Source Page Editor
-XML_Files.name=XML Files
-XML_Source.name=XML Source
-XML_Templates.name=XML Templates
-XML_Styles.name=XML Styles
-XML_Editor.name=XML Editor
-XMLTableTreeViewer.0=Design
-XMLMultiPageEditorPart.0=Source
-XMLTreeExtension.0=Structure
-XMLTreeExtension.1=Value
-XMLTreeExtension.3=The document is empty.
-XMLTreeExtension.4=Right mouse click here to insert content.
-XMLTableTreeActionBarContributor.0=&XML
-XMLTableTreeActionBarContributor.1=&Expand All
-XMLTableTreeActionBarContributor.2=&Collapse All
-XMLTableTreeActionBarContributor.3=Turn Grammar Constraints Off
-XMLTableTreeActionBarContributor.4=&Turn Grammar Constraints Off
-XMLTableTreeActionBarContributor.5=Turn Grammar Constraints On
-XMLTableTreeActionBarContributor.6=&Turn Grammar Constraints On
-XMLTableTreeActionBarContributor.7=Reload Dependencies
-XMLTableTreeActionBarContributor.8=&Reload Dependencies
-###############################################################################
-_UI_WIZARD_NEW_XML=XML
-genMenuLabel=&Generate
-_UI_ACTION_CREATE_XML=&XML File...
-_UI_CREATE_NEW_XML_FILE=Create a new XML file.
-XMLExample.name=Editing and validating XML files
-XMLExampleProjectCreationWizard.description=Create a project containing XML sample files
-XMLExampleProjectCreationWizard.projectname=XMLExamples
-XMLExampleProjectCreationWizard.pagetitle=XML sample files for editing and validating
-XMLExampleProjectCreationWizard.pagedescription=Create a project containing XML sample files.
-XMLExampleProjectCreationWizard.label=&Project Name:
-###############################################################################
-All_XML_context_type_Extension_Element.name=All XML
-XML_New_context_type_Extension_Element.name=New XML
-XML_Tag_context_type_Extension_Element.name=XML Tag
-XML_Attribute_context_type_Extension_Element.name=XML Attribute
-XML_Attribute_value_context_type_Extension_Element.name=XML Attribute value
-###############################################################################
-# The following property keys maybe unused. Commented out on 12/7/2004. Uncomment if needed.
-#XMLExampleProjectCreationWizard.name=XML Examples
-#XMLExampleProjectCreationWizard.description=Create a project containing XML sample files
-#XML_Annotations.name=XML Annotations
-#XML_Extension_Element.name=XML
-refreshoutline.0=Refreshing Content Outline
diff --git a/bundles/org.eclipse.wst.xml.ui/plugin.xml b/bundles/org.eclipse.wst.xml.ui/plugin.xml
deleted file mode 100644
index 4ae90a8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/plugin.xml
+++ /dev/null
@@ -1,391 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.wst.xml.ui"
-   name="%pluginName"
-   version="1.0.0"
-   provider-name="%providerName"
-   class="org.eclipse.wst.xml.ui.internal.XMLUIPlugin">
-
-   <runtime>
-      <library name="xmleditor.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.wst.sse.ui"/>
-      <import plugin="org.eclipse.wst.sse.core"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.wst.xml.uriresolver.ui"/>
-      <import plugin="org.eclipse.wst.common.uriresolver"/>
-      <import plugin="org.eclipse.wst.xml.uriresolver"/>
-      <import plugin="org.eclipse.wst.xml.core"/>
-      <import plugin="org.eclipse.wst.common.ui"/>
-      <import plugin="org.eclipse.wst.validation"/>
-
-   </requires>
-
-   <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%XML_Source_Page_Editor.name"
-            icon="icons/sourceEditor.gif"
-            extensions="tld, nst, xmi, dadx, wsdl, xsl"
-            contributorClass="org.eclipse.wst.xml.ui.actions.ActionContributorXML"
-            class="org.eclipse.wst.xml.ui.StructuredTextEditorXML"
-            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
-            id="org.eclipse.wst.xml.ui.StructuredTextEditorXML2">
-      </editor>
-      <!-- Separate editor definition for xml source page to mark it as the default editor -->
-      <editor
-            name="%XML_Source_Page_Editor.name"
-            icon="icons/sourceEditor.gif"
-            extensions="xml"
-            default="true"
-            contributorClass="org.eclipse.wst.xml.ui.actions.ActionContributorXML"
-            class="org.eclipse.wst.xml.ui.StructuredTextEditorXML"
-            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
-            id="org.eclipse.wst.xml.ui.StructuredTextEditorXML">
-      </editor>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.extendedconfiguration">
-      <configuration
-      		type="textviewerconfiguration"
-            class="org.eclipse.wst.xml.ui.StructuredTextViewerConfigurationXML"
-            target="org.eclipse.core.runtime.xml"/>
-      <configuration
-      		type="contentoutlineconfiguration"
-            class="org.eclipse.wst.xml.ui.views.contentoutline.XMLContentOutlineConfiguration"
-            target="org.eclipse.core.runtime.xml"/>
-      <configuration
-      		type="propertysheetconfiguration"
-            class="org.eclipse.wst.xml.ui.views.properties.XMLPropertySheetConfiguration"
-            target="org.eclipse.core.runtime.xml"/>
-      <configuration
-      		type="spellchecktarget"
-            class="org.eclipse.wst.xml.ui.XMLSpellCheckTarget"
-            target="org.eclipse.core.runtime.xml"/>
-      <configuration
-      		type="sourceeditingtexttools"
-            class="org.eclipse.wst.xml.ui.extensions.XMLSourceEditingTextTools"
-            target="org.eclipse.core.runtime.xml"/>
-      <configuration
-      		type="characterpairmatcher"
-            class="org.eclipse.wst.xml.ui.text.XMLDocumentRegionEdgeMatcher"
-            target="org.eclipse.core.runtime.xml"/>
-      <configuration
-      		type="structuredtextfoldingprovider"
-            class="org.eclipse.wst.xml.ui.internal.projection.StructuredTextFoldingProviderXML"
-            target="org.eclipse.core.runtime.xml"/>
-      <definition
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.xml"
-            target="org.eclipse.core.runtime.xml"/>
-      <definition
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.xml.source"
-            target="org.eclipse.core.runtime.xml"/>
-      <definition
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.xml.templates"
-            target="org.eclipse.core.runtime.xml"/>
-      <definition
-      		type="preferencepages"
-            value="org.eclipse.wst.sse.ui.preferences.xml.colors"
-            target="org.eclipse.core.runtime.xml"/>
-   </extension>
-   <extension
-      point="org.eclipse.core.filebuffers.annotationModelCreation">
-      <factory
-            contentTypeId="org.eclipse.core.runtime.xml"
-            class="org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModelFactory"/>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.adapterFactoryDescription">
-      <adapterFactoryDescription
-            class="org.eclipse.wst.xml.ui.registry.AdapterFactoryProviderForXML">
-            <contentType id="org.eclipse.core.runtime.xml"/>
-      </adapterFactoryDescription>
-   </extension>
-   <extension
-         point="org.eclipse.wst.sse.ui.embeddedAdapterFactoryProvider">
-      <embeddedAdapterFactoryProvider
-            class="org.eclipse.wst.xml.ui.registry.AdapterFactoryProviderForEmbeddedXML">
-      </embeddedAdapterFactoryProvider>
-   </extension>
-   <extension
-         point="org.eclipse.ui.preferencePages">
-<!-- XML PREFERENCE PAGES -->
-      <page
-            name="%XML_Files.name"
-            category="org.eclipse.wst.sse.ui.preferences"
-            class="org.eclipse.wst.xml.ui.preferences.XMLFilesPreferencePage"
-            id="org.eclipse.wst.sse.ui.preferences.xml">
-      </page>
-      <page
-            name="%XML_Source.name"
-            category="org.eclipse.wst.sse.ui.preferences.xml"
-            class="org.eclipse.wst.xml.ui.preferences.XMLSourcePreferencePage"
-            id="org.eclipse.wst.sse.ui.preferences.xml.source">
-      </page>
-      <page
-            name="%XML_Templates.name"
-            category="org.eclipse.wst.sse.ui.preferences.xml"
-            class="org.eclipse.wst.xml.ui.preferences.XMLTemplatePreferencePage"
-            id="org.eclipse.wst.sse.ui.preferences.xml.templates">
-      </page>
-      <page
-            name="%XML_Styles.name"
-            category="org.eclipse.wst.sse.ui.preferences.xml"
-            class="org.eclipse.wst.xml.ui.preferences.XMLColorPage"
-            id="org.eclipse.wst.sse.ui.preferences.xml.colors">
-      </page>
-   </extension>
-<!-- Editor actionsets -->
-   <extension
-         point="org.eclipse.ui.actionSetPartAssociations">
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
-         <part
-               id="org.eclipse.wst.xml.ui.StructuredTextEditorXML">
-         </part>
-		<part
-               id="org.eclipse.wst.xml.ui.StructuredTextEditorXML2">
-         </part>
-      </actionSetPartAssociation>
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.NavigateActionSet">
-         <part
-               id="org.eclipse.wst.xml.ui.StructuredTextEditorXML">
-         </part>
-		<part
-               id="org.eclipse.wst.xml.ui.StructuredTextEditorXML2">
-         </part>
-      </actionSetPartAssociation>
-   </extension>
-
-<!-- Templates -->
-   <extension
-         point="org.eclipse.ui.editors.templates">
-      <contextType
-            name="%All_XML_context_type_Extension_Element.name"
-            class="org.eclipse.wst.xml.ui.internal.templates.TemplateContextTypeXML"
-            id="xml_all">
-      </contextType>
-      <contextType
-            name="%XML_New_context_type_Extension_Element.name"
-            class="org.eclipse.wst.xml.ui.internal.templates.TemplateContextTypeXML"
-            id="xml_new">
-      </contextType>
-      <contextType
-            name="%XML_Tag_context_type_Extension_Element.name"
-            class="org.eclipse.wst.xml.ui.internal.templates.TemplateContextTypeXML"
-            id="xml_tag">
-      </contextType>
-      <contextType
-            name="%XML_Attribute_context_type_Extension_Element.name"
-            class="org.eclipse.wst.xml.ui.internal.templates.TemplateContextTypeXML"
-            id="xml_attribute">
-      </contextType>
-      <contextType
-            name="%XML_Attribute_value_context_type_Extension_Element.name"
-            class="org.eclipse.wst.xml.ui.internal.templates.TemplateContextTypeXML"
-            id="xml_attribute_value">
-      </contextType>
-      <include
-      		file="templates/xmldefault-templates.xml"
-      		translations="templates/xmldefault-templates.properties">
-      </include>
-   </extension>
-   
-   
-   
-   
-   
-      <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%XML_Editor.name"
-            icon="icons/xmldoc.gif"
-            extensions="xml, tld, nst, xmi"
-            contributorClass="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorActionBarContributor"
-            class="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart"
-            id="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart">
-      </editor>
-   </extension>
-<!-- Editor actionsets -->
-   <extension
-         point="org.eclipse.ui.actionSetPartAssociations">
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
-         <part
-               id="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart">
-         </part>
-      </actionSetPartAssociation>
-      <actionSetPartAssociation
-            targetID="org.eclipse.ui.NavigateActionSet">
-         <part
-               id="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart">
-         </part>
-      </actionSetPartAssociation>
-   </extension>
-   
-   
-   
-<!-- ================================================== -->
-<!-- Contribute a 'New Wizard' for XML files            -->
-<!-- ================================================== -->
-   <extension
-         point="org.eclipse.ui.newWizards">
-      <category
-            name="%_UI_WIZARD_NEW_XML"
-            id="org.eclipse.wst.XMLCategory">
-      </category>
-      <wizard
-            name="%_UI_WIZARD_NEW_XML"
-            icon="icons/XMLFile.gif"
-            category="org.eclipse.wst.XMLCategory"
-            class="org.eclipse.wst.xml.ui.internal.wizards.NewXMLWizard"
-            id="org.eclipse.wst.xml.ui.internal.wizards.NewXMLWizard">
-         <description>
-            %_UI_CREATE_NEW_XML_FILE
-         </description>
-         <selection
-               class="org.eclipse.core.resources.IResource">
-         </selection>
-      </wizard>
-   </extension>
-   
-<!-- =============================================================================== -->
-<!-- Allow the 'New XML' wizard to be accessed via the 'Generate' menu on a XSD file -->
-<!-- =============================================================================== -->
-   <extension
-         point="org.eclipse.ui.popupMenus">
-      <objectContribution
-            objectClass="org.eclipse.core.resources.IFile"
-            nameFilter="*.xsd"
-            id="org.eclipse.wst.xmlwizard.createXMLFromXSD">
-         <menu
-               label="%genMenuLabel"
-               path="additions"
-               id="generateXMLArtifacts">
-            <separator name="xml"/>
-         </menu>
-         <action
-               label="%_UI_ACTION_CREATE_XML"
-               class="org.eclipse.wst.xml.ui.internal.wizards.XMLImportActionDelegate"
-               menubarPath="generateXMLArtifacts/xml"
-               enablesFor="1"
-               id="org.eclipse.wst.xmlwizard.createXMLFromXSDAction">
-         </action>
-      </objectContribution>
-   </extension>
-
-<!-- =============================================================================== -->
-<!-- Allow the 'New XML' wizard to be accessed via the 'Generate' menu on a DTD file -->
-<!-- =============================================================================== -->
-   <extension
-         point="org.eclipse.ui.popupMenus">
-      <objectContribution
-            objectClass="org.eclipse.core.resources.IFile"
-            nameFilter="*.dtd"
-            id="org.eclipse.wst.xmlwizard.createXMLFromDTD">
-         <menu
-               label="%genMenuLabel"
-               path="additions"
-               id="generateXMLArtifacts">
-            <separator name="xml"/>
-         </menu>
-         <action
-               label="%_UI_ACTION_CREATE_XML"
-               class="org.eclipse.wst.xml.ui.internal.wizards.XMLImportActionDelegate"
-               menubarPath="generateXMLArtifacts/xml"
-               enablesFor="1"
-               id="org.eclipse.wst.xmlwizard.createXMLFromDTDAction">
-         </action>
-      </objectContribution>
-   </extension>
-   
-<!-- =============================================================================== -->
-<!-- Contribute a New->Example... entry for Editing and Validating XML files         -->
-<!-- =============================================================================== -->
- 
-  <!-- define the XMLSamples project wizard -->  
-  <extension point="org.eclipse.ui.newWizards"> 
-       <category
-            name="%_UI_WIZARD_NEW_XML"
-            parentCategory="org.eclipse.ui.Examples"
-            id="org.eclipse.wst.xml.examples">
-       </category>
-       <wizard
-            name="%XMLExample.name"
-            class="org.eclipse.wst.common.ui.wizards.ExampleProjectCreationWizard"
-            category="org.eclipse.ui.Examples/org.eclipse.wst.xml.examples"
-            id="org.eclipse.wst.xml.ui.XMLExampleProjectCreationWizard"
-            project="true" 
-            icon="icons/newSampleProject_wiz.gif">
-         <description>
-           %XMLExampleProjectCreationWizard.description
-         </description>  
-       </wizard>
-   </extension>
-   
-   <!-- configure the XMLSamples project wizard -->
-   <extension point="org.eclipse.wst.common.ui.exampleProjectCreationWizard"
-	   id="XMLExampleProjectCreationWizardExtension">
-	   <wizard
-	   		id="org.eclipse.wst.xml.ui.XMLExampleProjectCreationWizard"
-			banner="icons/newSampleProject_wizbanner.gif">
-		    <projectsetup
-		       	pagetitle="%XMLExampleProjectCreationWizard.pagetitle"
-		       	name="%XMLExampleProjectCreationWizard.projectname"
-		       	label="%XMLExampleProjectCreationWizard.label"
-		       	pagedescription="%XMLExampleProjectCreationWizard.pagedescription"
-		       	open="readme.html">
-		        <import
-		              dest=""
-		              src="examples/EditingAndValidatingXML.zip"/>
-		    </projectsetup>
-		</wizard>
-	</extension>
-	
-	<!-- initialize xml ui preferences -->
-	<extension point="org.eclipse.core.runtime.preferences">
-	   <initializer class="org.eclipse.wst.xml.ui.internal.preferences.XMLUIPreferenceInitializer"/>
-	</extension>
-
-	 <extension
-         point="org.eclipse.wst.sse.ui.sourcevalidation">
-      <validator
-            scope="total"
-            class="org.eclipse.wst.xml.ui.reconcile.DelegatingSourceValidatorForXML"
-            id="org.eclipse.wst.xml.ui.reconcile.DelegatingSourceValidatorForXML">
-         <contentTypeIdentifier
-               id="org.eclipse.core.runtime.xml">
-            <partitionType
-                  id="org.eclipse.wst.xml.XML_DEFAULT">
-            </partitionType>
-         </contentTypeIdentifier>      
-      </validator>
-   </extension>
-
-	<!--======================================================================================-->
-	<!-- Document provider for ExternalFileEditorInput                                        -->
-	<!--======================================================================================-->
-	<extension point="org.eclipse.ui.editors.documentProviders"> 
-		<provider 
-			inputTypes="org.eclipse.wst.xml.ui.internal.hyperlink.ExternalFileEditorInput" 
-			class="org.eclipse.ui.editors.text.TextFileDocumentProvider" 
-			id="org.eclipse.wst.xml.ui.internal.ExternalFileDocumentProvider"> 
-		</provider> 
-	</extension> 
-
-</plugin>
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/IDesignViewer.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/IDesignViewer.java
deleted file mode 100644
index f190785..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/IDesignViewer.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-
-
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.ViewerSelectionManager;
-
-
-public interface IDesignViewer {
-	public Control getControl();
-
-	String getTitle();
-
-	void setModel(IStructuredModel model);
-
-	void setViewerSelectionManager(ViewerSelectionManager viewerSelectionManager);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/IDesignViewerActionBarContributor.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/IDesignViewerActionBarContributor.java
deleted file mode 100644
index a853aa3..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/IDesignViewerActionBarContributor.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-
-
-import org.eclipse.ui.IActionBars;
-import org.eclipse.wst.sse.ui.internal.ISourceViewerActionBarContributor;
-
-
-public interface IDesignViewerActionBarContributor extends ISourceViewerActionBarContributor {
-	public void initViewerSpecificContributions(IActionBars bars);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/SourceEditorActionBarContributor.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/SourceEditorActionBarContributor.java
deleted file mode 100644
index e3ff3de..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/SourceEditorActionBarContributor.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IEditorActionBarContributor;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.part.MultiPageEditorActionBarContributor;
-import org.eclipse.wst.sse.ui.extension.ExtendedEditorActionBuilder;
-import org.eclipse.wst.sse.ui.extension.IExtendedContributor;
-import org.eclipse.wst.sse.ui.internal.ISourceViewerActionBarContributor;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-
-
-public class SourceEditorActionBarContributor extends MultiPageEditorActionBarContributor implements IExtendedContributor {
-
-	protected IEditorActionBarContributor designViewerActionBarContributor = null;
-	protected IEditorActionBarContributor sourceViewerActionContributor = null;
-	protected XMLMultiPageEditorPart multiPageEditor = null;
-
-	// EditorExtension
-	private static final String EDITOR_ID = "org.eclipse.wst.xml.ui.XMLMultiPageEditorPart"; //$NON-NLS-1$
-	private IExtendedContributor extendedContributor;
-
-	public SourceEditorActionBarContributor() {
-		super();
-
-		sourceViewerActionContributor = new SourcePageActionContributor();
-
-		// Read action extensions.
-		ExtendedEditorActionBuilder builder = new ExtendedEditorActionBuilder();
-		extendedContributor = builder.readActionExtensions(EDITOR_ID);
-	}
-
-	public void init(IActionBars actionBars) {
-		super.init(actionBars);
-
-		if (actionBars != null) {
-			initDesignViewerActionBarContributor(actionBars);
-			initSourceViewerActionContributor(actionBars);
-		}
-	}
-
-	protected void initDesignViewerActionBarContributor(IActionBars actionBars) {
-		if (designViewerActionBarContributor != null)
-			designViewerActionBarContributor.init(actionBars, getPage());
-	}
-
-	protected void initSourceViewerActionContributor(IActionBars actionBars) {
-		if (sourceViewerActionContributor != null)
-			sourceViewerActionContributor.init(actionBars, getPage());
-	}
-
-	public void dispose() {
-		super.dispose();
-
-		if (designViewerActionBarContributor != null)
-			designViewerActionBarContributor.dispose();
-
-		if (sourceViewerActionContributor != null)
-			sourceViewerActionContributor.dispose();
-
-		if (extendedContributor != null)
-			extendedContributor.dispose();
-	}
-
-	/**
-	 * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToMenu(IMenuManager)
-	 */
-	public final void contributeToMenu(IMenuManager menu) {
-		super.contributeToMenu(menu);
-
-		addToMenu(menu);
-
-		if (extendedContributor != null)
-			extendedContributor.contributeToMenu(menu);
-	}
-
-	protected void addToMenu(IMenuManager menu) {
-	}
-
-	/**
-	 * @see IExtendedContributor#contributeToPopupMenu(IMenuManager)
-	 */
-	public final void contributeToPopupMenu(IMenuManager menu) {
-
-		addToPopupMenu(menu);
-
-		if (extendedContributor != null)
-			extendedContributor.contributeToPopupMenu(menu);
-	}
-
-	protected void addToPopupMenu(IMenuManager menu) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToToolBar(IToolBarManager)
-	 */
-	public final void contributeToToolBar(IToolBarManager toolBarManager) {
-		super.contributeToToolBar(toolBarManager);
-
-		addToToolBar(toolBarManager);
-
-		if (extendedContributor != null)
-			extendedContributor.contributeToToolBar(toolBarManager);
-	}
-
-	protected void addToToolBar(IToolBarManager toolBarManager) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToStatusLine(IStatusLineManager)
-	 */
-	public final void contributeToStatusLine(IStatusLineManager manager) {
-		super.contributeToStatusLine(manager);
-
-		addToStatusLine(manager);
-
-		if (extendedContributor != null)
-			extendedContributor.contributeToStatusLine(manager);
-	}
-
-	protected void addToStatusLine(IStatusLineManager manager) {
-	}
-
-	/**
-	 * @see IExtendedContributor#updateToolbarActions()
-	 */
-	public void updateToolbarActions() {
-		if (extendedContributor != null)
-			extendedContributor.updateToolbarActions();
-	}
-
-	public void setActiveEditor(IEditorPart targetEditor) {
-		// save multiPageEditor before calling
-		// super.setActiveEditor(targetEditor)
-		// super.setActiveEditor will call setActivePage(IEditorPart
-		// activeEditor)
-		// multiPageEditor is needed in setActivePage(IEditorPart
-		// activeEditor)
-		if (targetEditor instanceof XMLMultiPageEditorPart)
-			multiPageEditor = (XMLMultiPageEditorPart) targetEditor;
-
-		super.setActiveEditor(targetEditor);
-
-		updateToolbarActions();
-
-		if (extendedContributor != null)
-			extendedContributor.setActiveEditor(targetEditor);
-	}
-
-	public void setActivePage(IEditorPart activeEditor) {
-		// This contributor is designed for StructuredTextMultiPageEditorPart.
-		// To safe-guard this from problems caused by unexpected usage by
-		// other editors, the following
-		// check is added.
-		if (multiPageEditor != null) {
-			if (activeEditor != null && activeEditor instanceof StructuredTextEditor)
-				activateSourcePage(activeEditor);
-			else
-				activateDesignPage(activeEditor);
-		}
-
-		updateToolbarActions();
-
-		IActionBars actionBars = getActionBars();
-		if (actionBars != null) {
-			// update menu bar and tool bar
-			actionBars.updateActionBars();
-		}
-	}
-
-	protected void activateDesignPage(IEditorPart activeEditor) {
-		if (designViewerActionBarContributor != null && designViewerActionBarContributor instanceof IDesignViewerActionBarContributor) {
-			designViewerActionBarContributor.setActiveEditor(multiPageEditor);
-		}
-
-		if (sourceViewerActionContributor != null && sourceViewerActionContributor instanceof ISourceViewerActionBarContributor) {
-			// if design page is not really an IEditorPart, activeEditor ==
-			// null, so pass in multiPageEditor instead (d282414)
-			if (activeEditor == null) {
-				sourceViewerActionContributor.setActiveEditor(multiPageEditor);
-			} else {
-				sourceViewerActionContributor.setActiveEditor(activeEditor);
-			}
-			((ISourceViewerActionBarContributor) sourceViewerActionContributor).setViewerSpecificContributionsEnabled(false);
-		}
-	}
-
-	protected void activateSourcePage(IEditorPart activeEditor) {
-		if (designViewerActionBarContributor != null && designViewerActionBarContributor instanceof IDesignViewerActionBarContributor) {
-			designViewerActionBarContributor.setActiveEditor(multiPageEditor);
-		}
-
-		if (sourceViewerActionContributor != null && sourceViewerActionContributor instanceof ISourceViewerActionBarContributor) {
-			sourceViewerActionContributor.setActiveEditor(activeEditor);
-			((ISourceViewerActionBarContributor) sourceViewerActionContributor).setViewerSpecificContributionsEnabled(true);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/SourcePageActionContributor.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/SourcePageActionContributor.java
deleted file mode 100644
index 949a155..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/SourcePageActionContributor.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-
-
-import org.eclipse.ui.IActionBars;
-import org.eclipse.wst.xml.ui.actions.ActionContributorXML;
-
-
-/**
- * SourcePageActionContributor
- * 
- * This class is for multi page editor's source page contributor.
- * 
- * Use XMLEditorActionContributor for single page editor.
- */
-public class SourcePageActionContributor extends ActionContributorXML {
-
-	private IActionBars fBars;
-
-	/**
-	 * This method calls:
-	 * <ul>
-	 * <li><code>contributeToMenu</code> with <code>bars</code>' menu
-	 * manager</li>
-	 * <li><code>contributeToToolBar</code> with <code>bars</code>' tool
-	 * bar manager</li>
-	 * <li><code>contributeToStatusLine</code> with <code>bars</code>'
-	 * status line manager</li>
-	 * </ul>
-	 * The given action bars are also remembered and made accessible via
-	 * <code>getActionBars</code>.
-	 * 
-	 * @param bars
-	 *            the action bars
-	 *  
-	 */
-	public void init(IActionBars bars) {
-		fBars = bars;
-		contributeToMenu(bars.getMenuManager());
-		contributeToToolBar(bars.getToolBarManager());
-		contributeToStatusLine(bars.getStatusLineManager());
-	}
-
-	/**
-	 * Returns this contributor's action bars.
-	 * 
-	 * @return the action bars
-	 */
-	public IActionBars getActionBars() {
-		return fBars;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorActionDefinitionIds.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorActionDefinitionIds.java
deleted file mode 100644
index a05192e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorActionDefinitionIds.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-
-
-/**
- * Defines the definitions ids for the XML editor actions.
- * 
- * @deprecated Use org.eclipse.wst.sse.ui.edit.util.ActionDefinitionIds instead
- */
-public interface XMLEditorActionDefinitionIds {
-	public final static String CLEANUP_DOCUMENT = "org.eclipse.wst.sse.ui.edit.ui.cleanup.document";//$NON-NLS-1$
-	public final static String FORMAT_DOCUMENT = "org.eclipse.wst.sse.ui.edit.ui.format.document";//$NON-NLS-1$
-	public final static String FORMAT_ACTIVE_ELEMENTS = "org.eclipse.wst.sse.ui.edit.ui.format.active.elements";//$NON-NLS-1$
-	public final static String OPEN_FILE = "org.eclipse.wst.sse.ui.edit.ui.open.file.from.source";//$NON-NLS-1$
-	//	public final static String INFORMATION =
-	// "org.eclipse.wst.sse.ui.edit.ui.show.tooltip.information";//$NON-NLS-1$
-	public final static String INFORMATION = "org.eclipse.jdt.ui.edit.text.java.show.javadoc";//$NON-NLS-1$
-	public final static String ADD_BREAKPOINTS = "org.eclipse.wst.sse.ui.edit.ui.add.breakpoints";//$NON-NLS-1$
-	public final static String MANAGE_BREAKPOINTS = "org.eclipse.wst.sse.ui.edit.ui.manage.breakpoints";//$NON-NLS-1$
-	public final static String ENABLE_BREAKPOINTS = "org.eclipse.wst.sse.ui.edit.ui.enable.breakpoints";//$NON-NLS-1$
-	public final static String DISABLE_BREAKPOINTS = "org.eclipse.wst.sse.ui.edit.ui.disable.breakpoints";//$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginHOLD_OLD.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginHOLD_OLD.java
deleted file mode 100644
index c6d01c4..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginHOLD_OLD.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-
-
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistryImpl;
-import org.eclipse.wst.sse.ui.registry.embedded.EmbeddedAdapterFactoryRegistryImpl;
-
-/**
- * @deprecated This plugin has combined with the org.eclipse.wst.xml.ui plugin.
- *             Use XMLUIPlugin instead.
- */
-public class XMLEditorPluginHOLD_OLD extends AbstractUIPlugin {
-
-	public final static String PLUGIN_ID = "org.eclipse.wst.xml.ui.internal.XMLEditorPluginHOLD_OLD"; //$NON-NLS-1$
-	protected static XMLEditorPluginHOLD_OLD instance = null;
-
-	/**
-	 * XMLUIPlugin constructor comment.
-	 */
-	public XMLEditorPluginHOLD_OLD() {
-		super();
-		instance = this;
-
-		// reference the preference store so
-		// initializeDefaultPreferences(IPreferenceStore preferenceStore) is
-		// called
-		getPreferenceStore();
-	}
-
-	public static XMLEditorPluginHOLD_OLD getDefault() {
-		return instance;
-	}
-
-	public synchronized static XMLEditorPluginHOLD_OLD getInstance() {
-		return instance;
-	}
-
-	public AdapterFactoryRegistry getAdapterFactoryRegistry() {
-		return AdapterFactoryRegistryImpl.getInstance();
-
-	}
-
-	public AdapterFactoryRegistry getEmbeddedAdapterFactoryRegistry() {
-		return EmbeddedAdapterFactoryRegistryImpl.getInstance();
-
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginImageHelper.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginImageHelper.java
deleted file mode 100644
index fa3e6d2..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginImageHelper.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-import java.util.HashMap;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-/**
- * Helper class to handle images provided by this plug-in.
- * 
- * NOTE: For internal use only. For images used externally, please use the
- * Shared***ImageHelper class instead.
- * 
- * @author amywu
- */
-public class XMLEditorPluginImageHelper {
-	private final String PLUGINID = XMLUIPlugin.ID;
-	private static XMLEditorPluginImageHelper instance = null;
-
-	//	 save a descriptor for each image
-	private HashMap fImageDescRegistry = null;
-
-	/**
-	 * Gets the instance.
-	 * 
-	 * @return Returns a XMLEditorPluginImageHelper
-	 */
-	public synchronized static XMLEditorPluginImageHelper getInstance() {
-		if (instance == null)
-			instance = new XMLEditorPluginImageHelper();
-		return instance;
-	}
-
-	/**
-	 * Retrieves the image associated with resource from the image registry.
-	 * If the image cannot be retrieved, attempt to find and load the image at
-	 * the location specified in resource.
-	 * 
-	 * @param resource
-	 *            the image to retrieve
-	 * @return Image the image associated with resource or null if one could
-	 *         not be found
-	 */
-	public Image getImage(String resource) {
-		Image image = getImageRegistry().get(resource);
-		if (image == null) {
-			// create an image
-			image = createImage(resource);
-		}
-		return image;
-	}
-
-	/**
-	 * Retrieves the image descriptor associated with resource from the image
-	 * descriptor registry. If the image descriptor cannot be retrieved,
-	 * attempt to find and load the image descriptor at the location specified
-	 * in resource.
-	 * 
-	 * @param resource
-	 *            the image descriptor to retrieve
-	 * @return ImageDescriptor the image descriptor assocated with resource or
-	 *         the default "missing" image descriptor if one could not be
-	 *         found
-	 */
-	public ImageDescriptor getImageDescriptor(String resource) {
-		ImageDescriptor imageDescriptor = null;
-		Object o = getImageDescriptorRegistry().get(resource);
-		if (o == null) {
-			//create a descriptor
-			imageDescriptor = createImageDescriptor(resource);
-		} else {
-			imageDescriptor = (ImageDescriptor) o;
-		}
-		return imageDescriptor;
-	}
-
-	/**
-	 * Returns the image descriptor registry for this plugin.
-	 * 
-	 * @return HashMap - image descriptor registry for this plugin
-	 */
-	private HashMap getImageDescriptorRegistry() {
-		if (fImageDescRegistry == null)
-			fImageDescRegistry = new HashMap();
-		return fImageDescRegistry;
-	}
-
-	/**
-	 * Returns the image registry for this plugin.
-	 * 
-	 * @return ImageRegistry - image registry for this plugin
-	 */
-	private ImageRegistry getImageRegistry() {
-		return JFaceResources.getImageRegistry();
-	}
-
-	/**
-	 * Creates an image from the given resource and adds the image to the
-	 * image registry.
-	 * 
-	 * @param resource
-	 * @return Image
-	 */
-	private Image createImage(String resource) {
-		ImageDescriptor desc = getImageDescriptor(resource);
-		Image image = null;
-
-		if (desc != null) {
-			image = desc.createImage();
-			// dont add the missing image descriptor image to the image
-			// registry
-			if (!desc.equals(ImageDescriptor.getMissingImageDescriptor()))
-				getImageRegistry().put(resource, image);
-		}
-		return image;
-	}
-
-	/**
-	 * Creates an image descriptor from the given imageFilePath and adds the
-	 * image descriptor to the image descriptor registry. If an image
-	 * descriptor could not be created, the default "missing" image descriptor
-	 * is returned but not added to the image descriptor registry.
-	 * 
-	 * @param imageFilePath
-	 * @return ImageDescriptor image descriptor for imageFilePath or default
-	 *         "missing" image descriptor if resource could not be found
-	 */
-	private ImageDescriptor createImageDescriptor(String imageFilePath) {
-		ImageDescriptor imageDescriptor = AbstractUIPlugin.imageDescriptorFromPlugin(PLUGINID, imageFilePath);
-		if (imageDescriptor != null) {
-			getImageDescriptorRegistry().put(imageFilePath, imageDescriptor);
-		} else {
-			imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
-		}
-
-		return imageDescriptor;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginImages.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginImages.java
deleted file mode 100644
index b1ee193..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorPluginImages.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-/**
- * Bundle of most images used by the XML Editor plug-in.
- */
-public class XMLEditorPluginImages {
-	public static final String IMG_DTOOL_COLLAPSE = "icons/full/dtool16/collapse.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_COLLAPSE = "icons/full/etool16/collapse.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_COLLAPSEALL = "icons/full/dtool16/collapse_all.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_COLLAPSEALL = "icons/full/etool16/collapse_all.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_EXPAND = "icons/full/dtool16/expand.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_EXPAND = "icons/full/etool16/expand.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_EXPANDALL = "icons/full/dtool16/expand_all.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_EXPANDALL = "icons/full/etool16/expand_all.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_NEW_XML = "icons/full/dtool16/new_xml.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_NEW_XML = "icons/full/etool16/new_xml.gif"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorResourceHandler.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorResourceHandler.java
deleted file mode 100644
index 1c5ae81..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorResourceHandler.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class XMLEditorResourceHandler {
-	//Resource bundle.
-	private static ResourceBundle resourceBundle;
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$	
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String value) {
-		String s = value.trim();
-		if (!s.startsWith(KEY_PREFIX, 0))
-			return s;
-		if (s.startsWith(KEY_DOUBLE_PREFIX, 0))
-			return s.substring(1);
-
-		int ix = s.indexOf(' ');
-		String key = ix == -1 ? s : s.substring(0, ix);
-
-		ResourceBundle bundle = getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key.substring(1)) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getResourceString(String key, Object[] args) {
-
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (IllegalArgumentException e) {
-			return getResourceString(key);
-		}
-
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public static ResourceBundle getResourceBundle() {
-		try {
-			if (resourceBundle == null)
-				resourceBundle = ResourceBundle.getBundle("org.eclipse.wst.xml.internal.ui.XMLEditorResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorResources.properties b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorResources.properties
deleted file mode 100644
index 6fcd774..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLEditorResources.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-###############################################################################
-# Copyright (c) 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
-###############################################################################
-XMLTableTreeViewer.0=Design
-XMLMultiPageEditorPart.0=Source
-XMLTreeExtension.0=Structure
-XMLTreeExtension.1=Value
-XMLTreeExtension.3=The document is empty.
-XMLTreeExtension.4=Right mouse click here to insert content.
-XMLTableTreeActionBarContributor.0=&XML
-XMLTableTreeActionBarContributor.1=&Expand All
-XMLTableTreeActionBarContributor.2=&Collapse All
-XMLTableTreeActionBarContributor.3=Turn Grammar Constraints Off
-XMLTableTreeActionBarContributor.4=&Turn Grammar Constraints Off
-XMLTableTreeActionBarContributor.5=Turn Grammar Constraints On
-XMLTableTreeActionBarContributor.6=&Turn Grammar Constraints On
-XMLTableTreeActionBarContributor.7=Reload Dependencies
-XMLTableTreeActionBarContributor.8=&Reload Dependencies
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLMultiPageEditorActionBarContributor.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLMultiPageEditorActionBarContributor.java
deleted file mode 100644
index 1340ea2..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLMultiPageEditorActionBarContributor.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-
-
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.wst.sse.ui.internal.ISourceViewerActionBarContributor;
-import org.eclipse.wst.xml.ui.internal.tabletree.XMLTableTreeActionBarContributor;
-
-
-public class XMLMultiPageEditorActionBarContributor extends SourceEditorActionBarContributor {
-
-	private boolean needsMultiInit = true;
-
-	public XMLMultiPageEditorActionBarContributor() {
-		super();
-	}
-
-	protected void initDesignViewerActionBarContributor(IActionBars actionBars) {
-		super.initDesignViewerActionBarContributor(actionBars);
-
-		if (designViewerActionBarContributor != null)
-			if (designViewerActionBarContributor instanceof IDesignViewerActionBarContributor)
-				((IDesignViewerActionBarContributor) designViewerActionBarContributor).initViewerSpecificContributions(actionBars);
-	}
-
-	protected void activateDesignPage(IEditorPart activeEditor) {
-		if (sourceViewerActionContributor != null && sourceViewerActionContributor instanceof ISourceViewerActionBarContributor) {
-			// if design page is not really an IEditorPart, activeEditor ==
-			// null, so pass in multiPageEditor instead (d282414)
-			if (activeEditor == null) {
-				sourceViewerActionContributor.setActiveEditor(multiPageEditor);
-			} else {
-				sourceViewerActionContributor.setActiveEditor(activeEditor);
-			}
-			((ISourceViewerActionBarContributor) sourceViewerActionContributor).setViewerSpecificContributionsEnabled(false);
-		}
-
-		if (designViewerActionBarContributor != null && designViewerActionBarContributor instanceof IDesignViewerActionBarContributor) {
-			designViewerActionBarContributor.setActiveEditor(multiPageEditor);
-			((IDesignViewerActionBarContributor) designViewerActionBarContributor).setViewerSpecificContributionsEnabled(true);
-		}
-	}
-
-	protected void activateSourcePage(IEditorPart activeEditor) {
-		if (designViewerActionBarContributor != null && designViewerActionBarContributor instanceof IDesignViewerActionBarContributor) {
-			designViewerActionBarContributor.setActiveEditor(multiPageEditor);
-			((IDesignViewerActionBarContributor) designViewerActionBarContributor).setViewerSpecificContributionsEnabled(false);
-		}
-
-		if (sourceViewerActionContributor != null && sourceViewerActionContributor instanceof ISourceViewerActionBarContributor) {
-			sourceViewerActionContributor.setActiveEditor(activeEditor);
-			((ISourceViewerActionBarContributor) sourceViewerActionContributor).setViewerSpecificContributionsEnabled(true);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.part.EditorActionBarContributor#init(org.eclipse.ui.IActionBars)
-	 */
-	public void init(IActionBars actionBars) {
-		super.init(actionBars);
-		needsMultiInit = true;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.IEditorActionBarContributor#setActiveEditor(org.eclipse.ui.IEditorPart)
-	 */
-	public void setActiveEditor(IEditorPart targetEditor) {
-		if (needsMultiInit) {
-			designViewerActionBarContributor = new XMLTableTreeActionBarContributor();
-			initDesignViewerActionBarContributor(getActionBars());
-			needsMultiInit = false;
-		}
-		super.setActiveEditor(targetEditor);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLMultiPageEditorPart.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLMultiPageEditorPart.java
deleted file mode 100644
index d334426..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/internal/ui/XMLMultiPageEditorPart.java
+++ /dev/null
@@ -1,771 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.internal.ui;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.List;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceStatus;
-import org.eclipse.core.runtime.CoreException;
-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.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextInputListener;
-import org.eclipse.swt.events.ShellAdapter;
-import org.eclipse.swt.events.ShellEvent;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IEditorActionBarContributor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.IPropertyListener;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.ui.ide.IGotoMarker;
-import org.eclipse.ui.part.MultiPageEditorPart;
-import org.eclipse.ui.part.MultiPageEditorSite;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.xml.core.XMLPreferenceNames;
-import org.eclipse.wst.xml.ui.StructuredTextEditorXML;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.tabletree.XMLTableTreeHelpContextIds;
-import org.eclipse.wst.xml.ui.internal.tabletree.XMLTableTreeViewer;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-public class XMLMultiPageEditorPart extends MultiPageEditorPart implements IPropertyListener {
-
-	/**
-	 * Internal part activation listener
-	 */
-	class PartListener extends ShellAdapter implements IPartListener {
-		private IWorkbenchPart fActivePart;
-		private boolean fIsHandlingActivation = false;
-
-		private void handleActivation() {
-
-			if (fIsHandlingActivation)
-				return;
-
-			if (fActivePart == XMLMultiPageEditorPart.this) {
-				fIsHandlingActivation = true;
-				try {
-					safelySanityCheckState();
-				} finally {
-					fIsHandlingActivation = false;
-				}
-			}
-		}
-
-		/**
-		 * @see IPartListener#partActivated(IWorkbenchPart)
-		 */
-		public void partActivated(IWorkbenchPart part) {
-			fActivePart = part;
-			handleActivation();
-		}
-
-		/**
-		 * @see IPartListener#partBroughtToTop(IWorkbenchPart)
-		 */
-		public void partBroughtToTop(IWorkbenchPart part) {
-		}
-
-		/**
-		 * @see IPartListener#partClosed(IWorkbenchPart)
-		 */
-		public void partClosed(IWorkbenchPart part) {
-		}
-
-		/**
-		 * @see IPartListener#partDeactivated(IWorkbenchPart)
-		 */
-		public void partDeactivated(IWorkbenchPart part) {
-			fActivePart = null;
-		}
-
-		/**
-		 * @see IPartListener#partOpened(IWorkbenchPart)
-		 */
-		public void partOpened(IWorkbenchPart part) {
-		}
-
-		/*
-		 * @see ShellListener#shellActivated(ShellEvent)
-		 */
-		public void shellActivated(ShellEvent e) {
-			handleActivation();
-		}
-	}
-
-	class TextInputListener implements ITextInputListener {
-		public void inputDocumentAboutToBeChanged(IDocument oldInput, IDocument newInput) {
-		}
-
-		public void inputDocumentChanged(IDocument oldInput, IDocument newInput) {
-			if (fDesignViewer != null && newInput != null)
-				fDesignViewer.setModel(getModel());
-		}
-	}
-
-	/** The design page index. */
-	private int fDesignPageIndex;
-
-	/** The design viewer */
-	private IDesignViewer fDesignViewer;
-
-	/** The source page index. */
-	private int fSourcePageIndex;
-	/** The text editor. */
-	private StructuredTextEditor fTextEditor;
-
-	private PartListener partListener;
-
-	/**
-	 * StructuredTextMultiPageEditorPart constructor comment.
-	 */
-	public XMLMultiPageEditorPart() {
-		super();
-	}
-
-	/*
-	 * This method is just to make firePropertyChanged accessbible from some
-	 * (anonomous) inner classes.
-	 */
-	protected void _firePropertyChange(int property) {
-		super.firePropertyChange(property);
-	}
-
-	/**
-	 * Adds the source page of the multi-page editor.
-	 */
-	protected void addSourcePage() throws PartInitException {
-		try {
-			fSourcePageIndex = addPage(fTextEditor, getEditorInput());
-			setPageText(fSourcePageIndex, XMLEditorResourceHandler.getResourceString("%XMLMultiPageEditorPart.0")); //$NON-NLS-1$
-			// the update's critical, to get viewer selection manager and
-			// highlighting to work
-			fTextEditor.update();
-
-			firePropertyChange(PROP_TITLE);
-
-			// Changes to the Text Viewer's document instance should also
-			// force an
-			// input refresh
-			fTextEditor.getTextViewer().addTextInputListener(new TextInputListener());
-		} catch (PartInitException exception) {
-			// dispose editor
-			dispose();
-			Logger.logException(exception);
-			throw new SourceEditingRuntimeException(exception, SSEUIPlugin.getResourceString("%An_error_has_occurred_when1_ERROR_")); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * Connects the design viewer with the viewer selection manager. Should be
-	 * done after createSourcePage() is done because we need to get the
-	 * ViewerSelectionManager from the TextEditor. setModel is also done here
-	 * because getModel() needs to reference the TextEditor.
-	 */
-	protected void connectDesignPage() {
-		if (fDesignViewer != null) {
-			fDesignViewer.setViewerSelectionManager(fTextEditor.getViewerSelectionManager());
-			fDesignViewer.setModel(getModel());
-		}
-	}
-
-	/**
-	 * Create and Add the Design Page using a registered factory
-	 * 
-	 */
-	protected void createAndAddDesignPage() {
-		XMLTableTreeViewer tableTreeViewer = new XMLTableTreeViewer(getContainer());
-		//  Set the default infopop for XML design viewer.
-		WorkbenchHelp.setHelp(tableTreeViewer.getControl(), XMLTableTreeHelpContextIds.XML_DESIGN_VIEW_HELPID);
-
-		fDesignViewer = tableTreeViewer;
-		// note: By adding the design page as a Control instead of an
-		// IEditorPart, page switches will indicate
-		// a "null" active editor when the design page is made active
-		fDesignPageIndex = addPage(tableTreeViewer.getControl());
-		setPageText(fDesignPageIndex, tableTreeViewer.getTitle());
-	}
-
-	/**
-	 * Creates the pages of this multi-page editor.
-	 * <p>
-	 * Subclasses of <code>MultiPageEditor</code> must implement this
-	 * method.
-	 * </p>
-	 */
-	protected void createPages() {
-		try {
-			// source page MUST be created before design page, now
-			createSourcePage();
-			createAndAddDesignPage();
-			addSourcePage();
-			connectDesignPage();
-
-			setActivePage();
-
-			// future_TODO: add a catch block here for any exception the
-			// design
-			// page throws and convert it into a more informative message.
-		} catch (PartInitException e) {
-			Logger.logException(e);
-			throw new RuntimeException(e);
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.part.MultiPageEditorPart#createSite(org.eclipse.ui.IEditorPart)
-	 */
-	protected IEditorSite createSite(IEditorPart editor) {
-		IEditorSite site = null;
-		if (editor == fTextEditor) {
-			site = new MultiPageEditorSite(this, editor) {
-				/**
-				 * @see org.eclipse.ui.part.MultiPageEditorSite#getActionBarContributor()
-				 */
-				public IEditorActionBarContributor getActionBarContributor() {
-					IEditorActionBarContributor contributor = super.getActionBarContributor();
-					IEditorActionBarContributor multiContributor = XMLMultiPageEditorPart.this.getEditorSite().getActionBarContributor();
-					if (multiContributor instanceof XMLMultiPageEditorActionBarContributor) {
-						contributor = ((XMLMultiPageEditorActionBarContributor) multiContributor).sourceViewerActionContributor;
-					}
-					return contributor;
-				}
-			};
-		} else {
-			site = super.createSite(editor);
-		}
-		return site;
-	}
-
-	/**
-	 * Creates the source page of the multi-page editor.
-	 */
-	protected void createSourcePage() throws PartInitException {
-		fTextEditor = createTextEditor();
-		fTextEditor.setEditorPart(this);
-
-		// Set the SourceViewerConfiguration now so the text editor won't use
-		// the default configuration first
-		// and switch to the StructuredTextViewerConfiguration later.
-		// DMW removed setSourceViewerConfiguration 3/26/2003 since added
-		// createPartControl to our text editor.
-		// fTextEditor.setSourceViewerConfiguration();
-		fTextEditor.addPropertyListener(this);
-	}
-
-	/**
-	 * Method createTextEditor.
-	 * 
-	 * @return StructuredTextEditor
-	 */
-	protected StructuredTextEditor createTextEditor() {
-		return new StructuredTextEditorXML();
-	}
-
-	protected void disconnectDesignPage() {
-		if (fDesignViewer != null) {
-			fDesignViewer.setModel(null);
-			fDesignViewer.setViewerSelectionManager(null);
-		}
-	}
-
-	public void dispose() {
-		Logger.trace("Source Editor", "StructuredTextMultiPageEditorPart::dispose entry"); //$NON-NLS-1$ //$NON-NLS-2$
-
-		disconnectDesignPage();
-
-		IWorkbenchWindow window = getSite().getWorkbenchWindow();
-		window.getPartService().removePartListener(partListener);
-		window.getShell().removeShellListener(partListener);
-
-		getSite().getPage().removePartListener(partListener);
-		if (fTextEditor != null) {
-			fTextEditor.removePropertyListener(this);
-		}
-
-		// moved to last when added window ... seems like
-		// we'd be in danger of losing some data, like site,
-		// or something.
-		super.dispose();
-
-		Logger.trace("Source Editor", "StructuredTextMultiPageEditorPart::dispose exit"); //$NON-NLS-1$ //$NON-NLS-2$
-
-	}
-
-	/*
-	 * (non-Javadoc) Saves the contents of this editor. <p> Subclasses must
-	 * override this method to implement the open-save-close lifecycle for an
-	 * editor. For greater details, see <code> IEditorPart </code></p>
-	 * 
-	 * @see IEditorPart
-	 */
-	public void doSave(IProgressMonitor monitor) {
-		fTextEditor.doSave(monitor);
-		//		// this is a temporary way to force validation.
-		//		// when the validator is a workbench builder, the following lines
-		// can be removed
-		//		if (fDesignViewer != null)
-		//			fDesignViewer.saveOccurred();
-
-	}
-
-	/*
-	 * (non-Javadoc) Saves the contents of this editor to another object. <p>
-	 * Subclasses must override this method to implement the open-save-close
-	 * lifecycle for an editor. For greater details, see <code> IEditorPart
-	 * </code></p>
-	 * 
-	 * @see IEditorPart
-	 */
-	public void doSaveAs() {
-		fTextEditor.doSaveAs();
-		// 253619
-		// following used to be executed here, but is
-		// now called "back" from text editor (since
-		// mulitiple paths to the performSaveAs in StructuredTextEditor.
-		//doSaveAsForStructuredTextMulitPagePart();
-	}
-
-	private void editorInputIsAcceptable(IEditorInput input) throws PartInitException {
-		if (input instanceof IFileEditorInput) {
-			// verify that it can be opened
-			CoreException[] coreExceptionArray = new CoreException[1];
-			if (fileDoesNotExist((IFileEditorInput) input, coreExceptionArray)) {
-				CoreException coreException = coreExceptionArray[0];
-				if (coreException.getStatus().getCode() == IResourceStatus.FAILED_READ_LOCAL) {
-					// I'm assuming this is always 'does not exist'
-					// we'll refresh local go mimic behavior of default
-					// editor, where the
-					// troublesome file is refreshed (and will cause it to
-					// 'disappear' from Navigator.
-					try {
-						((IFileEditorInput) input).getFile().refreshLocal(IResource.DEPTH_ZERO, new NullProgressMonitor());
-					} catch (CoreException ce) {
-						// very unlikely
-						Logger.logException(ce);
-					}
-					throw new PartInitException(SSEUIPlugin.getResourceString("%23concat_EXC_", (new Object[]{input.getName()}))); //$NON-NLS-1$
-					//$NON-NLS-1$ = "Resource {0} does not exist."
-				} else {
-					throw new PartInitException(SSEUIPlugin.getResourceString("%32concat_EXC_", (new Object[]{input.getName()}))); //$NON-NLS-1$
-					//$NON-NLS-1$ = "Editor could not be open on {0}"
-				}
-			}
-		} else if (input instanceof IStorageEditorInput) {
-			InputStream contents = null;
-			try {
-				contents = ((IStorageEditorInput) input).getStorage().getContents();
-			} catch (CoreException noStorageExc) {
-			}
-			if (contents == null) {
-				throw new PartInitException(SSEUIPlugin.getResourceString("%32concat_EXC_", (new Object[]{input.getName()}))); //$NON-NLS-1$
-			} else {
-				try {
-					contents.close();
-				} catch (IOException e) {
-				}
-			}
-		}
-	}
-
-	//	void doSaveAsForStructuredTextMulitPagePart() {
-	//		setPageText(getActivePage(), fTextEditor.getTitle());
-	//		setInput(fTextEditor.getEditorInput());
-	//		if (fDesignViewer != null) {
-	//			//fDesignViewer.setEditorInput(fTextEditor.getEditorInput());
-	//			fDesignViewer.setModel(getModel());
-	//			fDesignViewer.saveAsOccurred();
-	//		}
-	//		// even though we've set title etc., several times already!
-	//		// only now is all prepared for it.
-	//		firePropertyChange(IWorkbenchPart.PROP_TITLE);
-	//		firePropertyChange(PROP_DIRTY);
-	//	}
-	/*
-	 * (non-Javadoc) Initializes the editor part with a site and input. <p>
-	 * Subclasses of <code> EditorPart </code> must implement this method.
-	 * Within the implementation subclasses should verify that the input type
-	 * is acceptable and then save the site and input. Here is sample code:
-	 * </p><pre> if (!(input instanceof IFileEditorInput)) throw new
-	 * PartInitException("Invalid Input: Must be IFileEditorInput");
-	 * setSite(site); setInput(editorInput); </pre>
-	 */
-	protected boolean fileDoesNotExist(IFileEditorInput input, Throwable[] coreException) {
-		boolean result = false;
-		InputStream inStream = null;
-		if ((!(input.exists())) || (!(input.getFile().exists()))) {
-			result = true;
-		} else {
-			try {
-				inStream = input.getFile().getContents(true);
-			} catch (CoreException e) {
-				// very likely to be file not found
-				result = true;
-				coreException[0] = e;
-			} finally {
-				if (input != null) {
-					try {
-						if (inStream != null) {
-							inStream.close();
-						}
-					} catch (IOException e) {
-						Logger.logException(e);
-					}
-				}
-			}
-		}
-		return result;
-	}
-
-	public Object getAdapter(Class key) {
-		Object result = null;
-		if (key == IDesignViewer.class) {
-			result = fDesignViewer;
-		} else {
-			// DMW: I'm bullet-proofing this because
-			// its been reported (on 4.03 version) a null pointer sometimes
-			// happens here on startup, when an editor has been left
-			// open when workbench shutdown.
-			if (fTextEditor != null) {
-				result = fTextEditor.getAdapter(key);
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * IExtendedMarkupEditor method
-	 */
-	public Node getCaretNode() {
-		if (getTextEditor() == null)
-			return null;
-
-		return getTextEditor().getCaretNode();
-	}
-
-	/**
-	 * IExtendedSimpleEditor method
-	 */
-	public int getCaretPosition() {
-		if (getTextEditor() == null)
-			return -1;
-
-		return getTextEditor().getCaretPosition();
-	}
-
-	/**
-	 * IExtendedSimpleEditor method
-	 */
-	public IDocument getDocument() {
-		if (getTextEditor() == null)
-			return null;
-
-		return getTextEditor().getDocument();
-	}
-
-	/**
-	 * IExtendedMarkupEditor method
-	 */
-	public Document getDOMDocument() {
-		if (getTextEditor() == null)
-			return null;
-
-		return getTextEditor().getDOMDocument();
-	}
-
-	/**
-	 * IExtendedSimpleEditor method
-	 */
-	public IEditorPart getEditorPart() {
-		return this;
-	}
-
-	protected IStructuredModel getModel() {
-		IStructuredModel model = null;
-		if (fTextEditor != null)
-			model = fTextEditor.getModel();
-		return model;
-	}
-
-	protected IPreferenceStore getPreferenceStore() {
-		return XMLUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	/**
-	 * IExtendedMarkupEditor method
-	 */
-	public List getSelectedNodes() {
-		if (getTextEditor() == null)
-			return null;
-		return getTextEditor().getSelectedNodes();
-	}
-
-	/**
-	 * IExtendedSimpleEditor method
-	 */
-	public Point getSelectionRange() {
-		if (getTextEditor() == null)
-			return new Point(-1, -1);
-
-		return getTextEditor().getSelectionRange();
-	}
-
-	public StructuredTextEditor getTextEditor() {
-		return fTextEditor;
-	}
-
-	/*
-	 * (non-Javadoc) Method declared on IWorkbenchPart.
-	 */
-	public String getTitle() {
-		String title = null;
-		if (getTextEditor() == null) {
-			if (getEditorInput() != null) {
-				title = getEditorInput().getName();
-			}
-		} else {
-			title = getTextEditor().getTitle();
-		}
-		if (title == null) {
-			title = getPartName();
-		}
-		return title;
-	}
-
-	/*
-	 * (non-Javadoc) Sets the cursor and selection state for this editor to
-	 * the passage defined by the given marker. <p> Subclasses may override.
-	 * For greater details, see <code> IEditorPart </code></p>
-	 * 
-	 * @see IEditorPart
-	 */
-	public void gotoMarker(IMarker marker) {
-		// (pa) 20020217 this was null when opening an editor that was
-		// already open
-		if (fTextEditor != null) {
-			IGotoMarker markerGotoer = (IGotoMarker) fTextEditor.getAdapter(IGotoMarker.class);
-			markerGotoer.gotoMarker(marker);
-		}
-	}
-
-	public void init(IEditorSite site, IEditorInput input) throws PartInitException {
-		editorInputIsAcceptable(input);
-		try {
-			super.init(site, input);
-			if (partListener == null) {
-				partListener = new PartListener();
-			}
-			//getSite().getPage().addPartListener(partListner);
-			// we want to listen for our own activation
-			IWorkbenchWindow window = getSite().getWorkbenchWindow();
-			window.getPartService().addPartListener(partListener);
-			window.getShell().addShellListener(partListener);
-		} catch (Exception e) {
-			if (e instanceof SourceEditingRuntimeException) {
-				Throwable t = ((SourceEditingRuntimeException) e).getOriginalException();
-				if (t instanceof IOException) {
-					System.out.println(t);
-					// file not found
-				}
-			}
-		}
-		setPartName(input.getName());
-	}
-
-	/*
-	 * (non-Javadoc) Returns whether the "save as" operation is supported by
-	 * this editor. <p> Subclasses must override this method to implement the
-	 * open-save-close lifecycle for an editor. For greater details, see
-	 * <code> IEditorPart </code></p>
-	 * 
-	 * @see IEditorPart
-	 */
-	public boolean isSaveAsAllowed() {
-		return fTextEditor != null && fTextEditor.isSaveAsAllowed();
-	}
-
-	/*
-	 * (non-Javadoc) Returns whether the contents of this editor should be
-	 * saved when the editor is closed. <p> This method returns <code> true
-	 * </code> if and only if the editor is dirty ( <code> isDirty </code> ).
-	 * </p>
-	 */
-	public boolean isSaveOnCloseNeeded() {
-		// overriding super class since it does a lowly isDirty!
-		if (fTextEditor != null)
-			return fTextEditor.isSaveOnCloseNeeded();
-		return isDirty();
-	}
-
-	/**
-	 * Notifies this multi-page editor that the page with the given id has
-	 * been activated. This method is called when the user selects a different
-	 * tab.
-	 * 
-	 * @param newPageIndex
-	 *            the index of the activated page
-	 */
-	protected void pageChange(int newPageIndex) {
-		super.pageChange(newPageIndex);
-
-		saveLastActivePageIndex(newPageIndex);
-	}
-
-	/**
-	 * Posts the update code "behind" the running operation.
-	 */
-	protected void postOnDisplayQue(Runnable runnable) {
-		IWorkbench workbench = PlatformUI.getWorkbench();
-		IWorkbenchWindow[] windows = workbench.getWorkbenchWindows();
-		if (windows != null && windows.length > 0) {
-			Display display = windows[0].getShell().getDisplay();
-			display.asyncExec(runnable);
-		} else
-			runnable.run();
-	}
-
-	/**
-	 * Indicates that a property has changed.
-	 * 
-	 * @param source
-	 *            the object whose property has changed
-	 * @param propId
-	 *            the id of the property which has changed; property ids are
-	 *            generally defined as constants on the source class
-	 */
-	public void propertyChanged(Object source, int propId) {
-		switch (propId) {
-			// had to implement input changed "listener" so that
-			// strucutedText could tell it containing editor that
-			// the input has change, when a 'resource moved' event is
-			// found.
-			case IEditorPart.PROP_INPUT :
-			case IEditorPart.PROP_DIRTY : {
-				if (source == fTextEditor) {
-					if (fTextEditor.getEditorInput() != getEditorInput()) {
-						setInput(fTextEditor.getEditorInput());
-						// title should always change when input changes.
-						// create runnable for following post call
-						Runnable runnable = new Runnable() {
-							public void run() {
-								_firePropertyChange(IWorkbenchPart.PROP_TITLE);
-							}
-						};
-						// Update is just to post things on the display queue
-						// (thread). We have to do this to get the dirty
-						// property to get updated after other things on the
-						// queue are executed.
-						postOnDisplayQue(runnable);
-					}
-				}
-				break;
-			}
-			case IWorkbenchPart.PROP_TITLE : {
-				// update the input if the title is changed
-				if (source == fTextEditor) {
-					if (fTextEditor.getEditorInput() != getEditorInput()) {
-						setInput(fTextEditor.getEditorInput());
-					}
-				}
-				break;
-			}
-			default : {
-				// propagate changes. Is this needed? Answer: Yes.
-				if (source == fTextEditor) {
-					firePropertyChange(propId);
-				}
-				break;
-			}
-		}
-
-	}
-
-	protected void safelySanityCheckState() {
-		// If we're called before editor is created, simply ignore since we
-		// delegate this function to our embedded TextEditor
-		if (getTextEditor() == null)
-			return;
-
-		getTextEditor().safelySanityCheckState(getEditorInput());
-
-	}
-
-	protected void saveLastActivePageIndex(int newPageIndex) {
-		// save the last active page index to preference manager
-		getPreferenceStore().setValue(XMLPreferenceNames.LAST_ACTIVE_PAGE, newPageIndex);
-	}
-
-	/**
-	 * Sets the currently active page.
-	 */
-	protected void setActivePage() {
-		// retrieve the last active page index from preference manager
-		int activePageIndex = getPreferenceStore().getInt(XMLPreferenceNames.LAST_ACTIVE_PAGE);
-
-		// We check this range since someone could hand edit the XML
-		// preference file to an invalid value ... which I know from
-		// experience :( ... if they do, we'll reset to default and continue
-		// rather than throw an assertion error in the setActivePage(int)
-		// method.
-		if (activePageIndex < 0 || activePageIndex >= getPageCount()) {
-			activePageIndex = fDesignPageIndex;
-		}
-		setActivePage(activePageIndex);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.part.EditorPart#setInput(org.eclipse.ui.IEditorInput)
-	 */
-	protected void setInput(IEditorInput input) {
-		// If driven from the Source page, it's "model" may not be up to date
-		// with the input just yet. We'll rely on later notification from the
-		// TextViewer to set us straight
-		super.setInput(input);
-		if (fDesignViewer != null)
-			fDesignViewer.setModel(getModel());
-		setPartName(input.getName());
-	}
-
-	/**
-	 * IExtendedMarkupEditor method
-	 */
-	public IStatus validateEdit(Shell context) {
-		if (getTextEditor() == null)
-			return new Status(IStatus.ERROR, XMLUIPlugin.ID, IStatus.INFO, "", null); //$NON-NLS-1$
-
-		return getTextEditor().validateEdit(context);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/DOMPropertyDescriptorFactory.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/DOMPropertyDescriptorFactory.java
deleted file mode 100644
index e3bf603..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/DOMPropertyDescriptorFactory.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.ui.internal.properties.EnumeratedStringPropertyDescriptor;
-import org.w3c.dom.Attr;
-import org.w3c.dom.CDATASection;
-import org.w3c.dom.Comment;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.EntityReference;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-import org.w3c.dom.Text;
-
-
-public class DOMPropertyDescriptorFactory {
-
-	protected static final String HACK = "hack"; //$NON-NLS-1$
-	private ModelQuery fModelQuery = null;
-
-	public DOMPropertyDescriptorFactory(ModelQuery modelQuery) {
-		fModelQuery = modelQuery;
-	}
-
-	public IPropertyDescriptor createAttributePropertyDescriptor(Attr attr) {
-		IPropertyDescriptor result = null;
-
-		String attributeName = attr.getName();
-
-		CMAttributeDeclaration ad = fModelQuery.getCMAttributeDeclaration(attr);
-		if (ad != null) {
-			String[] valuesArray = fModelQuery.getPossibleDataTypeValues(attr.getOwnerElement(), ad);
-			if (valuesArray != null && valuesArray.length > 0) {
-				result = new EnumeratedStringPropertyDescriptor(attributeName, attributeName, valuesArray);
-			}
-		}
-
-		if (result == null) {
-			result = createDefaultPropertyDescriptor(attributeName);
-		}
-		return result;
-	}
-
-	public IPropertyDescriptor createCDATASectionPropertyDescriptor(CDATASection cdataSection) {
-		return createDefaultPropertyDescriptor(HACK);
-	}
-
-	public IPropertyDescriptor createCommentPropertyDescriptor(Comment comment) {
-		return createDefaultPropertyDescriptor(HACK);
-	}
-
-	protected IPropertyDescriptor createDefaultPropertyDescriptor(String attributeName) {
-		TextPropertyDescriptor descriptor = new TextPropertyDescriptor(attributeName, attributeName);
-		return descriptor;
-	}
-
-	public IPropertyDescriptor createDocumentTypePropertyDescriptor(DocumentType documentType) {
-		return null; //new TextPropertyDescriptor(HACK, HACK);
-	}
-
-	public IPropertyDescriptor createElementPropertyDescriptor(Element element) {
-		return createDefaultPropertyDescriptor(HACK);
-	}
-
-	public IPropertyDescriptor createEntityReferencePropertyDescriptor(EntityReference entityReference) {
-		return createDefaultPropertyDescriptor(HACK);
-	}
-
-	public IPropertyDescriptor createProcessingInstructionPropertyDescriptor(ProcessingInstruction pi) {
-		return createDefaultPropertyDescriptor(HACK);
-	}
-
-	public IPropertyDescriptor createPropertyDescriptor(Object object) {
-		IPropertyDescriptor result = null;
-		if (object instanceof Node) {
-			Node node = (Node) object;
-			int nodeType = node.getNodeType();
-			switch (nodeType) {
-				case Node.ATTRIBUTE_NODE : {
-					result = createAttributePropertyDescriptor((Attr) node);
-					break;
-				}
-				case Node.CDATA_SECTION_NODE : {
-					result = createCDATASectionPropertyDescriptor((CDATASection) node);
-					break;
-				}
-				case Node.COMMENT_NODE : {
-					result = createCommentPropertyDescriptor((Comment) node);
-					break;
-				}
-				case Node.DOCUMENT_TYPE_NODE : {
-					result = createDocumentTypePropertyDescriptor((DocumentType) node);
-					break;
-				}
-				case Node.ELEMENT_NODE : {
-					result = createElementPropertyDescriptor((Element) node);
-					break;
-				}
-				case Node.ENTITY_REFERENCE_NODE : {
-					result = createEntityReferencePropertyDescriptor((EntityReference) node);
-					break;
-				}
-				case Node.PROCESSING_INSTRUCTION_NODE : {
-					result = createProcessingInstructionPropertyDescriptor((ProcessingInstruction) node);
-					break;
-				}
-				case Node.TEXT_NODE : {
-					result = createTextPropertyDescriptor((Text) node);
-					break;
-				}
-			}
-		}
-		return result;
-	}
-
-	public IPropertyDescriptor createTextPropertyDescriptor(Text text) {
-		return createDefaultPropertyDescriptor(HACK);
-	}
-
-
-	public ModelQuery getModelQuery() {
-		return fModelQuery;
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/TreeContentHelper.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/TreeContentHelper.java
deleted file mode 100644
index 24114ee..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/TreeContentHelper.java
+++ /dev/null
@@ -1,431 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMWriter;
-import org.w3c.dom.Attr;
-import org.w3c.dom.CharacterData;
-import org.w3c.dom.DOMException;
-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.ProcessingInstruction;
-import org.w3c.dom.Text;
-
-
-/**
- * This performs the work of taking a DOM tree and converting it to a
- * displayable 'UI' tree.
- * 
- * For example : - white space text nodes are ommited from the 'UI' tree -
- * adjacent Text and EntityReference nodes are combined into a single 'UI'
- * node - Elements with 'text only' children are diplayed without children
- *  
- */
-public class TreeContentHelper {
-
-	public static final int HIDE_WHITE_SPACE_TEXT_NODES = 8;
-	public static final int COMBINE_ADJACENT_TEXT_AND_ENTITY_REFERENCES = 16;
-	public static final int HIDE_ELEMENT_CHILD_TEXT_NODES = 32;
-
-	protected int style = HIDE_WHITE_SPACE_TEXT_NODES | COMBINE_ADJACENT_TEXT_AND_ENTITY_REFERENCES | HIDE_ELEMENT_CHILD_TEXT_NODES;
-
-	/**
-	 *  
-	 */
-	public boolean hasStyleFlag(int flag) {
-		return (style & flag) != 0;
-	}
-
-	/**
-	 *  
-	 */
-	public Object[] getChildren(Object element) {
-		Object[] result = null;
-
-		if (element instanceof Node) {
-			Node node = (Node) element;
-			List list = new ArrayList();
-			boolean textContentOnly = true;
-
-			NamedNodeMap map = node.getAttributes();
-			if (map != null) {
-				int length = map.getLength();
-				for (int i = 0; i < length; i++) {
-					list.add(map.item(i));
-					textContentOnly = false;
-				}
-			}
-
-			Node prevIncludedNode = null;
-			for (Node childNode = node.getFirstChild(); childNode != null; childNode = childNode.getNextSibling()) {
-				int childNodeType = childNode.getNodeType();
-				boolean includeNode = true;
-
-				if (includeNode && hasStyleFlag(HIDE_WHITE_SPACE_TEXT_NODES)) {
-					if (isIgnorableText(childNode)) {
-						// filter out the ignorable text node
-						includeNode = false;
-					}
-				}
-
-				if (includeNode && hasStyleFlag(COMBINE_ADJACENT_TEXT_AND_ENTITY_REFERENCES)) {
-					if (isTextOrEntityReferenceNode(childNode) && prevIncludedNode != null && isTextOrEntityReferenceNode(prevIncludedNode)) {
-						// we only show the first of a list of adjacent text
-						// or entity reference node in the tree
-						// so we filter out this subsequent one
-						includeNode = false;
-					}
-				}
-
-				if (hasStyleFlag(HIDE_ELEMENT_CHILD_TEXT_NODES)) {
-					if (childNodeType != Node.TEXT_NODE && childNodeType != Node.ENTITY_REFERENCE_NODE) {
-						textContentOnly = false;
-					}
-				}
-
-				if (includeNode) {
-					list.add(childNode);
-					prevIncludedNode = childNode;
-				}
-			}
-
-			if (hasStyleFlag(HIDE_ELEMENT_CHILD_TEXT_NODES) && textContentOnly) {
-				result = new Object[0];
-			} else {
-				result = list.toArray();
-			}
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	protected boolean isTextOrEntityReferenceNode(Node node) {
-		return node.getNodeType() == Node.TEXT_NODE || node.getNodeType() == Node.ENTITY_REFERENCE_NODE;
-	}
-
-	/**
-	 *  
-	 */
-	public boolean isIgnorableText(Node node) {
-		boolean result = false;
-		if (node.getNodeType() == Node.TEXT_NODE) {
-			String data = ((Text) node).getData();
-			result = (data == null || data.trim().length() == 0);
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	public boolean isCombinedTextNode(Node node) {
-		boolean result = false;
-		if (node.getNodeType() == Node.TEXT_NODE) {
-			Node nextNode = node.getNextSibling();
-			if (nextNode != null) {
-				if (nextNode.getNodeType() == Node.ENTITY_REFERENCE_NODE) {
-					result = true;
-				}
-			}
-		} else if (node.getNodeType() == Node.ENTITY_REFERENCE_NODE) {
-			result = true;
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	public List getCombinedTextNodeList(Node theNode) {
-		List list = new Vector();
-		boolean prevIsEntity = false;
-		for (Node node = theNode; node != null; node = node.getNextSibling()) {
-			int nodeType = node.getNodeType();
-			if (nodeType == Node.ENTITY_REFERENCE_NODE) {
-				prevIsEntity = true;
-				list.add(node);
-			} else if (nodeType == Node.TEXT_NODE && (prevIsEntity || node == theNode)) {
-				prevIsEntity = false;
-				list.add(node);
-			} else {
-				break;
-			}
-		}
-		return list;
-	}
-
-	/**
-	 * If the element is has 'text only' content this method will return the
-	 * list of elements that compose the text only content
-	 */
-	public List getElementTextContent(Element element) {
-		List result = null;
-		if (!element.hasAttributes()) {
-			for (Node node = element.getFirstChild(); node != null; node = node.getNextSibling()) {
-				if (node.getNodeType() == Node.TEXT_NODE || node.getNodeType() == Node.ENTITY_REFERENCE_NODE) {
-					if (result == null) {
-						result = new Vector();
-					}
-					result.add(node);
-				} else {
-					result = null;
-					break;
-				}
-			}
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	public String getNodeValue(Node node) {
-		String result = null;
-		int nodeType = node.getNodeType();
-		switch (nodeType) {
-			case Node.ATTRIBUTE_NODE : {
-				result = ((Attr) node).getValue();
-				break;
-			}
-			case Node.CDATA_SECTION_NODE :
-			// drop thru
-			case Node.COMMENT_NODE : {
-				result = ((CharacterData) node).getData();
-				break;
-			}
-			case Node.DOCUMENT_TYPE_NODE : {
-				result = getDocumentTypeValue((DocumentType) node);
-				break;
-			}
-			case Node.ELEMENT_NODE : {
-				result = getElementNodeValue((Element) node);
-				break;
-			}
-			case Node.ENTITY_REFERENCE_NODE :
-			// drop thru
-			case Node.TEXT_NODE : {
-				result = getTextNodeValue(node);
-				break;
-			}
-			case Node.PROCESSING_INSTRUCTION_NODE : {
-				result = ((ProcessingInstruction) node).getData();
-				break;
-			}
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	public void setNodeValue(Node node, String value) {
-		int nodeType = node.getNodeType();
-		try {
-			switch (nodeType) {
-				case Node.ATTRIBUTE_NODE : {
-					((Attr) node).setValue(value);
-					break;
-				}
-				case Node.CDATA_SECTION_NODE :
-				// drop thru
-				case Node.COMMENT_NODE : {
-					((CharacterData) node).setData(value);
-					break;
-				}
-				case Node.ELEMENT_NODE : {
-					setElementNodeValue((Element) node, value);
-					break;
-				}
-				case Node.ENTITY_REFERENCE_NODE :
-				// drop thru
-				case Node.TEXT_NODE : {
-					setTextNodeValue(node, value);
-					break;
-				}
-				case Node.PROCESSING_INSTRUCTION_NODE : {
-					((ProcessingInstruction) node).setData(value);
-					break;
-				}
-			}
-		} catch (DOMException e) {
-			Display d = getDisplay();
-			if (d != null)
-				d.beep();
-		}
-	}
-
-	private Display getDisplay() {
-
-		return PlatformUI.getWorkbench().getDisplay();
-	}
-
-
-	/**
-	 *  
-	 */
-	protected String getDocumentTypeValue(DocumentType documentType) {
-		return DOMWriter.getDocumentTypeData(documentType);
-	}
-
-	/**
-	 *  
-	 */
-	protected String getElementNodeValue(Element element) {
-		String result = null;
-		List list = getElementTextContent(element);
-		if (list != null) {
-			result = getValueForTextContent(list);
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	protected void setElementNodeValue(Element element, String value) {
-		List list = getElementTextContent(element);
-		if (list != null) {
-			setValueForTextContent(list, value);
-		} else {
-			Document document = element.getOwnerDocument();
-			Text text = document.createTextNode(value);
-			element.appendChild(text);
-		}
-	}
-
-	/**
-	 *  
-	 */
-	protected String getTextNodeValue(Node node) {
-		String result = null;
-		List list = null;
-		if (isCombinedTextNode(node)) {
-			list = getCombinedTextNodeList(node);
-		} else {
-			list = new Vector();
-			list.add(node);
-		}
-		result = getValueForTextContent(list);
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	protected void setTextNodeValue(Node node, String value) {
-		List list = null;
-		if (isCombinedTextNode(node)) {
-			list = getCombinedTextNodeList(node);
-		} else {
-			list = new Vector();
-			list.add(node);
-		}
-		setValueForTextContent(list, value);
-	}
-
-	public Text getEffectiveTextNodeForCombinedNodeList(List list) {
-		Text result = null;
-		for (Iterator i = list.iterator(); i.hasNext();) {
-			Node node = (Node) i.next();
-			if (node.getNodeType() == Node.TEXT_NODE) {
-				result = (Text) node;
-				break;
-			}
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	protected String getValueForTextContent(List list) {
-		String result = null;
-		if (list.size() > 0) {
-			XMLNode first = (XMLNode) list.get(0);
-			XMLNode last = (XMLNode) list.get(list.size() - 1);
-			XMLModel model = first.getModel();
-			int start = first.getStartOffset();
-			int end = last.getEndOffset();
-			try {
-				result = model.getStructuredDocument().get(start, end - start);
-			} catch (Exception e) {
-			}
-		}
-
-		// we trim the content so that it looks nice when viewed
-		// we need to be carfull to preserve the 'trimmed' text when the value
-		// is set (see setValueForTextContent)
-		if (result != null) {
-			result = result.trim();
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	protected void setValueForTextContent(List list, String value) {
-		//String oldValue = getValueForTextContent();
-		// we worry about preserving trimmed text
-		if (list.size() > 0) {
-			XMLNode first = (XMLNode) list.get(0);
-			XMLNode last = (XMLNode) list.get(list.size() - 1);
-			int start = first.getStartOffset();
-			int end = last.getEndOffset();
-			first.getModel().getStructuredDocument().replaceText(this, start, end - start, value);
-		}
-	}
-
-	/**
-	 *  
-	 */
-	public boolean isEditable(Node node) {
-		int nodeType = node.getNodeType();
-		boolean result = false;
-		switch (nodeType) {
-			case Node.ATTRIBUTE_NODE :
-			// drop thru
-			case Node.CDATA_SECTION_NODE :
-			// drop thru
-			case Node.COMMENT_NODE :
-			// drop thru
-			case Node.ENTITY_REFERENCE_NODE :
-			// drop thru
-			case Node.TEXT_NODE :
-			// drop thru
-			case Node.PROCESSING_INSTRUCTION_NODE : {
-				result = true;
-				break;
-			}
-			case Node.ELEMENT_NODE : {
-				result = getElementTextContent((Element) node) != null || node.getChildNodes().getLength() == 0;
-				break;
-			}
-		}
-		return result;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/TreeExtension.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/TreeExtension.java
deleted file mode 100644
index 2800ef5..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/TreeExtension.java
+++ /dev/null
@@ -1,512 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ICellEditorListener;
-import org.eclipse.jface.viewers.ICellModifier;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.FocusListener;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseMoveListener;
-import org.eclipse.swt.events.PaintEvent;
-import org.eclipse.swt.events.PaintListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.ScrollBar;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.ui.PlatformUI;
-
-
-public class TreeExtension implements PaintListener {
-
-	protected Tree tree;
-	protected EditManager editManager;
-	protected String[] columnProperties;
-	protected ICellModifier cellModifier;
-	protected int columnPosition = 300;
-	protected int columnHitWidth = 5;
-	protected Color tableLineColor;
-	protected int controlWidth;
-	protected DelayedDrawTimer delayedDrawTimer;
-
-	public TreeExtension(Tree tree) {
-		this.tree = tree;
-		InternalMouseListener listener = new InternalMouseListener();
-		tree.addMouseMoveListener(listener);
-		tree.addMouseListener(listener);
-		tree.addPaintListener(this);
-		editManager = new EditManager(tree);
-		delayedDrawTimer = new DelayedDrawTimer(tree);
-
-		tableLineColor = tree.getDisplay().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW);
-	}
-
-	public void dispose() {
-		tableLineColor.dispose();
-	}
-
-	public void setCellModifier(ICellModifier modifier) {
-		cellModifier = modifier;
-	}
-
-	public void resetCachedData() {
-	}
-
-	public ICellModifier getCellModifier() {
-		return cellModifier;
-	}
-
-	public List getItemList() {
-		List list = new Vector();
-		getItemListHelper(tree.getItems(), list);
-		return list;
-	}
-
-	protected void getItemListHelper(TreeItem[] items, List list) {
-		for (int i = 0; i < items.length; i++) {
-			TreeItem item = items[i];
-			list.add(item);
-			getItemListHelper(item.getItems(), list);
-		}
-	}
-
-	protected TreeItem getTreeItemOnRow(int px, int py) {
-		TreeItem result = null;
-		List list = getItemList();
-		for (Iterator i = list.iterator(); i.hasNext();) {
-			TreeItem item = (TreeItem) i.next();
-			Rectangle r = item.getBounds();
-			if (r != null && px >= r.x && py >= r.y && py <= r.y + r.height) {
-				result = item;
-			}
-		}
-		return result;
-	}
-
-	protected class InternalMouseListener extends MouseAdapter implements MouseMoveListener {
-		protected int columnDragged = -1;
-		protected boolean isDown = false;
-		protected int prevX = -1;
-		protected Cursor cursor = null;
-
-		public void mouseMove(MouseEvent e) {
-			if (e.x > columnPosition - columnHitWidth && e.x < columnPosition + columnHitWidth) {
-				if (cursor == null) {
-					cursor = new Cursor(tree.getDisplay(), SWT.CURSOR_SIZEWE);
-					tree.setCursor(cursor);
-				}
-			} else {
-				if (cursor != null) {
-					tree.setCursor(null);
-					cursor.dispose();
-					cursor = null;
-				}
-			}
-
-			if (columnDragged != -1) {
-				// using the delay timer will make redraws less flickery
-				if (e.x > 20) {
-					columnPosition = e.x;
-					delayedDrawTimer.reset(20);
-				}
-			}
-		}
-
-		public void mouseDown(MouseEvent e) {
-			// here we handle the column resizing by detect if the user has
-			// click on a column separator
-			//
-			columnDragged = -1;
-			editManager.deactivateCellEditor();
-
-			if (e.x > columnPosition - columnHitWidth && e.x < columnPosition + columnHitWidth) {
-				columnDragged = 0;
-			}
-
-			// here we handle selecting tree items when any thing on the 'row'
-			// is clicked
-			//
-			TreeItem item = tree.getItem(new Point(e.x, e.y));
-			if (item == null) {
-				item = getTreeItemOnRow(e.x, e.y);
-				if (item != null) {
-					TreeItem[] items = new TreeItem[1];
-					items[0] = item;
-					tree.setSelection(items);
-				}
-			}
-		}
-
-		public void mouseUp(MouseEvent e) {
-			columnDragged = -1;
-		}
-	}
-
-	public String[] getColumnProperties() {
-		return columnProperties;
-	}
-
-	public void setColumnProperties(String[] columnProperties) {
-		this.columnProperties = columnProperties;
-	}
-
-	public void paintControl(PaintEvent event) {
-		GC gc = event.gc;
-		Rectangle treeBounds = tree.getBounds();
-
-		controlWidth = treeBounds.width;
-		Color bg = tree.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND);
-		Color bg2 = tree.getDisplay().getSystemColor(SWT.COLOR_LIST_SELECTION);
-
-		gc.setBackground(bg2);
-
-		//		// This next part causes problems on LINUX, so let's not do it
-		// there
-		//		if (B2BHacks.IS_UNIX == false) {
-		//			TreeItem[] selectedItems = tree.getSelection();
-		//			if (selectedItems.length > 0) {
-		//				for (int i = 0; i < selectedItems.length; i++) {
-		//					TreeItem item = selectedItems[i];
-		//					Rectangle bounds = item.getBounds();
-		//					if (bounds != null) {
-		//						gc.fillRectangle(bounds.x + bounds.width, bounds.y, controlWidth,
-		// bounds.height);
-		//					}
-		//				}
-		//			}
-		//		}
-		//
-		TreeItem[] items = tree.getItems();
-		if (items.length > 0) {
-			gc.setForeground(tableLineColor);
-			gc.setBackground(bg);
-
-			gc.fillRectangle(columnPosition, treeBounds.x, treeBounds.width, treeBounds.height);
-
-			Rectangle itemBounds = items[0].getBounds();
-			int height = computeTreeItemHeight();
-
-			if (itemBounds != null) {
-				int startY = itemBounds.y < treeBounds.y ? itemBounds.y : treeBounds.y + ((treeBounds.y - itemBounds.y) % height);
-
-				for (int i = startY; i < treeBounds.height; i += height) {
-					if (i >= treeBounds.y) {
-						gc.drawLine(0, i, treeBounds.width, i);
-					}
-				}
-			}
-			gc.drawLine(columnPosition, 0, columnPosition, treeBounds.height);
-		} else {
-			addEmptyTreeMessage(gc);
-		}
-
-		paintItems(gc, items, treeBounds);
-	}
-
-	protected int computeTreeItemHeight() {
-		int result = -1;
-
-		// On GTK tree.getItemHeight() seems to lie to us. It reports that the
-		// tree item occupies a few pixles less
-		// vertical space than it should. This which foils our code that draw
-		// the 'row' lines since we assume that
-		// lines should be drawn at 'itemHeight' increments. In the case of
-		// LINUX we don't trust getItemHeight()
-		// to compute the increment... instead we compute the value based on
-		// distance between two TreeItems.
-		//		if (B2BHacks.IS_UNIX) {
-		//			TreeItem[] items = tree.getItems();
-		//			Rectangle itemBounds = items[0].getBounds();
-		//
-		//			if (items[0].getExpanded()) {
-		//				TreeItem[] children = items[0].getItems();
-		//				if (children.length > 0) {
-		//					result = children[0].getBounds().y - itemBounds.y;
-		//				}
-		//			}
-		//			else if (items.length > 1) {
-		//				result = items[1].getBounds().y - itemBounds.y;
-		//			}
-		//		}
-
-		result = result != -1 ? result : tree.getItemHeight();
-		return result;
-	}
-
-	protected void addEmptyTreeMessage(GC gc) {
-	}
-
-	public void paintItems(GC gc, TreeItem[] items, Rectangle treeBounds) {
-		if (items != null) {
-			for (int i = 0; i < items.length; i++) {
-				TreeItem item = items[i];
-				if (item != null) {
-					Rectangle bounds = item.getBounds();
-					if (bounds != null) {
-						if (treeBounds.intersects(bounds)) {
-							paintItem(gc, item, bounds);
-						}
-					}
-
-					// defect 241039
-					//
-					if (item.getExpanded()) {
-						paintItems(gc, item.getItems(), treeBounds);
-					}
-				}
-			}
-		}
-	}
-
-	protected void paintItem(GC gc, TreeItem item, Rectangle bounds) {
-	}
-
-	public interface ICellEditorProvider {
-		CellEditor getCellEditor(Object o, int col);
-	}
-
-	/**
-	 * This class is used to improve drawing during a column resize.
-	 */
-	public class DelayedDrawTimer implements Runnable {
-		protected Control control;
-
-		public DelayedDrawTimer(Control control) {
-			this.control = control;
-		}
-
-		public void reset(int milliseconds) {
-			getDisplay().timerExec(milliseconds, this);
-		}
-
-		public void run() {
-			control.redraw();
-		}
-	}
-
-	private Display getDisplay() {
-
-		return PlatformUI.getWorkbench().getDisplay();
-	}
-
-	/**
-	 * EditManager
-	 */
-	public class EditManager {
-		protected Tree tree;
-		protected Control cellEditorHolder;
-		protected CellEditorState cellEditorState;
-
-		public EditManager(Tree tree) {
-			this.tree = tree;
-			this.cellEditorHolder = new Composite(tree, SWT.NONE);
-
-			final Tree theTree = tree;
-
-			MouseAdapter theMouseAdapter = new MouseAdapter() {
-				public void mouseDown(MouseEvent e) {
-					deactivateCellEditor();
-
-					if (e.x > columnPosition + columnHitWidth) {
-						TreeItem[] items = theTree.getSelection();
-						// No edit if more than one row is selected.
-						if (items.length == 1) {
-							Rectangle bounds = items[0].getBounds();
-							if (bounds != null && e.y >= bounds.y && e.y <= bounds.y + bounds.height) {
-								int columnToEdit = 1;
-								activateCellEditor(items[0], columnToEdit);
-							}
-						}
-					}
-				}
-			};
-
-			SelectionListener selectionListener = new SelectionListener() {
-				public void widgetDefaultSelected(SelectionEvent e) {
-					applyCellEditorValue();
-				}
-
-				public void widgetSelected(SelectionEvent e) {
-					applyCellEditorValue();
-				}
-			};
-
-			KeyListener keyListener = new KeyAdapter() {
-				public void keyPressed(KeyEvent e) {
-					if (e.character == SWT.CR) {
-						deactivateCellEditor();
-						TreeItem[] items = theTree.getSelection();
-						if (items.length == 1) {
-							activateCellEditor(items[0], 1);
-						}
-					}
-				}
-			};
-
-			tree.addMouseListener(theMouseAdapter);
-			tree.addKeyListener(keyListener);
-			ScrollBar hBar = tree.getHorizontalBar();
-			if (hBar != null)
-				hBar.addSelectionListener(selectionListener);
-			ScrollBar vBar = tree.getVerticalBar();
-			if (vBar != null)
-				vBar.addSelectionListener(selectionListener);
-		}
-
-		public boolean isCellEditorActive() {
-			return cellEditorState != null;
-		}
-
-		public void applyCellEditorValue() {
-			if (cellEditorState != null && cellModifier != null) {
-				TreeItem treeItem = cellEditorState.treeItem;
-
-				// The area below the cell editor needs to be explicity
-				// repainted on Linux
-				//
-				//				Rectangle r = B2BHacks.IS_UNIX ? treeItem.getBounds() :
-				// null;
-
-				Object value = cellEditorState.cellEditor.getValue();
-				String property = cellEditorState.property;
-
-				deactivateCellEditor();
-
-				cellModifier.modify(treeItem, property, value);
-
-				//				if (r != null) {
-				//					tree.redraw(r.x, r.y, tree.getBounds().width, r.height,
-				// false);
-				//				}
-			}
-		}
-
-		public void deactivateCellEditor() {
-			// Clean up any previous editor control
-			if (cellEditorState != null) {
-				cellEditorState.deactivate();
-				cellEditorState = null;
-			}
-		}
-
-		public void activateCellEditor(TreeItem treeItem, int column) {
-			if (cellModifier instanceof ICellEditorProvider) {
-				ICellEditorProvider cellEditorProvider = (ICellEditorProvider) cellModifier;
-				Object data = treeItem.getData();
-				if (columnProperties.length > column) {
-					String property = columnProperties[column];
-					if (cellModifier.canModify(data, property)) {
-						CellEditor newCellEditor = cellEditorProvider.getCellEditor(data, column);
-						if (newCellEditor != null) {
-							// The control that will be the editor must be a
-							// child of the columnPosition
-							Control control = newCellEditor.getControl();
-							if (control != null) {
-								cellEditorState = new CellEditorState(newCellEditor, control, treeItem, column, property);
-								cellEditorState.activate();
-							}
-						}
-					}
-				}
-			}
-		}
-
-		/**
-		 * this class holds the state that is need on a per cell editor
-		 * invocation basis
-		 */
-		public class CellEditorState implements ICellEditorListener, FocusListener {
-			public CellEditor cellEditor;
-			public Control control;
-			public TreeItem treeItem;
-			public int columnNumber;
-			public String property;
-
-			public CellEditorState(CellEditor cellEditor, Control control, TreeItem treeItem, int columnNumber, String property) {
-				this.cellEditor = cellEditor;
-				this.control = control;
-				this.treeItem = treeItem;
-				this.columnNumber = columnNumber;
-				this.property = property;
-			}
-
-			public void activate() {
-				Object element = treeItem.getData();
-				String value = cellModifier.getValue(element, property).toString();
-				if (control instanceof Text) {
-					Text text = (Text) control;
-					int requiredSize = value.length() + 100;
-					if (text.getTextLimit() < requiredSize) {
-						text.setTextLimit(requiredSize);
-					}
-				}
-				Rectangle r = treeItem.getBounds();
-				if (r != null) {
-					control.setBounds(columnPosition + 5, r.y + 1, tree.getClientArea().width - (columnPosition + 5), r.height - 1);
-					control.setVisible(true);
-					cellEditor.setValue(value);
-					cellEditor.addListener(this);
-					cellEditor.setFocus();
-					control.addFocusListener(this);
-				}
-			}
-
-			public void deactivate() {
-				cellEditor.removeListener(this);
-				control.removeFocusListener(this);
-				cellEditor.deactivate();
-				tree.forceFocus();
-			}
-
-			// ICellEditorListener methods
-			//
-			public void applyEditorValue() {
-				applyCellEditorValue();
-			}
-
-			public void cancelEditor() {
-				deactivateCellEditor();
-			}
-
-			public void editorValueChanged(boolean oldValidState, boolean newValidState) {
-			}
-
-			// FocusListener methods
-			//
-			public void focusGained(FocusEvent e) {
-			}
-
-			public void focusLost(FocusEvent e) {
-				applyCellEditorValue();
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/ViewerExpandCollapseAction.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/ViewerExpandCollapseAction.java
deleted file mode 100644
index 9d37f78..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/ViewerExpandCollapseAction.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.AbstractTreeViewer;
-import org.eclipse.wst.xml.internal.ui.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.internal.ui.XMLEditorPluginImages;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-public class ViewerExpandCollapseAction extends Action {
-
-	protected boolean isExpandAction;
-	protected AbstractTreeViewer viewer = null;
-
-	public ViewerExpandCollapseAction(boolean isExpandAction) {
-		this.isExpandAction = isExpandAction;
-		if (isExpandAction) {
-			ImageDescriptor e_imageDescriptor = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_ETOOL_EXPANDALL);
-			ImageDescriptor d_imageDescriptor = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_DTOOL_EXPANDALL);
-
-			setImageDescriptor(e_imageDescriptor);
-			setDisabledImageDescriptor(d_imageDescriptor);
-			setToolTipText(XMLUIPlugin.getResourceString("%_UI_INFO_EXPAND_ALL")); //$NON-NLS-1$
-		} else {
-			ImageDescriptor e_imageDescriptor = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_ETOOL_COLLAPSEALL);
-			ImageDescriptor d_imageDescriptor = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_DTOOL_COLLAPSEALL);
-
-			setImageDescriptor(e_imageDescriptor);
-			setDisabledImageDescriptor(d_imageDescriptor);
-			setToolTipText(XMLUIPlugin.getResourceString("%_UI_INFO_COLLAPSE_ALL")); //$NON-NLS-1$
-		}
-	}
-
-	public void setViewer(AbstractTreeViewer viewer) {
-		this.viewer = viewer;
-	}
-
-	public void run() {
-		if (viewer != null) {
-			// temporarily set the visibility to false
-			// this has a HUGE performance benefit
-			boolean isVisible = viewer.getControl().getVisible();
-			viewer.getControl().setVisible(false);
-
-			if (isExpandAction) {
-				viewer.expandAll();
-			} else {
-				viewer.collapseAll();
-			}
-
-			// restore the previous visibility state
-			// 
-			viewer.getControl().setVisible(isVisible);
-		}
-	}
-}
-
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeActionBarContributor.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeActionBarContributor.java
deleted file mode 100644
index dcf103f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeActionBarContributor.java
+++ /dev/null
@@ -1,323 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IContributionManager;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.ITextEditorActionConstants;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.CMDocumentLoader;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.InferredGrammarBuildingCMDocumentLoader;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.internal.ui.IDesignViewer;
-import org.eclipse.wst.xml.internal.ui.IDesignViewerActionBarContributor;
-import org.eclipse.wst.xml.internal.ui.XMLEditorResourceHandler;
-import org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart;
-import org.eclipse.wst.xml.ui.util.SharedXMLEditorPluginImageHelper;
-import org.w3c.dom.Document;
-
-/**
- *  
- */
-public class XMLTableTreeActionBarContributor implements IDesignViewerActionBarContributor {
-
-	protected IEditorPart editorPart;
-	protected final static String DESIGN_VIEWER_SEPARATOR_1_ID = "sed.tabletree.separator.1"; //$NON-NLS-1$
-	protected final static String DESIGN_VIEWER_SEPARATOR_2_ID = "sed.tabletree.separator.2"; //$NON-NLS-1$
-	protected final static String VALIDATE_XML_ID = "sed.tabletree.validateXML"; //$NON-NLS-1$
-	protected final static String RELOAD_GRAMMAR_ID = "sed.tabletree.reloadGrammar"; //$NON-NLS-1$
-	protected final static String TOGGLE_EDIT_MODE_ID = "sed.tabletree.toggleEditMode"; //$NON-NLS-1$
-	protected final static String EXPAND_ALL_ID = "sed.tabletree.expandAll"; //$NON-NLS-1$
-	protected final static String COLLAPSE_ALL_ID = "sed.tabletree.collapseAll"; //$NON-NLS-1$
-
-	protected ToggleEditModeAction toggleAction;
-	protected ReloadGrammarAction reloadGrammarAction;
-	//	protected ValidateXMLAction validateXMLAction;
-	protected ViewerExpandCollapseAction expandAction;
-	protected ViewerExpandCollapseAction collapseAction;
-	protected ViewerExpandCollapseAction xmlMenuExpandAction;
-	protected ViewerExpandCollapseAction xmlMenuCollapseAction;
-
-	public XMLTableTreeActionBarContributor() {
-	}
-
-	protected void removeContributions(IContributionManager manager) {
-		try {
-			doRemove(manager, DESIGN_VIEWER_SEPARATOR_1_ID);
-			doRemove(manager, DESIGN_VIEWER_SEPARATOR_2_ID);
-			doRemove(manager, VALIDATE_XML_ID);
-			doRemove(manager, RELOAD_GRAMMAR_ID);
-			doRemove(manager, TOGGLE_EDIT_MODE_ID);
-			doRemove(manager, EXPAND_ALL_ID);
-			doRemove(manager, COLLAPSE_ALL_ID);
-		} catch (Exception e) {
-		}
-	}
-
-	protected void doRemove(IContributionManager manager, String id) {
-		try {
-			if (manager.find(id) != null) {
-				manager.remove(id);
-			}
-		} catch (Exception e) {
-		}
-	}
-
-	public void init(IActionBars bars, IWorkbenchPage page) {
-		init(bars);
-	}
-
-	public void init(IActionBars bars) {
-		IToolBarManager tbm = bars.getToolBarManager();
-
-		IMenuManager xmlMenu = bars.getMenuManager().findMenuUsingPath("com.ibm.etools.sed.editor.xmlmenu"); //$NON-NLS-1$
-
-		if (xmlMenu == null) {
-			xmlMenu = new MenuManager(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.0"), "com.ibm.etools.sed.editor.xmlmenu"); //$NON-NLS-1$ //$NON-NLS-2$
-			bars.getMenuManager().insertBefore(IWorkbenchActionConstants.M_WINDOW, xmlMenu);
-		} else {
-			removeContributions(xmlMenu);
-		}
-
-		tbm.add(new Separator("DESIGN_VIEWER_SEPARATOR_1_ID")); //$NON-NLS-1$
-
-		// ValidateXMLAction
-		//                        
-		// ugly hack ... we don't contribute the generic XML validator if we
-		// already
-		// have a DAD validator contribution (in the case of the DAD editor).
-		// This hack will be removed when defect 212448 is fixed.
-		//
-		//		if (tbm.find("validate.dad.validateDAD") == null) {
-		//			validateXMLAction = new ValidateXMLAction();
-		//			tbm.add(validateXMLAction);
-		//			xmlMenu.add(validateXMLAction);
-		//		}
-
-		// ToggleEditModeAction
-		//           
-		toggleAction = new ToggleEditModeAction();
-		toggleAction.setId(TOGGLE_EDIT_MODE_ID);
-		xmlMenu.add(toggleAction);
-		tbm.add(toggleAction);
-
-		// ReloadGrammarAction
-		//
-		reloadGrammarAction = new ReloadGrammarAction();
-		reloadGrammarAction.setId(RELOAD_GRAMMAR_ID);
-		tbm.add(reloadGrammarAction);
-		xmlMenu.add(reloadGrammarAction);
-
-		xmlMenu.add(new Separator());
-
-		// ExpandCollapseAction
-		//
-		xmlMenuExpandAction = new ViewerExpandCollapseAction(true);
-		xmlMenuExpandAction.setId(EXPAND_ALL_ID);
-		xmlMenuExpandAction.setText(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.1")); //$NON-NLS-1$
-		xmlMenu.add(xmlMenuExpandAction);
-
-		xmlMenuCollapseAction = new ViewerExpandCollapseAction(false);
-		xmlMenuCollapseAction.setId(COLLAPSE_ALL_ID);
-		xmlMenuCollapseAction.setId(EXPAND_ALL_ID);
-		xmlMenuCollapseAction.setText(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.2")); //$NON-NLS-1$
-		xmlMenu.add(xmlMenuCollapseAction);
-	}
-
-	protected void addActionWithId(IMenuManager menuManager, Action action, String id) {
-		action.setId(id);
-		menuManager.add(action);
-	}
-
-	public void initViewerSpecificContributions(IActionBars bars) {
-		IToolBarManager tbm = bars.getToolBarManager();
-		tbm.add(new Separator(DESIGN_VIEWER_SEPARATOR_2_ID));
-
-		expandAction = new ViewerExpandCollapseAction(true);
-		expandAction.setId(EXPAND_ALL_ID);
-		tbm.add(expandAction);
-
-		collapseAction = new ViewerExpandCollapseAction(false);
-		collapseAction.setId(COLLAPSE_ALL_ID);
-		tbm.add(collapseAction);
-	}
-
-	public void setViewerSpecificContributionsEnabled(boolean enabled) {
-		if (expandAction != null) {
-			expandAction.setEnabled(enabled);
-			xmlMenuExpandAction.setEnabled(enabled);
-		}
-
-		if (collapseAction != null) {
-			collapseAction.setEnabled(enabled);
-			xmlMenuCollapseAction.setEnabled(enabled);
-		}
-	}
-
-	public void setActiveEditor(IEditorPart targetEditor) {
-		editorPart = targetEditor;
-
-		IStructuredModel model = getModelForEditorPart(targetEditor);
-		reloadGrammarAction.setModel(model);
-		toggleAction.setModelQuery(ModelQueryUtil.getModelQuery(model));
-
-		XMLTableTreeViewer tableTreeViewer = getTableTreeViewerForEditorPart(editorPart);
-		if (tableTreeViewer != null) {
-			expandAction.setViewer(tableTreeViewer);
-			collapseAction.setViewer(tableTreeViewer);
-
-			xmlMenuExpandAction.setViewer(tableTreeViewer);
-			xmlMenuCollapseAction.setViewer(tableTreeViewer);
-		}
-
-		if (editorPart instanceof XMLMultiPageEditorPart) {
-			IWorkbenchPartSite site = editorPart.getSite();
-			if (site instanceof IEditorSite) {
-				ITextEditor textEditor = ((XMLMultiPageEditorPart) editorPart).getTextEditor();
-				IActionBars actionBars = ((IEditorSite) site).getActionBars();
-				actionBars.setGlobalActionHandler(ITextEditorActionConstants.UNDO, getAction(textEditor, ITextEditorActionConstants.UNDO));
-				actionBars.setGlobalActionHandler(ITextEditorActionConstants.REDO, getAction(textEditor, ITextEditorActionConstants.REDO));
-			}
-		}
-
-		// TODO... uncomment this and investigate NPE
-		//
-		// add the cut/copy/paste for text fields
-		// ActionHandlerPlugin.connectPart(editorPart);
-	}
-
-	protected final IAction getAction(ITextEditor editor, String actionId) {
-		return (editor == null ? null : editor.getAction(actionId));
-	}
-
-	protected IStructuredModel getModelForEditorPart(IEditorPart targetEditor) {
-		IStructuredModel result = null;
-		if (editorPart instanceof XMLMultiPageEditorPart) {
-			StructuredTextEditor textEditor = ((XMLMultiPageEditorPart) targetEditor).getTextEditor();
-			result = (textEditor != null) ? textEditor.getModel() : null;
-		}
-		return result;
-	}
-
-	protected XMLTableTreeViewer getTableTreeViewerForEditorPart(IEditorPart targetEditor) {
-		XMLTableTreeViewer result = null;
-		Object object = targetEditor.getAdapter(IDesignViewer.class);
-		if (object instanceof XMLTableTreeViewer) {
-			result = (XMLTableTreeViewer) object;
-		}
-		return result;
-	}
-
-	/**
-	 *  
-	 */
-	public class ToggleEditModeAction extends Action {
-		protected ImageDescriptor onImage = SharedXMLEditorPluginImageHelper.getImageDescriptor(SharedXMLEditorPluginImageHelper.IMG_ETOOL_CONSTRAINON);
-		protected ImageDescriptor offImage = SharedXMLEditorPluginImageHelper.getImageDescriptor(SharedXMLEditorPluginImageHelper.IMG_ETOOL_CONSTRAINOFF);
-		protected ModelQuery modelQuery;
-
-		public ToggleEditModeAction() {
-			setAppearanceForEditMode(ModelQuery.EDIT_MODE_CONSTRAINED_STRICT);
-		}
-
-		public void run() {
-			if (modelQuery != null) {
-				int newState = getNextState(modelQuery.getEditMode());
-				modelQuery.setEditMode(newState);
-				setAppearanceForEditMode(newState);
-			}
-		}
-
-		public void setModelQuery(ModelQuery newModelQuery) {
-			modelQuery = newModelQuery;
-			if (modelQuery != null) {
-				setAppearanceForEditMode(modelQuery.getEditMode());
-			}
-		}
-
-		public void setAppearanceForEditMode(int editMode) {
-			if (editMode == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) {
-				setToolTipText(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.3")); //$NON-NLS-1$
-				setText(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.4")); //$NON-NLS-1$
-				setImageDescriptor(onImage);
-			} else {
-				setToolTipText(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.5")); //$NON-NLS-1$
-				setText(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.6")); //$NON-NLS-1$
-				setImageDescriptor(offImage);
-			}
-		}
-
-		public int getNextState(int editMode) {
-			int result = -1;
-			if (editMode == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) {
-				result = ModelQuery.EDIT_MODE_UNCONSTRAINED;
-			} else {
-				result = ModelQuery.EDIT_MODE_CONSTRAINED_STRICT;
-			}
-			return result;
-		}
-	}
-
-	/**
-	 *  
-	 */
-	public class ReloadGrammarAction extends Action {
-		protected IStructuredModel model;
-
-		public ReloadGrammarAction() {
-			setDisabledImageDescriptor(SharedXMLEditorPluginImageHelper.getImageDescriptor(SharedXMLEditorPluginImageHelper.IMG_DTOOL_RLDGRMR));
-			setImageDescriptor(SharedXMLEditorPluginImageHelper.getImageDescriptor(SharedXMLEditorPluginImageHelper.IMG_ETOOL_RLDGRMR));
-			setToolTipText(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.7")); //$NON-NLS-1$
-			setText(XMLEditorResourceHandler.getResourceString("%XMLTableTreeActionBarContributor.8")); //$NON-NLS-1$
-		}
-
-		public void setModel(IStructuredModel newModel) {
-			this.model = newModel;
-		}
-
-		public void run() {
-			if (model != null) {
-				ModelQuery modelQuery = ModelQueryUtil.getModelQuery(model);
-				Document document = ((XMLModel) model).getDocument();
-				if (modelQuery != null && modelQuery.getCMDocumentManager() != null) {
-					modelQuery.getCMDocumentManager().getCMDocumentCache().clear();
-					// TODO... need to figure out how to access the
-					// DOMObserver via ModelQuery
-					//  ...why?
-					CMDocumentLoader loader = new InferredGrammarBuildingCMDocumentLoader(document, modelQuery);
-					loader.loadCMDocuments();
-				}
-			}
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorActionBarContributor#dispose()
-	 */
-	public void dispose() {
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeContentProvider.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeContentProvider.java
deleted file mode 100644
index a84e388..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeContentProvider.java
+++ /dev/null
@@ -1,367 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManagerListener;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.eclipse.wst.xml.ui.util.SharedXMLEditorPluginImageHelper;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-import org.w3c.dom.Text;
-
-
-public class XMLTableTreeContentProvider implements ITreeContentProvider, ITableLabelProvider, ILabelProvider, CMDocumentManagerListener {
-
-	protected ViewerNotifyingAdapterFactory viewerNotifyingAdapterFactory = new ViewerNotifyingAdapterFactory();
-	protected XMLTableTreePropertyDescriptorFactory propertyDescriptorFactory;
-	//	protected ImageFactory imageFactory =
-	// XMLCommonUIPlugin.getInstance().getImageFactory();
-	protected List viewerList = new Vector();
-	protected TreeContentHelper treeContentHelper = new TreeContentHelper();
-
-	protected CMDocumentManager documentManager;
-
-	public XMLTableTreeContentProvider() {
-	}
-
-	public void getDecendantList(Object element, List list) {
-		Object[] children = getChildren(element);
-		if (children != null) {
-			for (int i = 0; i < children.length; i++) {
-				Object child = children[i];
-				list.add(child);
-				getDecendantList(child, list);
-			}
-		}
-	}
-
-	public void addViewer(Viewer viewer) {
-		viewerList.add(viewer);
-	}
-
-	public Object[] getChildren(Object element) {
-		viewerNotifyingAdapterFactory.doAdapt(element);
-		return treeContentHelper.getChildren(element);
-	}
-
-	public Object getParent(Object o) {
-		Object result = null;
-		if (o instanceof Node) {
-			Node node = (Node) o;
-			if (node.getNodeType() == Node.ATTRIBUTE_NODE) {
-				result = ((Attr) node).getOwnerElement();
-			} else {
-				result = node.getParentNode();
-			}
-		}
-		return result;
-	}
-
-	public boolean hasChildren(Object element) {
-		viewerNotifyingAdapterFactory.doAdapt(element);
-		return getChildren(element).length > 0;
-	}
-
-	public Object[] getElements(Object element) {
-		viewerNotifyingAdapterFactory.doAdapt(element);
-		return getChildren(element);
-	}
-
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		// remove our listeners to the old state
-		if (oldInput != null) {
-			propertyDescriptorFactory = null;
-			Document domDoc = (Document) oldInput;
-			ModelQuery mq = ModelQueryUtil.getModelQuery(domDoc);
-			if (mq != null) {
-				documentManager = mq.getCMDocumentManager();
-				if (documentManager != null) {
-					documentManager.removeListener(this);
-				}
-			}
-		}
-
-		if (newInput != null) {
-			Document domDoc = (Document) newInput;
-			ModelQuery mq = ModelQueryUtil.getModelQuery(domDoc);
-
-			if (mq != null) {
-				propertyDescriptorFactory = new XMLTableTreePropertyDescriptorFactory(mq);
-				documentManager = mq.getCMDocumentManager();
-				if (documentManager != null) {
-					documentManager.setPropertyEnabled(CMDocumentManager.PROPERTY_ASYNC_LOAD, true);
-					documentManager.addListener(this);
-				}
-			}
-		}
-	}
-
-	public boolean isDeleted(Object element) {
-		return element != null;
-	}
-
-	//
-	// ILabelProvider stuff
-	//
-	public void addListener(ILabelProviderListener listener) {
-	}
-
-	public void dispose() {
-		viewerList = new Vector();
-	}
-
-	public Element getRootElement(Document document) {
-		Element rootElement = null;
-
-		for (Node childNode = document.getFirstChild(); childNode != null; childNode = childNode.getNextSibling()) {
-			if (childNode.getNodeType() == Node.ELEMENT_NODE) {
-				rootElement = (Element) childNode;
-				break;
-			}
-		}
-		return rootElement;
-	}
-
-	public Image getImage(Object object) {
-		viewerNotifyingAdapterFactory.doAdapt(object);
-		Image image = null;
-		if (object instanceof Node) {
-			Node node = (Node) object;
-			switch (node.getNodeType()) {
-				case Node.ATTRIBUTE_NODE : {
-					image = SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_ATTRIBUTE);
-					break;
-				}
-				case Node.CDATA_SECTION_NODE : {
-					image = SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_CDATASECTION);
-					break;
-				}
-				case Node.COMMENT_NODE : {
-					image = SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_COMMENT);
-					break;
-				}
-				case Node.DOCUMENT_TYPE_NODE : {
-					image = SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_DOCTYPE);
-					break;
-				}
-				case Node.ELEMENT_NODE : {
-					image = SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_ELEMENT);
-					break;
-				}
-				case Node.PROCESSING_INSTRUCTION_NODE : {
-					image = SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_PROCESSINGINSTRUCTION);
-					break;
-				}
-				case Node.TEXT_NODE : {
-					image = SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_TXTEXT);
-					break;
-				}
-				case Node.ENTITY_REFERENCE_NODE : {
-					image = image = SharedXMLEditorPluginImageHelper.getImage(SharedXMLEditorPluginImageHelper.IMG_OBJ_ENTITY_REFERENCE);
-					break;
-				}
-			}
-
-			//			if (image != null) {
-			//				Image markerOverlayImage =
-			// overlayIconManager.getOverlayImageForObject(node);
-			//				if (markerOverlayImage != null) {
-			//					image = imageFactory.createCompositeImage(image,
-			// markerOverlayImage, ImageFactory.BOTTOM_LEFT);
-			//				}
-			//			}
-		}
-		return image;
-	}
-
-	public String getText(Object object) {
-		viewerNotifyingAdapterFactory.doAdapt(object);
-		String result = null;
-		if (object instanceof Node) {
-			Node node = (Node) object;
-			switch (node.getNodeType()) {
-				case Node.ATTRIBUTE_NODE : {
-					result = node.getNodeName();
-					break;
-				}
-				case Node.DOCUMENT_TYPE_NODE : {
-					result = "DOCTYPE"; //$NON-NLS-1$
-					break;
-				}
-				case Node.ELEMENT_NODE : {
-					result = node.getNodeName();
-					break;
-				}
-				case Node.PROCESSING_INSTRUCTION_NODE : {
-					result = ((ProcessingInstruction) node).getTarget();
-					break;
-				}
-			}
-		}
-		return result != null ? result : ""; //$NON-NLS-1$
-	}
-
-	//
-	// ITableLabelProvider stuff
-	//
-	public String getColumnText(Object object, int column) {
-		viewerNotifyingAdapterFactory.doAdapt(object);
-		String result = null;
-		if (column == 0) {
-			result = getText(object);
-		} else if (column == 1 && object instanceof Node) {
-			result = treeContentHelper.getNodeValue((Node) object);
-		}
-		return result != null ? result : ""; //$NON-NLS-1$
-	}
-
-	public Image getColumnImage(Object object, int columnIndex) {
-		viewerNotifyingAdapterFactory.doAdapt(object);
-		return (columnIndex == 0) ? getImage(object) : null;
-	}
-
-	public boolean isLabelProperty(Object object, String property) {
-		return false;
-	}
-
-	public void removeListener(ILabelProviderListener listener) {
-	}
-
-	// There is only 1 adapter associated with this factory. This single
-	// adapter gets added
-	// to the adapter lists of many nodes.
-	public class ViewerNotifyingAdapterFactory extends AbstractAdapterFactory {
-		protected ViewerNotifyingAdapter viewerNotifyingAdapter = new ViewerNotifyingAdapter();
-
-		protected INodeAdapter createAdapter(INodeNotifier target) {
-			return viewerNotifyingAdapter;
-		}
-
-		protected ViewerNotifyingAdapter doAdapt(Object object) {
-			ViewerNotifyingAdapter result = null;
-			if (object instanceof INodeNotifier) {
-				result = (ViewerNotifyingAdapter) adapt((INodeNotifier) object);
-			}
-			return result;
-		}
-	}
-
-	public class ViewerNotifyingAdapter implements INodeAdapter {
-		public boolean isAdapterForType(Object type) {
-			return type.equals(viewerNotifyingAdapterFactory);
-		}
-
-		public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-			switch (eventType) {
-				//case INodeNotifier.ADD: // ignore
-				//case INodeNotifier.REMOVE: // ignore
-				case INodeNotifier.CHANGE :
-				case INodeNotifier.STRUCTURE_CHANGED :
-				case INodeNotifier.CONTENT_CHANGED : {
-					Node node = (Node) notifier;
-					if (node.getNodeType() == Node.ELEMENT_NODE || node.getNodeType() == Node.DOCUMENT_NODE) {
-						for (Iterator i = viewerList.iterator(); i.hasNext();) {
-							Viewer viewer = (Viewer) i.next();
-
-							if (viewer instanceof StructuredViewer) {
-								((StructuredViewer) viewer).refresh(node);
-							} else {
-								// todo... consider doing a time delayed
-								// refresh here!!
-								viewer.refresh();
-							}
-						}
-					}
-					break;
-				}
-			}
-		}
-	}
-
-	// the following methods handle filtering aspects of the viewer
-	//
-	//
-	public boolean isIgnorableText(Node node) {
-		boolean result = false;
-		try {
-			if (node.getNodeType() == Node.TEXT_NODE) {
-				String data = ((Text) node).getData();
-				result = (data == null || data.trim().length() == 0);
-			}
-		} catch (Exception e) {
-			Logger.logException(e);
-		}
-		return result;
-	}
-
-	public static Text getHiddenChildTextNode(Node node) {
-		return null;
-	}
-
-	// CMDocumentManagerListener
-	//
-	public void cacheCleared(CMDocumentCache cache) {
-		doDelayedRefreshForViewers();
-	}
-
-	public void cacheUpdated(CMDocumentCache cache, final String uri, int oldStatus, int newStatus, CMDocument cmDocument) {
-		if (newStatus == CMDocumentCache.STATUS_LOADED || newStatus == CMDocumentCache.STATUS_ERROR) {
-			doDelayedRefreshForViewers();
-		}
-	}
-
-	public void propertyChanged(CMDocumentManager cmDocumentManager, String propertyName) {
-		if (cmDocumentManager.getPropertyEnabled(CMDocumentManager.PROPERTY_AUTO_LOAD)) {
-			doDelayedRefreshForViewers();
-		}
-	}
-
-	protected void doDelayedRefreshForViewers() {
-		List list = new Vector();
-		list.addAll(viewerList);
-
-		for (Iterator i = list.iterator(); i.hasNext();) {
-			final Viewer viewer = (Viewer) i.next();
-			Control control = viewer.getControl();
-			Runnable runnable = new Runnable() {
-				public void run() {
-					viewer.refresh();
-				}
-			};
-			// we need to ensure that this is run via 'asyncExec' since these
-			// notifications can come from a non-ui thread
-			control.getDisplay().asyncExec(runnable);
-		}
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeHelpContextIds.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeHelpContextIds.java
deleted file mode 100644
index 7f2730e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeHelpContextIds.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-
-
-/**
- * Help context ids for the TableTree view.
- * <p>
- * This interface contains constants only; it is not intended to be
- * implemented or extended.
- * </p>
- *  
- */
-public interface XMLTableTreeHelpContextIds {
-
-	public static final String PREFIX = "com.ibm.etools.sed.tabletree."; //$NON-NLS-1$
-
-	// XML Design View
-	public static final String XML_DESIGN_VIEW_HELPID = PREFIX + "xmlm3000"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreePropertyDescriptorFactory.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreePropertyDescriptorFactory.java
deleted file mode 100644
index 38a202d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreePropertyDescriptorFactory.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import java.util.List;
-
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.ui.internal.properties.EnumeratedStringPropertyDescriptor;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-
-public class XMLTableTreePropertyDescriptorFactory extends DOMPropertyDescriptorFactory {
-
-	protected TreeContentHelper treeContentHelper = new TreeContentHelper();
-
-	public XMLTableTreePropertyDescriptorFactory(ModelQuery modelQuery) {
-		super(modelQuery);
-	}
-
-	protected IPropertyDescriptor createPropertyDescriptorHelper(String name, Element element, CMNode cmNode) {
-		IPropertyDescriptor result = null;
-
-		String[] valuesArray = getModelQuery().getPossibleDataTypeValues(element, cmNode);
-		if (valuesArray != null && valuesArray.length > 0) {
-			result = new EnumeratedStringPropertyDescriptor(name, name, valuesArray);
-		}
-
-		return result;
-	}
-
-	public IPropertyDescriptor createTextPropertyDescriptor(Text text) {
-		IPropertyDescriptor result = null;
-		Node parentNode = text.getParentNode();
-		if (parentNode != null && parentNode.getNodeType() == Node.ELEMENT_NODE) {
-			Element parentElement = (Element) parentNode;
-			CMElementDeclaration ed = getModelQuery().getCMElementDeclaration(parentElement);
-			if (ed != null) {
-				result = createPropertyDescriptorHelper(HACK, parentElement, ed);
-			}
-		}
-
-		if (result == null) {
-			result = new TextPropertyDescriptor(HACK, HACK);
-		}
-
-		return result;
-	}
-
-	public IPropertyDescriptor createAttributePropertyDescriptor(Attr attr) {
-		IPropertyDescriptor result = null;
-
-		String attributeName = attr.getName();
-
-		CMAttributeDeclaration ad = getModelQuery().getCMAttributeDeclaration(attr);
-		if (ad != null) {
-			result = createPropertyDescriptorHelper(attributeName, attr.getOwnerElement(), ad);
-		}
-
-		if (result == null) {
-			result = new TextPropertyDescriptor(attributeName, attributeName);
-		}
-
-		return result;
-	}
-
-	public IPropertyDescriptor createElementPropertyDescriptor(Element element) {
-		IPropertyDescriptor result = null;
-		List list = treeContentHelper.getElementTextContent(element);
-		if (list != null) {
-			Text text = treeContentHelper.getEffectiveTextNodeForCombinedNodeList(list);
-			if (text != null) {
-				result = createTextPropertyDescriptor(text);
-			}
-		}
-
-		if (result == null) {
-			result = new TextPropertyDescriptor(HACK, HACK);
-		}
-		return result;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeViewer.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeViewer.java
deleted file mode 100644
index 1781a2e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeViewer.java
+++ /dev/null
@@ -1,337 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import java.util.List;
-
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.wst.sse.core.IModelStateListener;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.ViewerSelectionManager;
-import org.eclipse.wst.sse.ui.view.events.INodeSelectionListener;
-import org.eclipse.wst.sse.ui.view.events.NodeSelectionChangedEvent;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.internal.ui.IDesignViewer;
-import org.eclipse.wst.xml.internal.ui.XMLEditorResourceHandler;
-import org.eclipse.wst.xml.ui.actions.NodeAction;
-import org.eclipse.wst.xml.ui.dnd.XMLDragAndDropManager;
-import org.eclipse.wst.xml.ui.views.contentoutline.XMLNodeActionManager;
-import org.w3c.dom.Document;
-
-public class XMLTableTreeViewer extends TreeViewer implements IDesignViewer {
-
-	/**
-	 * This class is used to improve source editing performance by coalescing
-	 * multiple notifications for an element change into a single refresh
-	 */
-	class DelayedRefreshTimer implements Runnable {
-		private final int delta = 2000;
-		protected Object objectPendingRefresh;
-		protected ISelection pendingSelection;
-		protected Object prevObject;
-		protected XMLTableTreeViewer viewer;
-
-		public DelayedRefreshTimer(XMLTableTreeViewer treeViewer) {
-			this.viewer = treeViewer;
-		}
-
-		public boolean isRefreshPending() {
-			return objectPendingRefresh != null;
-		}
-
-		public void refresh(Object object) {
-			if (prevObject == object) {
-				objectPendingRefresh = object;
-				getDisplay().timerExec(delta, this);
-			} else {
-				if (objectPendingRefresh != null) {
-					viewer.doRefresh(objectPendingRefresh, false);
-					objectPendingRefresh = null;
-				}
-				viewer.doRefresh(object, false);
-			}
-			prevObject = object;
-		}
-
-		private Display getDisplay() {
-
-			return PlatformUI.getWorkbench().getDisplay();
-		}
-
-		public void run() {
-			// defect 239677 ensure that the viewer's control is not disposed
-			//
-			if (objectPendingRefresh != null && !viewer.getTree().isDisposed()) {
-				viewer.doRefresh(objectPendingRefresh, true);
-				if (pendingSelection != null) {
-					// see fireSelectionChanged comment about jumping cursor
-					// problem
-					//
-					viewer.setSelection(pendingSelection, true);
-					pendingSelection = null;
-				}
-				objectPendingRefresh = null;
-				prevObject = null;
-			}
-		}
-
-		public void setSelection(ISelection selection) {
-			pendingSelection = selection;
-		}
-	}
-
-	class DelayingNodeSelectionListener implements INodeSelectionListener {
-		public void nodeSelectionChanged(NodeSelectionChangedEvent event) {
-			//			if (isNodeSelectionListenerEnabled &&
-			// !event.getSource().equals(this)) {
-			if (!event.getSource().equals(XMLTableTreeViewer.this)) {
-				List selectedNodes = event.getSelectedNodes();
-				ISelection selection = new StructuredSelection(selectedNodes);
-
-				// for performance purposes avoid large multi-selections
-				// 
-				if (selectedNodes.size() < 100) {
-					if (timer.isRefreshPending()) {
-						timer.setSelection(selection);
-					} else {
-						setSelection(selection, true);
-					}
-				}
-			}
-		}
-	}
-
-	class InternalModelStateListener implements IModelStateListener {
-
-		public void modelAboutToBeChanged(IStructuredModel model) {
-			ignoreRefresh = true;
-		}
-
-		public void modelChanged(IStructuredModel model) {
-			ignoreRefresh = false;
-			refresh();
-		}
-
-		public void modelDirtyStateChanged(IStructuredModel model, boolean isDirty) {
-		}
-
-		public void modelResourceDeleted(IStructuredModel model) {
-		}
-
-		public void modelResourceMoved(IStructuredModel originalmodel, IStructuredModel movedmodel) {
-		}
-
-		public void modelAboutToBeReinitialized(IStructuredModel structuredModel) {
-		}
-
-		public void modelReinitialized(IStructuredModel structuredModel) {
-		}
-	}
-
-	class NodeActionMenuListener implements IMenuListener {
-		public void menuAboutToShow(IMenuManager menuManager) {
-			// used to disable NodeSelection listening while running
-			// NodeAction
-			XMLNodeActionManager nodeActionManager = new XMLNodeActionManager(fModel, XMLTableTreeViewer.this) {
-				public void beginNodeAction(NodeAction action) {
-					super.beginNodeAction(action);
-				}
-
-				public void endNodeAction(NodeAction action) {
-					super.endNodeAction(action);
-				}
-			};
-			nodeActionManager.fillContextMenu(menuManager, getSelection());
-		}
-	}
-
-	protected CellEditor cellEditor;
-
-	int count = 0;
-
-	protected IModelStateListener fInternalModelStateListener = new InternalModelStateListener();
-	protected IStructuredModel fModel = null;
-	protected INodeSelectionListener fNodeSelectionListener;
-
-	protected ViewerSelectionManager fViewerSelectionManager;
-
-	protected boolean ignoreRefresh;
-
-	protected DelayedRefreshTimer timer;
-	protected XMLTreeExtension treeExtension;
-
-	public XMLTableTreeViewer(Composite parent) {
-		super(parent, SWT.FULL_SELECTION | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
-
-		// set up providers
-		this.treeExtension = new XMLTreeExtension(getTree());
-
-		XMLTableTreeContentProvider provider = new XMLTableTreeContentProvider();
-		provider.addViewer(this);
-		setContentProvider(provider);
-		setLabelProvider(provider);
-
-		createContextMenu();
-
-		XMLDragAndDropManager.addDragAndDropSupport(this);
-		timer = new DelayedRefreshTimer(this);
-	}
-
-	/**
-	 * This creates a context menu for the viewer and adds a listener as well
-	 * registering the menu for extension.
-	 */
-	protected void createContextMenu() {
-		MenuManager contextMenu = new MenuManager("#PopUp"); //$NON-NLS-1$
-		contextMenu.add(new Separator("additions")); //$NON-NLS-1$
-		contextMenu.setRemoveAllWhenShown(true);
-		contextMenu.addMenuListener(new NodeActionMenuListener());
-		Menu menu = contextMenu.createContextMenu(getControl());
-		getControl().setMenu(menu);
-	}
-
-	protected void doRefresh(Object o, boolean fromDelayed) {
-		treeExtension.resetCachedData();
-		super.refresh(o);
-	}
-
-	protected void fireSelectionChanged(SelectionChangedEvent event) {
-		if (!getTree().isDisposed() && !getTree().isFocusControl()) {
-			// defect 246094
-			// Various jumping cursor problems are caused when a selection
-			// 'delayed' selection occurs.
-			// These delayed selections are caused two ways:
-			//
-			//  - when DelayedRefreshTimer calls doRefresh() ... the
-			// 'preserveSelection' causes selection to occur
-			//  - when DelayedRefreshTimer performs a 'pending' selection
-			// 
-			// Since we only want to update the selectionManager on an explict
-			// user action
-			// (and not some selection that is merely a resonse to the
-			// selection manager)
-			// we ensure that the tree has focus control before firing events
-			// to the selectionManager.
-			// 
-			removeSelectionChangedListener(fViewerSelectionManager);
-			super.fireSelectionChanged(event);
-			addSelectionChangedListener(fViewerSelectionManager);
-		} else {
-			super.fireSelectionChanged(event);
-		}
-	}
-
-
-	public INodeSelectionListener getNodeSelectionListener() {
-		if (fNodeSelectionListener == null)
-			fNodeSelectionListener = new DelayingNodeSelectionListener();
-		return fNodeSelectionListener;
-	}
-
-	public String getTitle() {
-		return XMLEditorResourceHandler.getResourceString("%XMLTableTreeViewer.0"); //$NON-NLS-1$
-	}
-
-	protected void handleDispose(DisposeEvent event) {
-		super.handleDispose(event);
-		treeExtension.dispose();
-		setModel(null);
-		setViewerSelectionManager(null);
-
-		//		if (fViewerSelectionManager != null) {
-		//			fViewerSelectionManager.removeNodeSelectionListener(getNodeSelectionListener());
-		//		}
-		//
-		//		fOverlayIconManager.setResource(null);
-		//		super.handleDispose(event);
-		//
-		//		if (fModel != null)
-		//			fModel.removeModelStateListener(fInternalModelStateListener);
-	}
-
-	public void refresh() {
-		if (!ignoreRefresh && !getControl().isDisposed()) {
-			treeExtension.resetCachedData();
-			super.refresh();
-
-			//			if (B2BHacks.IS_UNIX) {
-			// this is required to fix defect 193792
-			// this fixes the problem where the 'paintHandler'drawn portions
-			// of tree weren't repainted properly
-			//
-			getTree().redraw(0, 0, getTree().getBounds().width, getTree().getBounds().height, false);
-			getTree().update();
-			//			}
-		}
-	}
-
-	public void refresh(Object o) {
-		if (!ignoreRefresh && !getControl().isDisposed() && timer != null) {
-			if (getTree().isVisible()) {
-				doRefresh(o, false);
-			} else {
-				timer.refresh(o);
-			}
-		}
-	}
-
-	public void setModel(IStructuredModel model) {
-		// remove
-		if (fModel != null) {
-			fModel.removeModelStateListener(fInternalModelStateListener);
-		}
-
-		fModel = model;
-		Document domDoc = null;
-
-		if (fModel != null && fModel instanceof XMLModel) {
-			model.addModelStateListener(fInternalModelStateListener);
-			ModelQuery mq = ModelQueryUtil.getModelQuery(model);
-			treeExtension.setModelQuery(mq);
-			domDoc = ((XMLModel) fModel).getDocument();
-			setInput(domDoc);
-		}
-	}
-
-	// the following methods implement the IDesignViewer interface
-	// - getControl() is implemented via AdvancedTableTreeViewer
-	//
-	public void setViewerSelectionManager(ViewerSelectionManager viewerSelectionManager) {
-		// disconnect from old one
-		if (fViewerSelectionManager != null) {
-			fViewerSelectionManager.removeNodeSelectionListener(getNodeSelectionListener());
-			removeSelectionChangedListener(fViewerSelectionManager);
-		}
-
-		fViewerSelectionManager = viewerSelectionManager;
-
-		// connect to new one
-		if (fViewerSelectionManager != null) {
-			fViewerSelectionManager.addNodeSelectionListener(getNodeSelectionListener());
-			addSelectionChangedListener(fViewerSelectionManager);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTreeExtension.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTreeExtension.java
deleted file mode 100644
index 7edf576..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTreeExtension.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 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.xml.ui.internal.tabletree;
-
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ICellModifier;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Item;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDescriptionBuilder;
-import org.eclipse.wst.xml.internal.ui.XMLEditorResourceHandler;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class XMLTreeExtension extends TreeExtension {
-
-	public final static String STRUCTURE_PROPERTY = XMLEditorResourceHandler.getResourceString("%XMLTreeExtension.0"); //$NON-NLS-1$
-	public final static String VALUE_PROPERTY = XMLEditorResourceHandler.getResourceString("%XMLTreeExtension.1"); //$NON-NLS-1$
-
-	protected Composite control;
-	protected MyCellModifier modifier;
-	protected XMLTableTreePropertyDescriptorFactory propertyDescriptorFactory;
-	protected CMDescriptionBuilder decriptionBuilder = new CMDescriptionBuilder();
-	protected TreeContentHelper treeContentHelper = new TreeContentHelper();
-
-	protected Color f1, f2, b1, b2;
-	protected boolean cachedDataIsValid = true;
-	private ModelQuery fModelQuery;
-
-	public XMLTreeExtension(Tree tree) {
-		super(tree);
-		control = tree;
-		modifier = new MyCellModifier();
-		setCellModifier(modifier);
-		String[] properties = {STRUCTURE_PROPERTY, VALUE_PROPERTY};
-		setColumnProperties(properties);
-
-		f1 = tree.getDisplay().getSystemColor(SWT.COLOR_BLACK);
-		Color background = tree.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND);
-
-		int r = Math.abs(background.getRed() - 125);
-		int g = Math.abs(background.getGreen() - 85);
-		int b = Math.abs(background.getBlue() - 105);
-
-		f2 = new Color(tree.getDisplay(), r, g, b);
-		b1 = tree.getDisplay().getSystemColor(SWT.COLOR_LIST_SELECTION);
-		b2 = background;
-	}
-
-	public void dispose() {
-		super.dispose();
-		f2.dispose();
-	}
-
-	public void resetCachedData() {
-		cachedDataIsValid = false;
-	}
-
-	public void paintItems(GC gc, TreeItem[] items, Rectangle treeBounds) {
-		super.paintItems(gc, items, treeBounds);
-		cachedDataIsValid = true;
-	}
-
-	protected Object[] computeTreeExtensionData(Object object) {
-		Color color = f1;
-		String string = ""; //$NON-NLS-1$
-		if (string.length() == 0) {
-			string = (String) modifier.getValue(object, VALUE_PROPERTY);
-			color = f1;
-		}
-		if (string.length() == 0 && object instanceof Element) {
-			string = getElementValueHelper((Element) object);
-			color = f2;
-		}
-		Object[] data = new Object[2];
-		data[0] = string;
-		data[1] = color;
-		return data;
-	}
-
-	protected void paintItem(GC gc, TreeItem item, Rectangle bounds) {
-		super.paintItem(gc, item, bounds);
-		Object[] data = computeTreeExtensionData(item.getData());
-		if (data != null && data.length == 2) {
-			gc.setClipping(columnPosition, bounds.y + 1, controlWidth, bounds.height);
-			gc.setForeground((Color) data[1]);
-			gc.drawString((String) data[0], columnPosition + 5, bounds.y + 1);
-			gc.setClipping((Rectangle) null);
-		}
-	}
-
-	protected void addEmptyTreeMessage(GC gc) {
-		// here we print a message when the document is empty just to give the
-		// user a visual cue
-		// so that they know how to proceed to edit the blank view
-		gc.setForeground(tree.getDisplay().getSystemColor(SWT.COLOR_BLACK));
-		gc.setBackground(tree.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND));
-		gc.drawString(XMLEditorResourceHandler.getResourceString("%XMLTreeExtension.3"), 10, 10); //$NON-NLS-1$
-		gc.drawString(XMLEditorResourceHandler.getResourceString("%XMLTreeExtension.4"), 10, 10 + gc.getFontMetrics().getHeight()); //$NON-NLS-1$
-	}
-
-	public String getElementValueHelper(Element element) {
-		String result = null;
-
-		if (result == null && getModelQuery() != null) {
-			CMElementDeclaration ed = getModelQuery().getCMElementDeclaration(element);
-			if (ed != null && !Boolean.TRUE.equals(ed.getProperty("isInferred"))) { //$NON-NLS-1$
-				result = decriptionBuilder.buildDescription(ed);
-			}
-		}
-		return result != null ? result : ""; //$NON-NLS-1$
-	}
-
-	/**
-	 *  
-	 */
-	public class MyCellModifier implements ICellModifier, TreeExtension.ICellEditorProvider {
-		public boolean canModify(Object element, String property) {
-			boolean result = false;
-			if (element instanceof Node) {
-				Node node = (Node) element;
-				result = property == VALUE_PROPERTY && treeContentHelper.isEditable(node);
-			}
-			return result;
-		}
-
-		public Object getValue(Object object, String property) {
-			String result = null;
-			if (object instanceof Node) {
-				result = treeContentHelper.getNodeValue((Node) object);
-			}
-			return (result != null) ? result : ""; //$NON-NLS-1$
-		}
-
-		public void modify(Object element, String property, Object value) {
-			//enableNodeSelectionListener(false);
-			Item item = (Item) element;
-			String oldValue = treeContentHelper.getNodeValue((Node) item.getData());
-			String newValue = value.toString();
-			if (newValue != null && !newValue.equals(oldValue)) {
-				treeContentHelper.setNodeValue((Node) item.getData(), value.toString());
-			}
-			//enableNodeSelectionListener(true);
-		}
-
-		public CellEditor getCellEditor(Object o, int col) {
-			IPropertyDescriptor pd = propertyDescriptorFactory.createPropertyDescriptor(o);
-			return pd != null ? pd.createPropertyEditor(control) : null;
-		}
-	}
-
-
-	public ModelQuery getModelQuery() {
-		return fModelQuery;
-	}
-
-	/**
-	 * @param query
-	 */
-	public void setModelQuery(ModelQuery query) {
-		fModelQuery = query;
-		propertyDescriptorFactory = new XMLTableTreePropertyDescriptorFactory(query);
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NamespaceInfoContentBuilder.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NamespaceInfoContentBuilder.java
deleted file mode 100644
index a95a322..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NamespaceInfoContentBuilder.java
+++ /dev/null
@@ -1,57 +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.xml.ui.internal.wizards;
-
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAnyElement;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.ContentBuilder;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-
-public class NamespaceInfoContentBuilder extends ContentBuilder
-  {      
-    protected int count = 1;   
-    public List list = new Vector();
-    protected Hashtable table = new Hashtable();   
-
-    public NamespaceInfoContentBuilder()
-    {
-      super();
-    }
-   
-    public void visitCMElementDeclaration(CMElementDeclaration ed)
-    {                      
-      if (ed.getProperty("http://org.eclipse.wst/cm/properties/definitionInfo") != null)
-      {
-        super.visitCMElementDeclaration(ed);
-      }
-    }
-
-    protected void createAnyElementNode(CMAnyElement anyElement)
-    {
-      String uri = anyElement.getNamespaceURI();
-      if (uri != null && !uri.startsWith("##"))
-      {
-        if (table.get(uri) == null)
-        {
-          NamespaceInfo info = new NamespaceInfo();
-          info.uri = uri;     
-          info.prefix = "p" + count++;
-          table.put(uri, info); 
-          list.add(info);
-        }
-      }
-    }
-  }                         
-
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewModelWizard.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewModelWizard.java
deleted file mode 100644
index e3a929b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewModelWizard.java
+++ /dev/null
@@ -1,326 +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.xml.ui.internal.wizards;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-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.Path;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IEditorRegistry;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
-
-public class NewModelWizard extends Wizard implements INewWizard
-{
-  
-  protected IStructuredSelection selection;
-  protected IWorkbench workbench;
-  protected String currentDirectory;
-
-  public NewModelWizard()
-  {
-  }
-
-  public void init(IWorkbench workbench, IStructuredSelection selection)
-  {
-    this.workbench = workbench;
-    this.selection = selection;
-  }
-
-  public boolean performFinish()
-  {
-    boolean result = true;
-    WizardPage currentPage = (WizardPage)getContainer().getCurrentPage();
-    if (currentPage != null)
-    {
-      result = currentPage.isPageComplete();
-    }
-    return result;
-  }
-
-  /**
-   * showFileDialog
-   */
-  public FileDialog showFileDialog(Shell shell, String defaultDirectory, String defaultFile, String [] filterExtensions)
-  {
-    FileDialog fileDialog = new FileDialog(shell, SWT.OPEN);
-
-    // Get the last visit directory if we haven't defined a particular one here.
-    if (defaultDirectory == null || defaultDirectory.length() == 0)
-    {
-      //defaultDirectory = Locate.instance(this).getLastSelectedDirectory(getResourcePath());
-    }
-
-    if (defaultDirectory != null && defaultDirectory.length() != 0)
-    {
-      fileDialog.setFilterPath(defaultDirectory);
-    }
-
-    fileDialog.setFileName(defaultFile);
-    fileDialog.setFilterExtensions(filterExtensions);
-
-    fileDialog.open();
-
-    return fileDialog;
-  }
-
-
-  public void setCurrentDirectory(String currentDirectory)
-  {
-    this.currentDirectory = currentDirectory;
-  }
-
-
-  public void createWorkbenchResource(IContainer container, String fileName)
-  {
-    IPath path = container.getFullPath();
-    path = path.append(fileName);
-    IFile file = container.getWorkspace().getRoot().getFile(path);
-    if (!file.exists())
-    {
-      try
-      {
-        file.create(null, true, null);
-      }
-      catch (CoreException e)
-      {
-        //XMLBuilderPlugin.getPlugin().getMsgLogger().write("Encountered exception creating file: " + e.getMessage());
-      }
-    }
-  }
-
-  /**
-   * StartPage
-   */
-  public class StartPage extends WizardPage implements Listener
-  {
-    protected int selectedButton;
-    protected String[] radioButtonLabel;
-    protected Button[] radioButton;
-
-    public StartPage(String pageName, String[] radioButtonLabel)
-    {
-      super(pageName);
-      this.radioButtonLabel = radioButtonLabel;
-      radioButton = new Button[radioButtonLabel.length];
-    }
-
-    public Button getRadioButtonAtIndex(int i)
-    {
-      Button result = null;
-      if (i >= 0 && i < radioButton.length)
-      {
-        result = radioButton[i];
-      }
-      return result;
-    }
-
-    public int getSelectedRadioButtonIndex()
-    {
-      int result = -1;
-      for (int i = 0; i < radioButton.length; i++)
-      {
-        if (radioButton[i].getSelection())
-        {
-          result = i;
-        }
-      }
-      return result;
-    }
-
-    public void createControl(Composite parent)
-    {
-      Composite base = new Composite(parent, SWT.NONE);
-      //TODO... setHelp
-      //WorkbenchHelp.setHelp(base, XMLBuilderContextIds.XMLC_CREATE_PAGE);
-      base.setLayout(new GridLayout());
-
-      //radio buttons' container	
-      Composite radioButtonsGroup = new Composite(base, SWT.NONE);
-      GridLayout layout = new GridLayout();
-      layout.numColumns = 1;
-      layout.makeColumnsEqualWidth = true;
-      layout.marginWidth = 0;                
-
-      radioButtonsGroup.setLayout(layout);
-      GridData gd = new GridData(GridData.FILL_BOTH);
-      gd.heightHint = 300;
-      gd.widthHint = 400;
-      radioButtonsGroup.setLayoutData(gd);
-      //TODO... set help
-      //WorkbenchHelp.setHelp(radioButtonsGroup, XMLBuilderContextIds.XMLC_RADIO_GROUP);
-
-      for (int i = 0; i < radioButtonLabel.length; i++)
-      {
-        radioButton[i] = new Button(radioButtonsGroup, SWT.RADIO);
-        radioButton[i].setText(radioButtonLabel[i]);
-        radioButton[i].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        //TODO... set help
-        //WorkbenchHelp.setHelp(radioButton[i], new ControlContextComputer(radioButton[i], XMLBuilderContextIds.XMLC_RADIO_BUTTON));
-        //radioButton[i].addListener(SWT.Modify, this);
-      }
-      setControl(base);
-      setPageComplete(isPageComplete());
-    }
-
-    public void handleEvent(Event event)
-    {
-      if (event.type == SWT.Modify)
-      {
-        setPageComplete(isPageComplete());
-      }
-    }
-  }
-
-
-  /**
-   *  NewFilePage
-   */
-  public class NewFilePage extends WizardNewFileCreationPage
-  {
-    public String defaultName = "NewFile";
-    public String defaultFileExtension = ".txt";
-    public String[] filterExtensions = { "*.txt"};
-
-    public NewFilePage(IStructuredSelection selection)
-    {
-      super("", selection);
-    }
-
-    protected String computeDefaultFileName()
-    {
-      int count = 0;
-      String fileName = defaultName + defaultFileExtension;
-      IPath containerFullPath = getContainerFullPath();
-      if (containerFullPath != null)
-      {
-        while (true)
-        {
-          IPath path = containerFullPath.append(fileName);
-          if (ResourcesPlugin.getWorkspace().getRoot().exists(path))
-          {
-            count++;
-            fileName = defaultName + count + defaultFileExtension;
-          }
-          else
-          {
-            break;
-          }
-        }
-      }
-      return fileName;
-    }
-
-    // returns true if file of specified name exists in any case for selected container
-    protected String existsFileAnyCase(String fileName)
-    {
-      if ( (getContainerFullPath() != null) && (getContainerFullPath().isEmpty() == false)
-            && (fileName.compareTo("") != 0))
-      {
-        //look through all resources at the specified container - compare in upper case
-        IResource parent = ResourcesPlugin.getWorkspace().getRoot().findMember(getContainerFullPath());
-        if (parent instanceof IContainer)
-        {
-          IContainer container = (IContainer) parent;
-          try
-          {
-            IResource[] members = container.members();
-            String enteredFileUpper = fileName.toUpperCase();
-            for (int i=0; i<members.length; i++)
-            {
-              String resourceUpperName = members[i].getName().toUpperCase();
-              if (resourceUpperName.equals(enteredFileUpper))
-              {  
-                return members[i].getName();    
-              }
-            }
-          }
-          catch (CoreException e)
-          {
-          }
-        }
-      }
-      return null;
-    }
-
-
-    protected boolean validatePage()
-    {     
-      String fullFileName = getFileName();
-      String fileExtension = (new Path(fullFileName)).getFileExtension();
-      if (fileExtension != null) 
-      {                    
-        IEditorRegistry editorRegistry = PlatformUI.getWorkbench().getEditorRegistry();
-        IEditorDescriptor defaultEditorDescriptor = editorRegistry.getDefaultEditor();   
-        IEditorDescriptor[] descriptors =  editorRegistry.getEditors(getFileName());        
-        if (descriptors.length == 0)
-        {                                                                         
-          setErrorMessage(XMLWizard.getString("_ERROR_BAD_FILENAME_EXTENSION"));                                                    
-          return false;
-        }              
-      }
-      else
-      {
-        // no fileExtension, let's check for this file with an .xml extension
-        fullFileName += ".xml";
-        if ( (getContainerFullPath() != null) && (getContainerFullPath().isEmpty() == false)
-           && (getFileName().compareTo("") != 0))
-        {
-          Path fullPath = new Path(getContainerFullPath().toString() + '/' + fullFileName);
-          IResource resource = ResourcesPlugin.getWorkspace().getRoot().findMember(fullPath);
-          if (resource != null) 
-          {
-            setErrorMessage(XMLWizard.getString("_ERROR_FILE_ALREADY_EXISTS"));
-            return false;    
-          }
-        }        
-      }
-
-      // check for file should be case insensitive
-      String sameName = existsFileAnyCase(fullFileName);
-      if (sameName != null) 
-      {
-         String qualifiedFileName = getContainerFullPath().toString() + '/' + fullFileName;
-         setErrorMessage(XMLWizard.getString("_ERROR_FILE_ALREADY_EXISTS") + " " +  sameName);
-         return false;
-      }
-            
-      return super.validatePage();
-    }
-
-    public void createControl(Composite parent)
-    {
-      // inherit default container and name specification widgets
-      super.createControl(parent);
-      this.setFileName(computeDefaultFileName());
-      setPageComplete(validatePage());
-    }
-  }
-}
-
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLGenerator.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLGenerator.java
deleted file mode 100644
index ea10c11..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLGenerator.java
+++ /dev/null
@@ -1,423 +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.xml.ui.internal.wizards;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.ContentBuilder;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMContentBuilderImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMWriter;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.uriresolver.XMLCatalog;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogEntry;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogPlugin;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.eclipse.wst.xml.uriresolver.util.IdResolverImpl;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-public class NewXMLGenerator
-{                                  
-
-  protected String grammarURI;  
-  protected CMDocument cmDocument;  
-  protected int buildPolicy;
-  protected String rootElementName;
-
-  protected XMLCatalogEntry xmlCatalogEntry;
-  
-  // info for dtd   
-  protected String publicId;
-  protected String systemId;  
-  protected String defaultSystemId;  
-                           
-  // info for xsd
-  public List namespaceInfoList;
-
-  public NewXMLGenerator() 
-  {
-  }
-
-  public NewXMLGenerator(String grammarURI, CMDocument cmDocument) 
-  {
-    this.grammarURI = grammarURI;
-    this.cmDocument = cmDocument;
-  }
-
-
-  public static CMDocument createCMDocument(String uri, String[] errorInfo)
-  {                          
-    String title = null;
-    String message = null;   
-    List errorList = new Vector();
-    CMDocument cmDocument = null;
-
-    if (URIHelper.isReadableURI(uri,true))
-    {
-      uri = URIHelper.normalize(uri, null, null); 
-      cmDocument = ContentModelManager.getInstance().createCMDocument(uri, null);
-
-      if (uri.endsWith(".dtd"))
-      {
-        if (errorList.size() > 0)
-        {                 
-          title = XMLWizard.getString("_UI_INVALID_GRAMMAR_ERROR");
-          message = XMLWizard.getString("_UI_LABEL_ERROR_DTD_INVALID_INFO");
-        }
-      }
-      else // ".xsd"
-      {
-        // To be consistent with the schema editor validation
-        XMLSchemaValidationChecker validator = new XMLSchemaValidationChecker();
-        if (!validator.isValid(uri))
-        {
-          title = XMLWizard.getString("_UI_INVALID_GRAMMAR_ERROR");
-          message = XMLWizard.getString("_UI_LABEL_ERROR_SCHEMA_INVALID_INFO");
-        }
-        else if (cmDocument != null)
-        {             
-          int globalElementCount = cmDocument.getElements().getLength();
-          if (globalElementCount == 0)
-          {      
-            title = XMLWizard.getString("_UI_WARNING_TITLE_NO_ROOT_ELEMENTS");
-            message=XMLWizard.getString("_UI_WARNING_MSG_NO_ROOT_ELEMENTS");
-          }
-        }
-      }
-    }
-    else
-    {
-      title = XMLWizard.getString("_UI_WARNING_TITLE_NO_ROOT_ELEMENTS");
-      message = 
-        XMLWizard.getString("_UI_WARNING_URI_NOT_FOUND_COLON")
-        + " "
-        + uri;
-    }
-    errorInfo[0] = title;                                     
-    errorInfo[1] = message;
-
-    return cmDocument;
-  }
-
-
-  public void createEmptyXMLDocument(IFile newFile) throws Exception
-  {                                                                                       
-    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
-    Preferences preference = XMLCorePlugin.getDefault().getPluginPreferences();
-	String charSet = preference.getString(CommonModelPreferenceNames.OUTPUT_CODESET);	
-	
-    PrintWriter writer = new PrintWriter(new OutputStreamWriter(outputStream, charSet));
-    writer.println("<?xml version=\"1.0\" encoding=\"" + charSet + "\"?>");
-    writer.flush();
-    outputStream.close(); 
-
-    ByteArrayInputStream inputStream = new ByteArrayInputStream(outputStream.toByteArray()); 
-    newFile.setContents(inputStream, true, true, null);  
-    inputStream.close(); 
-  } 
-  
-  public void createXMLDocument(String xmlFileName) throws Exception
-  {
-    ByteArrayOutputStream outputStream = createXMLDocument(xmlFileName, false);
-
-    File file = new File(xmlFileName);
-    FileOutputStream fos = new FileOutputStream(file);
-    outputStream.writeTo(fos);
-    fos.close();
-  }
-
-
-  public void createXMLDocument(IFile newFile, String xmlFileName) throws Exception
-  {
-    ByteArrayOutputStream outputStream = createXMLDocument(xmlFileName, false);
-
-    ByteArrayInputStream inputStream = new ByteArrayInputStream(outputStream.toByteArray()); 
-    newFile.setContents(inputStream, true, true, null);  
-    inputStream.close();
-  }
-
-
-  public ByteArrayOutputStream createXMLDocument(String xmlFileName, boolean junk) throws Exception
-  {
-    CMDocument cmDocument = getCMDocument();
-    
-    Assert.isNotNull(cmDocument);
-    Assert.isNotNull(getRootElementName());
-    
-    // create the xml model
-    CMNamedNodeMap nameNodeMap = cmDocument.getElements();
-    CMElementDeclaration cmElementDeclaration = (CMElementDeclaration)nameNodeMap.getNamedItem(getRootElementName());
-    
-    Document xmlDocument = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
-    DOMContentBuilderImpl contentBuilder = new DOMContentBuilderImpl(xmlDocument);
-    
-    contentBuilder.setBuildPolicy(buildPolicy);                                                  
-    contentBuilder.setExternalCMDocumentSupport(new MyExternalCMDocumentSupport(namespaceInfoList, xmlFileName));
-    contentBuilder.uglyTempHack = true; // todo... this line should be removed when 169191 is fixed  
-    contentBuilder.createDefaultRootContent(cmDocument, cmElementDeclaration, namespaceInfoList);     
-    
-    String[] encodingInfo = (String[])cmDocument.getProperty("encodingInfo");
-    if (encodingInfo == null)
-    {
-      encodingInfo = new String[2];
-    } 
-    
-    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
-    OutputStreamWriter outputStreamWriter = encodingInfo[0] != null ? 
-                                              new OutputStreamWriter(outputStream, encodingInfo[1]) :
-                                              new OutputStreamWriter(outputStream);
-
-    DOMWriter domWriter = new DOMWriter(outputStreamWriter);
-    domWriter.print(xmlDocument, encodingInfo[1], cmDocument.getNodeName(), getNonWhitespaceString(getPublicId()), getNonWhitespaceString(getSystemId())); // todo... replace with domWriter.print(xmlDocument); when 169191 is fixed
-    outputStream.flush();
-    outputStream.close();  
-    
-    return outputStream;
-  }
-
-
-  public void createNamespaceInfoList()
-  {                     
-    List result = new Vector();
-    XMLCatalog xmlCatalog = XMLCatalogPlugin.getInstance().getDefaultXMLCatalog();
-    if (cmDocument != null)
-    {  
-      result = (List)cmDocument.getProperty("http://org.eclipse.wst/cm/properties/namespaceInfo");
-      if (result != null)
-      {
-        int size = result.size();
-        for (int i = 0; i < size; i++)
-        {
-          NamespaceInfo info = (NamespaceInfo)result.get(i);        
-          if (i == 0)
-          {                                         
-            String locationInfo = null;                            
-            if (xmlCatalogEntry != null)
-            {                              
-              if (xmlCatalogEntry.getType() == XMLCatalogEntry.PUBLIC)
-              {
-                locationInfo = xmlCatalogEntry.getWebAddress();  
-              }
-              else
-              {
-                locationInfo = xmlCatalogEntry.getKey(); 
-              }    
-            }       
-            if (locationInfo == null)
-            {
-              locationInfo = defaultSystemId; 
-            } 
-            info.locationHint = locationInfo;    
-            info.setProperty("locationHint-readOnly", "true"); 
-          }                                                                                
-          info.setProperty("uri-readOnly", "true");
-          info.setProperty("unremovable", "true");
-        }
-      }       
-                                      
-      NamespaceInfoContentBuilder builder = new NamespaceInfoContentBuilder();  
-      builder.setBuildPolicy(ContentBuilder.BUILD_ONLY_REQUIRED_CONTENT);
-      builder.visitCMNode(cmDocument);  
-      result.addAll(builder.list);    
-    }                 
-    namespaceInfoList = result;
-  }  
-
-
-  public boolean isMissingNamespaceLocation()
-  {          
-    boolean result = false;
-    for (Iterator i = namespaceInfoList.iterator(); i.hasNext(); )
-    {
-      NamespaceInfo info = (NamespaceInfo)i.next();
-      if (info.locationHint == null)
-      {
-        result = true; 
-        break;
-      }
-    }
-    return result;
-  }
-
-
-  public String[] getNamespaceInfoErrors() 
-  {
-    String[] errorList = null;
-
-    if (namespaceInfoList != null && isMissingNamespaceLocation())
-    {
-      String title = XMLWizard.getString("_UI_LABEL_NO_LOCATION_HINT");
-      String message = XMLWizard.getString("_UI_WARNING_MSG_NO_LOCATION_HINT_1") + " " +
-                       XMLWizard.getString("_UI_WARNING_MSG_NO_LOCATION_HINT_2") + "\n\n" + 
-                       XMLWizard.getString("_UI_WARNING_MSG_NO_LOCATION_HINT_3");
-
-      errorList = new String[2];
-      errorList[0] = title;
-      errorList[1] = message;
-    }
-
-      return errorList;
-  }
-  
-
-  public void setXMLCatalogEntry(XMLCatalogEntry catalogEntry) 
-  {
-    xmlCatalogEntry = catalogEntry;
-  }
-
-  public XMLCatalogEntry getXMLCatalogEntry() 
-  {
-    return xmlCatalogEntry;
-  }
-
-
-  public void setBuildPolicy(int policy) 
-  {
-    buildPolicy = policy;
-  }
-
-
-  public void setDefaultSystemId(String sysId) 
-  {
-    defaultSystemId = sysId;
-  }
-  
-  public String getDefaultSystemId() 
-  {
-    return defaultSystemId;
-  }
-
-  public void setSystemId(String sysId) 
-  {
-    systemId = sysId;
-  }
-  
-  public String getSystemId() 
-  {
-    return systemId;
-  }
-
-  public void setPublicId(String pubId) 
-  {
-    publicId = pubId;
-  }
-
-  public String getPublicId() 
-  {
-    return publicId;
-  }
-
-  public void setGrammarURI(String gramURI) 
-  {
-    grammarURI = gramURI;
-  }
-
-  public String getGrammarURI() 
-  {
-    return grammarURI;
-  }
-
-  public void setCMDocument(CMDocument cmDoc) 
-  {
-    cmDocument = cmDoc;
-  }
-
-  public CMDocument getCMDocument() 
-  {
-    return cmDocument;
-  }
-
-  public void setRootElementName(String rootName) 
-  {
-    rootElementName = rootName;
-  }
-
-  public String getRootElementName() 
-  {
-    return rootElementName;
-  }
-
-
-  protected class MyExternalCMDocumentSupport implements DOMContentBuilderImpl.ExternalCMDocumentSupport 
-  {           
-    protected List namespaceInfoList;
-    protected IdResolver idResolver;   
-
-    protected MyExternalCMDocumentSupport(List namespaceInfoList, String resourceLocation)
-    {
-      this.namespaceInfoList = namespaceInfoList;
-      idResolver = new IdResolverImpl(resourceLocation);
-    }                                            
-
-    public CMDocument getCMDocument(Element element, String namespaceURI)
-    {         
-      CMDocument result = null;
-      if (namespaceURI != null && namespaceURI.trim().length() > 0)
-      {
-        String locationHint = null; 
-        for (Iterator i = namespaceInfoList.iterator(); i.hasNext(); )
-        {
-          NamespaceInfo info = (NamespaceInfo)i.next();
-          if (namespaceURI.equals(info.uri))
-          {
-            locationHint = info.locationHint;
-            break;
-          }
-        }   
-        if (locationHint != null)
-        {                     
-          grammarURI = idResolver.resolveId(locationHint, locationHint);
-          result = ContentModelManager.getInstance().createCMDocument(getGrammarURI(), null);
-        }
-      }   
-      else
-      {
-        result = cmDocument;
-      }                                                                      
-      return result;
-    }       
-  }
-
-	public static String getNonWhitespaceString(String string)
-	{
-		String result = null;
-		if (string != null)
-		{
-			if (string.trim().length() > 0)
-			{
-				result = string;
-			}
-		}
-		return result;
-	}
-
-  
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLWizard.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLWizard.java
deleted file mode 100644
index 6295597..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/NewXMLWizard.java
+++ /dev/null
@@ -1,937 +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.xml.ui.internal.wizards;
-
-import java.text.Collator;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.wizard.IWizardPage;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.part.FileEditorInput;
-import org.eclipse.ui.part.PageBook;
-import org.eclipse.ui.wizards.newresource.BasicNewResourceWizard;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMContentBuilder;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.dialogs.NamespaceInfoErrorHelper;
-import org.eclipse.wst.xml.ui.dialogs.SelectFileOrXMLCatalogIdPanel;
-import org.eclipse.wst.xml.ui.dialogs.UpdateListener;
-import org.eclipse.wst.xml.ui.nsedit.CommonEditNamespacesDialog;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogEntry;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-public class NewXMLWizard extends NewModelWizard
-{                                  
-  protected static final int CREATE_FROM_DTD     = 0;
-  protected static final int CREATE_FROM_XSD     = 1;
-  protected static final int CREATE_FROM_SCRATCH = 2;
-
-  protected static final String[] createFromRadioButtonLabel
-    = {XMLWizard.getString("_UI_RADIO_XML_FROM_DTD"),
-       XMLWizard.getString("_UI_RADIO_XML_FROM_SCHEMA"),
-       XMLWizard.getString("_UI_RADIO_XML_FROM_SCRATCH")};
-
-  protected static final String[] filePageFilterExtensions = {".xml"};
-  protected static final String[] browseXSDFilterExtensions = {".xsd"};
-  protected static final String[] browseDTDFilterExtensions = {".dtd"};
-
-  protected NewFilePage newFilePage;
-  protected StartPage startPage;
-  protected SelectGrammarFilePage selectGrammarFilePage; 
-  protected SelectRootElementPage selectRootElementPage;
-                 
-  protected String cmDocumentErrorMessage;
-
-  protected NewXMLGenerator generator;
-
-
-  public NewXMLWizard()
-  {
-    setWindowTitle(XMLWizard.getString("_UI_WIZARD_CREATE_XML_HEADING"));
-    setDefaultPageImageDescriptor(ImageDescriptor.createFromFile(XMLWizard.class,"icons/generatexml_wiz.gif"));
-    generator = new NewXMLGenerator();
-  }
-  
-
-  public NewXMLWizard(IFile file, CMDocument cmDocument)
-  {
-    this();       
-
-    generator.setGrammarURI(URIHelper.getPlatformURI(file));
-    generator.setCMDocument(cmDocument);
-  }
-
-
-  public static void showDialog(Shell shell, IFile file, IStructuredSelection structuredSelection)
-  {                        
-    List errorList = new Vector();          
-    String[] errorInfo = new String[2];
-    CMDocument cmDocument = NewXMLGenerator.createCMDocument(file.getLocation().toOSString(), errorInfo);
-    if (errorInfo[0] == null)
-    {
-      NewXMLWizard wizard = new NewXMLWizard(file, cmDocument);
-      wizard.init(PlatformUI.getWorkbench(), structuredSelection);
-      wizard.setNeedsProgressMonitor(true);
-      WizardDialog dialog = new WizardDialog(shell, wizard);
-      dialog.create();          
-      dialog.getShell().setText(XMLWizard.getString("_UI_DIALOG_NEW_TITLE"));     
-      dialog.setBlockOnOpen(true);
-      dialog.open();
-    }         
-    else
-    {
-      MessageDialog.openInformation(shell, errorInfo[0], errorInfo[1]);
-    }
-  }  
-
-
-  public void addPages()
-  {
-    String grammarURI = generator.getGrammarURI();
-
-    if (grammarURI == null)
-    {
-      // start page
-      startPage = new StartPage("StartPage", createFromRadioButtonLabel)
-      {
-        public void createControl(Composite parent)
-        {
-          super.createControl(parent);
-        }
-                    
-        public void setVisible(boolean visible)
-        {
-          super.setVisible(visible);
-          getRadioButtonAtIndex(getCreateMode()).setSelection(true);
-          getRadioButtonAtIndex(getCreateMode()).setFocus();
-
-          // Set the help context for each button
-          //WorkbenchHelp.setHelp(startPage.getRadioButtonAtIndex(0), XMLBuilderContextIds.XMLC_FROM_DTD_RADIO);
-          //WorkbenchHelp.setHelp(startPage.getRadioButtonAtIndex(1), XMLBuilderContextIds.XMLC_XML_SCHEMA_RADIO);
-          //WorkbenchHelp.setHelp(startPage.getRadioButtonAtIndex(2), XMLBuilderContextIds.XMLC_SCRATCH_RADIO);
-        }
-      };
-
-
-      startPage.setTitle(XMLWizard.getString("_UI_WIZARD_CREATE_XML_HEADING"));
-      startPage.setDescription(XMLWizard.getString("_UI_WIZARD_CREATE_XML_EXPL"));
-      addPage(startPage);
-    }
-                                   
-    // new file page                              
-    newFilePage = new NewFilePage(selection);
-    newFilePage.setTitle(XMLWizard.getString("_UI_WIZARD_CREATE_XML_FILE_HEADING"));
-    newFilePage.setDescription(XMLWizard.getString("_UI_WIZARD_CREATE_XML_FILE_EXPL")); 
-    newFilePage.defaultName = (grammarURI != null) ? URIHelper.removeFileExtension(URIHelper.getLastSegment(grammarURI)) : "NewFile";
-    newFilePage.defaultFileExtension = ".xml";
-    newFilePage.filterExtensions = filePageFilterExtensions;
-    addPage(newFilePage);
-     
-    // selectGrammarFilePage
-    selectGrammarFilePage = new SelectGrammarFilePage();   
-    addPage(selectGrammarFilePage);                                                                     
-            
-    // select root element page
-    selectRootElementPage = new SelectRootElementPage();
-    selectRootElementPage.setTitle(XMLWizard.getString("_UI_WIZARD_SELECT_ROOT_HEADING"));
-    selectRootElementPage.setDescription(XMLWizard.getString("_UI_WIZARD_SELECT_ROOT_EXPL"));
-    addPage(selectRootElementPage);
-  }
-                  
-
-  public IWizardPage getStartingPage()
-  {
-    WizardPage result = null;
-    if (startPage != null)
-    {
-      result = startPage;
-    }
-    else
-    {
-      result = newFilePage;
-    }
-    return result;
-  }
-
-
-  public int getCreateMode()
-  {
-    String grammarURI = generator.getGrammarURI();
-
-    int result = CREATE_FROM_SCRATCH;
-    if (grammarURI != null)
-    {              
-      if (grammarURI.endsWith(".dtd"))
-      {
-        result = CREATE_FROM_DTD;
-      }
-      else if (grammarURI.endsWith(".xsd"))
-      {
-        result = CREATE_FROM_XSD;
-      }
-    }
-    else if (startPage != null)
-    {
-      int selectedIndex = startPage.getSelectedRadioButtonIndex();
-      if (selectedIndex != -1)
-      {
-        result = selectedIndex;
-      }
-    }
-    return result;
-  }
- 
-
-  public IWizardPage getNextPage(IWizardPage currentPage)
-  {
-    WizardPage nextPage = null;
-    if (currentPage == startPage)
-    {
-      nextPage = newFilePage;
-    }
-    else if (currentPage == newFilePage)
-    {                       
-      if (getCreateMode() == CREATE_FROM_SCRATCH)
-      {
-        nextPage = null;
-      }
-      else if (generator.getGrammarURI() == null)
-      {
-        nextPage = selectGrammarFilePage;
-      }
-      else
-      {
-        nextPage = selectRootElementPage;
-      }
-    }
-    else if (currentPage == selectGrammarFilePage)
-    {
-      nextPage = selectRootElementPage;
-    }                           
-    return nextPage;
-  }
-
-
-  public boolean canFinish()
-  {
-    boolean result = false;
-
-    IWizardPage currentPage = getContainer().getCurrentPage();
-
-    if ((startPage != null && startPage.getSelectedRadioButtonIndex() == CREATE_FROM_SCRATCH && currentPage == newFilePage) ||
-        (currentPage == selectRootElementPage))
-    {
-      result = currentPage.isPageComplete();
-    }
-    return result;
-  }      
-  
-
-  public boolean performFinish()
-  {       
-    boolean result = true;
-    super.performFinish();
-    try
-    {                                                                                   
-
-      String[] namespaceErrors = generator.getNamespaceInfoErrors();
-      if (namespaceErrors !=  null) 
-      {
-        String title = namespaceErrors[0];
-        String message = namespaceErrors[1];
-        result = MessageDialog.openQuestion(getShell(), title, message);
-      }
-
-      if (result)
-      {
-        String fileName = newFilePage.getFileName();
-        if ((new Path(fileName)).getFileExtension() == null)
-        {
-          newFilePage.setFileName(fileName.concat(".xml"));
-        }
-
-        IFile newFile = newFilePage.createNewFile();
-        String xmlFileName = newFile.getLocation().toOSString();
-
-        if (getContainer().getCurrentPage() == selectRootElementPage)
-        {
-
-          generator.createXMLDocument(newFile, xmlFileName);
-        }           
-        else
-        {
-          generator.createEmptyXMLDocument(newFile);
-        }
-        
-		newFile.refreshLocal(1, null);
-		
-		IWorkbenchWindow workbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-		BasicNewResourceWizard.selectAndReveal(newFile, workbenchWindow); 
-        openEditor(newFile);
-      }
-    }
-    catch (Exception e)
-    {
-      //e.printStackTrace();
-    }
-    return result;
-  }  
-  
-  public void openEditor(IFile file)
-  {  
-	// Open editor on new file.
-  	String editorId = null;
-  	IEditorDescriptor editor = PlatformUI.getWorkbench().getEditorRegistry().getDefaultEditor(file.getLocation().toOSString());
-  	if(editor != null){
-  		editorId = editor.getId();
-  	}
-  	IWorkbenchWindow dw = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-	try {
-		if (dw != null) {
-			IWorkbenchPage page = dw.getActivePage();
-			if (page != null)
-				page.openEditor(new FileEditorInput(file), editorId, true);
-		}
-	} catch (PartInitException e) {
-	}
-  }
-  
-
-  protected String getDefaultSystemId()
-  {  
-    String relativePath = "platform:/resource/" + newFilePage.getContainerFullPath().toString() + "/dummy"; 
-    return URIHelper.getRelativeURI(generator.getGrammarURI(), relativePath);
-  }                          
-     
-
-  /**
-   * SelectGrammarFilePage
-   */
-  class SelectGrammarFilePage extends WizardPage
-  {
-    protected SelectFileOrXMLCatalogIdPanel panel;
-  
-    SelectGrammarFilePage()
-    {
-      super("SelectGrammarFilePage");
-    }  
-
-    public void createControl(Composite parent)
-    {             
-      Composite composite = new Composite(parent, SWT.NONE);
-      //WorkbenchHelp.setHelp(composite, XMLBuilderContextIds.XMLC_GRAMMAR_PAGE);
-      composite.setLayout(new GridLayout());
-      composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-      setControl(composite);
-
-      panel = new SelectFileOrXMLCatalogIdPanel(composite);
-      panel.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-      SelectFileOrXMLCatalogIdPanel.Listener listener = new SelectFileOrXMLCatalogIdPanel.Listener()
-      {
-        public void completionStateChanged()
-        {          
-          updateErrorMessage();
-        }
-      };
-      panel.setListener(listener);
-    }
-   
-    public void setVisible(boolean visible)
-    {                              
-      super.setVisible(visible);                              
-      if (visible)
-      {                      
-        if (getCreateMode() == CREATE_FROM_DTD)
-        {                               
-          setTitle(XMLWizard.getString("_UI_WIZARD_SELECT_DTD_FILE_TITLE"));
-          setDescription(XMLWizard.getString("_UI_WIZARD_SELECT_DTD_FILE_DESC"));
-          panel.setFilterExtensions(browseDTDFilterExtensions);
-        }
-        else
-        { 
-          setTitle(XMLWizard.getString("_UI_WIZARD_SELECT_XSD_FILE_TITLE"));
-          setDescription(XMLWizard.getString("_UI_WIZARD_SELECT_XSD_FILE_DESC"));
-          panel.setFilterExtensions(browseXSDFilterExtensions);
-        } 
-        generator.setGrammarURI(null);
-        generator.setCMDocument(null); 
-        cmDocumentErrorMessage = null;        
-      }                             
-      panel.setVisibleHelper(visible);
-    }  
-
-    public String getURI()
-    {                      
-      String uri = panel.getXMLCatalogURI();
-      if (uri == null)
-      {
-        IFile file = panel.getFile();
-        if (file != null)
-        {
-          uri = URIHelper.getPlatformURI(file);
-        }               
-      }
-      return uri;
-    }  
-
-    public boolean isPageComplete()
-    {                            
-      return getURI() != null && getErrorMessage() == null;
-    }                        
-
-    public String getXMLCatalogId()
-    {
-      return panel.getXMLCatalogId();
-    }                            
-    
-    public XMLCatalogEntry getXMLCatalogEntry()
-    {
-      return panel.getXMLCatalogEntry();   
-    }    
-
-    public String computeErrorMessage()
-    {           
-      String errorMessage = null;
-      String uri = getURI();               
-      if (uri != null)
-      {         
-        if (!URIHelper.isReadableURI(uri,false))
-        {
-          errorMessage = XMLWizard.getString("_UI_LABEL_ERROR_CATALOG_ENTRY_INVALID");                  
-        }
-      }             
-      return errorMessage;
-    }
-
-
-    public void updateErrorMessage()
-    {
-      String errorMessage = computeErrorMessage();  
-      setErrorMessage(errorMessage);
-      setPageComplete(isPageComplete());
-    }
-  }
-
-
-  /**
-   * SelectRootElementPage
-   */
-  class SelectRootElementPage extends WizardPage implements SelectionListener
-  {
-    protected Combo combo;
-    protected Button[] radioButton;
-    protected PageBook pageBook;
-    protected XSDOptionsPanel xsdOptionsPanel;
-    protected DTDOptionsPanel dtdOptionsPanel;
-
-
-    SelectRootElementPage()
-    {
-      super("SelectRootElementPage");
-    }
-
-    public void createControl(Composite parent)
-    {
-      // container group
-      Composite containerGroup = new Composite(parent,SWT.NONE);
-      //WorkbenchHelp.setHelp(containerGroup, XMLBuilderContextIds.XMLC_ROOT_PAGE);
-      containerGroup.setLayout(new GridLayout());
-      containerGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-      setControl(containerGroup);
-
-      // select root element
-      Label containerLabel = new Label(containerGroup, SWT.NONE);
-      containerLabel.setText(XMLWizard.getString("_UI_LABEL_ROOT_ELEMENT"));
-      combo = new Combo(containerGroup, SWT.DROP_DOWN | SWT.READ_ONLY);
-      combo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-      combo.addSelectionListener(this);
-      //WorkbenchHelp.setHelp(combo, XMLBuilderContextIds.XMLC_ROOT_ROOT);
-
-      // Options
-      {
-        Group group = new Group(containerGroup, SWT.NONE);
-        group.setText(XMLWizard.getString("_UI_WIZARD_CONTENT_OPTIONS"));
-        //WorkbenchHelp.setHelp(group, XMLBuilderContextIds.XMLC_CURRENT_GROUP);
-        
-        GridLayout layout = new GridLayout();
-        layout.numColumns = 1;
-        layout.makeColumnsEqualWidth = true;
-        layout.marginWidth = 0;
-        group.setLayout(layout);
-        group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-        radioButton = new Button[4];
-                
-        radioButton[0] = new Button(group, SWT.CHECK);
-        radioButton[0].setText(XMLWizard.getString("_UI_WIZARD_CREATE_OPTIONAL_ATTRIBUTES"));
-        radioButton[0].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        radioButton[0].setSelection(false);
-        //WorkbenchHelp.setHelp(radioButton[0], XMLBuilderContextIds.XMLC_CREATE_OPTIONAL_ATTRIBUTES);
-        
-        radioButton[1] = new Button(group, SWT.CHECK);
-        radioButton[1].setText(XMLWizard.getString("_UI_WIZARD_CREATE_OPTIONAL_ELEMENTS"));
-        radioButton[1].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        radioButton[1].setSelection(false);
-        //WorkbenchHelp.setHelp(radioButton[1], XMLBuilderContextIds.XMLC_CREATE_OPTIONAL_ELEMENTS);
-        
-        radioButton[2] = new Button(group, SWT.CHECK);
-        radioButton[2].setText(XMLWizard.getString("_UI_WIZARD_CREATE_FIRST_CHOICE"));
-        radioButton[2].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        radioButton[2].setSelection(true);
-        //WorkbenchHelp.setHelp(radioButton[2], XMLBuilderContextIds.XMLC_CREATE_FIRST_CHOICE);
-        
-        radioButton[3] = new Button(group, SWT.CHECK);
-        radioButton[3].setText(XMLWizard.getString("_UI_WIZARD_FILL_ELEMENTS_AND_ATTRIBUTES"));
-        radioButton[3].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        radioButton[3].setSelection(true);                        
-        //WorkbenchHelp.setHelp(radioButton[3], XMLBuilderContextIds.XMLC_FILL_ELEMENTS_AND_ATTRIBUTES);
-/*
-        radioButton = new Button[2];
-
-        radioButton[0] = new Button(group, SWT.RADIO);
-        radioButton[0].setText(XMLWizard.getString("_UI_WIZARD_CREATE_REQUIRED"));
-        radioButton[0].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        radioButton[0].setSelection(true);
-        WorkbenchHelp.setHelp(radioButton[0], XMLBuilderContextIds.XMLC_CREATE_REQUIRED_ONLY);
-
-        radioButton[1] = new Button(group, SWT.RADIO);
-        radioButton[1].setText(XMLWizard.getString("_UI_WIZARD_CREATE_OPTIONAL"));
-        radioButton[1].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        WorkbenchHelp.setHelp(radioButton[1], XMLBuilderContextIds.XMLC_CREATE_REQUIRED_AND_OPTION);
-*/
-      }
-
-      // add the grammar specific generation options
-      //
-      {
-        pageBook = new PageBook(containerGroup, SWT.NONE);
-        pageBook.setLayoutData(new GridData(GridData.FILL_BOTH));
-        xsdOptionsPanel = new XSDOptionsPanel(this, pageBook);
-        dtdOptionsPanel = new DTDOptionsPanel(this, pageBook);
-        pageBook.showPage(xsdOptionsPanel); 
-      }
-    }
-
-    public void widgetSelected(SelectionEvent event)
-    {
-      int index = combo.getSelectionIndex();
-      String rootElementName = (index != -1) ? combo.getItem(index) : null;
-      generator.setRootElementName(rootElementName);
-    }
-
-    public void widgetDefaultSelected(SelectionEvent event)
-    {
-    }
-
-    public void setVisible(boolean visible)
-    {
-      super.setVisible(visible);
-
-      if (visible)
-      {
-        try
-        {
-          if (generator.getGrammarURI() == null)
-          {
-            generator.setGrammarURI(selectGrammarFilePage.getURI());
-            generator.setXMLCatalogEntry(selectGrammarFilePage.getXMLCatalogEntry());
-          }
-          Assert.isNotNull(generator.getGrammarURI());    
-                
-          if (generator.getCMDocument() == null)
-          {
-            final String[] errorInfo = new String[2];
-            final CMDocument[] cmdocs = new CMDocument[1];
-            Runnable r = new Runnable()
-              {
-                public void run()
-                {
-                  cmdocs[0] = NewXMLGenerator.createCMDocument(generator.getGrammarURI(), errorInfo);
-                }
-              };
-            org.eclipse.swt.custom.BusyIndicator.showWhile(Display.getCurrent(),r);
-
-            generator.setCMDocument(cmdocs[0]);
-            cmDocumentErrorMessage = errorInfo[1];     
-          }    
-
-          if (generator.getCMDocument() != null && cmDocumentErrorMessage == null)
-          {
-            CMNamedNodeMap nameNodeMap = generator.getCMDocument().getElements();
-            Vector nameNodeVector = new Vector();
-
-            for (int i = 0; i < nameNodeMap.getLength(); i++)
-            {
-              CMElementDeclaration cmElementDeclaration = (CMElementDeclaration)nameNodeMap.item(i);
-              Object value =  cmElementDeclaration.getProperty("Abstract");
-              if  (value !=  Boolean.TRUE)
-              {
-                nameNodeVector.add(cmElementDeclaration.getElementName());
-              }
-            }
-
-            Object[] nameNodeArray = nameNodeVector.toArray();
-            if (nameNodeArray.length > 0 )
-            {
-              Arrays.sort(nameNodeArray, Collator.getInstance());
-            }
-
-            String defaultRootName = (String) (generator.getCMDocument()).getProperty("http://org.eclipse.wst/cm/properties/defaultRootName");
-            int defaultRootIndex = -1;
-            combo.removeAll();
-
-
-            for (int i = 0; i < nameNodeArray.length; i++)
-            {
-              String elementName = (String)nameNodeArray[i];
-
-              combo.add(elementName);
-              if (defaultRootName != null && defaultRootName.equals(elementName))
-              {
-                defaultRootIndex = i;
-              }
-            }
-         
-            if (nameNodeArray.length > 0)
-            {
-              defaultRootIndex = defaultRootIndex != -1 ? defaultRootIndex : 0;
-              combo.select(defaultRootIndex);
-              generator.setRootElementName(combo.getItem(defaultRootIndex));
-            }
-          }
-
-          if (generator.getGrammarURI().endsWith("xsd"))
-          {                                       
-            pageBook.showPage(xsdOptionsPanel); 
-            generator.setDefaultSystemId(getDefaultSystemId());
-            generator.createNamespaceInfoList();
-
-            // Provide default namespace prefix if none
-            for (int i=0; i<generator.namespaceInfoList.size(); i++)
-            {
-              NamespaceInfo nsinfo = 
-                (NamespaceInfo)generator.namespaceInfoList.get(i);
-              if ((nsinfo.prefix == null || nsinfo.prefix.trim().length() == 0)
-                  && (nsinfo.uri != null && nsinfo.uri.trim().length() != 0))
-              {
-                nsinfo.prefix = getDefaultPrefix(generator.namespaceInfoList);
-              }
-            }
-            xsdOptionsPanel.setNamespaceInfoList(generator.namespaceInfoList);
-          }
-          else if (generator.getGrammarURI().endsWith("dtd"))
-          {
-            pageBook.showPage(dtdOptionsPanel);
-            dtdOptionsPanel.update();
-          }
-        }   
-        catch(Exception e)
-        {
-           //XMLBuilderPlugin.getPlugin().getMsgLogger().writeCurrentThread();
-        }
-
-        /*
-        String errorMessage = computeErrorMessage();
-        if (errorMessage == null) 
-          super.setVisible(visible);
-        */
-        
-        updateErrorMessage();
-      }
-    }
-                            
-    private String getDefaultPrefix(List nsInfoList)
-    {
-      String defaultPrefix = "p";
-      if (nsInfoList == null)
-        return defaultPrefix;
-
-      Vector v = new Vector();
-      for (int i=0; i<nsInfoList.size(); i++)
-      {
-        NamespaceInfo nsinfo = (NamespaceInfo)nsInfoList.get(i);
-        if (nsinfo.prefix != null)
-          v.addElement(nsinfo.prefix);
-      }
-
-      if (v.contains(defaultPrefix))
-      {
-        String s = defaultPrefix;
-        for (int j=0; v.contains(s); j++)
-        {
-          s = defaultPrefix + Integer.toString(j);
-        }
-        return s;
-      }
-      else
-        return defaultPrefix;
-    }
-
-    public boolean isPageComplete()
-    {
-      boolean complete = (generator.getRootElementName() != null && generator.getRootElementName().length() > 0) && getErrorMessage() == null;
-      
-      if (complete) {
-      	/*
-        int buildPolicy = radioButton[0].getSelection() ?
-                          DOMContentBuilder.BUILD_ONLY_REQUIRED_CONTENT :
-                          DOMContentBuilder.BUILD_ALL_CONTENT;
-        */
-        int buildPolicy = 0;
-        if (radioButton[0].getSelection())
-          buildPolicy = buildPolicy | DOMContentBuilder.BUILD_OPTIONAL_ATTRIBUTES;
-        if (radioButton[1].getSelection())
-          buildPolicy = buildPolicy | DOMContentBuilder.BUILD_OPTIONAL_ELEMENTS;
-        if (radioButton[2].getSelection())
-          buildPolicy = buildPolicy | DOMContentBuilder.BUILD_FIRST_CHOICE | DOMContentBuilder.BUILD_FIRST_SUBSTITUTION;
-        if (radioButton[3].getSelection())
-          buildPolicy = buildPolicy | DOMContentBuilder.BUILD_TEXT_NODES;
-                    
-        generator.setBuildPolicy(buildPolicy);
-      }
-
-      return complete;
-    }
-
-    public String computeErrorMessage()
-    {
-      String errorMessage = null;
-               
-      if (cmDocumentErrorMessage != null)
-      {
-        errorMessage = cmDocumentErrorMessage;                  
-      }
-      else if (generator.getRootElementName() == null || generator.getRootElementName().length() == 0)
-      {
-        errorMessage = XMLWizard.getString("_ERROR_ROOT_ELEMENT_MUST_BE_SPECIFIED");
-      }                  
-
-      return errorMessage;
-    }
-
-
-    public void updateErrorMessage()
-    {
-      String errorMessage = computeErrorMessage();
-      if (errorMessage == null)
-      { 
-        if (xsdOptionsPanel.isVisible())
-        {
-          
-          errorMessage = xsdOptionsPanel.computeErrorMessage();
-        }
-        else if (dtdOptionsPanel.isVisible())
-        {
-          errorMessage = dtdOptionsPanel.computeErrorMessage();
-        }
-      }
-      setErrorMessage(errorMessage);
-      setPageComplete(isPageComplete());
-    }
-  }
-  ////////////////End SelectRootElementPage
-  
-
-
-  public static GridLayout createOptionsPanelLayout()
-  {
-    GridLayout gridLayout = new GridLayout();
-    gridLayout.marginWidth = 0;
-    gridLayout.horizontalSpacing = 0;
-    return gridLayout;
-  }
-    
-
-                    
-  /**
-   * 
-   */
-  class XSDOptionsPanel extends Composite
-  {            
-    protected String errorMessage = null;
-    protected SelectRootElementPage parentPage;   
-    protected CommonEditNamespacesDialog editNamespaces;
-
-    public XSDOptionsPanel(SelectRootElementPage parentPage, Composite parent)
-    {
-      super(parent, SWT.NONE);
-      this.parentPage = parentPage;
-                                                                            
-      setLayout(createOptionsPanelLayout());                                 
-      setLayoutData(new GridData(GridData.FILL_BOTH));             
-                                
-      Composite co = new Composite(this, SWT.NONE);
-      co.setLayout(new GridLayout());
-	 
-      if (newFilePage != null && newFilePage.getContainerFullPath() != null)
-      {
-        // todo... this is a nasty mess. I need to revist this code.
-        //
-        String resourceURI = "platform:/resource" + newFilePage.getContainerFullPath().toString() + "/dummy";
-        String resolvedPath = URIHelper.normalize(resourceURI, null, null);
-        if (resolvedPath.startsWith("file:/"))
-        {
-          resolvedPath = resolvedPath.substring(6);
-        }
-        // end nasty messs
-        String tableTitle = XMLWizard.getString("_UI_LABEL_NAMESPACE_INFORMATION");
-        editNamespaces = new CommonEditNamespacesDialog(co, new Path(resolvedPath), tableTitle, true, true);
-      }
-
-      UpdateListener updateListener = new UpdateListener()
-      {
-        public void updateOccured(Object object, Object arg)
-        { 
-          updateErrorMessage((List)arg);
-        }
-      };
-    }
-    
-    public void setNamespaceInfoList(List list)
-    {                   
-      editNamespaces.setNamespaceInfoList(list);   
-      editNamespaces.updateErrorMessage(list);                      
-    }    
-    
-    public void updateErrorMessage(List namespaceInfoList)
-    {        
-      NamespaceInfoErrorHelper helper = new NamespaceInfoErrorHelper();
-      errorMessage = helper.computeErrorMessage(namespaceInfoList, null);
-      parentPage.updateErrorMessage();
-    }
-  
-    
-    public String computeErrorMessage()
-    {             
-      return errorMessage;
-    }   
-  }    
-
-
-  /**
-   * 
-   */
-  public class DTDOptionsPanel extends Composite implements ModifyListener
-  {
-    protected Group group;
-    protected Text systemIdField;
-    protected Text publicIdField;
-    protected SelectRootElementPage parentPage;
-
-    public DTDOptionsPanel(SelectRootElementPage parentPage, Composite parent)
-    {
-      super(parent, SWT.NONE);
-      this.parentPage = parentPage;
-      setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-      setLayout(createOptionsPanelLayout());
-      Group group = new Group(this, SWT.NONE);
-      group.setText(XMLWizard.getString("_UI_LABEL_DOCTYPE_INFORMATION"));
-      //WorkbenchHelp.setHelp(group, XMLBuilderContextIds.XMLC_DOCUMENTATION_GROUP);
-      
-      GridLayout layout = new GridLayout();
-      layout.numColumns = 2;
-      group.setLayout(layout);
-      group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-                  
-      Label publicIdLabel = new Label(group, SWT.NONE);
-      publicIdLabel.setText(XMLWizard.getString("_UI_LABEL_PUBLIC_ID"));
-      publicIdField = new Text(group, SWT.SINGLE | SWT.BORDER);
-      publicIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-      publicIdField.addModifyListener(this);
-      //WorkbenchHelp.setHelp(publicIdField, XMLBuilderContextIds.XMLC_PUBLIC);
-      
-      Label systemIdLabel = new Label(group, SWT.NONE);
-      systemIdLabel.setText(XMLWizard.getString("_UI_LABEL_SYSTEM_ID"));
-      systemIdField = new Text(group, SWT.SINGLE | SWT.BORDER);
-      systemIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-      systemIdField.addModifyListener(this);
-      //WorkbenchHelp.setHelp(systemIdField, XMLBuilderContextIds.XMLC_SYSTEM);      
-    }
-    
-    public void update()
-    {                           
-      String thePublicId = null;                              
-      String theSystemId = null;
-      XMLCatalogEntry xmlCatalogEntry = generator.getXMLCatalogEntry();
-
-      if (xmlCatalogEntry != null)
-      {
-        if (xmlCatalogEntry.getType() == XMLCatalogEntry.PUBLIC)
-        {
-          thePublicId = xmlCatalogEntry.getKey();
-          theSystemId = xmlCatalogEntry.getWebAddress();
-          if (theSystemId == null)
-          {
-            theSystemId = generator.getGrammarURI().startsWith("http:") ? generator.getGrammarURI() : URIHelper.getLastSegment(generator.getGrammarURI());
-          }  
-        }                                          
-        else
-        {
-          theSystemId = xmlCatalogEntry.getKey();
-        }  
-      }                                     
-      else
-      {
-        theSystemId = getDefaultSystemId();
-      }                                    
-                                                                    
-      publicIdField.setText(thePublicId != null ? thePublicId : "");
-      systemIdField.setText(theSystemId != null ? theSystemId : "");
-    }      
-
-    public void modifyText(ModifyEvent e)
-    {
-      generator.setSystemId(systemIdField.getText());
-      generator.setPublicId(publicIdField.getText());
-      parentPage.updateErrorMessage();
-    }
-
-    public String computeErrorMessage()
-    {
-      return null;
-    }
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLExampleProjectCreationWizard.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLExampleProjectCreationWizard.java
deleted file mode 100644
index 529c7f3..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLExampleProjectCreationWizard.java
+++ /dev/null
@@ -1,40 +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.xml.ui.internal.wizards;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.common.ui.wizards.ExampleProjectCreationWizard;
-
-/**
- * Wizard used for creating the XML samples.
- * Most functionality is inherited from ExampleProjectCreationWizard.
- * 
- * @deprecated - to be removed in WTP 1.0M4
- */
-public class XMLExampleProjectCreationWizard extends ExampleProjectCreationWizard {
-	
-	public static String EXAMPLE_WIZARD_XP_ID = "org.eclipse.wst.xml.ui.XMLExampleProjectCreationWizardExtension";  //$NON-NLS-1$
-
-
-	public XMLExampleProjectCreationWizard() {
-		super();
-		
-	}
-	
-
-	protected ImageDescriptor getImageDescriptor(String banner) {
-		return XMLWizard.getInstance().getImageDescriptor(banner);
-	}
-	
-	public String getWizardExtensionId(){
-		return EXAMPLE_WIZARD_XP_ID;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLImportActionDelegate.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLImportActionDelegate.java
deleted file mode 100644
index c6a7d69..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLImportActionDelegate.java
+++ /dev/null
@@ -1,207 +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.xml.ui.internal.wizards;
-
-import java.io.InputStream;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IActionDelegate;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.osgi.framework.Bundle;
-
-public class XMLImportActionDelegate implements IActionDelegate
-{
-  private static final String validateXSDPluginID = "org.eclipse.wst.xsd.validation";
-  private static final String xsdValidatorClassName = "org.eclipse.wst.xsd.validation.internal.ui.eclipse.XSDValidator";
-  
-  private static final String validateDTDPluginID = "org.eclipse.wst.dtd.validation";
-  private static final String dtdValidatorClassName = "org.eclipse.wst.dtd.validation.internal.ui.eclipse.DTDValidator";
-
-  private static final String validationReportClassName = "org.eclipse.wst.xml.validation.internal.core.ValidationReport";
-
-  
-  /**
-   * Checks the current selection and runs the separate browser
-   * to show the content of the Readme file. This code shows how
-   * to launch separate browsers that are not VA/Base desktop parts.
-   *
-   * @param action  the action that was performed
-   */
-  public void run(IAction action)
-  {
-    IWorkbenchWindow workbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-    ISelection selection = workbenchWindow.getSelectionService().getSelection();
-    Object selectedObject = getSelection(selection);
-
-    if (selectedObject instanceof IFile && selection instanceof IStructuredSelection)
-    {
-      IFile file = (IFile)selectedObject;
-      IStructuredSelection structuredSelection = (IStructuredSelection)selection;
-
-      if (file.getName().endsWith(".dtd") || file.getName().endsWith(".xsd"))
-      { 
-        IPath path = file.getLocation();
-        String uri = URIHelper.getURIForFilePath(path.toString());
-        
-        boolean validationPluginsFound = false;
-        
-        Boolean isValid = null;
-
-        try
-        {
-          if (file.getName().endsWith(".xsd"))
-          {
-            Class[] parameterTypes = new Class[] {String.class, InputStream.class};
-            Object[] arguments = new Object[] {uri, null};
-
-//          Here is the Reflection equivalent way of performing the following lines
-//          XSDValidator xsdValidator = XSDValidator.getInstance();
-//          ValidationReport valreport = xsdValidator.validate(uri);
-           
-            Bundle validateXSDBundle = Platform.getBundle(validateXSDPluginID);
-            if (validateXSDBundle != null)
-            {
-              Class xsdValidatorClass, validationReportClass;
-              Object xsdValidatorObject, validationReportObject;
-              
-              xsdValidatorClass = validateXSDBundle.loadClass(xsdValidatorClassName);
-
-              Method getInstanceMethod = xsdValidatorClass.getMethod("getInstance", null);
-              xsdValidatorObject = getInstanceMethod.invoke(null, null);  // static and no parameters
-              
-              Method validateMethod = xsdValidatorClass.getMethod("validate", parameterTypes);
-              validationReportObject = validateMethod.invoke(xsdValidatorObject, arguments);
-              
-              validationReportClass = validateXSDBundle.loadClass(validationReportClassName);              
-              
-              Method isValidMethod = validationReportClass.getMethod("isValid", null);
-              isValid = (Boolean)isValidMethod.invoke(validationReportObject, null);
-
-              validationPluginsFound = true; // made it this far, so declare that validation can be performed
-            }
-          }
-          else
-          {
-            Class[] parameterTypes = new Class[] {String.class};
-            Object[] arguments = new Object[] {uri};
-
-//          Here is the Reflection equivalent way of performing the following lines            
-//          DTDValidator dtdValidator = DTDValidator.getInstance();
-//          ValidationReport valreport = dtdValidator.validate(uri);
-
-            Bundle validateDTDBundle = Platform.getBundle(validateDTDPluginID);
-            
-            if (validateDTDBundle != null)
-            {
-              Class dtdValidatorClass, validationReportClass;
-              Object dtdValidatorObject, validationReportObject;
-
-              dtdValidatorClass = validateDTDBundle.loadClass(dtdValidatorClassName);
-              
-              Method getInstanceMethod = dtdValidatorClass.getMethod("getInstance", null);
-              dtdValidatorObject = getInstanceMethod.invoke(null, null);  // static and no parameters
-              
-              Method validateMethod = dtdValidatorClass.getMethod("validate", parameterTypes);
-              validationReportObject = validateMethod.invoke(dtdValidatorObject, arguments);
-              
-              validationReportClass = validateDTDBundle.loadClass(validationReportClassName);              
-              
-              Method isValidMethod = validationReportClass.getMethod("isValid", null);
-              isValid = (Boolean)isValidMethod.invoke(validationReportObject, null);
-              
-              validationPluginsFound = true; // made it this far, so declare that validation can be performed
-            }
-          }
-        }
-        catch (ClassNotFoundException e)
-        {
-          // Plugins Not Found
-        }
-        catch (NoSuchMethodException e)
-        {
-          // Plugins Not Found
-        }
-        catch (IllegalAccessException e)
-        {
-          // Plugins Not Found          
-        }
-        catch (InvocationTargetException e)
-        {
-          // Plugins Not Found
-        }
-
-        if (validationPluginsFound)
-        {
-          if (isValid != null && !isValid.booleanValue())
-          {
-            String title = XMLWizard.getString("_UI_DIALOG_TITLE_INVALID_GRAMMAR");
-            String message = XMLWizard.getString("_UI_DIALOG_MESSAGE_INVALID_GRAMMAR");
-            boolean answer = MessageDialog.openQuestion(Display.getDefault().getActiveShell(), title, message);
-            if (!answer)
-              return;
-          }
-        }
-        else
-        {
-          // TODO externalize these strings
-          String title = "Validation Plugins Unavailable";
-          String message = "Validation cannot be performed because the validation plugins were disabled or not found.  The generated file may be invalid.  Do you wish to continue?";
-          boolean answer = MessageDialog.openQuestion(Display.getDefault().getActiveShell(), title, message);
-          if (!answer)
-            return;
-        }
-        NewXMLWizard.showDialog(workbenchWindow.getShell(), file, structuredSelection);
-      }
-    }
-  }
-
-  /**
-   * unused
-   */
-  public void selectionChanged(IAction action, ISelection selection)
-  {
-    // unused
-  }
-
-  // scammed from WindowUtility
-  //
-  public static Object getSelection(ISelection selection)
-  {
-    if (selection == null)
-    {
-      return null;
-    } // end of if ()
-
-    Object result = null;
-    if (selection instanceof IStructuredSelection)
-    {
-       IStructuredSelection es= (IStructuredSelection)selection;
-       Iterator i= es.iterator();
-       if (i.hasNext())
-       {
-         result= i.next();
-       }
-    }			
-    return result;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLSchemaValidationChecker.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLSchemaValidationChecker.java
deleted file mode 100644
index 654f6d6..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLSchemaValidationChecker.java
+++ /dev/null
@@ -1,67 +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.xml.ui.internal.wizards;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.xml.sax.ErrorHandler;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXParseException;
-
-public class XMLSchemaValidationChecker {
-	public boolean isValid(IFile ifile) {
-		String xsdFileName = ifile.getLocation().toString();
-		return isValid(xsdFileName);
-	}
-	/**
-	 * Should this be implemented as a Validator and simply called as such with
-	 * a reporter that only checks the results for severity = error?  Or should
-//	 * the Xerces requirement be broken using a plug-in extension?
-	 */
-
-	public boolean isValid(String xsdFileName) {
-//		DOMASBuilderImpl builder = new DOMASBuilderImpl();
-//		DOMErrorHandler errorHandler = new DOMErrorHandler();
-//		builder.setErrorHandler(errorHandler);
-		try {
-			String uri = URIHelper.getURIForFilePath(xsdFileName);
-//			ASModel model = builder.parseASURI(uri);
-//			if (errorHandler.hasError())
-//				return false;
-		}
-		catch (Exception e) // invalid schema
-			{
-			return false;
-		}
-
-		return true;
-	}
-
-	// inner class
-	class DOMErrorHandler implements ErrorHandler {
-		private boolean hasError = false;
-
-		public boolean hasError() {
-			return hasError;
-		}
-
-		public void error(SAXParseException err) {
-			hasError = true;
-		}
-		public void fatalError(SAXParseException exception) throws SAXException {
-			hasError = true;
-		}
-		public void warning(SAXParseException exception) throws SAXException {
-			// not an error
-		}
-	} // end DOMErrorHandlerImpl
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLWizard.java b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLWizard.java
deleted file mode 100644
index 55e0021..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/XMLWizard.java
+++ /dev/null
@@ -1,67 +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.xml.ui.internal.wizards;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.resource.ImageDescriptor;
-
-public class XMLWizard
-{
-  private ResourceBundle wizardResourceBundle;
-  protected static XMLWizard instance = new XMLWizard();
-
-  public synchronized static XMLWizard getInstance() {
-    return instance;
-  }
-  
-  public XMLWizard()
-  {
-    instance = this;
-    try {
-      wizardResourceBundle = ResourceBundle.getBundle("wizardResource"); //$NON-NLS-1$
-    }
-    catch (java.util.MissingResourceException exception) {
-      wizardResourceBundle = null;
-    }
-  }
-
-  public ResourceBundle getWizardResourceBundle()
-  {
-    return wizardResourceBundle;
-  }
-  
-  public static String getString(String key)
-  {
-    try {
-      ResourceBundle bundle = getInstance().getWizardResourceBundle();
-      return bundle.getString(key);
-    } 
-    catch (MissingResourceException e) {
-      return key;
-    }
-  }
-  
-  public ImageDescriptor getImageDescriptor(String name)
-  {
-    try {
-      URL url= new URL(Platform.getBundle("org.eclipse.wst.xml.ui").getEntry("/"), name);
-      return ImageDescriptor.createFromURL(url);
-    }
-    catch (MalformedURLException e) {
-      return ImageDescriptor.getMissingImageDescriptor();
-    }
-  } 
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/icons/generatexml_wiz.gif b/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/icons/generatexml_wiz.gif
deleted file mode 100644
index 2e4f667..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/org/eclipse/wst/xml/ui/internal/wizards/icons/generatexml_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xml.ui/src-wizards/wizardResource.properties b/bundles/org.eclipse.wst.xml.ui/src-wizards/wizardResource.properties
deleted file mode 100644
index b1cdb33..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src-wizards/wizardResource.properties
+++ /dev/null
@@ -1,163 +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
-###############################################################################
-! Properties file for component: XML Tools -  New XML Wizard
-! Packaged for translation in:  xml.zip
-
-! Plugin
-
-_UI_XML_PLUGIN_NAME    = XML Builder
-_UI_PREF_XML_CATALOG   = XML Catalog
-
-!XMLImportActionDelegate
-_UI_DIALOG_NEW_TITLE        = New
-_UI_DIALOG_TITLE_INVALID_GRAMMAR = Invalid Grammar
-_UI_DIALOG_MESSAGE_INVALID_GRAMMAR = The grammar file contains errors. If you proceed, an incorrect result file will be generated. Do you want to continue?
-
-!NewXMLBWizard
-_UI_RADIO_XML_FROM_DTD                = Create XML file from a &DTD file
-_UI_RADIO_XML_FROM_SCHEMA             = Create XML file from an &XML schema file
-_UI_RADIO_XML_FROM_SCRATCH            = Create XML file from &scratch
-_UI_WIZARD_CREATE_XML_HEADING         = Create XML File
-_UI_WIZARD_CREATE_XML_EXPL            = Select how you would like to create your XML file.
-_UI_WIZARD_CREATE_XML_FILE_HEADING    = XML File Name
-_UI_WIZARD_CREATE_XML_FILE_EXPL       = Specify a name for the new XML file.
-_UI_WIZARD_SELECT_DTD_FILE_DESC       = Select the DTD file to create the XML file.
-_UI_WIZARD_SELECT_DTD_FILE_TITLE      = Select DTD File
-_UI_WIZARD_SELECT_XSD_FILE_DESC       = Select the schema file to create the XML file.
-_UI_WIZARD_SELECT_XSD_FILE_TITLE      = Select XML Schema File
-_UI_LABEL_DTD_FILENAME                = DTD file name
-_UI_WIZARD_SELECT_ROOT_HEADING        = Select Root Element
-_UI_WIZARD_SELECT_ROOT_EXPL           = Select the root element of the XML file.
-_UI_WIZARD_SELECT_SCHEMA_HEADING      = Select Schema File
-_UI_WIZARD_SELECT_SCHEMA_EXPL         = Select the schema file you want to create the XML file from.
-_UI_LABEL_SCHEMA_FILENAME             = Schema file name:
-_UI_LABEL_ROOT_ELEMENT_GROUP          = &Root Element
-_UI_LABEL_ROOT_ELEMENT                = Root element:
-_UI_WARNING_TITLE_NO_ROOT_ELEMENTS    = No Root Elements
-_UI_WARNING_MSG_NO_ROOT_ELEMENTS      = No root element exists since the schema provided has no global elements.
-_UI_LABEL_NO_LOCATION_HINT            = Unspecified Namespace Location
-_UI_WARNING_MSG_NO_LOCATION_HINT_1    = You have not specified a location hint for one or more namespace entries.
-_UI_WARNING_MSG_NO_LOCATION_HINT_2    = Elements from these namespaces will not be generated. This may lead to an invalid generated document.
-_UI_WARNING_MSG_NO_LOCATION_HINT_3    = Click Yes to continue, Click No to go back and specify the location hints.
-_UI_WIZARD_CONTENT_OPTIONS            = Content options
-
-_UI_WIZARD_CREATE_REQUIRED            = &Create required content only
-_UI_WIZARD_CREATE_OPTIONAL            = Create required and &optional content
-
-_UI_WIZARD_CREATE_OPTIONAL_ATTRIBUTES = Create optional &attributes
-_UI_WIZARD_CREATE_OPTIONAL_ELEMENTS   = Create optional e&lements
-_UI_WIZARD_CREATE_FIRST_CHOICE        = Create first choice of required &choice
-_UI_WIZARD_FILL_ELEMENTS_AND_ATTRIBUTES = Fill elements and attributes with &data
-
-_UI_WIZARD_SCHEMA_AND_NAME_SPACE_INFO = Schema and Namespace Information
-_UI_LABEL_NAME_SPACE_PREFIX           = Namespace prefix:
-_UI_LABEL_NAME_SPACE_URI              = Namespace URI:
-_UI_LABEL_XSD_LOCATION                = Schema location:
-_UI_LABEL_DOCTYPE_INFORMATION         = Document type information
-_UI_LABEL_SYSTEM_ID                   = &System ID:
-_UI_LABEL_PUBLIC_ID                   = &Public ID:
-_UI_LABEL_SELECT_FILE                 = Select File
-_UI_LABEL_KEY                         = Key
-_UI_LABEL_KEY_COLON                   = &Key:
-_UI_LABEL_DETAILS_KEY_COLON           = Key:
-_UI_LABEL_URI                         = URI
-_UI_LABEL_URI_COLON                   = &URI:   
-_UI_LABEL_DETAILS_URI_COLON           = URI:   
-_UI_KEY_TYPE_COLON                    = Key &Type:
-_UI_KEY_TYPE_DETAILS_COLON            = Key Type:
-_UI_KEY_TYPE_DESCRIPTION_XSD_PUBLIC   = Namespace name
-_UI_KEY_TYPE_DESCRIPTION_XSD_SYSTEM   = Schema location
-_UI_KEY_TYPE_DESCRIPTION_DTD_PUBLIC   = Public ID
-_UI_KEY_TYPE_DESCRIPTION_DTD_SYSTEM   = System ID
-_UI_LABEL_SPECIFY_ALTERNATIVE_WEB_URL = Specify &alternative Web address
-_UI_WARNING_URI_MUST_NOT_HAVE_DOTS    = URI must not included '.' or '..'
-
-_UI_WARNING_URI_NOT_FOUND_COLON       = The specified resource cannot be located :
-_UI_WARNING_URI_NOT_FOUND_LONG        = The specified file cannot be found. It may have been moved to a different location. If the file is located remotely, a network connection cannot be established to the remote location. 
-_UI_WARNING_INVALID_FILE              = The specified file is invalid.
-_UI_WARNING_INVALID_FILE_LONG         = The specified file is invalid. A proper XML file cannot be generated from it. Open the DTD or XML schema file, edit it as necessary, validate it and try again.
-_UI_WARNING_NO_ELEMENT                = The specified file must contain at least one element declaration.
-_UI_WARNING_NO_ELEMENT_DTD_LONG       = The specified file must contain at least one element declaration that can be used as the root element in the generated XML file.
-_UI_WARNING_NO_ELEMENT_XSD_LONG       = The specified file must contain at least one global element declaration that can be used as the root element in the generated XML file.
-
-
-!NewModelWizard
-_UI_INVALID_GRAMMAR_ERROR             = Invalid Grammar
-_UI_BUTTON_BROWSE                     = &Browse...
-
-!XMLCatalogIdMappingPage
-_UI_LABEL_MAP_TO                      = Map to:
-_UI_LABEL_MAP_FROM                    = Map from:
-_UI_BUTTON_NEW                        = &New...
-_UI_BUTTON_EDIT                       = &Edit...
-_UI_BUTTON_DELETE                     = &Delete
-_UI_LABEL_NEW_DIALOG_TITLE            = New XML Catalog Entry
-_UI_LABEL_EDIT_DIALOG_TITLE           = Edit XML Catalog Entry
-
-
-!XMLCatalogPreferencePage
-_UI_LABEL_USER_ENTRIES                = XML Catalog entries
-_UI_LABEL_USER_ENTRIES_TOOL_TIP       = XML Catalog entries that have been specified by the user
-_UI_LABEL_SYSTEM_ENTRIES              = Plug-in specified entries
-_UI_LABEL_SYSTEM_ENTRIES_TOOL_TIP     = XML Catalog entries that have been specified by a plug-in
-_UI_BUTTON_CHANGE                     = Change...
-_UI_LABEL_SELECT_PROJECT              = Select Project
-_UI_LABEL_SPECIFY_PROJECT_DESCRIPTION = Specify the project to persist the XML Catalog information
-_UI_WARNING_NO_PROJECTS_CREATED       = No projects have been created yet.
-_UI_WARNING_PROJECT_NOT_SPECIFIED     = A project name has not been specified.
-_UI_WARNING_PROJECT_DOES_NOT_EXIST    = The specified project does not exist.
-_UI_LABEL_PROJECT_TO_USE              = Project to use to persist XML Catalog User Entries: 
-_UI_LABEL_CATALOG_SAVE_ERROR          = XML Catalog Save Error
-_UI_LABEL_CATALOG_COULD_NOT_BE_SAVED  = The XML Catalog entry could not be saved.
-_UI_LABEL_ADVANCED                    = &Advanced...
-_UI_LABEL_ADVANCED_XML_CATALOG_PREFS  = Advanced XML Catalog Preferences   
-_UI_LABEL_SPECIFY_PERSISTENCE_FILE    = &Specify a file to use to persist the XML Catalog information.
-_UI_LABEL_SAVE_CATALOG_DIALOG_TITLE   = Save Changes
-_UI_LABEL_SAVE_CATALOG_DIALOG_DESC    = You have made unsaved changes to the current XML Catalog settings. Do you wish to save your changes before loading the new XML Catalog settings?   
-_UI_LABEL_BROWSE_CATALOG_FILE_TITLE   = Select Folder
-_UI_LABEL_BROWSE_CATALOG_FILE_DESC    = Select the folder that contains the '.xmlcatalog' file.   
-_UI_LABEL_DETAILS                     = Details
-_UI_LABEL_USER_SPECIFIED_ENTRIES      = User Specified Entries
-_UI_LABEL_PLUGIN_SPECIFIED_ENTRIES    = Plugin Specified Entries
-
-!AdvancedOptionsDialog
-_UI_LABEL_DIALOG_DESCRIPTION          = Use the buttons below to import or export XML Catalog settings.
-_UI_BUTTON_IMPORT                     = Import...
-_UI_BUTTON_EXPORT                     = Export...
-                                   
-_UI_LABEL_IMPORT_DIALOG_TITLE         = Import XML Catalog Settings
-_UI_LABEL_IMPORT_DIALOG_HEADING       = Specify XML Catalog File
-_UI_LABEL_IMPORT_DIALOG_MESSAGE       = Specify the file that will used to load the XML Catalog settings.
-
-_UI_LABEL_EXPORT_DIALOG_TITLE         = Export XML Catalog Settings
-_UI_LABEL_EXPORT_DIALOG_HEADING       = Specify XML Catalog File
-_UI_LABEL_EXPORT_DIALOG_MESSAGE       = Specify the file that will used to save the XML Catalog setting.
-
-!NewModelWizard
-_ERROR_NO_FILENAME                    = Enter a file name.
-_ERROR_FILE_DOESNT_EXIST              = File does not exist.
-_ERROR_INVALID_FILENAME               = Invalid file name.
-_ERROR_BAD_FILENAME_EXTENSION         = The specified file name must have a recognized extension (e.g. '.xml').
-_ERROR_FILE_ALREADY_EXISTS            = The same file already exists.
-_ERROR_ROOT_ELEMENT_MUST_BE_SPECIFIED = A root element must be specified.
-_ERROR_XML_REQUIRES_NS_PREFIX         = The schema instance requires a namespace prefix.
-_UI_LABEL_ERROR_SCHEMA_INVALID_INFO   = The schema file contains errors. Open it in the XML schema editor for details.
-_UI_LABEL_ERROR_DTD_INVALID_INFO      = The DTD file contains errors. Open it in the DTD editor for details.
-
-_UI_LABEL_ERROR_CATALOG_ENTRY_INVALID = The selected catalog entry specifies a URI that can not be located.
-_ERROR_DOCUMENT_GENERATION_FAILURE    = Document generation failed.
-_UI_LABEL_ERROR_FILE_HAS_ERRORS       = contains errors
-
-!diagnostic strings
-! NOTE TO TRANSLATOR: Do not translate following line
-DIAGNOSTIC_SHOW_DEBUG_TREE  = NO
-
-_UI_MENU_GENERATE_XML_FROM_XSD = Generate XML ...
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/DOMObserver.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/DOMObserver.java
deleted file mode 100644
index 17aa0fd..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/DOMObserver.java
+++ /dev/null
@@ -1,190 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui;
-
-
-import java.util.Timer;
-import java.util.TimerTask;
-
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.CMDocumentLoader;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelqueryimpl.InferredGrammarBuildingCMDocumentLoader;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- * This class is used to observe changes in the DOM and perform
- * occasional'scans' to deduce information. We use a delay timer mechanism to
- * ensure scans are made every couple of seconds to avoid performance
- * problems. Currently this class is used to keep track of referenced grammar
- * uri's within the document ensure that they are loaded by the
- * CMDocumentManager. We might want to generalize this class to perform other
- * suplimental information gathering that is suitable for 'time delayed'
- * computation (error hints etc.).
- */
-// TODO: Where should this class go?
-public class DOMObserver {
-
-
-	// An abstract adapter that ensures that the children of a new Node are
-	// also adapted
-	//
-	abstract class DocumentAdapter implements INodeAdapter {
-		public DocumentAdapter(Document document) {
-			((INodeNotifier) document).addAdapter(this);
-			adapt(document.getDocumentElement());
-		}
-
-		public void adapt(Element element) {
-			if (element != null) {
-				if (((INodeNotifier) element).getExistingAdapter(this) == null) {
-					((INodeNotifier) element).addAdapter(this);
-
-					for (Node child = element.getFirstChild(); child != null; child = child.getNextSibling()) {
-						if (child.getNodeType() == Node.ELEMENT_NODE) {
-							adapt((Element) child);
-						}
-					}
-				}
-			}
-		}
-
-		public boolean isAdapterForType(Object type) {
-			return type == this;
-		}
-
-		abstract public void notifyChanged(INodeNotifier notifier, int eventType, Object feature, Object oldValue, Object newValue, int index);
-	}
-
-	/**
-	 * This class listens to the changes in the CMDocument and triggers a
-	 * CMDocument load
-	 */
-	class MyDocumentAdapter extends DocumentAdapter {
-		MyDocumentAdapter(Document document) {
-			super(document);
-		}
-
-		public void notifyChanged(INodeNotifier notifier, int eventType, Object feature, Object oldValue, Object newValue, int index) {
-			switch (eventType) {
-				case INodeNotifier.ADD : {
-					if (newValue instanceof Element) {
-						//System.out.println("ADD (to " +
-						// ((Node)notifier).getNodeName() + ") " +
-						// ((Element)newValue).getNodeName() + " old " +
-						// oldValue);
-						adapt((Element) newValue);
-					}
-					break;
-				}
-				//case INodeNotifier.REMOVE:
-				case INodeNotifier.CHANGE :
-				case INodeNotifier.STRUCTURE_CHANGED :
-				case INodeNotifier.CONTENT_CHANGED : {
-					Node node = (Node) notifier;
-					if (node.getNodeType() == Node.ELEMENT_NODE) {
-						Element element = (Element) node;
-						switch (eventType) {
-							case INodeNotifier.CHANGE : {
-								invokeDelayedCMDocumentLoad();
-								break;
-							}
-							case INodeNotifier.STRUCTURE_CHANGED : {
-								// structure change
-								invokeDelayedCMDocumentLoad();
-								break;
-							}
-							case INodeNotifier.CONTENT_CHANGED : {
-								// some content changed
-								break;
-							}
-						}
-					} else if (node.getNodeType() == Node.DOCUMENT_NODE) {
-						invokeDelayedCMDocumentLoad();
-					}
-					break;
-				}
-			}
-		}
-	}
-
-	// 
-	//
-	protected class MyTimerTask extends TimerTask {
-		public MyTimerTask() {
-			super();
-			timerTaskCount++;
-		}
-
-		public void run() {
-			timerTaskCount--;
-			if (timerTaskCount == 0) {
-				invokeCMDocumentLoad();
-			}
-		}
-	}
-
-	protected static Timer timer = new Timer(true);
-	protected Document document;
-	protected boolean isGrammarInferenceEnabled;
-	protected IStructuredModel model;
-	protected int timerTaskCount = 0;
-
-	public DOMObserver(IStructuredModel model) {
-		this.document = (model instanceof XMLModel) ? ((XMLModel) model).getDocument() : null;
-
-		if (document != null) {
-			ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-			if (modelQuery != null && modelQuery.getCMDocumentManager() != null) {
-				CMDocumentManager cmDocumentManager = modelQuery.getCMDocumentManager();
-				cmDocumentManager.setPropertyEnabled(CMDocumentManager.PROPERTY_AUTO_LOAD, false);
-			}
-
-			MyDocumentAdapter myDocumentAdapter = new MyDocumentAdapter(document);
-		}
-	}
-
-	public void init() {
-		// CS: we seem to expose an XSD initialization problem when we do this
-		// immediately
-		// very nasty... I need to revist this problem with Ed Merks
-		//
-		//invokeCMDocumentLoad();
-		invokeDelayedCMDocumentLoad();
-	}
-
-	public void invokeCMDocumentLoad() {
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-		if (modelQuery != null && modelQuery.getCMDocumentManager() != null) {
-			CMDocumentLoader loader = isGrammarInferenceEnabled ? new InferredGrammarBuildingCMDocumentLoader(document, modelQuery) : new CMDocumentLoader(document, modelQuery);
-			loader.loadCMDocuments();
-		}
-	}
-
-	public void invokeDelayedCMDocumentLoad() {
-		//Display.getCurrent().timerExec(2000, new MyTimerTask());
-		timer.schedule(new MyTimerTask(), 2000);
-	}
-
-	public void setGrammarInferenceEnabled(boolean isEnabled) {
-		isGrammarInferenceEnabled = isEnabled;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/JobStatusLineHelper.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/JobStatusLineHelper.java
deleted file mode 100644
index 4802598..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/JobStatusLineHelper.java
+++ /dev/null
@@ -1,103 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.jobs.IJobChangeEvent;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.jobs.JobChangeAdapter;
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-
-
-/**
- * Updates the status line when an appropriate Job is about to be run.
- */
-public class JobStatusLineHelper extends JobChangeAdapter {
-	private static JobStatusLineHelper instance;
-
-	public static void init() {
-		if (instance == null) {
-			instance = new JobStatusLineHelper();
-		}
-	}
-
-	private int running = 0;
-
-	private JobStatusLineHelper() {
-		Platform.getJobManager().addJobChangeListener(this);
-	}
-
-	public void aboutToRun(IJobChangeEvent event) {
-		Job job = event.getJob();
-		if (job.belongsTo(CMDocumentManager.class)) {
-			running++;
-			setStatusLine(event.getJob().getName());
-		}
-	}
-
-	public void done(IJobChangeEvent event) {
-		Job job = event.getJob();
-		if (job.belongsTo(CMDocumentManager.class)) {
-			running--;
-			if (running == 0) {
-				setStatusLine(""); //$NON-NLS-1$
-			}
-		}
-	}
-
-	private Display getDisplay() {
-		return PlatformUI.getWorkbench().getDisplay();
-	}
-
-	private void setStatusLine(final String message) {
-		String msgString = message;
-		if (message == null) {
-			msgString = ""; //$NON-NLS-1$
-		}
-		final String finalMessageForThread = msgString;
-		if (getDisplay() != null) {
-			Runnable runnable = new Runnable() {
-				public void run() {
-					IWorkbench workbench = PlatformUI.getWorkbench();
-					if (workbench != null) {
-						IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
-						if (workbenchWindow != null) {
-							IEditorPart part = workbenchWindow.getActivePage().getActiveEditor();
-							// part is sometimes null by the time this runs
-							// ... must be better way to get actionBars
-							// and/or statLineManager?
-							if (part != null) {
-								IActionBars actionBars = part.getEditorSite().getActionBars();
-								if (actionBars != null) {
-									IStatusLineManager statusLineManager = actionBars.getStatusLineManager();
-									if (statusLineManager != null) {
-										statusLineManager.setMessage(finalMessageForThread);
-									}
-								}
-							}
-						}
-					}
-				}
-			};
-			Display workbenchDefault = PlatformUI.getWorkbench().getDisplay();
-			workbenchDefault.asyncExec(runnable);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextEditorXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextEditorXML.java
deleted file mode 100644
index 00e21d2..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextEditorXML.java
+++ /dev/null
@@ -1,77 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.actions.ActionDefinitionIds;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-import org.eclipse.wst.sse.ui.internal.search.FindOccurrencesActionProvider;
-import org.eclipse.wst.xml.ui.actions.AddBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.actions.CleanupActionXML;
-import org.eclipse.wst.xml.ui.actions.RemoveBlockCommentActionXML;
-import org.eclipse.wst.xml.ui.actions.ToggleCommentActionXML;
-import org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.xml.ui.internal.search.XMLFindOccurrencesAction;
-
-public class StructuredTextEditorXML extends StructuredTextEditor {
-	protected void createActions() {
-		super.createActions();
-
-		ResourceBundle resourceBundle = SSEUIPlugin.getDefault().getResourceBundle();
-
-		Action action = new CleanupActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT, action);
-
-		/*
-		 * action = new CommentActionXML(resourceBundle,
-		 * StructuredTextEditorActionConstants.ACTION_NAME_COMMENT + DOT,
-		 * this); action.setActionDefinitionId(ActionDefinitionIds.COMMENT);
-		 * setAction(StructuredTextEditorActionConstants.ACTION_NAME_COMMENT,
-		 * action);
-		 * 
-		 * action = new UncommentActionXML(resourceBundle,
-		 * StructuredTextEditorActionConstants.ACTION_NAME_UNCOMMENT + DOT,
-		 * this); action.setActionDefinitionId(ActionDefinitionIds.UNCOMMENT);
-		 * setAction(StructuredTextEditorActionConstants.ACTION_NAME_UNCOMMENT,
-		 * action);
-		 */
-
-		action = new ToggleCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.TOGGLE_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_TOGGLE_COMMENT, action);
-
-		action = new AddBlockCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.ADD_BLOCK_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT, action);
-
-		action = new RemoveBlockCommentActionXML(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT + DOT, this);
-		action.setActionDefinitionId(ActionDefinitionIds.REMOVE_BLOCK_COMMENT);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT, action);
-
-		FindOccurrencesActionProvider foAction = new FindOccurrencesActionProvider(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES + DOT, this);
-		foAction.addAction(new XMLFindOccurrencesAction(resourceBundle, "", this)); //$NON-NLS-1$
-		foAction.setActionDefinitionId(ActionDefinitionIds.FIND_OCCURRENCES);
-		setAction(StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES, foAction);
-		markAsSelectionDependentAction(StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES, true);
-	}
-
-	protected void initializeEditor() {
-		super.initializeEditor();
-		setHelpContextId(IHelpContextIds.XML_SOURCEVIEW_HELPID);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextViewerConfigurationXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextViewerConfigurationXML.java
deleted file mode 100644
index aa45193..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextViewerConfigurationXML.java
+++ /dev/null
@@ -1,295 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.IAutoEditStrategy;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextDoubleClickStrategy;
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.jface.text.contentassist.ContentAssistant;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jface.text.contentassist.IContentAssistant;
-import org.eclipse.jface.text.formatter.IContentFormatter;
-import org.eclipse.jface.text.formatter.MultiPassContentFormatter;
-import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
-import org.eclipse.jface.text.information.IInformationPresenter;
-import org.eclipse.jface.text.information.IInformationProvider;
-import org.eclipse.jface.text.information.InformationPresenter;
-import org.eclipse.jface.text.reconciler.IReconciler;
-import org.eclipse.jface.text.reconciler.IReconcilingStrategy;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredPartitions;
-import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration;
-import org.eclipse.wst.sse.ui.format.StructuredFormattingStrategy;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor;
-import org.eclipse.wst.sse.ui.preferences.CommonEditorPreferenceNames;
-import org.eclipse.wst.sse.ui.style.IHighlighter;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-import org.eclipse.wst.sse.ui.taginfo.AnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.ProblemAnnotationHoverProcessor;
-import org.eclipse.wst.sse.ui.taginfo.TextHoverManager;
-import org.eclipse.wst.sse.ui.util.EditorUtility;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.wst.xml.core.internal.text.rules.StructuredTextPartitionerForXML;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-import org.eclipse.wst.xml.ui.contentassist.NoRegionContentAssistProcessor;
-import org.eclipse.wst.xml.ui.contentassist.XMLContentAssistProcessor;
-import org.eclipse.wst.xml.ui.doubleclick.XMLDoubleClickStrategy;
-import org.eclipse.wst.xml.ui.internal.autoedit.StructuredAutoEditStrategyXML;
-import org.eclipse.wst.xml.ui.internal.correction.CorrectionProcessorXML;
-import org.eclipse.wst.xml.ui.internal.hyperlink.XMLHyperlinkDetector;
-import org.eclipse.wst.xml.ui.reconcile.StructuredTextReconcilingStrategyForMarkup;
-import org.eclipse.wst.xml.ui.style.LineStyleProviderForXML;
-import org.eclipse.wst.xml.ui.taginfo.XMLBestMatchHoverProcessor;
-import org.eclipse.wst.xml.ui.taginfo.XMLInformationProvider;
-import org.eclipse.wst.xml.ui.taginfo.XMLTagInfoHoverProcessor;
-
-/**
- * This class provides
- * @since 1.0
- */
-public class StructuredTextViewerConfigurationXML extends StructuredTextViewerConfiguration {
-    
-	InformationPresenter fInformationPresenter = null;
-
-	public StructuredTextViewerConfigurationXML() {
-		super();
-	}
-	
-	public StructuredTextViewerConfigurationXML(IPreferenceStore store) {
-		super(store);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAutoEditStrategies(org.eclipse.jface.text.source.ISourceViewer, java.lang.String)
-	 */
-	public IAutoEditStrategy[] getAutoEditStrategies(ISourceViewer sourceViewer, String contentType) {
-		List allStrategies = new ArrayList(0);
-		
-		IAutoEditStrategy[] superStrategies = super.getAutoEditStrategies(sourceViewer, contentType);
-		for (int i = 0; i < superStrategies.length; i++) {
-			allStrategies.add(superStrategies[i]);
-		}
-		
-		if (contentType == IXMLPartitions.XML_DEFAULT) {
-			allStrategies.add(new StructuredAutoEditStrategyXML());
-		}
-
-		return (IAutoEditStrategy[]) allStrategies.toArray(new IAutoEditStrategy[0]);
-	}
-
-	public String[] getConfiguredContentTypes(ISourceViewer sourceViewer) {
-
-		if (configuredContentTypes == null) {
-			String[] xmlTypes = StructuredTextPartitionerForXML.getConfiguredContentTypes();
-			configuredContentTypes = new String[xmlTypes.length + 2];
-			configuredContentTypes[0] = IStructuredPartitions.DEFAULT_PARTITION;
-			configuredContentTypes[1] = IStructuredPartitions.UNKNOWN_PARTITION;
-			int index = 0;
-			System.arraycopy(xmlTypes, 0, configuredContentTypes, index += 2, xmlTypes.length);
-		}
-		return configuredContentTypes;
-	}
-
-	public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {
-
-		IContentAssistant ca = super.getContentAssistant(sourceViewer);
-		if (ca != null && ca instanceof ContentAssistant) {
-			ContentAssistant contentAssistant = (ContentAssistant) ca;
-			IContentAssistProcessor xmlContentAssistProcessor = new XMLContentAssistProcessor();
-			IContentAssistProcessor noRegionProcessor = new NoRegionContentAssistProcessor();
-			setContentAssistProcessor(contentAssistant, xmlContentAssistProcessor, IStructuredPartitions.DEFAULT_PARTITION);
-			setContentAssistProcessor(contentAssistant, xmlContentAssistProcessor, IXMLPartitions.XML_DEFAULT);
-			setContentAssistProcessor(contentAssistant, noRegionProcessor, IStructuredPartitions.UNKNOWN_PARTITION);
-		}
-		return ca;
-	}
-
-	public IContentFormatter getContentFormatter(ISourceViewer sourceViewer) {
-		final MultiPassContentFormatter formatter = new MultiPassContentFormatter(getConfiguredDocumentPartitioning(sourceViewer), IXMLPartitions.XML_DEFAULT);
-
-		formatter.setMasterStrategy(new StructuredFormattingStrategy(new FormatProcessorXML()));
-
-		return formatter;
-	}
-
-	public IContentAssistant getCorrectionAssistant(ISourceViewer sourceViewer) {
-		IContentAssistant ca = super.getCorrectionAssistant(sourceViewer);
-
-		if (ca != null && ca instanceof ContentAssistant) {
-			ContentAssistant correctionAssistant = (ContentAssistant) ca;
-			ITextEditor editor = getTextEditor();
-			if (editor != null) {
-				IContentAssistProcessor correctionProcessor = new CorrectionProcessorXML(editor);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_DEFAULT);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_CDATA);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_COMMENT);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_DECLARATION);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.XML_PI);
-				correctionAssistant.setContentAssistProcessor(correctionProcessor, IXMLPartitions.DTD_SUBSET);
-			}
-		}
-		return ca;
-	}
-
-	public ITextDoubleClickStrategy getDoubleClickStrategy(ISourceViewer sourceViewer, String contentType) {
-
-		ITextDoubleClickStrategy doubleClickStrategy = null;
-		if (contentType.compareTo(IXMLPartitions.XML_DEFAULT) == 0)
-			doubleClickStrategy = new XMLDoubleClickStrategy();
-		else
-			doubleClickStrategy = super.getDoubleClickStrategy(sourceViewer, contentType);
-		return doubleClickStrategy;
-	}
-
-	public IHighlighter getHighlighter(ISourceViewer sourceViewer) {
-
-		IHighlighter highlighter = super.getHighlighter(sourceViewer);
-		if (highlighter != null) {
-			LineStyleProvider xmlProvider = new LineStyleProviderForXML();
-			highlighter.addProvider(IXMLPartitions.XML_DEFAULT, xmlProvider);
-			highlighter.addProvider(IXMLPartitions.XML_CDATA, xmlProvider);
-			highlighter.addProvider(IXMLPartitions.XML_COMMENT, xmlProvider);
-			highlighter.addProvider(IXMLPartitions.XML_DECLARATION, xmlProvider);
-			highlighter.addProvider(IXMLPartitions.XML_PI, xmlProvider);
-		}
-		return highlighter;
-	}
-
-	public IInformationPresenter getInformationPresenter(ISourceViewer sourceViewer) {
-
-		if (fInformationPresenter == null) {
-			fInformationPresenter = new InformationPresenter(getInformationPresenterControlCreator(sourceViewer));
-			IInformationProvider xmlInformationProvider = new XMLInformationProvider();
-			fInformationPresenter.setInformationProvider(xmlInformationProvider, IStructuredPartitions.DEFAULT_PARTITION);
-			fInformationPresenter.setInformationProvider(xmlInformationProvider, IXMLPartitions.XML_DEFAULT);
-			fInformationPresenter.setSizeConstraints(60, 10, true, true);
-		}
-		return fInformationPresenter;
-	}
-
-	public IReconciler getReconciler(ISourceViewer sourceViewer) {
-
-		if (fReconciler != null) {
-			// a reconciler should always be installed or disposed of
-			if (!fReconciler.isInstalled()) {
-				fReconciler = null;
-			}
-		}
-
-		if (fReconciler == null) {
-            fReconciler = new StructuredRegionProcessor();
-			fReconciler.setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer));
-		}
-
-		boolean reconcilingEnabled = fPreferenceStore.getBoolean(CommonEditorPreferenceNames.EVALUATE_TEMPORARY_PROBLEMS);
-		
-        if(!reconcilingEnabled)
-            return fReconciler;
-        
-		// the second time through, the strategies are set
-		if (fReconciler != null) {
-
-			IDocument doc = ((StructuredTextEditor)editorPart).getDocumentProvider().getDocument(editorPart.getEditorInput());
-			IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(doc);
-			
-			try {
-
-				if (sModel != null) {
-					
-					IReconcilingStrategy markupStrategy = new StructuredTextReconcilingStrategyForMarkup((ITextEditor) editorPart);
-                    fReconciler.setReconcilingStrategy(markupStrategy, IXMLPartitions.XML_DEFAULT);
-					fReconciler.setDefaultStrategy(markupStrategy);
-
-					String contentTypeId = sModel.getContentTypeIdentifier();
-					if(contentTypeId != null)
-						fReconciler.setValidatorStrategy(createValidatorStrategy(contentTypeId));
-				}
-			} finally {
-				if (sModel != null)
-					sModel.releaseFromRead();
-			}
-		}
-		return fReconciler;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getTextHover(org.eclipse.jface.text.source.ISourceViewer,
-	 *      java.lang.String, int)
-	 */
-	public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) {
-		// look for appropriate text hover processor to return based on
-		// content type and state mask
-		if ((contentType == IStructuredPartitions.DEFAULT_PARTITION) || (contentType == IXMLPartitions.XML_DEFAULT)) {
-			// check which of xml's text hover is handling stateMask
-			TextHoverManager.TextHoverDescriptor[] hoverDescs = getTextHovers();
-			int i = 0;
-			while (i < hoverDescs.length) {
-				if (hoverDescs[i].isEnabled() && EditorUtility.computeStateMask(hoverDescs[i].getModifierString()) == stateMask) {
-					String hoverType = hoverDescs[i].getId();
-					if (TextHoverManager.COMBINATION_HOVER.equalsIgnoreCase(hoverType))
-						return new XMLBestMatchHoverProcessor();
-					else if (TextHoverManager.PROBLEM_HOVER.equalsIgnoreCase(hoverType))
-						return new ProblemAnnotationHoverProcessor();
-					else if (TextHoverManager.ANNOTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new AnnotationHoverProcessor();
-					else if (TextHoverManager.DOCUMENTATION_HOVER.equalsIgnoreCase(hoverType))
-						return new XMLTagInfoHoverProcessor();
-				}
-				i++;
-			}
-		}
-		return super.getTextHover(sourceViewer, contentType, stateMask);
-	}
-
-	public void unConfigure(ISourceViewer viewer) {
-
-		super.unConfigure(viewer);
-
-		// InformationPresenters
-		if (fInformationPresenter != null) {
-			fInformationPresenter.uninstall();
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.editors.text.TextSourceViewerConfiguration#getHyperlinkDetectors(org.eclipse.jface.text.source.ISourceViewer)
-	 */
-	public IHyperlinkDetector[] getHyperlinkDetectors(ISourceViewer sourceViewer) {
-		if (sourceViewer == null || !fPreferenceStore.getBoolean(AbstractDecoratedTextEditorPreferenceConstants.EDITOR_HYPERLINKS_ENABLED))
-			return null;
-		
-		List allDetectors = new ArrayList(0);
-		allDetectors.add(new XMLHyperlinkDetector());
-		
-		IHyperlinkDetector[] superDetectors =  super.getHyperlinkDetectors(sourceViewer);
-		for (int m = 0; m < superDetectors.length; m++) {
-			IHyperlinkDetector detector = superDetectors[m];
-			if (!allDetectors.contains(detector)) {
-				allDetectors.add(detector);
-			}
-		}
-		return (IHyperlinkDetector[]) allDetectors.toArray(new IHyperlinkDetector[0]);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/XMLEditorPlugin.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/XMLEditorPlugin.java
deleted file mode 100644
index 155f50f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/XMLEditorPlugin.java
+++ /dev/null
@@ -1,23 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui;
-
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-
-/**
- * @deprecated use XMLUIPlugin instead
- */
-public class XMLEditorPlugin extends XMLUIPlugin {
-	// just extending XMLUIPlugin to keep everything compatible
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/XMLSpellCheckTarget.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/XMLSpellCheckTarget.java
deleted file mode 100644
index af0e1a5..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/XMLSpellCheckTarget.java
+++ /dev/null
@@ -1,41 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui;
-
-import org.eclipse.wst.sse.ui.internal.SpellCheckTargetImpl;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-/**
- * @deprecated - to be removed in M4
- */
-
-public class XMLSpellCheckTarget extends SpellCheckTargetImpl {
-
-	public XMLSpellCheckTarget() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.SpellCheckTargetImpl#isValidType(java.lang.String)
-	 */
-	protected boolean isValidType(String type) {
-		boolean valid = false;
-		if (XMLRegionContext.XML_COMMENT_TEXT.equals(type) || XMLRegionContext.XML_CONTENT.equals(type)) {
-			valid = true;
-		}
-		return valid || super.isValidType(type);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/AbstractNodeActionManager.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/AbstractNodeActionManager.java
deleted file mode 100644
index c2b54e3..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/AbstractNodeActionManager.java
+++ /dev/null
@@ -1,666 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDescriptionBuilder;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMContentBuilder;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMContentBuilderImpl;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.CMImageUtil;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.ProcessingInstruction;
-
-public abstract class AbstractNodeActionManager extends BaseNodeActionManager {
-
-
-	/**
-	 * AddNodeAction
-	 */
-	public class AddNodeAction extends NodeAction {
-		protected CMNode cmnode;
-		protected String description;
-		protected int index;
-		protected int nodeType;
-		protected Node parent;
-		protected String undoDescription;
-
-
-		public AddNodeAction(CMNode cmnode, Node parent, int index) {
-			this.cmnode = cmnode;
-			this.parent = parent;
-			this.index = index;
-
-			String text = getLabel(parent, cmnode);
-			setText(text);
-			description = text;
-			undoDescription = XMLUIPlugin.getResourceString("%_UI_MENU_ADD") + " " + text; //$NON-NLS-1$ //$NON-NLS-2$
-			ImageDescriptor descriptor = CMImageUtil.getImageDescriptor(cmnode);
-			if (descriptor == null) {
-				descriptor = imageDescriptorCache.getImageDescriptor(cmnode);
-			}
-			setImageDescriptor(descriptor);
-		}
-
-
-		public AddNodeAction(int nodeType, Node parent, int index) {
-			this.nodeType = nodeType;
-			this.index = index;
-			this.parent = parent;
-
-			switch (nodeType) {
-				case Node.COMMENT_NODE : {
-					description = XMLUIPlugin.getResourceString("%_UI_MENU_COMMENT"); //$NON-NLS-1$
-					undoDescription = XMLUIPlugin.getResourceString("%_UI_MENU_ADD_COMMENT"); //$NON-NLS-1$
-					break;
-				}
-				case Node.PROCESSING_INSTRUCTION_NODE : {
-					description = XMLUIPlugin.getResourceString("%_UI_MENU_PROCESSING_INSTRUCTION"); //$NON-NLS-1$
-					undoDescription = XMLUIPlugin.getResourceString("%_UI_MENU_ADD_PROCESSING_INSTRUCTION"); //$NON-NLS-1$
-					break;
-				}
-				case Node.CDATA_SECTION_NODE : {
-					description = XMLUIPlugin.getResourceString("%_UI_MENU_CDATA_SECTION"); //$NON-NLS-1$
-					undoDescription = XMLUIPlugin.getResourceString("%_UI_MENU_ADD_CDATA_SECTION"); //$NON-NLS-1$
-					break;
-				}
-				case Node.TEXT_NODE : {
-					description = XMLUIPlugin.getResourceString("%_UI_MENU_PCDATA"); //$NON-NLS-1$
-					undoDescription = XMLUIPlugin.getResourceString("%_UI_MENU_ADD_PCDATA"); //$NON-NLS-1$
-					break;
-				}
-			}
-			setText(description);
-			setImageDescriptor(imageDescriptorCache.getImageDescriptor(new Integer(nodeType)));
-		}
-
-
-		protected void addNodeForCMNode() {
-			if (parent != null) {
-				insert(parent, cmnode, index);
-			}
-		}
-
-
-		protected void addNodeForNodeType() {
-			Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();
-			Node newChildNode = null;
-			boolean format = true;
-			switch (nodeType) {
-				case Node.COMMENT_NODE : {
-					newChildNode = document.createComment(XMLUIPlugin.getResourceString("%_UI_COMMENT_VALUE")); //$NON-NLS-1$
-					break;
-				}
-				case Node.PROCESSING_INSTRUCTION_NODE : {
-					newChildNode = document.createProcessingInstruction(XMLUIPlugin.getResourceString("%_UI_PI_TARGET_VALUE"), XMLUIPlugin.getResourceString("%_UI_PI_DATA_VALUE")); //$NON-NLS-1$ //$NON-NLS-2$
-					break;
-				}
-				case Node.CDATA_SECTION_NODE : {
-					newChildNode = document.createCDATASection(""); //$NON-NLS-1$
-					break;
-				}
-				case Node.TEXT_NODE : {
-					format = false;
-					newChildNode = document.createTextNode(parent.getNodeName());
-					break;
-				}
-			}
-
-			if (newChildNode != null) {
-				List list = new Vector(1);
-				list.add(newChildNode);
-				insertNodesAtIndex(parent, list, index, format);
-			}
-		}
-
-
-		public String getUndoDescription() {
-			return undoDescription;
-		}
-
-
-		public void run() {
-			beginNodeAction(this);
-			if (cmnode != null) {
-				addNodeForCMNode();
-			} else {
-				addNodeForNodeType();
-			}
-			endNodeAction(this);
-		}
-	}
-
-
-	/**
-	 * DeleteAction
-	 */
-	public class DeleteAction extends NodeAction {
-		protected List list;
-
-		public DeleteAction(List list) {
-			setText(XMLUIPlugin.getResourceString("%_UI_MENU_REMOVE")); //$NON-NLS-1$
-			this.list = list;
-		}
-
-		public DeleteAction(Node node) {
-			setText(XMLUIPlugin.getResourceString("%_UI_MENU_REMOVE")); //$NON-NLS-1$
-			list = new Vector();
-			list.add(node);
-		}
-
-		public String getUndoDescription() {
-			return XMLUIPlugin.getResourceString("%DELETE"); //$NON-NLS-1$
-		}
-
-		public void run() {
-			beginNodeAction(this);
-
-			for (Iterator i = list.iterator(); i.hasNext();) {
-				Node node = (Node) i.next();
-				if (node.getNodeType() == Node.ATTRIBUTE_NODE) {
-					Attr attr = (Attr) node;
-					attr.getOwnerElement().removeAttributeNode(attr);
-				} else {
-					Node parent = node.getParentNode();
-					if (parent != null) {
-						Node previousSibling = node.getPreviousSibling();
-						if (previousSibling != null && isWhitespaceTextNode(previousSibling)) {
-							parent.removeChild(previousSibling);
-						}
-						parent.removeChild(node);
-					}
-				}
-			}
-
-			endNodeAction(this);
-		}
-	}
-
-
-	class ImageDescriptorCache {
-		protected ImageDescriptor attributeImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);
-		protected ImageDescriptor attributeReqImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ATT_REQ_OBJ);
-		protected ImageDescriptor cdataSectionImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_CDATASECTION);
-		protected ImageDescriptor commentImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_COMMENT);
-		protected ImageDescriptor elementImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);
-		protected ImageDescriptor piImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_PROCESSINGINSTRUCTION);
-		protected ImageDescriptor textImage = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_TXTEXT);
-
-		public ImageDescriptor getImageDescriptor(Object object) {
-			ImageDescriptor result = null;
-			if (object instanceof CMNode) {
-				CMNode cmnode = (CMNode) object;
-				switch (cmnode.getNodeType()) {
-					case CMNode.ATTRIBUTE_DECLARATION : {
-						result = CMImageUtil.getImageDescriptor(cmnode);
-						if (result == null)
-							if (((CMAttributeDeclaration) cmnode).getUsage() == CMAttributeDeclaration.REQUIRED)
-								result = attributeReqImage;
-							else
-								result = attributeImage;
-						break;
-					}
-					case CMNode.DATA_TYPE : {
-						result = textImage;
-						break;
-					}
-					case CMNode.ELEMENT_DECLARATION : {
-						result = CMImageUtil.getImageDescriptor(cmnode);
-						if (result == null)
-							result = elementImage;
-						break;
-					}
-					case CMNode.GROUP : {
-						result = elementImage;
-						break;
-					}
-				}
-			} else if (object instanceof Integer) {
-				Integer integer = (Integer) object;
-				switch (integer.intValue()) {
-					case Node.COMMENT_NODE : {
-						result = commentImage;
-						break;
-					}
-					case Node.PROCESSING_INSTRUCTION_NODE : {
-						result = piImage;
-						break;
-					}
-					case Node.CDATA_SECTION_NODE : {
-						result = cdataSectionImage;
-						break;
-					}
-					case Node.TEXT_NODE : {
-						result = textImage;
-						break;
-					}
-				}
-			}
-			return result;
-		}
-	}
-
-	// TODO... remove this class. I'm pretty sure it is no longer used by
-	// anyone.
-	/**
-	 * @depracated
-	 */
-	public class InsertAction extends NodeAction {
-		protected String description;
-		protected int index;
-		protected int nodeType;
-		protected Node parent;
-
-		public InsertAction(int nodeType, Node parent, int index) {
-			this.nodeType = nodeType;
-			this.index = index;
-			this.parent = parent;
-			switch (nodeType) {
-				case Node.COMMENT_NODE : {
-					description = XMLUIPlugin.getResourceString("%_UI_MENU_COMMENT"); //$NON-NLS-1$
-					break;
-				}
-				case Node.PROCESSING_INSTRUCTION_NODE : {
-					description = XMLUIPlugin.getResourceString("%_UI_MENU_PROCESSING_INSTRUCTION"); //$NON-NLS-1$
-					break;
-				}
-				case Node.CDATA_SECTION_NODE : {
-					description = XMLUIPlugin.getResourceString("%_UI_MENU_CDATA_SECTION"); //$NON-NLS-1$
-					break;
-				}
-				case Node.TEXT_NODE : {
-					description = XMLUIPlugin.getResourceString("%_UI_MENU_PCDATA"); //$NON-NLS-1$
-					break;
-				}
-			}
-			setText(description);
-			setImageDescriptor(imageDescriptorCache.getImageDescriptor(new Integer(nodeType)));
-		}
-
-		public InsertAction(int nodeType, Node parent, int index, String title) {
-			this.nodeType = nodeType;
-			this.index = index;
-			this.parent = parent;
-			description = title;
-			setText(description);
-			setImageDescriptor(imageDescriptorCache.getImageDescriptor(new Integer(nodeType)));
-		}
-
-		public String getUndoDescription() {
-			return XMLUIPlugin.getResourceString("%_UI_MENU_ADD") + " " + description; //$NON-NLS-1$ //$NON-NLS-2$
-		}
-
-		public void run() {
-			beginNodeAction(this);
-
-			Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();
-			Node newChildNode = null;
-			boolean format = true;
-			switch (nodeType) {
-				case Node.COMMENT_NODE : {
-					newChildNode = document.createComment(XMLUIPlugin.getResourceString("%_UI_COMMENT_VALUE")); //$NON-NLS-1$
-					break;
-				}
-				case Node.PROCESSING_INSTRUCTION_NODE : {
-					newChildNode = document.createProcessingInstruction(XMLUIPlugin.getResourceString("%_UI_PI_TARGET_VALUE"), XMLUIPlugin.getResourceString("%_UI_PI_DATA_VALUE")); //$NON-NLS-1$ //$NON-NLS-2$
-					break;
-				}
-				case Node.CDATA_SECTION_NODE : {
-					newChildNode = document.createCDATASection(""); //$NON-NLS-1$
-					break;
-				}
-				case Node.TEXT_NODE : {
-					format = false;
-					newChildNode = document.createTextNode(parent.getNodeName());
-					break;
-				}
-			}
-
-			if (newChildNode != null) {
-				List list = new Vector(1);
-				list.add(newChildNode);
-				insertNodesAtIndex(parent, list, index, format);
-			}
-
-			endNodeAction(this);
-		}
-	}
-
-
-	/**
-	 * ReplaceNodeAction
-	 */
-	public class ReplaceNodeAction extends NodeAction {
-		protected CMNode cmnode;
-		protected String description;
-		protected int endIndex;
-		protected Node parent;
-		protected int startIndex;
-
-
-		public ReplaceNodeAction(Node parent, CMNode cmnode, int startIndex, int endIndex) {
-			this.parent = parent;
-			this.cmnode = cmnode;
-			this.startIndex = startIndex;
-			this.endIndex = endIndex;
-
-			setText(getLabel(parent, cmnode));
-			setImageDescriptor(imageDescriptorCache.getImageDescriptor(cmnode));
-		}
-
-		public String getUndoDescription() {
-			String result = XMLUIPlugin.getResourceString("%_UI_LABEL_UNDO_REPLACE_DESCRIPTION"); //$NON-NLS-1$
-			result += " " + getLabel(parent, cmnode); //$NON-NLS-1$
-			return result;
-		}
-
-		public void run() {
-			beginNodeAction(this);
-
-			if (parent != null && cmnode != null) {
-				remove(parent, startIndex, endIndex);
-				insert(parent, cmnode, startIndex);
-			}
-			endNodeAction(this);
-		}
-	}
-
-	protected ImageDescriptorCache imageDescriptorCache = new ImageDescriptorCache();
-	protected Viewer viewer;
-
-	public AbstractNodeActionManager(IStructuredModel model, ModelQuery modelQuery, Viewer viewer) {
-		super(model, modelQuery);
-		this.viewer = viewer;
-	}
-
-
-	public void beginNodeAction(NodeAction action) {
-		model.beginRecording(action, action.getUndoDescription());
-	}
-
-
-	protected Action createAddAttributeAction(Element parent, CMAttributeDeclaration ad) {
-		Action action = null;
-		if (ad == null) {
-			action = new EditAttributeAction(this, parent, null, XMLUIPlugin.getResourceString("%_UI_MENU_NEW_ATTRIBUTE"), XMLUIPlugin.getResourceString("%_UI_MENU_NEW_ATTRIBUTE_TITLE")); //$NON-NLS-1$ //$NON-NLS-2$
-		} else {
-			action = new AddNodeAction(ad, parent, -1);
-		}
-		return action;
-	}
-
-
-	protected Action createAddCDataSectionAction(Node parent, int index) {
-		return new AddNodeAction(Node.CDATA_SECTION_NODE, parent, index);
-	}
-
-
-	protected Action createAddCommentAction(Node parent, int index) {
-		return new AddNodeAction(Node.COMMENT_NODE, parent, index);
-	}
-
-
-	protected Action createAddDoctypeAction(Document document, int index) {
-		return new EditDoctypeAction(model, document, model.getBaseLocation(), XMLUIPlugin.getResourceString("%_UI_MENU_ADD_DTD_INFORMATION")); //$NON-NLS-1$
-	}
-
-
-	protected Action createAddElementAction(Node parent, CMElementDeclaration ed, int index) {
-		Action action = null;
-		if (ed == null) {
-			action = new EditElementAction(this, parent, index, XMLUIPlugin.getResourceString("%_UI_MENU_NEW_ELEMENT"), XMLUIPlugin.getResourceString("%_UI_MENU_NEW_ELEMENT_TITLE")); //$NON-NLS-1$ //$NON-NLS-2$
-		} else {
-			action = new AddNodeAction(ed, parent, index);
-		}
-		return action;
-	}
-
-
-	protected Action createAddPCDataAction(Node parent, CMDataType dataType, int index) {
-		Action action = null;
-		if (dataType == null) {
-			action = new AddNodeAction(Node.TEXT_NODE, parent, index);
-		} else {
-			action = new AddNodeAction(dataType, parent, index);
-		}
-		return action;
-	}
-
-
-	protected Action createAddProcessingInstructionAction(Node parent, int index) {
-		Node refChild = getRefChildNodeAtIndex(parent, index);
-		Action action = new EditProcessingInstructionAction(this, parent, refChild, XMLUIPlugin.getResourceString("%_UI_MENU_ADD_PROCESSING_INSTRUCTION"), XMLUIPlugin.getResourceString("%ADD_PROCESSING_INSTRUCTION")); //$NON-NLS-1$ //$NON-NLS-2$
-		action.setImageDescriptor(imageDescriptorCache.getImageDescriptor(new Integer(Node.PROCESSING_INSTRUCTION_NODE)));
-		return action;
-	}
-
-
-	protected Action createAddSchemaInfoAction(Element element) {
-		return new EditSchemaInfoAction(this, element.getOwnerDocument(), model.getBaseLocation(), XMLUIPlugin.getResourceString("%_UI_MENU_ADD_SCHEMA_INFORMATION")); //$NON-NLS-1$
-	}
-
-
-	protected Action createDeleteAction(List selection) {
-		DeleteAction deleteAction = new DeleteAction(selection);
-		deleteAction.setEnabled(selection.size() > 0);
-		return deleteAction;
-	}
-
-
-	public DOMContentBuilder createDOMContentBuilder(Document document) {
-		DOMContentBuilderImpl builder = new DOMContentBuilderImpl(document);
-		return builder;
-	}
-
-
-	protected Action createEditAttributeAction(Attr attr, CMAttributeDeclaration ad) {
-		return new EditAttributeAction(this, attr.getOwnerElement(), attr, XMLUIPlugin.getResourceString("%_UI_MENU_EDIT_ATTRIBUTE"), XMLUIPlugin.getResourceString("%_UI_MENU_EDIT_ATTRIBUTE_TITLE")); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-
-	protected Action createEditDoctypeAction(DocumentType doctype) {
-		return new EditDoctypeAction(model, doctype, model.getBaseLocation(), XMLUIPlugin.getResourceString("%_UI_MENU_EDIT_DOCTYPE")); //$NON-NLS-1$
-	}
-
-
-	protected Action createEditProcessingInstructionAction(ProcessingInstruction pi) {
-		return new EditProcessingInstructionAction(this, pi, XMLUIPlugin.getResourceString("%_UI_MENU_EDIT_PROCESSING_INSTRUCTION"), XMLUIPlugin.getResourceString("%_UI_MENU_EDIT_PROCESSING_INSTRUCTION_TITLE")); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-
-	protected Action createEditSchemaInfoAction(Element element) {
-		return new EditSchemaInfoAction(this, element.getOwnerDocument(), model.getBaseLocation(), XMLUIPlugin.getResourceString("%_UI_MENU_EDIT_NAMESPACES")); //$NON-NLS-1$
-	}
-
-
-	protected Action createRenameAction(Node node) {
-		Action result = null;
-		if (node instanceof Element) {
-			result = new EditElementAction(this, (Element) node, XMLUIPlugin.getResourceString("%_UI_MENU_RENAME"), XMLUIPlugin.getResourceString("%_UI_MENU_RENAME_TITLE")); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		return result;
-	}
-
-
-	protected Action createReplaceAction(Node parent, CMNode cmnode, int startIndex, int endIndex) {
-		return new ReplaceNodeAction(parent, cmnode, startIndex, endIndex);
-	}
-
-	public void endNodeAction(NodeAction action) {
-		model.endRecording(action);
-	}
-
-
-
-	public void fillContextMenu(IMenuManager menuManager, ISelection selection) {
-		try {
-			List selectionList = new ArrayList();
-			if (selection instanceof IStructuredSelection) {
-				IStructuredSelection es = (IStructuredSelection) selection;
-				for (Iterator i = es.iterator(); i.hasNext();) {
-					selectionList.add(i.next());
-				}
-			}
-
-			contributeActions(menuManager, selectionList);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 *  
-	 */
-	public String getLabel(Node parent, CMNode cmnode) {
-		String result = "?" + cmnode + "?"; //$NON-NLS-1$ //$NON-NLS-2$
-		if (cmnode != null) {
-			result = (String) cmnode.getProperty("description"); //$NON-NLS-1$
-			if (result == null) {
-				if (cmnode.getNodeType() == CMNode.GROUP) {
-					CMDescriptionBuilder descriptionBuilder = new CMDescriptionBuilder();
-					result = descriptionBuilder.buildDescription(cmnode);
-				} else {
-					result = DOMNamespaceHelper.computeName(cmnode, parent, null);
-				}
-			}
-		}
-		return result;
-	}
-
-
-	public IStructuredModel getModel() {
-		return model;
-	}
-
-
-	public Shell getWorkbenchWindowShell() {
-		return XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-	}
-
-
-	public void insert(Node parent, CMNode cmnode, int index) {
-		Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();
-		DOMContentBuilder builder = createDOMContentBuilder(document);
-		builder.setBuildPolicy(DOMContentBuilder.BUILD_ONLY_REQUIRED_CONTENT);
-		builder.build(parent, cmnode);
-		insertNodesAtIndex(parent, builder.getResult(), index);
-	}
-
-
-	public void insertNodesAtIndex(Node parent, List list, int index) {
-		insertNodesAtIndex(parent, list, index, true);
-	}
-
-
-	public void insertNodesAtIndex(Node parent, List list, int index, boolean format) {
-		NodeList nodeList = parent.getChildNodes();
-		if (index == -1) {
-			index = nodeList.getLength();
-		}
-		Node refChild = (index < nodeList.getLength()) ? nodeList.item(index) : null;
-
-		// here we consider the case where the previous node is a 'white
-		// space' Text node
-		// we should really do the insert before this node
-		//
-		int prevIndex = index - 1;
-		Node prevChild = (prevIndex < nodeList.getLength()) ? nodeList.item(prevIndex) : null;
-		if (isWhitespaceTextNode(prevChild)) {
-			refChild = prevChild;
-		}
-
-		for (Iterator i = list.iterator(); i.hasNext();) {
-			Node newNode = (Node) i.next();
-
-			if (newNode.getNodeType() == Node.ATTRIBUTE_NODE) {
-				Element parentElement = (Element) parent;
-				parentElement.setAttributeNode((Attr) newNode);
-			} else {
-				parent.insertBefore(newNode, refChild);
-			}
-		}
-
-		boolean formatDeep = false;
-		for (Iterator i = list.iterator(); i.hasNext();) {
-			Node newNode = (Node) i.next();
-			if (newNode.getNodeType() == Node.ELEMENT_NODE) {
-				formatDeep = true;
-			}
-
-			if (format) {
-				reformat(newNode, formatDeep);
-			}
-		}
-
-		setViewerSelection(list);
-	}
-
-
-	/**
-	 * This method is abstract since currently, the sed editor is required to
-	 * perform formating and we don't want to create a dependency on the sed
-	 * editor.
-	 */
-	public abstract void reformat(Node parent, boolean deep);
-
-
-	public void remove(Node parent, int startIndex, int endIndex) {
-		NodeList nodeList = parent.getChildNodes();
-		for (int i = endIndex; i >= startIndex; i--) {
-			Node node = nodeList.item(i);
-			if (node != null) {
-				parent.removeChild(node);
-			}
-		}
-	}
-
-
-	public void setViewerSelection(List list) {
-		if (viewer != null) {
-			viewer.setSelection(new StructuredSelection(list), true);
-		}
-	}
-
-
-	public void setViewerSelection(Node node) {
-		if (viewer != null) {
-			viewer.setSelection(new StructuredSelection(node), true);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ActionContributorXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ActionContributorXML.java
deleted file mode 100644
index 34c2b2a..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ActionContributorXML.java
+++ /dev/null
@@ -1,206 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;
-import org.eclipse.ui.texteditor.RetargetTextEditorAction;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.actions.ActionContributor;
-import org.eclipse.wst.sse.ui.internal.actions.ActionDefinitionIds;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-
-/**
- * XMLEditorActionContributor
- * 
- * This class should not be used inside multi page editor's
- * ActionBarContributor, since cascaded init() call from the
- * ActionBarContributor will causes exception and it leads to lose whole
- * toolbars.
- * 
- * Instead, use SourcePageActionContributor for source page contributor of
- * multi page editor.
- * 
- * Note that this class is still valid for single page editor.
- */
-public class ActionContributorXML extends ActionContributor {
-	private static final String[] EDITOR_IDS = {"org.eclipse.wst.xml.ui.StructuredTextEditorXML", "org.eclipse.wst.sse.ui.StructuredTextEditor"}; //$NON-NLS-1$ //$NON-NLS-2$
-	protected RetargetTextEditorAction fCleanupDocument = null;
-	protected RetargetTextEditorAction fComment = null;
-	// tooltip
-	// action
-	protected RetargetTextEditorAction fContentAssist = null;
-	// action
-	protected RetargetTextEditorAction fFindOccurrences = null;
-	protected RetargetTextEditorAction fFormatActiveElements = null;
-	protected RetargetTextEditorAction fFormatDocument = null;
-	protected MenuManager fFormatMenu = null;
-	protected RetargetTextEditorAction fOpenFileAction = null; // open file
-	protected RetargetTextEditorAction fQuickFix = null;
-
-	protected RetargetTextEditorAction fShowTooltipAction = null; // show
-	protected RetargetTextEditorAction fUncomment = null;
-
-	public ActionContributorXML() {
-		super();
-
-		ResourceBundle resourceBundle = SSEUIPlugin.getDefault().getResourceBundle();
-
-		// edit commands
-		fShowTooltipAction = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_INFORMATION + StructuredTextEditorActionConstants.DOT);
-		fShowTooltipAction.setActionDefinitionId(ActionDefinitionIds.INFORMATION);
-
-		fContentAssist = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_CONTENTASSIST_PROPOSALS + StructuredTextEditorActionConstants.DOT);
-		fContentAssist.setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS);
-
-		fQuickFix = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_QUICK_FIX + StructuredTextEditorActionConstants.DOT);
-		fQuickFix.setActionDefinitionId(ActionDefinitionIds.QUICK_FIX);
-
-		// source commands
-		fCleanupDocument = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT + StructuredTextEditorActionConstants.DOT);
-		fCleanupDocument.setActionDefinitionId(ActionDefinitionIds.CLEANUP_DOCUMENT);
-
-		fFormatDocument = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_FORMAT_DOCUMENT + StructuredTextEditorActionConstants.DOT);
-		fFormatDocument.setActionDefinitionId(ActionDefinitionIds.FORMAT_DOCUMENT);
-
-		fFormatActiveElements = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_FORMAT_ACTIVE_ELEMENTS + StructuredTextEditorActionConstants.DOT);
-		fFormatActiveElements.setActionDefinitionId(ActionDefinitionIds.FORMAT_ACTIVE_ELEMENTS);
-
-		fFormatMenu = new MenuManager(SSEUIPlugin.getResourceString("%FormatMenu.label")); //$NON-NLS-1$
-		fFormatMenu.add(fFormatDocument);
-		fFormatMenu.add(fFormatActiveElements);
-
-		// navigate commands
-		fOpenFileAction = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_OPEN_FILE + StructuredTextEditorActionConstants.DOT);
-		fOpenFileAction.setActionDefinitionId(ActionDefinitionIds.OPEN_FILE);
-
-		fFindOccurrences = new RetargetTextEditorAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES + StructuredTextEditorActionConstants.DOT);
-		fFindOccurrences.setActionDefinitionId(ActionDefinitionIds.FIND_OCCURRENCES);
-	}
-
-	protected void addToMenu(IMenuManager menu) {
-		// edit commands
-		IMenuManager editMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT);
-		if (editMenu != null) {
-			editMenu.add(fCommandsSeparator);
-			editMenu.add(fToggleInsertModeAction);
-			editMenu.add(fCommandsSeparator);
-			editMenu.add(fExpandSelectionToMenu);
-			editMenu.add(fCommandsSeparator);
-			editMenu.add(fShowTooltipAction);
-			editMenu.add(fContentAssist);
-			editMenu.add(fQuickFix);
-			editMenu.add(fMenuAdditionsGroupMarker);
-		}
-
-		// source commands
-		String sourceMenuLabel = SSEUIPlugin.getResourceString("%SourceMenu.label"); //$NON-NLS-1$
-		String sourceMenuId = "sourceMenuId"; // This is just a menu id. No
-		// need to translate.
-		// //$NON-NLS-1$
-		IMenuManager sourceMenu = new MenuManager(sourceMenuLabel, sourceMenuId);
-		menu.insertAfter(IWorkbenchActionConstants.M_EDIT, sourceMenu);
-		if (sourceMenu != null) {
-			sourceMenu.add(fCommandsSeparator);
-			sourceMenu.add(fToggleComment);
-			sourceMenu.add(fAddBlockComment);
-			sourceMenu.add(fRemoveBlockComment);
-			sourceMenu.add(fShiftRight);
-			sourceMenu.add(fShiftLeft);
-			sourceMenu.add(fCleanupDocument);
-			sourceMenu.add(fFormatMenu);
-			sourceMenu.add(fCommandsSeparator);
-			sourceMenu.add(fFindOccurrences);
-		}
-
-		// navigate commands
-		IMenuManager navigateMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.M_NAVIGATE);
-		if (navigateMenu != null) {
-			navigateMenu.appendToGroup(IWorkbenchActionConstants.OPEN_EXT, fCommandsSeparator);
-			navigateMenu.appendToGroup(IWorkbenchActionConstants.OPEN_EXT, fOpenFileAction);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.edit.util.ActionContributor#getExtensionIDs()
-	 */
-	protected String[] getExtensionIDs() {
-		return EDITOR_IDS;
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorActionBarContributor#setActiveEditor(IEditorPart)
-	 */
-	public void setActiveEditor(IEditorPart activeEditor) {
-		if (getActiveEditorPart() == activeEditor)
-			return;
-		super.setActiveEditor(activeEditor);
-
-		IActionBars actionBars = getActionBars();
-		if (actionBars != null) {
-			IStatusLineManager statusLineManager = actionBars.getStatusLineManager();
-			if (statusLineManager != null) {
-				statusLineManager.setMessage(null);
-				statusLineManager.setErrorMessage(null);
-			}
-		}
-
-		ITextEditor textEditor = getTextEditor(activeEditor);
-
-		fShowTooltipAction.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_INFORMATION));
-		fContentAssist.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_CONTENTASSIST_PROPOSALS));
-		fQuickFix.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_QUICK_FIX));
-
-		fCleanupDocument.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_CLEANUP_DOCUMENT));
-		fFormatDocument.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_FORMAT_DOCUMENT));
-		fFormatActiveElements.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_FORMAT_ACTIVE_ELEMENTS));
-		fCleanupDocument.setEnabled(textEditor != null && textEditor.isEditable());
-		fFormatDocument.setEnabled(textEditor != null && textEditor.isEditable());
-		fFormatActiveElements.setEnabled(textEditor != null && textEditor.isEditable());
-
-		fOpenFileAction.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_OPEN_FILE));
-
-		fFindOccurrences.setAction(getAction(textEditor, StructuredTextEditorActionConstants.ACTION_NAME_FIND_OCCURRENCES));
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.ISourceViewerActionBarContributor#setViewerSpecificContributionsEnabled(boolean)
-	 */
-	public void setViewerSpecificContributionsEnabled(boolean enabled) {
-		super.setViewerSpecificContributionsEnabled(enabled);
-
-		fShowTooltipAction.setEnabled(enabled);
-		fContentAssist.setEnabled(enabled);
-		fQuickFix.setEnabled(enabled);
-		// cleanup and format document actions do not rely on source viewer
-		// being enabled
-		//		fCleanupDocument.setEnabled(enabled);
-		//		fFormatDocument.setEnabled(enabled);
-
-		fFormatActiveElements.setEnabled(enabled);
-		fOpenFileAction.setEnabled(enabled);
-		fFindOccurrences.setEnabled(enabled);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/AddBlockCommentActionXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/AddBlockCommentActionXML.java
deleted file mode 100644
index 1122621..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/AddBlockCommentActionXML.java
+++ /dev/null
@@ -1,67 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-import org.eclipse.wst.xml.core.internal.document.CommentImpl;
-
-public class AddBlockCommentActionXML extends CommentActionXML {
-	protected int fCloseCommentOffset;
-	protected int fOpenCommentOffset;
-	protected IndexedRegion fSelectionEndIndexedRegion;
-	protected IndexedRegion fSelectionStartIndexedRegion;
-
-	public AddBlockCommentActionXML(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	protected void init() {
-		super.init();
-
-		fSelectionStartIndexedRegion = fModel.getIndexedRegion(fSelectionStartOffset);
-		fSelectionEndIndexedRegion = fModel.getIndexedRegion(fSelectionEndOffset);
-
-		if (fSelectionStartIndexedRegion == null || fSelectionEndIndexedRegion == null)
-			return;
-
-		fOpenCommentOffset = fSelectionStartIndexedRegion.getStartOffset();
-		fCloseCommentOffset = fSelectionEndIndexedRegion.getEndOffset() + OPEN_COMMENT.length();
-	}
-
-	protected void processAction() {
-		if (fSelection.getLength() == 0 && fSelectionStartIndexedRegion instanceof CommentImpl)
-			return;
-
-		fModel.beginRecording(this, SSEUIPlugin.getResourceString(StructuredTextEditorActionConstants.ACTION_NAME_ADD_BLOCK_COMMENT + ".tooltip")); //$NON-NLS-1$
-		fModel.aboutToChangeModel();
-
-		try {
-			fDocument.replace(fOpenCommentOffset, 0, OPEN_COMMENT);
-			fDocument.replace(fCloseCommentOffset, 0, CLOSE_COMMENT);
-			removeOpenCloseComments(fOpenCommentOffset + OPEN_COMMENT.length(), fCloseCommentOffset - fOpenCommentOffset - CLOSE_COMMENT.length());
-		}
-		catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException();
-		}
-
-		fModel.changedModel();
-		fModel.endRecording(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/BaseNodeActionManager.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/BaseNodeActionManager.java
deleted file mode 100644
index 0d5e2f1..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/BaseNodeActionManager.java
+++ /dev/null
@@ -1,514 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryAction;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.ProcessingInstruction;
-
-public abstract class BaseNodeActionManager {
-
-
-	/**
-	 * MyMenuManager
-	 */
-	public static class MyMenuManager extends MenuManager {
-		protected String title;
-
-		public MyMenuManager(String s) {
-			super(s);
-			title = s;
-		}
-
-		public boolean isEnabled() {
-			return !isEmpty();
-		}
-
-		public String toString() {
-			return title;
-		}
-	}
-
-	public static DocumentType getDoctype(Node node) {
-		Document document = (node.getNodeType() == Node.DOCUMENT_NODE) ? (Document) node : node.getOwnerDocument();
-		return document.getDoctype();
-	}
-
-	protected MenuBuilder menuBuilder = new MenuBuilder();
-	protected IStructuredModel model;
-	protected ModelQuery modelQuery;
-
-	protected BaseNodeActionManager(IStructuredModel model, ModelQuery modelQuery) {
-		this.model = model;
-		this.modelQuery = modelQuery;
-	}
-
-
-	protected void addActionHelper(IMenuManager menu, List modelQueryActionList) {
-		List actionList = new Vector();
-		for (Iterator i = modelQueryActionList.iterator(); i.hasNext();) {
-			ModelQueryAction action = (ModelQueryAction) i.next();
-			if (action.getCMNode() != null) {
-				int cmNodeType = action.getCMNode().getNodeType();
-				if (action.getKind() == ModelQueryAction.INSERT) {
-					switch (cmNodeType) {
-						case CMNode.ATTRIBUTE_DECLARATION : {
-							actionList.add(createAddAttributeAction((Element) action.getParent(), (CMAttributeDeclaration) action.getCMNode()));
-							break;
-						}
-						case CMNode.ELEMENT_DECLARATION : {
-							actionList.add(createAddElementAction(action.getParent(), (CMElementDeclaration) action.getCMNode(), action.getStartIndex()));
-							break;
-						}
-					}
-				} else if (action.getKind() == ModelQueryAction.REPLACE) {
-					if (action.getParent() != null && action.getCMNode() != null) {
-						actionList.add(createReplaceAction(action.getParent(), action.getCMNode(), action.getStartIndex(), action.getEndIndex()));
-					}
-				}
-			}
-		}
-		menuBuilder.populateMenu(menu, actionList, false);
-	}
-
-	protected void contributeAction(IMenuManager menu, Action action) {
-		if (action != null) {
-			menu.add(action);
-		}
-	}
-
-
-	public void contributeActions(IMenuManager menu, List selection) {
-		int editMode = modelQuery.getEditMode();
-		int ic = (editMode == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) ? ModelQuery.INCLUDE_CHILD_NODES | ModelQuery.INCLUDE_SEQUENCE_GROUPS : ModelQuery.INCLUDE_CHILD_NODES;
-		int vc = (editMode == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) ? ModelQuery.VALIDITY_STRICT : ModelQuery.VALIDITY_NONE;
-
-		List implicitlySelectedNodeList = null;
-
-		if (selection.size() > 0) {
-			implicitlySelectedNodeList = getSelectedNodes(selection, true);
-
-			// contribute delete actions
-			contributeDeleteActions(menu, implicitlySelectedNodeList, ic, vc);
-		}
-
-		if (selection.size() == 1) {
-			Node node = (Node) selection.get(0);
-
-			// contribute edit actions
-			contributeEditActions(menu, node);
-
-			// contribute add child actions
-			contributeAddChildActions(menu, node, ic, vc);
-
-			// contribute add before actions
-			contributeAddSiblingActions(menu, node, ic, vc);
-		}
-
-		if (selection.size() > 0) {
-			// contribute replace actions
-			contributeReplaceActions(menu, implicitlySelectedNodeList, ic, vc);
-		}
-
-		if (selection.size() == 0) {
-			Document document = ((XMLModel) model).getDocument();
-			contributeAddDocumentChildActions(menu, document, ic, vc);
-			contributeEditGrammarInformationActions(menu, document);
-		}
-	}
-
-
-	protected void contributeAddChildActions(IMenuManager menu, Node node, int ic, int vc) {
-		int nodeType = node.getNodeType();
-
-		if (nodeType == Node.ELEMENT_NODE) {
-			// 'Add Child...' and 'Add Attribute...' actions
-			//
-			Element element = (Element) node;
-
-			IMenuManager addAttributeMenu = new MyMenuManager(XMLUIPlugin.getResourceString("%_UI_MENU_ADD_ATTRIBUTE")); //$NON-NLS-1$
-			IMenuManager addChildMenu = new MyMenuManager(XMLUIPlugin.getResourceString("%_UI_MENU_ADD_CHILD")); //$NON-NLS-1$
-			menu.add(addAttributeMenu);
-			menu.add(addChildMenu);
-
-			CMElementDeclaration ed = modelQuery.getCMElementDeclaration(element);
-			if (ed != null) {
-				// add insert attribute actions
-				//
-				List modelQueryActionList = new ArrayList();
-				modelQuery.getInsertActions(element, ed, -1, ModelQuery.INCLUDE_ATTRIBUTES, vc, modelQueryActionList);
-				addActionHelper(addAttributeMenu, modelQueryActionList);
-
-				// add insert child node actions
-				//
-				modelQueryActionList = new ArrayList();
-				modelQuery.getInsertActions(element, ed, -1, ic, vc, modelQueryActionList);
-				addActionHelper(addChildMenu, modelQueryActionList);
-			}
-
-			// add PI and COMMENT
-			contributePIAndCommentActions(addChildMenu, element, ed, -1);
-
-			// add PCDATA, CDATA_SECTION
-			contributeTextNodeActions(addChildMenu, element, ed, -1);
-
-			// add NEW ELEMENT
-			contributeUnconstrainedAddElementAction(addChildMenu, element, ed, -1);
-
-			// add ATTRIBUTE
-			contributeUnconstrainedAttributeActions(addAttributeMenu, element, ed);
-		}
-	}
-
-
-	protected void contributeAddDocumentChildActions(IMenuManager menu, Document document, int ic, int vc) {
-		IMenuManager addChildMenu = new MyMenuManager(XMLUIPlugin.getResourceString("%_UI_MENU_ADD_CHILD")); //$NON-NLS-1$
-		menu.add(addChildMenu);
-
-		// add PI and COMMENT
-		contributePIAndCommentActions(addChildMenu, document, -1);
-
-		// add NEW ELEMENT
-		contributeUnconstrainedAddElementAction(addChildMenu, document, -1);
-	}
-
-
-	protected void contributeAddSiblingActions(IMenuManager menu, Node node, int ic, int vc) {
-		IMenuManager addBeforeMenu = new MyMenuManager(XMLUIPlugin.getResourceString("%_UI_MENU_ADD_BEFORE")); //$NON-NLS-1$
-		IMenuManager addAfterMenu = new MyMenuManager(XMLUIPlugin.getResourceString("%_UI_MENU_ADD_AFTER")); //$NON-NLS-1$
-		menu.add(addBeforeMenu);
-		menu.add(addAfterMenu);
-
-		Node parentNode = node.getParentNode();
-		if (parentNode != null) {
-			int index = getIndex(parentNode, node);
-			if (parentNode.getNodeType() == Node.ELEMENT_NODE) {
-				Element parentElement = (Element) parentNode;
-				CMElementDeclaration parentED = modelQuery.getCMElementDeclaration(parentElement);
-				if (parentED != null) {
-					// 'Add Before...' and 'Add After...' actions
-					//
-					List modelQueryActionList = new ArrayList();
-					modelQuery.getInsertActions(parentElement, parentED, index, ic, vc, modelQueryActionList);
-					addActionHelper(addBeforeMenu, modelQueryActionList);
-
-					modelQueryActionList = new ArrayList();
-					modelQuery.getInsertActions(parentElement, parentED, index + 1, ic, vc, modelQueryActionList);
-					addActionHelper(addAfterMenu, modelQueryActionList);
-				}
-
-				// add COMMENT and PI before and after
-				contributePIAndCommentActions(addBeforeMenu, parentElement, parentED, index);
-				contributePIAndCommentActions(addAfterMenu, parentElement, parentED, index + 1);
-
-				// add PCDATA, CDATA_SECTION before and after
-				contributeTextNodeActions(addBeforeMenu, parentElement, parentED, index);
-				contributeTextNodeActions(addAfterMenu, parentElement, parentED, index + 1);
-
-				// add NEW ELEMENT before and after
-				contributeUnconstrainedAddElementAction(addBeforeMenu, parentElement, parentED, index);
-				contributeUnconstrainedAddElementAction(addAfterMenu, parentElement, parentED, index + 1);
-			} else if (parentNode.getNodeType() == Node.DOCUMENT_NODE) {
-				Document document = (Document) parentNode;
-				CMDocument cmDocument = modelQuery.getCorrespondingCMDocument(parentNode);
-				if (cmDocument != null) {
-					// add possible root element insertions
-					//        
-					List modelQueryActionList = new ArrayList();
-					modelQuery.getInsertActions(document, cmDocument, index, ic, vc, modelQueryActionList);
-					addActionHelper(addAfterMenu, modelQueryActionList);
-
-					modelQueryActionList = new ArrayList();
-					modelQuery.getInsertActions(document, cmDocument, index + 1, ic, vc, modelQueryActionList);
-					addActionHelper(addAfterMenu, modelQueryActionList);
-				}
-
-				// add COMMENT and PI before and after
-				contributePIAndCommentActions(addBeforeMenu, document, index);
-				contributePIAndCommentActions(addAfterMenu, document, index + 1);
-
-				// add ELEMENT before and after
-				contributeUnconstrainedAddElementAction(addBeforeMenu, document, index);
-				contributeUnconstrainedAddElementAction(addAfterMenu, document, index + 1);
-			}
-		}
-	}
-
-	protected void contributeDeleteActions(IMenuManager menu, List list, int ic, int vc) {
-		boolean canRemove = modelQuery.canRemove(list, vc);
-
-
-		// a delete action with an empty list will produce a disabled menu
-		// item
-		//
-		List resultList = canRemove ? list : Collections.EMPTY_LIST;
-		contributeAction(menu, createDeleteAction(resultList));
-	}
-
-
-	protected void contributeEditActions(IMenuManager menu, Node node) {
-		contributeEditGrammarInformationActions(menu, node);
-
-		if (node.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE) {
-			contributeAction(menu, createEditProcessingInstructionAction((ProcessingInstruction) node));
-		} else if (node.getNodeType() == Node.ATTRIBUTE_NODE) {
-			contributeAction(menu, createEditAttributeAction((Attr) node, null));
-		}
-	}
-
-
-	protected void contributeEditGrammarInformationActions(IMenuManager menu, Node node) {
-		Document document = node.getNodeType() == Node.DOCUMENT_NODE ? (Document) node : node.getOwnerDocument();
-
-		DocumentType doctype = getDoctype(node);
-		if (doctype == null) {
-			contributeAction(menu, createAddDoctypeAction(document, -1));
-		}
-
-		if (node.getNodeType() == Node.DOCUMENT_TYPE_NODE) {
-			contributeAction(menu, createEditDoctypeAction((DocumentType) node));
-		}
-
-		if (doctype == null && getRootElement(document) != null) {
-			contributeAction(menu, createEditSchemaInfoAction(getRootElement(document)));
-		}
-	}
-
-	protected void contributePIAndCommentActions(IMenuManager menu, Document document, int index) {
-		// test to make sure that the index isn't before the XML declaration
-		// 
-		contributeAction(menu, createAddCommentAction(document, index));
-		contributeAction(menu, createAddProcessingInstructionAction(document, index));
-	}
-
-
-	protected void contributePIAndCommentActions(IMenuManager menu, Element parentElement, CMElementDeclaration parentEd, int index) {
-		if (parentEd == null || isCommentAllowed(parentEd)) {
-			contributeAction(menu, createAddCommentAction(parentElement, index));
-			contributeAction(menu, createAddProcessingInstructionAction(parentElement, index));
-		}
-	}
-
-
-	protected void contributeReplaceActions(IMenuManager menu, List selectedNodeList, int ic, int vc) {
-		// 'Replace With...' actions
-		//                                                                                                                   
-		IMenuManager replaceWithMenu = new MyMenuManager(XMLUIPlugin.getResourceString("%_UI_MENU_REPLACE_WITH")); //$NON-NLS-1$
-		menu.add(replaceWithMenu);
-
-		if (modelQuery.getEditMode() == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT && selectedNodeList.size() > 0) {
-			Node node = (Node) selectedNodeList.get(0);
-			Node parentNode = node.getParentNode();
-			if (parentNode != null && parentNode.getNodeType() == Node.ELEMENT_NODE) {
-				Element parentElement = (Element) parentNode;
-				CMElementDeclaration parentED = modelQuery.getCMElementDeclaration(parentElement);
-				if (parentED != null) {
-					List replaceActionList = new Vector();
-					modelQuery.getReplaceActions(parentElement, parentED, selectedNodeList, ic, vc, replaceActionList);
-					addActionHelper(replaceWithMenu, replaceActionList);
-				}
-			}
-		}
-	}
-
-	protected void contributeTextNodeActions(IMenuManager menu, Element parentElement, CMElementDeclaration parentEd, int index) {
-		if (parentEd == null || isTextAllowed(parentEd)) {
-			CMDataType dataType = parentEd != null ? parentEd.getDataType() : null;
-			contributeAction(menu, createAddPCDataAction(parentElement, dataType, index));
-			contributeAction(menu, createAddCDataSectionAction(parentElement, index));
-		}
-	}
-
-
-	protected void contributeUnconstrainedAddElementAction(IMenuManager menu, Document document, int index) {
-		if (isUnconstrainedActionAllowed()) {
-			if (getRootElement(document) == null) {
-				int xmlDeclarationIndex = -1;
-				int doctypeIndex = -1;
-				NodeList nodeList = document.getChildNodes();
-				int nodeListLength = nodeList.getLength();
-				for (int i = 0; i < nodeListLength; i++) {
-					Node node = nodeList.item(i);
-					int nodeType = node.getNodeType();
-					if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-						doctypeIndex = i;
-						break;
-					} else if (nodeType == Node.PROCESSING_INSTRUCTION_NODE) {
-						ProcessingInstruction pi = (ProcessingInstruction) node;
-						if (pi.getTarget().equalsIgnoreCase("xml") && xmlDeclarationIndex == -1) { //$NON-NLS-1$
-							xmlDeclarationIndex = i;
-						}
-					}
-				}
-
-				if ((xmlDeclarationIndex == -1 || index > xmlDeclarationIndex) && (doctypeIndex == -1 || index > doctypeIndex)) {
-					contributeAction(menu, createAddElementAction(document, null, index));
-				}
-			}
-		}
-	}
-
-
-	protected void contributeUnconstrainedAddElementAction(IMenuManager menu, Element parentElement, CMElementDeclaration parentEd, int index) {
-		if (isUnconstrainedActionAllowed()) {
-			if (parentEd == null || parentEd.getProperty("isInferred") == Boolean.TRUE || (modelQuery.getEditMode() != ModelQuery.EDIT_MODE_CONSTRAINED_STRICT && isElementAllowed(parentEd))) { //$NON-NLS-1$
-				contributeAction(menu, createAddElementAction(parentElement, null, index));
-			}
-		}
-	}
-
-
-	protected void contributeUnconstrainedAttributeActions(IMenuManager menu, Element parentElement, CMElementDeclaration parentEd) {
-		if (isUnconstrainedActionAllowed()) {
-			if (parentEd == null || parentEd.getProperty("isInferred") == Boolean.TRUE || modelQuery.getEditMode() != ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) { //$NON-NLS-1$
-				contributeAction(menu, createAddAttributeAction(parentElement, null));
-			}
-		}
-	}
-
-	abstract protected Action createAddAttributeAction(Element parent, CMAttributeDeclaration ad);
-
-	abstract protected Action createAddCDataSectionAction(Node parent, int index);
-
-	abstract protected Action createAddCommentAction(Node parent, int index);
-
-	abstract protected Action createAddDoctypeAction(Document parent, int index);
-
-	abstract protected Action createAddElementAction(Node parent, CMElementDeclaration ed, int index);
-
-	abstract protected Action createAddPCDataAction(Node parent, CMDataType dataType, int index);
-
-	abstract protected Action createAddProcessingInstructionAction(Node parent, int index);
-
-	abstract protected Action createAddSchemaInfoAction(Element element);
-
-	abstract protected Action createDeleteAction(List selection);
-
-	abstract protected Action createEditAttributeAction(Attr attribute, CMAttributeDeclaration ad);
-
-	abstract protected Action createEditDoctypeAction(DocumentType doctype);
-
-	abstract protected Action createEditProcessingInstructionAction(ProcessingInstruction pi);
-
-	abstract protected Action createEditSchemaInfoAction(Element element);
-
-	abstract protected Action createRenameAction(Node node);
-
-	abstract protected Action createReplaceAction(Node parent, CMNode cmnode, int startIndex, int endIndex);
-
-
-	public int getIndex(Node parentNode, Node child) {
-		NodeList nodeList = parentNode.getChildNodes();
-		int index = -1;
-		int size = nodeList.getLength();
-		for (int i = 0; i < size; i++) {
-			if (nodeList.item(i) == child) {
-				index = i;
-				break;
-			}
-		}
-		return index;
-	}
-
-
-	public Node getRefChildNodeAtIndex(Node parent, int index) {
-		NodeList nodeList = parent.getChildNodes();
-		Node refChild = (index >= 0 && index < nodeList.getLength()) ? nodeList.item(index) : null;
-		return refChild;
-	}
-
-
-	protected Element getRootElement(Document document) {
-		Element result = null;
-		NodeList nodeList = document.getChildNodes();
-		int nodeListLength = nodeList.getLength();
-		for (int i = 0; i < nodeListLength; i++) {
-			Node node = nodeList.item(i);
-			if (node.getNodeType() == Node.ELEMENT_NODE) {
-				result = (Element) node;
-				break;
-			}
-		}
-		return result;
-	}
-
-
-	protected List getSelectedNodes(List list, boolean includeTextNodes) {
-		List result = new ArrayList(0);
-		for (Iterator i = list.iterator(); i.hasNext();) {
-			Object object = i.next();
-			if (object instanceof Node) {
-				Node node = (Node) object;
-				if (node.getNodeType() == Node.TEXT_NODE) {
-					if (includeTextNodes) {
-						result.add(object);
-					}
-				} else {
-					result.add(node);
-				}
-			}
-		}
-		return result;
-	}
-
-
-	protected boolean isCommentAllowed(CMElementDeclaration parentEd) {
-		int contentType = parentEd.getContentType();
-		return contentType == CMElementDeclaration.ELEMENT || contentType == CMElementDeclaration.MIXED || contentType == CMElementDeclaration.PCDATA || contentType == CMElementDeclaration.ANY;
-	}
-
-
-	protected boolean isElementAllowed(CMElementDeclaration parentEd) {
-		int contentType = parentEd.getContentType();
-		return contentType == CMElementDeclaration.ELEMENT || contentType == CMElementDeclaration.MIXED || contentType == CMElementDeclaration.ANY;
-	}
-
-
-	protected boolean isTextAllowed(CMElementDeclaration parentEd) {
-		int contentType = parentEd.getContentType();
-		return contentType == CMElementDeclaration.MIXED || contentType == CMElementDeclaration.PCDATA || contentType == CMElementDeclaration.ANY;
-	}
-
-
-	protected boolean isUnconstrainedActionAllowed() {
-		return true;
-	}
-
-
-	protected boolean isWhitespaceTextNode(Node node) {
-		return (node != null) && (node.getNodeType() == Node.TEXT_NODE) && (node.getNodeValue().trim().length() == 0);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CleanupActionXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CleanupActionXML.java
deleted file mode 100644
index d0ab7e2..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CleanupActionXML.java
+++ /dev/null
@@ -1,45 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.internal.cleanup.IStructuredCleanupProcessor;
-import org.eclipse.wst.sse.ui.internal.actions.CleanupAction;
-import org.eclipse.wst.xml.core.internal.cleanup.CleanupProcessorXML;
-
-
-public class CleanupActionXML extends CleanupAction {
-	protected IStructuredCleanupProcessor fCleanupProcessor;
-
-	public CleanupActionXML(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	protected Dialog getCleanupDialog(Shell shell) {
-		if (fCleanupDialog == null)
-			fCleanupDialog = new CleanupDialogXML(shell);
-
-		return fCleanupDialog;
-	}
-
-	protected IStructuredCleanupProcessor getCleanupProcessor() {
-		if (fCleanupProcessor == null)
-			fCleanupProcessor = new CleanupProcessorXML();
-
-		return fCleanupProcessor;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CleanupDialogXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CleanupDialogXML.java
deleted file mode 100644
index f4dd831..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CleanupDialogXML.java
+++ /dev/null
@@ -1,197 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds;
-
-public class CleanupDialogXML extends Dialog implements SelectionListener {
-	protected Button fCheckBoxCompressEmptyElementTags;
-	protected Button fCheckBoxConvertEOLCodes;
-	protected Button fCheckBoxFormatSource;
-	protected Button fCheckBoxInsertMissingTags;
-	protected Button fCheckBoxInsertRequiredAttrs;
-	protected Button fCheckBoxQuoteAttrValues;
-	protected IStructuredModel fModel = null;
-	protected Preferences fPreferences = null;
-	protected Button fRadioButtonAttrNameCaseAsis;
-	protected Button fRadioButtonAttrNameCaseLower;
-	protected Button fRadioButtonAttrNameCaseUpper;
-	protected Button fRadioButtonConvertEOLMac;
-	protected Button fRadioButtonConvertEOLUnix;
-	protected Button fRadioButtonConvertEOLWindows;
-
-	protected Button fRadioButtonTagNameCaseAsis;
-	protected Button fRadioButtonTagNameCaseLower;
-	protected Button fRadioButtonTagNameCaseUpper;
-
-	public CleanupDialogXML(Shell shell) {
-
-		super(shell);
-	}
-
-	public Control createDialogArea(Composite parent) {
-
-		getShell().setText(SSEUIPlugin.getResourceString("%Cleanup_UI_")); //$NON-NLS-1$ = "Cleanup"
-		Composite composite = new Composite(parent, SWT.NULL);
-		createDialogAreaInComposite(composite);
-		initializeOptions();
-		return composite;
-	}
-
-	protected void createDialogAreaInComposite(Composite composite) {
-
-		WorkbenchHelp.setHelp(composite, IHelpContextIds.CLEANUP_XML_HELPID); // use
-		// XML
-		// specific
-		// help
-
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 1;
-		layout.makeColumnsEqualWidth = true;
-		composite.setLayout(layout);
-
-		// Compress empty element tags
-		fCheckBoxCompressEmptyElementTags = new Button(composite, SWT.CHECK);
-		fCheckBoxCompressEmptyElementTags.setText(SSEUIPlugin.getResourceString("%Compress_empty_element_tags_UI_")); //$NON-NLS-1$
-		fCheckBoxCompressEmptyElementTags.addSelectionListener(this);
-
-		// Insert missing required attrs
-		fCheckBoxInsertRequiredAttrs = new Button(composite, SWT.CHECK);
-		fCheckBoxInsertRequiredAttrs.setText(SSEUIPlugin.getResourceString("%Insert_required_attributes_UI_")); //$NON-NLS-1$
-		fCheckBoxInsertRequiredAttrs.addSelectionListener(this);
-
-		// Insert missing begin/end tags
-		fCheckBoxInsertMissingTags = new Button(composite, SWT.CHECK);
-		fCheckBoxInsertMissingTags.setText(SSEUIPlugin.getResourceString("%Insert_missing_tags_UI_")); //$NON-NLS-1$ = "Insert missing tags"
-		fCheckBoxInsertMissingTags.addSelectionListener(this);
-
-		// Quote attribute values
-		fCheckBoxQuoteAttrValues = new Button(composite, SWT.CHECK);
-		fCheckBoxQuoteAttrValues.setText(SSEUIPlugin.getResourceString("%Quote_attribute_values_UI_")); //$NON-NLS-1$ = "Quote attribute values"
-		fCheckBoxQuoteAttrValues.addSelectionListener(this);
-
-		// Format source
-		fCheckBoxFormatSource = new Button(composite, SWT.CHECK);
-		fCheckBoxFormatSource.setText(SSEUIPlugin.getResourceString("%Format_source_UI_")); //$NON-NLS-1$ = "Format source"
-		fCheckBoxFormatSource.addSelectionListener(this);
-
-		// Convert EOL code
-		fCheckBoxConvertEOLCodes = new Button(composite, SWT.CHECK);
-		fCheckBoxConvertEOLCodes.setText(SSEUIPlugin.getResourceString("%Convert_EOL_codes_UI_")); //$NON-NLS-1$ = "Convert end-of-line codes"
-		fCheckBoxConvertEOLCodes.addSelectionListener(this);
-		Composite EOLCodes = new Composite(composite, SWT.NULL);
-		GridLayout hLayout = new GridLayout();
-		hLayout.numColumns = 3;
-		EOLCodes.setLayout(hLayout);
-		fRadioButtonConvertEOLWindows = new Button(EOLCodes, SWT.RADIO);
-		fRadioButtonConvertEOLWindows.setText(SSEUIPlugin.getResourceString("%EOL_Windows_UI")); //$NON-NLS-1$ = "Windows"
-		fRadioButtonConvertEOLWindows.addSelectionListener(this);
-		fRadioButtonConvertEOLUnix = new Button(EOLCodes, SWT.RADIO);
-		fRadioButtonConvertEOLUnix.setText(SSEUIPlugin.getResourceString("%EOL_Unix_UI")); //$NON-NLS-1$ = "Unix"
-		fRadioButtonConvertEOLUnix.addSelectionListener(this);
-		fRadioButtonConvertEOLMac = new Button(EOLCodes, SWT.RADIO);
-		fRadioButtonConvertEOLMac.setText(SSEUIPlugin.getResourceString("%EOL_Mac_UI")); //$NON-NLS-1$ = "Mac"
-		fRadioButtonConvertEOLMac.addSelectionListener(this);
-	}
-
-	protected void enableEOLCodeRadios(boolean enable) {
-
-		if ((fRadioButtonConvertEOLWindows != null) && (fRadioButtonConvertEOLUnix != null) && (fRadioButtonConvertEOLMac != null)) {
-			fRadioButtonConvertEOLWindows.setEnabled(enable);
-			fRadioButtonConvertEOLUnix.setEnabled(enable);
-			fRadioButtonConvertEOLMac.setEnabled(enable);
-			if (!fRadioButtonConvertEOLWindows.getSelection() && !fRadioButtonConvertEOLUnix.getSelection() && !fRadioButtonConvertEOLMac.getSelection())
-				fRadioButtonConvertEOLWindows.setSelection(true);
-		}
-	}
-
-	protected Preferences getModelPreferences() {
-		return XMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	protected void initializeOptions() {
-
-		fCheckBoxCompressEmptyElementTags.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS));
-		fCheckBoxInsertRequiredAttrs.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.INSERT_REQUIRED_ATTRS));
-		fCheckBoxInsertMissingTags.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.INSERT_MISSING_TAGS));
-		fCheckBoxQuoteAttrValues.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.QUOTE_ATTR_VALUES));
-		fCheckBoxFormatSource.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.FORMAT_SOURCE));
-		fCheckBoxConvertEOLCodes.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.CONVERT_EOL_CODES));
-		String EOLCode = getModelPreferences().getString(CommonModelPreferenceNames.CLEANUP_EOL_CODE);
-		if (EOLCode.compareTo(CommonEncodingPreferenceNames.LF) == 0)
-			fRadioButtonConvertEOLUnix.setSelection(true);
-		else if (EOLCode.compareTo(CommonEncodingPreferenceNames.CR) == 0)
-			fRadioButtonConvertEOLMac.setSelection(true);
-		else
-			fRadioButtonConvertEOLWindows.setSelection(true);
-		enableEOLCodeRadios(fCheckBoxConvertEOLCodes.getSelection());
-	}
-
-	protected void okPressed() {
-
-		storeOptions();
-		super.okPressed();
-	}
-
-	public void setModel(IStructuredModel model) {
-
-		fModel = model;
-	}
-
-	protected void storeOptions() {
-
-		getModelPreferences().setValue(CommonModelPreferenceNames.COMPRESS_EMPTY_ELEMENT_TAGS, fCheckBoxCompressEmptyElementTags.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.INSERT_REQUIRED_ATTRS, fCheckBoxInsertRequiredAttrs.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.INSERT_MISSING_TAGS, fCheckBoxInsertMissingTags.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.QUOTE_ATTR_VALUES, fCheckBoxQuoteAttrValues.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.FORMAT_SOURCE, fCheckBoxFormatSource.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.CONVERT_EOL_CODES, fCheckBoxConvertEOLCodes.getSelection());
-		if (fRadioButtonConvertEOLUnix.getSelection()) {
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.LF);
-		} else if (fRadioButtonConvertEOLMac.getSelection()) {
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.CR);
-		} else {
-			getModelPreferences().setValue(CommonModelPreferenceNames.CLEANUP_EOL_CODE, CommonEncodingPreferenceNames.CRLF);
-		}
-		// explicitly save plugin preferences so values are stored
-		XMLCorePlugin.getDefault().savePluginPreferences();
-	}
-
-	public void widgetDefaultSelected(SelectionEvent e) {
-
-		widgetSelected(e);
-	}
-
-	public void widgetSelected(SelectionEvent e) {
-
-		getButton(OK).setEnabled((fRadioButtonTagNameCaseLower != null && (fRadioButtonTagNameCaseLower.getSelection() || fRadioButtonTagNameCaseUpper.getSelection())) || (fRadioButtonAttrNameCaseLower != null && (fRadioButtonAttrNameCaseLower.getSelection() || fRadioButtonAttrNameCaseUpper.getSelection())) || fCheckBoxInsertMissingTags.getSelection() || fCheckBoxQuoteAttrValues.getSelection() || fCheckBoxFormatSource.getSelection() || fCheckBoxConvertEOLCodes.getSelection() || (fRadioButtonConvertEOLUnix != null && (fRadioButtonConvertEOLUnix.getSelection() || fRadioButtonConvertEOLMac.getSelection() || fRadioButtonConvertEOLWindows.getSelection())));
-		if (e.widget == fCheckBoxConvertEOLCodes)
-			enableEOLCodeRadios(fCheckBoxConvertEOLCodes.getSelection());
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CommentActionXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CommentActionXML.java
deleted file mode 100644
index 803a1d1..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/CommentActionXML.java
+++ /dev/null
@@ -1,230 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.TextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.TextEditorAction;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-
-public class CommentActionXML extends TextEditorAction {
-	protected static final String CLOSE_COMMENT = "-->"; //$NON-NLS-1$
-	protected static final String OPEN_COMMENT = "<!--"; //$NON-NLS-1$
-
-	protected IDocument fDocument;
-	protected IStructuredModel fModel;
-	protected ITextSelection fSelection;
-	protected int fSelectionEndLine;
-	protected int fSelectionEndLineOffset;
-	protected int fSelectionEndOffset;
-	protected Position fSelectionPosition;
-	protected int fSelectionStartLine;
-	protected int fSelectionStartLineOffset;
-	protected int fSelectionStartOffset;
-	protected boolean fUpdateSelection;
-
-
-	public CommentActionXML(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	protected void comment(int openCommentOffset, int closeCommentOffset) {
-		try {
-			fDocument.replace(openCommentOffset, 0, OPEN_COMMENT);
-			fDocument.replace(closeCommentOffset, 0, CLOSE_COMMENT);
-			removeOpenCloseComments(openCommentOffset + OPEN_COMMENT.length(), closeCommentOffset - openCommentOffset - CLOSE_COMMENT.length());
-		}
-		catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException();
-		}
-	}
-
-	/**
-	 * Release the current model
-	 */
-	void done() {
-		if (fModel != null) {
-			fModel.releaseFromEdit();
-			fModel = null;
-		}
-	}
-
-	protected ITextSelection getCurrentSelection() {
-		ITextEditor editor = getTextEditor();
-		if (editor != null) {
-			ISelectionProvider provider = editor.getSelectionProvider();
-			if (provider != null) {
-				ISelection selection = provider.getSelection();
-				if (selection instanceof ITextSelection)
-					return (ITextSelection) selection;
-			}
-		}
-		return TextSelection.emptySelection();
-	}
-
-	protected void init() {
-		ITextEditor editor = getTextEditor();
-		if (editor == null)
-			return;
-
-		IDocumentProvider docProvider = editor.getDocumentProvider();
-
-		IEditorInput input = editor.getEditorInput();
-		if (input == null)
-			return;
-
-		fDocument = docProvider.getDocument(input);
-		if (fDocument == null)
-			return;
-
-		IModelManager modelManager = StructuredModelManager.getModelManager();
-		fModel = modelManager.getExistingModelForEdit(fDocument);
-		if (fModel == null)
-			return;
-
-		fSelection = getCurrentSelection();
-		if (fSelection.isEmpty())
-			return;
-
-		fSelectionStartOffset = fSelection.getOffset();
-		fSelectionEndOffset = fSelectionStartOffset + fSelection.getLength();
-
-		// add selection position to document
-		fSelectionPosition = new Position(fSelection.getOffset(), fSelection.getLength());
-		try {
-			fDocument.addPosition(fSelectionPosition);
-		}
-		catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException();
-		}
-
-		try {
-			fSelectionStartLine = fDocument.getLineOfOffset(fSelectionStartOffset);
-			fSelectionEndLine = fDocument.getLineOfOffset(fSelectionEndOffset);
-			fSelectionStartLineOffset = fDocument.getLineOffset(fSelectionStartLine);
-			fSelectionEndLineOffset = fDocument.getLineOffset(fSelectionEndLine);
-		}
-		catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException();
-		}
-
-		// adjust selection end line
-		if (fSelectionEndLine > fSelectionStartLine && fSelectionEndLineOffset == fSelectionEndOffset)
-			fSelectionEndLine--;
-	}
-
-	protected boolean isCommentLine(int line) {
-		try {
-			IRegion region = fDocument.getLineInformation(line);
-			String string = fDocument.get(region.getOffset(), region.getLength()).trim();
-			return string.length() >= OPEN_COMMENT.length() + CLOSE_COMMENT.length() && string.startsWith(OPEN_COMMENT) && string.endsWith(CLOSE_COMMENT);
-		}
-		catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException();
-		}
-	}
-
-	protected void prepareSelection() {
-		fUpdateSelection = fSelection.getLength() > 0 && fSelectionStartLineOffset == fSelectionStartOffset && !isCommentLine(fSelectionStartLine);
-	}
-
-	protected void processAction() {
-		fModel.beginRecording(this, SSEUIPlugin.getResourceString(StructuredTextEditorActionConstants.ACTION_NAME_COMMENT + ".tooltip")); //$NON-NLS-1$
-		fModel.aboutToChangeModel();
-
-		for (int i = fSelectionStartLine; i <= fSelectionEndLine; i++) {
-			try {
-				if (fDocument.getLineLength(i) > 0 && !isCommentLine(i)) {
-					int openCommentOffset = fDocument.getLineOffset(i);
-					int lineDelimiterLength = fDocument.getLineDelimiter(i) == null ? 0 : fDocument.getLineDelimiter(i).length();
-					int closeCommentOffset = openCommentOffset + fDocument.getLineLength(i) - lineDelimiterLength + OPEN_COMMENT.length();
-					comment(openCommentOffset, closeCommentOffset);
-				}
-			}
-			catch (BadLocationException e) {
-				throw new SourceEditingRuntimeException();
-			}
-		}
-
-		fModel.changedModel();
-		fModel.endRecording(this);
-	}
-
-	protected void removeOpenCloseComments(int offset, int length) {
-		try {
-			int adjusted_length = length;
-
-			// remove open comments
-			String string = fDocument.get(offset, length);
-			int index = string.lastIndexOf(OPEN_COMMENT);
-			while (index != -1) {
-				fDocument.replace(offset + index, OPEN_COMMENT.length(), ""); //$NON-NLS-1$
-				index = string.lastIndexOf(OPEN_COMMENT, index - 1);
-				adjusted_length -= OPEN_COMMENT.length();
-			}
-
-			// remove close comments
-			string = fDocument.get(offset, adjusted_length);
-			index = string.lastIndexOf(CLOSE_COMMENT);
-			while (index != -1) {
-				fDocument.replace(offset + index, CLOSE_COMMENT.length(), ""); //$NON-NLS-1$
-				index = string.lastIndexOf(CLOSE_COMMENT, index - 1);
-			}
-		}
-		catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException();
-		}
-	}
-
-	public void run() {
-		init();
-		prepareSelection();
-		processAction();
-		updateSelection();
-		done();
-	}
-
-
-	protected void setCurrentSelection(ITextSelection selection) {
-		ITextEditor editor = getTextEditor();
-		if (editor != null) {
-			ISelectionProvider provider = editor.getSelectionProvider();
-			if (provider != null) {
-				provider.setSelection(selection);
-			}
-		}
-	}
-
-	protected void updateSelection() {
-		if (fUpdateSelection) {
-			ITextSelection selection = new TextSelection(fDocument, fSelectionPosition.getOffset() - OPEN_COMMENT.length(), fSelectionPosition.getLength() + OPEN_COMMENT.length());
-			setCurrentSelection(selection);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditAttributeAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditAttributeAction.java
deleted file mode 100644
index ffc4d88..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditAttributeAction.java
+++ /dev/null
@@ -1,80 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.ui.dialogs.EditAttributeDialog;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-public class EditAttributeAction extends NodeAction {
-	protected static ImageDescriptor imageDescriptor;
-
-	public static ImageDescriptor createImageDescriptor() {
-		if (imageDescriptor == null) {
-			imageDescriptor = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);
-		}
-		return imageDescriptor;
-	}
-
-	protected Attr attr;
-	protected AbstractNodeActionManager manager;
-	protected Element ownerElement;
-	protected String title;
-
-	public EditAttributeAction(AbstractNodeActionManager manager, Element ownerElement, Attr attr, String actionLabel, String title) {
-		this.manager = manager;
-		this.ownerElement = ownerElement;
-		this.attr = attr;
-		this.title = title;
-		setText(actionLabel);
-		// assume if attr is null then this is an 'Add' that requires action
-		// an icons... otherwise this is an edit
-		if (attr == null) {
-			setImageDescriptor(createImageDescriptor());
-		}
-	}
-
-	public String getUndoDescription() {
-		return title;
-	}
-
-	public void run() {
-		manager.beginNodeAction(this);
-		Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-		EditAttributeDialog dialog = new EditAttributeDialog(shell, ownerElement, attr);
-		dialog.create();
-		dialog.getShell().setText(title);
-		dialog.setBlockOnOpen(true);
-		dialog.open();
-
-		if (dialog.getReturnCode() == Window.OK) {
-			if (attr != null) {
-				ownerElement.removeAttributeNode(attr);
-			}
-			Document document = ownerElement.getOwnerDocument();
-			Attr newAttribute = document.createAttribute(dialog.getAttributeName());
-			newAttribute.setValue(dialog.getAttributeValue());
-			ownerElement.setAttributeNode(newAttribute);
-			manager.setViewerSelection(newAttribute);
-		}
-		manager.endNodeAction(this);
-	}
-}
-
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditDoctypeAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditDoctypeAction.java
deleted file mode 100644
index 2c669c5..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditDoctypeAction.java
+++ /dev/null
@@ -1,187 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLDocumentType;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xml.ui.dialogs.EditDoctypeDialog;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * EditDoctypeAction
- */
-public class EditDoctypeAction extends Action {
-	protected DocumentType doctype;
-	protected Document document;
-	protected IStructuredModel model;
-	protected String resourceLocation;
-	protected String title;
-
-	/**
-	 * This constructor is used to create a new doctype.
-	 */
-	public EditDoctypeAction(IStructuredModel model, Document document, String resourceLocation, String title) {
-		setText(title);
-		this.model = model;
-		this.document = document;
-		this.resourceLocation = resourceLocation;
-		this.title = title;
-	}
-
-	/**
-	 * This constructor is used to edit an exisitng doctype.
-	 */
-	public EditDoctypeAction(IStructuredModel model, DocumentType doctype, String resourceLocation, String title) {
-		setText(title);
-		this.model = model;
-		this.doctype = doctype;
-		this.resourceLocation = resourceLocation;
-		this.title = title;
-	}
-
-
-	protected DocumentType createDoctype(EditDoctypeDialog dialog, Document document) {
-		DocumentType result = null;
-		if (document instanceof DocumentImpl) {
-			XMLDocument documentImpl = (XMLDocument) document;
-			XMLDocumentType doctypeImpl = (XMLDocumentType) documentImpl.createDoctype(dialog.getName());
-			doctypeImpl.setPublicId(dialog.getPublicId());
-			doctypeImpl.setSystemId(dialog.getSystemId());
-			result = doctypeImpl;
-		}
-		return result;
-	}
-
-	private Display getDisplay() {
-
-		return PlatformUI.getWorkbench().getDisplay();
-	}
-
-
-	protected String getRootElementName(Document document) {
-		Element rootElement = null;
-		NodeList nodeList = document.getChildNodes();
-		int nodeListLength = nodeList.getLength();
-		for (int i = 0; i < nodeListLength; i++) {
-			Node childNode = nodeList.item(i);
-			if (childNode.getNodeType() == Node.ELEMENT_NODE) {
-				rootElement = (Element) childNode;
-				break;
-			}
-		}
-		return rootElement != null ? rootElement.getNodeName() : XMLUIPlugin.getResourceString("%_UI_LABEL_ROOT_ELEMENT_VALUE"); //$NON-NLS-1$
-	}
-
-	public String getUndoDescription() {
-		return title;
-	}
-
-
-	protected void insertDoctype(DocumentType doctype, Document document) {
-		Node refChild = null;
-		NodeList nodeList = document.getChildNodes();
-		int nodeListLength = nodeList.getLength();
-		for (int i = 0; i < nodeListLength; i++) {
-			Node childNode = nodeList.item(i);
-			if (childNode.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE || childNode.getNodeType() == Node.COMMENT_NODE) {
-				// continue on to the nextNode
-			} else {
-				refChild = childNode;
-				break;
-			}
-		}
-
-		document.insertBefore(doctype, refChild);
-		//manager.reformat(doctype, false);
-	}
-
-	public void run() {
-		model.beginRecording(this, getUndoDescription());
-		//Shell shell =
-		// XMLCommonUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-		Shell shell = getDisplay().getActiveShell();
-		EditDoctypeDialog dialog = showEditDoctypeDialog(shell);
-
-		if (dialog.getReturnCode() == Window.OK) {
-			if (doctype != null) {
-				updateDoctype(dialog, doctype);
-			} else if (document != null) {
-				DocumentType doctype = createDoctype(dialog, document);
-				if (doctype != null) {
-					insertDoctype(doctype, document);
-				}
-			}
-		}
-		model.endRecording(this);
-	}
-
-	protected EditDoctypeDialog showEditDoctypeDialog(Shell shell) {
-		EditDoctypeDialog dialog = null;
-
-		if (doctype != null) {
-			dialog = new EditDoctypeDialog(shell, doctype);
-			if (title == null) {
-				title = XMLUIPlugin.getResourceString("%_UI_LABEL_EDIT_DOCTYPE"); //$NON-NLS-1$
-			}
-		} else if (document != null) {
-			String rootElementName = getRootElementName(document);
-			dialog = new EditDoctypeDialog(shell, rootElementName, "", rootElementName + ".dtd"); //$NON-NLS-1$ //$NON-NLS-2$
-			if (title == null) {
-				title = XMLUIPlugin.getResourceString("%_UI_MENU_ADD_DTD_INFORMATION_TITLE"); //$NON-NLS-1$
-			}
-		}
-
-		dialog.setComputeSystemId(doctype == null || doctype.getSystemId() == null || doctype.getSystemId().trim().length() == 0);
-
-		dialog.setErrorChecking(false);//!model.getType().equals(IStructuredModel.HTML));
-		dialog.create();
-		dialog.getShell().setText(title);
-		dialog.setBlockOnOpen(true);
-		dialog.setResourceLocation(new Path(resourceLocation));
-		dialog.open();
-
-		return dialog;
-	}
-
-
-	protected void updateDoctype(EditDoctypeDialog dialog, DocumentType doctype) {
-		if (doctype instanceof XMLDocumentType) {
-			XMLDocumentType doctypeImpl = (XMLDocumentType) doctype;
-			if (doctypeImpl.getName().equals(dialog.getName())) {
-				doctypeImpl.setPublicId(dialog.getPublicId());
-				doctypeImpl.setSystemId(dialog.getSystemId());
-			} else {
-				// we need to create a new one and remove the old
-				//                  
-				Document document = doctype.getOwnerDocument();
-				DocumentType newDoctype = createDoctype(dialog, document);
-				document.insertBefore(newDoctype, doctype);
-				document.removeChild(doctype);
-				//manager.reformat(newDoctype, false);
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditElementAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditElementAction.java
deleted file mode 100644
index a3507d8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditElementAction.java
+++ /dev/null
@@ -1,117 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.ui.dialogs.EditElementDialog;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class EditElementAction extends NodeAction {
-
-	protected static ImageDescriptor imageDescriptor;
-
-	public static ImageDescriptor createImageDescriptor() {
-		if (imageDescriptor == null) {
-			imageDescriptor = XMLEditorPluginImageHelper.getInstance().getImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);
-		}
-		return imageDescriptor;
-	}
-
-	protected Element element;
-	protected int insertionIndex = -1;
-	protected AbstractNodeActionManager manager;
-	protected Node parent;
-	protected String title;
-
-	public EditElementAction(AbstractNodeActionManager manager, Element element, String actionLabel, String dialogTitle) {
-		this(manager, element.getParentNode(), -1, element, actionLabel, dialogTitle);
-	}
-
-	protected EditElementAction(AbstractNodeActionManager manager, Node parent, int index, Element element, String actionLabel, String title) {
-		this.manager = manager;
-		this.parent = parent;
-		this.insertionIndex = index;
-		this.element = element;
-		this.title = title;
-		setText(actionLabel);
-		if (element == null) {
-			setImageDescriptor(createImageDescriptor());
-		}
-	}
-
-	public EditElementAction(AbstractNodeActionManager manager, Node parent, int index, String actionLabel, String title) {
-		this(manager, parent, index, null, actionLabel, title);
-	}
-
-	public String getUndoDescription() {
-		return title;
-	}
-
-	public void run() {
-		manager.beginNodeAction(this);
-		Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-		EditElementDialog dialog = new EditElementDialog(shell, element);
-		dialog.create();
-		dialog.getShell().setText(title);
-		dialog.setBlockOnOpen(true);
-		dialog.open();
-
-		if (dialog.getReturnCode() == Window.OK) {
-			Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();
-			if (element != null) {
-				// here we need to do a rename... which seems to be quite hard
-				// to do :-(
-				if (element instanceof XMLElement) {
-					XMLElement elementImpl = (XMLElement) element;
-					XMLModel model = elementImpl.getModel();
-					String oldName = elementImpl.getNodeName();
-					String newName = dialog.getElementName();
-					setStructuredDocumentRegionElementName(model, elementImpl.getStartStructuredDocumentRegion(), oldName, newName);
-					setStructuredDocumentRegionElementName(model, elementImpl.getEndStructuredDocumentRegion(), oldName, newName);
-				}
-			} else {
-				Element newElement = document.createElement(dialog.getElementName());
-				NodeList nodeList = parent.getChildNodes();
-				int nodeListLength = nodeList.getLength();
-				Node refChild = insertionIndex < nodeListLength && insertionIndex >= 0 ? nodeList.item(insertionIndex) : null;
-				parent.insertBefore(newElement, refChild);
-				manager.reformat(newElement, false);
-				manager.setViewerSelection(newElement);
-			}
-		}
-		manager.endNodeAction(this);
-	}
-
-	protected void setStructuredDocumentRegionElementName(XMLModel model, IStructuredDocumentRegion flatNode, String oldName, String newName) {
-		if (flatNode != null) {
-			String string = flatNode.getText();
-			int index = string.indexOf(oldName);
-			if (index != -1) {
-				index += flatNode.getStart();
-				model.getStructuredDocument().replaceText(this, index, oldName.length(), newName);
-			}
-		}
-	}
-}
-
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditProcessingInstructionAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditProcessingInstructionAction.java
deleted file mode 100644
index b8c118b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditProcessingInstructionAction.java
+++ /dev/null
@@ -1,93 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.ui.dialogs.EditProcessingInstructionDialog;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-
-/**
- * EditProcessingInstructionAction
- */
-public class EditProcessingInstructionAction extends NodeAction {
-	protected Node childRef;
-	protected AbstractNodeActionManager manager;
-	protected Node parent;
-	protected ProcessingInstruction pi;
-	protected String title;
-
-	/**
-	 * This constructor is used to add a new ProcessingInstruction
-	 */
-	public EditProcessingInstructionAction(AbstractNodeActionManager manager, Node parent, Node childRef, String actionLabel, String title) {
-		setText(actionLabel);
-		this.manager = manager;
-		this.parent = parent;
-		this.childRef = childRef;
-		this.title = title;
-	}
-
-	/**
-	 * This constructor is used to edit a ProcessingInstruction
-	 */
-	public EditProcessingInstructionAction(AbstractNodeActionManager manager, ProcessingInstruction pi, String actionLabel, String title) {
-		setText(actionLabel);
-		this.manager = manager;
-		this.pi = pi;
-		this.parent = pi.getParentNode();
-		this.title = title;
-	}
-
-	public String getUndoDescription() {
-		return title;
-	}
-
-	public void run() {
-		manager.beginNodeAction(this);
-		Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-
-		EditProcessingInstructionDialog dialog = null;
-		if (pi != null) {
-			dialog = new EditProcessingInstructionDialog(shell, pi);
-		} else {
-			dialog = new EditProcessingInstructionDialog(shell, XMLUIPlugin.getResourceString("%_UI_PI_TARGET_VALUE"), XMLUIPlugin.getResourceString("%_UI_PI_DATA_VALUE")); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-
-		dialog.create();
-		dialog.getShell().setText(title);
-		dialog.setBlockOnOpen(true);
-		dialog.open();
-
-		if (dialog.getReturnCode() == Window.OK) {
-			if (pi != null) {
-				childRef = pi;
-			}
-
-			Document document = parent.getNodeType() == Node.DOCUMENT_NODE ? (Document) parent : parent.getOwnerDocument();
-			Node newNode = document.createProcessingInstruction(dialog.getTarget(), dialog.getData());
-			parent.insertBefore(newNode, childRef);
-
-			if (pi != null) {
-				parent.removeChild(pi);
-			}
-
-			manager.reformat(newNode, false);
-			manager.setViewerSelection(newNode);
-		}
-		manager.endNodeAction(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditSchemaInfoAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditSchemaInfoAction.java
deleted file mode 100644
index 9c6d1c7..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/EditSchemaInfoAction.java
+++ /dev/null
@@ -1,163 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceInfoManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.dialogs.EditSchemaInfoDialog;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * EditDoctypeAction
- */
-public class EditSchemaInfoAction extends NodeAction {
-	protected AbstractNodeActionManager manager;
-	protected DOMNamespaceInfoManager namespaceInfoManager = new DOMNamespaceInfoManager();
-	protected Node node;
-	protected String resourceLocation;
-	protected String title;
-
-	public EditSchemaInfoAction(AbstractNodeActionManager manager, Node node, String resourceLocation, String title) {
-		this.manager = manager;
-		this.node = node;
-		setText(title);
-		this.resourceLocation = resourceLocation;
-		this.title = title;
-	}
-
-	protected Map createPrefixMapping(List oldList, List newList) {
-		Map map = new Hashtable();
-
-		Hashtable oldURIToPrefixTable = new Hashtable();
-		for (Iterator i = oldList.iterator(); i.hasNext();) {
-			NamespaceInfo oldInfo = (NamespaceInfo) i.next();
-			oldURIToPrefixTable.put(oldInfo.uri, oldInfo);
-		}
-
-		for (Iterator i = newList.iterator(); i.hasNext();) {
-			NamespaceInfo newInfo = (NamespaceInfo) i.next();
-			NamespaceInfo oldInfo = (NamespaceInfo) oldURIToPrefixTable.get(newInfo.uri != null ? newInfo.uri : ""); //$NON-NLS-1$
-
-
-			// if oldInfo is non null ... there's a matching URI in the old
-			// set
-			// we can use its prefix to detemine out mapping
-			//
-			// if oldInfo is null ... we use the 'oldCopy' we stashed away
-			// assuming that the user changed the URI and the prefix
-			if (oldInfo == null) {
-				oldInfo = (NamespaceInfo) newInfo.getProperty("oldCopy"); //$NON-NLS-1$
-			}
-
-			if (oldInfo != null) {
-				String newPrefix = newInfo.prefix != null ? newInfo.prefix : ""; //$NON-NLS-1$
-				String oldPrefix = oldInfo.prefix != null ? oldInfo.prefix : ""; //$NON-NLS-1$
-				if (!oldPrefix.equals(newPrefix)) {
-					map.put(oldPrefix, newPrefix);
-				}
-			}
-		}
-		return map;
-	}
-
-	public Element getElement(Node node) {
-		Element result = null;
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			result = (Element) node;
-		} else if (node.getNodeType() == Node.DOCUMENT_NODE) {
-			result = getRootElement((Document) node);
-		}
-		return result;
-	}
-
-
-	public Element getRootElement(Document document) {
-		Element rootElement = null;
-		NodeList nodeList = document.getChildNodes();
-		int nodeListLength = nodeList.getLength();
-		for (int i = 0; i < nodeListLength; i++) {
-			Node childNode = nodeList.item(i);
-			if (childNode.getNodeType() == Node.ELEMENT_NODE) {
-				rootElement = (Element) childNode;
-				break;
-			}
-		}
-		return rootElement;
-	}
-
-	public String getUndoDescription() {
-		return title;
-	}
-
-	public void run() {
-		manager.beginNodeAction(this);
-
-		// todo... change constructor to take an element
-		Element element = getElement(node);
-		if (element != null) {
-			Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-			EditSchemaInfoDialog dialog = new EditSchemaInfoDialog(shell, new Path(resourceLocation));
-
-			List namespaceInfoList = namespaceInfoManager.getNamespaceInfoList(element);
-			List oldNamespaceInfoList = NamespaceInfo.cloneNamespaceInfoList(namespaceInfoList);
-
-			// here we store a copy of the old info for each NamespaceInfo
-			// this info will be used in createPrefixMapping() to figure out
-			// how to update the document
-			// in response to these changes
-			for (Iterator i = namespaceInfoList.iterator(); i.hasNext();) {
-				NamespaceInfo info = (NamespaceInfo) i.next();
-				NamespaceInfo oldCopy = new NamespaceInfo(info);
-				info.setProperty("oldCopy", oldCopy); //$NON-NLS-1$
-			}
-
-			dialog.setNamespaceInfoList(namespaceInfoList);
-			dialog.create();
-			//dialog.getShell().setSize(500, 300);
-			dialog.getShell().setText(XMLUIPlugin.getResourceString("%_UI_MENU_EDIT_SCHEMA_INFORMATION_TITLE")); //$NON-NLS-1$
-			dialog.setBlockOnOpen(true);
-			dialog.open();
-
-			if (dialog.getReturnCode() == Window.OK) {
-				List newInfoList = dialog.getNamespaceInfoList();
-				namespaceInfoManager.removeNamespaceInfo(element);
-				namespaceInfoManager.addNamespaceInfo(element, newInfoList, true);
-
-				// see if we need to rename any prefixes
-				Map prefixMapping = createPrefixMapping(oldNamespaceInfoList, namespaceInfoList);
-				if (prefixMapping.size() > 0) {
-					try {
-						manager.getModel().aboutToChangeModel();
-						ReplacePrefixAction replacePrefixAction = new ReplacePrefixAction(manager, element, prefixMapping);
-						replacePrefixAction.run();
-					} finally {
-						manager.getModel().changedModel();
-					}
-				}
-			}
-		}
-		manager.endNodeAction(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/MenuBuilder.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/MenuBuilder.java
deleted file mode 100644
index 0403f88..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/MenuBuilder.java
+++ /dev/null
@@ -1,145 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.xml.ui.actions;
-
-import java.text.Collator;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.List;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-
-
-public class MenuBuilder {
-
-
-	protected Comparator comparator = new Comparator() {
-
-		public int compare(Object o1, Object o2) {
-			return Collator.getInstance().compare(getSortKey(o1), getSortKey(o2));
-		}
-
-		protected String getSortKey(Object o) {
-			String result = ""; //$NON-NLS-1$
-			if (o instanceof IAction) {
-				IAction action = (IAction) o;
-				result = action.getText();
-			}
-			//else if (o instanceof MenuData)
-			//{
-			//  result = "z" + ((MenuData)o).name;
-			//}
-			return result;
-		}
-	};
-
-
-	protected void createAlphebeticalGrouping(IMenuManager menu, List actionList) {
-		Object[] array = actionList.toArray();
-		if (array.length > 0) {
-			Arrays.sort(array, comparator);
-		}
-
-		int groupSize = 15;
-		int minGroupSize = 5;
-		int numberOfGroups = (array.length / groupSize) + ((array.length % groupSize > minGroupSize) ? 1 : 0);
-
-		for (int i = 0; i < numberOfGroups; i++) {
-			boolean isLastGroup = (i == (numberOfGroups - 1));
-			int firstIndex = i * groupSize;
-			int lastIndex = isLastGroup ? array.length - 1 : i * groupSize + groupSize - 1;
-			Action firstAction = (Action) array[firstIndex];
-			Action lastAction = (Action) array[lastIndex];
-			MenuManager submenu = new MenuManager(firstAction.getText() + " - " + lastAction.getText()); //$NON-NLS-1$
-			menu.add(submenu);
-			for (int j = firstIndex; j <= lastIndex; j++) {
-				submenu.add((Action) array[j]);
-			}
-		}
-	}
-
-
-	public void populateMenu(IMenuManager menu, List actionList, boolean createTiered) {
-		// sort the actions
-		if (actionList.size() < 25) {
-			Object[] array = actionList.toArray();
-			if (array.length > 0) {
-				Arrays.sort(array, comparator);
-			}
-			for (int i = 0; i < array.length; i++) {
-				menu.add((Action) array[i]);
-			}
-		} else {
-			createAlphebeticalGrouping(menu, actionList);
-		}
-	}
-
-	/*
-	 * protected void createPropertyGrouping(IMenuManager menu, List
-	 * actionList) { MenuDataTable menuDataTable = new MenuDataTable();
-	 * 
-	 * for (Iterator i = actionList.iterator(); i.hasNext(); ) { String
-	 * groupName = null; Action action = (Action)i.next(); if (action
-	 * instanceof NodeAction) { groupName =
-	 * ((NodeAction)action).getGroupName(); } if (groupName == null) {
-	 * groupName = ""; } MenuData menuData =
-	 * menuDataTable.lookupOrCreate(groupName, "");
-	 * menuData.childList.add(action); } populateMenu(menu,
-	 * menuDataTable.getRoot()); }
-	 * 
-	 * 
-	 * protected void populateMenu(MenuManager menuManager, MenuData menuData) {
-	 * for (Iterator i = menuData.childList.iterator(); i.hasNext(); ) {
-	 * Object o = i.next(); if (o instanceof Action) {
-	 * menuManager.add((Action)o); } else if (o instanceof MenuData) {
-	 * MenuData childMenuData = (MenuData)o; MenuManager childMenuManager =
-	 * new MenuManager(childMenuData.name); menuManager.add(childMenuManager);
-	 * populateMenu(childMenuManager, childMenuData); } } }
-	 * 
-	 * 
-	 * public MenuDataTable { protected Hashtable table = new Hashtable();
-	 * protected MenuData root;
-	 * 
-	 * public MenuDataTable() { root = lookupOrCreateMenuData(null, null); }
-	 * 
-	 * protected MenuData lookupMenuData(String name) { String key = name !=
-	 * null ? name : ""; return (MenuData)menuDataTable.get(key); }
-	 * 
-	 * protected MenuData lookupOrCreateMenuData(String name, String
-	 * parentName) { String key = name != null ? name : ""; MenuData menuData =
-	 * (MenuData)menuDataTable.get(key); if (menuData == null) { menuData =
-	 * new MenuData(name, parentName); menuDataTable.put(key, menuData); }
-	 * return menuData; }
-	 * 
-	 * public MenuData getRoot() { return root; } }
-	 * 
-	 * 
-	 * protected class MenuData { public String name; public String
-	 * parentName; public List childList = new Vector();
-	 * 
-	 * MenuData(String name, String parentName) { this.name = name;
-	 * this.parentName = parentName; }
-	 * 
-	 * protected void sort() { Object[] array = childList.toArray(); if
-	 * (array.length > 0 ) { Arrays.sort(array, comparator); } childList =
-	 * Arrays.asList(array);
-	 * 
-	 * for (Iterator i = childList.iterator(); i.hasNext(); ) { Object o =
-	 * i.next(); if (o instanceof MenuData) { ((MenuData)o).sort(); } } } }
-	 */
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/NodeAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/NodeAction.java
deleted file mode 100644
index ff91cdd..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/NodeAction.java
+++ /dev/null
@@ -1,26 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.xml.ui.actions;
-
-import org.eclipse.jface.action.Action;
-
-public abstract class NodeAction extends Action {
-
-	public String getSortKey() {
-		return null;
-	}
-
-	public abstract String getUndoDescription();
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/RemoveBlockCommentActionXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/RemoveBlockCommentActionXML.java
deleted file mode 100644
index f310959..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/RemoveBlockCommentActionXML.java
+++ /dev/null
@@ -1,70 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.xml.core.internal.document.CommentImpl;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-
-public class RemoveBlockCommentActionXML extends AddBlockCommentActionXML {
-	public RemoveBlockCommentActionXML(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	protected void init() {
-		super.init();
-
-		fCloseCommentOffset = fSelectionEndIndexedRegion.getEndOffset() - OPEN_COMMENT.length() - CLOSE_COMMENT.length();
-	}
-
-	protected void processAction() {
-		fModel.beginRecording(this, SSEUIPlugin.getResourceString(StructuredTextEditorActionConstants.ACTION_NAME_REMOVE_BLOCK_COMMENT + ".tooltip")); //$NON-NLS-1$
-		fModel.aboutToChangeModel();
-
-		if (fSelection.getLength() == 0) {
-			if (fSelectionStartIndexedRegion instanceof CommentImpl) {
-				try {
-					fDocument.replace(fOpenCommentOffset, OPEN_COMMENT.length(), ""); //$NON-NLS-1$
-					fDocument.replace(fCloseCommentOffset, CLOSE_COMMENT.length(), ""); //$NON-NLS-1$
-				} catch (BadLocationException e) {
-					throw new SourceEditingRuntimeException();
-				}
-			}
-		} else {
-			if (fSelectionStartIndexedRegion instanceof CommentImpl) {
-				try {
-					fDocument.replace(fOpenCommentOffset, OPEN_COMMENT.length(), ""); //$NON-NLS-1$
-				} catch (BadLocationException e) {
-					throw new SourceEditingRuntimeException();
-				}
-			}
-
-			if (fSelectionEndIndexedRegion instanceof CommentImpl) {
-				try {
-					fDocument.replace(fCloseCommentOffset, CLOSE_COMMENT.length(), ""); //$NON-NLS-1$
-				} catch (BadLocationException e) {
-					throw new SourceEditingRuntimeException();
-				}
-			}
-		}
-		removeOpenCloseComments(fOpenCommentOffset + OPEN_COMMENT.length(), fCloseCommentOffset - fOpenCommentOffset - CLOSE_COMMENT.length());
-
-		fModel.changedModel();
-		fModel.endRecording(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ReplacePrefixAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ReplacePrefixAction.java
deleted file mode 100644
index a32dc83..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ReplacePrefixAction.java
+++ /dev/null
@@ -1,79 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Vector;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMVisitor;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-
-public class ReplacePrefixAction extends NodeAction {
-
-	class NodeCollectingDOMVisitor extends DOMVisitor {
-		public List list = new Vector();
-
-		protected boolean isPrefixChangedNeeded(Node node) {
-			String key = node.getPrefix() != null ? node.getPrefix() : ""; //$NON-NLS-1$
-			return prefixMapping.get(key) != null;
-		}
-
-		public void visitAttr(Attr attr) {
-			/*
-			 * if (isPrefixChangedNeeded(element)) { list.add(attr); }
-			 */
-		}
-
-		protected void visitElement(Element element) {
-			super.visitElement(element);
-			if (isPrefixChangedNeeded(element)) {
-				list.add(element);
-			}
-		}
-	}
-
-	protected static ImageDescriptor imageDescriptor;
-	protected Element element;
-	protected AbstractNodeActionManager manager;
-	protected Map prefixMapping;
-
-	public ReplacePrefixAction(AbstractNodeActionManager manager, Element element, Map prefixMapping) {
-		this.manager = manager;
-		this.element = element;
-		this.prefixMapping = prefixMapping;
-	}
-
-	public String getUndoDescription() {
-		return ""; //$NON-NLS-1$
-	}
-
-	public void run() {
-		NodeCollectingDOMVisitor visitor = new NodeCollectingDOMVisitor();
-		visitor.visitNode(element);
-		for (Iterator i = visitor.list.iterator(); i.hasNext();) {
-			Node node = (Node) i.next();
-			String key = node.getPrefix() != null ? node.getPrefix() : ""; //$NON-NLS-1$
-			String newPrefix = (String) prefixMapping.get(key);
-			if (newPrefix != null) {
-				node.setPrefix(newPrefix);
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ToggleCommentActionXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ToggleCommentActionXML.java
deleted file mode 100644
index 257fdef..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/ToggleCommentActionXML.java
+++ /dev/null
@@ -1,58 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-
-public class ToggleCommentActionXML extends UncommentActionXML {
-	public ToggleCommentActionXML(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	protected void processAction() {
-		fModel.beginRecording(this, SSEUIPlugin.getResourceString(StructuredTextEditorActionConstants.ACTION_NAME_COMMENT + ".tooltip")); //$NON-NLS-1$
-		fModel.aboutToChangeModel();
-
-		for (int i = fSelectionStartLine; i <= fSelectionEndLine; i++) {
-			try {
-				if (fDocument.getLineLength(i) > 0) {
-					if (isCommentLine(i)) {
-						int lineOffset = fDocument.getLineOffset(i);
-						IRegion region = fDocument.getLineInformation(i);
-						String string = fDocument.get(region.getOffset(), region.getLength());
-						int openCommentOffset = lineOffset + string.indexOf(OPEN_COMMENT);
-						int closeCommentOffset = lineOffset + string.indexOf(CLOSE_COMMENT) - OPEN_COMMENT.length();
-						uncomment(openCommentOffset, closeCommentOffset);
-					} else {
-						int openCommentOffset = fDocument.getLineOffset(i);
-						int lineDelimiterLength = fDocument.getLineDelimiter(i) == null ? 0 : fDocument.getLineDelimiter(i).length();
-						int closeCommentOffset = openCommentOffset + fDocument.getLineLength(i) - lineDelimiterLength + OPEN_COMMENT.length();
-						comment(openCommentOffset, closeCommentOffset);
-					}
-				}
-			} catch (BadLocationException e) {
-				throw new SourceEditingRuntimeException();
-			}
-		}
-
-		fModel.changedModel();
-		fModel.endRecording(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/UncommentActionXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/UncommentActionXML.java
deleted file mode 100644
index 408494e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/actions/UncommentActionXML.java
+++ /dev/null
@@ -1,60 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.actions;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-
-public class UncommentActionXML extends CommentActionXML {
-	public UncommentActionXML(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	protected void processAction() {
-		fModel.beginRecording(this, SSEUIPlugin.getResourceString(StructuredTextEditorActionConstants.ACTION_NAME_COMMENT + ".tooltip")); //$NON-NLS-1$
-		fModel.aboutToChangeModel();
-
-		for (int i = fSelectionStartLine; i <= fSelectionEndLine; i++) {
-			try {
-				if (fDocument.getLineLength(i) > 0 && isCommentLine(i)) {
-					int lineOffset = fDocument.getLineOffset(i);
-					IRegion region = fDocument.getLineInformation(i);
-					String string = fDocument.get(region.getOffset(), region.getLength());
-					int openCommentOffset = lineOffset + string.indexOf(OPEN_COMMENT);
-					int closeCommentOffset = lineOffset + string.indexOf(CLOSE_COMMENT) - OPEN_COMMENT.length();
-					uncomment(openCommentOffset, closeCommentOffset);
-				}
-			} catch (BadLocationException e) {
-				throw new SourceEditingRuntimeException();
-			}
-		}
-
-		fModel.changedModel();
-		fModel.endRecording(this);
-	}
-
-	protected void uncomment(int openCommentOffset, int closeCommentOffset) {
-		try {
-			fDocument.replace(openCommentOffset, OPEN_COMMENT.length(), ""); //$NON-NLS-1$
-			fDocument.replace(closeCommentOffset, CLOSE_COMMENT.length(), ""); //$NON-NLS-1$
-		} catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException();
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AbstractContentAssistProcessor.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AbstractContentAssistProcessor.java
deleted file mode 100644
index 04f9687..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AbstractContentAssistProcessor.java
+++ /dev/null
@@ -1,2186 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Properties;
-import java.util.Vector;
-
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.encoding.ContentTypeEncodingPreferences;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.ui.internal.IReleasable;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.xml.core.contenttype.ContentTypeIdForXML;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMEntityDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryAction;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.document.AttrImpl;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.eclipse.wst.xml.ui.internal.editor.CMImageUtil;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-import org.eclipse.wst.xml.ui.taginfo.MarkupTagInfoProvider;
-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;
-
-abstract public class AbstractContentAssistProcessor implements IContentAssistProcessor, IReleasable {
-    /**
-     * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-     * way for expedency. Should be evolved in future to depend on "nestedContext".
-     */
-	private class DOMJSPRegionContextsPrivateCopy {
-		private static final String JSP_CLOSE = "JSP_CLOSE"; //$NON-NLS-1$
-		private static final String JSP_COMMENT_CLOSE = "JSP_COMMENT_CLOSE"; //$NON-NLS-1$
-
-		private static final String JSP_COMMENT_OPEN = "JSP_COMMENT_OPEN"; //$NON-NLS-1$
-		private static final String JSP_DECLARATION_OPEN = "JSP_DECLARATION_OPEN"; //$NON-NLS-1$
-		private static final String JSP_DIRECTIVE_CLOSE = "JSP_DIRECTIVE_CLOSE"; //$NON-NLS-1$
-		private static final String JSP_DIRECTIVE_NAME = "JSP_DIRECTIVE_NAME"; //$NON-NLS-1$
-
-		private static final String JSP_DIRECTIVE_OPEN = "JSP_DIRECTIVE_OPEN"; //$NON-NLS-1$
-		private static final String JSP_EXPRESSION_OPEN = "JSP_EXPRESSION_OPEN"; //$NON-NLS-1$
-
-		private static final String JSP_ROOT_TAG_NAME = "JSP_ROOT_TAG_NAME"; //$NON-NLS-1$
-
-		private static final String JSP_SCRIPTLET_OPEN = "JSP_SCRIPTLET_OPEN"; //$NON-NLS-1$
-	
-	}
-
-	protected static final String INTERNALERROR = SSEUIPlugin.getResourceString("%SEVERE_internal_error_occu_UI_"); //$NON-NLS-1$ = "SEVERE internal error occurred "
-	protected static final String UNKNOWN_ATTR = SSEUIPlugin.getResourceString("%No_known_attribute__UI_"); //$NON-NLS-1$ = "No known attribute "
-	protected static final String UNKNOWN_CONTEXT = SSEUIPlugin.getResourceString("%Content_Assist_not_availab_UI_"); //$NON-NLS-1$ = "Content Assist not available at the current location "
-	protected char completionProposalAutoActivationCharacters[] = null;
-	protected char contextInformationAutoActivationCharacters[] = null;
-	private AttributeContextInformationProvider fAttributeInfoProvider = null;
-	private AttributeContextInformationPresenter fContextInformationPresenter = null;
-
-	protected String fErrorMessage = null;
-	protected XMLContentModelGenerator fGenerator;
-	//protected IResource resource = null;
-	protected MarkupTagInfoProvider fInfoProvider = null;
-	protected ITextViewer fTextViewer = null;
-
-	private final boolean showValues = true;
-
-	public AbstractContentAssistProcessor() {
-		super();
-		init();
-	}
-
-	protected void addAttributeNameProposals(ContentAssistRequest contentAssistRequest) {
-		XMLNode node = (XMLNode) contentAssistRequest.getNode();
-		IStructuredDocumentRegion sdRegion = contentAssistRequest.getDocumentRegion();
-		// retrieve the list of attributes
-		CMElementDeclaration elementDecl = getCMElementDeclaration(node);
-		if (elementDecl != null) {
-			CMNamedNodeMap attributes = elementDecl.getAttributes();
-			String matchString = contentAssistRequest.getMatchString();
-
-			//check whether an attribute really exists for the replacement
-			// offsets AND if it possesses a value
-			boolean attrAtLocationHasValue = false;
-			NamedNodeMap attrs = node.getAttributes();
-			for (int i = 0; i < attrs.getLength(); i++) {
-				AttrImpl existingAttr = (AttrImpl) attrs.item(i);
-				ITextRegion name = existingAttr.getNameRegion();
-
-				if (sdRegion.getStartOffset(name) <= contentAssistRequest.getReplacementBeginPosition() && sdRegion.getStartOffset(name) + name.getLength() >= contentAssistRequest.getReplacementBeginPosition() + contentAssistRequest.getReplacementLength() && existingAttr.getValueRegion() != null) {
-					attrAtLocationHasValue = true;
-					break;
-				}
-			}
-
-			// only add proposals for the attributes whose names begin with
-			// the matchstring
-			if (attributes != null) {
-				for (int i = 0; i < attributes.getLength(); i++) {
-					CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) attributes.item(i);
-					// CMVC 246618
-					int isRequired = 0;
-					if (attrDecl.getUsage() == CMAttributeDeclaration.REQUIRED) {
-						isRequired = XMLRelevanceConstants.R_REQUIRED;
-					}
-
-					boolean showAttribute = true;
-					showAttribute = showAttribute && beginsWith(getRequiredName(node, attrDecl), matchString.trim());
-					AttrImpl attr = (AttrImpl) node.getAttributes().getNamedItem(getRequiredName(node, attrDecl));
-					ITextRegion nameRegion = attr != null ? attr.getNameRegion() : null;
-					// nameRegion.getEndOffset() + 1 is required to allow for
-					// matches against the full name of an existing Attr
-					showAttribute = showAttribute && ((attr == null) || (nameRegion != null && sdRegion.getStartOffset(nameRegion) <= contentAssistRequest.getReplacementBeginPosition() && sdRegion.getStartOffset(nameRegion) + nameRegion.getLength() >= contentAssistRequest.getReplacementBeginPosition() + contentAssistRequest.getReplacementLength()));
-					if (showAttribute) {
-						Image attrImage = CMImageUtil.getImage(attrDecl);
-						if (attrImage == null) {
-							if (isRequired > 0) {
-								attrImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ATT_REQ_OBJ);
-							}
-							else {
-								attrImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);
-							}
-						}
-
-						String proposedText = null;
-						String proposedInfo = getAdditionalInfo(elementDecl, attrDecl);
-						CustomCompletionProposal proposal = null;
-						// attribute is at this location and already exists
-						if (attrAtLocationHasValue) {
-							// only propose the name
-							proposedText = getRequiredName(node, attrDecl);
-							proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), proposedText.length(), attrImage, proposedText, null, proposedInfo, XMLRelevanceConstants.R_XML_ATTRIBUTE_NAME + isRequired, true); //CMVC
-							// 269884
-						}
-						// no attribute exists or is elsewhere, generate
-						// minimally
-						else {
-							Attr existingAttrNode = (Attr) node.getAttributes().getNamedItem(getRequiredName(node, attrDecl));
-							String value = null;
-							if (existingAttrNode != null)
-								value = existingAttrNode.getNodeValue();
-							if (value != null && value.length() > 0)
-								proposedText = getRequiredName(node, attrDecl);
-							else {
-								proposedText = getRequiredText(node, attrDecl);
-							}
-							proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), attrDecl.getNodeName().length() + 2, attrImage,
-							// if the value isn't empty (no empty set of
-										// quotes), show it
-										(showValues && proposedText.indexOf("\"\"") < 0) ? proposedText : getRequiredName(node, attrDecl), //$NON-NLS-1$
-										null, proposedInfo, XMLRelevanceConstants.R_XML_ATTRIBUTE_NAME + isRequired);
-						}
-						contentAssistRequest.addProposal(proposal);
-					}
-				}
-			}
-		} else {
-			setErrorMessage(SSEUIPlugin.getResourceString("%25concat", (new Object[]{node.getNodeName()}))); 
-		}
-	}
-
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-		XMLNode node = (XMLNode) contentAssistRequest.getNode();
-
-		// Find the attribute region and name for which this position should
-		// have a value proposed
-		IStructuredDocumentRegion open = node.getFirstStructuredDocumentRegion();
-		ITextRegionList openRegions = open.getRegions();
-		int i = openRegions.indexOf(contentAssistRequest.getRegion());
-		if (i < 0)
-			return;
-		ITextRegion nameRegion = null;
-		while (i >= 0) {
-			nameRegion = openRegions.get(i--);
-			if (nameRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)
-				break;
-		}
-
-		// the name region is REQUIRED to do anything useful
-		if (nameRegion != null) {
-			// Retrieve the declaration
-			CMElementDeclaration elementDecl = getCMElementDeclaration(node);
-
-			//String attributeName = nameRegion.getText();
-			String attributeName = open.getText(nameRegion);
-
-			CMAttributeDeclaration attrDecl = null;
-
-			// No CMElementDeclaration means no attribute metadata, but
-			// retrieve the
-			// declaration for the attribute otherwise
-			if (elementDecl != null) {
-				CMNamedNodeMap attributes = elementDecl.getAttributes();
-				String noprefixName = DOMNamespaceHelper.getUnprefixedName(attributeName);
-				if (attributes != null) {
-					attrDecl = (CMAttributeDeclaration) attributes.getNamedItem(noprefixName);
-					if (attrDecl == null) {
-						attrDecl = (CMAttributeDeclaration) attributes.getNamedItem(attributeName);
-					}
-				}
-				if (attrDecl == null) {
-					setErrorMessage(UNKNOWN_ATTR, attributeName);
-				}
-			}
-
-			String currentValue = node.getAttributes().getNamedItem(attributeName).getNodeValue();
-			String proposedInfo = null;
-			Image image = CMImageUtil.getImage(attrDecl);
-			if (image == null) {
-				if (attrDecl != null && attrDecl.getUsage() == CMAttributeDeclaration.REQUIRED) {
-					image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ATT_REQ_OBJ);
-				}
-				else {
-					image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);
-				}
-			}
-
-			if (attrDecl != null && attrDecl.getAttrType() != null) {
-				// attribute is known, prompt with values from the declaration
-				proposedInfo = getAdditionalInfo(elementDecl, attrDecl);
-				List possibleValues = getPossibleDataTypeValues(node, attrDecl);
-				if (possibleValues.size() > 0) {
-					// ENUMERATED VALUES
-					String matchString = contentAssistRequest.getMatchString();
-					if (matchString == null)
-						matchString = ""; //$NON-NLS-1$
-					if (matchString.length() > 0 && (matchString.startsWith("\"") || matchString.startsWith("'"))) //$NON-NLS-2$//$NON-NLS-1$
-						matchString = matchString.substring(1);
-					boolean currentValid = false;
-
-					// d210858, if the region's a container, don't suggest the
-					// enumerated values as they probably won't help
-					boolean existingComplicatedValue = contentAssistRequest.getRegion() != null && contentAssistRequest.getRegion() instanceof ITextRegionContainer;
-					if (!existingComplicatedValue) {
-						for (Iterator j = possibleValues.iterator(); j.hasNext();) {
-							String possibleValue = (String) j.next();
-							currentValid = currentValid || possibleValue.equals(currentValue);
-							if (matchString.length() == 0 || possibleValue.startsWith(matchString)) {
-								CustomCompletionProposal proposal = new CustomCompletionProposal("\"" + possibleValue + "\"", //$NON-NLS-2$//$NON-NLS-1$
-									contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), possibleValue.length() + 1, image, possibleValue, null, proposedInfo, XMLRelevanceConstants.R_XML_ATTRIBUTE_VALUE);
-								contentAssistRequest.addProposal(proposal);
-							}
-						}
-					}
-				} else if ((attrDecl.getUsage() == CMAttributeDeclaration.FIXED || attrDecl.getAttrType().getImpliedValueKind() == CMDataType.IMPLIED_VALUE_FIXED) && attrDecl.getAttrType().getImpliedValue() != null) {
-					// FIXED values
-					String value = attrDecl.getAttrType().getImpliedValue();
-					if (value != null && value.length() > 0) {
-						CustomCompletionProposal proposal = new CustomCompletionProposal("\"" + value + "\"", //$NON-NLS-2$//$NON-NLS-1$
-									contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), value.length() + 1, image, value, null, proposedInfo, XMLRelevanceConstants.R_XML_ATTRIBUTE_VALUE);
-						contentAssistRequest.addProposal(proposal);
-						if (currentValue.length() > 0 && !value.equals(currentValue)) {
-							proposal = new CustomCompletionProposal("\"" + currentValue + "\"", //$NON-NLS-2$//$NON-NLS-1$
-										contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), currentValue.length() + 1, image, currentValue, null, proposedInfo, XMLRelevanceConstants.R_XML_ATTRIBUTE_VALUE);
-							contentAssistRequest.addProposal(proposal);
-						}
-					}
-				}
-			} else {
-				// unknown attribute, so supply nice empty values
-				proposedInfo = getAdditionalInfo(null, elementDecl);
-				CustomCompletionProposal proposal = null;
-				if (currentValue != null && currentValue.length() > 0) {
-					proposal = new CustomCompletionProposal("\"" + currentValue + "\"", //$NON-NLS-2$//$NON-NLS-1$
-								contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), 1, image, "\"" + currentValue + "\"", //$NON-NLS-2$//$NON-NLS-1$
-								null, proposedInfo, XMLRelevanceConstants.R_XML_ATTRIBUTE_VALUE);
-					contentAssistRequest.addProposal(proposal);
-				}
-			}
-		} else
-			setErrorMessage(UNKNOWN_CONTEXT);
-	}
-
-	protected void addCommentProposal(ContentAssistRequest contentAssistRequest) {
-		contentAssistRequest.addProposal(new CustomCompletionProposal("<!--  -->", //$NON-NLS-1$
-					contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), 5, XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_COMMENT), SSEUIPlugin.getResourceString("%6concat", (new Object[]{" <!--  -->"})), //$NON-NLS-1$ = "comment {0}"//$NON-NLS-2$
-					null, null, XMLRelevanceConstants.R_COMMENT));
-	}
-
-	/**
-	 * Add all of the element declarations int the CMContent object into one
-	 * big list.
-	 */
-	protected void addContent(List contentList, CMContent content) {
-		if (content == null)
-			return;
-		if (content instanceof CMGroup) {
-			CMNodeList children = ((CMGroup) content).getChildNodes();
-			if (children == null)
-				return;
-			for (int i = 0; i < children.getLength(); i++) {
-				CMNode child = children.item(i);
-				if (child.getNodeType() == CMNode.ELEMENT_DECLARATION) {
-					contentList.add(child);
-				} else {
-					if (child.getNodeType() == CMNode.GROUP) {
-						addContent(contentList, (CMContent) child);
-					} else {
-						throw new IllegalArgumentException("Unknown content child: " + child); //$NON-NLS-1$
-					}
-				}
-			}
-		} else {
-			contentList.add(content);
-		}
-	}
-
-	protected void addDocTypeProposal(ContentAssistRequest contentAssistRequest) {
-		// if a DocumentElement exists, use that for the root Element name
-		String rootname = "unspecified"; //$NON-NLS-1$
-		if (contentAssistRequest.getNode().getOwnerDocument().getDocumentElement() != null)
-			rootname = contentAssistRequest.getNode().getOwnerDocument().getDocumentElement().getNodeName();
-
-		String proposedText = "<!DOCTYPE " + rootname + " PUBLIC \"//UNKNOWN/\" \"unknown.dtd\">"; //$NON-NLS-1$ //$NON-NLS-2$
-		ICompletionProposal proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), 10, XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_DOCTYPE), "<!DOCTYPE ... >", //$NON-NLS-1$
-					null, null, XMLRelevanceConstants.R_DOCTYPE); // TODO
-		// provide
-		// special
-		// documentation
-		// on doc
-		// type
-		contentAssistRequest.addProposal(proposal);
-	}
-
-	/**
-	 * Add the proposals for a completely empty document
-	 */
-	protected void addEmptyDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		addXMLProposal(contentAssistRequest);
-	}
-
-	/**
-	 * Add the proposals for the name in an end tag
-	 */
-	protected void addEndTagNameProposals(ContentAssistRequest contentAssistRequest) {
-
-		if (contentAssistRequest.getStartOffset() + contentAssistRequest.getRegion().getTextLength() < contentAssistRequest.getReplacementBeginPosition()) {
-			CustomCompletionProposal proposal = new CustomCompletionProposal(">", //$NON-NLS-1$
-						contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), 1, XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC), SSEUIPlugin.getResourceString("%9concat", (new Object[]{" '>'"})), //$NON-NLS-1$ = "Close with {0}"//$NON-NLS-2$
-						null, null, XMLRelevanceConstants.R_END_TAG_NAME);
-			contentAssistRequest.addProposal(proposal);
-		} else {
-			XMLNode node = (XMLNode) contentAssistRequest.getNode();
-			ModelQuery modelQuery = ModelQueryUtil.getModelQuery(node.getOwnerDocument());
-			Node aNode = contentAssistRequest.getNode();
-			String matchString = contentAssistRequest.getMatchString();
-			if (matchString.startsWith("</")) //$NON-NLS-1$
-				matchString = matchString.substring(2);
-			while (aNode != null) {
-				if (aNode.getNodeType() == Node.ELEMENT_NODE) {
-					if (aNode.getNodeName().startsWith(matchString)) {
-						XMLNode aXMLNode = (XMLNode) aNode;
-						CMElementDeclaration ed = modelQuery.getCMElementDeclaration((Element) aNode);
-						if ((aXMLNode.getEndStructuredDocumentRegion() == null) && (ed == null || (ed.getContentType() != CMElementDeclaration.EMPTY))) {
-							String proposedText = aNode.getNodeName();
-							String proposedInfo = (ed != null) ? getAdditionalInfo(null, ed) : null;
-							if (node.getNodeType() == Node.TEXT_NODE && !contentAssistRequest.getDocumentRegion().isEnded())
-								proposedText += ">"; //$NON-NLS-1$
-							CustomCompletionProposal proposal = null;
-							// double check to see if the region acted upon is
-							// a tag name; replace it if so
-							Image image = CMImageUtil.getImage(ed);
-							if(image == null) {
-								image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC);							
-							}
-							if (contentAssistRequest.getRegion().getType() == XMLRegionContext.XML_TAG_NAME) {
-								proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getStartOffset(), contentAssistRequest.getRegion().getTextLength(), proposedText.length(), image, proposedText, null, proposedInfo, XMLRelevanceConstants.R_END_TAG_NAME);
-							} else {
-								proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), proposedText.length(), image, SSEUIPlugin.getResourceString("%9concat", (new Object[]{"'" + proposedText + "'"})), //$NON-NLS-1$ = "Close with {0}"//$NON-NLS-2$ //$NON-NLS-3$
-											null, proposedInfo, XMLRelevanceConstants.R_END_TAG_NAME);
-							}
-							contentAssistRequest.addProposal(proposal);
-						}
-					}
-				}
-				aNode = aNode.getParentNode();
-			}
-		}
-	}
-
-	/**
-	 * Prompt for end tags to a non-empty Node that hasn't ended Handles these
-	 * cases: <br>
-	 * <tagOpen>| <br>
-	 * <tagOpen>< |<br>
-	 * <tagOpen></ |
-	 * 
-	 * @param contentAssistRequest
-	 */
-	protected void addEndTagProposals(ContentAssistRequest contentAssistRequest) {
-		XMLNode node = (XMLNode) contentAssistRequest.getParent();
-
-		// CMVC 241090 for special meta-info comment tags
-		if (isCommentNode(node)) {
-			// loop and find non comment node parent
-			while (node != null && isCommentNode(node)) {
-				node = (XMLNode) node.getParentNode();
-			}
-		}
-
-		// data to create a CustomCompletionProposal
-		String replaceText = node.getNodeName() + ">"; //$NON-NLS-1$
-		int replaceBegin = contentAssistRequest.getReplacementBeginPosition();
-		int replaceLength = contentAssistRequest.getReplacementLength();
-		int cursorOffset = node.getNodeName().length() + 1;
-		String displayString = ""; //$NON-NLS-1$
-		String proposedInfo = ""; //$NON-NLS-1$
-		Image image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC);
-
-		setErrorMessage(null);
-		boolean addProposal = false;
-
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			// fix for CMVC 261790
-			// ////////////////////////////////////////////////////////////////////////////////////
-			IStructuredDocument sDoc = (IStructuredDocument) fTextViewer.getDocument();
-			IStructuredDocumentRegion xmlEndTagOpen = sDoc.getRegionAtCharacterOffset(contentAssistRequest.getReplacementBeginPosition());
-			// skip backward to "<", "</", or the (unclosed) start tag, null
-			// if not found
-			String type = ""; //$NON-NLS-1$
-			while (xmlEndTagOpen != null && (type = xmlEndTagOpen.getType()) != XMLRegionContext.XML_END_TAG_OPEN && type != XMLRegionContext.XML_TAG_CLOSE && !needsEndTag(xmlEndTagOpen) && type != XMLRegionContext.XML_TAG_OPEN) {
-				xmlEndTagOpen = xmlEndTagOpen.getPrevious();
-			}
-
-			if (xmlEndTagOpen == null)
-				return;
-
-			node = (XMLNode) node.getModel().getIndexedRegion(xmlEndTagOpen.getStartOffset());
-			node = (XMLNode) node.getParentNode();
-
-			if (isStartTag(xmlEndTagOpen)) {
-				// this is the case for a start tag w/out end tag
-				// eg:
-				// <p>
-				// 	  <% String test = "test"; %>
-				// |
-				if (needsEndTag(xmlEndTagOpen)) {
-					String tagName = getTagName(xmlEndTagOpen);
-					xmlEndTagOpen.getTextEndOffset();
-					replaceLength = 0;
-					replaceText = "</" + tagName + ">"; //$NON-NLS-1$ //$NON-NLS-2$ $NON-NLS-2$
-					//replaceText = "</" + node.getNodeName() + ">";
-					// //$NON-NLS-1$ $NON-NLS-2$
-					cursorOffset = tagName.length() + 3;
-					displayString = SSEUIPlugin.getResourceString("%17concat", (new Object[]{tagName})); //$NON-NLS-1$
-					addProposal = true;
-				}
-			} else if (type == XMLRegionContext.XML_END_TAG_OPEN) {
-				// this is the case for: <tag> </ |
-				// possibly <tag> </ |<anotherTag>
-				// should only be replacing white space...
-				replaceLength = (replaceBegin > xmlEndTagOpen.getTextEndOffset()) ? replaceBegin - xmlEndTagOpen.getTextEndOffset() : 0;
-				replaceText = node.getNodeName() + ">"; //$NON-NLS-1$
-				cursorOffset = replaceText.length();
-				replaceBegin = xmlEndTagOpen.getTextEndOffset();
-				displayString = SSEUIPlugin.getResourceString("%15concat", (new Object[]{node.getNodeName()})); //$NON-NLS-1$
-				addProposal = true;
-			} else if (type == XMLRegionContext.XML_TAG_OPEN) {
-				// this is the case for: <tag> < |
-				replaceText = "/" + node.getNodeName() + ">"; //$NON-NLS-1$ //$NON-NLS-2$ $NON-NLS-2$
-				cursorOffset = replaceText.length();
-				//replaceText = "/" + node.getNodeName() + ">"; //$NON-NLS-1$
-				// $NON-NLS-2$
-				// should only be replacing white space...
-				replaceLength = (replaceBegin > xmlEndTagOpen.getTextEndOffset()) ? replaceBegin - xmlEndTagOpen.getTextEndOffset() : 0;
-				replaceBegin = xmlEndTagOpen.getTextEndOffset();
-				displayString = SSEUIPlugin.getResourceString("%15concat", (new Object[]{"/" + node.getNodeName()})); //$NON-NLS-1$ //$NON-NLS-2$
-				addProposal = true;
-			}
-		}
-		// fix for CMVC 261790
-		// ////////////////////////////////////////////////////////////////////////////////////
-		// fix for CMVC 263163, sometimes the node is not null, but
-		// getNodeValue() is null, put in a null check
-		else if (node.getNodeValue() != null && node.getNodeValue().indexOf("</") != -1) { //$NON-NLS-1$
-			// the case where "</" is started, but the nodes comes in as a
-			// text node (instead of element)
-			// like this: <tag> </|
-			Node parent = node.getParentNode();
-			if (parent != null && parent.getNodeType() != Node.DOCUMENT_NODE) {
-				replaceText = parent.getNodeName() + ">"; //$NON-NLS-1$
-				cursorOffset = replaceText.length();
-				displayString = SSEUIPlugin.getResourceString("%17concat", (new Object[]{parent.getNodeName()})); //$NON-NLS-1$
-				setErrorMessage(null);
-				addProposal = true;
-			}
-		}
-		// end fix for CMVC 261790
-		// ////////////////////////////////////////////////////////////////////////////////////
-		else if (node.getNodeType() == Node.DOCUMENT_NODE) {
-			setErrorMessage(UNKNOWN_CONTEXT);
-		}
-		if (addProposal == true) {
-			CustomCompletionProposal proposal = new CustomCompletionProposal(replaceText, replaceBegin, replaceLength, cursorOffset, image, displayString, null, proposedInfo, XMLRelevanceConstants.R_END_TAG);
-			contentAssistRequest.addProposal(proposal);
-		}
-	}
-
-	protected void addEntityProposals(ContentAssistRequest contentAssistRequest, int documentPosition, ITextRegion completionRegion, XMLNode treeNode) {
-		ICompletionProposal[] eps = computeEntityReferenceProposals(documentPosition, completionRegion, treeNode);
-		for (int i = 0; eps != null && i < eps.length; i++)
-			contentAssistRequest.addProposal(eps[i]);
-	}
-
-	protected void addEntityProposals(Vector proposals, Properties map, String key, int nodeOffset, IStructuredDocumentRegion sdRegion, ITextRegion completionRegion) {
-		if (map == null)
-			return;
-		String entityName = ""; //$NON-NLS-1$
-		String entityValue = ""; //$NON-NLS-1$
-		Image entityIcon = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ENTITY_REFERENCE);
-		String replacementText = ""; //$NON-NLS-1$
-		String displayString = ""; //$NON-NLS-1$
-		Enumeration keys = map.keys();
-
-		while (keys != null && keys.hasMoreElements()) {
-			entityName = (String) keys.nextElement();
-			entityValue = map.getProperty(entityName);
-			// filter based on partial entity string...
-			if (entityName.toLowerCase().startsWith(key.toLowerCase()) || key.trim().equals("")) //$NON-NLS-1$
-			{
-				// figure out selection...if text is selected, add it to
-				// selection length
-				int selectionLength = nodeOffset;
-				if (fTextViewer != null) {
-					selectionLength += fTextViewer.getSelectedRange().y;
-				}
-				// create a new proposal for entity string...
-				replacementText = "&" + entityName + ";"; //$NON-NLS-1$ //$NON-NLS-2$ 
-				displayString = "&" + entityName + "; (" + entityValue + ")"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				ICompletionProposal cp = new CustomCompletionProposal(replacementText, sdRegion.getStartOffset(completionRegion), selectionLength, replacementText.length(), entityIcon, displayString, null, null, XMLRelevanceConstants.R_ENTITY);
-				if (cp != null) {
-					proposals.add(cp);
-				}
-			}
-		}
-	}
-
-	protected void addPCDATAProposal(String nodeName, ContentAssistRequest contentAssistRequest) {
-		CustomCompletionProposal proposal = new CustomCompletionProposal("<![CDATA[]]>", //$NON-NLS-1$
-					contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), 9, XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_CDATASECTION), "CDATA Section", //$NON-NLS-1$
-					null, null, XMLRelevanceConstants.R_CDATA);
-		contentAssistRequest.addProposal(proposal);
-
-		proposal = new CustomCompletionProposal(nodeName, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), nodeName.length(), XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TXTEXT), "#PCDATA", //$NON-NLS-1$
-					null, null, XMLRelevanceConstants.R_CDATA);
-		contentAssistRequest.addProposal(proposal);
-	}
-
-	protected void addStartDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		Node aNode = contentAssistRequest.getNode();
-		boolean xmlpiFound = false;
-		Document owningDocument = aNode.getOwnerDocument();
-		// ==> // int xmlpiNodePosition = -1;
-
-		// make sure xmlpi is root element
-		// don't want doctype proposal if XMLPI isn't first element...
-		// CMVC 242943
-		// CMVC 245532
-		Node first = owningDocument.getFirstChild();
-		boolean xmlpiIsFirstElement = (first != null && first.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE);
-		boolean insertDoctype = xmlpiIsFirstElement;
-
-		for (Node child = owningDocument.getFirstChild(); child != null; child = child.getNextSibling()) {
-			boolean xmlpi = (child.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE && child.getNodeName().equals("xml")); //$NON-NLS-1$
-			xmlpiFound = xmlpiFound || xmlpi;
-			if (xmlpiFound) {
-				if (child instanceof XMLNode) {
-					// ==> // int xmlpiNodePosition =
-					// ((XMLNode)child).getEndOffset();
-				}
-				// skip white space and text
-				while ((child = child.getNextSibling()) != null && (child.getNodeType() == Node.TEXT_NODE)) {
-				}
-				// check if theres a node inbetween XMLPI and cursor position
-				if (child != null && child instanceof XMLNode) {
-					// CMVC 257486
-					if (contentAssistRequest.getReplacementBeginPosition() >= ((XMLNode) child).getEndOffset() || !xmlpiIsFirstElement) {
-						insertDoctype = false;
-					}
-				}
-				break;
-			}
-		}
-
-		if (!xmlpiFound) {
-			addXMLProposal(contentAssistRequest);
-		} else if (owningDocument.getDoctype() == null && isCursorAfterXMLPI(contentAssistRequest) && insertDoctype) {
-			addDocTypeProposal(contentAssistRequest);
-		}
-	}
-
-	/**
-	 * Close an unclosed start tag
-	 */
-	protected void addTagCloseProposals(ContentAssistRequest contentAssistRequest) {
-		XMLNode node = (XMLNode) contentAssistRequest.getParent();
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-
-			CMElementDeclaration elementDecl = getCMElementDeclaration(node);
-			String proposedInfo = (elementDecl != null) ? getAdditionalInfo(null, elementDecl) : null;
-			int contentType = (elementDecl != null) ? elementDecl.getContentType() : CMElementDeclaration.ANY;
-			// if it's XML and content doesn't HAVE to be element, add "/>"
-			// proposal.
-			boolean endWithSlashBracket = (getXML(node) && contentType != CMElementDeclaration.ELEMENT);
-
-			Image image = CMImageUtil.getImage(elementDecl);
-			if(image == null){
-				image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC);
-			}
-
-			// is the start tag ended properly?
-			if (contentAssistRequest.getDocumentRegion() == node.getFirstStructuredDocumentRegion() && !(node.getFirstStructuredDocumentRegion()).isEnded()) {
-				setErrorMessage(null);
-				// Is this supposed to be an empty tag? Note that if we can't
-				// tell, we assume it's not.
-				if (elementDecl != null && elementDecl.getContentType() == CMElementDeclaration.EMPTY) {
-					// prompt with a self-closing end character if needed
-					CustomCompletionProposal proposal = new CustomCompletionProposal(getContentGenerator().getStartTagClose(node, elementDecl), contentAssistRequest.getReplacementBeginPosition(),
-					// this is one of the few times to ignore the length --
-								// always insert
-								// contentAssistRequest.getReplacementLength(),
-								0, getContentGenerator().getStartTagClose(node, elementDecl).length(), image, SSEUIPlugin.getResourceString("%3concat", (new Object[]{getContentGenerator().getStartTagClose(node, elementDecl)})), //$NON-NLS-1$ = "Close with '{0}'"
-								null, proposedInfo, XMLRelevanceConstants.R_CLOSE_TAG);
-					contentAssistRequest.addProposal(proposal);
-				} else {
-					// prompt with a close for the start tag
-					CustomCompletionProposal proposal = new CustomCompletionProposal(">", //$NON-NLS-1$
-								contentAssistRequest.getReplacementBeginPosition(),
-								// this is one of the few times to ignore the
-								// length -- always insert
-								// contentAssistRequest.getReplacementLength(),
-								0, 1, image, SSEUIPlugin.getResourceString("%9concat", (new Object[]{" '>'"})), //$NON-NLS-1$ = "Close with {0}"//$NON-NLS-2$
-								null, proposedInfo, XMLRelevanceConstants.R_CLOSE_TAG);
-					contentAssistRequest.addProposal(proposal);
-
-					// prompt with the closer for the start tag and an end tag
-					// if one is not present
-					if (node.getEndStructuredDocumentRegion() == null) {
-						// FIX FOR CMVC 247482
-						// make sure tag name is actually what it thinks it
-						// is...(eg. <%@ vs. <jsp:directive)
-						IStructuredDocumentRegion sdr = contentAssistRequest.getDocumentRegion();
-						String openingTagText = (sdr != null) ? sdr.getFullText() : ""; //$NON-NLS-1$
-						if (openingTagText != null && openingTagText.indexOf(node.getNodeName()) != -1) {
-							proposal = new CustomCompletionProposal("></" + node.getNodeName() + ">", //$NON-NLS-2$//$NON-NLS-1$
-										contentAssistRequest.getReplacementBeginPosition(),
-										// this is one of the few times to
-										// ignore the length -- always insert
-										// contentAssistRequest.getReplacementLength(),
-										0, 1, image, SSEUIPlugin.getResourceString("%5concat", (new Object[]{node.getNodeName()})), //$NON-NLS-1$ = "Close with '></{0}>'"
-										null, proposedInfo, XMLRelevanceConstants.R_CLOSE_TAG);
-							contentAssistRequest.addProposal(proposal);
-						}
-					}
-					// prompt with slash bracket "/>" incase if it's a self
-					// ending tag
-					if (endWithSlashBracket) {
-						proposal = new CustomCompletionProposal("/>", //$NON-NLS-1$
-									contentAssistRequest.getReplacementBeginPosition(),
-									// this is one of the few times to ignore
-									// the length -- always insert
-									// contentAssistRequest.getReplacementLength(),
-									0, 2, image, SSEUIPlugin.getResourceString("%9concat", (new Object[]{" \"/>\""})), //$NON-NLS-1$ = "Close with {0}"//$NON-NLS-2$
-									null, proposedInfo, XMLRelevanceConstants.R_CLOSE_TAG + 1); // +1
-						// to
-						// bring
-						// to
-						// top
-						// of
-						// list
-						contentAssistRequest.addProposal(proposal);
-					}
-				}
-			} else if (contentAssistRequest.getDocumentRegion() == node.getLastStructuredDocumentRegion() && !node.getLastStructuredDocumentRegion().isEnded()) {
-				setErrorMessage(null);
-				// prompt with a closing end character for the end tag
-				CustomCompletionProposal proposal = new CustomCompletionProposal(">", //$NON-NLS-1$
-							contentAssistRequest.getReplacementBeginPosition(),
-							// this is one of the few times to ignore the
-							// length -- always insert
-							// contentAssistRequest.getReplacementLength(),
-							0, 1, image, SSEUIPlugin.getResourceString("%9concat", (new Object[]{" '>'"})), //$NON-NLS-1$ = "Close with {0}"//$NON-NLS-2$
-							null, proposedInfo, XMLRelevanceConstants.R_CLOSE_TAG);
-				contentAssistRequest.addProposal(proposal);
-			}
-		} else if (node.getNodeType() == Node.DOCUMENT_NODE) {
-			setErrorMessage(UNKNOWN_CONTEXT);
-		}
-	}
-
-	protected void addTagInsertionProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		List cmnodes = null;
-		Node parent = contentAssistRequest.getParent();
-		List validActions = null;
-		String error = null;
-
-		// CMVC #242943 shouldn't have proposals before XMLPI
-		// (nsd) This is only valid at the document element level
-		// only valid if it's XML (check added 2/17/2004)
-		if (parent != null && parent.getNodeType() == Node.DOCUMENT_NODE && ((XMLDocument) parent).isXMLType() && !isCursorAfterXMLPI(contentAssistRequest)) {
-			return;
-		}
-		// only want proposals if cursor is after doctype...
-		if (!isCursorAfterDoctype(contentAssistRequest))
-			return;
-
-		// CMVC 248081
-		// fix for meta-info comment nodes.. they currently "hide" other
-		// proposals because the don't
-		// have a content model (so can't propose any children..)
-		if (parent != null && parent instanceof XMLNode && isCommentNode((XMLNode) parent)) {
-			// loop and find non comment node?
-			while (parent != null && isCommentNode((XMLNode) parent)) {
-				parent = (XMLNode) parent.getParentNode();
-			}
-		}
-
-		if (parent.getNodeType() == Node.ELEMENT_NODE) {
-			CMElementDeclaration parentDecl = getCMElementDeclaration(parent);
-			if (parentDecl != null) {
-				// XSD-specific ability - no filtering
-				CMDataType childType = parentDecl.getDataType();
-				if (childType != null) {
-					String[] childStrings = childType.getEnumeratedValues();
-					if (childStrings != null) {
-						// the content string is the sole valid child...so
-						// replace the rest
-						int begin = contentAssistRequest.getReplacementBeginPosition();
-						int length = contentAssistRequest.getReplacementLength();
-						if (parent instanceof XMLNode) {
-							if (((XMLNode) parent).getLastStructuredDocumentRegion() != ((XMLNode) parent).getFirstStructuredDocumentRegion()) {
-								begin = ((XMLNode) parent).getFirstStructuredDocumentRegion().getEndOffset();
-								length = ((XMLNode) parent).getLastStructuredDocumentRegion().getStartOffset() - begin;
-							}
-						}
-						String proposedInfo = getAdditionalInfo(parentDecl, childType);
-						for (int i = 0; i < childStrings.length; i++) {
-							CustomCompletionProposal textProposal = new CustomCompletionProposal(childStrings[i], begin, length, childStrings[i].length(), XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ENUM), childStrings[i], null, proposedInfo, XMLRelevanceConstants.R_TAG_INSERTION);
-							contentAssistRequest.addProposal(textProposal);
-						}
-					}
-				}
-			}
-			if (parentDecl != null && parentDecl.getContentType() == CMElementDeclaration.PCDATA) {
-				addPCDATAProposal(parentDecl.getNodeName(), contentAssistRequest);
-			} else {
-				// retrieve the list of children
-				validActions = getAvailableChildrenAtIndex((Element) parent, childPosition);
-				cmnodes = getValidCMNodes(childPosition, ModelQueryAction.INSERT, validActions);
-				Iterator nodeIterator = cmnodes.iterator();
-				if (!nodeIterator.hasNext()) {
-					if (getCMElementDeclaration(parent) != null)
-						error = SSEUIPlugin.getResourceString("%1concat", (new Object[]{parent.getNodeName()})); //$NON-NLS-1$ = "{0} has no available child tags."
-					else
-						error = SSEUIPlugin.getResourceString("%31concat", (new Object[]{parent.getNodeName()})); //$NON-NLS-1$
-				}
-				String matchString = contentAssistRequest.getMatchString();
-				// chop off any leading <'s and whitespace from the
-				// matchstring
-				while ((matchString.length() > 0) && (Character.isWhitespace(matchString.charAt(0)) || beginsWith(matchString, "<"))) //$NON-NLS-1$
-					//$NON-NLS-1$
-					matchString = matchString.substring(1);
-				while (nodeIterator.hasNext()) {
-					Object o = nodeIterator.next();
-					if (o instanceof CMElementDeclaration) {
-						CMElementDeclaration elementDecl = (CMElementDeclaration) o;
-						// only add proposals for the child element's that
-						// begin with the matchstring
-						String tagname = getRequiredName(parent, elementDecl);
-						Image image = CMImageUtil.getImage(elementDecl);
-						if(image == null){
-							image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC);
-						}
-						// Account for the &lt; and &gt;. If attributes were
-						// added, the cursor will be placed
-						// at the offset before of the first character of the
-						// first attribute name.
-						int markupAdjustment = getContentGenerator().getMinimalStartTagLength(parent, elementDecl);
-						if (beginsWith(tagname, matchString)) {
-							String proposedText = getRequiredText(parent, elementDecl);
-							String proposedInfo = getAdditionalInfo(parentDecl, elementDecl);
-							CustomCompletionProposal proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), markupAdjustment, image, tagname, null, proposedInfo, XMLRelevanceConstants.R_TAG_INSERTION);
-							contentAssistRequest.addProposal(proposal);
-						}
-					}
-				}
-				if (contentAssistRequest.getProposals().size() == 0) {
-					if (error != null)
-						setErrorMessage(error);
-					else if (contentAssistRequest.getMatchString() != null && contentAssistRequest.getMatchString().length() > 0)
-						setErrorMessage(SSEUIPlugin.getResourceString("%11concat", (new Object[]{parent.getNodeName(), contentAssistRequest.getMatchString()}))); //$NON-NLS-1$
-					//$NON-NLS-1$ = "No known child tag names of <{0}> begin with \"{1}\"."
-					else
-						setErrorMessage(SSEUIPlugin.getResourceString("%14concat", (new Object[]{parent.getNodeName()}))); //$NON-NLS-1$
-				}
-			}
-		} else if (parent.getNodeType() == Node.DOCUMENT_NODE) {
-			// Can only prompt with elements if the cursor position is past
-			// the XML processing
-			// instruction and DOCTYPE declaration
-			boolean xmlpiFound = false;
-			boolean doctypeFound = false;
-			int minimumOffset = -1;
-
-			for (Node child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {
-
-				boolean xmlpi = (child.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE && child.getNodeName().equals("xml")); //$NON-NLS-1$
-				boolean doctype = child.getNodeType() == Node.DOCUMENT_TYPE_NODE;
-				if (xmlpi || doctype && minimumOffset < 0)
-					minimumOffset = ((XMLNode) child).getFirstStructuredDocumentRegion().getStartOffset() + ((XMLNode) child).getFirstStructuredDocumentRegion().getTextLength();
-				xmlpiFound = xmlpiFound || xmlpi;
-				doctypeFound = doctypeFound || doctype;
-			}
-			if (!xmlpiFound && contentAssistRequest.getReplacementBeginPosition() < minimumOffset) {
-				addXMLProposal(contentAssistRequest);
-			}
-
-			if (contentAssistRequest.getReplacementBeginPosition() >= minimumOffset) {
-				List childDecls = getAvailableRootChildren((Document) parent, childPosition);
-				for (int i = 0; i < childDecls.size(); i++) {
-					CMElementDeclaration ed = (CMElementDeclaration) childDecls.get(i);
-					if (ed != null) {
-						Image image = CMImageUtil.getImage(ed);
-						if(image == null){
-							image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC);
-						}
-						String proposedText = getRequiredText(parent, ed);
-						String tagname = getRequiredName(parent, ed);
-						// account for the &lt; and &gt;
-						int markupAdjustment = getContentGenerator().getMinimalStartTagLength(parent, ed);
-						String proposedInfo = getAdditionalInfo(null, ed);
-						CustomCompletionProposal proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), markupAdjustment, image, tagname, null, proposedInfo, XMLRelevanceConstants.R_TAG_INSERTION);
-						contentAssistRequest.addProposal(proposal);
-					}
-				}
-			}
-		}
-	}
-
-	protected void addTagNameProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		List cmnodes = null;
-		Node parent = contentAssistRequest.getParent();
-		XMLNode node = (XMLNode) contentAssistRequest.getNode();
-		List validActions = null;
-		String error = null;
-		String matchString = contentAssistRequest.getMatchString();
-		if (parent.getNodeType() == Node.ELEMENT_NODE) {
-			// retrieve the list of children
-			validActions = getAvailableChildrenAtIndex((Element) parent, childPosition);
-			cmnodes = getValidCMNodes(childPosition, ModelQueryAction.INSERT, validActions);
-			Iterator nodeIterator = cmnodes.iterator();
-			// chop off any leading <'s and whitespace from the matchstring
-			while ((matchString.length() > 0) && (Character.isWhitespace(matchString.charAt(0)) || beginsWith(matchString, "<"))) //$NON-NLS-1$
-				//$NON-NLS-1$
-				matchString = matchString.substring(1);
-			if (!nodeIterator.hasNext())
-				error = SSEUIPlugin.getResourceString("%8concat", (new Object[]{parent.getNodeName()})); //$NON-NLS-1$
-			while (nodeIterator.hasNext()) {
-				CMNode elementDecl = (CMNode) nodeIterator.next();
-				if (elementDecl != null) {
-					// only add proposals for the child element's that begin
-					// with the matchstring
-					String proposedText = null;
-					int cursorAdjustment = 0;
-
-					// do a check to see if partial attributes of partial tag
-					// names are in list
-					if ((node != null && node.getAttributes() != null && node.getAttributes().getLength() > 0 && attributeInList(node, parent, elementDecl)) || ((node.getNodeType() != Node.TEXT_NODE) && node.getFirstStructuredDocumentRegion().isEnded())) {
-
-						proposedText = getRequiredName(parent, elementDecl);
-						cursorAdjustment = proposedText.length();
-					} else {
-						proposedText = getRequiredName(parent, elementDecl);
-						cursorAdjustment = proposedText.length();
-						if (elementDecl instanceof CMElementDeclaration) {
-							CMElementDeclaration ed = (CMElementDeclaration) elementDecl;
-							if (ed.getContentType() == CMElementDeclaration.EMPTY) {
-								proposedText += getContentGenerator().getStartTagClose(parent, ed);
-								cursorAdjustment = proposedText.length();
-							} else {
-								cursorAdjustment = proposedText.length() + 1;
-								proposedText += "></" + getRequiredName(parent, elementDecl) + ">"; //$NON-NLS-2$//$NON-NLS-1$
-							}
-						}
-					}
-					if (beginsWith(proposedText, matchString)) {
-						Image image = CMImageUtil.getImage(elementDecl);
-						if(image == null){
-							image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC);
-						}
-						String proposedInfo = getAdditionalInfo(getCMElementDeclaration(parent), elementDecl);
-						CustomCompletionProposal proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), cursorAdjustment, image, getRequiredName(parent, elementDecl), null, proposedInfo, XMLRelevanceConstants.R_TAG_NAME);
-						contentAssistRequest.addProposal(proposal);
-					}
-				}
-			}
-			if (contentAssistRequest.getProposals().size() == 0) {
-				if (error != null)
-					setErrorMessage(error);
-				else if (contentAssistRequest.getMatchString() != null && contentAssistRequest.getMatchString().length() > 0)
-					setErrorMessage(SSEUIPlugin.getResourceString("%27concat", (new Object[]{parent.getNodeName(), contentAssistRequest.getMatchString()}))); //$NON-NLS-1$
-				//$NON-NLS-1$ = "No known child tag names of <{0}> begin with \"{1}\""
-				else
-					setErrorMessage(SSEUIPlugin.getResourceString("%28concat", (new Object[]{parent.getNodeName()}))); //$NON-NLS-1$
-			}
-		} else if (parent.getNodeType() == Node.DOCUMENT_NODE) {
-			List childElements = getAvailableRootChildren((Document) parent, childPosition);
-			for (int i = 0; i < childElements.size(); i++) {
-				CMNode ed = (CMNode) childElements.get(i);
-				if (ed == null)
-					continue;
-				String proposedText = null;
-				int cursorAdjustment = 0;
-				proposedText = getRequiredName(parent, ed);
-				if (!beginsWith(proposedText, matchString))
-					continue;
-				if ((node != null && node.getAttributes() != null && node.getAttributes().getLength() > 0) || ((node.getNodeType() != Node.TEXT_NODE) && node.getFirstStructuredDocumentRegion().isEnded())) {
-					cursorAdjustment = proposedText.length();
-				} else {
-					cursorAdjustment = proposedText.length();
-					if (ed instanceof CMElementDeclaration) {
-						CMElementDeclaration elementDecl = (CMElementDeclaration) ed;
-						if (elementDecl.getContentType() == CMElementDeclaration.EMPTY) {
-							proposedText += getContentGenerator().getStartTagClose(parent, elementDecl);
-							cursorAdjustment = proposedText.length();
-						} else {
-							cursorAdjustment = proposedText.length() + 1;
-							proposedText += "></" + getRequiredName(parent, elementDecl) + ">"; //$NON-NLS-2$//$NON-NLS-1$
-						}
-					}
-				}
-				String proposedInfo = getAdditionalInfo(null, ed);
-				Image image = CMImageUtil.getImage(ed);
-				if(image == null){
-					image = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC);
-				}
-				CustomCompletionProposal proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), cursorAdjustment, image, getRequiredName(parent, ed), null, proposedInfo, XMLRelevanceConstants.R_TAG_NAME);
-				contentAssistRequest.addProposal(proposal);
-			}
-		}
-	}
-
-	protected void addXMLProposal(ContentAssistRequest contentAssistRequest) {
-		String proposedText = "<?xml version=\"1.0\" encoding=\"" + ContentTypeEncodingPreferences.getUserPreferredCharsetName(ContentTypeIdForXML.ContentTypeID_XML) + "\"?>"; //$NON-NLS-2$//$NON-NLS-1$
-		ICompletionProposal proposal = new CustomCompletionProposal(proposedText, contentAssistRequest.getReplacementBeginPosition(), contentAssistRequest.getReplacementLength(), proposedText.length(), XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_PROCESSINGINSTRUCTION), proposedText, null, null, XMLRelevanceConstants.R_XML_DECLARATION); // TODO
-		// add
-		// special
-		// XML
-		// proposal
-		// info
-		contentAssistRequest.addProposal(proposal);
-	}
-
-	/**
-	 * This method determines if any of the attributes in the proposed XMLNode
-	 * node, are possible values of attributes from possible Elements at this
-	 * point in the document according to the Content Model.
-	 * 
-	 * @param node
-	 *            the element with attributes that you would like to test if
-	 *            are possible for possible Elements at this point
-	 * @param cmnode
-	 *            possible element at this point in the document (depending on
-	 *            what 'node' is)
- true if any attributes of 'node' match any possible attributes
-	 *         from 'cmnodes' list.
-	 */
-	protected boolean attributeInList(XMLNode node, Node parent, CMNode cmnode) {
-		if (node == null || parent == null || cmnode == null)
-			return false;
-		String elementMatchString = node.getNodeName();
-		String cmnodeName = getRequiredName(parent, cmnode);//cmnode.getNodeName();
-		if (node instanceof Element) {
-			NamedNodeMap map = ((Element) node).getAttributes();
-			String attrMatchString = ""; //$NON-NLS-1$
-			CMNamedNodeMap cmattrMap = null;
-			// iterate attribute possibilities for partially started node
-			for (int i = 0; map != null && i < map.getLength(); i++) {
-				attrMatchString = map.item(i).getNodeName();
-				// filter on whatever user typed for element name already
-				if (beginsWith(cmnodeName, elementMatchString)) {
-					if (cmnode.getNodeType() == CMNode.ELEMENT_DECLARATION) {
-						cmattrMap = ((CMElementDeclaration) cmnode).getAttributes();
-						// iterate possible attributes from a cmnode in
-						// proposal list
-						for (int k = 0; cmattrMap != null && k < cmattrMap.getLength(); k++) {
-							// check if name matches
-							if (cmattrMap.item(k).getNodeName().equals(attrMatchString)) {
-								return true;
-							}
-						}
-					}
-				}
-			}
-		}
-		return false;
-	}
-
-	protected boolean beginsWith(String aString, String prefix) {
-		if (aString == null || prefix == null)
-			return true;
-		// (pa) 221190 matching independent of case to be consistant with Java
-		// editor CA
-		return aString.toLowerCase().startsWith(prefix.toLowerCase());
-	}
-
-	protected ContentAssistRequest computeAttributeProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		ContentAssistRequest contentAssistRequest = null;
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-		if (documentPosition < sdRegion.getStartOffset(completionRegion)) {
-			// setup to insert new attributes
-			contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, completionRegion, documentPosition, 0, matchString);
-		} else {
-			// Setup to replace an existing attribute name
-			contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, completionRegion, sdRegion.getStartOffset(completionRegion), completionRegion.getTextLength(), matchString);
-		}
-		addAttributeNameProposals(contentAssistRequest);
-		contentAssistRequest.setReplacementBeginPosition(documentPosition);
-		contentAssistRequest.setReplacementLength(0);
-		if (node.getFirstStructuredDocumentRegion() != null && (!node.getFirstStructuredDocumentRegion().isEnded())) {
-			addTagCloseProposals(contentAssistRequest);
-		}
-		return contentAssistRequest;
-	}
-
-	protected ContentAssistRequest computeAttributeValueProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		ContentAssistRequest contentAssistRequest = null;
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-		if (documentPosition > sdRegion.getStartOffset(completionRegion) + completionRegion.getTextLength() && sdRegion.getStartOffset(completionRegion) + completionRegion.getTextLength() != sdRegion.getStartOffset(completionRegion) + completionRegion.getLength()) {
-			// setup to add a new attribute at the documentPosition
-			XMLNode actualNode = (XMLNode) node.getModel().getIndexedRegion(sdRegion.getStartOffset(completionRegion));
-			contentAssistRequest = newContentAssistRequest(actualNode, actualNode, sdRegion, completionRegion, documentPosition, 0, matchString);
-			addAttributeNameProposals(contentAssistRequest);
-			if (actualNode.getFirstStructuredDocumentRegion() != null && !actualNode.getFirstStructuredDocumentRegion().isEnded()) {
-				addTagCloseProposals(contentAssistRequest);
-			}
-		} else {
-			// setup to replace the existing value
-			if (!nodeAtOffset.getFirstStructuredDocumentRegion().isEnded() && documentPosition < sdRegion.getStartOffset(completionRegion)) {
-				// if the IStructuredDocumentRegion isn't closed and the
-				// cursor is in front of the value, add
-				contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, completionRegion, documentPosition, 0, matchString);
-				addAttributeNameProposals(contentAssistRequest);
-			} else {
-				contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, completionRegion, sdRegion.getStartOffset(completionRegion), completionRegion.getTextLength(), matchString);
-				addAttributeValueProposals(contentAssistRequest);
-			}
-		}
-		return contentAssistRequest;
-	}
-
-	protected ContentAssistRequest computeCompletionProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode treeNode, XMLNode xmlnode) {
-		ContentAssistRequest contentAssistRequest = null;
-		String regionType = completionRegion.getType();
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-
-		// Handle the most common and best supported cases
-		if (xmlnode.getNodeType() == Node.ELEMENT_NODE || xmlnode.getNodeType() == Node.DOCUMENT_NODE) {
-			if (regionType == XMLRegionContext.XML_TAG_OPEN) {
-				contentAssistRequest = computeTagOpenProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			} else if (regionType == XMLRegionContext.XML_TAG_NAME) {
-				contentAssistRequest = computeTagNameProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			} else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				contentAssistRequest = computeAttributeProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			} else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				contentAssistRequest = computeEqualsProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			} else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE && documentPosition == sdRegion.getTextEndOffset() && (sdRegion.getText(completionRegion).endsWith("\"") || sdRegion.getText(completionRegion).endsWith("\'"))) //$NON-NLS-1$ //$NON-NLS-2$
-			{
-				// this is for when the cursor is at the end of the closing
-				// quote for an attribute..
-				XMLNode actualNode = (XMLNode) xmlnode.getModel().getIndexedRegion(sdRegion.getStartOffset(completionRegion));
-				contentAssistRequest = newContentAssistRequest(actualNode, actualNode, sdRegion, completionRegion, documentPosition, 0, matchString);
-				addTagCloseProposals(contentAssistRequest);
-			} else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				contentAssistRequest = computeAttributeValueProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			} else if ((regionType == XMLRegionContext.XML_TAG_CLOSE) || (regionType == XMLRegionContext.XML_EMPTY_TAG_CLOSE) || (regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_DIRECTIVE_CLOSE))) {
-				contentAssistRequest = computeTagCloseProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			} else if (regionType == XMLRegionContext.XML_END_TAG_OPEN) {
-				contentAssistRequest = computeEndTagOpenProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			} else if (regionType == XMLRegionContext.XML_CONTENT || regionType == XMLRegionContext.XML_CHAR_REFERENCE || regionType == XMLRegionContext.XML_ENTITY_REFERENCE || regionType == XMLRegionContext.XML_PE_REFERENCE) {
-				contentAssistRequest = computeContentProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-			}
-
-			// These ITextRegion types begin DOM Elements as well and although
-			// internally harder to assist,
-			// text insertions directly before them can be made
-			else if (documentPosition == sdRegion.getStartOffset(completionRegion) && (regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_COMMENT_OPEN) || regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_DECLARATION_OPEN) || regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_DIRECTIVE_OPEN) || regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_EXPRESSION_OPEN) || regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_SCRIPTLET_OPEN) || regionType == XMLRegionContext.XML_DECLARATION_OPEN || regionType == XMLRegionContext.XML_PI_OPEN || regionType == XMLRegionContext.XML_COMMENT_OPEN || regionType == XMLRegionContext.XML_CDATA_OPEN)) {
-				contentAssistRequest = newContentAssistRequest(treeNode, xmlnode.getParentNode(), sdRegion, completionRegion, documentPosition, 0, matchString);
-				addTagInsertionProposals(contentAssistRequest, getElementPositionForModelQuery(treeNode));
-				addStartDocumentProposals(contentAssistRequest);
-			}
-		}
-		// Not a Document or Element? (odd cases go here for now)
-		else if (isCloseRegion(completionRegion)) {
-			contentAssistRequest = newContentAssistRequest(treeNode, xmlnode.getParentNode(), sdRegion, completionRegion, sdRegion.getStartOffset(completionRegion) + completionRegion.getLength(), 0, matchString);
-			addStartDocumentProposals(contentAssistRequest);
-			if (documentPosition >= sdRegion.getTextEndOffset(completionRegion))
-				addTagInsertionProposals(contentAssistRequest, getElementPositionForModelQuery(treeNode) + 1);
-		} else if (documentPosition == sdRegion.getStartOffset(completionRegion) && (regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_COMMENT_OPEN) || regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_DECLARATION_OPEN) || regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_DIRECTIVE_OPEN) || regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_EXPRESSION_OPEN) || regionType.equals(DOMJSPRegionContextsPrivateCopy.JSP_SCRIPTLET_OPEN) || regionType == XMLRegionContext.XML_DECLARATION_OPEN || regionType == XMLRegionContext.XML_PI_OPEN || regionType == XMLRegionContext.XML_COMMENT_OPEN || regionType == XMLRegionContext.XML_CDATA_OPEN)) {
-			contentAssistRequest = newContentAssistRequest(treeNode, xmlnode.getParentNode(), sdRegion, completionRegion, documentPosition, 0, matchString);
-			addTagInsertionProposals(contentAssistRequest, getElementPositionForModelQuery(treeNode));
-			addStartDocumentProposals(contentAssistRequest);
-		}
-		return contentAssistRequest;
-	}
-
-	/**
-	 * CONTENT ASSIST STARTS HERE
-	 * 
-	 * Return a list of proposed code completions based on the specified
-	 * location within the document that corresponds to the current cursor
-	 * position within the text-editor control.
-	 * 
-	 * @param textViewer
-	 * @param documentPosition -
-	 *            the cursor location within the document
-	 * 
- an array of ICompletionProposals
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer textViewer, int documentPosition) {
-
-		setErrorMessage(null);
-
-		fTextViewer = textViewer;
-
-		IndexedRegion treeNode = ContentAssistUtils.getNodeAt((StructuredTextViewer) textViewer, documentPosition);
-
-		Node node = (Node) treeNode;
-		while (node != null && node.getNodeType() == Node.TEXT_NODE && node.getParentNode() != null)
-			node = node.getParentNode();
-		XMLNode xmlnode = (XMLNode) node;
-
-		ContentAssistRequest contentAssistRequest = null;
-
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-		ITextRegion completionRegion = getCompletionRegion(documentPosition, node);
-
-		String matchString = getMatchString(sdRegion, completionRegion, documentPosition);
-
-		// Handle empty Documents
-		if (completionRegion == null) {
-			if (((treeNode == null) || ((Node) treeNode).getNodeType() == Node.DOCUMENT_NODE) && completionRegion == null && (xmlnode == null || xmlnode.getChildNodes() == null || xmlnode.getChildNodes().getLength() == 0)) {
-				IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(textViewer.getDocument());
-				try {
-					if (sModel != null) {
-						XMLDocument docNode = ((XMLModel) sModel).getDocument();
-						contentAssistRequest = newContentAssistRequest(docNode, docNode, sdRegion, completionRegion, documentPosition, 0, null);
-						addEmptyDocumentProposals(contentAssistRequest);
-					}
-				} finally {
-					if (sModel != null)
-						sModel.releaseFromRead();
-				}
-				return contentAssistRequest.getCompletionProposals();
-			}
-			// MASSIVE ERROR CONDITION
-			Logger.logException(new IllegalStateException("completion region was null")); //$NON-NLS-1$
-			setErrorMessage(INTERNALERROR);
-			contentAssistRequest = newContentAssistRequest((Node) treeNode, node.getParentNode(), sdRegion, completionRegion, documentPosition, 0, ""); //$NON-NLS-1$
-			return contentAssistRequest.getCompletionProposals();
-		}
-
-
-		// catch documents where no region can be determined
-		if (xmlnode.getNodeType() == Node.DOCUMENT_NODE && (completionRegion == null || xmlnode.getChildNodes() == null || xmlnode.getChildNodes().getLength() == 0)) {
-			contentAssistRequest = computeStartDocumentProposals(documentPosition, matchString, completionRegion, (XMLNode) treeNode, xmlnode);
-			return contentAssistRequest.getCompletionProposals();
-		}
-
-		// compute normal proposals
-		contentAssistRequest = computeCompletionProposals(documentPosition, matchString, completionRegion, (XMLNode) treeNode, xmlnode);
-		if (contentAssistRequest == null) {
-			contentAssistRequest = newContentAssistRequest((Node) treeNode, node.getParentNode(), sdRegion, completionRegion, documentPosition, 0, ""); //$NON-NLS-1$
-			if (Debug.displayWarnings)
-				System.out.println(UNKNOWN_CONTEXT + " " + completionRegion.getType() + "@" + documentPosition); //$NON-NLS-2$//$NON-NLS-1$
-			setErrorMessage(UNKNOWN_CONTEXT);
-		}
-
-		if (contentAssistRequest.getProposals().size() == 0)
-			setErrorMessage(UNKNOWN_CONTEXT);
-
-		return contentAssistRequest.getCompletionProposals();
-	}
-
-	protected ContentAssistRequest computeContentProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		ContentAssistRequest contentAssistRequest = null;
-
-		// setup to add children at the content node's position
-		contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, getStructuredDocumentRegion(documentPosition), completionRegion, documentPosition, 0, matchString);
-		if (node != null && node.getNodeType() == Node.DOCUMENT_NODE && ((Document) node).getDoctype() == null)
-			addStartDocumentProposals(contentAssistRequest);
-		addTagInsertionProposals(contentAssistRequest, getElementPositionForModelQuery(nodeAtOffset));
-		if (node.getNodeType() != Node.DOCUMENT_NODE) {
-			addEndTagProposals(contentAssistRequest);
-		}
-		// entities?
-		addEntityProposals(contentAssistRequest, documentPosition, completionRegion, node);
-		//addEntityProposals(contentAssistRequest);
-		return contentAssistRequest;
-	}
-
-	/**
-	 * Returns information about possible contexts based on the specified
-	 * location within the document that corresponds to the current cursor
-	 * position within the text viewer.
-	 * 
-	 * @param viewer
-	 *            the viewer whose document is used to compute the possible
-	 *            contexts
- an array of context information objects or <code>null</code>
-	 *         if no context could be found
-	 */
-	public IContextInformation[] computeContextInformation(ITextViewer viewer, int documentOffset) {
-		if (fAttributeInfoProvider == null)
-			fAttributeInfoProvider = new AttributeContextInformationProvider((IStructuredDocument) viewer.getDocument(), (AttributeContextInformationPresenter) getContextInformationValidator());
-		return fAttributeInfoProvider.getAttributeInformation(documentOffset);
-	}
-
-	protected ContentAssistRequest computeEndTagOpenProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		ContentAssistRequest contentAssistRequest = null;
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-		int completionRegionStart = sdRegion.getStartOffset(completionRegion);
-		int completionRegionLength = completionRegion.getLength();
-		IStructuredDocumentRegion sdRegionAtCompletionOffset = node.getStructuredDocument().getRegionAtCharacterOffset(completionRegionStart + completionRegionLength);
-		ITextRegion regionAtEndOfCompletion = sdRegionAtCompletionOffset.getRegionAtCharacterOffset(completionRegionStart + completionRegionLength);
-
-		if (documentPosition != completionRegionStart && regionAtEndOfCompletion != null && regionAtEndOfCompletion.getType() == XMLRegionContext.XML_TAG_NAME) {
-			ITextRegion nameRegion = regionAtEndOfCompletion;
-			contentAssistRequest = newContentAssistRequest(nodeAtOffset, nodeAtOffset.getParentNode(), sdRegion, completionRegion, sdRegion.getStartOffset(nameRegion), nameRegion.getTextLength(), matchString);
-		} else {
-			if (nodeAtOffset.getFirstStructuredDocumentRegion() == sdRegion) {
-				// abnormal case, this unmatched end tag will be a sibling
-				contentAssistRequest = newContentAssistRequest(nodeAtOffset, nodeAtOffset.getParentNode(), sdRegion, completionRegion, documentPosition, 0, matchString);
-			} else {
-				// normal case, this end tag is the parent
-				contentAssistRequest = newContentAssistRequest(nodeAtOffset, nodeAtOffset, sdRegion, completionRegion, documentPosition, 0, matchString);
-			}
-		}
-		//if (documentPosition >= sdRegion.getStartOffset(completionRegion) +
-		// completionRegion.getTextLength())
-		addEndTagProposals(contentAssistRequest);
-		//else
-		if (completionRegionStart == documentPosition) {
-			// positioned at start of end tag
-			addTagInsertionProposals(contentAssistRequest, node.getChildNodes().getLength());
-		}
-		return contentAssistRequest;
-	}
-
-	/**
-	 * return all possible EntityReferenceProposals (according to current
-	 * position in doc)
-	 */
-	protected ICompletionProposal[] computeEntityReferenceProposals(int documentPosition, ITextRegion completionRegion, XMLNode treeNode) {
-		// only handle XML content for now
-		Vector proposals = new Vector(); // ICompletionProposals
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-		if (completionRegion != null && completionRegion.getType() == XMLRegionContext.XML_CONTENT) {
-			int nodeOffset = documentPosition - sdRegion.getStartOffset(completionRegion);
-			String regionText = sdRegion.getFullText(completionRegion);
-
-			//if directly to the right of a &, region will be null, need to
-			// move to
-			// the previous region...there might be a better way to do this
-			if (regionText != null && regionText.trim().equals("") && documentPosition > 0) { //$NON-NLS-1$
-				IStructuredDocumentRegion prev = treeNode.getStructuredDocument().getRegionAtCharacterOffset(documentPosition - 1);
-				if (prev != null && prev.getFullText().trim().equals("&")) { //$NON-NLS-1$		
-					completionRegion = prev;
-					regionText = prev.getFullText();
-					nodeOffset = 1;
-				}
-			}
-
-			// string must start w/ &
-			if (regionText != null && regionText.startsWith("&")) { //$NON-NLS-1$						 		
-				String key = (nodeOffset > 0) ? regionText.substring(1, nodeOffset) : ""; //$NON-NLS-1$
-
-				// get entity proposals, passing in the appropriate start
-				// string
-				ModelQuery mq = ModelQueryUtil.getModelQuery(((Node) treeNode).getOwnerDocument());
-				if (mq != null) {
-					CMDocument xmlDoc = mq.getCorrespondingCMDocument(treeNode);
-					CMNamedNodeMap cmmap = null;
-					Properties entities = null;
-					if (xmlDoc != null) {
-						cmmap = xmlDoc.getEntities();
-					}
-					if (cmmap != null) {
-						entities = mapToProperties(cmmap);
-					} else // 224787 in absence of content model, just use
-					// minimal 5 entities
-					{
-						entities = new Properties();
-						entities.put("quot", "\""); //$NON-NLS-1$ //$NON-NLS-2$
-						entities.put("apos", "'"); //$NON-NLS-1$ //$NON-NLS-2$
-						entities.put("amp", "&"); //$NON-NLS-1$ //$NON-NLS-2$
-						entities.put("lt", "<"); //$NON-NLS-1$ //$NON-NLS-2$
-						entities.put("gt", ">"); //$NON-NLS-1$ //$NON-NLS-2$	
-						entities.put("nbsp", " "); //$NON-NLS-1$ //$NON-NLS-2$									
-					}
-					addEntityProposals(proposals, entities, key, nodeOffset, sdRegion, completionRegion); //$NON-NLS-1$
-				}
-			}
-		}
-		return (ICompletionProposal[]) ((proposals.size() > 0) ? proposals.toArray(new ICompletionProposal[proposals.size()]) : null);
-	}
-
-	protected ContentAssistRequest computeEqualsProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		ContentAssistRequest contentAssistRequest = null;
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-		ITextRegion valueRegion = node.getStartStructuredDocumentRegion().getRegionAtCharacterOffset(sdRegion.getStartOffset(completionRegion) + completionRegion.getLength());
-		if (valueRegion != null && valueRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE && sdRegion.getStartOffset(valueRegion) <= documentPosition) {
-			// replace the adjacent attribute value
-			contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, valueRegion, sdRegion.getStartOffset(valueRegion), valueRegion.getTextLength(), matchString);
-		} else {
-			// append an attribute value after the '='
-			contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, completionRegion, documentPosition, 0, matchString);
-		}
-		addAttributeValueProposals(contentAssistRequest);
-		return contentAssistRequest;
-	}
-
-	protected ContentAssistRequest computeStartDocumentProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		// setup for a non-empty document, but one that hasn't been formally
-		// started
-		ContentAssistRequest contentAssistRequest = null;
-		contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, getStructuredDocumentRegion(documentPosition), completionRegion, documentPosition, 0, matchString);
-		addStartDocumentProposals(contentAssistRequest);
-		return contentAssistRequest;
-	}
-
-	protected ContentAssistRequest computeTagCloseProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		ContentAssistRequest contentAssistRequest = null;
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-
-		if ((node.getNodeType() == Node.DOCUMENT_NODE) || (documentPosition >= sdRegion.getEndOffset())) {
-			// this is a content request as the documentPosition is AFTER the
-			// end of the closing region
-			if (node == nodeAtOffset && node.getParentNode() != null)
-				node = (XMLNode) node.getParentNode();
-			contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, completionRegion, documentPosition, 0, matchString);
-			addTagInsertionProposals(contentAssistRequest, getElementPositionForModelQuery(nodeAtOffset));
-			if (node.getNodeType() != Node.DOCUMENT_NODE && node.getEndStructuredDocumentRegion() == null) {
-				addEndTagProposals(contentAssistRequest);
-			}
-		} else {
-			// at the start of the tag's close or within it
-			ITextRegion closeRegion = sdRegion.getLastRegion();
-			boolean insideTag = !sdRegion.isEnded() || documentPosition <= sdRegion.getStartOffset(closeRegion);
-			if (insideTag) {
-				// this is a request for completions within a tag
-				contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, completionRegion, documentPosition, 0, matchString);
-				if (node.getNodeType() != Node.DOCUMENT_NODE && node.getEndStructuredDocumentRegion() != null) {
-					addTagCloseProposals(contentAssistRequest);
-				}
-				if (sdRegion == nodeAtOffset.getFirstStructuredDocumentRegion()) {
-					contentAssistRequest.setReplacementBeginPosition(documentPosition);
-					contentAssistRequest.setReplacementLength(0);
-					addAttributeNameProposals(contentAssistRequest);
-				}
-			}
-		}
-		return contentAssistRequest;
-	}
-
-	protected ContentAssistRequest computeTagNameProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		ContentAssistRequest contentAssistRequest = null;
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-
-		if (sdRegion != nodeAtOffset.getFirstStructuredDocumentRegion()) {
-			//completing the *first* tag in "<tagname1 |<tagname2"
-			XMLNode actualNode = (XMLNode) node.getModel().getIndexedRegion(sdRegion.getStartOffset(completionRegion));
-			if (actualNode != null) {
-				if (actualNode.getFirstStructuredDocumentRegion() == sdRegion) {
-					// start tag
-					if (documentPosition > sdRegion.getStartOffset(completionRegion) + completionRegion.getLength()) {
-						// it's attributes
-						contentAssistRequest = newContentAssistRequest(actualNode, actualNode, sdRegion, completionRegion, documentPosition - matchString.length(), matchString.length(), matchString);
-						if (node.getStructuredDocument().getRegionAtCharacterOffset(sdRegion.getStartOffset(completionRegion) - 1).getRegionAtCharacterOffset(sdRegion.getStartOffset(completionRegion) - 1).getType() == XMLRegionContext.XML_TAG_OPEN)
-							addAttributeNameProposals(contentAssistRequest);
-						addTagCloseProposals(contentAssistRequest);
-					} else {
-						// it's name
-						contentAssistRequest = newContentAssistRequest(actualNode, actualNode.getParentNode(), sdRegion, completionRegion, documentPosition - matchString.length(), matchString.length(), matchString);
-						addTagNameProposals(contentAssistRequest, getElementPositionForModelQuery(actualNode));
-					}
-				} else {
-					if (documentPosition >= sdRegion.getStartOffset(completionRegion) + completionRegion.getLength()) {
-						// insert name
-						contentAssistRequest = newContentAssistRequest(actualNode, actualNode.getParentNode(), sdRegion, completionRegion, documentPosition, 0, matchString);
-					} else {
-						//replace name
-						contentAssistRequest = newContentAssistRequest(actualNode, actualNode.getParentNode(), sdRegion, completionRegion, sdRegion.getStartOffset(completionRegion), completionRegion.getTextLength(), matchString);
-					}
-					addEndTagNameProposals(contentAssistRequest);
-				}
-			}
-		} else {
-			if (documentPosition > sdRegion.getStartOffset(completionRegion) + completionRegion.getTextLength()) {
-				// unclosed tag with only a name; should prompt for attributes
-				// and a close instead
-				contentAssistRequest = newContentAssistRequest(nodeAtOffset, node, sdRegion, completionRegion, documentPosition - matchString.length(), matchString.length(), matchString);
-				addAttributeNameProposals(contentAssistRequest);
-				addTagCloseProposals(contentAssistRequest);
-			} else {
-				if (sdRegion.getRegions().get(0).getType() != XMLRegionContext.XML_END_TAG_OPEN) {
-					contentAssistRequest = newContentAssistRequest(node, node.getParentNode(), sdRegion, completionRegion, sdRegion.getStartOffset(completionRegion), completionRegion.getTextLength(), matchString);
-					addTagNameProposals(contentAssistRequest, getElementPositionForModelQuery(nodeAtOffset));
-				} else {
-					XMLNode actualNode = (XMLNode) node.getModel().getIndexedRegion(documentPosition);
-					if (actualNode != null) {
-						if (documentPosition >= sdRegion.getStartOffset(completionRegion) + completionRegion.getTextLength()) {
-							contentAssistRequest = newContentAssistRequest(actualNode, actualNode.getParentNode(), sdRegion, completionRegion, documentPosition, 0, matchString);
-						} else {
-							contentAssistRequest = newContentAssistRequest(actualNode, actualNode.getParentNode(), sdRegion, completionRegion, sdRegion.getStartOffset(completionRegion), completionRegion.getTextLength(), matchString);
-						}
-						addEndTagNameProposals(contentAssistRequest);
-					}
-				}
-			}
-		}
-		return contentAssistRequest;
-	}
-
-	protected ContentAssistRequest computeTagOpenProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode nodeAtOffset, XMLNode node) {
-		ContentAssistRequest contentAssistRequest = null;
-		IStructuredDocumentRegion sdRegion = getStructuredDocumentRegion(documentPosition);
-		if (sdRegion != nodeAtOffset.getFirstStructuredDocumentRegion()) {
-			//completing the *first* XML_TAG_OPEN in "<<tagname"
-			XMLNode actualNode = (XMLNode) node.getModel().getIndexedRegion(sdRegion.getStartOffset(completionRegion));
-			if (actualNode != null) {
-				contentAssistRequest = newContentAssistRequest(actualNode, actualNode.getParentNode(), sdRegion, completionRegion, documentPosition, 0, matchString);
-				addTagNameProposals(contentAssistRequest, getElementPositionForModelQuery(actualNode));
-				addEndTagProposals(contentAssistRequest); // (pa) 220850
-			}
-		} else {
-			if (documentPosition == sdRegion.getStartOffset(completionRegion)) {
-				if (node.getNodeType() == Node.ELEMENT_NODE) {
-					// at the start of an existing tag, right before the '<'
-					contentAssistRequest = newContentAssistRequest(nodeAtOffset, node.getParentNode(), sdRegion, completionRegion, documentPosition, 0, matchString);
-					addTagInsertionProposals(contentAssistRequest, getElementPositionForModelQuery(nodeAtOffset));
-					addEndTagProposals(contentAssistRequest);
-				} else if (node.getNodeType() == Node.DOCUMENT_NODE) {
-					// at the opening of the VERY first tag with a '<'
-					contentAssistRequest = newContentAssistRequest(nodeAtOffset, node.getParentNode(), sdRegion, completionRegion, sdRegion.getStartOffset(completionRegion), completionRegion.getTextLength(), matchString);
-					addStartDocumentProposals(contentAssistRequest);
-				}
-			} else {
-				// within the white space
-				ITextRegion name = getNameRegion(node.getStartStructuredDocumentRegion());
-				// (pa) ITextRegion refactor
-				//if (name != null && name.containsOffset(documentPosition))
-				// {
-				if (name != null && (sdRegion.getStartOffset(name) <= documentPosition && sdRegion.getEndOffset(name) >= documentPosition)) {
-					// replace the existing name
-					contentAssistRequest = newContentAssistRequest(node, node.getParentNode(), sdRegion, completionRegion, sdRegion.getStartOffset(name), name.getTextLength(), matchString);
-				} else {
-					// insert a valid new name, or possibly an end tag
-					contentAssistRequest = newContentAssistRequest(nodeAtOffset, ((Node) nodeAtOffset).getParentNode(), sdRegion, completionRegion, documentPosition, 0, matchString);
-					addEndTagProposals(contentAssistRequest);
-					contentAssistRequest.setReplacementBeginPosition(documentPosition);
-					contentAssistRequest.setReplacementLength(0);
-				}
-				addTagNameProposals(contentAssistRequest, getElementPositionForModelQuery(nodeAtOffset));
-			}
-		}
-		return contentAssistRequest;
-	}
-
-	/**
-	 * Retreives cmnode's documentation to display in the completion
-	 * proposal's additional info. If no documentation exists for cmnode, try
-	 * displaying parentOrOwner's documentation
-	 * 
- String any documentation information to display for cmnode.
-	 *         <code>null</code> if there is nothing to display.
-	 */
-	protected String getAdditionalInfo(CMNode parentOrOwner, CMNode cmnode) {
-		String addlInfo = null;
-
-		if (cmnode == null) {
-			if (Debug.displayWarnings) {
-				new IllegalArgumentException("Null declaration!").printStackTrace(); //$NON-NLS-1$
-			}
-			return null;
-		}
-
-		addlInfo = getInfoProvider().getInfo(cmnode);
-		if (addlInfo == null && parentOrOwner != null)
-			addlInfo = getInfoProvider().getInfo(parentOrOwner);
-		return addlInfo;
-	}
-
-	// returns a list of ModelQueryActions
-	protected List getAvailableChildrenAtIndex(Element parent, int index) {
-		List list = new ArrayList();
-		CMElementDeclaration parentDecl = getCMElementDeclaration(parent);
-		if (parentDecl != null) {
-			ModelQuery modelQuery = ModelQueryUtil.getModelQuery(parent.getOwnerDocument());
-			// taken from ActionManagers
-			// int editMode = modelQuery.getEditMode();
-			int editMode = ModelQuery.EDIT_MODE_UNCONSTRAINED;
-			int ic = (editMode == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) ? ModelQuery.INCLUDE_CHILD_NODES | ModelQuery.INCLUDE_SEQUENCE_GROUPS : ModelQuery.INCLUDE_CHILD_NODES;
-			int vc = (editMode == ModelQuery.EDIT_MODE_CONSTRAINED_STRICT) ? ModelQuery.VALIDITY_STRICT : ModelQuery.VALIDITY_NONE;
-			modelQuery.getInsertActions(parent, parentDecl, index, ic, vc, list);
-		}
-		return list;
-	}
-
-	// returns a list of CMElementDeclarations
-	protected List getAvailableRootChildren(Document document, int childIndex) {
-		List list = null;
-
-		// extract the valid 'root' node name from the DocumentType Node
-		DocumentType docType = document.getDoctype();
-		String rootName = null;
-		if (docType != null) {
-			rootName = docType.getNodeName();
-		}
-		if (rootName == null)
-			return new ArrayList(0);
-
-		for (Node child = document.getFirstChild(); child != null; child = child.getNextSibling()) {
-			//make sure the "root" Element isn't already present
-			// is it required to be an Element?
-			if (child.getNodeType() == Node.ELEMENT_NODE && stringsEqual(child.getNodeName(), rootName)) {
-				// if the node is missing either the start or end tag, don't
-				// count it as present
-				if (child instanceof XMLNode && (((XMLNode) child).getStartStructuredDocumentRegion() == null || ((XMLNode) child).getEndStructuredDocumentRegion() == null))
-					continue;
-				if (Debug.displayInfo)
-					System.out.println(rootName + " already present!"); //$NON-NLS-1$
-				setErrorMessage(SSEUIPlugin.getResourceString("%18concat", (new Object[]{rootName}))); //$NON-NLS-1$ = "The document element <{0}> is already present."
-				return new ArrayList(0);
-			}
-		}
-
-		list = new ArrayList(1);
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(document);
-		if (modelQuery != null) {
-			CMDocument cmdoc = modelQuery.getCorrespondingCMDocument(document);
-			if (cmdoc != null) {
-				if (rootName != null) {
-					CMElementDeclaration rootDecl = (CMElementDeclaration) cmdoc.getElements().getNamedItem(rootName);
-					if (rootDecl != null) {
-						list.add(rootDecl);
-					} else {
-						// supply the given document name anyway, even if it
-						// is an error
-						list.add(new SimpleCMElementDeclaration(rootName));
-						if (Debug.displayInfo || Debug.displayWarnings)
-							System.out.println("No definition found for " + rootName + " in " + docType.getPublicId() + "/" + docType.getSystemId()); //$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-						String location = "" + (docType.getPublicId() != null ? docType.getPublicId() + "/" : "") + (docType.getSystemId() != null ? docType.getSystemId() : ""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-						//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-						//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-						if (location.length() > 0)
-							setErrorMessage(SSEUIPlugin.getResourceString("%29concat", (new Object[]{rootName, location}))); //$NON-NLS-1$ = "No definition was found for element <{0}> in {1}"
-						else
-							setErrorMessage(SSEUIPlugin.getResourceString("%20concat", (new Object[]{rootName}))); //$NON-NLS-1$ = "No definition was found for element <{0}>"
-					}
-				}
-			} else {
-				if (Debug.displayInfo || Debug.displayWarnings)
-					System.out.println("No content model found."); //$NON-NLS-1$
-				//$NON-NLS-1$
-				//$NON-NLS-1$
-				String location = "" + (docType.getPublicId() != null ? docType.getPublicId() + "/" : "") + (docType.getSystemId() != null ? docType.getSystemId() : ""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-				//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-				if (location.length() > 0)
-					setErrorMessage(SSEUIPlugin.getResourceString("%24concat", (new Object[]{location}))); //$NON-NLS-1$ = "No content model found for {0}."
-				else
-					setErrorMessage(SSEUIPlugin.getResourceString("%No_content_model_found_UI_")); //$NON-NLS-1$ = "No content model found"
-			}
-		}
-
-		return list;
-	}
-
-	protected CMElementDeclaration getCMElementDeclaration(Node node) {
-		CMElementDeclaration result = null;
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			ModelQuery modelQuery = ModelQueryUtil.getModelQuery(node.getOwnerDocument());
-			if (modelQuery != null)
-				result = modelQuery.getCMElementDeclaration((Element) node);
-		}
-		return result;
-	}
-
-	/**
-	 * Returns the characters which when entered by the user should
-	 * automatically trigger the presentation of possible completions.
-	 * 
- the auto activation characters for completion proposal or
-	 *         <code>null</code> if no auto activation is desired
-	 */
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		return completionProposalAutoActivationCharacters;
-	}
-
-	protected ITextRegion getCompletionRegion(int offset, IStructuredDocumentRegion sdRegion) {
-		ITextRegion region = sdRegion.getRegionAtCharacterOffset(offset);
-		if (region == null)
-			return null;
-
-		if (sdRegion.getStartOffset(region) == offset) {
-			// The offset is at the beginning of the region
-			if ((sdRegion.getStartOffset(region) == sdRegion.getStartOffset()) && (sdRegion.getPrevious() != null) && (!sdRegion.getPrevious().isEnded())) {
-				// Is the region also the start of the node? If so, the
-				// previous IStructuredDocumentRegion is
-				// where to look for a useful region.
-				region = sdRegion.getPrevious().getRegionAtCharacterOffset(offset - 1);
-			} else {
-				// Is there no separating whitespace from the previous region?
-				// If not,
-				// then that region is the important one
-				ITextRegion previousRegion = sdRegion.getRegionAtCharacterOffset(offset - 1);
-				if ((previousRegion != null) && (previousRegion != region) && (previousRegion.getTextLength() == previousRegion.getLength())) {
-					region = previousRegion;
-				}
-			}
-		} else {
-			// The offset is NOT at the beginning of the region
-			if (offset > sdRegion.getStartOffset(region) + region.getTextLength()) {
-				// Is the offset within the whitespace after the text in this
-				// region?
-				// If so, use the next region
-				ITextRegion nextRegion = sdRegion.getRegionAtCharacterOffset(sdRegion.getStartOffset(region) + region.getLength());
-				if (nextRegion != null)
-					region = nextRegion;
-			} else {
-				// Is the offset within the important text for this region?
-				// If so, then we've already got the right one.
-			}
-		}
-
-		// valid WHITE_SPACE region handler (#179924)
-		if (region != null && region.getType() == XMLRegionContext.WHITE_SPACE) {
-			ITextRegion previousRegion = sdRegion.getRegionAtCharacterOffset(sdRegion.getStartOffset(region) - 1);
-			if (previousRegion != null)
-				region = previousRegion;
-		}
-
-		return region;
-	}
-
-	/**
-	 * Return the region whose content's require completion. This is something
-	 * of a misnomer as sometimes the user wants to be prompted for contents
-	 * of a non-existant ITextRegion, such as for enumerated attribute values
-	 * following an '=' sign.
-	 */
-	protected ITextRegion getCompletionRegion(int documentPosition, Node domnode) {
-		if (domnode == null)
-			return null;
-
-		ITextRegion region = null;
-		int offset = documentPosition;
-		IStructuredDocumentRegion flatNode = null;
-		XMLNode node = (XMLNode) domnode;
-
-		if (node.getNodeType() == Node.DOCUMENT_NODE) {
-			if (node.getStructuredDocument().getLength() == 0)
-				return null;
-			ITextRegion result = node.getStructuredDocument().getRegionAtCharacterOffset(offset).getRegionAtCharacterOffset(offset);
-			while (result == null) {
-				offset--;
-				result = node.getStructuredDocument().getRegionAtCharacterOffset(offset).getRegionAtCharacterOffset(offset);
-			}
-			return result;
-		}
-
-		IStructuredDocumentRegion startTag = node.getStartStructuredDocumentRegion();
-		IStructuredDocumentRegion endTag = node.getEndStructuredDocumentRegion();
-
-		// Determine if the offset is within the start
-		// IStructuredDocumentRegion, end IStructuredDocumentRegion, or
-		// somewhere within the Node's XML content.
-		if ((startTag != null) && (startTag.getStartOffset() <= offset) && (offset < startTag.getStartOffset() + startTag.getLength()))
-			flatNode = startTag;
-		else if ((endTag != null) && (endTag.getStartOffset() <= offset) && (offset < endTag.getStartOffset() + endTag.getLength()))
-			flatNode = endTag;
-
-		if (flatNode != null) {
-			// the offset is definitely within the start or end tag, continue
-			// on and find the region
-			region = getCompletionRegion(offset, flatNode);
-		} else {
-			// the docPosition is neither within the start nor the end, so it
-			// must be content
-			flatNode = node.getStructuredDocument().getRegionAtCharacterOffset(offset);
-			// (pa) ITextRegion refactor
-			//if (flatNode.contains(documentPosition)) {
-			if (flatNode.getStartOffset() <= documentPosition && flatNode.getEndOffset() >= documentPosition) {
-				// we're interesting in completing/extending the previous
-				// IStructuredDocumentRegion if the current
-				// IStructuredDocumentRegion isn't plain content or if it's
-				// preceded by an orphan '<'
-				if ((offset == flatNode.getStartOffset()) && (flatNode.getPrevious() != null) && (flatNode.getRegionAtCharacterOffset(documentPosition) != null && flatNode.getRegionAtCharacterOffset(documentPosition).getType() != XMLRegionContext.XML_CONTENT || flatNode.getPrevious().getLastRegion().getType() == XMLRegionContext.XML_TAG_OPEN || flatNode.getPrevious().getLastRegion().getType() == XMLRegionContext.XML_END_TAG_OPEN)) {
-					// Is the region also the start of the node? If so, the
-					// previous IStructuredDocumentRegion is
-					// where to look for a useful region.
-					region = flatNode.getPrevious().getLastRegion();
-				} else if (flatNode.getEndOffset() == documentPosition) {
-					region = flatNode.getLastRegion();
-				} else
-					region = flatNode.getFirstRegion();
-			} else {
-				// catch end of document positions where the docPosition isn't
-				// in a IStructuredDocumentRegion
-				region = flatNode.getLastRegion();
-			}
-		}
-
-		return region;
-	}
-
-	/**
-	 * Provided by default. Subclasses may override with their own
-	 * implementations.
-	 * 
-	 * @see AbstractContentAssistProcessor#getContentGenerator()
-	 */
-	public XMLContentModelGenerator getContentGenerator() {
-		if (fGenerator == null)
-			fGenerator = new XMLContentModelGenerator();
-		return fGenerator;
-	}
-
-	/**
-	 * Returns the characters which when entered by the user should
-	 * automatically trigger the presentation of context information.
-	 * 
- the auto activation characters for presenting context
-	 *         information or <code>null</code> if no auto activation is
-	 *         desired
-	 */
-	public char[] getContextInformationAutoActivationCharacters() {
-		return contextInformationAutoActivationCharacters;
-	}
-
-	/**
-	 * Returns a validator used to determine when displayed context
-	 * information should be dismissed. May only return <code>null</code> if
-	 * the processor is incapable of computing context information.
-	 * 
- a context information validator, or <code>null</code> if the
-	 *         processor is incapable of computing context information
-	 */
-	public IContextInformationValidator getContextInformationValidator() {
-		if (fContextInformationPresenter == null)
-			fContextInformationPresenter = new AttributeContextInformationPresenter();
-		return fContextInformationPresenter;
-	}
-
-	protected int getElementPosition(Node child) {
-		Node parent = child.getParentNode();
-		if (parent == null)
-			return 0;
-
-		NodeList children = parent.getChildNodes();
-		if (children == null)
-			return 0;
-		int count = 0;
-
-		for (int i = 0; i < children.getLength(); i++) {
-			if (children.item(i) == child)
-				return count;
-			else
-				// if (children.item(i).getNodeType() == Node.ELEMENT_NODE)
-				count++;
-		}
-		return 0;
-	}
-
-	private int getElementPositionForModelQuery(Node child) {
-		return getElementPosition(child);
-		//	return -1;
-	}
-
-	/**
-	 * Return the reason why computeProposals was not able to find any
-	 * completions.
-	 * 
- an error message or null if no error occurred
-	 */
-	public String getErrorMessage() {
-		return fErrorMessage;
-	}
-
-	/**
-	 * @param iResource
-	 */
-	//	public void initialize(IResource iResource) {
-	//		this.resource = iResource;
-	//	}
-	/**
-	 * Gets the infoProvider.
-	 * 
- fInfoProvider and if fInfoProvider was <code>null</code>
-	 *         create a new instance
-	 */
-	public MarkupTagInfoProvider getInfoProvider() {
-		if (fInfoProvider == null) {
-			fInfoProvider = new MarkupTagInfoProvider();
-		}
-		return fInfoProvider;
-	}
-
-	protected String getMatchString(IStructuredDocumentRegion parent, ITextRegion aRegion, int offset) {
-		if (aRegion == null || isCloseRegion(aRegion))
-			return ""; //$NON-NLS-1$
-		String matchString = null;
-		String regionType = aRegion.getType();
-		if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS || regionType == XMLRegionContext.XML_TAG_OPEN || (offset > parent.getStartOffset(aRegion) + aRegion.getTextLength())) {
-			matchString = ""; //$NON-NLS-1$
-		} else if (regionType == XMLRegionContext.XML_CONTENT) {
-			matchString = ""; //$NON-NLS-1$
-		} else {
-			if (parent.getText(aRegion).length() > 0 && parent.getStartOffset(aRegion) < offset)
-				matchString = parent.getText(aRegion).substring(0, offset - parent.getStartOffset(aRegion));
-			else
-				matchString = ""; //$NON-NLS-1$
-		}
-		return matchString;
-	}
-
-	protected ITextRegion getNameRegion(IStructuredDocumentRegion flatNode) {
-		if (flatNode == null)
-			return null;
-		Iterator regionList = flatNode.getRegions().iterator();
-		while (regionList.hasNext()) {
-			ITextRegion region = (ITextRegion) regionList.next();
-			if (isNameRegion(region))
-				return region;
-		}
-		return null;
-	}
-
-	/**
-	 * Retrieves all of the possible valid values for this attribute
-	 * declaration
-	 */
-	protected List getPossibleDataTypeValues(Node node, CMAttributeDeclaration ad) {
-		List list = null;
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			Element element = (Element) node;
-			String[] dataTypeValues = null;
-			// The ModelQuery may not be available if the corresponding
-			// adapter
-			// is absent
-			ModelQuery modelQuery = ModelQueryUtil.getModelQuery(element.getOwnerDocument());
-			if (modelQuery != null) {
-				dataTypeValues = modelQuery.getPossibleDataTypeValues(element, ad);
-			} else {
-				if (ad.getAttrType() != null)
-					dataTypeValues = ad.getAttrType().getEnumeratedValues();
-			}
-			if (dataTypeValues != null) {
-				list = new ArrayList(dataTypeValues.length);
-				for (int i = 0; i < dataTypeValues.length; i++) {
-					list.add(dataTypeValues[i]);
-				}
-			}
-		}
-		if (list == null) {
-			list = new ArrayList(0);
-		}
-		return list;
-	}
-
-	protected String getRequiredName(Node parentOrOwner, CMNode cmnode) {
-		if (cmnode == null || parentOrOwner == null) {
-			if (Debug.displayWarnings) {
-				new IllegalArgumentException("Null declaration!").printStackTrace(); //$NON-NLS-1$
-			}
-			return ""; //$NON-NLS-1$
-		}
-		return getContentGenerator().getRequiredName(parentOrOwner, cmnode);
-	}
-	
-	protected String getRequiredText(Node parentOrOwner, CMAttributeDeclaration attrDecl) {
-		if (attrDecl == null) {
-			if (Debug.displayWarnings) {
-				new IllegalArgumentException("Null attribute declaration!").printStackTrace(); //$NON-NLS-1$
-			}
-			return ""; //$NON-NLS-1$
-		}
-		StringBuffer buff = new StringBuffer();
-		getContentGenerator().generateRequiredAttribute(parentOrOwner, attrDecl, buff);
-		return buff.toString();
-	}
-
-	protected String getRequiredText(Node parentOrOwner, CMElementDeclaration elementDecl) {
-		if (elementDecl == null) {
-			if (Debug.displayWarnings) {
-				new IllegalArgumentException("Null attribute declaration!").printStackTrace(); //$NON-NLS-1$
-			}
-			return ""; //$NON-NLS-1$
-		}
-		StringBuffer buff = new StringBuffer();
-		getContentGenerator().generateTag(parentOrOwner, elementDecl, buff);
-		return buff.toString();
-	}
-
-	/**
-	 * StructuredTextViewer must be set before using this.
-	 */
-	public IStructuredDocumentRegion getStructuredDocumentRegion(int pos) {
-		// (pa) ITextRegion refactor defect 245190
-		//return
-		// (IStructuredDocumentRegion)ContentAssistUtils.getNodeAt((StructuredTextViewer)fTextViewer,
-		// pos);
-		return ContentAssistUtils.getStructuredDocumentRegion((StructuredTextViewer) fTextViewer, pos);
-	}
-
-	private String getTagName(IStructuredDocumentRegion sdRegion) {
-		ITextRegionList regions = sdRegion.getRegions();
-		ITextRegion region = null;
-		String name = ""; //$NON-NLS-1$
-		for (int i = 0; i < regions.size(); i++) {
-			region = regions.get(i);
-			if (region.getType() == XMLRegionContext.XML_TAG_NAME) {
-				name = sdRegion.getText(region);
-				break;
-			}
-		}
-		return name;
-	}
-
-	protected List getValidCMNodes(int childPosition, int kindOfAction, List modelQueryActions) {
-		Iterator iterator = modelQueryActions.iterator();
-		List cmnodes = new Vector();
-		while (iterator.hasNext()) {
-			ModelQueryAction action = (ModelQueryAction) iterator.next();
-			if (childPosition < 0 || (action.getStartIndex() <= childPosition && childPosition <= action.getEndIndex()) && action.getKind() == kindOfAction) {
-				CMNode actionCMNode = action.getCMNode();
-				if (actionCMNode != null && !cmnodes.contains(actionCMNode))
-					cmnodes.add(actionCMNode);
-			}
-		}
-		return cmnodes;
-	}
-
-	/**
-	 * Similar to the call in HTMLContentAssistProcessor. Pass in a node, it
-	 * tells you if the document is XML type.
-	 * 
-	 * @param node
-
-	 */
-	protected boolean getXML(Node node) {
-		if (node == null)
-			return false;
-
-		Document doc = null;
-		doc = (node.getNodeType() != Node.DOCUMENT_NODE) ? node.getOwnerDocument() : ((Document) node);
-
-		return (doc instanceof XMLDocument) && ((XMLDocument) doc).isXMLType();
-	}
-
-	// Initialize local settings
-	protected void init() {
-		// implement in subclasses
-	}
-
-	protected boolean isCloseRegion(ITextRegion region) {
-		String type = region.getType();
-		return ((type == XMLRegionContext.XML_PI_CLOSE) || (type == XMLRegionContext.XML_TAG_CLOSE) || (type == XMLRegionContext.XML_EMPTY_TAG_CLOSE) || (type == XMLRegionContext.XML_CDATA_CLOSE) || (type == XMLRegionContext.XML_COMMENT_CLOSE) || (type == XMLRegionContext.XML_ATTLIST_DECL_CLOSE) || (type == XMLRegionContext.XML_ELEMENT_DECL_CLOSE) || (type == XMLRegionContext.XML_DOCTYPE_DECLARATION_CLOSE) || (type == DOMJSPRegionContextsPrivateCopy.JSP_CLOSE) || (type == DOMJSPRegionContextsPrivateCopy.JSP_COMMENT_CLOSE) || (type.equals(DOMJSPRegionContextsPrivateCopy.JSP_DIRECTIVE_CLOSE)) || (type == XMLRegionContext.XML_DECLARATION_CLOSE));
-	}
-
-	/*
-	 * This is to determine if a tag is a special meta-info comment tag that
-	 * shows up as an ELEMENT
-	 */
-	private boolean isCommentNode(XMLNode node) {
-		return (node != null && node instanceof XMLElement && ((XMLElement) node).isCommentTag());
-	}
-
-	/**
-	 * Checks if cursor position is after doctype tag...
-	 * 
-	 * @param car
-
-	 */
-	protected boolean isCursorAfterDoctype(ContentAssistRequest car) {
-		Node aNode = car.getNode();
-		Document parent = aNode.getOwnerDocument();
-		int xmldoctypeNodePosition = -1;
-		boolean isAfterDoctype = true;
-
-		if (parent == null)
-			return true; // blank document case
-
-		for (Node child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (child instanceof XMLNode) {
-				if (child.getNodeType() == Node.DOCUMENT_TYPE_NODE) {
-					xmldoctypeNodePosition = ((XMLNode) child).getEndOffset();
-					isAfterDoctype = (car.getReplacementBeginPosition() >= xmldoctypeNodePosition);
-					break;
-				}
-			}
-		}
-		return isAfterDoctype;
-	}
-
-	/**
-	 * This method can check if the cursor is after the XMLPI
-	 * 
-	 * @param car
-
-	 */
-	protected boolean isCursorAfterXMLPI(ContentAssistRequest car) {
-		Node aNode = car.getNode();
-		boolean xmlpiFound = false;
-		Document parent = aNode.getOwnerDocument();
-		int xmlpiNodePosition = -1;
-		boolean isAfterXMLPI = false;
-
-		if (parent == null)
-			return true; // blank document case
-
-		for (Node child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {
-			boolean xmlpi = (child.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE && child.getNodeName().equals("xml")); //$NON-NLS-1$
-			xmlpiFound = xmlpiFound || xmlpi;
-			if (xmlpiFound) {
-				if (child instanceof XMLNode) {
-					xmlpiNodePosition = ((XMLNode) child).getEndOffset();
-					isAfterXMLPI = (car.getReplacementBeginPosition() >= xmlpiNodePosition);
-				}
-				break;
-			}
-		}
-		return isAfterXMLPI;
-	}
-
-	protected boolean isNameRegion(ITextRegion region) {
-		String type = region.getType();
-		return ((type == XMLRegionContext.XML_TAG_NAME) || (type == DOMJSPRegionContextsPrivateCopy.JSP_DIRECTIVE_NAME) || (type == XMLRegionContext.XML_ELEMENT_DECL_NAME) || (type == XMLRegionContext.XML_DOCTYPE_NAME) || (type == XMLRegionContext.XML_ATTLIST_DECL_NAME) || (type == DOMJSPRegionContextsPrivateCopy.JSP_ROOT_TAG_NAME) || type.equals(DOMJSPRegionContextsPrivateCopy.JSP_DIRECTIVE_NAME));
-	}
-
-	protected boolean isQuote(String string) {
-		String trimmed = string.trim();
-		if (trimmed.length() > 0) {
-			return trimmed.charAt(0) == '\'' || trimmed.charAt(0) == '"';
-		}
-		return false;
-	}
-
-	private boolean isSelfClosed(IStructuredDocumentRegion startTag) {
-		ITextRegionList regions = startTag.getRegions();
-		return regions.get(regions.size() - 1).getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE;
-	}
-
-	private boolean isStartTag(IStructuredDocumentRegion sdRegion) {
-		boolean result = false;
-		if (sdRegion.getRegions().size() > 0) {
-			ITextRegion r = sdRegion.getRegions().get(0);
-			result = r.getType() == XMLRegionContext.XML_TAG_OPEN && sdRegion.isEnded();
-		}
-		return result;
-	}
-
-	protected Properties mapToProperties(CMNamedNodeMap map) {
-		Properties p = new Properties();
-		for (int i = 0; i < map.getLength(); i++) {
-			CMEntityDeclaration decl = (CMEntityDeclaration) map.item(i);
-			p.put(decl.getName(), decl.getValue());
-		}
-		return p;
-	}
-
-	/**
-	 * Gets the corresponding XMLNode, and checks if it's closed.
-	 * 
-	 * @param startTag
-
-	 */
-	private boolean needsEndTag(IStructuredDocumentRegion startTag) {
-		boolean result = false;
-		IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fTextViewer.getDocument());
-		try {
-			if (sModel != null) {
-				XMLNode xmlNode = (XMLNode) sModel.getIndexedRegion(startTag.getStart());
-				if (!isStartTag(startTag))
-					result = false;
-				else if (isSelfClosed(startTag))
-					result = false;
-				else if (!xmlNode.isContainer())
-					result = false;
-				else
-					result = xmlNode.getEndStructuredDocumentRegion() == null;
-			}
-		} finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-		return result;
-	}
-
-	protected ContentAssistRequest newContentAssistRequest(Node node, Node possibleParent, IStructuredDocumentRegion documentRegion, ITextRegion completionRegion, int begin, int length, String filter) {
-		return new ContentAssistRequest(node, possibleParent, documentRegion, completionRegion, begin, length, filter, null);
-	}
-
-	public void release() {
-		fGenerator = null;
-	}
-
-	/**
-	 * Set the reason why computeProposals was not able to find any
-	 * completions.
-	 */
-	public void setErrorMessage(String errorMessage) {
-		fErrorMessage = errorMessage;
-	}
-
-	/**
-	 * Set the reason why computeProposals was not able to find any
-	 * completions.
-	 */
-	protected void setErrorMessage(String errorMessage, String append) {
-		setErrorMessage(errorMessage + append);
-	}
-
-	/**
-	 * Set the reason why computeProposals was not able to find any
-	 * completions.
-	 */
-	protected void setErrorMessage(String errorMessage, String prepend, String append) {
-		setErrorMessage(prepend + errorMessage + append);
-	}
-
-	protected boolean stringsEqual(String a, String b) {
-		// (pa) 221190 matching independent of case to be consistant with Java
-		// editor CA
-		return a.equalsIgnoreCase(b);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AbstractContentModelGenerator.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AbstractContentModelGenerator.java
deleted file mode 100644
index fabd84c..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AbstractContentModelGenerator.java
+++ /dev/null
@@ -1,86 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.w3c.dom.Node;
-
-
-public abstract class AbstractContentModelGenerator {
-
-	public static boolean generateChildren = false;
-
-	public AbstractContentModelGenerator() {
-		super();
-	}
-
-	public abstract void generateAttribute(CMAttributeDeclaration attrDecl, StringBuffer buffer);
-
-	protected void generateAttributes(CMElementDeclaration elementDecl, StringBuffer buffer) {
-		CMNamedNodeMap attributes = elementDecl.getAttributes();
-		if (attributes == null)
-			return;
-		for (int i = 0; i < attributes.getLength(); i++) {
-			generateAttribute((CMAttributeDeclaration) attributes.item(i), buffer);
-		}
-		return;
-	}
-
-	protected abstract void generateEndTag(String tagName, Node parentNode, CMElementDeclaration elementDecl, StringBuffer buffer);
-
-	public void generateRequiredChildren(Node parentNode, CMElementDeclaration elementDecl, StringBuffer buffer) {
-		if (generateChildren) {
-		}
-		return;
-	}
-
-	protected abstract void generateStartTag(String tagName, Node parentNode, CMElementDeclaration elementDecl, StringBuffer buffer);
-
-	public void generateTag(Node parent, CMElementDeclaration elementDecl, StringBuffer buffer) {
-		if (elementDecl == null || buffer == null)
-			return;
-
-		String tagName = getRequiredName(parent, elementDecl);
-
-		generateStartTag(tagName, parent, elementDecl, buffer);
-		generateRequiredChildren(parent, elementDecl, buffer);
-		generateEndTag(tagName, parent, elementDecl, buffer);
-		return;
-	}
-
-	public abstract int getMinimalStartTagLength(Node node, CMElementDeclaration elementDecl);
-
-	public String getRequiredName(Node ownerNode, CMNode cmnode) {
-		if (ownerNode != null) {
-			return DOMNamespaceHelper.computeName(cmnode, ownerNode, null);
-		}
-		return cmnode.getNodeName();
-	}
-
-	public abstract String getStartTagClose(Node parentNode, CMElementDeclaration elementDecl);
-
-	protected boolean requiresAttributes(CMElementDeclaration ed) {
-		CMNamedNodeMap attributes = ed.getAttributes();
-		if (attributes == null)
-			return false;
-		for (int i = 0; i < attributes.getLength(); i++) {
-			if (((CMAttributeDeclaration) attributes.item(i)).getUsage() == CMAttributeDeclaration.REQUIRED)
-				return true;
-		}
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformation.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformation.java
deleted file mode 100644
index f2c2963..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformation.java
+++ /dev/null
@@ -1,113 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import java.util.HashMap;
-
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.ui.util.Assert;
-
-
-/**
- * Implementation of IContextInformation. Adds knowledge about the information
- * display string such as required attributes for this context.
- * 
- * @author pavery
- */
-public class AttributeContextInformation implements IContextInformation {
-	private HashMap fAttr2RangeMap;
-	/** The name of the context */
-	private String fContextDisplayString;
-	/** The image to be displayed */
-	private Image fImage;
-	/** The information to be displayed */
-	private String fInformationDisplayString;
-	private int fPosition;
-
-	/**
-	 * Creates a new context information with an image.
-	 * 
-	 * @param image
-	 *            the image to display when presenting the context information
-	 * @param contextDisplayString
-	 *            the string to be used when presenting the context
-	 * @param informationDisplayString
-	 *            the string to be displayed when presenting the context
-	 *            information, may not be <code>null</code>
-	 */
-	public AttributeContextInformation(Image image, String contextDisplayString, String informationDisplayString, HashMap attr2RangeMap) {
-		Assert.isNotNull(informationDisplayString);
-
-		fImage = image;
-		fContextDisplayString = contextDisplayString;
-		fInformationDisplayString = informationDisplayString;
-		fAttr2RangeMap = attr2RangeMap;
-	}
-
-	/**
-	 * Creates a new context information without an image.
-	 * 
-	 * @param contextDisplayString
-	 *            the string to be used when presenting the context
-	 * @param informationDisplayString
-	 *            the string to be displayed when presenting the context
-	 *            information
-	 */
-	public AttributeContextInformation(String contextDisplayString, String informationDisplayString, HashMap attr2RangeMap) {
-		this(null, contextDisplayString, informationDisplayString, attr2RangeMap);
-	}
-
-	/**
-	 * Maps (String -> Position). The attribute name to the Text position.
-	 * 
-	 * 
-	 */
-	public HashMap getAttr2RangeMap() {
-		return fAttr2RangeMap;
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContextInformation#getContextDisplayString()
-	 */
-	public String getContextDisplayString() {
-		if (fContextDisplayString != null)
-			return fContextDisplayString;
-		return fInformationDisplayString;
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContextInformationExtension#getContextInformationPosition()
-	 */
-	public int getContextInformationPosition() {
-		return fPosition;
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContextInformation#getImage()
-	 */
-	public Image getImage() {
-		return fImage;
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContextInformation#getInformationDisplayString()
-	 */
-	public String getInformationDisplayString() {
-		return fInformationDisplayString;
-	}
-
-	public void setContextInformationPosition(int position) {
-		fPosition = position;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformationPresenter.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformationPresenter.java
deleted file mode 100644
index ab19b30..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformationPresenter.java
+++ /dev/null
@@ -1,112 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import java.util.HashMap;
-
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.TextPresentation;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformationPresenter;
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-/**
- * Responsible for the presentation of the context info popup. This includes
- * text style, and when the window should close.
- * 
- * @author pavery
- */
-public class AttributeContextInformationPresenter implements IContextInformationPresenter, IContextInformationValidator {
-	private int fDocumentPosition = -1;
-
-	private IContextInformation fInfo = null;
-	private ContextInfoModelUtil fModelUtil = null;
-	private ITextViewer fViewer = null;
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContextInformationValidator#install(org.eclipse.jface.text.contentassist.IContextInformation,
-	 *      org.eclipse.jface.text.ITextViewer, int)
-	 */
-	public void install(IContextInformation info, ITextViewer viewer, int documentPosition) {
-		fInfo = info;
-		fViewer = viewer;
-		fDocumentPosition = documentPosition;
-		fModelUtil = new ContextInfoModelUtil((IStructuredDocument) fViewer.getDocument());
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContextInformationValidator#isContextInformationValid(int)
-	 */
-	public boolean isContextInformationValid(int documentPosition) {
-		// determine whether or not this context info should still be
-		// showing...
-		// if cursor still within the element it's valid...
-		IStructuredDocumentRegion startRegion = fModelUtil.getXMLNode(fDocumentPosition).getStartStructuredDocumentRegion();
-		int start = startRegion.getStartOffset();
-		int end = startRegion.getEndOffset();
-		return documentPosition < end && documentPosition > start + 1;
-	}
-
-	/**
-	 * @see org.eclipse.jface.text.contentassist.IContextInformationPresenter#updatePresentation(int,
-	 *      org.eclipse.jface.text.TextPresentation)
-	 */
-	public boolean updatePresentation(int documentPosition, TextPresentation presentation) {
-		presentation.clear();
-
-		if (!(fInfo instanceof AttributeContextInformation))
-			return false;
-
-		// iterate existing attributes from current node
-		XMLNode xmlNode = fModelUtil.getXMLNode(documentPosition);
-		IStructuredDocumentRegion sdRegion = xmlNode.getFirstStructuredDocumentRegion();
-		ITextRegionList regions = sdRegion.getRegions();
-		ITextRegion r = null;
-		String attrName = ""; //$NON-NLS-1$
-		Object temp = null;
-		Position p = null;
-		HashMap map = ((AttributeContextInformation) fInfo).getAttr2RangeMap();
-
-		// so we can add ranges in order
-		StyleRange[] sorted = new StyleRange[fInfo.getInformationDisplayString().length()];
-		for (int i = 0; i < regions.size(); i++) {
-			r = regions.get(i);
-			if (r.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-				attrName = sdRegion.getText(r);
-				temp = map.get(attrName);
-				if (temp != null) {
-					p = (Position) temp;
-					sorted[p.offset] = new StyleRange(p.offset, p.length, null, null, SWT.BOLD);
-				}
-			}
-		}
-		// style ranges need to be added in order
-		StyleRange sr = null;
-		for (int i = 0; i < sorted.length; i++) {
-			sr = sorted[i];
-			if (sr != null)
-				presentation.addStyleRange(sr);
-		}
-		return true;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformationProvider.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformationProvider.java
deleted file mode 100644
index 00380bc..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/AttributeContextInformationProvider.java
+++ /dev/null
@@ -1,208 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.List;
-
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.contentassist.ContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- * Calculates attribute context information based on a StructuedDocument and
- * document position.
- * 
- * @author pavery
- */
-class AttributeContextInformationProvider {
-	private final IContextInformation[] EMPTY_CONTEXT_INFO = new IContextInformation[0];
-	private Comparator fComparator;
-
-	private IStructuredDocument fDocument = null;
-	private ContextInfoModelUtil fModelUtil = null;
-
-	public AttributeContextInformationProvider(IStructuredDocument doc, AttributeContextInformationPresenter presenter) {
-		fDocument = doc;
-		fModelUtil = new ContextInfoModelUtil(fDocument);
-	}
-
-	/**
-	 * @param sdRegion
-	 
-	 */
-	private boolean canProposeInfo(IStructuredDocumentRegion sdRegion) {
-		if (sdRegion != null && isEndTag(sdRegion))
-			return false;
-		else
-			return true;
-	}
-
-	public IContextInformation[] getAttributeInformation(int offset) {
-		/*
-		 * need to take care of special cases w/ ambiguous regions <tag>|
-		 * </tag> also end tags..
-		 */
-		IContextInformation[] results = EMPTY_CONTEXT_INFO;
-
-		IStructuredDocumentRegion sdRegion = fModelUtil.getDocument().getRegionAtCharacterOffset(offset);
-		if (!canProposeInfo(sdRegion))
-			return EMPTY_CONTEXT_INFO;
-
-		XMLNode node = fModelUtil.getXMLNode(offset);
-		if (node != null) {
-			switch (node.getNodeType()) {
-				case Node.ELEMENT_NODE :
-					results = getInfoForElement(node);
-					break;
-			// future...
-			//			case Node.TEXT_NODE :
-			//				results = getInfoForText(node);
-			//				break;
-			}
-		}
-		return results;
-	}
-
-	/**
-	 * Returns a comparator that compares CMAttributeDeclaration names.
-	 * 
-	  the comparator
-	 */
-	private Comparator getCMAttributeComparator() {
-		if (fComparator == null)
-			fComparator = new Comparator() {
-				public int compare(Object o1, Object o2) {
-					return ((CMAttributeDeclaration) o1).getAttrName().compareTo(((CMAttributeDeclaration) o2).getAttrName());
-				}
-			};
-		return fComparator;
-	}
-
-	/**
-	 * @param node
-	 
-	 */
-	private IContextInformation[] getInfoForElement(XMLNode node) {
-		IContextInformation[] results = EMPTY_CONTEXT_INFO;
-		CMElementDeclaration decl = fModelUtil.getModelQuery().getCMElementDeclaration((Element) node);
-		if (decl != null) {
-			CMNamedNodeMap attributes = decl.getAttributes();
-
-			String attrContextString = node.getNodeName();
-			StringBuffer attrInfo = new StringBuffer(" "); //$NON-NLS-1$
-			String name = ""; //$NON-NLS-1$
-			HashMap attrPosMap = new HashMap();
-			int pos = 0;
-			int length = 0;
-			int numPerLine = 8;
-
-			CMAttributeDeclaration[] sortedAttrs = getSortedAttributes(attributes);
-
-			for (int i = 0; i < sortedAttrs.length; i++) {
-				name = sortedAttrs[i].getAttrName();
-				length = name.length();
-				pos = attrInfo.length();
-
-				attrInfo.append(name);
-
-				if (sortedAttrs[i].getUsage() == CMAttributeDeclaration.REQUIRED) {
-					attrInfo.append("*"); //$NON-NLS-1$
-					length++;
-				}
-				if (i < attributes.getLength() - 1) {
-					attrInfo.append(" "); //$NON-NLS-1$
-					if (i != 0 && i % numPerLine == 0)
-						attrInfo.append("\n "); //$NON-NLS-1$
-				}
-				attrPosMap.put(name, new Position(pos, length));
-			}
-			if (!attrInfo.toString().trim().equals("")) //$NON-NLS-1$
-				return new IContextInformation[]{new AttributeContextInformation(attrContextString, attrInfo.toString(), attrPosMap)};
-		}
-		return results;
-	}
-
-	/**
-	 * @param node
-	 
-	 */
-	 IContextInformation[] getInfoForText(XMLNode node) {
-		Node parent = node.getParentNode();
-		String contextString = node.getNodeName();
-		StringBuffer info = new StringBuffer(" "); //$NON-NLS-1$
-		if (parent != null && parent.getNodeType() == Node.ELEMENT_NODE) {
-			CMElementDeclaration decl = fModelUtil.getModelQuery().getCMElementDeclaration((Element) parent);
-			CMContent content = decl.getContent();
-			if (content instanceof CMGroup) {
-				CMGroup cmGroup = (CMGroup) content;
-				CMNodeList children = cmGroup.getChildNodes();
-				CMNode cmNode = null;
-				for (int i = 0; i < children.getLength(); i++) {
-					cmNode = children.item(i);
-					contextString = cmNode.getNodeName();
-					if (contextString != null) {
-						info.append("<" + cmNode.getNodeName() + ">"); //$NON-NLS-1$ //$NON-NLS-2$
-						if (i < children.getLength() - 1)
-							info.append(" "); //$NON-NLS-1$
-					}
-				}
-			}
-		}
-		if (!info.toString().trim().equals("")) //$NON-NLS-1$
-			return new IContextInformation[]{new ContextInformation(contextString, info.toString())};
-		else
-			return EMPTY_CONTEXT_INFO;
-	}
-
-	/**
-	 * Returns sorted array of CMAttributeDeclarations.
-	 * 
-	 * @param attributes
-	 
-	 */
-	private CMAttributeDeclaration[] getSortedAttributes(CMNamedNodeMap attributes) {
-		List sorted = new ArrayList();
-		for (int i = 0; i < attributes.getLength(); i++)
-			sorted.add(attributes.item(i));
-		Collections.sort(sorted, getCMAttributeComparator());
-		return (CMAttributeDeclaration[]) sorted.toArray(new CMAttributeDeclaration[sorted.size()]);
-	}
-
-	/**
-	 * @param sdRegion
-	 
-	 */
-	private boolean isEndTag(IStructuredDocumentRegion sdRegion) {
-		ITextRegionList regions = sdRegion.getRegions();
-		return regions.get(0).getType() == XMLRegionContext.XML_END_TAG_OPEN;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ContentAssistRequest.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ContentAssistRequest.java
deleted file mode 100644
index 37a8189..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ContentAssistRequest.java
+++ /dev/null
@@ -1,269 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionCollection;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.preferences.PreferenceManager;
-import org.w3c.dom.Node;
-
-
-public class ContentAssistRequest {
-	protected IStructuredDocumentRegion documentRegion = null;
-
-
-	protected PreferenceManager fPreferenceManager = null;
-	protected List macros = new ArrayList();
-	protected String matchString;
-	protected Node node = null;
-	protected Node parent = null;
-	protected List proposals = new ArrayList();
-	protected ITextRegion region = null;
-	protected int replacementBeginPosition;
-	protected int replacementLength;
-
-	//	private Boolean separate = null; // (pa) not used
-	//	private Boolean sort = null; // (pa) not used
-	/**
-	 * XMLContentAssistRequest constructor comment.
-	 */
-	public ContentAssistRequest(Node node, Node parent, IStructuredDocumentRegion documentRegion, ITextRegion completionRegion, int begin, int length, String filter, PreferenceManager preferencesManager) {
-		super();
-		setNode(node);
-		setParent(parent);
-		setDocumentRegion(documentRegion);
-		setRegion(completionRegion);
-		setMatchString(filter);
-		setReplacementBeginPosition(begin);
-		setReplacementLength(length);
-		fPreferenceManager = preferencesManager;
-	}
-
-	public void addMacro(ICompletionProposal newProposal) {
-		macros.add(newProposal);
-	}
-
-	public void addProposal(ICompletionProposal newProposal) {
-		proposals.add(newProposal);
-	}
-
-	public ICompletionProposal[] getCompletionProposals() {
-		ICompletionProposal results[] = null;
-		if (getProposals().size() > 0 || getMacros().size() > 0) {
-			List allProposals = new ArrayList();
-			if (!shouldSeparate()) {
-				allProposals.addAll(getProposals());
-				// should be empty, as all macros should have gone into the
-				// proposal list
-				allProposals.addAll(getMacros());
-				allProposals = sortProposals(allProposals);
-			} else {
-				allProposals.addAll(sortProposals(getProposals()));
-				allProposals.addAll(sortProposals(getMacros()));
-			}
-
-			results = new ICompletionProposal[allProposals.size()];
-			for (int i = 0; i < allProposals.size(); i++) {
-				results[i] = (ICompletionProposal) allProposals.get(i);
-			}
-		}
-		return results;
-	}
-
-	/**
-	 * 
-	 * @return com.ibm.sed.structuredDocument.core.IStructuredDocumentRegion
-	 */
-	public IStructuredDocumentRegion getDocumentRegion() {
-		return documentRegion;
-	}
-
-	/**
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List getMacros() {
-		return macros;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public java.lang.String getMatchString() {
-		return matchString;
-	}
-
-	/**
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public org.w3c.dom.Node getNode() {
-		return node;
-	}
-
-	/**
-	 * 
-	 * @return org.w3c.dom.Node
-	 */
-	public org.w3c.dom.Node getParent() {
-		return parent;
-	}
-
-	/**
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List getProposals() {
-		return proposals;
-	}
-
-	/**
-	 * 
-	 * @return com.ibm.sed.structuredDocument.core.ITextRegion
-	 */
-	public ITextRegion getRegion() {
-		return region;
-	}
-
-	/**
-	 * 
-	 * @return int
-	 */
-	public int getReplacementBeginPosition() {
-		return replacementBeginPosition;
-	}
-
-	/**
-	 * @return int
-	 */
-	public int getReplacementLength() {
-		return replacementLength;
-	}
-
-	public int getStartOffset() {
-		if (getDocumentRegion() != null && getRegion() != null)
-			return ((ITextRegionCollection) getDocumentRegion()).getStartOffset(getRegion());
-		return -1;
-	}
-
-	public String getText() {
-		if (getDocumentRegion() != null && getRegion() != null)
-			return ((ITextRegionCollection) getDocumentRegion()).getText(getRegion());
-		return ""; //$NON-NLS-1$
-	}
-
-	public int getTextEndOffset() {
-		if (getDocumentRegion() != null && getRegion() != null)
-			return ((ITextRegionCollection) getDocumentRegion()).getTextEndOffset(getRegion());
-		return -1;
-	}
-
-	/**
-	 * @param region
-	 */
-	public void setDocumentRegion(IStructuredDocumentRegion region) {
-		documentRegion = region;
-	}
-
-	/**
-	 * 
-	 * @param newMatchString
-	 *            java.lang.String
-	 */
-	public void setMatchString(java.lang.String newMatchString) {
-		matchString = newMatchString;
-	}
-
-	/**
-	 * 
-	 * @param newNode
-	 *            org.w3c.dom.Node
-	 */
-	public void setNode(org.w3c.dom.Node newNode) {
-		node = newNode;
-	}
-
-	/**
-	 * 
-	 * @param newParent
-	 *            org.w3c.dom.Node
-	 */
-	public void setParent(org.w3c.dom.Node newParent) {
-		parent = newParent;
-	}
-
-	/**
-	 * 
-	 * @param newRegion
-	 *            com.ibm.sed.structuredDocument.ITextRegion
-	 */
-	public void setRegion(ITextRegion newRegion) {
-		region = newRegion;
-	}
-
-	/**
-	 * 
-	 * @param newReplacementBeginPosition
-	 *            int
-	 */
-	public void setReplacementBeginPosition(int newReplacementBeginPosition) {
-		replacementBeginPosition = newReplacementBeginPosition;
-	}
-
-
-	public void setReplacementLength(int newReplacementLength) {
-		replacementLength = newReplacementLength;
-	}
-
-	public boolean shouldSeparate() {
-		/*
-		 * if (separate == null) { PreferenceManager manager =
-		 * getPreferenceManager(); if(manager == null) { separate =
-		 * Boolean.FALSE; } else { Element caSettings =
-		 * manager.getElement(PreferenceNames.CONTENT_ASSIST); separate = new
-		 * Boolean(caSettings.getAttribute(PreferenceNames.SEPARATE).equals(PreferenceNames.TRUE)); } }
-		 * return separate.booleanValue();
-		 */
-		return false;
-	}
-
-	protected List sortProposals(List proposalsIn) {
-		Collections.sort(proposalsIn, new ProposalComparator());
-		return proposalsIn;
-
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public java.lang.String toString() {
-		return "Node: " + getNode() //$NON-NLS-1$
-					+ "\nParent: " + getParent() //$NON-NLS-1$
-					+ "\nStructuredDocumentRegion: " + StringUtils.escape(getDocumentRegion().toString()) //$NON-NLS-1$
-					+ "\nRegion: " + getRegion() //$NON-NLS-1$
-					+ "\nMatch string: '" + StringUtils.escape(getMatchString()) + "'" //$NON-NLS-2$//$NON-NLS-1$
-					+ "\nOffsets: [" + getReplacementBeginPosition() + "-" + (getReplacementBeginPosition() + getReplacementLength()) + "]\n"; //$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ContextInfoModelUtil.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ContextInfoModelUtil.java
deleted file mode 100644
index 5020bea..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ContextInfoModelUtil.java
+++ /dev/null
@@ -1,65 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-
-
-/**
- * @author pavery
- */
-public class ContextInfoModelUtil {
-	IStructuredDocument fDocument = null;
-
-	ContextInfoModelUtil(IStructuredDocument doc) {
-		fDocument = doc;
-	}
-
-	public IStructuredDocument getDocument() {
-		return fDocument;
-	}
-
-	public ModelQuery getModelQuery() {
-		ModelQuery mq = null;
-
-		IStructuredModel xmlModel = null;
-		try {
-			xmlModel = StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());
-			mq = ModelQueryUtil.getModelQuery(xmlModel);
-		}
-		finally {
-			if (xmlModel != null) {
-				xmlModel.releaseFromRead();
-			}
-		}
-		return mq;
-	}
-
-	public XMLNode getXMLNode(int offset) {
-		IStructuredModel xmlModel = null;
-		XMLNode xmlNode = null;
-		try {
-			xmlModel = StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());
-			xmlNode = (XMLNode) xmlModel.getIndexedRegion(offset);
-		}
-		finally {
-			xmlModel.releaseFromRead();
-		}
-		return xmlNode;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/CustomTemplateProposal.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/CustomTemplateProposal.java
deleted file mode 100644
index 83f9f59..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/CustomTemplateProposal.java
+++ /dev/null
@@ -1,40 +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.xml.ui.contentassist;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.jface.text.templates.TemplateProposal;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceCompletionProposal;
-
-/**
- * Purpose of this class is to make the additional proposal info into content
- * fit for an HTML viewer (by escaping characters)
- */
-class CustomTemplateProposal extends TemplateProposal implements IRelevanceCompletionProposal {
-	// copies of this class exist in:
-	// org.eclipse.jst.jsp.ui.internal.contentassist
-	// org.eclipse.wst.html.ui.internal.contentassist
-	// org.eclipse.wst.xml.ui.internal.contentassist
-
-	public CustomTemplateProposal(Template template, TemplateContext context, IRegion region, Image image, int relevance) {
-		super(template, context, region, image, relevance);
-	}
-
-	public String getAdditionalProposalInfo() {
-		String additionalInfo = super.getAdditionalProposalInfo();
-		return StringUtils.convertToHTMLContent(additionalInfo);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/NoRegionContentAssistProcessor.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/NoRegionContentAssistProcessor.java
deleted file mode 100644
index cbaf2c9..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/NoRegionContentAssistProcessor.java
+++ /dev/null
@@ -1,263 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-
-
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.ui.internal.IReleasable;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.IResourceDependentProcessor;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-
-
-/**
- * ContentAssistProcessor to handle special cases in content assist where the
- * partitioner cannot determine a partition type at the current cursor
- * position (usually at EOF).
- * 
- * @author pavery
- */
-public class NoRegionContentAssistProcessor implements IContentAssistProcessor, IResourceDependentProcessor, IReleasable {
-
-	protected char completionProposalAutoActivationCharacters[] = null;
-	protected char contextInformationAutoActivationCharacters[] = null;
-
-	private final ICompletionProposal[] EMPTY_PROPOSAL_SET = new ICompletionProposal[0];
-	protected String fErrorMessage = null;
-	protected HashMap fNameToProcessorMap = null;
-	protected HashMap fPartitionToProcessorMap = null;
-	protected IResource fResource = null;
-
-	public NoRegionContentAssistProcessor() {
-		super();
-		fPartitionToProcessorMap = new HashMap();
-		fNameToProcessorMap = new HashMap();
-		initNameToProcessorMap();
-		initPartitionToProcessorMap();
-
-	}
-
-	/**
-	 * Figures out what the correct ICompletionProposalProcessor is and
-	 * computesCompletionProposals on that.
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#computeCompletionProposals(org.eclipse.jface.text.ITextViewer,
-	 *      int)
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer viewer, int documentOffset) {
-		IContentAssistProcessor p = null;
-		ICompletionProposal[] results = EMPTY_PROPOSAL_SET;
-
-		p = guessContentAssistProcessor(viewer, documentOffset);
-		if (p != null)
-			results = p.computeCompletionProposals(viewer, documentOffset);
-
-		return (results != null) ? results : EMPTY_PROPOSAL_SET;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#computeContextInformation(org.eclipse.jface.text.ITextViewer,
-	 *      int)
-	 */
-	public IContextInformation[] computeContextInformation(ITextViewer viewer, int documentOffset) {
-		// get context info from processor that we end up using...
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getCompletionProposalAutoActivationCharacters()
-	 */
-	public char[] getCompletionProposalAutoActivationCharacters() {
-		return completionProposalAutoActivationCharacters;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getContextInformationAutoActivationCharacters()
-	 */
-	public char[] getContextInformationAutoActivationCharacters() {
-		return contextInformationAutoActivationCharacters;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getContextInformationValidator()
-	 */
-	public IContextInformationValidator getContextInformationValidator() {
-		// return the validator for the content assist processor that we
-		// used...
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getErrorMessage()
-	 */
-	public String getErrorMessage() {
-		return fErrorMessage;
-	}
-
-	/**
-	 * Gives you the document partition type (String) for the given
-	 * StructuredTextViewer and documentPosition.
-	 * 
-	 * @param viewer
-	 * @param documentPosition
-	 * @return String
-	 */
-	protected String getPartitionType(StructuredTextViewer viewer, int documentPosition) {
-		IDocument document = viewer.getDocument();
-		String partitionType = null;
-		ITypedRegion partition = null;
-		try {
-			partition = document.getPartition(documentPosition);
-			partitionType = partition.getType();
-		} catch (BadLocationException e) {
-			partitionType = null;
-		}
-		return partitionType;
-	}
-
-	/**
-	 * Guesses a ContentAssistProcessor based on the TextViewer and
-	 * documentOffset.
-	 * 
-	 * @param viewer
-	 * @param documentOffset
-	 */
-	protected IContentAssistProcessor guessContentAssistProcessor(ITextViewer viewer, int documentOffset) {
-		//  mapping logic here...
-		// look @ previous region
-		// look @ previous doc partition type
-		// look @ page language
-		IContentAssistProcessor p = null;
-		IStructuredDocumentRegion sdRegion = ContentAssistUtils.getStructuredDocumentRegion((StructuredTextViewer) viewer, documentOffset);
-		if (sdRegion != null) {
-			String currentRegionType = sdRegion.getType();
-			//System.out.println("current region type is >> " +
-			// currentRegionType);
-			if (currentRegionType == XMLRegionContext.UNDEFINED) {
-				IStructuredDocumentRegion sdPrev = sdRegion.getPrevious();
-				if (sdPrev != null) {
-					String prevRegionType = sdPrev.getType();
-					//System.out.println("previous region type is >> " +
-					// prevRegionType);
-				}
-			}
-		}
-		// working w/ viewer & document partition
-		if (p == null && viewer.getDocument().getLength() > 0) {
-			String prevPartitionType = getPartitionType((StructuredTextViewer) viewer, documentOffset - 1);
-			//System.out.println("previous partition type is > " +
-			// prevPartitionType);
-			p = (IContentAssistProcessor) fPartitionToProcessorMap.get(prevPartitionType);
-		}
-		return p;
-	}
-
-	/**
-	 * Necessary for certain content assist processors (such as
-	 * JSPJavaContentAssistProcessor). This gets set in
-	 * StructuredTextViewerConfiguration.
-	 *  
-	 */
-	public void initialize(IResource resource) {
-		fResource = resource;
-		setResourceOnProcessors(resource);
-	}
-
-	/**
-	 * Inits map for extra ContentAssistProcessors (useBean, get/setProperty)
-	 */
-	protected void initNameToProcessorMap() {
-	}
-
-	/**
-	 * Adds all relevent ContentAssistProcessors to the partition to processor
-	 * map (just XML here)
-	 */
-	protected void initPartitionToProcessorMap() {
-		XMLContentAssistProcessor xmlProcessor = new XMLContentAssistProcessor();
-		fPartitionToProcessorMap.put(IXMLPartitions.XML_DEFAULT, xmlProcessor);
-	}
-
-	public void release() {
-		releasePartitionToProcessorMap();
-		releaseNameToProcessorMap();
-	}
-
-	protected void releaseMap(HashMap map) {
-		if (map != null && !map.isEmpty()) {
-			Iterator it = map.keySet().iterator();
-			Object key = null;
-			while (it.hasNext()) {
-				key = it.next();
-				if (map.get(key) instanceof IReleasable)
-					((IReleasable) map.get(key)).release();
-			}
-			map.clear();
-			map = null;
-		}
-	}
-
-	protected void releaseNameToProcessorMap() {
-		releaseMap(fNameToProcessorMap);
-	}
-
-	protected void releasePartitionToProcessorMap() {
-		releaseMap(fPartitionToProcessorMap);
-	}
-
-	private void setResourceOnMap(IResource resource, HashMap map) {
-		if (!map.isEmpty()) {
-			Iterator keys = map.keySet().iterator();
-			Object o = null;
-			while (keys.hasNext()) {
-				o = fPartitionToProcessorMap.get(keys.next());
-				if (o instanceof IResourceDependentProcessor)
-					((IResourceDependentProcessor) o).initialize(resource);
-			}
-		}
-	}
-
-	/**
-	 * @param resource
-	 */
-	private void setResourceOnProcessors(IResource resource) {
-		setResourceOnMap(resource, fPartitionToProcessorMap);
-		setResourceOnMap(resource, fNameToProcessorMap);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/NonValidatingModelQueryAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/NonValidatingModelQueryAction.java
deleted file mode 100644
index 7b1c46d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/NonValidatingModelQueryAction.java
+++ /dev/null
@@ -1,159 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-
-public class NonValidatingModelQueryAction implements org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQueryAction {
-
-	protected CMNode cmnode = null;
-	protected int endIndex = 0;
-	protected int kind = INSERT;
-	protected int startIndex = 0;
-	protected Object userData = null;
-
-	/**
-	 * NonValidatingModelQueryAction constructor comment.
-	 */
-	protected NonValidatingModelQueryAction() {
-		super();
-	}
-
-	/**
-	 * NonValidatingModelQueryAction constructor comment.
-	 */
-	public NonValidatingModelQueryAction(CMNode newChild, int newKind, int newStart, int newEnd, Object newUserData) {
-		super();
-		cmnode = newChild;
-		kind = newKind;
-		startIndex = newStart;
-		endIndex = newEnd;
-		userData = newUserData;
-	}
-
-	/**
-	 * getCMNode method comment.
-	 */
-	public org.eclipse.wst.xml.core.internal.contentmodel.CMNode getCMNode() {
-		return cmnode;
-	}
-
-	/**
-	 * 
-	 * @return int
-	 */
-	public int getEndIndex() {
-		return endIndex;
-	}
-
-	/**
-	 * 
-	 * @return int
-	 */
-	public int getKind() {
-		return kind;
-	}
-
-	/**
-	 * getParent method comment.
-	 */
-	public org.w3c.dom.Node getParent() {
-		return null;
-	}
-
-	/**
-	 * 
-	 * @return int
-	 */
-	public int getStartIndex() {
-		return startIndex;
-	}
-
-	/**
-	 * getUserData method comment.
-	 */
-	public Object getUserData() {
-		return null;
-	}
-
-	/**
-	 * performAction method comment.
-	 */
-	public void performAction() {
-	}
-
-	/**
-	 * setCMNode method comment.
-	 */
-	protected void setCMNode(org.eclipse.wst.xml.core.internal.contentmodel.CMNode newNode) {
-		cmnode = newNode;
-	}
-
-	/**
-	 * 
-	 * @param newEndIndex
-	 *            int
-	 */
-	protected void setEndIndex(int newEndIndex) {
-		endIndex = newEndIndex;
-	}
-
-	/**
-	 * 
-	 * @param newKind
-	 *            int
-	 */
-	protected void setKind(int newKind) {
-		kind = newKind;
-	}
-
-	/**
-	 * 
-	 * @param newStartIndex
-	 *            int
-	 */
-	protected void setStartIndex(int newStartIndex) {
-		startIndex = newStartIndex;
-	}
-
-	/**
-	 * setUserData method comment.
-	 */
-	public void setUserData(Object object) {
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		String actionName = null;
-		switch (kind) {
-			case INSERT :
-				actionName = "INSERT";//$NON-NLS-1$
-				break;
-			case REMOVE :
-				actionName = "REMOVE";//$NON-NLS-1$
-				break;
-			case REPLACE :
-				actionName = "REPLACE";//$NON-NLS-1$
-				break;
-			default :
-				actionName = "UNKNOWN ACTION ";//$NON-NLS-1$
-		}
-		String nodeName = (cmnode != null) ? getCMNode().getNodeName() : "(unknown)";//$NON-NLS-1$
-		return actionName + "=" + nodeName + "(" + startIndex + "..." + endIndex + ")";//$NON-NLS-4$//$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ProposalComparator.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ProposalComparator.java
deleted file mode 100644
index 11048a2..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/ProposalComparator.java
+++ /dev/null
@@ -1,48 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-
-
-import java.util.Comparator;
-
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceCompletionProposal;
-
-
-public class ProposalComparator implements Comparator {
-
-
-	public int compare(Object o1, Object o2) {
-		int relevance = 0;
-		if (o1 instanceof IRelevanceCompletionProposal && o2 instanceof IRelevanceCompletionProposal) {
-			// sort based on relevance
-			IRelevanceCompletionProposal cp1 = (IRelevanceCompletionProposal) o1;
-			IRelevanceCompletionProposal cp2 = (IRelevanceCompletionProposal) o2;
-
-			relevance = cp2.getRelevance() - cp1.getRelevance();
-
-			// if same relevance, secondary sort (lexigraphically)
-			if (relevance == 0 && o1 instanceof ICompletionProposal && o2 instanceof ICompletionProposal) {
-				String displayString1 = ((ICompletionProposal) o1).getDisplayString();
-				String displayString2 = ((ICompletionProposal) o2).getDisplayString();
-				if (displayString1 != null && displayString2 != null)
-					//relevance = displayString1.compareTo(displayString2);
-					// // this didn't mix caps w/ lowercase
-					relevance = java.text.Collator.getInstance().compare(displayString1, displayString2);
-			}
-		}
-		// otherwise if it's not ISEDRelevanceCompletionProposal, don't sort
-		return relevance;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/SimpleCMElementDeclaration.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/SimpleCMElementDeclaration.java
deleted file mode 100644
index 4642576..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/SimpleCMElementDeclaration.java
+++ /dev/null
@@ -1,170 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-
-
-public class SimpleCMElementDeclaration implements org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration {
-
-	String fNodeName;
-
-	/**
-	 * SimpleCMELementDeclaration constructor comment.
-	 */
-	public SimpleCMElementDeclaration() {
-		super();
-	}
-
-	public SimpleCMElementDeclaration(String nodeName) {
-		super();
-		setNodeName(nodeName);
-	}
-
-	/**
-	 * getAttributes method
-	 * 
-	 * @return CMNamedNodeMap
-	 * 
-	 * Returns CMNamedNodeMap of AttributeDeclaration
-	 */
-	public org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap getAttributes() {
-		return null;
-	}
-
-	/**
-	 * getCMContent method
-	 * 
-	 * @return CMContent
-	 * 
-	 * Returns the root node of this element's content model. This can be an
-	 * CMElementDeclaration or a CMGroup
-	 */
-	public org.eclipse.wst.xml.core.internal.contentmodel.CMContent getContent() {
-		return null;
-	}
-
-	/**
-	 * getContentType method
-	 * 
-	 * @return int
-	 * 
-	 * Returns one of : ANY, EMPTY, ELEMENT, MIXED, PCDATA, CDATA.
-	 */
-	public int getContentType() {
-		return 0;
-	}
-
-	/**
-	 * getDataType method
-	 * 
-	 * @return java.lang.String
-	 */
-	public org.eclipse.wst.xml.core.internal.contentmodel.CMDataType getDataType() {
-		return null;
-	}
-
-	/**
-	 * getElementName method
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getElementName() {
-		return null;
-	}
-
-	/**
-	 * getLocalElements method
-	 * 
-	 * @return CMNamedNodeMap
-	 * 
-	 * Returns a list of locally defined elements.
-	 */
-	public org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap getLocalElements() {
-		return null;
-	}
-
-	/**
-	 * getMaxOccur method
-	 * 
-	 * @return int
-	 * 
-	 * If -1, it's UNBOUNDED.
-	 */
-	public int getMaxOccur() {
-		return 0;
-	}
-
-	/**
-	 * getMinOccur method
-	 * 
-	 * @return int
-	 * 
-	 * If 0, it's OPTIONAL. If 1, it's REQUIRED.
-	 */
-	public int getMinOccur() {
-		return 0;
-	}
-
-	/**
-	 * 
-	 * @return java.lang.String
-	 */
-	public java.lang.String getNodeName() {
-		return fNodeName;
-	}
-
-	/**
-	 * getNodeType method
-	 * 
-	 * @return int
-	 * 
-	 * Returns one of :
-	 *  
-	 */
-	public int getNodeType() {
-		return 0;
-	}
-
-	/**
-	 * getProperty method
-	 * 
-	 * @return java.lang.Object
-	 * 
-	 * Returns the object property desciped by the propertyName
-	 *  
-	 */
-	public Object getProperty(String propertyName) {
-		return null;
-	}
-
-	/**
-	 * 
-	 * @param newNodeName
-	 *            java.lang.String
-	 */
-	public void setNodeName(java.lang.String newNodeName) {
-		fNodeName = newNodeName;
-	}
-
-	/**
-	 * supports method
-	 * 
-	 * @return boolean
-	 * 
-	 * Returns true if the CMNode supports a specified property
-	 *  
-	 */
-	public boolean supports(String propertyName) {
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/SourceEditorImageHelper.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/SourceEditorImageHelper.java
deleted file mode 100644
index bd9306b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/SourceEditorImageHelper.java
+++ /dev/null
@@ -1,48 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-
-/**
- * @deprecated use internal XMLEditorPluginImageHelper or external
- *             SharedXMLEditorPluginImageHelper instead
- */
-public class SourceEditorImageHelper {
-
-	public SourceEditorImageHelper() {
-		super();
-	}
-
-	public Image createImage(String resource) {
-		ImageDescriptor desc = AbstractUIPlugin.imageDescriptorFromPlugin(XMLUIPlugin.ID, resource);
-		Image image = desc.createImage();
-		JFaceResources.getImageRegistry().put(resource, image);
-		return image;
-	}
-
-	public Image getImage(String resource) {
-		Image image = JFaceResources.getImageRegistry().get(resource);
-		if (image == null) {
-			image = createImage(resource);
-		}
-		return image;
-	}
-
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentAssistProcessor.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentAssistProcessor.java
deleted file mode 100644
index 6f6146b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentAssistProcessor.java
+++ /dev/null
@@ -1,145 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.preferences.XMLUIPreferenceNames;
-import org.eclipse.wst.xml.ui.internal.templates.TemplateContextTypeIdsXML;
-
-public class XMLContentAssistProcessor extends AbstractContentAssistProcessor implements IPropertyChangeListener {
-
-	protected IPreferenceStore fPreferenceStore = null;
-	protected IResource fResource = null;
-	private XMLTemplateCompletionProcessor fTemplateProcessor = null;
-	private List fTemplateContexts = new ArrayList();
-
-	public XMLContentAssistProcessor() {
-		super();
-	}
-	
-	protected void addAttributeNameProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsXML.ATTRIBUTE);
-		super.addAttributeNameProposals(contentAssistRequest);
-	}
-	
-	protected void addAttributeValueProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsXML.ATTRIBUTE_VALUE);
-		super.addAttributeValueProposals(contentAssistRequest);
-	}
-	
-	protected void addEmptyDocumentProposals(ContentAssistRequest contentAssistRequest) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsXML.NEW);
-		super.addEmptyDocumentProposals(contentAssistRequest);
-	}
-	
-	protected void addTagInsertionProposals(ContentAssistRequest contentAssistRequest, int childPosition) {
-		addTemplates(contentAssistRequest, TemplateContextTypeIdsXML.TAG);
-		super.addTagInsertionProposals(contentAssistRequest, childPosition);
-	}
-	
-	/**
-	 * Adds templates to the list of proposals
-	 * 
-	 * @param contentAssistRequest
-	 * @param context
-	 */
-	private void addTemplates(ContentAssistRequest contentAssistRequest, String context) {
-		if (contentAssistRequest == null)
-			return;
-
-		// if already adding template proposals for a certain context type, do
-		// not add again
-		if (!fTemplateContexts.contains(context)) {
-			fTemplateContexts.add(context);
-			boolean useProposalList = !contentAssistRequest.shouldSeparate();
-
-			if (getTemplateCompletionProcessor() != null) {
-				getTemplateCompletionProcessor().setContextType(context);
-				ICompletionProposal[] proposals = getTemplateCompletionProcessor().computeCompletionProposals(fTextViewer, contentAssistRequest.getReplacementBeginPosition());
-				for (int i = 0; i < proposals.length; ++i) {
-					if (useProposalList)
-						contentAssistRequest.addProposal(proposals[i]);
-					else
-						contentAssistRequest.addMacro(proposals[i]);
-				}
-			}
-		}
-	}
-	
-	protected ContentAssistRequest computeCompletionProposals(int documentPosition, String matchString, ITextRegion completionRegion, XMLNode treeNode, XMLNode xmlnode) {
-		ContentAssistRequest request = super.computeCompletionProposals(documentPosition, matchString, completionRegion, treeNode, xmlnode);
-		addTemplates(request, TemplateContextTypeIdsXML.ALL);
-		return request;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.xml.ui.contentassist.AbstractContentAssistProcessor#computeCompletionProposals(org.eclipse.jface.text.ITextViewer, int)
-	 */
-	public ICompletionProposal[] computeCompletionProposals(ITextViewer textViewer, int documentPosition) {
-		fTemplateContexts.clear();
-		return super.computeCompletionProposals(textViewer, documentPosition);
-	}
-
-	protected IPreferenceStore getPreferenceStore() {
-		if (fPreferenceStore == null)
-			fPreferenceStore = XMLUIPlugin.getDefault().getPreferenceStore();
-		return fPreferenceStore;
-	}
-
-	private XMLTemplateCompletionProcessor getTemplateCompletionProcessor() {
-		if (fTemplateProcessor == null) {
-			fTemplateProcessor = new XMLTemplateCompletionProcessor();
-		}
-		return fTemplateProcessor;
-	}
-
-	protected void init() {
-		getPreferenceStore().addPropertyChangeListener(this);
-		reinit();
-	}
-
-	public void propertyChange(PropertyChangeEvent event) {
-		String property = event.getProperty();
-
-		if (property.compareTo(XMLUIPreferenceNames.AUTO_PROPOSE) == 0 || property.compareTo(XMLUIPreferenceNames.AUTO_PROPOSE_CODE) == 0) {
-			reinit();
-		}
-	}
-
-	protected void reinit() {
-		String key = XMLUIPreferenceNames.AUTO_PROPOSE;
-		boolean doAuto = getPreferenceStore().getBoolean(key);
-		if (doAuto) {
-			key = XMLUIPreferenceNames.AUTO_PROPOSE_CODE;
-			completionProposalAutoActivationCharacters = getPreferenceStore().getString(key).toCharArray();
-		} else {
-			completionProposalAutoActivationCharacters = null;
-		}
-	}
-
-	public void release() {
-		super.release();
-		getPreferenceStore().removePropertyChangeListener(this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentAssistUtilities.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentAssistUtilities.java
deleted file mode 100644
index c13589e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentAssistUtilities.java
+++ /dev/null
@@ -1,502 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionContainer;
-import org.eclipse.wst.sse.core.util.ScriptLanguageKeys;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.sse.ui.internal.contentassist.CustomCompletionProposal;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.w3c.dom.Document;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-/**
- * @author pavery
- */
-public class XMLContentAssistUtilities extends ContentAssistUtils {
-	
-    /**
-     * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-     * way for expedency. Should be evolved in future to depend on "nestedContext".
-     */
-	private class DOMJSPRegionContextsPrivateCopy {
-		private static final String JSP_CLOSE = "JSP_CLOSE"; //$NON-NLS-1$
-		private static final String JSP_DECLARATION_OPEN = "JSP_DECLARATION_OPEN"; //$NON-NLS-1$
-		private static final String JSP_SCRIPTLET_OPEN = "JSP_SCRIPTLET_OPEN"; //$NON-NLS-1$
-		private static final String JSP_EXPRESSION_OPEN = "JSP_EXPRESSION_OPEN"; //$NON-NLS-1$
-
-	}
-
-
-	public static final String CONTENT = "Content"; //$NON-NLS-1$
-	public static final String CONTENT_SCRIPT_TYPE = "Content-Script-Type"; //$NON-NLS-1$
-	public static final String HEAD = "HEAD"; //$NON-NLS-1$
-	public static final String HTML = "HTML"; //$NON-NLS-1$
-	public static final String HTTP_EQUIV = "HTTP-EQUIV"; //$NON-NLS-1$
-	public static final String META = "META"; //$NON-NLS-1$
-
-	/**
-	 * A convenience method for getting the closing proposal given the
-	 * contents (IndexedRegion) of a tag that is started, but possibly not
-	 * ended
-	 * 
-	 * @param viewer
-	 *            the text viewer
-	 * @param documentPosition
-	 *            the cursor position in the viewer
-	 * @param indexedNode
-	 *            the contents of the tag that is started but possibly not
-	 *            ended
-	 * @param parentTagName
-	 *            the tag on which you are checkin for an ending tag
-	 * @param imagePath
-	 *            content assist image path in realation to com.ibm.sed.
-	 *            structured. contentassist. xmlSourceEditorImageHelper
-	 * @return ICompletionProposal
-	 */
-	public static ICompletionProposal computeJSPEndTagProposal(ITextViewer viewer, int documentPosition, IndexedRegion indexedNode, String parentTagName, String imagePath) {
-		ICompletionProposal p = null;
-
-		// check if tag is closed
-		boolean hasEndTag = true;
-		boolean isJSPTag = false;
-		XMLNode xnode = null;
-		String tagName = ""; //$NON-NLS-1$
-		if (indexedNode instanceof XMLNode) {
-			xnode = ((XMLNode) indexedNode);
-			// it's ended already...
-			if (xnode.getEndStructuredDocumentRegion() != null)
-				return null;
-			XMLNode openNode = null;
-			if (!xnode.getNodeName().equalsIgnoreCase(parentTagName))
-				openNode = (XMLNode) xnode.getParentNode();
-			if (openNode != null) {
-				if (openNode instanceof XMLElement) {
-					isJSPTag = ((XMLElement) openNode).isJSPTag();
-				}
-				tagName = openNode.getNodeName();
-				hasEndTag = (openNode.getEndStructuredDocumentRegion() != null);
-			}
-		}
-
-		// it's closed, don't add close tag proposal
-		if (!hasEndTag && !isJSPTag) {
-
-			// create appropriate close tag text
-			String proposedText = proposedText = "</" + tagName; // ResourceHandler
-			// wants text
-			// w/out
-			// ending '>'
-			// //$NON-NLS-1$
-			String viewerText = viewer.getTextWidget().getText();
-			if (viewerText.length() >= documentPosition && viewerText.length() >= 2 && documentPosition >= 2) {
-				String last2chars = viewerText.substring(documentPosition - 2, documentPosition);
-				if (last2chars.endsWith("</")) //$NON-NLS-1$
-					proposedText = tagName;
-				else if (last2chars.endsWith("<")) //$NON-NLS-1$
-					proposedText = "/" + tagName; //$NON-NLS-1$
-			}
-
-			// create proposal
-			p = new CustomCompletionProposal(proposedText + ">", //$NON-NLS-1$
-						documentPosition, 0, proposedText.length() + 1, XMLEditorPluginImageHelper.getInstance().getImage(imagePath), //$NON-NLS-1$
-						SSEUIPlugin.getResourceString("%15concat", (new Object[]{proposedText})), //$NON-NLS-1$ = "End with '{0}>'"
-						null, null, XMLRelevanceConstants.R_END_TAG);
-		}
-		else if (!hasEndTag && isJSPTag) {
-
-			// create appropriate close tag text
-			String proposedText = proposedText = "%"; // ResourceHandler
-			// wants
-			// text w/out ending '>'
-			// //$NON-NLS-1$
-			String viewerText = viewer.getTextWidget().getText();
-
-			// TODO (pa) make it smarter to add "%>" or just ">" if % is
-			// already there...
-			if (viewerText.length() >= documentPosition && viewerText.length() >= 2) {
-				String last2chars = viewerText.substring(documentPosition - 2, documentPosition);
-				String lastchar = viewerText.substring(documentPosition - 1, documentPosition);
-				if (lastchar.equals("%")) //$NON-NLS-1$
-				{
-					if (last2chars.endsWith("<%")) //$NON-NLS-1$
-						proposedText = "%"; //$NON-NLS-1$
-					else
-						proposedText = ""; //$NON-NLS-1$
-				}
-			}
-
-			// create proposal
-			p = new CustomCompletionProposal(proposedText + ">", //$NON-NLS-1$
-						documentPosition, 0, proposedText.length() + 1, XMLEditorPluginImageHelper.getInstance().getImage(imagePath), //$NON-NLS-1$
-						SSEUIPlugin.getResourceString("%15concat", (new Object[]{proposedText})), //$NON-NLS-1$ = "End with '{0}>'"
-						null, null, XMLRelevanceConstants.R_END_TAG);
-		}
-
-		return p;
-	}
-
-
-	/**
-	 * A convenience method for getting the closing proposal given the
-	 * contents (IndexedRegion) of a tag that is started, but possibly not
-	 * ended
-	 * 
-	 * @param viewer
-	 *            the text viewer
-	 * @param documentPosition
-	 *            the cursor position in the viewer
-	 * @param indexedNode
-	 *            the contents of the tag that is started but possibly not
-	 *            ended
-	 * @param parentTagName
-	 *            the tag on which you are checkin for an ending tag
-	 * @param imagePath
-	 *            content assist image path in realation to com.ibm.sed.
-	 *            structured. contentassist. xmlSourceEditorImageHelper
-	 * @return ICompletionProposal
-	 */
-	public static ICompletionProposal computeXMLEndTagProposal(ITextViewer viewer, int documentPosition, IndexedRegion indexedNode, String parentTagName, String imagePath) {
-		ICompletionProposal p = null;
-
-		// check if tag is closed
-		boolean hasEndTag = true;
-		XMLNode xnode = null;
-		String tagName = ""; //$NON-NLS-1$
-		if (indexedNode instanceof XMLNode) {
-			xnode = ((XMLNode) indexedNode);
-			// it's ended already...
-			if (xnode.getEndStructuredDocumentRegion() != null)
-				return null;
-			XMLNode styleNode = null;
-			if (!xnode.getNodeName().equalsIgnoreCase(parentTagName))
-				styleNode = (XMLNode) xnode.getParentNode();
-			if (styleNode != null) {
-				tagName = styleNode.getNodeName();
-				hasEndTag = (styleNode.getEndStructuredDocumentRegion() != null);
-			}
-		}
-
-		// it's closed, don't add close tag proposal
-		if (!hasEndTag) {
-
-			// create appropriate close tag text
-			String proposedText = proposedText = "</" + tagName; // ResourceHandler
-			// wants text
-			// w/out
-			// ending '>'
-			// //$NON-NLS-1$
-			String viewerText = viewer.getTextWidget().getText();
-			if (viewerText.length() >= documentPosition && viewerText.length() >= 2 && documentPosition >= 2) {
-				String last2chars = viewerText.substring(documentPosition - 2, documentPosition);
-				if (last2chars.endsWith("</")) //$NON-NLS-1$
-					proposedText = tagName;
-				else if (last2chars.endsWith("<")) //$NON-NLS-1$
-					proposedText = "/" + tagName; //$NON-NLS-1$
-			}
-
-			// create proposal
-			p = new CustomCompletionProposal(proposedText + ">", //$NON-NLS-1$
-						documentPosition, 0, proposedText.length() + 1, XMLEditorPluginImageHelper.getInstance().getImage(imagePath), //$NON-NLS-1$
-						SSEUIPlugin.getResourceString("%15concat", (new Object[]{proposedText})), //$NON-NLS-1$ = "End with '{0}>'"
-						null, null, XMLRelevanceConstants.R_END_TAG);
-		}
-		return p;
-	}
-
-	private static String getMetaScriptType(Document doc) {
-		// Can not just do a Document.getElementsByTagName(String) as this
-		// needs
-		// to be relatively fast.
-		List metas = new ArrayList();
-		// check for META tags under the Document
-		Node html = null;
-		Node head = null;
-		Node child = null;
-		// ----------------------------------------------------------------------
-		// (pa) 20021217
-		// cmvc defect 235554
-		// performance enhancement: using child.getNextSibling() rather than
-		// nodeList(item) for O(n) vs. O(n*n)
-		// ----------------------------------------------------------------------
-
-		for (child = doc.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (child.getNodeType() != Node.ELEMENT_NODE)
-				continue;
-			if (child.getNodeName().equalsIgnoreCase(META))
-				metas.add(child);
-			else if (child.getNodeName().equalsIgnoreCase(HTML))
-				html = child;
-		}
-		// NodeList children = doc.getChildNodes();
-		// for(int i = 0; i < children.getLength(); i++) {
-		// child = children.item(i);
-		// if(child.getNodeType() != Node.ELEMENT_NODE)
-		// continue;
-		// if(child.getNodeName().equalsIgnoreCase(META))
-		// metas.add(child);
-		// else if(child.getNodeName().equalsIgnoreCase(HTML))
-		// html = child;
-		// }
-
-		// check for META tags under HEAD
-		if (html != null) {
-			for (child = html.getFirstChild(); child != null && head == null; child = child.getNextSibling()) {
-				if (child.getNodeType() != Node.ELEMENT_NODE)
-					continue;
-				if (child.getNodeName().equalsIgnoreCase(HEAD))
-					head = child;
-			}
-			// children = html.getChildNodes();
-			// for(int i = 0; i < children.getLength() && head == null; i++) {
-			// child = children.item(i);
-			// if(child.getNodeType() != Node.ELEMENT_NODE)
-			// continue;
-			// if(child.getNodeName().equalsIgnoreCase(HEAD))
-			// head = child;
-			// }
-		}
-
-		if (head != null) {
-			for (head.getFirstChild(); child != null; child = child.getNextSibling()) {
-				if (child.getNodeType() != Node.ELEMENT_NODE)
-					continue;
-				if (child.getNodeName().equalsIgnoreCase(META))
-					metas.add(child);
-			}
-			// children = head.getChildNodes();
-			// for(int i = 0 ; i < children.getLength(); i++) {
-			// child = children.item(i);
-			// if(child.getNodeType() != Node.ELEMENT_NODE)
-			// continue;
-			// if(child.getNodeName().equalsIgnoreCase(META))
-			// metas.add(child);
-			// }
-		}
-
-		return getMetaScriptType(metas);
-	}
-
-	private static String getMetaScriptType(List metaNodeList) {
-		Node meta = null;
-		NamedNodeMap attributes = null;
-		boolean httpEquiv = false;
-		String contentScriptType = null;
-
-		for (int i = metaNodeList.size() - 1; i >= 0; i--) {
-			meta = (Node) metaNodeList.get(i);
-			attributes = meta.getAttributes();
-			httpEquiv = false;
-			contentScriptType = null;
-			for (int j = 0; j < attributes.getLength(); j++) {
-				if (attributes.item(j).getNodeName().equalsIgnoreCase(HTTP_EQUIV)) {
-					httpEquiv = attributes.item(j).getNodeValue().equalsIgnoreCase(CONTENT_SCRIPT_TYPE);
-				}
-				else if (attributes.item(j).getNodeName().equalsIgnoreCase(CONTENT)) {
-					contentScriptType = attributes.item(j).getNodeValue();
-				}
-			}
-			if (httpEquiv && contentScriptType != null)
-				return contentScriptType;
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the scripting language the scriptNode is in Currently returns
-	 * javascript unless some unknown type or language is specified. Then the
-	 * unknown type/language is returned
-	 * 
-	 * @param scriptNode
-	 */
-	public static String getScriptLanguage(Node scriptNode) {
-		Node attr = null;
-
-		boolean specified = false;
-		// try to find a scripting adapter for 'type'
-		if ((scriptNode == null) || (scriptNode.getAttributes() == null))
-			return null;
-
-		attr = scriptNode.getAttributes().getNamedItem("type");//$NON-NLS-1$
-		if (attr != null) {
-			specified = true;
-			String type = attr.getNodeValue();
-			return lookupScriptType(type);
-		}
-		// now try to find a scripting adapter for 'language' (deprecated by
-		// HTML specifications)
-		attr = scriptNode.getAttributes().getNamedItem("language");//$NON-NLS-1$
-		if (attr != null) {
-			specified = true;
-			String language = attr.getNodeValue();
-			return lookupScriptLanguage(language);
-		}
-		// check if one is specified by a META tag at the root level or inside
-		// of HEAD
-		String type = null;
-		if (!specified)
-			type = getMetaScriptType(scriptNode.getOwnerDocument());
-		if (type != null) {
-			specified = true;
-			return lookupScriptType(type);
-		}
-		// return default
-		if (!specified)
-			return ScriptLanguageKeys.JAVASCRIPT;
-		return null;
-	}
-
-	/**
-	 * Tells you if the flatnode is the %> delimiter
-	 * 
-	 * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-	 * way for expedency. Should be evolved in future to depend on
-	 * "nestedContext".
-	 */
-	public static boolean isJSPCloseDelimiter(IStructuredDocumentRegion fn) {
-		if (fn == null)
-			return false;
-		return isJSPCloseDelimiter(fn.getType());
-	}
-
-	/**
-	 * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-	 * way for expedency. Should be evolved in future to depend on
-	 * "nestedContext".
-	 */
-	public static boolean isJSPCloseDelimiter(String type) {
-		if (type == null)
-			return false;
-		return (type.equals(DOMJSPRegionContextsPrivateCopy.JSP_CLOSE) || type.equals(XMLRegionContext.XML_TAG_CLOSE));
-	}
-
-	/**
-	 * Tells you if the flatnode is the JSP region <%%>, <%=%>, <%!%>
-	 * 
-	 * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-	 * way for expedency. Should be evolved in future to depend on
-	 * "nestedContext".
-	 */
-	public static boolean isJSPDelimiter(IStructuredDocumentRegion fn) {
-		boolean isDelimiter = false;
-		String type = fn.getType();
-		if (type != null) {
-			isDelimiter = isJSPDelimiter(type);
-		}
-		return isDelimiter;
-	}
-
-	/**
-	 * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-	 * way for expedency. Should be evolved in future to depend on
-	 * "nestedContext".
-	 */
-	public static boolean isJSPDelimiter(String type) {
-		if (type == null)
-			return false;
-		return (isJSPOpenDelimiter(type) || isJSPCloseDelimiter(type));
-	}
-
-	/**
-	 * Tells you if the flatnode is <%, <%=, or <%! ISSUE: this is a bit of
-	 * hidden JSP knowledge that was implemented this way for expedency.
-	 * Should be evolved in future to depend on "nestedContext".
-	 */
-	public static boolean isJSPOpenDelimiter(IStructuredDocumentRegion fn) {
-		if (fn == null)
-			return false;
-		return isJSPOpenDelimiter(fn.getType());
-	}
-
-    /**
-	 * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-	 * way for expedency. Should be evolved in future to depend on
-	 * "nestedContext".
-	 */
-	public static boolean isJSPOpenDelimiter(String type) {
-		if (type == null)
-			return false;
-		return (type.equals(DOMJSPRegionContextsPrivateCopy.JSP_SCRIPTLET_OPEN) || type.equals(DOMJSPRegionContextsPrivateCopy.JSP_DECLARATION_OPEN) || type.equals(DOMJSPRegionContextsPrivateCopy.JSP_EXPRESSION_OPEN));
-	}
-
-	/**
-	 * Tells you if the flatnode is the <jsp:scriptlet>, <jsp:expression>, or
-	 * <jsp:declaration>tag
-	 * 
-	 * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-	 * way for expedency. Should be evolved in future to depend on
-	 * "nestedContext".
-	 */
-	public static boolean isXMLJSPDelimiter(IStructuredDocumentRegion fn) {
-		boolean isDelimiter = false;
-		if (fn != null && fn instanceof ITextRegionContainer) {
-			Object[] regions = ((ITextRegionContainer) fn).getRegions().toArray();
-			ITextRegion temp = null;
-			String regionText = ""; //$NON-NLS-1$
-			for (int i = 0; i < regions.length; i++) {
-				temp = (ITextRegion) regions[i];
-				if (temp.getType() == XMLRegionContext.XML_TAG_NAME) {
-					regionText = fn.getText(temp);
-					if (regionText.equalsIgnoreCase("jsp:scriptlet") || regionText.equalsIgnoreCase("jsp:expression") || regionText.equalsIgnoreCase("jsp:declaration")) //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-						isDelimiter = true;
-				}
-			}
-		}
-		return isDelimiter;
-	}
-
-	/**
-	 * Returns "javascript" if language attribute is some form of javascript,
-	 * "java" if language attribute is some form of java. Otherwise, just
-	 * returns type.
-	 * 
-	 * @param language
-	 */
-	public static String lookupScriptLanguage(String language) {
-		for (int i = 0; i < ScriptLanguageKeys.JAVASCRIPT_LANGUAGE_KEYS.length; i++) {
-			if (ScriptLanguageKeys.JAVASCRIPT_LANGUAGE_KEYS[i].equalsIgnoreCase(language))
-				return ScriptLanguageKeys.JAVASCRIPT;
-		}
-		for (int i = 0; i < ScriptLanguageKeys.JAVA_LANGUAGE_KEYS.length; i++) {
-			if (ScriptLanguageKeys.JAVA_LANGUAGE_KEYS[i].equalsIgnoreCase(language))
-				return ScriptLanguageKeys.JAVA;
-		}
-		return language;
-	}
-
-	/**
-	 * Returns "javascript" if type (used in <script type="xxx"> is actually
-	 * javascript type. Otherwise, just returns type
-	 * 
-	 * @param type
-	 */
-	public static String lookupScriptType(String type) {
-		for (int i = 0; i < ScriptLanguageKeys.JAVASCRIPT_MIME_TYPE_KEYS.length; i++)
-			if (ScriptLanguageKeys.JAVASCRIPT_MIME_TYPE_KEYS[i].equalsIgnoreCase(type))
-				return ScriptLanguageKeys.JAVASCRIPT;
-		return type;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentModelGenerator.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentModelGenerator.java
deleted file mode 100644
index 05b4d46..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLContentModelGenerator.java
+++ /dev/null
@@ -1,135 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-
-
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.w3c.dom.Node;
-
-
-public class XMLContentModelGenerator extends AbstractContentModelGenerator {
-
-	/**
-	 * ISSUE: this is a bit of hidden JSP knowledge that was implemented this
-	 * way for expedency. Should be evolved in future to depend on
-	 * "nestedContext".
-	 */
-	private class DOMJSPRegionContextsPrivateCopy {
-		private static final String JSP_DIRECTIVE_OPEN = "JSP_DIRECTIVE_OPEN"; //$NON-NLS-1$
-	}
-
-	/**
-	 * XMLContentModelGenerator constructor comment.
-	 */
-	public XMLContentModelGenerator() {
-		super();
-	}
-
-	public void generateAttribute(CMAttributeDeclaration attrDecl, StringBuffer buffer) {
-		if (attrDecl == null || buffer == null)
-			return;
-		int usage = attrDecl.getUsage();
-		if (usage == CMAttributeDeclaration.REQUIRED) {
-			buffer.append(" "); //$NON-NLS-1$
-			generateRequiredAttribute(null, attrDecl, buffer); // todo pass
-			// ownerNode as
-			// 1st param
-		}
-		return;
-	}
-
-	protected void generateEndTag(String tagName, Node parentNode, CMElementDeclaration elementDecl, StringBuffer buffer) {
-		if (elementDecl == null)
-			return;
-		if (elementDecl.getContentType() != CMElementDeclaration.EMPTY)
-			buffer.append("</" + tagName + ">");//$NON-NLS-2$//$NON-NLS-1$
-		return;
-	}
-
-	public void generateRequiredAttribute(Node ownerNode, CMAttributeDeclaration attrDecl, StringBuffer buffer) {
-		if (attrDecl == null || buffer == null)
-			return;
-
-		// attribute name
-		String attributeName = getRequiredName(ownerNode, attrDecl);
-		CMDataType attrType = attrDecl.getAttrType();
-		// = sign
-		buffer.append(attributeName + "=\""); //$NON-NLS-1$
-		// attribute value
-		if (attrType != null) {
-			// insert any value that is implied
-			if (attrType.getImpliedValueKind() != CMDataType.IMPLIED_VALUE_NONE && attrType.getImpliedValue() != null) {
-				buffer.append(attrType.getImpliedValue());
-			}
-			// otherwise, if an enumerated list of values exists, use the
-			// first value
-			else if (attrType.getEnumeratedValues() != null && attrType.getEnumeratedValues().length > 0) {
-				buffer.append(attrType.getEnumeratedValues()[0]);
-			}
-		}
-		buffer.append("\""); //$NON-NLS-1$
-		return;
-	}
-
-	protected void generateStartTag(String tagName, Node parentNode, CMElementDeclaration elementDecl, StringBuffer buffer) {
-		if (elementDecl == null || buffer == null)
-			return;
-		buffer.append("<" + tagName);//$NON-NLS-1$
-		generateAttributes(elementDecl, buffer);
-		buffer.append(getStartTagClose(parentNode, elementDecl));
-		return;
-	}
-
-	public int getMinimalStartTagLength(Node node, CMElementDeclaration elementDecl) {
-		if (elementDecl == null)
-			return 0;
-		if (requiresAttributes(elementDecl)) {
-			return getRequiredName(node, elementDecl).length() + 2; // < +
-			// name +
-			// space
-		}
-		else {
-			return 1 + getRequiredName(node, elementDecl).length() + getStartTagClose(node, elementDecl).length(); // < +
-			// name
-			// +
-			// appropriate
-			// close
-		}
-	}
-
-	protected String getOtherClose(Node notATagNode) {
-		if (notATagNode instanceof XMLNode) {
-			IStructuredDocumentRegion node = ((XMLNode) notATagNode).getStartStructuredDocumentRegion();
-			if (node != null && node.getNumberOfRegions() > 1 && node.getRegions().get(0).getType().equals(DOMJSPRegionContextsPrivateCopy.JSP_DIRECTIVE_OPEN)) {
-				return "%>"; //$NON-NLS-1$
-			}
-		}
-		return null;
-	}
-
-	public String getStartTagClose(Node parentNode, CMElementDeclaration elementDecl) {
-		String other = getOtherClose(parentNode);
-		if (other != null)
-			return other;
-		if (elementDecl == null)
-			return ">";//$NON-NLS-1$
-		if (elementDecl.getContentType() == CMElementDeclaration.EMPTY)
-			return "/>"; //$NON-NLS-1$
-		return ">"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLRelevanceConstants.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLRelevanceConstants.java
deleted file mode 100644
index 0ac5df3..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLRelevanceConstants.java
+++ /dev/null
@@ -1,51 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import org.eclipse.wst.sse.ui.internal.contentassist.IRelevanceConstants;
-
-
-
-/**
- * some relevance constants for content assist higher relevance means it shows
- * up higher on the list
- */
-public interface XMLRelevanceConstants extends IRelevanceConstants {
-
-	int R_CDATA = 400;
-	int R_CLOSE_TAG = 1500;
-
-	int R_COMMENT = 100;
-
-	// moved this above macros
-	int R_DOCTYPE = 600;
-	int R_END_TAG = 1400;
-	int R_END_TAG_NAME = 1100;
-	int R_ENTITY = 1000;
-	int R_JSP = 500;
-
-	int R_JSP_ATTRIBUTE_VALUE = 700;
-
-	// (pa) make these the same relevance so proposals are same order for V501
-	int R_MACRO = 500;
-
-	// add this onto "required" attrs, elements, etc to bubble them up on
-	// sorting...
-	// CMVC 246618
-	int R_REQUIRED = 10;
-	int R_TAG_INSERTION = 500;
-	int R_TAG_NAME = 1200;
-	int R_XML_ATTRIBUTE_NAME = 900;
-	int R_XML_ATTRIBUTE_VALUE = 800;
-	int R_XML_DECLARATION = 1300;
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLTemplateCompletionProcessor.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLTemplateCompletionProcessor.java
deleted file mode 100644
index 602f20f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/contentassist/XMLTemplateCompletionProcessor.java
+++ /dev/null
@@ -1,80 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.contentassist;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.templates.ContextTypeRegistry;
-import org.eclipse.jface.text.templates.Template;
-import org.eclipse.jface.text.templates.TemplateCompletionProcessor;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.jface.text.templates.TemplateContextType;
-import org.eclipse.jface.text.templates.persistence.TemplateStore;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-
-
-/**
- * Completion processor for XML Templates. Most of the work is already done
- * by the XML Content Assist processor, so by the time the
- * XMLTemplateCompletionProcessor is asked for content assist proposals, the
- * XML content assist processor has already set the context type for
- * templates.
- */
-class XMLTemplateCompletionProcessor extends TemplateCompletionProcessor {
-	private String fContextTypeId = null;
-
-	protected ICompletionProposal createProposal(Template template, TemplateContext context, IRegion region, int relevance) {
-		return new CustomTemplateProposal(template, context, region, getImage(template), relevance);
-	}
-
-	protected TemplateContextType getContextType(ITextViewer viewer, IRegion region) {
-		TemplateContextType type = null;
-
-		ContextTypeRegistry registry = getTemplateContextRegistry();
-		if (registry != null)
-			type = registry.getContextType(fContextTypeId);
-
-		return type;
-	}
-
-	protected Image getImage(Template template) {
-		// just return the same image for now
-		return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TAG_MACRO);
-	}
-
-	private ContextTypeRegistry getTemplateContextRegistry() {
-		return XMLUIPlugin.getDefault().getTemplateContextRegistry();
-	}
-
-	protected Template[] getTemplates(String contextTypeId) {
-		Template templates[] = null;
-
-		TemplateStore store = getTemplateStore();
-		if (store != null)
-			templates = store.getTemplates(contextTypeId);
-
-		return templates;
-	}
-
-	private TemplateStore getTemplateStore() {
-		return XMLUIPlugin.getDefault().getTemplateStore();
-	}
-
-	void setContextType(String contextTypeId) {
-		fContextTypeId = contextTypeId;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditAttributeDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditAttributeDialog.java
deleted file mode 100644
index 8226a4f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditAttributeDialog.java
+++ /dev/null
@@ -1,170 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.util.XMLCommonUIContextIds;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-
-public class EditAttributeDialog extends Dialog implements ModifyListener {
-	protected Attr attribute;
-	protected String attributeName;
-	protected Text attributeNameField;
-	protected String attributeValue;
-	protected Text attributeValueField;
-	protected Label errorMessageLabel;
-	protected Button okButton;
-	protected Element ownerElement;
-
-	public EditAttributeDialog(Shell parentShell, Element ownerElement, Attr attribute) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		this.ownerElement = ownerElement;
-		this.attribute = attribute;
-	}
-
-	protected void buttonPressed(int buttonId) {
-		if (buttonId == IDialogConstants.OK_ID) {
-			attributeName = getModelValue(attributeNameField.getText());
-			attributeValue = attributeValueField.getText();
-		}
-		super.buttonPressed(buttonId);
-	}
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-
-	protected Control createContents(Composite parent) {
-		Control control = super.createContents(parent);
-		attributeNameField.forceFocus();
-		attributeNameField.selectAll();
-		updateErrorMessage();
-		return control;
-	}
-
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-		WorkbenchHelp.setHelp(dialogArea, XMLCommonUIContextIds.XCUI_ATTRIBUTE_DIALOG);
-
-		Composite composite = new Composite(dialogArea, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.marginWidth = 0;
-		composite.setLayout(layout);
-
-		//
-		// Style convenience constants
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-		Label attributeNameLabel = new Label(composite, SWT.NONE);
-		attributeNameLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_NAME_COLON")); //$NON-NLS-1$
-
-		attributeNameField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 300;
-		attributeNameField.setLayoutData(gd);
-		attributeNameField.setText(getDisplayValue(attribute != null ? attribute.getName() : "")); //$NON-NLS-1$
-		attributeNameField.addModifyListener(this);
-
-		Label attributeValueLabel = new Label(composite, SWT.NONE);
-		attributeValueLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_VALUE_COLON")); //$NON-NLS-1$
-
-		String value = attribute != null ? attribute.getValue() : ""; //$NON-NLS-1$
-		int style = SWT.SINGLE | SWT.BORDER;
-		if (value.indexOf("\n") != -1) { //$NON-NLS-1$
-			style = SWT.MULTI | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL;
-		}
-
-		attributeValueField = new Text(composite, style);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 300;
-		attributeValueField.setLayoutData(gd);
-		attributeValueField.setText(getDisplayValue(attribute != null ? attribute.getValue() : "")); //$NON-NLS-1$
-
-		// error message
-		errorMessageLabel = new Label(composite, SWT.WRAP);
-		errorMessageLabel.setText(XMLUIPlugin.getResourceString("%error_message_goes_here")); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 200;
-		gd.heightHint = Math.max(30, errorMessageLabel.computeSize(0, 0, false).y * 2);
-		gd.horizontalSpan = 2;
-		errorMessageLabel.setLayoutData(gd);
-		Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);
-		errorMessageLabel.setForeground(color);
-
-		return dialogArea;
-	}
-
-	public String getAttributeName() {
-		return attributeName;
-	}
-
-	public String getAttributeValue() {
-		return attributeValue;
-	}
-
-	protected String getDisplayValue(String string) {
-		return string != null ? string : ""; //$NON-NLS-1$
-	}
-
-	protected String getModelValue(String string) {
-		String result = null;
-		if (string != null && string.trim().length() > 0) {
-			result = string;
-		}
-		return result;
-	}
-
-	public void modifyText(ModifyEvent e) {
-		updateErrorMessage();
-	}
-
-	protected void updateErrorMessage() {
-		String errorMessage = null;
-		String name = attributeNameField.getText().trim();
-		if (name.length() > 0) {
-			Attr matchingAttribute = ownerElement.getAttributeNode(name);
-			if (matchingAttribute != null && matchingAttribute != attribute) {
-				errorMessage = XMLUIPlugin.getResourceString("%_ERROR_XML_ATTRIBUTE_ALREADY_EXISTS"); //$NON-NLS-1$
-			} else {
-				// TODO get checkName from Model
-				//errorMessage = ValidateHelper.checkXMLName(name);
-			}
-		} else {
-			errorMessage = ""; //$NON-NLS-1$
-		}
-
-		errorMessageLabel.setText(errorMessage != null ? errorMessage : ""); //$NON-NLS-1$
-		errorMessageLabel.getParent().layout();
-		okButton.setEnabled(errorMessage == null);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditDoctypeDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditDoctypeDialog.java
deleted file mode 100644
index 443f85b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditDoctypeDialog.java
+++ /dev/null
@@ -1,237 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.util.XMLCommonUIContextIds;
-import org.w3c.dom.DocumentType;
-
-public class EditDoctypeDialog extends Dialog {
-	protected boolean computeSystemId;
-	protected String[] doctypeData;
-	protected boolean errorChecking;
-	protected Label errorMessageLabel;
-	protected Button okButton;
-	protected Button publicIdBrowseButton;
-	protected Text publicIdField;
-	protected IPath resourceLocation;
-	protected Text rootElementNameField;
-	protected Button systemIdBrowseButton;
-	protected Text systemIdField;
-
-	public EditDoctypeDialog(Shell parentShell, DocumentType doctype) {
-		this(parentShell, doctype.getName(), doctype.getPublicId(), doctype.getSystemId());
-	}
-
-	public EditDoctypeDialog(Shell parentShell, String name, String publicId, String systemId) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		doctypeData = new String[3];
-		doctypeData[0] = name;
-		doctypeData[1] = publicId;
-		doctypeData[2] = systemId;
-	}
-
-	protected void buttonPressed(int buttonId) {
-		doctypeData[0] = getModelValue(rootElementNameField.getText());
-		doctypeData[1] = getModelValue(publicIdField.getText());
-		doctypeData[2] = getModelValue(systemIdField.getText());
-		super.buttonPressed(buttonId);
-	}
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-
-
-	protected Control createContents(Composite parent) {
-		Control control = super.createContents(parent);
-		updateErrorMessage();
-		return control;
-	}
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogControl = (Composite) super.createDialogArea(parent);
-		WorkbenchHelp.setHelp(dialogControl, XMLCommonUIContextIds.XCUI_DOCTYPE_DIALOG);
-
-		Composite composite = new Composite(dialogControl, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 3;
-		layout.marginWidth = 0;
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-
-		ModifyListener modifyListener = new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				if (e.widget == systemIdField) {
-					computeSystemId = false;
-				}
-				updateErrorMessage();
-			}
-		};
-
-		// row 1
-		//
-		Label rootElementNameLabel = new Label(composite, SWT.NONE);
-		rootElementNameLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_ROOT_ELEMENT_NAME_COLON")); //$NON-NLS-1$
-
-		rootElementNameField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		WorkbenchHelp.setHelp(rootElementNameField, XMLCommonUIContextIds.XCUI_DOCTYPE_ROOT);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 200;
-		rootElementNameField.setLayoutData(gd);
-		rootElementNameField.setText(getDisplayValue(doctypeData[0]));
-		rootElementNameField.addModifyListener(modifyListener);
-
-		Label placeHolder = new Label(composite, SWT.NONE);
-		placeHolder.setLayoutData(new GridData());
-
-		// row 2
-		//
-		Label publicIdLabel = new Label(composite, SWT.NONE);
-		publicIdLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_PUBLIC_ID_COLON")); //$NON-NLS-1$
-
-		publicIdField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		WorkbenchHelp.setHelp(publicIdField, XMLCommonUIContextIds.XCUI_DOCTYPE_PUBLIC);
-		publicIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		publicIdField.setText(getDisplayValue(doctypeData[1]));
-
-		SelectionListener selectionListener = new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				EditEntityHelper helper = new EditEntityHelper();
-				if (e.widget == publicIdBrowseButton) {
-					helper.performBrowseForPublicId(getShell(), publicIdField, computeSystemId ? systemIdField : null);
-				} else if (e.widget == systemIdBrowseButton) {
-					helper.performBrowseForSystemId(getShell(), systemIdField, resourceLocation);
-				}
-			}
-		};
-
-		publicIdBrowseButton = new Button(composite, SWT.NONE);
-		WorkbenchHelp.setHelp(publicIdBrowseButton, XMLCommonUIContextIds.XCUI_DOCTYPE_PUBLIC_BROWSE);
-		publicIdBrowseButton.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_BROWSE")); //$NON-NLS-1$
-		publicIdBrowseButton.addSelectionListener(selectionListener);
-
-		// row 3
-		Label systemIdLabel = new Label(composite, SWT.NONE);
-		systemIdLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_SYSTEM_ID_COLON")); //$NON-NLS-1$
-
-		systemIdField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		WorkbenchHelp.setHelp(systemIdField, XMLCommonUIContextIds.XCUI_DOCTYPE_SYSTEM);
-		systemIdField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		systemIdField.setText(getDisplayValue(doctypeData[2]));
-		systemIdField.addModifyListener(modifyListener);
-
-
-		systemIdBrowseButton = new Button(composite, SWT.NONE);
-		WorkbenchHelp.setHelp(systemIdBrowseButton, XMLCommonUIContextIds.XCUI_DOCTYPE_SYSTEM_BROWSE);
-		systemIdBrowseButton.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_BROWSE")); //$NON-NLS-1$
-		systemIdBrowseButton.addSelectionListener(selectionListener);
-
-		// error message
-		errorMessageLabel = new Label(dialogControl, SWT.NONE);
-		errorMessageLabel.setText(""); //$NON-NLS-1$
-		errorMessageLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);
-		errorMessageLabel.setForeground(color);
-
-		return dialogControl;
-	}
-
-
-	protected Label createMessageArea(Composite composite) {
-		Label label = new Label(composite, SWT.NONE);
-		//label.setText(message);
-		return label;
-	}
-
-
-	protected String getDisplayValue(String string) {
-		return string != null ? string : ""; //$NON-NLS-1$
-	}
-
-	public boolean getErrorChecking() {
-		return errorChecking;
-	}
-
-
-	protected String getModelValue(String string) {
-		String result = null;
-		if (string != null && string.trim().length() > 0) {
-			result = string;
-		}
-		return result;
-	}
-
-	public String getName() {
-		return doctypeData[0];
-	}
-
-	public String getPublicId() {
-		return doctypeData[1];
-	}
-
-	public String getSystemId() {
-		return doctypeData[2];
-	}
-
-	public void setComputeSystemId(boolean computeSystemId) {
-		this.computeSystemId = computeSystemId;
-	}
-
-	public void setErrorChecking(boolean errorChecking) {
-		this.errorChecking = errorChecking;
-	}
-
-	public void setResourceLocation(IPath path) {
-		resourceLocation = path;
-	}
-
-	public void updateErrorMessage() {
-		if (errorChecking) {
-			String errorMessage = null;
-			if (getModelValue(systemIdField.getText()) == null) {
-				errorMessage = XMLUIPlugin.getResourceString("%_UI_WARNING_SYSTEM_ID_MUST_BE_SPECIFIED"); //$NON-NLS-1$
-			} else if (getModelValue(rootElementNameField.getText()) == null) {
-				errorMessage = XMLUIPlugin.getResourceString("%_UI_WARNING_ROOT_ELEMENT_MUST_BE_SPECIFIED"); //$NON-NLS-1$
-			}
-
-			errorMessageLabel.setText(errorMessage != null ? errorMessage : ""); //$NON-NLS-1$
-			okButton.setEnabled(errorMessage == null);
-		}
-	}
-}
-
-
-
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditElementDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditElementDialog.java
deleted file mode 100644
index d196e12..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditElementDialog.java
+++ /dev/null
@@ -1,143 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.xml.core.NameValidator;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.util.XMLCommonUIContextIds;
-import org.w3c.dom.Element;
-
-public class EditElementDialog extends Dialog implements ModifyListener {
-	protected Element element;
-	protected String elementName;
-	protected Text elementNameField;
-	protected Label errorMessageLabel;
-	protected Button okButton;
-
-	public EditElementDialog(Shell parentShell, Element element) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		this.element = element;
-	}
-
-	protected void buttonPressed(int buttonId) {
-		if (buttonId == IDialogConstants.OK_ID) {
-			elementName = getModelValue(elementNameField.getText());
-		}
-		super.buttonPressed(buttonId);
-	}
-
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-
-	protected Control createContents(Composite parent) {
-		Control control = super.createContents(parent);
-		elementNameField.forceFocus();
-		elementNameField.selectAll();
-		updateErrorMessage();
-		return control;
-	}
-
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-		WorkbenchHelp.setHelp(dialogArea, XMLCommonUIContextIds.XCUI_ELEMENT_DIALOG);
-
-		Composite composite = new Composite(dialogArea, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.marginWidth = 0;
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-		Label elementNameLabel = new Label(composite, SWT.NONE);
-		elementNameLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_ELEMENT_NAME")); //$NON-NLS-1$
-
-		elementNameField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 200;
-		elementNameField.setLayoutData(gd);
-		elementNameField.setText(getDisplayValue(element != null ? element.getNodeName() : "")); //$NON-NLS-1$
-		elementNameField.addModifyListener(this);
-
-		// error message
-		errorMessageLabel = new Label(composite, SWT.NONE);
-		errorMessageLabel.setText(XMLUIPlugin.getResourceString("%error_message_goes_here")); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		errorMessageLabel.setLayoutData(gd);
-		Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);
-		errorMessageLabel.setForeground(color);
-
-		return dialogArea;
-	}
-
-	protected String getDisplayValue(String string) {
-		return string != null ? string : ""; //$NON-NLS-1$
-	}
-
-	public String getElementName() {
-		return elementName;
-	}
-
-	protected String getModelValue(String string) {
-		String result = null;
-		if (string != null && string.trim().length() > 0) {
-			result = string;
-		}
-		return result;
-	}
-
-	public void modifyText(ModifyEvent e) {
-		updateErrorMessage();
-	}
-
-	protected void updateErrorMessage() {
-		String errorMessage = null;
-		String name = elementNameField.getText();
-		//		String name = elementNameField.getText().trim();
-		if (name.length() > 0) {
-			// TODO use checkName from model level
-			//errorMessage = ValidateHelper.checkXMLName(name);
-			if (!NameValidator.isValid(name)) {
-				errorMessage = XMLUIPlugin.getResourceString("%_UI_INVALID_NAME");
-			}
-		} else {
-			errorMessage = ""; //$NON-NLS-1$
-		}
-
-		errorMessageLabel.setText(errorMessage != null ? errorMessage : ""); //$NON-NLS-1$
-		okButton.setEnabled(errorMessage == null);
-	}
-}
-
-
-
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditEntityHelper.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditEntityHelper.java
deleted file mode 100644
index 8b05e24..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditEntityHelper.java
+++ /dev/null
@@ -1,71 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogEntry;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-public class EditEntityHelper {
-
-	public void performBrowseForPublicId(Shell parentShell, Text publicIdField) {
-		performBrowseForPublicId(parentShell, publicIdField, null);
-	}
-
-	public void performBrowseForPublicId(Shell parentShell, Text publicIdField, Text systemIdField) {
-		String[] extensions = {"dtd", "txt"}; //$NON-NLS-1$ //$NON-NLS-2$
-		SelectXMLCatalogIdDialog dialog = new SelectXMLCatalogIdDialog(parentShell, extensions);
-		dialog.create();
-		dialog.getShell().setText(XMLUIPlugin.getResourceString("%_UI_LABEL_SELECT_XML_CATALOG_ENTRY")); //$NON-NLS-1$
-		dialog.setBlockOnOpen(true);
-		dialog.open();
-		if (dialog.getReturnCode() == Window.OK) {
-			String id = dialog.getId();
-			if (id != null) {
-				publicIdField.setText(id);
-				if (systemIdField != null && dialog.getSystemId() != null) {
-					systemIdField.setText(dialog.getSystemId());
-				}
-			}
-		}
-	}
-
-	public void performBrowseForSystemId(Shell parentShell, Text systemIdField, IPath resourceLocation) {
-		String[] extensions = {"dtd"}; //$NON-NLS-1$
-		SelectFileOrXMLCatalogIdDialog dialog = new SelectFileOrXMLCatalogIdDialog(parentShell, extensions, XMLCatalogEntry.SYSTEM);
-		dialog.create();
-		dialog.getShell().setText(XMLUIPlugin.getResourceString("%_UI_LABEL_SPECIFY_SYSTEM_ID")); //$NON-NLS-1$
-		dialog.setBlockOnOpen(true);
-		dialog.open();
-		if (dialog.getReturnCode() == Window.OK) {
-			String id = dialog.getId();
-			IFile file = dialog.getFile();
-			if (id != null) {
-				systemIdField.setText(id);
-			} else if (file != null) {
-				String uri = null;
-				if (resourceLocation != null) {
-					uri = URIHelper.getRelativeURI(file.getLocation(), resourceLocation);
-				} else {
-					uri = file.getLocation().toOSString();
-				}
-				systemIdField.setText(uri);
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditNamespaceInfoDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditNamespaceInfoDialog.java
deleted file mode 100644
index 451b3bb..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditNamespaceInfoDialog.java
+++ /dev/null
@@ -1,250 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.ContentModelManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.eclipse.wst.xml.uriresolver.util.IdResolverImpl;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-public class EditNamespaceInfoDialog extends Dialog {
-
-	public static EditNamespaceInfoDialog invokeDialog(Shell shell, String title, NamespaceInfo info, IPath resourceLocation) {
-		EditNamespaceInfoDialog dialog = new EditNamespaceInfoDialog(shell, info);
-		dialog.create();
-		dialog.getShell().setText(title);
-		dialog.setBlockOnOpen(true);
-		dialog.setResourceLocation(resourceLocation);
-		dialog.open();
-		return dialog;
-	}
-
-	protected Button browseButton;
-	protected String errorMessage;
-
-	protected Label errorMessageLabel;
-	protected NamespaceInfo info;
-	protected Text locationHintField;
-
-	protected Button okButton;
-	protected Text prefixField;
-	protected IPath resourceLocation;
-	protected Text uriField;
-
-	public EditNamespaceInfoDialog(Shell parentShell, NamespaceInfo info) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		this.info = info;
-	}
-
-	protected void buttonPressed(int buttonId) {
-		if (buttonId == IDialogConstants.OK_ID) {
-			info.uri = uriField.getText();
-			info.prefix = prefixField.getText();
-			info.locationHint = locationHintField.getText();
-		}
-		super.buttonPressed(buttonId);
-	}
-
-	protected void computeErrorMessage() {
-		errorMessage = null;
-	}
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		okButton.setEnabled(false);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-		updateWidgets();
-	}
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-		//TODO... SSE port
-		//WorkbenchHelp.setHelp(dialogArea,
-		// XMLCommonUIContextIds.XCUI_NAMESPACE_DIALOG);
-
-		Composite composite = new Composite(dialogArea, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 3;
-		layout.marginWidth = 0;
-		composite.setLayout(layout);
-
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 350;
-		composite.setLayoutData(gd);
-
-		ModifyListener modifyListener = new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				updateWidgets();
-			}
-		};
-
-
-		// row 1
-		//
-		Label uriLabel = new Label(composite, SWT.NONE);
-		uriLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_NAMESPACE_NAME_COLON")); //$NON-NLS-1$
-
-		uriField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.grabExcessHorizontalSpace = true;
-		uriField.setLayoutData(gd);
-		uriField.setText(getDisplayValue(info.uri));
-		uriField.addModifyListener(modifyListener);
-		uriField.setEnabled(info.getProperty("uri-readOnly") == null); //$NON-NLS-1$
-
-		Label placeHolder1 = new Label(composite, SWT.NONE);
-
-		// row 2
-		//
-		Label prefixLabel = new Label(composite, SWT.NONE);
-		prefixLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_PREFIX_COLON")); //$NON-NLS-1$
-
-		prefixField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.grabExcessHorizontalSpace = true;
-		prefixField.setLayoutData(gd);
-		prefixField.setText(getDisplayValue(info.prefix));
-		prefixField.addModifyListener(modifyListener);
-		prefixField.setEnabled(info.getProperty("prefix-readOnly") == null); //$NON-NLS-1$
-		Label placeHolder2 = new Label(composite, SWT.NONE);
-
-		// row 3
-		//
-		Label locationHintLabel = new Label(composite, SWT.NONE);
-		locationHintLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_LOCATION_HINT_COLON")); //$NON-NLS-1$
-
-		locationHintField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.grabExcessHorizontalSpace = true;
-		locationHintField.setLayoutData(gd);
-		locationHintField.setText(getDisplayValue(info.locationHint));
-		locationHintField.addModifyListener(modifyListener);
-		locationHintField.setEnabled(info.getProperty("locationHint-readOnly") == null); //$NON-NLS-1$
-
-		SelectionListener selectionListener = new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				performBrowse();
-			}
-		};
-
-		browseButton = new Button(composite, SWT.NONE);
-		browseButton.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_BROWSE")); //$NON-NLS-1$
-		browseButton.addSelectionListener(selectionListener);
-		browseButton.setEnabled(locationHintField.getEnabled());
-
-		// error message
-		errorMessageLabel = new Label(dialogArea, SWT.NONE);
-		errorMessageLabel.setText(XMLUIPlugin.getResourceString("%error_message_goes_here")); //$NON-NLS-1$
-		errorMessageLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);
-		errorMessageLabel.setForeground(color);
-
-		return dialogArea;
-	}
-
-	protected String getDisplayValue(String string) {
-		return string != null ? string : ""; //$NON-NLS-1$
-	}
-
-	protected void performBrowse() {
-		String[] extensions = {".xsd"}; //$NON-NLS-1$
-		SelectFileOrXMLCatalogIdDialog dialog = new SelectFileOrXMLCatalogIdDialog(getShell(), extensions);
-		dialog.create();
-		dialog.getShell().setText(XMLUIPlugin.getResourceString("%_UI_LABEL_SELECT_FILE")); //$NON-NLS-1$
-		dialog.setBlockOnOpen(true);
-		dialog.open();
-
-		if (dialog.getReturnCode() == Window.OK) {
-			String grammarURI = null;
-			IFile file = dialog.getFile();
-			String id = dialog.getId();
-			if (file != null) {
-				String uri = null;
-				if (resourceLocation != null) {
-					uri = URIHelper.getRelativeURI(file.getLocation(), resourceLocation);
-					grammarURI = file.getLocation().toOSString();
-				} else {
-					uri = file.getLocation().toOSString();
-					grammarURI = uri;
-				}
-				locationHintField.setText(uri);
-			} else if (id != null) {
-				locationHintField.setText(id);
-				IdResolver resolver = new IdResolverImpl(null);
-				grammarURI = resolver.resolveId(id, id);
-			}
-
-			try {
-				CMDocument document = ContentModelManager.getInstance().createCMDocument(grammarURI, "xsd"); //$NON-NLS-1$
-				List namespaceInfoList = (List) document.getProperty("http://org.eclipse.wst/cm/properties/namespaceInfo"); //$NON-NLS-1$
-				NamespaceInfo info = (NamespaceInfo) namespaceInfoList.get(0);
-				if (uriField.getText().trim().length() == 0 && info.uri != null) {
-					uriField.setText(info.uri);
-				}
-				if (prefixField.getText().trim().length() == 0 && info.prefix != null) {
-					prefixField.setText(info.prefix);
-				}
-			} catch (Exception e) {
-			}
-		}
-	}
-
-	public void setResourceLocation(IPath path) {
-		resourceLocation = path;
-	}
-
-	protected void updateErrorMessageLabel() {
-		errorMessageLabel.setText(errorMessage != null ? errorMessage : ""); //$NON-NLS-1$
-	}
-
-	protected void updateOKButtonState() {
-		if (okButton != null) {
-			if (uriField.getText().trim().length() == 0 && prefixField.getText().trim().length() == 0 && locationHintField.getText().trim().length() == 0)
-				okButton.setEnabled(false);
-			else
-				okButton.setEnabled(errorMessage == null);
-		}
-	}
-
-	protected void updateWidgets() {
-		computeErrorMessage();
-		updateErrorMessageLabel();
-		updateOKButtonState();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditProcessingInstructionDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditProcessingInstructionDialog.java
deleted file mode 100644
index cda35f9..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditProcessingInstructionDialog.java
+++ /dev/null
@@ -1,120 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.util.XMLCommonUIContextIds;
-import org.w3c.dom.ProcessingInstruction;
-
-public class EditProcessingInstructionDialog extends Dialog {
-	protected String data;
-	protected Text dataField;
-	protected String target;
-	protected Text targetField;
-
-	public EditProcessingInstructionDialog(Shell parentShell, ProcessingInstruction pi) {
-		this(parentShell, pi.getTarget(), pi.getData());
-	}
-
-	public EditProcessingInstructionDialog(Shell parentShell, String target, String data) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		this.target = target;
-		this.data = data;
-	}
-
-	protected void buttonPressed(int buttonId) {
-		target = getModelValue(targetField.getText());
-		data = getModelValue(dataField.getText());
-		super.buttonPressed(buttonId);
-	}
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		Button okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-		WorkbenchHelp.setHelp(dialogArea, XMLCommonUIContextIds.XCUI_PROCESSING_DIALOG);
-
-		Composite composite = new Composite(dialogArea, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.marginWidth = 0;
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 250;
-
-		Label targetLabel = new Label(composite, SWT.NONE);
-		targetLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_TARGET_COLON")); //$NON-NLS-1$
-
-		targetField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		targetField.setLayoutData(gd);
-		targetField.setText(getDisplayValue(target));
-
-		Label dataLabel = new Label(composite, SWT.NONE);
-		dataLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_DATA_COLON")); //$NON-NLS-1$
-
-		dataField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-		dataField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		dataField.setText(getDisplayValue(data));
-
-		return dialogArea;
-	}
-
-	protected Label createMessageArea(Composite composite) {
-		Label label = new Label(composite, SWT.NONE);
-		//label.setText(message);
-		return label;
-	}
-
-	public String getData() {
-		return data;
-	}
-
-	protected String getDisplayValue(String string) {
-		return string != null ? string : ""; //$NON-NLS-1$
-	}
-
-	protected String getModelValue(String string) {
-		String result = null;
-		if (string != null && string.trim().length() > 0) {
-			result = string;
-		}
-		return result;
-	}
-
-
-	public String getTarget() {
-		return target;
-	}
-}
-
-
-
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditSchemaInfoDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditSchemaInfoDialog.java
deleted file mode 100644
index 8f6096e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/EditSchemaInfoDialog.java
+++ /dev/null
@@ -1,77 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.nsedit.CommonEditNamespacesDialog;
-
-public class EditSchemaInfoDialog extends Dialog implements UpdateListener {
-	//  protected NamespaceInfoTable namespaceInfoTable;
-	protected Label errorMessageLabel;
-	protected List namespaceInfoList;
-	protected IPath resourceLocation;
-
-	public EditSchemaInfoDialog(Shell parentShell, IPath resourceLocation) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		this.resourceLocation = resourceLocation;
-	}
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		Button okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-		CommonEditNamespacesDialog editNamespacesControl = new CommonEditNamespacesDialog(dialogArea, resourceLocation, XMLUIPlugin.getResourceString("%_UI_NAMESPACE_DECLARATIONS"), false, true); //$NON-NLS-1$
-		editNamespacesControl.setNamespaceInfoList(namespaceInfoList);
-
-		editNamespacesControl.updateErrorMessage(namespaceInfoList);
-
-		return dialogArea;
-	}
-
-	protected Control getDialogArea(Composite parent) {
-		return super.createDialogArea(parent);
-	}
-
-	public List getNamespaceInfoList() {
-		return namespaceInfoList;
-	}
-
-	public void setNamespaceInfoList(List list) {
-		namespaceInfoList = list;
-	}
-
-	public void updateErrorMessage(List namespaceInfoList) {
-		NamespaceInfoErrorHelper helper = new NamespaceInfoErrorHelper();
-		String errorMessage = helper.computeErrorMessage(namespaceInfoList, null);
-		errorMessageLabel.setText(errorMessage != null ? errorMessage : ""); //$NON-NLS-1$
-	}
-
-	public void updateOccured(Object object, Object arg) {
-		updateErrorMessage((List) arg);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/NamespaceInfoErrorHelper.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/NamespaceInfoErrorHelper.java
deleted file mode 100644
index 08cfb29..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/NamespaceInfoErrorHelper.java
+++ /dev/null
@@ -1,99 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceInfoManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-public class NamespaceInfoErrorHelper {
-
-	protected List errorList;
-
-	public NamespaceInfoErrorHelper() {
-	}
-
-	public String computeErrorMessage(List namespaceInfoList, IdResolver idResolver) {
-		String result = null;
-		Hashtable prefixTable = new Hashtable();
-		Hashtable uriTable = new Hashtable();
-		for (Iterator iterator = namespaceInfoList.iterator(); iterator.hasNext();) {
-			NamespaceInfo nsInfo = (NamespaceInfo) iterator.next();
-			nsInfo.normalize();
-
-			String urikey = nsInfo.uri != null ? nsInfo.uri : ""; //$NON-NLS-1$
-			NamespaceInfo nsInfo2 = null;
-			if ((nsInfo2 = (NamespaceInfo) uriTable.get(urikey)) != null) {
-				if (nsInfo.uri != null && nsInfo.uri.equals(nsInfo2.uri)) {
-					result = XMLUIPlugin.getResourceString("%_UI_WARNING_MORE_THAN_ONE_NS_WITH_NAME") + "'" + nsInfo.uri + "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				} else {
-					result = XMLUIPlugin.getResourceString("%_UI_WARNING_MORE_THAN_ONE_NS_WITHOUT_NAME"); //$NON-NLS-1$
-				}
-				break;
-			} else {
-				uriTable.put(urikey, nsInfo);
-			}
-
-			if (nsInfo.uri != null) {
-				String key = nsInfo.prefix != null ? nsInfo.prefix : ""; //$NON-NLS-1$
-				if (prefixTable.get(key) != null) {
-					if (nsInfo.prefix != null) {
-						result = XMLUIPlugin.getResourceString("%_UI_WARNING_MORE_THAN_ONE_NS_WITH_PREFIX") + "'" + nsInfo.prefix + "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-						break;
-					} else {
-						result = XMLUIPlugin.getResourceString("%_UI_WARNING_MORE_THAN_ONE_NS_WITHOUT_PREFIX"); //$NON-NLS-1$
-						break;
-					}
-				} else {
-					prefixTable.put(key, nsInfo);
-				}
-
-				if (nsInfo.locationHint != null && idResolver != null) {
-					String grammarURI = idResolver.resolveId(nsInfo.locationHint, nsInfo.locationHint);
-					if (!URIHelper.isReadableURI(grammarURI, false)) {
-						result = XMLUIPlugin.getResourceString("%_UI_WARNING_SCHEMA_CAN_NOT_BE_LOCATED") + " '" + nsInfo.locationHint + "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-						break;
-					}
-				}
-				if (idResolver != null && nsInfo.locationHint == null && !nsInfo.uri.equals(DOMNamespaceInfoManager.XSI_URI)) {
-					result = XMLUIPlugin.getResourceString("%_UI_WARNING_LOCATION_HINT_NOT_SPECIFIED") + " '" + nsInfo.uri + "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				}
-			} else {
-				if (nsInfo.prefix != null) {
-					result = XMLUIPlugin.getResourceString("%_UI_WARNING_NAMESPACE_NAME_NOT_SPECIFIED") + " '" + nsInfo.prefix + "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				}
-			}
-		}
-		// additional tests
-		if (result == null) {
-			for (Iterator iterator = namespaceInfoList.iterator(); iterator.hasNext();) {
-				NamespaceInfo nsInfo = (NamespaceInfo) iterator.next();
-				nsInfo.normalize();
-				if (nsInfo.uri != null && nsInfo.isPrefixRequired && nsInfo.prefix == null) {
-					result = XMLUIPlugin.getResourceString("%_UI_WARNING_PREFIX_NOT_SPECIFIED") + " '" + nsInfo.uri + "'"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				}
-			}
-		}
-
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/NamespaceInfoTable.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/NamespaceInfoTable.java
deleted file mode 100644
index f7b53af..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/NamespaceInfoTable.java
+++ /dev/null
@@ -1,390 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.TextCellEditor;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-public class NamespaceInfoTable extends Composite {
-
-	/**
-	 * NamespaceInfoTableLabelProvider
-	 */
-	protected class NamespaceInfoTableLabelProvider implements ITableLabelProvider, IStructuredContentProvider {
-
-		public void addListener(ILabelProviderListener listener) {
-		}
-
-		public void dispose() {
-		}
-
-		public Image getColumnImage(Object object, int columnIndex) {
-			return null;
-		}
-
-		public String getColumnText(Object object, int column) {
-			NamespaceInfo info = (NamespaceInfo) object;
-			String result = null;
-			switch (column) {
-				case 0 : {
-					result = info.uri;
-					break;
-				}
-				case 1 : {
-					result = info.prefix;
-					break;
-				}
-				case 2 : {
-					result = info.locationHint;
-					break;
-				}
-			}
-			result = result != null ? result : ""; //$NON-NLS-1$
-			if (result.equals("")) { //$NON-NLS-1$
-				switch (column) {
-					case 0 : {
-						result = XMLUIPlugin.getResourceString("%_UI_NO_NAMESPACE_NAME"); //$NON-NLS-1$
-						break;
-					}
-					case 1 : {
-						result = XMLUIPlugin.getResourceString("%_UI_NO_PREFIX"); //$NON-NLS-1$
-						break;
-					}
-				}
-			}
-			return result;
-		}
-
-		 String getDefaultPrefix() {
-			String defaultPrefix = "p"; //$NON-NLS-1$
-			if (namespaceInfoList == null)
-				return defaultPrefix;
-			Vector v = new Vector();
-			for (int i = 0; i < namespaceInfoList.size(); i++) {
-				NamespaceInfo nsinfo = (NamespaceInfo) namespaceInfoList.get(i);
-				if (nsinfo.prefix != null)
-					v.addElement(nsinfo.prefix);
-			}
-			if (v.contains(defaultPrefix)) {
-				String s = defaultPrefix;
-				for (int j = 0; v.contains(s); j++) {
-					s = defaultPrefix + Integer.toString(j);
-				}
-				return s;
-			} else
-				return defaultPrefix;
-		}
-
-		public Object[] getElements(Object inputElement) {
-			return namespaceInfoList.toArray();
-		}
-
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-
-		public boolean isDeleted(Object element) {
-			return false;
-		}
-
-		public boolean isLabelProperty(Object object, Object property) {
-			return false;
-		}
-
-		public boolean isLabelProperty(Object element, String property) {
-			return false;
-		}
-
-		public void removeListener(ILabelProviderListener listener) {
-		}
-	}
-
-	protected static final String LOCATION_HINT = XMLUIPlugin.getResourceString("%_UI_LABEL_LOCATION_HINT"); //$NON-NLS-1$
-	protected static final String NAMESPACE_URI = XMLUIPlugin.getResourceString("%_UI_LABEL_NAMESPACE_NAME"); //$NON-NLS-1$
-	protected static final String PREFIX = XMLUIPlugin.getResourceString("%_UI_LABEL_PREFIX"); //$NON-NLS-1$
-	protected Button deleteButton;
-	protected boolean dummyRowsRemoved = false;
-	protected Button editButton;
-	protected List namespaceInfoList = new Vector();
-	protected Button newButton;
-	protected NamespaceInfoTableLabelProvider provider;
-	protected IPath resourceLocation;
-	protected TableViewer tableViewer;
-	protected UpdateListener updateListener;
-	protected int visibleRows = -1;
-
-	public NamespaceInfoTable(Composite parent) {
-		this(parent, -1, -1, -1);
-	}
-
-	public NamespaceInfoTable(Composite parent, int visibleRows) {
-		this(parent, -1, -1, visibleRows);
-	}
-
-	public NamespaceInfoTable(Composite parent, int widthHint, int heightHint) {
-		this(parent, widthHint, heightHint, -1);
-	}
-
-	public NamespaceInfoTable(Composite parent, int widthHint, int heightHint, int visibleRows) {
-		super(parent, SWT.NONE);
-		setLayout(createGridLayout());
-		setLayoutData(new GridData(GridData.FILL_BOTH));
-		Group namespaceInfoGroup = new Group(this, SWT.NONE);
-		namespaceInfoGroup.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_XML_SCHEMA_INFORMATION")); //$NON-NLS-1$
-		namespaceInfoGroup.setLayout(new GridLayout());
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		if (widthHint != -1) {
-			gd.widthHint = widthHint;
-		}
-		if (heightHint != -1) {
-			gd.heightHint = heightHint;
-		}
-		namespaceInfoGroup.setLayoutData(gd);
-		//WorkbenchHelp.setHelp(namespaceInfoGroup, new
-		// ControlContextComputer(namespaceInfoGroup,
-		// XMLBuilderContextIds.XMLC_NAMESPACE_GROUP));
-		String[] titleArray = {NAMESPACE_URI, PREFIX, LOCATION_HINT};
-		tableViewer = new TableViewer(namespaceInfoGroup, SWT.FULL_SELECTION);
-		provider = new NamespaceInfoTableLabelProvider();
-		tableViewer.setContentProvider(provider);
-		tableViewer.setLabelProvider(provider);
-		tableViewer.setColumnProperties(titleArray);
-		Table table = tableViewer.getTable();
-		table.setHeaderVisible(true);
-		table.setLayoutData(new GridData(GridData.FILL_BOTH));
-		int[] widthArray = {50, 20, 30};
-		TableLayout layout = new TableLayout();
-		for (int i = 0; i < titleArray.length; i++) {
-			TableColumn column = new TableColumn(table, i);
-			column.setText(titleArray[i]);
-			column.setAlignment(SWT.LEFT);
-			layout.addColumnData(new ColumnWeightData(widthArray[i], true));
-		}
-		this.visibleRows = visibleRows;
-		for (int i = 0; i < visibleRows; i++) {
-			TableItem item = new TableItem(table, SWT.NONE);
-			item.setText("#######"); //$NON-NLS-1$
-		}
-		table.setLayout(layout);
-		CellEditor[] cellEditors = new CellEditor[titleArray.length];
-		cellEditors[1] = new TextCellEditor(table);
-		cellEditors[2] = new TextCellEditor(table);
-		tableViewer.setCellEditors(cellEditors);
-		MouseAdapter mouseAdapter = new MouseAdapter() {
-			public void mouseDoubleClick(MouseEvent e) {
-				if (tableViewer.getTable().getItem(new Point(e.x, e.y)) != null) {
-					performEdit();
-				}
-			}
-		};
-		table.addMouseListener(mouseAdapter);
-		createButtons(namespaceInfoGroup);
-		ISelectionChangedListener selectionChangedListener = new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				updateButtonEnabledState();
-			}
-		};
-		tableViewer.addSelectionChangedListener(selectionChangedListener);
-	}
-
-	protected void createButtons(Composite parent) {
-		Composite composite = new Composite(parent, SWT.NONE);
-		composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		GridLayout gridLayout = new GridLayout();
-		gridLayout.numColumns = 2;
-		gridLayout.marginHeight = 0;
-		gridLayout.marginWidth = 0;
-		composite.setLayout(gridLayout);
-		Button hiddenButton = new Button(composite, SWT.NONE);
-		hiddenButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		hiddenButton.setVisible(false);
-		hiddenButton.setEnabled(false);
-		SelectionListener selectionListener = new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				if (e.widget == newButton) {
-					performNew();
-				} else if (e.widget == editButton) {
-					performEdit();
-				} else if (e.widget == deleteButton) {
-					performDelete();
-				}
-			}
-		};
-		// create a composite to hold the three buttons
-		Composite buttonComposite = new Composite(composite, SWT.NONE);
-		buttonComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		GridLayout buttonGridLayout = new GridLayout();
-		buttonGridLayout.numColumns = 3;
-		buttonGridLayout.makeColumnsEqualWidth = true;
-		buttonComposite.setLayout(buttonGridLayout);
-		// add the New button
-		//
-		newButton = new Button(buttonComposite, SWT.NONE);
-		newButton.setText(XMLUIPlugin.getResourceString("%_UI_BUTTON_NEW")); //$NON-NLS-1$
-		newButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		newButton.addSelectionListener(selectionListener);
-		// add the Edit button
-		//
-		editButton = new Button(buttonComposite, SWT.NONE);
-		editButton.setText(XMLUIPlugin.getResourceString("%_UI_BUTTON_EDIT")); //$NON-NLS-1$
-		editButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		editButton.addSelectionListener(selectionListener);
-		// add the Delete button
-		//
-		deleteButton = new Button(buttonComposite, SWT.NONE);
-		deleteButton.setText(XMLUIPlugin.getResourceString("%_UI_BUTTON_DELETE")); //$NON-NLS-1$
-		deleteButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		deleteButton.addSelectionListener(selectionListener);
-	}
-
-	public GridLayout createGridLayout() {
-		GridLayout gridLayout = new GridLayout();
-		gridLayout.marginWidth = 0;
-		gridLayout.horizontalSpacing = 0;
-		return gridLayout;
-	}
-
-	public List getNamespaceInfoList() {
-		return namespaceInfoList;
-	}
-
-	protected NamespaceInfo getTargetNamespaceInfo() {
-		return (namespaceInfoList != null && namespaceInfoList.size() > 0) ? (NamespaceInfo) namespaceInfoList.get(0) : null;
-	}
-
-	protected EditNamespaceInfoDialog invokeDialog(String title, NamespaceInfo info) {
-		Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-		EditNamespaceInfoDialog dialog = new EditNamespaceInfoDialog(shell, info);
-		dialog.create();
-		dialog.getShell().setText(title);
-		dialog.setBlockOnOpen(true);
-		dialog.setResourceLocation(resourceLocation);
-		dialog.open();
-		return dialog;
-	}
-
-	protected void performDelayedUpdate() {
-		Runnable delayedUpdate = new Runnable() {
-			public void run() {
-				update();
-			}
-		};
-		getDisplay().asyncExec(delayedUpdate);
-		if (updateListener != null) {
-			updateListener.updateOccured(this, namespaceInfoList);
-		}
-	}
-
-	public void performDelete() {
-		ISelection selection = tableViewer.getSelection();
-		Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;
-		if (selectedObject != null) {
-			namespaceInfoList.remove(selectedObject);
-			performDelayedUpdate();
-		}
-	}
-
-	public void performEdit() {
-		ISelection selection = tableViewer.getSelection();
-		Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;
-		if (selectedObject instanceof NamespaceInfo) {
-			EditNamespaceInfoDialog dialog = invokeDialog(XMLUIPlugin.getResourceString("%_UI_LABEL_NEW_NAMESPACE_INFORMATION"), (NamespaceInfo) selectedObject); //$NON-NLS-1$
-			performDelayedUpdate();
-		}
-	}
-
-	public void performNew() {
-		NamespaceInfo info = new NamespaceInfo();
-		EditNamespaceInfoDialog dialog = invokeDialog(XMLUIPlugin.getResourceString("%_UI_LABEL_NEW_NAMESPACE_INFORMATION"), info); //$NON-NLS-1$
-		if (dialog.getReturnCode() == Window.OK) {
-			namespaceInfoList.add(info);
-			performDelayedUpdate();
-		}
-	}
-
-	public void setNamespaceInfoList(List namespaceInfoList) {
-		this.namespaceInfoList = namespaceInfoList;
-		update();
-	}
-
-	public void setResourceLocation(IPath resourceLocation) {
-		this.resourceLocation = resourceLocation;
-	}
-
-	public void setUpdateListener(UpdateListener updateListener) {
-		this.updateListener = updateListener;
-	}
-
-	public void update() {
-		updateHelper(namespaceInfoList);
-	}
-
-	public void updateButtonEnabledState() {
-		ISelection selection = tableViewer.getSelection();
-		Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;
-		NamespaceInfo info = (NamespaceInfo) selectedObject;
-		editButton.setEnabled(info != null);
-		deleteButton.setEnabled(info != null && info.getProperty("unremovable") == null); //$NON-NLS-1$
-	}
-
-	public void updateHelper(List namespaceInfoList) {
-		if (visibleRows != -1 && !dummyRowsRemoved) {
-			dummyRowsRemoved = true;
-			tableViewer.getTable().removeAll();
-		}
-		ISelection selection = tableViewer.getSelection();
-		tableViewer.setInput(namespaceInfoList);
-		if (selection.isEmpty()) {
-			if (namespaceInfoList.size() > 0) {
-				tableViewer.setSelection(new StructuredSelection(namespaceInfoList.get(0)));
-			}
-		} else {
-			tableViewer.setSelection(selection);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectFileOrXMLCatalogIdDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectFileOrXMLCatalogIdDialog.java
deleted file mode 100644
index 4c8397c..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectFileOrXMLCatalogIdDialog.java
+++ /dev/null
@@ -1,87 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-
-
-public class SelectFileOrXMLCatalogIdDialog extends Dialog {
-	protected int catalogEntryType;
-	protected String[] extensions;
-	protected IFile file;
-	protected String id;
-	protected Button okButton;
-	protected SelectFileOrXMLCatalogIdPanel panel;
-
-	public SelectFileOrXMLCatalogIdDialog(Shell parentShell, String[] extensions) {
-		this(parentShell, extensions, 0);
-	}
-
-	public SelectFileOrXMLCatalogIdDialog(Shell parentShell, String[] extensions, int catalogEntryType) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		this.extensions = extensions;
-		this.catalogEntryType = catalogEntryType;
-	}
-
-
-	protected void buttonPressed(int buttonId) {
-		if (buttonId == IDialogConstants.OK_ID) {
-			file = panel.getFile();
-			id = panel.getXMLCatalogId();
-		}
-		super.buttonPressed(buttonId);
-	}
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		okButton.setEnabled(false);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-
-		panel = new SelectFileOrXMLCatalogIdPanel(dialogArea);
-		panel.setCatalogEntryType(catalogEntryType);
-		panel.setFilterExtensions(extensions);
-		panel.setVisibleHelper(true);
-		SelectFileOrXMLCatalogIdPanel.Listener listener = new SelectFileOrXMLCatalogIdPanel.Listener() {
-			public void completionStateChanged() {
-				updateButtonState();
-			}
-		};
-		panel.setListener(listener);
-
-		return dialogArea;
-	}
-
-	public IFile getFile() {
-		return file;
-	}
-
-	public String getId() {
-		return id;
-	}
-
-	protected void updateButtonState() {
-		okButton.setEnabled(panel.getFile() != null || panel.getXMLCatalogId() != null);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectFileOrXMLCatalogIdPanel.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectFileOrXMLCatalogIdPanel.java
deleted file mode 100644
index ff786ab..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectFileOrXMLCatalogIdPanel.java
+++ /dev/null
@@ -1,179 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.part.PageBook;
-import org.eclipse.wst.common.ui.viewers.SelectSingleFileView;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.uriresolver.XMLCatalog;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogEntry;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogPlugin;
-
-public class SelectFileOrXMLCatalogIdPanel extends Composite implements SelectionListener {
-
-	/**
-	 * TODO: Change the name of this interface; "Listener" is used by SWT.
-	 */
-	public interface Listener {
-		void completionStateChanged();
-	}
-
-	protected class MySelectSingleFileView extends SelectSingleFileView implements SelectSingleFileView.Listener {
-		protected Control control;
-
-		public MySelectSingleFileView(Composite parent) {
-			super(null, true);
-			//String[] ext = {".dtd"};
-			//addFilterExtensions(ext);
-			control = createControl(parent);
-			control.setLayoutData(new GridData(GridData.FILL_BOTH));
-			MySelectSingleFileView.this.setListener(this);
-		}
-
-		public Control getControl() {
-			return control;
-		}
-
-		public void setControlComplete(boolean isComplete) {
-			updateCompletionStateChange();
-		}
-
-		public void setVisibleHelper(boolean isVisible) {
-			super.setVisibleHelper(isVisible);
-		}
-	}
-
-	protected Listener listener;
-	protected PageBook pageBook;
-
-	protected Button[] radioButton;
-	protected MySelectSingleFileView selectSingleFileView;
-	protected SelectXMLCatalogIdPanel selectXMLCatalogIdPanel;
-
-	public SelectFileOrXMLCatalogIdPanel(Composite parent) {
-		super(parent, SWT.NONE);
-
-		// container group
-		setLayout(new GridLayout());
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		gd.heightHint = 400;
-		gd.widthHint = 400;
-		setLayoutData(gd);
-
-		radioButton = new Button[2];
-		radioButton[0] = new Button(this, SWT.RADIO);
-		radioButton[0].setText(XMLUIPlugin.getResourceString("%_UI_RADIO_BUTTON_SELECT_FROM_WORKSPACE")); //$NON-NLS-1$
-		radioButton[0].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		radioButton[0].setSelection(true);
-		radioButton[0].addSelectionListener(this);
-
-		radioButton[1] = new Button(this, SWT.RADIO);
-		radioButton[1].setText(XMLUIPlugin.getResourceString("%_UI_RADIO_BUTTON_SELECT_FROM_CATALOG")); //$NON-NLS-1$
-		radioButton[1].setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		radioButton[1].addSelectionListener(this);
-
-		pageBook = new PageBook(this, SWT.NONE);
-		pageBook.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-		selectSingleFileView = new MySelectSingleFileView(pageBook);
-
-		XMLCatalog xmlCatalog = XMLCatalogPlugin.getInstance().getDefaultXMLCatalog();
-		selectXMLCatalogIdPanel = new SelectXMLCatalogIdPanel(pageBook, xmlCatalog);
-		selectXMLCatalogIdPanel.getTableViewer().addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				updateCompletionStateChange();
-			}
-		});
-		pageBook.showPage(selectSingleFileView.getControl());
-	}
-
-	public IFile getFile() {
-		IFile result = null;
-		if (radioButton[0].getSelection()) {
-			result = selectSingleFileView.getFile();
-		}
-		return result;
-	}
-
-	public XMLCatalogEntry getXMLCatalogEntry() {
-		XMLCatalogEntry result = null;
-		if (radioButton[1].getSelection()) {
-			result = selectXMLCatalogIdPanel.getXMLCatalogEntry();
-		}
-		return result;
-	}
-
-	public String getXMLCatalogId() {
-		String result = null;
-		if (radioButton[1].getSelection()) {
-			result = selectXMLCatalogIdPanel.getId();
-		}
-		return result;
-	}
-
-	public String getXMLCatalogURI() {
-		String result = null;
-		if (radioButton[1].getSelection()) {
-			result = selectXMLCatalogIdPanel.getURI();
-		}
-		return result;
-	}
-
-	public void setCatalogEntryType(int catalogEntryType) {
-		selectXMLCatalogIdPanel.setCatalogEntryType(catalogEntryType);
-	}
-
-	public void setFilterExtensions(String[] filterExtensions) {
-		selectSingleFileView.resetFilters();
-		selectSingleFileView.addFilterExtensions(filterExtensions);
-
-		selectXMLCatalogIdPanel.getTableViewer().setFilterExtensions(filterExtensions);
-	}
-
-	public void setListener(Listener listener) {
-		this.listener = listener;
-	}
-
-	public void setVisibleHelper(boolean isVisible) {
-		selectSingleFileView.setVisibleHelper(isVisible);
-	}
-
-	public void updateCompletionStateChange() {
-		if (listener != null) {
-			listener.completionStateChanged();
-		}
-	}
-
-	public void widgetDefaultSelected(SelectionEvent e) {
-	}
-
-	public void widgetSelected(SelectionEvent e) {
-		if (e.widget == radioButton[0]) {
-			pageBook.showPage(selectSingleFileView.getControl());
-		} else {
-			pageBook.showPage(selectXMLCatalogIdPanel);
-		}
-		updateCompletionStateChange();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectXMLCatalogIdDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectXMLCatalogIdDialog.java
deleted file mode 100644
index 65cb8bd..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectXMLCatalogIdDialog.java
+++ /dev/null
@@ -1,111 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.xml.ui.dialogs;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.uriresolver.XMLCatalog;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogEntry;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogPlugin;
-
-
-
-public class SelectXMLCatalogIdDialog extends Dialog {
-	protected String[] extensions;
-	protected Button okButton;
-	protected SelectXMLCatalogIdPanel panel;
-	protected String publicId;
-	protected String systemId;
-
-	public SelectXMLCatalogIdDialog(Shell parentShell, String[] extensions) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		this.extensions = extensions;
-	}
-
-
-	protected void buttonPressed(int buttonId) {
-		if (buttonId == IDialogConstants.OK_ID) {
-			ISelection selection = panel.getTableViewer().getSelection();
-			Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;
-
-			if (selectedObject instanceof XMLCatalogEntry) {
-				XMLCatalogEntry mappingInfo = (XMLCatalogEntry) selectedObject;
-				publicId = mappingInfo.getKey();
-				systemId = computeDefaultSystemId(mappingInfo);
-			}
-		}
-		super.buttonPressed(buttonId);
-	}
-
-	protected String computeDefaultSystemId(XMLCatalogEntry mappingInfo) {
-		String result = mappingInfo.getWebAddress();
-		if (result == null && mappingInfo.getURI() != null) {
-			int index = mappingInfo.getURI().lastIndexOf("/"); //$NON-NLS-1$
-			String lastSegment = index != -1 ? mappingInfo.getURI().substring(index + 1) : mappingInfo.getURI();
-			result = lastSegment;
-		}
-		return result;
-	}
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		okButton.setEnabled(false);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-		// TODO... SSE port
-		//WorkbenchHelp.setHelp(dialogArea,
-		// XMLCommonUIContextIds.XCUI_CATALOG_DIALOG);
-
-		XMLCatalog xmlCatalog = XMLCatalogPlugin.getInstance().getDefaultXMLCatalog();
-		panel = new SelectXMLCatalogIdPanel(dialogArea, xmlCatalog);
-
-		ISelectionChangedListener listener = new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				updateButtonState();
-			}
-		};
-		panel.getTableViewer().setFilterExtensions(extensions);
-		panel.getTableViewer().addSelectionChangedListener(listener);
-		return dialogArea;
-	}
-
-
-
-	public String getId() {
-		return publicId;
-	}
-
-	public String getSystemId() {
-		return systemId;
-	}
-
-	protected void updateButtonState() {
-		ISelection selection = panel.getTableViewer().getSelection();
-		okButton.setEnabled(!selection.isEmpty());
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectXMLCatalogIdPanel.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectXMLCatalogIdPanel.java
deleted file mode 100644
index 082ebc7..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/SelectXMLCatalogIdPanel.java
+++ /dev/null
@@ -1,129 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dialogs;
-
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.uriresolver.XMLCatalog;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogEntry;
-
-public class SelectXMLCatalogIdPanel extends Composite {
-	protected int catalogEntryType;
-	protected boolean doTableSizeHack = false;
-
-	protected XMLCatalogTableViewer tableViewer;
-	protected XMLCatalog xmlCatalog;
-
-	public SelectXMLCatalogIdPanel(Composite parent, XMLCatalog xmlCatalog) {
-		super(parent, SWT.NONE);
-		this.xmlCatalog = xmlCatalog;
-
-		GridLayout gridLayout = new GridLayout();
-		this.setLayout(gridLayout);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.heightHint = 200;
-		gd.widthHint = 700;
-		this.setLayoutData(gd);
-
-		Label label = new Label(this, SWT.NONE);
-		label.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_XML_CATALOG_COLON")); //$NON-NLS-1$
-
-		tableViewer = createTableViewer(this);
-		tableViewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
-		tableViewer.setInput("dummy"); //$NON-NLS-1$
-	}
-
-	protected XMLCatalogTableViewer createTableViewer(Composite parent) {
-		String headings[] = new String[2];
-		headings[0] = XMLUIPlugin.getResourceString("%_UI_LABEL_KEY"); //$NON-NLS-1$
-		headings[1] = XMLUIPlugin.getResourceString("%_UI_LABEL_URI"); //$NON-NLS-1$
-
-		XMLCatalogTableViewer theTableViewer = new XMLCatalogTableViewer(parent, headings) {
-
-			protected void addXMLCatalogEntries(List list, Collection collection) {
-				for (Iterator i = collection.iterator(); i.hasNext();) {
-					XMLCatalogEntry entry = (XMLCatalogEntry) i.next();
-					if (catalogEntryType == 0) {
-						list.add(entry);
-					} else if (catalogEntryType == entry.getType()) {
-						list.add(entry);
-					}
-				}
-			}
-
-			public Collection getXMLCatalogEntries() {
-				List result = null;
-
-				if (xmlCatalog == null || doTableSizeHack) {
-					// this lets us create a table with an initial height of
-					// 10 rows
-					// otherwise we get stuck with 0 row heigh table... that's
-					// too small
-					doTableSizeHack = false;
-					result = new Vector();
-					for (int i = 0; i < 6; i++) {
-						result.add(""); //$NON-NLS-1$
-					}
-				} else {
-					result = new Vector();
-
-					addXMLCatalogEntries(result, xmlCatalog.getChildCatalog(XMLCatalog.SYSTEM_CATALOG_ID).getEntries());
-					addXMLCatalogEntries(result, xmlCatalog.getChildCatalog(XMLCatalog.USER_CATALOG_ID).getEntries());
-				}
-				return result;
-			}
-		};
-		return theTableViewer;
-	}
-
-
-	public String getId() {
-		XMLCatalogEntry entry = getXMLCatalogEntry();
-		return entry != null ? entry.getKey() : null;
-	}
-
-	public XMLCatalogTableViewer getTableViewer() {
-		return tableViewer;
-	}
-
-	public String getURI() {
-		XMLCatalogEntry entry = getXMLCatalogEntry();
-		return entry != null ? entry.getURI() : null;
-	}
-
-	public XMLCatalogEntry getXMLCatalogEntry() {
-		XMLCatalogEntry result = null;
-		ISelection selection = tableViewer.getSelection();
-		Object selectedObject = (selection instanceof IStructuredSelection) ? ((IStructuredSelection) selection).getFirstElement() : null;
-		if (selectedObject instanceof XMLCatalogEntry) {
-			result = (XMLCatalogEntry) selectedObject;
-		}
-		return result;
-	}
-
-	public void setCatalogEntryType(int catalogEntryType) {
-		this.catalogEntryType = catalogEntryType;
-		tableViewer.refresh();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/UpdateListener.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/UpdateListener.java
deleted file mode 100644
index 2ae05bd..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/UpdateListener.java
+++ /dev/null
@@ -1,20 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.xml.ui.dialogs;
-
-public interface UpdateListener {
-
-	public void updateOccured(Object object, Object arg);
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/XMLCatalogTableViewer.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/XMLCatalogTableViewer.java
deleted file mode 100644
index 3f5262c..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dialogs/XMLCatalogTableViewer.java
+++ /dev/null
@@ -1,198 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.xml.ui.dialogs;
-
-import java.text.Collator;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Comparator;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogEntry;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-
-public class XMLCatalogTableViewer extends TableViewer {
-
-
-	public class CatalogEntryContentProvider implements IStructuredContentProvider {
-
-		public void dispose() {
-		}
-
-		public Object[] getElements(Object element) {
-			Object[] array = getXMLCatalogEntries().toArray();
-			Comparator comparator = new Comparator() {
-				public int compare(Object o1, Object o2) {
-					int result = 0;
-					if (o1 instanceof XMLCatalogEntry && o2 instanceof XMLCatalogEntry) {
-						XMLCatalogEntry mappingInfo1 = (XMLCatalogEntry) o1;
-						XMLCatalogEntry mappingInfo2 = (XMLCatalogEntry) o2;
-						result = Collator.getInstance().compare(mappingInfo1.getKey(), mappingInfo2.getKey());
-					}
-					return result;
-				}
-			};
-			Arrays.sort(array, comparator);
-			return array;
-		}
-
-		public void inputChanged(Viewer viewer, Object old, Object newobj) {
-		}
-
-		public boolean isDeleted(Object object) {
-			return false;
-		}
-	}
-
-	public class CatalogEntryLabelProvider extends LabelProvider implements ITableLabelProvider {
-
-		public Image getColumnImage(Object object, int columnIndex) {
-			Image result = null;
-			if (columnIndex == 0) {
-				Image base = null;
-				if (object instanceof XMLCatalogEntry) {
-					XMLCatalogEntry catalogEntry = (XMLCatalogEntry) object;
-					String uri = catalogEntry.getURI();
-					if (uri.endsWith("dtd")) { //$NON-NLS-1$
-						base = dtdFileImage;
-					} else if (uri.endsWith("xsd")) { //$NON-NLS-1$
-						base = xsdFileImage;
-					} else {
-						base = unknownFileImage;
-					}
-
-					if (base != null) {
-						if (URIHelper.isReadableURI(uri, false)) {
-							result = base;
-						} else {
-							//TODO... SSE port
-							result = base;//imageFactory.createCompositeImage(base,
-							// errorImage,
-							// ImageFactory.BOTTOM_LEFT);
-						}
-					}
-				}
-			}
-			return result;
-		}
-
-		public String getColumnText(Object object, int columnIndex) {
-			String result = null;
-			if (object instanceof XMLCatalogEntry) {
-				XMLCatalogEntry catalogEntry = (XMLCatalogEntry) object;
-				result = columnIndex == 0 ? catalogEntry.getKey() : catalogEntry.getURI();
-				result = URIHelper.removePlatformResourceProtocol(result);
-			}
-			return result != null ? result : ""; //$NON-NLS-1$
-		}
-	}
-
-
-	class XMLCatalogTableViewerFilter extends ViewerFilter {
-		protected String[] extensions;
-
-		public XMLCatalogTableViewerFilter(String[] extensions) {
-			this.extensions = extensions;
-		}
-
-		public boolean isFilterProperty(Object element, Object property) {
-			return false;
-		}
-
-		public boolean select(Viewer viewer, Object parent, Object element) {
-			boolean result = false;
-			if (element instanceof XMLCatalogEntry) {
-				XMLCatalogEntry catalogEntry = (XMLCatalogEntry) element;
-				for (int i = 0; i < extensions.length; i++) {
-					if (catalogEntry.getURI().endsWith(extensions[i])) {
-						result = true;
-						break;
-					}
-				}
-			}
-			return result;
-		}
-	}
-
-	protected static Image dtdFileImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_DTDFILE);
-
-	protected static String ERROR_STATE_KEY = "errorstatekey"; //$NON-NLS-1$
-	protected static Image errorImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OVR_ERROR);
-
-	protected static Image unknownFileImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TXTEXT);
-	protected static Image xsdFileImage = XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_XSDFILE);
-
-	//protected ImageFactory imageFactory = new ImageFactory();
-
-	public XMLCatalogTableViewer(Composite parent, String[] columnProperties) {
-		super(parent, SWT.FULL_SELECTION);
-
-		Table table = getTable();
-		table.setLinesVisible(true);
-		table.setHeaderVisible(true);
-		table.setLinesVisible(true);
-
-		TableLayout layout = new TableLayout();
-		for (int i = 0; i < columnProperties.length; i++) {
-			TableColumn column = new TableColumn(table, i);
-			column.setText(columnProperties[i]);
-			column.setAlignment(SWT.LEFT);
-			layout.addColumnData(new ColumnWeightData(50, true));
-		}
-		table.setLayout(layout);
-		table.setLinesVisible(false);
-
-		setColumnProperties(columnProperties);
-
-		setContentProvider(new CatalogEntryContentProvider());
-		setLabelProvider(new CatalogEntryLabelProvider());
-	}
-
-	public Collection getXMLCatalogEntries() {
-		return null;
-	}
-
-
-	public void menuAboutToShow(IMenuManager menuManager) {
-		Action action = new Action("hello") { //$NON-NLS-1$
-			public void run() {
-				System.out.println("run!"); //$NON-NLS-1$
-			}
-		};
-		menuManager.add(action);
-	}
-
-	public void setFilterExtensions(String[] extensions) {
-		resetFilters();
-		addFilter(new XMLCatalogTableViewerFilter(extensions));
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dnd/DragNodeCommand.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dnd/DragNodeCommand.java
deleted file mode 100644
index 93f1948..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dnd/DragNodeCommand.java
+++ /dev/null
@@ -1,228 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.dnd;
-
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.wst.common.ui.dnd.DefaultDragAndDropCommand;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class DragNodeCommand extends DefaultDragAndDropCommand {
-	public DragNodeCommand(Object target, float location, int operations, int operation, Collection sources) {
-		super(target, location, operations, operation, sources);
-	}
-
-	protected void beginModelChange(Node node, boolean batchUpdate) {
-		IStructuredModel structuredModel = getStructedModel(node);
-		if (structuredModel != null) {
-			structuredModel.beginRecording(this, XMLUIPlugin.getResourceString("%DragNodeCommand.0")); //$NON-NLS-1$
-			if (batchUpdate) {
-				//  structuredModel.aboutToChangeModel();
-			}
-		}
-	}
-
-	public boolean canExecute() {
-		return executeHelper(true);
-	}
-
-
-	public boolean doMove(Node source, Node parentNode, Node refChild, boolean testOnly) {
-		boolean result = false;
-		if (source.getNodeType() == Node.ATTRIBUTE_NODE) {
-			Attr sourceAttribute = (Attr) source;
-			Element sourceAttributeOwnerElement = sourceAttribute.getOwnerElement();
-			if (parentNode.getNodeType() == Node.ELEMENT_NODE && sourceAttributeOwnerElement != parentNode) {
-				result = true;
-				if (!testOnly) {
-					try {
-						Element targetElement = (Element) parentNode;
-						targetElement.setAttribute(sourceAttribute.getName(), sourceAttribute.getValue());
-						sourceAttributeOwnerElement.removeAttributeNode(sourceAttribute);
-					} catch (Exception e) {
-					}
-				}
-			}
-		} else {
-			if ((parentNode.getNodeType() == Node.ELEMENT_NODE || parentNode.getNodeType() == Node.DOCUMENT_NODE) && !(refChild instanceof Attr)) {
-				result = true;
-
-				if (!testOnly) {
-					if (isAncestor(source, parentNode)) {
-						//System.out.println("can not perform this drag drop
-						// operation.... todo... pop up dialog");
-					} else {
-						// defect 221055 this test is required or else the
-						// node will
-						// be removed from the tree and the insert will fail
-						if (source != refChild) {
-							source.getParentNode().removeChild(source);
-							parentNode.insertBefore(source, refChild);
-						}
-					}
-				}
-			}
-		}
-		return result;
-	}
-
-	protected void endModelChange(Node node, boolean batchUpdate) {
-		IStructuredModel structuredModel = getStructedModel(node);
-		if (structuredModel != null) {
-			structuredModel.endRecording(this);
-			if (batchUpdate) {
-				//  structuredModel.changedModel();
-			}
-		}
-	}
-
-	public void execute() {
-		executeHelper(false);
-	}
-
-	//
-	//
-	public boolean executeHelper(boolean testOnly) {
-		boolean result = true;
-		if (target instanceof Node) {
-			Node targetNode = (Node) target;
-			Node parentNode = getParentForDropPosition(targetNode);
-			Node refChild = getRefChild(targetNode);
-
-			Vector sourcesList = new Vector();
-			sourcesList.addAll(sources);
-
-			removeMemberDescendants(sourcesList);
-			boolean performBatchUpdate = sourcesList.size() > 5;
-
-			if (!testOnly) {
-				beginModelChange(targetNode, performBatchUpdate);
-			}
-			for (Iterator i = sourcesList.iterator(); i.hasNext();) {
-				Object source = i.next();
-				if (source instanceof Node) {
-					if (!(refChild == null && targetNode instanceof Attr)) {
-						result = doMove((Node) source, parentNode, refChild, testOnly);
-					} else {
-						result = false;
-					}
-					if (!result) {
-						break;
-					}
-				}
-			}
-			if (!testOnly) {
-				endModelChange(targetNode, performBatchUpdate);
-			}
-		} else {
-			result = false;
-		}
-		return result;
-	}
-
-
-	public int getFeedback() {
-		int result = DND.FEEDBACK_SELECT;
-		if (location > 0.75) {
-			result = DND.FEEDBACK_INSERT_AFTER;
-		} else if (location < 0.25) {
-			result = DND.FEEDBACK_INSERT_BEFORE;
-		}
-		return result;
-	}
-
-	protected Node getParentForDropPosition(Node node) {
-		Node result = null;
-
-		int feedback = getFeedback();
-		if (feedback == DND.FEEDBACK_SELECT) {
-			result = node;
-		} else {
-			result = getParentOrOwner(node);
-		}
-		return result;
-	}
-
-
-	protected Node getParentOrOwner(Node node) {
-		return (node.getNodeType() == Node.ATTRIBUTE_NODE) ? ((Attr) node).getOwnerElement() : node.getParentNode();
-	}
-
-
-	protected Node getRefChild(Node node) {
-		Node result = null;
-
-		int feedback = getFeedback();
-
-		if (feedback == DND.FEEDBACK_INSERT_BEFORE) {
-			result = node;
-		} else if (feedback == DND.FEEDBACK_INSERT_AFTER) {
-			result = node.getNextSibling();
-		}
-		return result;
-	}
-
-	protected IStructuredModel getStructedModel(Node node) {
-		IStructuredModel result = null;
-		if (node instanceof XMLNode) {
-			result = ((XMLNode) node).getModel();
-		}
-		return result;
-	}
-
-	// returns true if a is an ancestore of b
-	//
-	protected boolean isAncestor(Node a, Node b) {
-		boolean result = false;
-		for (Node parent = b; parent != null; parent = parent.getParentNode()) {
-			if (parent == a) {
-				result = true;
-				break;
-			}
-		}
-		return result;
-	}
-
-
-	/**
-	 * This method removes members of the list that have ancestors that are
-	 * also members of the list.
-	 */
-	protected void removeMemberDescendants(List list) {
-		Hashtable table = new Hashtable();
-		for (Iterator i = list.iterator(); i.hasNext();) {
-			Object node = i.next();
-			table.put(node, node);
-		}
-
-		for (int i = list.size() - 1; i >= 0; i--) {
-			Node node = (Node) list.get(i);
-			for (Node parent = getParentOrOwner(node); parent != null; parent = getParentOrOwner(parent)) {
-				if (table.get(parent) != null) {
-					list.remove(i);
-					break;
-				}
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dnd/XMLDragAndDropManager.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dnd/XMLDragAndDropManager.java
deleted file mode 100644
index a7f0fe9..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/dnd/XMLDragAndDropManager.java
+++ /dev/null
@@ -1,48 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.xml.ui.dnd;
-
-import java.util.Collection;
-
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.wst.common.ui.dnd.DragAndDropCommand;
-import org.eclipse.wst.common.ui.dnd.DragAndDropManager;
-import org.eclipse.wst.common.ui.dnd.ObjectTransfer;
-import org.eclipse.wst.common.ui.dnd.ViewerDragAdapter;
-import org.eclipse.wst.common.ui.dnd.ViewerDropAdapter;
-import org.w3c.dom.Node;
-
-public class XMLDragAndDropManager implements DragAndDropManager {
-	public static void addDragAndDropSupport(TreeViewer viewer) {
-		int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
-		Transfer[] transfers = new Transfer[]{ObjectTransfer.getInstance()};
-		viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
-		viewer.addDropSupport(dndOperations, transfers, new ViewerDropAdapter(viewer, new XMLDragAndDropManager()));
-	}
-
-	public XMLDragAndDropManager() {
-	}
-
-	public DragAndDropCommand createCommand(Object target, float location, int operations, int operation, Collection source) {
-		DragAndDropCommand result = null;
-		if (target instanceof Node) {
-			Node node = (Node) target;
-			result = new DragNodeCommand(target, location, operations, operation, source);
-		}
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/doubleclick/XMLDoubleClickStrategy.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/doubleclick/XMLDoubleClickStrategy.java
deleted file mode 100644
index 66432a3..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/doubleclick/XMLDoubleClickStrategy.java
+++ /dev/null
@@ -1,285 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.doubleclick;
-
-import org.eclipse.jface.text.DefaultTextDoubleClickStrategy;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Node;
-
-
-public class XMLDoubleClickStrategy extends DefaultTextDoubleClickStrategy {
-	protected static final char DOUBLE_QUOTE = '\"';
-	protected static final char SINGLE_QUOTE = '\'';
-	protected static final char SPACE = ' ';
-	protected int fCaretPosition = -1;
-	protected int fDoubleClickCount = 0;
-	protected Node fNode = null;
-	protected IStructuredDocumentRegion fStructuredDocumentRegion = null;
-	protected String fStructuredDocumentRegionText = ""; //$NON-NLS-1$
-	protected IStructuredModel fStructuredModel = null;
-	protected StructuredTextViewer fStructuredTextViewer;
-	protected ITextRegion fTextRegion = null;
-
-	public void doubleClicked(ITextViewer textViewer) {
-		if (textViewer instanceof StructuredTextViewer) {
-			fStructuredTextViewer = (StructuredTextViewer) textViewer;
-			try {
-				fStructuredModel = StructuredModelManager.getModelManager().getExistingModelForRead(fStructuredTextViewer.getDocument());
-
-				if (fStructuredModel != null) {
-					int caretPosition = textViewer.getSelectedRange().x;
-					if (caretPosition < 0)
-						return;
-
-					fNode = (Node) fStructuredModel.getIndexedRegion(caretPosition);
-					if (fNode == null)
-						return;
-
-					updateDoubleClickCount(caretPosition);
-					updateStructuredDocumentRegion();
-					updateTextRegion();
-
-					if (fNode.getNodeType() == Node.TEXT_NODE)
-						processTextDoubleClicked();
-					else
-						processElementDoubleClicked();
-				}
-			} finally {
-				if (fStructuredModel != null)
-					fStructuredModel.releaseFromRead();
-			}
-		}
-	}
-
-	protected Point getWord(String string, int cursor) {
-		if (string == null)
-			return null;
-
-		int wordStart = 0;
-		int wordEnd = string.length();
-
-		wordStart = string.lastIndexOf(SPACE, cursor - 1);
-		int temp = string.lastIndexOf(SINGLE_QUOTE, cursor - 1);
-		wordStart = Math.max(wordStart, temp);
-		temp = string.lastIndexOf(DOUBLE_QUOTE, cursor - 1);
-		wordStart = Math.max(wordStart, temp);
-		if (wordStart == -1)
-			wordStart = cursor;
-		else
-			wordStart++;
-
-		wordEnd = string.indexOf(SPACE, cursor);
-		if (wordEnd == -1)
-			wordEnd = string.length();
-		temp = string.indexOf(SINGLE_QUOTE, cursor);
-		if (temp == -1)
-			temp = string.length();
-		wordEnd = Math.min(wordEnd, temp);
-		temp = string.indexOf(DOUBLE_QUOTE, cursor);
-		if (temp == -1)
-			temp = string.length();
-		wordEnd = Math.min(wordEnd, temp);
-		if (wordEnd == string.length())
-			wordEnd = cursor;
-
-		if ((wordStart == wordEnd) && !isQuoted(string)) {
-			wordStart = 0;
-			wordEnd = string.length();
-		}
-
-		return new Point(wordStart, wordEnd);
-	}
-
-	protected boolean isQuoted(String string) {
-		if ((string == null) || (string.length() < 2))
-			return false;
-
-		int lastIndex = string.length() - 1;
-		char firstChar = string.charAt(0);
-		char lastChar = string.charAt(lastIndex);
-
-		return (((firstChar == SINGLE_QUOTE) && (lastChar == SINGLE_QUOTE)) || ((firstChar == DOUBLE_QUOTE) && (lastChar == DOUBLE_QUOTE)));
-	}
-
-	protected void processElementAttrEqualsDoubleClicked2Times() {
-		int prevRegionOffset = fStructuredDocumentRegion.getStartOffset(fTextRegion) - 1;
-		ITextRegion prevRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(prevRegionOffset);
-		int nextRegionOffset = fStructuredDocumentRegion.getEndOffset(fTextRegion);
-		ITextRegion nextRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(nextRegionOffset);
-
-		if ((prevRegion != null) && (prevRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) && (nextRegion != null) && (nextRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)) {
-			fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(prevRegion), nextRegion.getTextEnd() - prevRegion.getStart());
-		}
-	}
-
-	protected void processElementAttrNameDoubleClicked2Times() {
-		int nextRegionOffset = fStructuredDocumentRegion.getEndOffset(fTextRegion);
-		ITextRegion nextRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(nextRegionOffset);
-
-		if (nextRegion != null) {
-			nextRegionOffset = fStructuredDocumentRegion.getEndOffset(nextRegion);
-			nextRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(nextRegionOffset);
-			if ((nextRegion != null) && (nextRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)) {
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion), nextRegion.getTextEnd() - fTextRegion.getStart());
-			} else {
-				// attribute has no value
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength());
-				fDoubleClickCount = 0;
-			}
-		}
-	}
-
-	protected void processElementAttrValueDoubleClicked() {
-		String regionText = fStructuredDocumentRegion.getText(fTextRegion);
-
-		if (fDoubleClickCount == 1) {
-			Point word = getWord(regionText, fCaretPosition - fStructuredDocumentRegion.getStartOffset(fTextRegion));
-			if (word.x == word.y) { // no word found; select whole region
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion), regionText.length());
-				fDoubleClickCount++;
-			} else
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion) + word.x, word.y - word.x);
-		} else if (fDoubleClickCount == 2) {
-			if (isQuoted(regionText)) {
-				// ==> // Point word = getWord(regionText, fCaretPosition -
-				// fStructuredDocumentRegion.getStartOffset(fTextRegion));
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion), regionText.length());
-			} else
-				processElementAttrValueDoubleClicked2Times();
-		} else if (fDoubleClickCount == 3) {
-			if (isQuoted(regionText))
-				processElementAttrValueDoubleClicked2Times();
-			else {
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength());
-				fDoubleClickCount = 0;
-			}
-		} else { // fDoubleClickCount == 4
-			fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength());
-			fDoubleClickCount = 0;
-		}
-	}
-
-	protected void processElementAttrValueDoubleClicked2Times() {
-		int prevRegionOffset = fStructuredDocumentRegion.getStartOffset(fTextRegion) - 1;
-		ITextRegion prevRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(prevRegionOffset);
-
-		if (prevRegion != null) {
-			prevRegionOffset = fStructuredDocumentRegion.getStartOffset(prevRegion) - 1;
-			prevRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(prevRegionOffset);
-			if ((prevRegion != null) && (prevRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)) {
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(prevRegion), fTextRegion.getTextEnd() - prevRegion.getStart());
-			}
-		}
-	}
-
-	protected void processElementDoubleClicked() {
-		if (fTextRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-			processElementAttrValueDoubleClicked(); // special handling for
-		// XML_TAG_ATTRIBUTE_VALUE
-		else {
-			if (fDoubleClickCount == 1) {
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart() + fTextRegion.getStart(), fTextRegion.getTextLength());
-			} else if (fDoubleClickCount == 2) {
-				if (fTextRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)
-					processElementAttrNameDoubleClicked2Times();
-				else if (fTextRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS)
-					processElementAttrEqualsDoubleClicked2Times();
-				else {
-					fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength());
-					fDoubleClickCount = 0;
-				}
-			} else { // fDoubleClickCount == 3
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength());
-				fDoubleClickCount = 0;
-			}
-		}
-	}
-
-	protected void processTextDoubleClicked() {
-		if (fDoubleClickCount == 1) {
-			super.doubleClicked(fStructuredTextViewer);
-
-			Point selectedRange = fStructuredTextViewer.getSelectedRange();
-			if ((selectedRange.x == fStructuredDocumentRegion.getStartOffset(fTextRegion)) && (selectedRange.y == fTextRegion.getTextLength()))
-				// only one word in region, skip one level of double click
-				// selection
-				fDoubleClickCount++;
-		} else if (fDoubleClickCount == 2) {
-			if (fTextRegion.getType() == XMLRegionContext.UNDEFINED) {
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength());
-				fDoubleClickCount = 0;
-			} else {
-				if (isQuoted(fStructuredDocumentRegion.getFullText(fTextRegion)))
-					fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion) + 1, fTextRegion.getTextLength() - 2);
-				else
-					fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion), fTextRegion.getTextLength());
-			}
-		} else {
-			if ((fDoubleClickCount == 3) && isQuoted(fStructuredDocumentRegion.getFullText(fTextRegion)))
-				fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStartOffset(fTextRegion), fTextRegion.getTextLength());
-			else {
-				if ((fDoubleClickCount == 3) && isQuoted(fStructuredDocumentRegionText))
-					fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart() + 1, fStructuredDocumentRegion.getLength() - 2);
-				else {
-					fStructuredTextViewer.setSelectedRange(fStructuredDocumentRegion.getStart(), fStructuredDocumentRegion.getLength());
-					fDoubleClickCount = 0;
-				}
-			}
-		}
-	}
-
-	public void setModel(IStructuredModel structuredModel) {
-		fStructuredModel = structuredModel;
-	}
-
-	protected void updateDoubleClickCount(int caretPosition) {
-		if (fCaretPosition == caretPosition) {
-			if (fStructuredDocumentRegion != null)
-				fDoubleClickCount++;
-			else
-				fDoubleClickCount = 1;
-		} else {
-			fCaretPosition = caretPosition;
-			fDoubleClickCount = 1;
-		}
-	}
-
-	protected void updateStructuredDocumentRegion() {
-		fStructuredDocumentRegion = fStructuredModel.getStructuredDocument().getRegionAtCharacterOffset(fCaretPosition);
-		if (fStructuredDocumentRegion != null)
-			fStructuredDocumentRegionText = fStructuredDocumentRegion.getText();
-		else
-			fStructuredDocumentRegionText = ""; //$NON-NLS-1$
-	}
-
-	protected void updateTextRegion() {
-		if (fStructuredDocumentRegion != null) {
-			fTextRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(fCaretPosition);
-			// if fTextRegion is null, it means we are at just past the last
-			// fStructuredDocumentRegion,
-			// at the very end of the document, so we'll use the last text
-			// region in the document
-			if (fTextRegion == null) {
-				fTextRegion = fStructuredDocumentRegion.getRegionAtCharacterOffset(fCaretPosition - 1);
-			}
-		} else
-			fTextRegion = null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/extension/IDesignViewerSelectionManager.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/extension/IDesignViewerSelectionManager.java
deleted file mode 100644
index 3d8ad2f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/extension/IDesignViewerSelectionManager.java
+++ /dev/null
@@ -1,33 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.extension;
-
-import org.eclipse.wst.sse.ui.internal.ViewerSelectionManager;
-import org.w3c.dom.Node;
-import org.w3c.dom.ranges.Range;
-
-
-/*
- * This class is currently an internal class used by Quick Edit view.
- */
-public interface IDesignViewerSelectionManager extends ViewerSelectionManager {
-	Node getFocusedNode();
-
-	Range getRange();
-
-	void pause();
-
-	void reset();
-
-	void resume();
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/extensions/XMLSourceEditingTextTools.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/extensions/XMLSourceEditingTextTools.java
deleted file mode 100644
index b85f876..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/extensions/XMLSourceEditingTextTools.java
+++ /dev/null
@@ -1,136 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.extensions;
-
-
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.ui.extensions.breakpoint.NodeLocation;
-import org.eclipse.wst.sse.ui.extensions.breakpoint.SourceEditingTextTools;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.document.XMLText;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-
-/**
- * Implements SourceEditingTextTools interface
- */
-public class XMLSourceEditingTextTools implements SourceEditingTextTools, INodeAdapter {
-
-	protected class NodeLocationImpl implements NodeLocation {
-		private XMLNode node;
-
-		public NodeLocationImpl(XMLNode xmlnode) {
-			super();
-			node = xmlnode;
-		}
-
-		public int getEndTagEndOffset() {
-			if (node.getEndStructuredDocumentRegion() != null)
-				return node.getEndStructuredDocumentRegion().getEndOffset();
-			return -1;
-		}
-
-		public int getEndTagStartOffset() {
-			if (node.getEndStructuredDocumentRegion() != null)
-				return node.getEndStructuredDocumentRegion().getStartOffset();
-			return -1;
-		}
-
-		public int getStartTagEndOffset() {
-			if (node.getStartStructuredDocumentRegion() != null)
-				return node.getStartStructuredDocumentRegion().getEndOffset();
-			return -1;
-		}
-
-		public int getStartTagStartOffset() {
-			if (node.getStartStructuredDocumentRegion() != null)
-				return node.getStartStructuredDocumentRegion().getStartOffset();
-			return -1;
-		}
-	}
-
-
-	public Document getDOMDocument(IMarker marker) {
-		if (marker == null)
-			return null;
-
-		IResource res = marker.getResource();
-		if (res == null || !(res instanceof IFile))
-			return null;
-
-		IModelManager mm = StructuredModelManager.getModelManager();
-		IStructuredModel model = null;
-		try {
-			model = mm.getExistingModelForRead((IFile) res);
-			if (model == null || !(model instanceof XMLModel))
-				return null;
-
-			return ((XMLModel) model).getDocument();
-		} finally {
-			if (model != null)
-				model.releaseFromRead();
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.extensions.SourceEditingTextTools#getNodeLocation(org.w3c.dom.Node)
-	 */
-	public NodeLocation getNodeLocation(Node node) {
-		if (node.getNodeType() == Node.ELEMENT_NODE && node instanceof XMLNode)
-			return new NodeLocationImpl((XMLNode) node);
-		return null;
-	}
-
-	public String getPageLanguage(Node node) {
-		return ""; //$NON-NLS-1$
-	}
-
-	public int getStartOffset(Node node) {
-		if (node == null || !(node instanceof XMLText))
-			return -1;
-
-		IStructuredDocumentRegion fnode = ((XMLText) node).getFirstStructuredDocumentRegion();
-		return fnode.getStartOffset();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.core.INodeAdapter#isAdapterForType(java.lang.Object)
-	 */
-	public boolean isAdapterForType(Object type) {
-		return SourceEditingTextTools.class.equals(type);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.core.INodeAdapter#notifyChanged(org.eclipse.wst.sse.core.core.INodeNotifier,
-	 *      int, java.lang.Object, java.lang.Object, java.lang.Object, int)
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/Logger.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/Logger.java
deleted file mode 100644
index e427490..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/Logger.java
+++ /dev/null
@@ -1,159 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal;
-
-
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.osgi.framework.Bundle;
-
-/**
- * Small convenience class to log messages to plugin's log file and also, if
- * desired, the console. This class should only be used by classes in this
- * plugin. Other plugins should make their own copy, with appropriate ID.
- */
-public class Logger {
-	private static final String PLUGIN_ID = "org.eclipse.wst.xml.ui"; //$NON-NLS-1$
-	
-	public static final int ERROR = IStatus.ERROR; // 4
-	public static final int ERROR_DEBUG = 200 + ERROR;
-	public static final int INFO = IStatus.INFO; // 1
-	public static final int INFO_DEBUG = 200 + INFO;
-
-	public static final int OK = IStatus.OK; // 0
-
-	public static final int OK_DEBUG = 200 + OK;
-
-	private static final String TRACEFILTER_LOCATION = "/debug/tracefilter"; //$NON-NLS-1$
-	public static final int WARNING = IStatus.WARNING; // 2
-	public static final int WARNING_DEBUG = 200 + WARNING;
-
-	/**
-	 * Adds message to log.
-	 * 
-	 * @param level
-	 *            severity level of the message (OK, INFO, WARNING, ERROR,
-	 *            OK_DEBUG, INFO_DEBUG, WARNING_DEBUG, ERROR_DEBUG)
-	 * @param message
-	 *            text to add to the log
-	 * @param exception
-	 *            exception thrown
-	 */
-	protected static void _log(int level, String message, Throwable exception) {
-		if (level == OK_DEBUG || level == INFO_DEBUG || level == WARNING_DEBUG || level == ERROR_DEBUG) {
-			if (!isDebugging())
-				return;
-		}
-
-		int severity = IStatus.OK;
-		switch (level) {
-			case INFO_DEBUG :
-			case INFO :
-				severity = IStatus.INFO;
-				break;
-			case WARNING_DEBUG :
-			case WARNING :
-				severity = IStatus.WARNING;
-				break;
-			case ERROR_DEBUG :
-			case ERROR :
-				severity = IStatus.ERROR;
-		}
-		message = (message != null) ? message : "null"; //$NON-NLS-1$
-		Status statusObj = new Status(severity, PLUGIN_ID, severity, message, exception);
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null) 
-			Platform.getLog(bundle).log(statusObj);
-	}
-
-	/**
-	 * Prints message to log if category matches /debug/tracefilter option.
-	 * 
-	 * @param message
-	 *            text to print
-	 * @param category
-	 *            category of the message, to be compared with
-	 *            /debug/tracefilter
-	 */
-	protected static void _trace(String category, String message, Throwable exception) {
-		if (isTracing(category)) {
-			message = (message != null) ? message : "null"; //$NON-NLS-1$
-			Status statusObj = new Status(IStatus.OK, PLUGIN_ID, IStatus.OK, message, exception);
-			Bundle bundle = Platform.getBundle(PLUGIN_ID);
-			if (bundle != null) 
-				Platform.getLog(bundle).log(statusObj);
-		}
-	}
-
-	/**
-	 * @return true if the platform is debugging
-	 */
-	public static boolean isDebugging() {
-		return Platform.inDebugMode();
-	}
-
-	/**
-	 * Determines if currently tracing a category
-	 * 
-	 * @param category
-	 * @return true if tracing category, false otherwise
-	 */
-	public static boolean isTracing(String category) {
-		if (!isDebugging())
-			return false;
-
-		String traceFilter = Platform.getDebugOption(PLUGIN_ID + TRACEFILTER_LOCATION);
-		if (traceFilter != null) {
-			StringTokenizer tokenizer = new StringTokenizer(traceFilter, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens()) {
-				String cat = tokenizer.nextToken().trim();
-				if (category.equals(cat)) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	public static void log(int level, String message) {
-		_log(level, message, null);
-	}
-
-	public static void log(int level, String message, Throwable exception) {
-		_log(level, message, exception);
-	}
-
-	public static void logException(String message, Throwable exception) {
-		_log(ERROR, message, exception);
-	}
-
-	public static void logException(Throwable exception) {
-		_log(ERROR, exception.getMessage(), exception);
-	}
-
-	public static void trace(String category, String message) {
-		_trace(category, message, null);
-	}
-
-	public static void traceException(String category, String message, Throwable exception) {
-		_trace(category, message, exception);
-	}
-
-	public static void traceException(String category, Throwable exception) {
-		_trace(category, exception.getMessage(), exception);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIPlugin.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIPlugin.java
deleted file mode 100644
index 12fcd52..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIPlugin.java
+++ /dev/null
@@ -1,164 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal;
-
-import java.io.IOException;
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.text.templates.ContextTypeRegistry;
-import org.eclipse.jface.text.templates.persistence.TemplateStore;
-import org.eclipse.ui.editors.text.templates.ContributionContextTypeRegistry;
-import org.eclipse.ui.editors.text.templates.ContributionTemplateStore;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistry;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryRegistryImpl;
-import org.eclipse.wst.sse.ui.registry.embedded.EmbeddedAdapterFactoryRegistryImpl;
-import org.eclipse.wst.xml.ui.JobStatusLineHelper;
-import org.eclipse.wst.xml.ui.internal.preferences.XMLUIPreferenceNames;
-import org.eclipse.wst.xml.ui.internal.templates.TemplateContextTypeIdsXML;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class XMLUIPlugin extends AbstractUIPlugin {
-	public final static String ID = "org.eclipse.wst.xml.ui"; //$NON-NLS-1$
-	protected static XMLUIPlugin instance = null;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$	
-
-	public static XMLUIPlugin getDefault() {
-		return instance;
-	}
-
-	public synchronized static XMLUIPlugin getInstance() {
-		return instance;
-	}
-
-	/**
-	 * The template context type registry for the xml editor.
-	 * 
-	 * @since 3.0
-	 */
-	private ContextTypeRegistry fContextTypeRegistry;
-
-	/**
-	 * The template store for the xml editor.
-	 * 
-	 * @since 3.0
-	 */
-	private TemplateStore fTemplateStore;
-
-	public XMLUIPlugin() {
-		super();
-		instance = this;
-
-		JobStatusLineHelper.init();
-	}
-
-	public AdapterFactoryRegistry getAdapterFactoryRegistry() {
-		return AdapterFactoryRegistryImpl.getInstance();
-
-	}
-
-	public AdapterFactoryRegistry getEmbeddedAdapterFactoryRegistry() {
-		return EmbeddedAdapterFactoryRegistryImpl.getInstance();
-
-	}
-
-	/**
-	 * Returns the template store for the xml editor templates.
-	 * 
-	 * @return the template store for the xml editor templates
-	 */
-	public TemplateStore getTemplateStore() {
-		if (fTemplateStore == null) {
-			fTemplateStore = new ContributionTemplateStore(getTemplateContextRegistry(), getPreferenceStore(), XMLUIPreferenceNames.TEMPLATES_KEY);
-
-			try {
-				fTemplateStore.load();
-			} catch (IOException e) {
-				Logger.logException(e);
-			}
-		}
-		return fTemplateStore;
-	}
-
-	/**
-	 * Returns the template context type registry for the xml plugin.
-	 * 
-	 * @return the template context type registry for the xml plugin
-	 */
-	public ContextTypeRegistry getTemplateContextRegistry() {
-		if (fContextTypeRegistry == null) {
-			ContributionContextTypeRegistry registry = new ContributionContextTypeRegistry();
-			registry.addContextType(TemplateContextTypeIdsXML.ALL);
-			registry.addContextType(TemplateContextTypeIdsXML.NEW);
-			registry.addContextType(TemplateContextTypeIdsXML.TAG);
-			registry.addContextType(TemplateContextTypeIdsXML.ATTRIBUTE);
-			registry.addContextType(TemplateContextTypeIdsXML.ATTRIBUTE_VALUE);
-
-			fContextTypeRegistry = registry;
-		}
-
-		return fContextTypeRegistry;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String value) {
-		String s = value.trim();
-		if (!s.startsWith(KEY_PREFIX, 0))
-			return s;
-		if (s.startsWith(KEY_DOUBLE_PREFIX, 0))
-			return s.substring(1);
-
-		int ix = s.indexOf(' ');
-		String key = ix == -1 ? s : s.substring(0, ix);
-
-		ResourceBundle bundle = getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key.substring(1)) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getResourceString(String key, Object[] args) {
-
-		try {
-			return MessageFormat.format(getResourceString(key), args);
-		} catch (IllegalArgumentException e) {
-			return getResourceString(key);
-		}
-
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		try {
-			if (resourceBundle == null)
-				resourceBundle = ResourceBundle.getBundle("org.eclipse.wst.xml.ui.internal.XMLUIPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIPluginResources.properties b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIPluginResources.properties
deleted file mode 100644
index 9179545..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/XMLUIPluginResources.properties
+++ /dev/null
@@ -1,222 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-## The following line is a sample XML document.  Please translate only the following parts:  
-## begin color definitions
-## Normal text content.
-Sample_XML_doc=<?xml version=\"1.0\"?>\n<?customProcessingInstruction\n\tXML processor specific\n\tcontent ?>\n<!DOCTYPE colors\n\tPUBLIC \"//IBM/XML/COLORS/\" \"colors.dtd\">\n<colors>\n\t<!-- begin color definitions -->\n\t<color name=\"plaintext\" foreground=\"#000000\"\n\t\tbackground=\"#D4D0C8\" />\n\t<color name=\"bold\" foreground=\"#000000\"\n\t\tbackground=\"#B3ACA0\" />\n\t<![CDATA[<123456789>]]>\n\tNormal text content.\n\t<color name=\"inverse\" foreground=\"#F0F0F0\"\n\t\tbackground=\"#D4D0C8\" />\n\n</colors>\n
-Comment_Delimiters_UI_=Comment Delimiters
-Comment_Content_UI_=Comment Content
-Tag_Delimiters_UI_=Tag Delimiters
-Tag_Names_UI_=Tag Names
-Attribute_Names_UI_=Attribute Names
-Attribute_Values_UI_=Attribute Values
-Declaration_Delimiters_UI_=Declaration Delimiters
-Content_UI_=Content
-## on the following 2 lines, do not translate CDATA
-CDATA_Delimiters_UI_=CDATA Delimiters
-CDATA_Content_UI_=CDATA Content
-Processing_Instruction_Del_UI_=Processing Instruction Delimiters
-Processing_Instruction_Con_UI__UI_=Processing Instruction Content
-## on the following line solely translate:  Name
-DOCTYPE_Name_UI_=DOCTYPE Name
-## on the following line solely translate:  Keyword
-DOCTYPE_SYSTEM/PUBLIC_Keyw_UI_=DOCTYPE SYSTEM/PUBLIC Keyword
-## on the following line solely translate:  Public Reference
-DOCTYPE_Public_Reference_UI_=DOCTYPE Public Reference
-## on the following line solely translate:  System Reference
-DOCTYPE_System_Reference_UI_=DOCTYPE System Reference
-# XML Common UI 
-# Constants for strings
-
-NEW=New
-DELETE=Remove
-ADD_TEXT=Add Text
-ADD_CDATA_SECTION=Add CDATA Section
-ADD_COMMENT=Add Commen&t
-ADD_PROCESSING_INSTRUCTION=Add Processing Instruction
-
-_UI_MENU_ADD_AFTER=Add &After
-_UI_MENU_ADD_ATTRIBUTE=Add A&ttribute
-_UI_MENU_ADD_BEFORE=Add &Before
-_UI_MENU_ADD_CHILD=Add &Child
-_UI_MENU_REMOVE=Re&move
-_UI_MENU_REPLACE_WITH=Re&place With
-_UI_MENU_ADD_DOCTYPE=Add DOCTYPE...
-_UI_MENU_EDIT_DOCTYPE=Edit DOCTYPE...
-_UI_MENU_ADD_GRAMMAR_INFORMATION=Add Grammar Information
-_UI_MENU_VALIDATE_XML=Validate XML File
-_UI_LABEL_UNDO_ADD_DESCRIPTION=Add
-_UI_LABEL_UNDO_REPLACE_DESCRIPTION=Replace
-_UI_LABEL_EDIT_DOCTYPE=Edit DOCTYPE
-_UI_INFO_EXPAND_ALL=Expand All
-_UI_INFO_COLLAPSE_ALL=Collapse All
-
-_UI_MENU_ADD_DTD_INFORMATION=Add DTD Information...
-_UI_MENU_ADD_SCHEMA_INFORMATION=Add Schema Information...
-_UI_MENU_EDIT_SCHEMA_INFORMATION=Edit &Schema Information...
-_UI_MENU_EDIT_PROCESSING_INSTRUCTION=Edit Process&ing Instruction...
-_UI_MENU_EDIT_NAMESPACES=Edit &Namespaces...
-
-_UI_MENU_ADD_DTD_INFORMATION_TITLE=Add DTD Information
-_UI_MENU_EDIT_PROCESSING_INSTRUCTION_TITLE=Edit Processing Instruction
-_UI_MENU_EDIT_SCHEMA_INFORMATION_TITLE=Edit Schema Information
-
-_UI_MENU_NEW_ATTRIBUTE=&New Attribute...
-_UI_MENU_NEW_ATTRIBUTE_TITLE=New Attribute
-_UI_MENU_EDIT_ATTRIBUTE=Edit Attribute...
-_UI_MENU_EDIT_ATTRIBUTE_TITLE=Edit Attribute
-_UI_MENU_NEW_ELEMENT=New &Element...
-_UI_MENU_NEW_ELEMENT_TITLE=New Element
-_UI_MENU_RENAME=R&ename
-_UI_MENU_RENAME_TITLE=Rename
-_UI_LABEL_ELEMENT_NAME=Element name:
-_UI_LABEL_LOADING_GRAMMAR=Loading grammar:
-
-_UI_MENU_ADD_COMMENT=Add Comment
-_UI_MENU_ADD_PROCESSING_INSTRUCTION=Add Processing Instruction
-_UI_MENU_ADD_CDATA_SECTION=Add CDATA Section
-_UI_MENU_ADD_PCDATA=Add #PCDATA;
-
-_UI_MENU_COMMENT=C&omment
-_UI_MENU_PROCESSING_INSTRUCTION=P&rocessing Instruction
-_UI_MENU_CDATA_SECTION=CDATA Section
-_UI_MENU_PCDATA=#PC&DATA;
-
-_UI_MENU_ADD=Add
-
-_UI_COMMENT_VALUE=comment
-_UI_PI_TARGET_VALUE=target
-_UI_PI_DATA_VALUE=data
-_UI_LABEL_ROOT_ELEMENT_VALUE=RootElement
-
-_UI_LABEL_TARGET_COLON=Target:
-_UI_LABEL_DATA_COLON=Data:
-_UI_LABEL_ROOT_ELEMENT_NAME_COLON=Root element name:
-_UI_LABEL_PUBLIC_ID_COLON=Public ID:
-_UI_LABEL_SYSTEM_ID_COLON=System ID:
-_UI_LABEL_BROWSE=Browse...
-_UI_LABEL_SELECT_XML_CATALOG_ENTRY=Select XML Catalog Entry
-_UI_LABEL_SPECIFY_SYSTEM_ID=Specify System ID
-_UI_LABEL_SELECT_FILE=Select File
-
-_UI_LABEL_KEY=Key
-_UI_LABEL_URI=URI:
-_UI_LABEL_XML_CATALOG_COLON=XML Catalog
-_UI_LABEL_NAMESPACE_NAME=Namespace Name
-_UI_LABEL_LOCATION_HINT=Location Hint
-_UI_LABEL_PREFIX=Prefix
-_UI_LABEL_NAMESPACE_NAME_COLON=Namespace Name:
-_UI_LABEL_LOCATION_HINT_COLON=Location Hint:
-_UI_LABEL_PREFIX_COLON=Prefix:
-_UI_NO_NAMESPACE_NAME=<no namespace name>
-_UI_NO_PREFIX=<no prefix>
-
-_UI_LABEL_XML_SCHEMA_INFORMATION=XML Schema Information
-_UI_LABEL_NAMESPACE_INFORMATION=Namespace Information
-
-_UI_LABEL_NAME_COLON=Name:
-_UI_LABEL_VALUE_COLON=Value:
-
-_UI_BUTTON_DELETE=Delete
-_UI_BUTTON_NEW=New...
-_UI_BUTTON_EDIT=Edit...
-
-_UI_LABEL_NEW_NAMESPACE_INFORMATION=New Namespace Information
-_UI_LABEL_EDIT_NAMESPACE_INFORMATION=Edit Namespace Information
-
-#
-# Assign links to an XML file
-#
-_UI_WORK_BENCH=Workbench Files...
-_UI_FILE_SYSTEM=Import Files...
-_UI_ASSIGN_XSL=Assign An XSL Stylesheet To The XML File
-_UI_ASSIGN_DTD=Assign A DTD file To The XML File
-_UI_ASSIGN_XSD=Assign An XML schema To The XML File
-_UI_SELECT_XSL_TITLE=Select an XSL File
-_UI_SELECT_XSL_DESC=Select an XSL file from the workbench.
-
-_UI_ASSIGN=Assign
-_UI_XSD=XML Schema...
-_UI_DTD=DTD...
-_UI_XSL=XSL Stylesheet...
-
-# XMLValidator.java
-_UI_XML_VALIDATOR=XML Validator
-# SelectFileOrXMLCatalogIdPanel.java
-
-_UI_RADIO_BUTTON_SELECT_FROM_WORKSPACE=Select file from workbench
-_UI_RADIO_BUTTON_SELECT_FROM_CATALOG=Select XML Catalog entry
-
-_UI_WARNING_TITLE_ROOT_ELEMENT_REQUIRED=Root Element Required
-_UI_WARNING_DOCUMENT_REQUIRES_ROOT=The document requires a root element in order to add schema information.
-_UI_WARNING_MORE_THAN_ONE_NS_WITH_NAME=More than one namespace has been specified with the namespace name :
-_UI_WARNING_MORE_THAN_ONE_NS_WITHOUT_NAME=More than one schema has been specified without a namespace name
-_UI_WARNING_MORE_THAN_ONE_NS_WITHOUT_PREFIX=More than one namespace has been specificed without a prefix
-_UI_WARNING_MORE_THAN_ONE_NS_WITH_PREFIX=More than one namespace has been specified with the prefix :
-_UI_WARNING_SCHEMA_CAN_NOT_BE_LOCATED=The specified schema can not be located :
-_UI_WARNING_LOCATION_HINT_NOT_SPECIFIED=A location hint has not been specified for the namespace with name
-_UI_WARNING_NAMESPACE_NAME_NOT_SPECIFIED=A name must be specified for the namespace with prefix :
-_UI_WARNING_PREFIX_NOT_SPECIFIED=A prefix must be specified for the namespace named :
-_UI_WARNING_ROOT_ELEMENT_MUST_BE_SPECIFIED=A root element name must be specified.
-_UI_WARNING_SYSTEM_ID_MUST_BE_SPECIFIED=A system ID must be specified.
-
-_UI_INVALID_NAME=Invalid name
-
-# String used for editing namespaces (org.eclipse.wst.xml.ui.nsedit)
-_UI_ENTER_REQ_PREFIX_AND_NAMESPACE=Enter the required prefix and namespace URI for the namespace declaration.
-_UI_SELECT_REGISTERED_NAMESPACES=Select From Registered Namespaces
-_UI_SPECIFY_NEW_NAMESPACE=Specify New Namespace
-_UI_SELECT_NAMESPACE_TO_ADD=Select the namespace declarations to add.
-_UI_ADD_NAMESPACE_DECLARATIONS=Add Namespace Declarations
-_UI_NAMESPACE_DECLARATIONS=Namespace Declarations
-_UI_TARGET_NAMESPACE=Target Namespace
-
-_ERROR_XML_ATTRIBUTE_ALREADY_EXISTS=The element already has an attribute with this name.
-
-#
-error_message_goes_here=error message goes here
-SurroundWithNewElementQuickAssistProposal.0=Surround with new element
-SurroundWithNewElementQuickAssistProposal.1=Surround with new element
-RenameInFileQuickAssistProposal.0=Link all references for a rename in file (does not change references in other files)
-RenameInFileQuickAssistProposal.1=Rename in file
-InsertRequiredAttrsQuickAssistProposal.0=Insert required attributes
-InsertRequiredAttrsQuickAssistProposal.1=Insert required attributes
-EncodingSettings.0=IANA:
-EncodingSettings.1=Encoding:
-TemplateContextTypeXMLTag.0=XML Tags
-TemplateContextTypeXMLAttributeValue.0=XML Attribute Values
-TemplateContextTypeXMLAttribute.0=XML Attributes
-TemplateContextTypeXML.0=All XML
-DragNodeCommand.0=Move
-CommonEditNamespacesDialog.0=Add...
-JFaceNodeAdapter.1=Refresh Property Sheet
-QuickFixProcessorXML.0=Remove empty tag
-QuickFixProcessorXML.1=Change to empty-element tag
-QuickFixProcessorXML.2=Remove this tag
-QuickFixProcessorXML.3=Insert end tag before first child element
-QuickFixProcessorXML.4=Insert end tag at end of element
-QuickFixProcessorXML.5=Remove attributes in end tag
-QuickFixProcessorXML.6=Insert default attribute value
-QuickFixProcessorXML.7=Remove this attribute
-QuickFixProcessorXML.8=Remove spaces before tag name
-QuickFixProcessorXML.9=Remove spaces before processing instruction
-QuickFixProcessorXML.10=Remove namespace in processing instruction
-QuickFixProcessorXML.11=Remove this element
-QuickFixProcessorXML.12=Remove this attribute value
-QuickFixProcessorXML.13=Insert required attribute
-QuickFixProcessorXML.14=Quote attribute value
-QuickFixProcessorXML.15=Insert closing bracket
-QuickFixProcessorXML.16=Remove this attribute and its value
-XMLPropertySourceAdapter.0=Attributes
-
-WorkbenchDefaultEncodingSettings.0=Use workbench encoding
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/autoedit/StructuredAutoEditStrategyXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/autoedit/StructuredAutoEditStrategyXML.java
deleted file mode 100644
index 3b8ddd9..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/autoedit/StructuredAutoEditStrategyXML.java
+++ /dev/null
@@ -1,114 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.autoedit;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentCommand;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.ui.texteditor.ITextEditorExtension3;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.ui.internal.StructuredDocumentCommand;
-import org.eclipse.wst.sse.ui.internal.autoedit.BasicAutoEditStrategy;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.w3c.dom.Node;
-
-
-public class StructuredAutoEditStrategyXML extends BasicAutoEditStrategy {
-	public void customizeDocumentCommand(IDocument document, DocumentCommand command) {
-		StructuredDocumentCommand structuredDocumentCommand = (StructuredDocumentCommand) command;
-		Object textEditor = getActiveTextEditor();
-		if (!(textEditor instanceof ITextEditorExtension3 && ((ITextEditorExtension3) textEditor).getInsertMode() == ITextEditorExtension3.SMART_INSERT))
-			return;
-
-		IStructuredModel model = null;
-		try {
-			model = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			if (model != null) {
-				if (structuredDocumentCommand.text != null) {
-					smartInsertForComment(structuredDocumentCommand, document, model);
-					smartInsertForEndTag(structuredDocumentCommand, document, model);
-				}
-			}
-		} finally {
-			if (model != null)
-				model.releaseFromRead();
-		}
-	}
-
-	private boolean isCommentNode(XMLNode node) {
-		return (node != null && node instanceof XMLElement && ((XMLElement) node).isCommentTag());
-	}
-
-	private boolean isDocumentNode(XMLNode node) {
-		return (node != null && node.getNodeType() == Node.DOCUMENT_NODE);
-	}
-
-	protected boolean isEndTagRequired(XMLNode node) {
-
-		if (node == null)
-			return false;
-		return node.isContainer();
-	}
-
-	protected boolean prefixedWith(IDocument document, int offset, String string) {
-
-		try {
-			return document.getLength() >= string.length() && document.get(offset - string.length(), string.length()).equals(string);
-		} catch (BadLocationException e) {
-			Logger.logException(e);
-			return false;
-		}
-	}
-
-	protected void smartInsertForComment(StructuredDocumentCommand structuredDocumentCommand, IDocument document, IStructuredModel model) {
-		try {
-			if (structuredDocumentCommand.text.equals("-") && document.getLength() >= 3 && document.get(structuredDocumentCommand.offset - 3, 3).equals("<!-")) { //$NON-NLS-1$ //$NON-NLS-2$
-				structuredDocumentCommand.text += " "; //$NON-NLS-1$
-				structuredDocumentCommand.doit = false;
-				structuredDocumentCommand.addCommand(structuredDocumentCommand.offset, 0, " -->", null); //$NON-NLS-1$
-			}
-		} catch (BadLocationException e) {
-			Logger.logException(e);
-		}
-
-	}
-
-	protected void smartInsertForEndTag(StructuredDocumentCommand structuredDocumentCommand, IDocument document, IStructuredModel model) {
-		try {
-			if (structuredDocumentCommand.text.equals("/") && document.getLength() >= 1 && document.get(structuredDocumentCommand.offset - 1, 1).equals("<")) { //$NON-NLS-1$ //$NON-NLS-2$
-				XMLNode parentNode = (XMLNode) ((XMLNode) model.getIndexedRegion(structuredDocumentCommand.offset - 1)).getParentNode();
-				if (isCommentNode(parentNode)) {
-					// loop and find non comment node parent
-					while (parentNode != null && isCommentNode(parentNode)) {
-						parentNode = (XMLNode) parentNode.getParentNode();
-					}
-				}
-
-				if (!isDocumentNode(parentNode)) {
-					IStructuredDocumentRegion endTagStructuredDocumentRegion = parentNode.getEndStructuredDocumentRegion();
-					if (endTagStructuredDocumentRegion == null) {
-						structuredDocumentCommand.text += parentNode.getNodeName();
-						structuredDocumentCommand.text += ">"; //$NON-NLS-1$
-					}
-				}
-			}
-		} catch (BadLocationException e) {
-			Logger.logException(e);
-		}
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/BufferedOutlineUpdater.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/BufferedOutlineUpdater.java
deleted file mode 100644
index d9670ca..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/BufferedOutlineUpdater.java
+++ /dev/null
@@ -1,63 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.contentoutline;
-
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.w3c.dom.Node;
-
-
-/**
- * Can handle multiple subsequent calls to processNode(..) by buffering them
- * w/ a RefreshOutlineJob. Only one refresh is performed (on the UI Thread) on the
- * minimal affected area of the tree at the end of the batch of updates (after
- * the last update is processed).
- * 
- * @author pavery
- */
-public class BufferedOutlineUpdater {
-
-	private RefreshOutlineJob fRefreshJob = null;
-	private StructuredViewer fViewer = null;
-	
-	/**
-	 * @param structuredViewer
-	 *       	the viewer we are updating
-	 * @param node
-	 * 			the specific node that changed
-	 */
-	public void processNode(final StructuredViewer structuredViewer, Node node) {
-
-		// refresh on structural and "unknown" changes
-		// it would be nice to not refresh the viewer if it's not visible
-		// but only refresh when it's brought back to the front
-		if (structuredViewer.getControl() != null) {
-			if(getViewer() == null)
-				setViewer(structuredViewer);
-			getRefreshJob().refresh(node);
-		}
-	}
-
-	private RefreshOutlineJob getRefreshJob() {
-		if(fRefreshJob == null)
-			fRefreshJob = new RefreshOutlineJob(getViewer());
-		return fRefreshJob;
-	}
-	
-	private StructuredViewer getViewer() {
-		return fViewer;
-	}
-	
-	private void setViewer(StructuredViewer viewer) {
-		fViewer = viewer;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/RefreshOutlineJob.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/RefreshOutlineJob.java
deleted file mode 100644
index 51da71b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/contentoutline/RefreshOutlineJob.java
+++ /dev/null
@@ -1,189 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.contentoutline;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-/**
- * This job holds a queue of updates (affected nodes) for the outline.
- * When a new request comes in, the current run is canceled, the new 
- * request is added to the queue, then the job is re-scheduled.
- * 
- * @author pavery
- */
-public class RefreshOutlineJob extends Job {
-
-	private static final long UPDATE_DELAY = 200;
-	/** List of refresh requests (Nodes)*/
-	private final List fRequests;
-	/** the tree viewer */
-	private final StructuredViewer fViewer;
-	/** debug flag */
-	private static final boolean DEBUG;
-	static {
-		String value = Platform.getDebugOption("org.eclipse.wst.sse.ui/debug/outline"); //$NON-NLS-1$
-		DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-	
-	public RefreshOutlineJob(StructuredViewer viewer) {
-		super(XMLUIPlugin.getResourceString("%refreshoutline.0"));
-		setPriority(Job.LONG);
-		setSystem(true);
-		fRequests = new ArrayList(1);
-		fViewer = viewer;
-	}
-	private synchronized void addRequest(Node node) {
-		
-		// if we already have a request which contains the new request,
-		// discare the new request
-		int size = fRequests.size();
-		for (int i=0; i<size; i++) {
-			if(contains((Node)fRequests.get(i), node))
-				return;
-		}
-		// if new request is contains any existing requests,
-		// remove those
-		for (Iterator it = fRequests.iterator(); it.hasNext();) {
-			if(contains(node, (Node)it.next()))
-				it.remove();
-		}
-		fRequests.add(node);
-	}
-	/**
-	 * This method also synchronized because it accesses the fRequests queue
-	 * @return an array of the currently requested Nodes to refresh
-	 */
-	private synchronized Node[] getRequests() {
-		
-		Node[] toRefresh = (Node[]) fRequests.toArray(new Node[fRequests.size()]);
-		fRequests.clear();
-		return toRefresh;
-	}
-	
-	/**
-	 * Invoke a refresh on the viewer on the given node.
-	 * @param node
-	 */
-	public void refresh(Node node) {
-		
-		if (node == null)
-			return;
-		
-		cancel();
-		addRequest(node);	
-		schedule(UPDATE_DELAY);
-	}
-	
-	/**
-	 * @return if the root is parent of possible, return true, otherwise
-	 *         return false
-	 */
-	private boolean contains(Node root, Node possible) {
-
-		if (DEBUG) {
-			System.out.println("==============================================================================================================");
-			System.out.println("recursive call w/ root: " + root.getNodeName() + " and possible: " + possible);
-			System.out.println("--------------------------------------------------------------------------------------------------------------");
-		}
-		
-		// the following checks are important
-		// #document node will break the algorithm otherwise
-		
-		// can't contain the parent if it's null
-		if (root == null) {
-		    if (DEBUG) System.out.println("returning false: root is null");
-			return false;
-		}
-		// nothing can be parent of Document node
-		if (possible instanceof Document) {
-		    if (DEBUG) System.out.println("returning false: possible is Document node");
-		    return false;
-		}
-		// document contains everything
-		if(root instanceof Document) {
-		    if (DEBUG) System.out.println("returning true: root is Document node");
-		    return true;
-		}
-		
-		// depth first
-		Node current = root;
-		// loop siblings
-		while (current != null) {
-			if (DEBUG) System.out.println("   -> iterating sibling (" + current.getNodeName() + ")");
-			// found it
-			if (possible.equals(current)) {		    
-				if (DEBUG) System.out.println("   !!! found: " + possible.getNodeName() + " in subtree for: " + root.getNodeName());
-				return true;
-			}
-			// drop one level deeper if necessary
-			if (current.getFirstChild() != null) {
-				return contains(current.getFirstChild(), possible);
-			}
-			current = current.getNextSibling();
-		}
-		// never found it
-		return false;
-	}
-	
-	protected IStatus run(IProgressMonitor monitor) {
-		IStatus status = Status.OK_STATUS;
-		try {
-			Node[] toRefresh = getRequests();
-			for (int i = 0; i < toRefresh.length; i++) {
-				if (monitor.isCanceled())
-					throw new OperationCanceledException();
-				doRefresh(toRefresh[i]);
-			}
-		}
-		finally {
-			monitor.done();
-		}
-		return status;
-	}
-	
-	/**
-	 * Refresh must be on UI thread because it's on a SWT widget.
-	 * @param node
-	 */
-	private void doRefresh(final Node node) {
-		final Display display = PlatformUI.getWorkbench().getDisplay();
-		display.asyncExec(new Runnable() {
-			public void run() {
-			    
-			    if(DEBUG)
-			        System.out.println("refresh on: [" +node.getNodeName()+ "]");
-			        
-			    if(node instanceof Document)
-			        fViewer.refresh();
-			    else
-			        fViewer.refresh(node);
-			}
-		});
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/CorrectionProcessorXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/CorrectionProcessorXML.java
deleted file mode 100644
index bfb47cb..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/CorrectionProcessorXML.java
+++ /dev/null
@@ -1,42 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.correction;
-
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.ui.internal.correction.IQuickAssistProcessor;
-import org.eclipse.wst.sse.ui.internal.correction.IQuickFixProcessor;
-import org.eclipse.wst.sse.ui.internal.correction.StructuredCorrectionProcessor;
-
-
-public class CorrectionProcessorXML extends StructuredCorrectionProcessor {
-	protected IQuickAssistProcessor fQuickAssistProcessor;
-	protected IQuickFixProcessor fQuickFixProcessor;
-
-	public CorrectionProcessorXML(ITextEditor editor) {
-		super(editor);
-	}
-
-	protected IQuickAssistProcessor getQuickAssistProcessor() {
-		if (fQuickAssistProcessor == null)
-			fQuickAssistProcessor = new QuickAssistProcessorXML();
-
-		return fQuickAssistProcessor;
-	}
-
-	protected IQuickFixProcessor getQuickFixProcessor() {
-		if (fQuickFixProcessor == null)
-			fQuickFixProcessor = new QuickFixProcessorXML();
-
-		return fQuickFixProcessor;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/InsertRequiredAttrsQuickAssistProposal.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/InsertRequiredAttrsQuickAssistProposal.java
deleted file mode 100644
index f4d7044..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/InsertRequiredAttrsQuickAssistProposal.java
+++ /dev/null
@@ -1,174 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.correction;
-
-import java.util.List;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.text.edits.InsertEdit;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-
-public class InsertRequiredAttrsQuickAssistProposal implements ICompletionProposal, ICompletionProposalExtension2 {
-	private final List fRequiredAttrs;
-
-	/**
-	 * @param requiredAttrs
-	 */
-	public InsertRequiredAttrsQuickAssistProposal(List requiredAttrs) {
-		fRequiredAttrs = requiredAttrs;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#apply(org.eclipse.jface.text.IDocument)
-	 */
-	public void apply(IDocument document) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,
-	 *      char, int, int)
-	 */
-	public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {
-		XMLNode node = (XMLNode) ContentAssistUtils.getNodeAt((StructuredTextViewer) viewer, offset);
-		IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();
-		int index = startStructuredDocumentRegion.getEndOffset();
-		ITextRegion lastRegion = startStructuredDocumentRegion.getLastRegion();
-		if (lastRegion.getType() == XMLRegionContext.XML_TAG_CLOSE) {
-			index--;
-			lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);
-		} else if (lastRegion.getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE) {
-			index = index - 2;
-			lastRegion = startStructuredDocumentRegion.getRegionAtCharacterOffset(index - 1);
-		}
-		MultiTextEdit multiTextEdit = new MultiTextEdit();
-		try {
-			for (int i = 0; i < fRequiredAttrs.size(); i++) {
-				CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) fRequiredAttrs.get(i);
-				String requiredAttributeName = attrDecl.getAttrName();
-				String defaultValue = attrDecl.getDefaultValue();
-				if (defaultValue == null)
-					defaultValue = ""; //$NON-NLS-1$
-				String nameAndDefaultValue = " "; //$NON-NLS-1$
-				if (i == 0 && lastRegion.getLength() > lastRegion.getTextLength())
-					nameAndDefaultValue = ""; //$NON-NLS-1$
-				nameAndDefaultValue += requiredAttributeName + "=\"" + defaultValue + "\""; //$NON-NLS-1$//$NON-NLS-2$
-				multiTextEdit.addChild(new InsertEdit(index, nameAndDefaultValue));
-				// BUG3381: MultiTextEdit applies all child TextEdit's basing
-				// on offsets
-				//          in the document before the first TextEdit, not after each
-				//          child TextEdit. Therefore, do not need to advance the
-				// index.
-				//index += nameAndDefaultValue.length();
-			}
-			multiTextEdit.apply(viewer.getDocument());
-		} catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException(e);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getAdditionalProposalInfo()
-	 */
-	public String getAdditionalProposalInfo() {
-		return XMLUIPlugin.getResourceString("%InsertRequiredAttrsQuickAssistProposal.0"); //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getContextInformation()
-	 */
-	public IContextInformation getContextInformation() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getDisplayString()
-	 */
-	public String getDisplayString() {
-		return XMLUIPlugin.getResourceString("%InsertRequiredAttrsQuickAssistProposal.1"); //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getImage()
-	 */
-	public Image getImage() {
-		// return JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);
-		return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ADD_CORRECTION);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getSelection(org.eclipse.jface.text.IDocument)
-	 */
-	public Point getSelection(IDocument document) {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#selected(org.eclipse.jface.text.ITextViewer,
-	 *      boolean)
-	 */
-	public void selected(ITextViewer viewer, boolean smartToggle) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#unselected(org.eclipse.jface.text.ITextViewer)
-	 */
-	public void unselected(ITextViewer viewer) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#validate(org.eclipse.jface.text.IDocument,
-	 *      int, org.eclipse.jface.text.DocumentEvent)
-	 */
-	public boolean validate(IDocument document, int offset, DocumentEvent event) {
-		return false;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/ProblemIDsXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/ProblemIDsXML.java
deleted file mode 100644
index 4d0008b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/ProblemIDsXML.java
+++ /dev/null
@@ -1,31 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.correction;
-
-public interface ProblemIDsXML {
-	int AttrsInEndTag = 3;
-	int AttrValueNotQuoted = 13;
-	int EmptyTag = 1;
-	int InvalidAttrValue = 11;
-	int MissingAttrValue = 4;
-	int MissingClosingBracket = 14;
-	int MissingEndTag = 2;
-	int MissingRequiredAttr = 12;
-	int NamespaceInPI = 8;
-	int NoAttrValue = 5;
-	int SpacesBeforePI = 7;
-	int SpacesBeforeTagName = 6;
-	int Unclassified = 0;
-	int UnknownAttr = 10;
-	int UnknownElement = 9;
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/QuickAssistProcessorXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/QuickAssistProcessorXML.java
deleted file mode 100644
index 7621bfa..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/QuickAssistProcessorXML.java
+++ /dev/null
@@ -1,169 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.correction;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.sse.ui.internal.correction.IQuickAssistProcessor;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-
-public class QuickAssistProcessorXML implements IQuickAssistProcessor {
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.correction.IQuickAssistProcessor#canAssist(org.eclipse.wst.sse.core.text.IStructuredDocument,
-	 *      int)
-	 */
-	public boolean canAssist(StructuredTextViewer viewer, int offset) {
-		return true;
-	}
-
-	/**
-	 * @param proposals
-	 * @param viewer
-	 * @param offset
-	 */
-	protected void getInsertRequiredAttrs(ArrayList proposals, StructuredTextViewer viewer, int offset) {
-		XMLNode node = (XMLNode) ContentAssistUtils.getNodeAt(viewer, offset);
-		if (node != null && node.getNodeType() == Node.ELEMENT_NODE) {
-			IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();
-			if (startStructuredDocumentRegion != null && startStructuredDocumentRegion.containsOffset(offset)) {
-				XMLNode cursorNode = (XMLNode) ContentAssistUtils.getNodeAt(viewer, offset);
-				List requiredAttrs = getRequiredAttrs(cursorNode);
-				if (requiredAttrs.size() > 0) {
-					NamedNodeMap currentAttrs = node.getAttributes();
-					List insertAttrs = new ArrayList();
-					if (currentAttrs.getLength() == 0)
-						insertAttrs.addAll(requiredAttrs);
-					else {
-						for (int i = 0; i < requiredAttrs.size(); i++) {
-							String requiredAttrName = ((CMAttributeDeclaration) requiredAttrs.get(i)).getAttrName();
-							boolean found = false;
-							for (int j = 0; j < currentAttrs.getLength(); j++) {
-								String currentAttrName = currentAttrs.item(j).getNodeName();
-								if (requiredAttrName.compareToIgnoreCase(currentAttrName) == 0) {
-									found = true;
-									break;
-								}
-							}
-							if (!found)
-								insertAttrs.add(requiredAttrs.get(i));
-						}
-					}
-					if (insertAttrs.size() > 0)
-						proposals.add(new InsertRequiredAttrsQuickAssistProposal(insertAttrs));
-				}
-			}
-		}
-	}
-
-	/**
-	 * @param proposals
-	 * @param viewer
-	 * @param offset
-	 */
-	protected void getLocalRenameQuickAssistProposal(ArrayList proposals, StructuredTextViewer viewer, int offset) {
-		XMLNode node = (XMLNode) ContentAssistUtils.getNodeAt(viewer, offset);
-		IStructuredDocumentRegion startStructuredDocumentRegion = node == null ? null : node.getStartStructuredDocumentRegion();
-		IStructuredDocumentRegion endStructuredDocumentRegion = node == null ? null : node.getEndStructuredDocumentRegion();
-
-		ITextRegion region = null;
-		int regionTextEndOffset = 0;
-		if (startStructuredDocumentRegion != null && startStructuredDocumentRegion.containsOffset(offset)) {
-			region = startStructuredDocumentRegion.getRegionAtCharacterOffset(offset);
-			regionTextEndOffset = startStructuredDocumentRegion.getTextEndOffset(region);
-		} else if (endStructuredDocumentRegion != null && endStructuredDocumentRegion.containsOffset(offset)) {
-			region = endStructuredDocumentRegion.getRegionAtCharacterOffset(offset);
-			regionTextEndOffset = endStructuredDocumentRegion.getTextEndOffset(region);
-		}
-
-		if (region != null && (region.getType() == XMLRegionContext.XML_TAG_NAME || region.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) && offset <= regionTextEndOffset)
-			proposals.add(new RenameInFileQuickAssistProposal());
-	}
-
-	protected ModelQuery getModelQuery(Node node) {
-		if (node.getNodeType() == Node.DOCUMENT_NODE) {
-			return ModelQueryUtil.getModelQuery((Document) node);
-		} else {
-			return ModelQueryUtil.getModelQuery(node.getOwnerDocument());
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.correction.IQuickAssistProcessor#getProposals(org.eclipse.wst.sse.core.text.IStructuredDocument,
-	 *      int)
-	 */
-	public ICompletionProposal[] getProposals(StructuredTextViewer viewer, int offset) throws CoreException {
-		ArrayList proposals = new ArrayList();
-
-		getLocalRenameQuickAssistProposal(proposals, viewer, offset);
-		getSurroundWithNewElementQuickAssistProposal(proposals, viewer, offset);
-		getInsertRequiredAttrs(proposals, viewer, offset);
-
-		return (ICompletionProposal[]) proposals.toArray(new ICompletionProposal[proposals.size()]);
-	}
-
-	protected List getRequiredAttrs(Node node) {
-		List result = new ArrayList();
-
-		ModelQuery modelQuery = getModelQuery(node);
-		if (modelQuery != null) {
-			CMElementDeclaration elementDecl = modelQuery.getCMElementDeclaration((Element) node);
-			if (elementDecl != null) {
-				CMNamedNodeMap attrMap = elementDecl.getAttributes();
-				Iterator it = attrMap.iterator();
-				CMAttributeDeclaration attr = null;
-				while (it.hasNext()) {
-					attr = (CMAttributeDeclaration) it.next();
-					if (attr.getUsage() == CMAttributeDeclaration.REQUIRED) {
-						result.add(attr);
-					}
-				}
-			}
-		}
-
-		return result;
-	}
-
-	/**
-	 * @param proposals
-	 * @param viewer
-	 * @param offset
-	 */
-	protected void getSurroundWithNewElementQuickAssistProposal(ArrayList proposals, StructuredTextViewer viewer, int offset) {
-		XMLNode node = (XMLNode) ContentAssistUtils.getNodeAt(viewer, offset);
-		if (node != null)
-			proposals.add(new SurroundWithNewElementQuickAssistProposal());
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/QuickFixProcessorXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/QuickFixProcessorXML.java
deleted file mode 100644
index 8f9410e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/QuickFixProcessorXML.java
+++ /dev/null
@@ -1,147 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.correction;
-
-import java.util.ArrayList;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.text.contentassist.CompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.ui.internal.correction.IQuickFixProcessor;
-import org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-
-public class QuickFixProcessorXML implements IQuickFixProcessor {
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.correction.IQuickFixProcessor#canFix(int)
-	 */
-	public boolean canFix(Annotation annotation) {
-		boolean result = false;
-
-		if (annotation instanceof TemporaryAnnotation) {
-			TemporaryAnnotation tempAnnotation = (TemporaryAnnotation) annotation;
-			int problemID = tempAnnotation.getProblemID();
-			switch (problemID) {
-				case ProblemIDsXML.EmptyTag :
-				case ProblemIDsXML.MissingEndTag :
-				case ProblemIDsXML.AttrsInEndTag :
-				case ProblemIDsXML.MissingAttrValue :
-				case ProblemIDsXML.NoAttrValue :
-				case ProblemIDsXML.SpacesBeforeTagName :
-				case ProblemIDsXML.SpacesBeforePI :
-				case ProblemIDsXML.NamespaceInPI :
-				case ProblemIDsXML.UnknownElement :
-				case ProblemIDsXML.UnknownAttr :
-				case ProblemIDsXML.InvalidAttrValue :
-				case ProblemIDsXML.MissingRequiredAttr :
-				case ProblemIDsXML.AttrValueNotQuoted :
-				case ProblemIDsXML.MissingClosingBracket :
-					result = true;
-			}
-		}
-
-		return result;
-	}
-
-	public Image getImage() {
-		//return
-		// JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE);
-		return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_CORRECTION_CHANGE);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.correction.IQuickFixProcessor#getProposals(org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation)
-	 */
-	public ICompletionProposal[] getProposals(Annotation annotation) throws CoreException {
-		ArrayList proposals = new ArrayList();
-
-		if (annotation instanceof TemporaryAnnotation) {
-			TemporaryAnnotation tempAnnotation = (TemporaryAnnotation) annotation;
-			int problemID = tempAnnotation.getProblemID();
-			switch (problemID) {
-				case ProblemIDsXML.EmptyTag :
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.0"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				case ProblemIDsXML.MissingEndTag :
-					String tagName = (String) ((Object[]) tempAnnotation.getAdditionalFixInfo())[0];
-					String tagClose = (String) ((Object[]) tempAnnotation.getAdditionalFixInfo())[1];
-					int tagCloseOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[2]).intValue();
-					int startTagEndOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[3]).intValue();
-					int firstChildStartOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[4]).intValue();
-					int endOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[5]).intValue();
-					proposals.add(new CompletionProposal(tagClose, tagCloseOffset, 0, 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.1"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), startTagEndOffset - tempAnnotation.getPosition().getOffset(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.2"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					proposals.add(new CompletionProposal("</" + tagName + ">", firstChildStartOffset, 0, 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.3"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-					proposals.add(new CompletionProposal("</" + tagName + ">", endOffset, 0, 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.4"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-					break;
-				case ProblemIDsXML.AttrsInEndTag :
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.5"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				case ProblemIDsXML.MissingAttrValue :
-					String defaultAttrValue = (String) ((Object[]) tempAnnotation.getAdditionalFixInfo())[0];
-					int insertOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[1]).intValue();
-					proposals.add(new CompletionProposal("\"" + defaultAttrValue + "\"", tempAnnotation.getPosition().getOffset() + tempAnnotation.getPosition().getLength() + insertOffset, 0, defaultAttrValue.length() + 2, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.6"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.7"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				case ProblemIDsXML.NoAttrValue :
-					defaultAttrValue = (String) tempAnnotation.getAdditionalFixInfo();
-					proposals.add(new CompletionProposal("=\"" + defaultAttrValue + "\"", tempAnnotation.getPosition().getOffset() + tempAnnotation.getPosition().getLength(), 0, defaultAttrValue.length() + 3, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.6"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.7"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				case ProblemIDsXML.SpacesBeforeTagName :
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.8"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				case ProblemIDsXML.SpacesBeforePI :
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.9"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				case ProblemIDsXML.NamespaceInPI :
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.10"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				case ProblemIDsXML.UnknownElement :
-					proposals.add(new RemoveUnknownElementQuickFixProposal(tempAnnotation.getAdditionalFixInfo(), getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.11"))); //$NON-NLS-1$
-					proposals.add(new RenameInFileQuickAssistProposal());
-					break;
-				case ProblemIDsXML.UnknownAttr :
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.7"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					proposals.add(new RenameInFileQuickAssistProposal());
-					break;
-				case ProblemIDsXML.InvalidAttrValue :
-					proposals.add(new CompletionProposal("", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), 0, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.12"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-					break;
-				case ProblemIDsXML.MissingRequiredAttr :
-					String requiredAttr = (String) ((Object[]) tempAnnotation.getAdditionalFixInfo())[0];
-					insertOffset = ((Integer) ((Object[]) tempAnnotation.getAdditionalFixInfo())[1]).intValue();
-					proposals.add(new CompletionProposal(requiredAttr, tempAnnotation.getPosition().getOffset() + insertOffset, 0, requiredAttr.length(), getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.13"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$
-					break;
-				case ProblemIDsXML.AttrValueNotQuoted :
-					String attrValue = (String) tempAnnotation.getAdditionalFixInfo();
-					proposals.add(new CompletionProposal("\"" + attrValue + "\"", tempAnnotation.getPosition().getOffset(), tempAnnotation.getPosition().getLength(), attrValue.length() + 2, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.14"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-					break;
-				case ProblemIDsXML.MissingClosingBracket :
-					proposals.add(new CompletionProposal(">", tempAnnotation.getPosition().getOffset() + tempAnnotation.getPosition().getLength(), 0, 1, getImage(), XMLUIPlugin.getResourceString("%QuickFixProcessorXML.15"), null, "")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-					break;
-			}
-		}
-
-		return (ICompletionProposal[]) proposals.toArray(new ICompletionProposal[proposals.size()]);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/RemoveUnknownElementQuickFixProposal.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/RemoveUnknownElementQuickFixProposal.java
deleted file mode 100644
index 6af8773..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/RemoveUnknownElementQuickFixProposal.java
+++ /dev/null
@@ -1,156 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.correction;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.text.edits.DeleteEdit;
-import org.eclipse.text.edits.MalformedTreeException;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-public class RemoveUnknownElementQuickFixProposal implements ICompletionProposal, ICompletionProposalExtension2 {
-	private Object fAdditionalFixInfo = null;
-	private String fDisplayString;
-	private Image fImage;
-	private Point fSelection; // initialized by apply()
-
-	public RemoveUnknownElementQuickFixProposal(Object additionalFixInfo, Image image, String displayString) {
-		fAdditionalFixInfo = additionalFixInfo;
-		fImage = image;
-		fDisplayString = displayString;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#apply(org.eclipse.jface.text.IDocument)
-	 */
-	public void apply(IDocument document) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,
-	 *      char, int, int)
-	 */
-	public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {
-		int startTagOffset = ((Integer) ((Object[]) fAdditionalFixInfo)[0]).intValue();
-		int startTagLength = ((Integer) ((Object[]) fAdditionalFixInfo)[1]).intValue();
-		int endTagOffset = ((Integer) ((Object[]) fAdditionalFixInfo)[2]).intValue();
-		int endTagLength = ((Integer) ((Object[]) fAdditionalFixInfo)[3]).intValue();
-
-		MultiTextEdit multiTextEdit = new MultiTextEdit();
-		if (endTagOffset != -1) {
-			multiTextEdit.addChild(new DeleteEdit(endTagOffset, endTagLength));
-			fSelection = new Point(endTagOffset, 0);
-		}
-		if (startTagOffset != -1) {
-			multiTextEdit.addChild(new DeleteEdit(startTagOffset, startTagLength));
-			fSelection = new Point(startTagOffset, 0);
-		}
-
-		try {
-			multiTextEdit.apply(viewer.getDocument());
-		} catch (MalformedTreeException e) {
-			throw new SourceEditingRuntimeException(e);
-		} catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException(e);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getAdditionalProposalInfo()
-	 */
-	public String getAdditionalProposalInfo() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getContextInformation()
-	 */
-	public IContextInformation getContextInformation() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getDisplayString()
-	 */
-	public String getDisplayString() {
-		if (fDisplayString == null)
-			fDisplayString = XMLUIPlugin.getResourceString("%QuickFixProcessorXML.11"); //$NON-NLS-1$
-
-		return fDisplayString;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getImage()
-	 */
-	public Image getImage() {
-		return fImage;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getSelection(org.eclipse.jface.text.IDocument)
-	 */
-	public Point getSelection(IDocument document) {
-		return fSelection;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#selected(org.eclipse.jface.text.ITextViewer,
-	 *      boolean)
-	 */
-	public void selected(ITextViewer viewer, boolean smartToggle) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#unselected(org.eclipse.jface.text.ITextViewer)
-	 */
-	public void unselected(ITextViewer viewer) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#validate(org.eclipse.jface.text.IDocument,
-	 *      int, org.eclipse.jface.text.DocumentEvent)
-	 */
-	public boolean validate(IDocument document, int offset, DocumentEvent event) {
-		return false;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/RenameInFileQuickAssistProposal.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/RenameInFileQuickAssistProposal.java
deleted file mode 100644
index 179c4e7..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/RenameInFileQuickAssistProposal.java
+++ /dev/null
@@ -1,182 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.correction;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;
-import org.eclipse.jface.text.contentassist.IContextInformation;
-import org.eclipse.jface.text.link.LinkedModeModel;
-import org.eclipse.jface.text.link.LinkedModeUI;
-import org.eclipse.jface.text.link.LinkedPosition;
-import org.eclipse.jface.text.link.LinkedPositionGroup;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.texteditor.link.EditorLinkedModeUI;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-
-public class RenameInFileQuickAssistProposal implements ICompletionProposal, ICompletionProposalExtension2 {
-	protected IRegion fSelectedRegion; // initialized by apply()
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#apply(org.eclipse.jface.text.IDocument)
-	 */
-	public void apply(IDocument document) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,
-	 *      char, int, int)
-	 */
-	public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {
-		IDocument document = viewer.getDocument();
-		LinkedPositionGroup group = new LinkedPositionGroup();
-		try {
-			if (viewer instanceof StructuredTextViewer) {
-				XMLNode node = (XMLNode) ContentAssistUtils.getNodeAt((StructuredTextViewer) viewer, offset);
-				IStructuredDocumentRegion startStructuredDocumentRegion = node.getStartStructuredDocumentRegion();
-				ITextRegion region = (startStructuredDocumentRegion == null) ? null : startStructuredDocumentRegion.getRegionAtCharacterOffset(offset);
-				if (region != null) {
-					group.addPosition(new LinkedPosition(document, startStructuredDocumentRegion.getStartOffset() + region.getStart(), region.getTextLength(), 0));
-
-					if (region.getType() == XMLRegionContext.XML_TAG_NAME && node.getEndStructuredDocumentRegion() != null) {
-						region = node.getEndStructuredDocumentRegion().getRegions().get(1);
-						if (region != null)
-							group.addPosition(new LinkedPosition(document, node.getEndStructuredDocumentRegion().getStartOffset() + region.getStart(), region.getTextLength(), 1));
-					}
-				} else {
-					IStructuredDocumentRegion endStructuredDocumentRegion = node.getEndStructuredDocumentRegion();
-					region = (endStructuredDocumentRegion == null) ? null : endStructuredDocumentRegion.getRegionAtCharacterOffset(offset);
-					if (region != null) {
-						if (region.getType() == XMLRegionContext.XML_TAG_NAME && node.getStartStructuredDocumentRegion() != null) {
-							ITextRegion startTagNameRegion = node.getStartStructuredDocumentRegion().getRegions().get(1);
-							if (region != null) {
-								group.addPosition(new LinkedPosition(document, node.getStartStructuredDocumentRegion().getStartOffset() + startTagNameRegion.getStart(), startTagNameRegion.getTextLength(), 0));
-								group.addPosition(new LinkedPosition(document, endStructuredDocumentRegion.getStartOffset() + region.getStart(), region.getTextLength(), 1));
-							}
-						} else
-							group.addPosition(new LinkedPosition(document, endStructuredDocumentRegion.getStartOffset() + region.getStart(), region.getTextLength(), 0));
-					}
-				}
-
-				// TODO CompletionProposalPopup#insertProposal() calls
-				// IRewriteTarget.beginCompoundChange()
-				//      which disables redraw in ITextViewer. Workaround for now.
-				((StructuredTextViewer) viewer).setRedraw(true);
-			}
-
-			LinkedModeModel linkedModeModel = new LinkedModeModel();
-			linkedModeModel.addGroup(group);
-			linkedModeModel.forceInstall();
-
-			LinkedModeUI ui = new EditorLinkedModeUI(linkedModeModel, viewer);
-			ui.setExitPosition(viewer, offset, 0, LinkedPositionGroup.NO_STOP);
-			ui.enter();
-
-			fSelectedRegion = ui.getSelectedRegion();
-		} catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException(e);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getAdditionalProposalInfo()
-	 */
-	public String getAdditionalProposalInfo() {
-		return XMLUIPlugin.getResourceString("%RenameInFileQuickAssistProposal.0"); //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getContextInformation()
-	 */
-	public IContextInformation getContextInformation() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getDisplayString()
-	 */
-	public String getDisplayString() {
-		return XMLUIPlugin.getResourceString("%RenameInFileQuickAssistProposal.1"); //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getImage()
-	 */
-	public Image getImage() {
-		// return JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);
-		return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_LOCAL_VARIABLE);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getSelection(org.eclipse.jface.text.IDocument)
-	 */
-	public Point getSelection(IDocument document) {
-		return new Point(fSelectedRegion.getOffset(), fSelectedRegion.getLength());
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#selected(org.eclipse.jface.text.ITextViewer,
-	 *      boolean)
-	 */
-	public void selected(ITextViewer viewer, boolean smartToggle) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#unselected(org.eclipse.jface.text.ITextViewer)
-	 */
-	public void unselected(ITextViewer viewer) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#validate(org.eclipse.jface.text.IDocument,
-	 *      int, org.eclipse.jface.text.DocumentEvent)
-	 */
-	public boolean validate(IDocument document, int offset, DocumentEvent event) {
-		return false;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/SurroundWithNewElementQuickAssistProposal.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/SurroundWithNewElementQuickAssistProposal.java
deleted file mode 100644
index 9e51003..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/correction/SurroundWithNewElementQuickAssistProposal.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.correction;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.text.edits.InsertEdit;
-import org.eclipse.text.edits.MalformedTreeException;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-import org.w3c.dom.Node;
-
-public class SurroundWithNewElementQuickAssistProposal extends RenameInFileQuickAssistProposal {
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposalExtension2#apply(org.eclipse.jface.text.ITextViewer,
-	 *      char, int, int)
-	 */
-	public void apply(ITextViewer viewer, char trigger, int stateMask, int offset) {
-		try {
-			int startTagOffset = offset;
-			int endTagOffset = offset + viewer.getSelectedRange().y;
-
-			// surround the node if no selection
-			if (startTagOffset == endTagOffset) {
-				XMLNode cursorNode = (XMLNode) ContentAssistUtils.getNodeAt((StructuredTextViewer) viewer, offset);
-				// use parent node if text node is empty
-				if (cursorNode.getNodeType() == Node.TEXT_NODE && cursorNode.getNodeValue().trim().length() == 0)
-					cursorNode = (XMLNode) cursorNode.getParentNode();
-
-				startTagOffset = cursorNode.getStartOffset();
-				endTagOffset = cursorNode.getEndOffset();
-			}
-
-			// insert new element
-			MultiTextEdit multiTextEdit = new MultiTextEdit();
-			// element tag name cannot be DBCS, do not translate "<element>"
-			// and "</element>"
-			multiTextEdit.addChild(new InsertEdit(startTagOffset, "<element>")); //$NON-NLS-1$
-			multiTextEdit.addChild(new InsertEdit(endTagOffset, "</element>")); //$NON-NLS-1$
-			multiTextEdit.apply(viewer.getDocument());
-
-			// get new element node
-			XMLNode newElementNode = (XMLNode) ContentAssistUtils.getNodeAt((StructuredTextViewer) viewer, startTagOffset);
-
-			// format new element
-			IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();
-			formatProcessor.formatNode(newElementNode);
-
-			// rename new element
-			super.apply(viewer, trigger, stateMask, newElementNode.getStartOffset() + 1);
-		} catch (MalformedTreeException e) {
-			throw new SourceEditingRuntimeException(e);
-		} catch (BadLocationException e) {
-			throw new SourceEditingRuntimeException(e);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getAdditionalProposalInfo()
-	 */
-	public String getAdditionalProposalInfo() {
-		return XMLUIPlugin.getResourceString("%SurroundWithNewElementQuickAssistProposal.0"); //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getDisplayString()
-	 */
-	public String getDisplayString() {
-		return XMLUIPlugin.getResourceString("%SurroundWithNewElementQuickAssistProposal.1"); //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.contentassist.ICompletionProposal#getImage()
-	 */
-	public Image getImage() {
-		// return JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_LOCAL);
-		return XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_ADD_CORRECTION);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/CMImageUtil.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/CMImageUtil.java
deleted file mode 100644
index 9b27ba7..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/CMImageUtil.java
+++ /dev/null
@@ -1,96 +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.xml.ui.internal.editor;
-
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.net.URLConnection;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-/**
- * @author nsd
- */
-public class CMImageUtil {
-
-	public static CMNode getDeclaration(Node node) {
-		CMNode decl = null;
-		ModelQuery mq = null;
-		switch (node.getNodeType()) {
-		case Node.ATTRIBUTE_NODE: {
-			mq = ModelQueryUtil.getModelQuery(((Attr) node).getOwnerDocument());
-			decl = mq.getCMAttributeDeclaration((Attr) node);
-		}
-		case Node.ELEMENT_NODE: {
-			mq = ModelQueryUtil.getModelQuery(node.getOwnerDocument());
-			decl = mq.getCMElementDeclaration((Element) node);
-		}
-		}
-		return decl;
-	}
-
-	public static Image getImage(CMNode cmnode) {
-		if (cmnode == null)
-			return null;
-		Image image = null;
-		ImageDescriptor descriptor = getImageDescriptor(cmnode);
-		if (descriptor != null) {
-			image = descriptor.createImage(false);
-		}
-		return image;
-	}
-
-	public static ImageDescriptor getImageDescriptor(CMNode cmnode) {
-		if (cmnode == null)
-			return null;
-		// cache CM-specified images with the XML UI plugin
-		String imageURLString = (String) cmnode.getProperty("small-icon");
-		ImageDescriptor descriptor = null;
-		if (imageURLString != null && imageURLString.length() > 0) {
-			descriptor = XMLUIPlugin.getInstance().getImageRegistry()
-					.getDescriptor(imageURLString);
-			if (descriptor == null) {
-				try {
-					URL imageURL = new URL(imageURLString);
-					URLConnection connection = imageURL.openConnection();
-					connection.setUseCaches(false);
-					ImageData data = new ImageData(connection.getInputStream());
-					descriptor = ImageDescriptor.createFromImageData(data);
-					XMLUIPlugin.getInstance().getImageRegistry().put(
-							imageURLString, descriptor);
-				} catch (MalformedURLException e) {
-					descriptor = null;
-				} catch (IOException e) {
-					descriptor = null;
-				}
-			}
-		}
-		return descriptor;
-	}
-
-	/**
-	 * 
-	 */
-	private CMImageUtil() {
-		super();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/IHelpContextIds.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/IHelpContextIds.java
deleted file mode 100644
index 072afce..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/IHelpContextIds.java
+++ /dev/null
@@ -1,43 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.editor;
-
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-/**
- * Help context ids for the XML Source Editor.
- * <p>
- * This interface contains constants only; it is not intended to be
- * implemented.
- * </p>
- *  
- */
-public interface IHelpContextIds {
-	// org.eclipse.wst.xml.ui.
-	public static final String PREFIX = XMLUIPlugin.ID + "."; //$NON-NLS-1$
-
-	// XML Source page editor
-	public static final String XML_SOURCEVIEW_HELPID = PREFIX + "exml0000"; //$NON-NLS-1$
-
-	// XML Files Preference page
-	public static final String XML_PREFWEBX_FILES_HELPID = PREFIX + "webx0060"; //$NON-NLS-1$
-	// XML Source Preference page
-	public static final String XML_PREFWEBX_SOURCE_HELPID = PREFIX + "webx0061"; //$NON-NLS-1$
-	// XML Styles Preference page
-	public static final String XML_PREFWEBX_STYLES_HELPID = PREFIX + "webx0062"; //$NON-NLS-1$
-	// XML Templates Preference page
-	public static final String XML_PREFWEBX_TEMPLATES_HELPID = PREFIX + "webx0063"; //$NON-NLS-1$
-
-	// XML Cleanup dialog
-	public static final String CLEANUP_XML_HELPID = PREFIX + "xmlm1200"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/XMLEditorPluginImageHelper.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/XMLEditorPluginImageHelper.java
deleted file mode 100644
index 32338df..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/XMLEditorPluginImageHelper.java
+++ /dev/null
@@ -1,155 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.editor;
-
-import java.util.HashMap;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-
-/**
- * Helper class to handle images provided by this plug-in.
- * 
- * NOTE: For internal use only. For images used externally, please use the
- * Shared***ImageHelper class instead.
- * 
- * @author amywu
- */
-public class XMLEditorPluginImageHelper {
-	private static XMLEditorPluginImageHelper instance = null;
-
-	/**
-	 * Gets the instance.
-	 * 
-	 * @return Returns a XMLEditorPluginImageHelper
-	 */
-	public synchronized static XMLEditorPluginImageHelper getInstance() {
-		if (instance == null)
-			instance = new XMLEditorPluginImageHelper();
-		return instance;
-	}
-
-	//	 save a descriptor for each image
-	private HashMap fImageDescRegistry = null;
-	private final String PLUGINID = XMLUIPlugin.ID;
-
-	/**
-	 * Creates an image from the given resource and adds the image to the
-	 * image registry.
-	 * 
-	 * @param resource
-	 * @return Image
-	 */
-	private Image createImage(String resource) {
-		ImageDescriptor desc = getImageDescriptor(resource);
-		Image image = null;
-
-		if (desc != null) {
-			image = desc.createImage();
-			// dont add the missing image descriptor image to the image
-			// registry
-			if (!desc.equals(ImageDescriptor.getMissingImageDescriptor()))
-				getImageRegistry().put(resource, image);
-		}
-		return image;
-	}
-
-	/**
-	 * Creates an image descriptor from the given imageFilePath and adds the
-	 * image descriptor to the image descriptor registry. If an image
-	 * descriptor could not be created, the default "missing" image descriptor
-	 * is returned but not added to the image descriptor registry.
-	 * 
-	 * @param imageFilePath
-	 * @return ImageDescriptor image descriptor for imageFilePath or default
-	 *         "missing" image descriptor if resource could not be found
-	 */
-	private ImageDescriptor createImageDescriptor(String imageFilePath) {
-		ImageDescriptor imageDescriptor = AbstractUIPlugin.imageDescriptorFromPlugin(PLUGINID, imageFilePath);
-		if (imageDescriptor != null) {
-			getImageDescriptorRegistry().put(imageFilePath, imageDescriptor);
-		} else {
-			imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
-		}
-
-		return imageDescriptor;
-	}
-
-	/**
-	 * Retrieves the image associated with resource from the image registry.
-	 * If the image cannot be retrieved, attempt to find and load the image at
-	 * the location specified in resource.
-	 * 
-	 * @param resource
-	 *            the image to retrieve
-	 * @return Image the image associated with resource or null if one could
-	 *         not be found
-	 */
-	public Image getImage(String resource) {
-		Image image = getImageRegistry().get(resource);
-		if (image == null) {
-			// create an image
-			image = createImage(resource);
-		}
-		return image;
-	}
-
-	/**
-	 * Retrieves the image descriptor associated with resource from the image
-	 * descriptor registry. If the image descriptor cannot be retrieved,
-	 * attempt to find and load the image descriptor at the location specified
-	 * in resource.
-	 * 
-	 * @param resource
-	 *            the image descriptor to retrieve
-	 * @return ImageDescriptor the image descriptor assocated with resource or
-	 *         the default "missing" image descriptor if one could not be
-	 *         found
-	 */
-	public ImageDescriptor getImageDescriptor(String resource) {
-		ImageDescriptor imageDescriptor = null;
-		Object o = getImageDescriptorRegistry().get(resource);
-		if (o == null) {
-			//create a descriptor
-			imageDescriptor = createImageDescriptor(resource);
-		} else {
-			imageDescriptor = (ImageDescriptor) o;
-		}
-		return imageDescriptor;
-	}
-
-	/**
-	 * Returns the image descriptor registry for this plugin.
-	 * 
-	 * @return HashMap - image descriptor registry for this plugin
-	 */
-	private HashMap getImageDescriptorRegistry() {
-		if (fImageDescRegistry == null)
-			fImageDescRegistry = new HashMap();
-		return fImageDescRegistry;
-	}
-
-	/**
-	 * Returns the image registry for this plugin.
-	 * 
-	 * @return ImageRegistry - image registry for this plugin
-	 */
-	private ImageRegistry getImageRegistry() {
-		return JFaceResources.getImageRegistry();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/XMLEditorPluginImages.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/XMLEditorPluginImages.java
deleted file mode 100644
index 8160f77..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/editor/XMLEditorPluginImages.java
+++ /dev/null
@@ -1,53 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.editor;
-
-/**
- * Bundle of most images used by the XML Source Editor plug-in.
- */
-public class XMLEditorPluginImages {
-
-	public static final String IMG_DTOOL_CONSTRAINOFF = "icons/full/dtool16/constrainoff.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_CONSTRAINON = "icons/full/dtool16/constrainon.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_RLDGRMR = "icons/full/dtool16/rldgrmr.gif"; //$NON-NLS-1$
-	public static final String IMG_DTOOL_VALIDATE = "icons/full/dtool16/validate.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_CONSTRAINOFF = "icons/full/etool16/constrainoff.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_CONSTRAINON = "icons/full/etool16/constrainon.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_RLDGRMR = "icons/full/etool16/rldgrmr.gif"; //$NON-NLS-1$
-	public static final String IMG_ETOOL_VALIDATE = "icons/full/etool16/validate.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ADD_CORRECTION = "icons/full/obj16/add_correction.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ATT_REQ_OBJ = "icons/full/obj16/att_req_obj.gif"; //$NON-NLS-1$
-
-	public static final String IMG_OBJ_ATTRIBUTE = "icons/full/obj16/attribute_obj.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CDATASECTION = "icons/full/obj16/cdatasection.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_COMMENT = "icons/full/obj16/comment_obj.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_CORRECTION_CHANGE = "icons/full/obj16/correction_change.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_DOCTYPE = "icons/full/obj16/doctype.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_DTDFILE = "icons/full/obj16/dtdfile.gif"; //$NON-NLS-1$	
-	public static final String IMG_OBJ_ELEMENT = "icons/full/obj16/element_obj.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ENTITY = "icons/full/obj16/entity.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ENTITY_REFERENCE = "icons/full/obj16/entity_reference.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_ENUM = "icons/full/obj16/enum.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_LOCAL_VARIABLE = "icons/full/obj16/localvariable_obj.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_NOTATION = "icons/full/obj16/notation.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_PROCESSINGINSTRUCTION = "icons/full/obj16/proinst_obj.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_GENERIC = "icons/full/obj16/tag-generic.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_TAG_MACRO = "icons/full/obj16/tag-macro.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_TXTEXT = "icons/full/obj16/text.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_WARNING_OBJ = "icons/full/obj16/warning_obj.gif"; //$NON-NLS-1$
-	public static final String IMG_OBJ_XSDFILE = "icons/full/obj16/XSDFile.gif"; //$NON-NLS-1$
-
-	public static final String IMG_OVR_ERROR = "icons/full/ovr16/error_ovr.gif"; //$NON-NLS-1$
-	public static final String IMG_OVR_STALE_ERROR = "icons/full/ovr16/stale_error_ovr.gif"; //$NON-NLS-1$
-	public static final String IMG_OVR_WARN = "icons/full/ovr16/warn_ovr.gif"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/ExternalFileEditorInput.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/ExternalFileEditorInput.java
deleted file mode 100644
index 63e60c3..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/ExternalFileEditorInput.java
+++ /dev/null
@@ -1,146 +0,0 @@
-package org.eclipse.wst.xml.ui.internal.hyperlink;
-
-import java.io.File;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-import org.eclipse.ui.editors.text.ILocationProvider;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * EditorInput for external files. Copied from
- * org.eclipse.ui.internal.editors.text.JavaFileEditorInput
- */
-class ExternalFileEditorInput implements IEditorInput, ILocationProvider {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-
-	/**
-	 * The workbench adapter which simply provides the label.
-	 * 
-	 * @since 3.1
-	 */
-	private class WorkbenchAdapter implements IWorkbenchAdapter {
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-		 */
-		public Object[] getChildren(Object o) {
-			return null;
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-		 */
-		public ImageDescriptor getImageDescriptor(Object object) {
-			return null;
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-		 */
-		public String getLabel(Object o) {
-			return ((ExternalFileEditorInput) o).getName();
-		}
-
-		/*
-		 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-		 */
-		public Object getParent(Object o) {
-			return null;
-		}
-	}
-
-	private File fFile;
-	private WorkbenchAdapter fWorkbenchAdapter = new WorkbenchAdapter();
-
-	public ExternalFileEditorInput(File file) {
-		super();
-		fFile = file;
-		fWorkbenchAdapter = new WorkbenchAdapter();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#exists()
-	 */
-	public boolean exists() {
-		return fFile.exists();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		return null;
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getName()
-	 */
-	public String getName() {
-		return fFile.getName();
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getPersistable()
-	 */
-	public IPersistableElement getPersistable() {
-		return null;
-	}
-
-	/*
-	 * @see org.eclipse.ui.IEditorInput#getToolTipText()
-	 */
-	public String getToolTipText() {
-		return fFile.getAbsolutePath();
-	}
-
-	/*
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		if (ILocationProvider.class.equals(adapter))
-			return this;
-		if (IWorkbenchAdapter.class.equals(adapter))
-			return fWorkbenchAdapter;
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-
-	/*
-	 * @see org.eclipse.ui.editors.text.ILocationProvider#getPath(java.lang.Object)
-	 */
-	public IPath getPath(Object element) {
-		if (element instanceof ExternalFileEditorInput) {
-			ExternalFileEditorInput input = (ExternalFileEditorInput) element;
-			return Path.fromOSString(input.fFile.getAbsolutePath());
-		}
-		return null;
-	}
-
-	/*
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object o) {
-		if (o == this)
-			return true;
-
-		if (o instanceof ExternalFileEditorInput) {
-			ExternalFileEditorInput input = (ExternalFileEditorInput) o;
-			return fFile.equals(input.fFile);
-		}
-
-		return false;
-	}
-
-	/*
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return fFile.hashCode();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/ExternalFileHyperlink.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/ExternalFileHyperlink.java
deleted file mode 100644
index b2d1e4d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/ExternalFileHyperlink.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package org.eclipse.wst.xml.ui.internal.hyperlink;
-
-import java.io.File;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IDE;
-
-/**
- * Hyperlink for external files.
- */
-class ExternalFileHyperlink implements IHyperlink {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-	
-	private IRegion fHyperlinkRegion;
-	private File fHyperlinkFile;
-
-	public ExternalFileHyperlink(IRegion region, File file) {
-		fHyperlinkFile = file;
-		fHyperlinkRegion = region;
-	}
-	
-	public IRegion getHyperlinkRegion() {
-		return fHyperlinkRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public void open() {
-		if (fHyperlinkFile != null) {
-			IEditorInput input = new ExternalFileEditorInput(fHyperlinkFile);
-			IEditorDescriptor descriptor;
-			try {
-				descriptor = IDE.getEditorDescriptor(input.getName());
-				if (descriptor != null) {
-					IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-					IDE.openEditor(page, input, descriptor.getId(), true);
-				}
-			}
-			catch (PartInitException e) {
-				Logger.log(Logger.WARNING_DEBUG, e.getMessage(), e);
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/WorkspaceFileHyperlink.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/WorkspaceFileHyperlink.java
deleted file mode 100644
index 23fe9cb..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/WorkspaceFileHyperlink.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package org.eclipse.wst.xml.ui.internal.hyperlink;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.xml.ui.internal.Logger;
-
-/**
- * Hyperlink for files within the workspace. (As long as there is an IFile,
- * this can be used) Opens the default editor for the file.
- */
-class WorkspaceFileHyperlink implements IHyperlink {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-
-	private IRegion fRegion;
-	private IFile fFile;
-	private IRegion fHighlightRange;
-
-	public WorkspaceFileHyperlink(IRegion region, IFile file) {
-		fRegion = region;
-		fFile = file;
-	}
-
-	public WorkspaceFileHyperlink(IRegion region, IFile file, IRegion range) {
-		fRegion = region;
-		fFile = file;
-		fHighlightRange = range;
-	}
-
-	public IRegion getHyperlinkRegion() {
-		return fRegion;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getTypeLabel()
-	 */
-	public String getTypeLabel() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.hyperlink.IHyperlink#getHyperlinkText()
-	 */
-	public String getHyperlinkText() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public void open() {
-		if (fFile != null && fFile.exists()) {
-			try {
-				IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
-				IEditorPart editor = IDE.openEditor(page, fFile, true);
-				// highlight range in editor if possible
-				if (fHighlightRange != null && editor instanceof ITextEditor) {
-					((ITextEditor) editor).setHighlightRange(fHighlightRange.getOffset(), fHighlightRange.getLength(), true);
-				}
-			}
-			catch (PartInitException pie) {
-				Logger.log(Logger.WARNING_DEBUG, pie.getMessage(), pie);
-			}
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/XMLHyperlinkDetector.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/XMLHyperlinkDetector.java
deleted file mode 100644
index 3d25283..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/hyperlink/XMLHyperlinkDetector.java
+++ /dev/null
@@ -1,472 +0,0 @@
-package org.eclipse.wst.xml.ui.internal.hyperlink;
-
-import java.io.File;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.text.hyperlink.IHyperlink;
-import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
-import org.eclipse.jface.text.hyperlink.URLHyperlink;
-import org.eclipse.wst.common.uriresolver.URIResolverPlugin;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-/**
- * Detects hyperlinks in XML tags. Includes detection in DOCTYPE and attribute
- * values. Resolves references to schemas, dtds, etc using the Common URI
- * Resolver.
- * 
- */
-public class XMLHyperlinkDetector implements IHyperlinkDetector {
-	// copies of this class exist in:
-	// org.eclipse.wst.xml.ui.internal.hyperlink
-	// org.eclipse.wst.html.ui.internal.hyperlink
-	// org.eclipse.jst.jsp.ui.internal.hyperlink
-	
-	private final String NO_NAMESPACE_SCHEMA_LOCATION = "noNamespaceSchemaLocation"; //$NON-NLS-1$
-	private final String SCHEMA_LOCATION = "schemaLocation"; //$NON-NLS-1$
-	private final String XMLNS = "xmlns"; //$NON-NLS-1$
-	private final String XSI_NAMESPACE_URI = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$
-	private final String HTTP_PROTOCOL = "http://";//$NON-NLS-1$
-
-	public IHyperlink[] detectHyperlinks(ITextViewer textViewer, IRegion region, boolean canShowMultipleHyperlinks) {
-		// for now, only capable of creating 1 hyperlink
-		List hyperlinks = new ArrayList(0);
-
-		if (region != null && textViewer != null) {
-			IDocument document = textViewer.getDocument();
-			Node currentNode = getCurrentNode(document, region.getOffset());
-			if (currentNode != null) {
-				String uriString = null;
-				if (currentNode.getNodeType() == Node.DOCUMENT_TYPE_NODE) {
-					// doctype nodes
-					uriString = getURIString(currentNode, document);
-				}
-				else if (currentNode.getNodeType() == Node.ELEMENT_NODE) {
-					// element nodes
-					Attr currentAttr = getCurrentAttrNode(currentNode, region.getOffset());
-					if (currentAttr != null) {
-						// try to find link for current attribute
-						// resolve attribute value
-						uriString = getURIString(currentAttr, document);
-						// verify validity of uri string
-						if (!isValidURI(uriString))
-							// reset current attribute
-							currentAttr = null;
-					}
-					if (currentAttr == null) {
-						// try to find a linkable attribute within element
-						currentAttr = getLinkableAttr((Element) currentNode);
-						if (currentAttr != null) {
-							uriString = getURIString(currentAttr, document);
-						}
-					}
-					currentNode = currentAttr;
-				}
-				// try to create hyperlink from information gathered
-				if (uriString != null && currentNode != null && isValidURI(uriString)) {
-					IRegion hyperlinkRegion = getHyperlinkRegion(currentNode);
-					IHyperlink hyperlink = createHyperlink(uriString, hyperlinkRegion, document, currentNode);
-					if (hyperlink != null) {
-						hyperlinks.add(hyperlink);
-					}
-				}
-			}
-		}
-		if (hyperlinks.size() == 0)
-			return null;
-		return (IHyperlink[]) hyperlinks.toArray(new IHyperlink[0]);
-	}
-
-	/**
-	 * Create the appropriate hyperlink
-	 * 
-	 * @param uriString
-	 * @param hyperlinkRegion
-	 * @return IHyperlink
-	 */
-	private IHyperlink createHyperlink(String uriString, IRegion hyperlinkRegion, IDocument document, Node node) {
-		IHyperlink link = null;
-
-		if (uriString != null) {
-			String temp = uriString.toLowerCase();
-			if (temp.startsWith(HTTP_PROTOCOL)) {
-				// this is a URLHyperlink since this is a web address
-				link = new URLHyperlink(hyperlinkRegion, uriString);
-			}
-			else {
-				// try to locate the file in the workspace
-				IFile file = getFile(uriString);
-				if (file != null && file.exists()) {
-					// this is a WorkspaceFileHyperlink since file exists in
-					// workspace
-					link = new WorkspaceFileHyperlink(hyperlinkRegion, file);
-				}
-				else {
-					// this is an ExternalFileHyperlink since file does not
-					// exist
-					// in workspace
-					File externalFile = new File(uriString);
-					link = new ExternalFileHyperlink(hyperlinkRegion, externalFile);
-				}
-			}
-		}
-
-		return link;
-	}
-
-	private IRegion getHyperlinkRegion(Node node) {
-		IRegion hyperRegion = null;
-
-		if (node != null) {
-			short nodeType = node.getNodeType();
-			if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-				// handle doc type node
-				XMLNode docNode = (XMLNode) node;
-				hyperRegion = new Region(docNode.getStartOffset(), docNode.getEndOffset() - docNode.getStartOffset());
-			}
-			else if (nodeType == Node.ATTRIBUTE_NODE) {
-				// handle attribute nodes
-				XMLAttr att = (XMLAttr) node;
-				// do not include quotes in attribute value region
-				int regOffset = att.getValueRegionStartOffset();
-				int regLength = att.getValueRegion().getTextLength();
-				String attValue = att.getValueRegionText();
-				if (StringUtils.isQuoted(attValue)) {
-					regOffset = ++regOffset;
-					regLength = regLength - 2;
-				}
-				hyperRegion = new Region(regOffset, regLength);
-			}
-		}
-		return hyperRegion;
-	}
-
-	/**
-	 * Returns the URI string
-	 * 
-	 * @param node -
-	 *            assumes not null
-	 */
-	private String getURIString(Node node, IDocument document) {
-		String resolvedURI = null;
-		// need the base location, publicId, and systemId for URIResolver
-		String baseLoc = null;
-		String publicId = null;
-		String systemId = null;
-
-		short nodeType = node.getNodeType();
-		// handle doc type node
-		if (nodeType == Node.DOCUMENT_TYPE_NODE) {
-			baseLoc = getBaseLocation(document);
-			publicId = ((DocumentType) node).getPublicId();
-			systemId = ((DocumentType) node).getSystemId();
-		}
-		else if (nodeType == Node.ATTRIBUTE_NODE) {
-			// handle attribute node
-			Attr attrNode = (Attr) node;
-			baseLoc = getBaseLocation(document);
-			String attrName = attrNode.getName();
-			String attrValue = attrNode.getValue();
-			attrValue = StringUtils.strip(attrValue);
-
-			// handle schemaLocation attribute
-			String prefix = DOMNamespaceHelper.getPrefix(attrName);
-			String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-			if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName))) {
-				publicId = attrValue;
-				systemId = getLocationHint(attrNode.getOwnerElement(), publicId);
-			}
-			else if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attrNode))) && (SCHEMA_LOCATION.equals(unprefixedName))) {
-				// for now just use the first pair
-				// need to look into being more precise
-				StringTokenizer st = new StringTokenizer(attrValue);
-				publicId = st.hasMoreTokens() ? st.nextToken() : null;
-				systemId = st.hasMoreTokens() ? st.nextToken() : null;
-				// else check if xmlns publicId = value
-			}
-			else {
-				systemId = attrValue;
-			}
-		}
-
-		resolvedURI = resolveURI(baseLoc, publicId, systemId);
-		return resolvedURI;
-	}
-
-	/**
-	 * Returns an IFile from the given uri if possible, null if cannot find
-	 * file from uri.
-	 * 
-	 * @param fileString
-	 *            file system path
-	 * @return returns IFile if fileString exists in the workspace
-	 */
-	private IFile getFile(String fileString) {
-		IFile file = null;
-
-		if (fileString != null) {
-			IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(new Path(fileString));
-			for (int i = 0; i < files.length && file == null; i++)
-				if (files[i].exists())
-					file = files[i];
-		}
-
-		return file;
-	}
-
-	/**
-	 * Checks to see if the given attribute is openable. Attribute is openable
-	 * if it is a namespace declaration attribute or if the attribute value is
-	 * of type URI.
-	 * 
-	 * @param attr
-	 *            cannot be null
-	 * @param cmElement
-	 *            CMElementDeclaration associated with the attribute (can be
-	 *            null)
-	 * @return true if this attribute is "openOn-able" false otherwise
-	 */
-	private boolean isLinkableAttr(Attr attr, CMElementDeclaration cmElement) {
-		String attrName = attr.getName();
-		String prefix = DOMNamespaceHelper.getPrefix(attrName);
-		String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-		// determine if attribute is namespace declaration
-		if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName)))
-			return true;
-
-		// determine if attribute contains schema location
-		if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attr))) && ((SCHEMA_LOCATION.equals(unprefixedName)) || (NO_NAMESPACE_SCHEMA_LOCATION.equals(unprefixedName))))
-			return true;
-
-		// determine if attribute value is of type URI
-		if (cmElement != null) {
-			CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) cmElement.getAttributes().getNamedItem(attrName);
-			if ((attrDecl != null) && (attrDecl.getAttrType() != null) && (CMDataType.URI.equals(attrDecl.getAttrType().getDataTypeName()))) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Attempts to find an attribute within element that is openable.
-	 * 
-	 * @param element -
-	 *            cannot be null
-	 * @return Attr attribute that can be used for open on, null if no
-	 *         attribute could be found
-	 */
-	private Attr getLinkableAttr(Element element) {
-		CMElementDeclaration ed = getCMElementDeclaration(element);
-		// get the list of attributes for this node
-		NamedNodeMap attrs = element.getAttributes();
-		for (int i = 0; i < attrs.getLength(); ++i) {
-			// check if this attribute is "openOn-able"
-			Attr att = (Attr) attrs.item(i);
-			if (isLinkableAttr(att, ed)) {
-				return att;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Get the CMElementDeclaration for an element
-	 * 
-	 * @param element
-	 * @return CMElementDeclaration
-	 */
-	private CMElementDeclaration getCMElementDeclaration(Element element) {
-		CMElementDeclaration ed = null;
-
-		ModelQuery mq = ModelQueryUtil.getModelQuery(element.getOwnerDocument());
-		if (mq != null) {
-			ed = mq.getCMElementDeclaration(element);
-		}
-		return ed;
-	}
-
-	/**
-	 * Returns the attribute node within node at offset
-	 * 
-	 * @param node
-	 * @param offset
-	 * @return Attr
-	 */
-	private Attr getCurrentAttrNode(Node node, int offset) {
-		if ((node instanceof IndexedRegion) && ((IndexedRegion) node).contains(offset) && (node.hasAttributes())) {
-			NamedNodeMap attrs = node.getAttributes();
-			// go through each attribute in node and if attribute contains
-			// offset, return that attribute
-			for (int i = 0; i < attrs.getLength(); ++i) {
-				// assumption that if parent node is of type IndexedRegion,
-				// then its attributes will also be of type IndexedRegion
-				IndexedRegion attRegion = (IndexedRegion) attrs.item(i);
-				if (attRegion.contains(offset)) {
-					return (Attr) attrs.item(i);
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the node the cursor is currently on in the document. null if no
-	 * node is selected
-	 * 
-	 * @param offset
-	 * @return Node either element, doctype, text, or null
-	 */
-	private Node getCurrentNode(IDocument document, int offset) {
-		// get the current node at the offset (returns either: element,
-		// doctype, text)
-		IndexedRegion inode = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			inode = sModel.getIndexedRegion(offset);
-			if (inode == null)
-				inode = sModel.getIndexedRegion(offset - 1);
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-
-		if (inode instanceof Node) {
-			return (Node) inode;
-		}
-		return null;
-	}
-
-	/**
-	 * Get the base location from the current model (local file system)
-	 */
-	private String getBaseLocation(IDocument document) {
-		String baseLoc = null;
-
-		// get the base location from the current model
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(document);
-			if (sModel != null) {
-				IPath location = new Path(sModel.getBaseLocation());
-				if (location.toFile().exists()) {
-					baseLoc = location.toString();
-				}
-				else {
-					IPath basePath = new Path(sModel.getBaseLocation());
-					if(basePath.segmentCount() > 1)
-						baseLoc = ResourcesPlugin.getWorkspace().getRoot().getFile(basePath).getLocation().toString();
-					else
-						baseLoc = ResourcesPlugin.getWorkspace().getRoot().getLocation().append(basePath).toString();
-				}
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-		return baseLoc;
-	}
-
-	/**
-	 * Checks whether the given uriString is really pointing to a file
-	 * 
-	 * @param uriString
-	 * @return boolean
-	 */
-	private boolean isValidURI(String uriString) {
-		boolean isValid = false;
-
-		if (uriString != null) {
-			// first do a quick check to see if this is some sort of http://
-			String tempString = uriString.toLowerCase();
-			if (tempString.startsWith(HTTP_PROTOCOL))
-				isValid = true;
-			else {
-				File file = new File(uriString);
-				try {
-					URI uri = new URI(uriString);
-					file = new File(uri);
-				}
-				catch (URISyntaxException e) {
-					// it is okay that a uri could not be created out of
-					// uriString
-				}
-				catch (IllegalArgumentException e) {
-					// it is okay that file could not be created out of uri
-				}
-				isValid = file.exists();
-			}
-		}
-		return isValid;
-	}
-
-	/**
-	 * Resolves the given URI information
-	 * 
-	 * @param baseLocation
-	 * @param publicId
-	 * @param systemId
-	 * @return String resolved uri.
-	 */
-	private String resolveURI(String baseLocation, String publicId, String systemId) {
-		// dont resolve if there's nothing to resolve
-		if ((baseLocation == null) && (publicId == null) && (systemId == null))
-			return null;
-		return URIResolverPlugin.createResolver().resolve(baseLocation, publicId, systemId);
-	}
-
-	/**
-	 * Find the location hint for the given namespaceURI if it exists
-	 * 
-	 * @param elementNode -
-	 *            cannot be null
-	 * @param namespaceURI -
-	 *            cannot be null
-	 * @return location hint (systemId) if it was found, null otherwise
-	 */
-	private String getLocationHint(Element elementNode, String namespaceURI) {
-		Attr schemaLocNode = elementNode.getAttributeNodeNS(XSI_NAMESPACE_URI, SCHEMA_LOCATION);
-		if (schemaLocNode != null) {
-			StringTokenizer st = new StringTokenizer(schemaLocNode.getValue());
-			while (st.hasMoreTokens()) {
-				String publicId = st.hasMoreTokens() ? st.nextToken() : null;
-				String systemId = st.hasMoreTokens() ? st.nextToken() : null;
-				// found location hint
-				if (namespaceURI.equalsIgnoreCase(publicId))
-					return systemId;
-			}
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLUIPreferenceInitializer.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLUIPreferenceInitializer.java
deleted file mode 100644
index 47d0387..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLUIPreferenceInitializer.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package org.eclipse.wst.xml.ui.internal.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.wst.sse.ui.preferences.ui.ColorHelper;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-
-/**
- * Sets default values for XML UI preferences
- */
-public class XMLUIPreferenceInitializer extends AbstractPreferenceInitializer {
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
-	 */
-	public void initializeDefaultPreferences() {
-		IPreferenceStore store = XMLUIPlugin.getDefault().getPreferenceStore();
-		
-		store.setDefault(XMLUIPreferenceNames.AUTO_PROPOSE, true);
-		store.setDefault(XMLUIPreferenceNames.AUTO_PROPOSE_CODE, "<"); //$NON-NLS-1$
-
-		store.setDefault(
-					XMLUIPreferenceNames.USE_INFERRED_GRAMMAR, true);
-
-		// XML Style Preferences
-		String NOBACKGROUNDBOLD = " | null | false"; //$NON-NLS-1$
-		String styleValue = ColorHelper.getColorString(127, 0, 127)
-				+ NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_NAME, styleValue);
-
-		styleValue = ColorHelper.getColorString(42, 0, 255) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE, styleValue);
-
-		styleValue = "null" + NOBACKGROUNDBOLD; //$NON-NLS-1$
-		store.setDefault(IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS, styleValue); // specified
-		// value
-		// is
-		// black;
-		// leaving
-		// as
-		// widget
-		// default
-
-		styleValue = ColorHelper.getColorString(63, 95, 191) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.COMMENT_BORDER, styleValue);
-		store.setDefault(IStyleConstantsXML.COMMENT_TEXT, styleValue);
-
-		styleValue = ColorHelper.getColorString(0, 128, 128) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.DECL_BORDER, styleValue);
-
-		styleValue = ColorHelper.getColorString(0, 0, 128) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.DOCTYPE_NAME, styleValue);
-		store.setDefault(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF,
-				styleValue);
-
-		styleValue = ColorHelper.getColorString(128, 128, 128)
-				+ NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID, styleValue);
-
-		styleValue = ColorHelper.getColorString(63, 127, 95) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF,
-				styleValue);
-
-		styleValue = "null" + NOBACKGROUNDBOLD; //$NON-NLS-1$
-		store.setDefault(IStyleConstantsXML.XML_CONTENT, styleValue); // specified
-		// value
-		// is
-		// black;
-		// leaving
-		// as
-		// widget
-		// default
-
-		styleValue = ColorHelper.getColorString(0, 128, 128) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_BORDER, styleValue);
-
-		styleValue = ColorHelper.getColorString(63, 127, 127)
-				+ NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.TAG_NAME, styleValue);
-
-		styleValue = ColorHelper.getColorString(0, 128, 128) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.PI_BORDER, styleValue);
-
-		styleValue = "null" + NOBACKGROUNDBOLD; //$NON-NLS-1$
-		store.setDefault(IStyleConstantsXML.PI_CONTENT, styleValue); // specified
-		// value
-		// is
-		// black;
-		// leaving
-		// as
-		// widget
-		// default
-
-		styleValue = ColorHelper.getColorString(0, 128, 128) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.CDATA_BORDER, styleValue);
-
-		styleValue = ColorHelper.getColorString(0, 0, 0) + NOBACKGROUNDBOLD;
-		store.setDefault(IStyleConstantsXML.CDATA_TEXT, styleValue);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLUIPreferenceNames.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLUIPreferenceNames.java
deleted file mode 100644
index a4e1e76..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/preferences/XMLUIPreferenceNames.java
+++ /dev/null
@@ -1,68 +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.xml.ui.internal.preferences;
-
-/**
- * Preference keys for XML UI
- */
-public class XMLUIPreferenceNames {
-	/**
-	 * A named preference that controls if code assist gets auto activated.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String AUTO_PROPOSE = getAutoProposeKey();
-
-	private static String getAutoProposeKey() {
-		return "autoPropose";//$NON-NLS-1$
-	}
-
-	/**
-	 * A named preference that holds the characters that auto activate code
-	 * assist.
-	 * <p>
-	 * Value is of type <code>String</code>. All characters that trigger
-	 * auto code assist.
-	 * </p>
-	 */
-	public static final String AUTO_PROPOSE_CODE = getAutoProposeCodeKey();
-
-	private static String getAutoProposeCodeKey() {
-		return "autoProposeCode";//$NON-NLS-1$
-	}
-
-	/**
-	 * The key to store customized templates.
-	 * <p>
-	 * Value is of type <code>String</code>.
-	 * </p>
-	 */
-	public static final String TEMPLATES_KEY = getTemplatesKey();
-
-	private static String getTemplatesKey() {
-		return "org.eclipse.wst.sse.ui.custom_templates"; //$NON-NLS-1$
-	}
-
-	/**
-	 * A named preference that controls whether or grammar should be inferred
-	 * or not.
-	 * <p>
-	 * Value is of type <code>Boolean</code>.
-	 * </p>
-	 */
-	public static final String USE_INFERRED_GRAMMAR = getUseInferredGrammarKey();
-
-	private static String getUseInferredGrammarKey() {
-		return "useInferredGrammar"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionModelNodeAdapterFactoryXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionModelNodeAdapterFactoryXML.java
deleted file mode 100644
index edb91c1..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionModelNodeAdapterFactoryXML.java
+++ /dev/null
@@ -1,57 +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.xml.ui.internal.projection;
-
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.w3c.dom.Node;
-
-public class ProjectionModelNodeAdapterFactoryXML extends AbstractAdapterFactory {
-	private ProjectionViewer fProjectionViewer;
-
-	public ProjectionModelNodeAdapterFactoryXML() {
-		super(ProjectionModelNodeAdapterXML.class, true);
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		ProjectionModelNodeAdapterXML adapter = null;
-
-		// create adapter for every element tag
-		if ((fProjectionViewer != null) && (target instanceof Node) && ((Node) target).getNodeType() == Node.ELEMENT_NODE) {
-			adapter = new ProjectionModelNodeAdapterXML(this);
-			adapter.updateAdapter((Node) target);
-		}
-
-		return adapter;
-	}
-
-	ProjectionViewer getProjectionViewer() {
-		return fProjectionViewer;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.core.AbstractAdapterFactory#release()
-	 */
-	public void release() {
-		fProjectionViewer = null;
-
-		super.release();
-	}
-
-	void setProjectionViewer(ProjectionViewer viewer) {
-		fProjectionViewer = viewer;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionModelNodeAdapterXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionModelNodeAdapterXML.java
deleted file mode 100644
index 7817f0d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/ProjectionModelNodeAdapterXML.java
+++ /dev/null
@@ -1,273 +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.xml.ui.internal.projection;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotation;
-import org.eclipse.jface.text.source.projection.ProjectionAnnotationModel;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.w3c.dom.Node;
-
-/**
- * Updates projection annotation model with projection annotations for this
- * adapter node's children
- */
-public class ProjectionModelNodeAdapterXML implements INodeAdapter {
-
-	private class TagProjectionAnnotation extends ProjectionAnnotation {
-		private boolean fIsVisible = false; /* workaround for BUG85874 */
-		private Node fNode;
-
-		public TagProjectionAnnotation(Node node, boolean isCollapsed) {
-			super(isCollapsed);
-			fNode = node;
-		}
-
-		public Node getNode() {
-			return fNode;
-		}
-
-		public void setNode(Node node) {
-			fNode = node;
-		}
-		
-		/**
-		 * Does not paint hidden annotations. Annotations are hidden when they
-		 * only span one line.
-		 * 
-		 * @see ProjectionAnnotation#paint(org.eclipse.swt.graphics.GC,
-		 *      org.eclipse.swt.widgets.Canvas,
-		 *      org.eclipse.swt.graphics.Rectangle)
-		 */
-		public void paint(GC gc, Canvas canvas, Rectangle rectangle) {
-			/* workaround for BUG85874 */
-			/*
-			 * only need to check annotations that are expanded because hidden
-			 * annotations should never have been given the chance to
-			 * collapse.
-			 */
-			if (!isCollapsed()) {
-				// working with rectangle, so need the styledtext line height
-				int lineHeight = fAdapterFactory.getProjectionViewer().getTextWidget().getLineHeight();
-
-				// do not draw annotations that only span one line and mark
-				// them as not visible
-				if ((rectangle.height / lineHeight) <= 1) {
-					fIsVisible = false;
-					return;
-				}
-			}
-			fIsVisible = true;
-			super.paint(gc, canvas, rectangle);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jface.text.source.projection.ProjectionAnnotation#markCollapsed()
-		 */
-		public void markCollapsed() {
-			/* workaround for BUG85874 */
-			// do not mark collapsed if annotation is not visible
-			if (fIsVisible)
-				super.markCollapsed();
-		}
-	}
-
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.wst.xml.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	ProjectionModelNodeAdapterFactoryXML fAdapterFactory;
-	private Map fTagAnnotations = new HashMap();
-
-	public ProjectionModelNodeAdapterXML(ProjectionModelNodeAdapterFactoryXML factory) {
-		fAdapterFactory = factory;
-	}
-
-	/**
-	 * Create a projection position from the given node. Able to get
-	 * projection position if node isNodeProjectable.
-	 * 
-	 * @param node
-	 * @return null if no projection position possible, a Position otherwise
-	 */
-	private Position createProjectionPosition(Node node) {
-		Position pos = null;
-		if (isNodeProjectable(node) && node instanceof IndexedRegion) {
-			IDocument document = fAdapterFactory.getProjectionViewer().getDocument();
-			if (document != null) {
-				IndexedRegion inode = (IndexedRegion) node;
-				int start = inode.getStartOffset();
-				int end = inode.getEndOffset();
-				if (start >= 0 && start < end) {
-					try {
-//						// region-based
-//						// extra line when collapsed, but no region increase when add newline
-//						pos = new Position(start, end - start);
-						
-//						// line-based
-//						// extra line when collapsed, but no region increase when add newline
-//						IRegion startLineRegion = document.getLineInformationOfOffset(start);
-//						IRegion endLineRegion = document.getLineInformationOfOffset(end);
-//						int startOffset = startLineRegion.getOffset();
-//						int endOffset = endLineRegion.getOffset() + endLineRegion.getLength();
-//						if (endOffset > startOffset) {
-//							pos = new Position(startOffset, endOffset - startOffset);
-//						}
-						
-						// line-based
-						// no extra line when collapsed, but region increase when add newline
-						int startLine = document.getLineOfOffset(start);
-						int endLine = document.getLineOfOffset(end);
-						if (endLine + 1 < document.getNumberOfLines()) {
-							int offset = document.getLineOffset(startLine);
-							int endOffset = document.getLineOffset(endLine + 1);
-							pos = new Position(offset, endOffset - offset);
-						}
-					} catch (BadLocationException x) {
-						Logger.log(Logger.WARNING_DEBUG, null, x);
-					}
-				}
-			}
-		}
-		return pos;
-	}
-
-	/**
-	 * Find TagProjectionAnnotation for node in the current list of projection
-	 * annotations for this adapter
-	 * 
-	 * @param node
-	 * @return TagProjectionAnnotation
-	 */
-	private TagProjectionAnnotation getExistingAnnotation(Node node) {
-		TagProjectionAnnotation anno = null;
-
-		if ((node != null) && (!fTagAnnotations.isEmpty())) {
-			Iterator it = fTagAnnotations.keySet().iterator();
-			while (it.hasNext() && anno == null) {
-				TagProjectionAnnotation a = (TagProjectionAnnotation) it.next();
-				Node n = a.getNode();
-				if (node.equals(n)) {
-					anno = a;
-				}
-			}
-		}
-		return anno;
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return type == ProjectionModelNodeAdapterXML.class;
-	}
-
-	/**
-	 * Returns true if node is a node type able to fold
-	 * 
-	 * @param node
-	 * @return boolean true if node is projectable, false otherwise
-	 */
-	private boolean isNodeProjectable(Node node) {
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			return true;
-		}
-		return false;
-	}
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-		// check if folding is even enabled, if not, just ignore notifyChanged
-		// events
-		if (fAdapterFactory.getProjectionViewer() == null) {
-			return;
-		}
-
-		if ((eventType == INodeNotifier.STRUCTURE_CHANGED) && (notifier instanceof Node)) {
-			updateAdapter((Node) notifier);
-		}
-	}
-
-	/**
-	 * Update the projection annotation of all the nodes that are children of
-	 * node
-	 * 
-	 * @param node
-	 */
-	void updateAdapter(Node node) {
-		long start = System.currentTimeMillis();
-
-		Map additions = new HashMap();
-		Map projectionAnnotations = new HashMap();
-
-		// go through immediate child nodes and figure out projection
-		// model annotations
-		if (node != null) {
-			Node childNode = node.getFirstChild();
-			while (childNode != null) {
-				Position newPos = createProjectionPosition(childNode);
-				if (newPos != null) {
-					TagProjectionAnnotation newAnnotation = new TagProjectionAnnotation(childNode, false);
-					TagProjectionAnnotation existing = getExistingAnnotation(childNode);
-					if (existing == null) {
-						// add to map containing all annotations for this
-						// adapter
-						projectionAnnotations.put(newAnnotation, newPos);
-						// add to map containing annotations to add
-						additions.put(newAnnotation, newPos);
-					} else {
-						// add to map containing all annotations for this
-						// adapter
-						projectionAnnotations.put(existing, newPos);
-						// remove from map containing annotations to delete
-						fTagAnnotations.remove(existing);
-					}
-				}
-				childNode = childNode.getNextSibling();
-			}
-
-			// in the end, want to delete anything leftover in old list, add
-			// everything in additions, and update everything in
-			// projectionAnnotations
-			ProjectionAnnotation[] oldList = null;
-			if (!fTagAnnotations.isEmpty()) {
-				oldList = (ProjectionAnnotation[]) fTagAnnotations.keySet().toArray(new ProjectionAnnotation[0]);
-			}
-			ProjectionAnnotation[] modifyList = null;
-			if (!projectionAnnotations.isEmpty()) {
-				modifyList = (ProjectionAnnotation[]) projectionAnnotations.keySet().toArray(new ProjectionAnnotation[0]);
-			}
-			ProjectionViewer viewer = fAdapterFactory.getProjectionViewer();
-			ProjectionAnnotationModel annotationModel = viewer.getProjectionAnnotationModel();
-			annotationModel.modifyAnnotations(oldList, additions, modifyList);
-		}
-
-		// save new list of annotations
-		fTagAnnotations = projectionAnnotations;
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf) {
-			String nodeName = node != null ? node.getNodeName() : "null";
-			System.out.println("ProjectionModelNodeAdapterXML.updateAdapter (" + nodeName + "):" + (end - start));
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/StructuredTextFoldingProviderXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/StructuredTextFoldingProviderXML.java
deleted file mode 100644
index 39a109a..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/projection/StructuredTextFoldingProviderXML.java
+++ /dev/null
@@ -1,214 +0,0 @@
-package org.eclipse.wst.xml.ui.internal.projection;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.source.projection.IProjectionListener;
-import org.eclipse.jface.text.source.projection.ProjectionViewer;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.PropagatingAdapter;
-import org.eclipse.wst.sse.ui.internal.projection.IStructuredTextFoldingProvider;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-/**
- * Updates the projection model of a structured model for XML.
- */
-public class StructuredTextFoldingProviderXML implements IStructuredTextFoldingProvider, IProjectionListener {
-	private final static boolean debugProjectionPerf = "true".equalsIgnoreCase(Platform.getDebugOption("org.eclipse.wst.xml.ui/projectionperf")); //$NON-NLS-1$ //$NON-NLS-2$
-
-	private IDocument fDocument;
-	private ProjectionViewer fViewer;
-
-	/**
-	 * Adds an adapter to node and its children
-	 * 
-	 * @param node
-	 * @param level
-	 */
-	private void addAdapterToNodeAndChildren(Node node, int level) {
-		if (node instanceof INodeNotifier) {
-			INodeNotifier notifier = (INodeNotifier) node;
-
-			// try and get the adapter for the current node and update the
-			// adapter with projection information
-			ProjectionModelNodeAdapterXML adapter = (ProjectionModelNodeAdapterXML) notifier.getExistingAdapter(ProjectionModelNodeAdapterXML.class);
-			if (adapter != null) {
-				adapter.updateAdapter(node);
-			}
-			else {
-				// just call getadapter so the adapter is created and
-				// automatically initialized
-				notifier.getAdapterFor(ProjectionModelNodeAdapterXML.class);
-			}
-
-			Node nextChild = node.getFirstChild();
-			while (nextChild != null) {
-				Node childNode = nextChild;
-				nextChild = childNode.getNextSibling();
-
-				addAdapterToNodeAndChildren(childNode, level + 1);
-			}
-		}
-	}
-
-	/**
-	 * Goes through every node and adds an adapter onto each for tracking
-	 * purposes
-	 */
-	private void addAllAdapters() {
-		long start = System.currentTimeMillis();
-
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel != null) {
-				int startOffset = 0;
-				IndexedRegion startNode = sModel.getIndexedRegion(startOffset);
-				if (startNode instanceof Node) {
-					int level = 0;
-					Node nextSibling = (Node) startNode;
-					while (nextSibling != null) {
-						Node currentNode = nextSibling;
-						nextSibling = currentNode.getNextSibling();
-
-						addAdapterToNodeAndChildren(currentNode, level);
-					}
-				}
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderXML.addAllAdapters: " + (end - start));
-	}
-
-	/**
-	 * Get the ProjectionModelNodeAdapterFactoryXML to use with this provider.
-	 * 
-	 * @return ProjectionModelNodeAdapterFactoryXML
-	 */
-	private ProjectionModelNodeAdapterFactoryXML getAdapterFactory(boolean createIfNeeded) {
-		long start = System.currentTimeMillis();
-
-		ProjectionModelNodeAdapterFactoryXML factory = null;
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(fDocument);
-			if (sModel != null) {
-				FactoryRegistry factoryRegistry = sModel.getFactoryRegistry();
-
-				// getting the projectionmodelnodeadapter for the first time
-				// so do some initializing
-				if (!factoryRegistry.contains(ProjectionModelNodeAdapterXML.class) && createIfNeeded) {
-					ProjectionModelNodeAdapterFactoryXML newFactory = new ProjectionModelNodeAdapterFactoryXML();
-
-					// add factory to factory registry
-					factoryRegistry.addFactory(newFactory);
-
-					// add factory to propogating adapter
-					XMLModel domModel = (XMLModel) sModel;
-					Document document = domModel.getDocument();
-					PropagatingAdapter propagatingAdapter = (PropagatingAdapter) ((INodeNotifier) document).getAdapterFor(PropagatingAdapter.class);
-					if (propagatingAdapter != null) {
-						propagatingAdapter.addAdaptOnCreateFactory(newFactory);
-					}
-				}
-
-				// try and get the factory
-				factory = (ProjectionModelNodeAdapterFactoryXML) factoryRegistry.getFactoryFor(ProjectionModelNodeAdapterXML.class);
-			}
-		}
-		finally {
-			if (sModel != null)
-				sModel.releaseFromRead();
-		}
-
-		long end = System.currentTimeMillis();
-		if (debugProjectionPerf)
-			System.out.println("StructuredTextFoldingProviderXML.getAdapterFactory: " + (end - start));
-		return factory;
-	}
-
-	/**
-	 * Initialize this provider with the correct document. Assumes projection
-	 * is enabled. (otherwise, only install would have been called)
-	 */
-	public void initialize() {
-		if (!isInstalled())
-			return;
-
-		// set projection viewer to null on old document's adapter factory
-		ProjectionModelNodeAdapterFactoryXML factory = getAdapterFactory(false);
-		if (factory != null) {
-			factory.setProjectionViewer(null);
-		}
-		// clear out all annotations
-		if (fViewer.getProjectionAnnotationModel() != null)
-			fViewer.getProjectionAnnotationModel().removeAllAnnotations();
-		
-		fDocument = fViewer.getDocument();
-
-		if (fDocument != null) {
-			// set projection viewer on new document's adapter factory
-			factory = getAdapterFactory(true);
-			if (factory != null) {
-				factory.setProjectionViewer(fViewer);
-			}
-
-			addAllAdapters();
-		}
-	}
-
-	/**
-	 * Associate a ProjectionViewer with this IStructuredTextFoldingProvider
-	 * 
-	 * @param viewer
-	 */
-	public void install(ProjectionViewer viewer) {
-		// uninstall before trying to install new viewer
-		if (isInstalled()) {
-			uninstall();
-		}
-		fViewer = viewer;
-		fViewer.addProjectionListener(this);
-	}
-
-	private boolean isInstalled() {
-		return fViewer != null;
-	}
-
-	public void projectionDisabled() {
-		ProjectionModelNodeAdapterFactoryXML factory = getAdapterFactory(false);
-		if (factory != null) {
-			factory.setProjectionViewer(null);
-		}
-
-		fDocument = null;
-	}
-
-	public void projectionEnabled() {
-		initialize();
-	}
-
-	/**
-	 * Disconnect this IStructuredTextFoldingProvider from projection viewer
-	 */
-	public void uninstall() {
-		if (isInstalled()) {
-			projectionDisabled();
-
-			fViewer.removeProjectionListener(this);
-			fViewer = null;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/EnumeratedStringPropertyDescriptor.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/EnumeratedStringPropertyDescriptor.java
deleted file mode 100644
index e302240..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/EnumeratedStringPropertyDescriptor.java
+++ /dev/null
@@ -1,69 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.properties;
-
-
-
-import java.util.Arrays;
-
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-
-/**
- * This class should be used for properties which require a combo box cell
- * editor and whose values consist of a list of enumerated strings.
- */
-public class EnumeratedStringPropertyDescriptor extends PropertyDescriptor {
-	protected StringComboBoxCellEditor fEditor;
-	protected Composite fParent;
-
-	/**
-	 * The enumerated possible values for the described property
-	 */
-	protected String fValues[] = null;
-
-	public EnumeratedStringPropertyDescriptor(Object id, String newDisplayName, String[] valuesArray) {
-		super(id, newDisplayName);
-		setDescription((String) id);
-		fValues = valuesArray;
-	}
-
-	/**
-	 * Creates and returns a new cell editor for editing this property.
-	 * Returns <code>null</code> if the property is not editable.
-	 * 
-	 * @param parent
-	 *            the parent widget for the cell editor
-	 * @return the cell editor for this property, or <code>null</code> if
-	 *         this property cannot be edited
-	 */
-	public CellEditor createPropertyEditor(Composite parent) {
-		// Check to see if we already have a Cell Editor with a valid Control
-		// under the given parent.
-		// If any of that's not true, create and return a new Cell Editor
-		if (fEditor == null || fEditor.getControl() == null || fEditor.getControl().isDisposed() || parent != fParent)
-			fEditor = new StringComboBoxCellEditor(parent, fValues);
-		fParent = parent;
-		return fEditor;
-	}
-
-	public void updateValues(String newValues[]) {
-		if (Arrays.equals(fValues, newValues))
-			return;
-		fValues = newValues;
-		if (fEditor != null) {
-			fEditor.setItems(newValues);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/StringComboBoxCellEditor.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/StringComboBoxCellEditor.java
deleted file mode 100644
index 05f4788..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/properties/StringComboBoxCellEditor.java
+++ /dev/null
@@ -1,111 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.properties;
-
-
-
-import org.eclipse.jface.viewers.ComboBoxCellEditor;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.wst.sse.ui.internal.Logger;
-
-
-/**
- * An extended ComboBoxCellEditor that selects and returns Strings
- */
-
-public class StringComboBoxCellEditor extends ComboBoxCellEditor {
-	private boolean fSettingValue = false;
-
-	/**
-	 *  
-	 */
-	public StringComboBoxCellEditor() {
-		super();
-	}
-
-	/**
-	 * @param parent
-	 * @param items
-	 */
-	public StringComboBoxCellEditor(Composite parent, String[] items) {
-		super(parent, items);
-	}
-
-	/**
-	 * @param parent
-	 * @param items
-	 * @param style
-	 */
-	public StringComboBoxCellEditor(Composite parent, String[] items, int style) {
-		super(parent, items, style);
-	}
-
-	protected Object doGetValue() {
-		// otherwise limits to set of valid values
-		Object index = super.doGetValue();
-		int selection = -1;
-		if (index instanceof Integer)
-			selection = ((Integer) index).intValue();
-		if (selection >= 0)
-			return getItems()[selection];
-		else if (getControl() instanceof CCombo) {
-			// retrieve the actual text as the list of valid items doesn't
-			// contain the value
-			return ((CCombo) getControl()).getText();
-		}
-		return null;
-	}
-
-	protected void doSetValue(Object value) {
-		if (fSettingValue)
-			return;
-		fSettingValue = true;
-		if (value instanceof Integer) {
-			super.doSetValue(value);
-		} else {
-			String stringValue = value.toString();
-			int selection = -1;
-			for (int i = 0; i < getItems().length; i++)
-				if (getItems()[i].equals(stringValue))
-					selection = i;
-			if (selection >= 0)
-				super.doSetValue(new Integer(selection));
-			else {
-				super.doSetValue(new Integer(-1));
-				if (getControl() instanceof CCombo && !stringValue.equals(((CCombo) getControl()).getText())) {
-					// update the Text widget
-					((CCombo) getControl()).setText(stringValue);
-				}
-			}
-		}
-		fSettingValue = false;
-	}
-
-	public void setItems(String[] newItems) {
-		if (getControl() == null || getControl().isDisposed()) {
-			Logger.log(Logger.ERROR, "Attempted to update item list for disposed cell editor"); //$NON-NLS-1$
-			return;
-		}
-
-		// keep selection if possible
-		Object previousSelectedValue = getValue();
-		super.setItems(newItems);
-		if (previousSelectedValue != null && getControl() instanceof CCombo) {
-			for (int i = 0; i < newItems.length; i++) {
-				if (newItems[i].equals(previousSelectedValue))
-					setValue(previousSelectedValue);
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/search/XMLFindOccurrencesAction.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/search/XMLFindOccurrencesAction.java
deleted file mode 100644
index 04a7428..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/search/XMLFindOccurrencesAction.java
+++ /dev/null
@@ -1,51 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.search;
-
-import java.util.ResourceBundle;
-
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.ui.internal.search.BasicFindOccurrencesAction;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.core.text.IXMLPartitions;
-
-
-
-/**
- * <p>
- * Configures a BasicFindOccurrencesAction with XML partitions and regions
- * </p>
- * 
- * <p>
- * Uses default <code>getSearchQuery()</code>.
- * </p>
- * 
- * @author pavery
- */
-public class XMLFindOccurrencesAction extends BasicFindOccurrencesAction {
-
-	public XMLFindOccurrencesAction(ResourceBundle bundle, String prefix, ITextEditor editor) {
-		super(bundle, prefix, editor);
-	}
-
-	public String[] getPartitionTypes() {
-
-		return new String[]{IXMLPartitions.XML_DEFAULT};
-	}
-
-	public String[] getRegionTypes() {
-
-		return new String[]{XMLRegionContext.XML_TAG_NAME, XMLRegionContext.XML_TAG_ATTRIBUTE_NAME, XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE};
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/EncodingTemplateVariableResolverXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/EncodingTemplateVariableResolverXML.java
deleted file mode 100644
index 16460bb..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/EncodingTemplateVariableResolverXML.java
+++ /dev/null
@@ -1,37 +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.xml.ui.internal.templates;
-
-import org.eclipse.jface.text.templates.SimpleTemplateVariableResolver;
-import org.eclipse.jface.text.templates.TemplateContext;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-
-
-public class EncodingTemplateVariableResolverXML extends SimpleTemplateVariableResolver {
-	private static final String ENCODING_TYPE = getEncodingType();
-
-	private static String getEncodingType() {
-		return "encoding";
-	}
-
-	/**
-	 * Creates a new encoding variable
-	 */
-	public EncodingTemplateVariableResolverXML() {
-		super(ENCODING_TYPE, "Creating files encoding preference");
-	}
-
-	protected String resolve(TemplateContext context) {
-		return XMLCorePlugin.getDefault().getPluginPreferences().getString(CommonEncodingPreferenceNames.OUTPUT_CODESET);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/TemplateContextTypeIdsXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/TemplateContextTypeIdsXML.java
deleted file mode 100644
index 07b2f78..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/TemplateContextTypeIdsXML.java
+++ /dev/null
@@ -1,50 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.templates;
-
-public class TemplateContextTypeIdsXML {
-
-	public static final String ALL = getAll();
-
-	public static final String ATTRIBUTE = getAttribute();
-
-	public static final String ATTRIBUTE_VALUE = getAttributeValue();
-
-	public static final String NEW = getNew();
-
-	public static final String TAG = getTag();
-
-	private static String getAll() {
-		return getPrefix() + "_all"; //$NON-NLS-1$
-	}
-
-	private static String getAttribute() {
-		return getPrefix() + "_attribute"; //$NON-NLS-1$
-	}
-
-	private static String getAttributeValue() {
-		return getPrefix() + "_attribute_value"; //$NON-NLS-1$
-	}
-
-	private static String getNew() {
-		return getPrefix() + "_new"; //$NON-NLS-1$
-	}
-
-	private static String getPrefix() {
-		return "xml"; //$NON-NLS-1$
-	}
-
-	private static String getTag() {
-		return getPrefix() + "_tag"; //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/TemplateContextTypeXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/TemplateContextTypeXML.java
deleted file mode 100644
index 43ccf20..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/internal/templates/TemplateContextTypeXML.java
+++ /dev/null
@@ -1,35 +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.xml.ui.internal.templates;
-
-import org.eclipse.jface.text.templates.GlobalTemplateVariables;
-import org.eclipse.jface.text.templates.TemplateContextType;
-
-/**
- * Base class for XML template context types. Templates of this context type
- * apply to any place within XML content type.
- */
-public class TemplateContextTypeXML extends TemplateContextType {
-
-	public TemplateContextTypeXML() {
-		super();
-		addResolver(new GlobalTemplateVariables.Cursor());
-		addResolver(new GlobalTemplateVariables.Date());
-		addResolver(new GlobalTemplateVariables.Dollar());
-		addResolver(new GlobalTemplateVariables.LineSelection());
-		addResolver(new GlobalTemplateVariables.Time());
-		addResolver(new GlobalTemplateVariables.User());
-		addResolver(new GlobalTemplateVariables.WordSelection());
-		addResolver(new GlobalTemplateVariables.Year());
-		addResolver(new EncodingTemplateVariableResolverXML());
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonAddNamespacesControl.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonAddNamespacesControl.java
deleted file mode 100644
index cf741ff..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonAddNamespacesControl.java
+++ /dev/null
@@ -1,265 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.nsedit;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.part.PageBook;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.dialogs.SelectFileOrXMLCatalogIdDialog;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.eclipse.wst.xml.uriresolver.util.IdResolverImpl;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-
-public class CommonAddNamespacesControl extends Composite implements SelectionListener {
-
-	class EditNamespaceControl extends Composite {
-		protected Button browseButton;
-		Text locationHintField;
-		Text prefixField;
-		Text uriField;
-
-		//protected NamespaceInfo info;
-
-		public EditNamespaceControl(Composite parent) {
-			super(parent, SWT.NONE); //BORDER);
-			setLayout(new GridLayout());
-			setLayoutData(new GridData(GridData.FILL_BOTH));
-
-			Label label = new Label(this, SWT.NONE);
-			label.setText(XMLUIPlugin.getResourceString("%_UI_ENTER_REQ_PREFIX_AND_NAMESPACE")); //$NON-NLS-1$
-
-			Composite composite = new Composite(this, SWT.NONE);
-			GridLayout layout = new GridLayout();
-			layout.numColumns = 3;
-			layout.marginWidth = 0;
-			layout.verticalSpacing = 1;
-			composite.setLayout(layout);
-
-			GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-			gd.widthHint = 350;
-			composite.setLayoutData(gd);
-
-			// row 1
-			//
-			Label prefixLabel = new Label(composite, SWT.NONE);
-			prefixLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_PREFIX_COLON")); //$NON-NLS-1$
-
-			prefixField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-			prefixField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-			//prefixField.setText(getDisplayValue(info.prefix));
-			//prefixField.addModifyListener(modifyListener);
-			//prefixField.setEnabled(info.getProperty("prefix-readOnly") ==
-			// null);
-			Label placeHolder1 = new Label(composite, SWT.NONE);
-
-			// row 2
-			//
-			Label uriLabel = new Label(composite, SWT.NONE);
-			uriLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_NAMESPACE_NAME_COLON")); //$NON-NLS-1$
-
-			uriField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-			uriField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-			//uriField.setText(getDisplayValue(info.uri));
-			//uriField.addModifyListener(modifyListener);
-			//uriField.setEnabled(info.getProperty("uri-readOnly") == null);
-
-			Label placeHolder2 = new Label(composite, SWT.NONE);
-
-			// row 3
-			//
-			Label locationHintLabel = new Label(composite, SWT.NONE);
-			locationHintLabel.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_LOCATION_HINT_COLON")); //$NON-NLS-1$
-
-			locationHintField = new Text(composite, SWT.SINGLE | SWT.BORDER);
-			locationHintField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-			//locationHintField.setText(getDisplayValue(info.locationHint));
-			//locationHintField.addModifyListener(modifyListener);
-			//locationHintField.setEnabled(info.getProperty("locationHint-readOnly")
-			// == null);
-
-			SelectionListener selectionListener = new SelectionAdapter() {
-				public void widgetSelected(SelectionEvent e) {
-					performBrowse();
-				}
-			};
-
-			browseButton = new Button(composite, SWT.NONE);
-			browseButton.setText(XMLUIPlugin.getResourceString("%_UI_LABEL_BROWSE")); //$NON-NLS-1$
-			browseButton.addSelectionListener(selectionListener);
-			browseButton.setEnabled(locationHintField.getEnabled());
-		}
-
-		protected void performBrowse() {
-			String[] extensions = {".xsd"}; //$NON-NLS-1$
-			SelectFileOrXMLCatalogIdDialog dialog = new SelectFileOrXMLCatalogIdDialog(getShell(), extensions);
-			dialog.create();
-			dialog.getShell().setText(XMLUIPlugin.getResourceString("%_UI_LABEL_SELECT_FILE")); //$NON-NLS-1$
-			dialog.setBlockOnOpen(true);
-			dialog.open();
-
-			if (dialog.getReturnCode() == Window.OK) {
-				String grammarURI = null;
-				IFile file = dialog.getFile();
-				String id = dialog.getId();
-				if (file != null) {
-					String uri = null;
-					if (resourceLocation != null) {
-						uri = URIHelper.getRelativeURI(file.getLocation(), resourceLocation);
-						grammarURI = file.getLocation().toOSString();
-					} else {
-						uri = file.getLocation().toOSString();
-						grammarURI = uri;
-					}
-					locationHintField.setText(uri);
-				} else if (id != null) {
-					locationHintField.setText(id);
-					IdResolver resolver = new IdResolverImpl(null);
-					grammarURI = resolver.resolveId(id, id);
-				}
-
-				try {
-					//TODO CMDocument document =
-					// CMDocumentBuilderRegistry.getInstance().buildCMDocument(grammarURI);
-					//				 List namespaceInfoList =
-					// (List)document.getProperty("http://org.eclipse.wst/cm/properties/namespaceInfo");
-					//				 NamespaceInfo info =
-					// (NamespaceInfo)namespaceInfoList.get(0);
-					//				 if (uriField.getText().trim().length() == 0 && info.uri
-					// != null)
-					//				 {
-					//					 uriField.setText(info.uri);
-					//				 }
-					//				 if (prefixField.getText().trim().length() == 0 &&
-					// info.prefix != null)
-					//				 {
-					//					 prefixField.setText(info.prefix);
-					//				 }
-				} catch (Exception e) {
-				}
-			}
-		}
-	}
-
-	protected Button deleteButton;
-	protected Button editButton;
-	protected EditNamespaceControl editNamespaceControl;
-	protected int heightHint = 250;
-	protected List namespaceInfoList = new ArrayList();
-	protected Button newButton;
-	protected PageBook pageBook;
-	protected Button radio1;
-	protected Button radio2;
-	protected IPath resourceLocation;
-	protected Composite tableSection;
-	protected CommonNamespaceInfoTable tableViewer;
-	protected int widthHint = 500;
-
-
-	public CommonAddNamespacesControl(Composite parent, int style, IPath resourceLocation) {
-		super(parent, style);
-		this.resourceLocation = resourceLocation;
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		if (widthHint != -1) {
-			gd.widthHint = widthHint;
-		}
-		if (heightHint != -1) {
-			gd.heightHint = heightHint;
-		}
-		setLayoutData(gd);
-		setLayout(new GridLayout());
-
-		radio1 = new Button(this, SWT.RADIO);
-		radio1.setText(XMLUIPlugin.getResourceString("%_UI_SELECT_REGISTERED_NAMESPACES")); //$NON-NLS-1$
-		radio1.addSelectionListener(this);
-
-		radio2 = new Button(this, SWT.RADIO);
-		radio2.setText(XMLUIPlugin.getResourceString("%_UI_SPECIFY_NEW_NAMESPACE")); //$NON-NLS-1$
-		radio2.addSelectionListener(this);
-
-		Label separator = new Label(this, SWT.SEPARATOR | SWT.HORIZONTAL);
-		separator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		//Group namespaceInfoGroup = new Group(this, SWT.NONE);
-		//namespaceInfoGroup.setText("Namespace Declarations");
-		// //XMLCommonUIPlugin.getInstance().getString("_UI_LABEL_XML_SCHEMA_INFORMATION"));
-		//namespaceInfoGroup.setLayout(new GridLayout(2, false));
-		//namespaceInfoGroup.setLayoutData(new GridData(GridData.FILL_BOTH));
-		pageBook = new PageBook(this, SWT.NONE);
-		pageBook.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-		tableSection = new Composite(pageBook, SWT.NONE);
-		tableSection.setLayout(new GridLayout());
-		Label label = new Label(tableSection, SWT.NONE);
-		label.setText(XMLUIPlugin.getResourceString("%_UI_SELECT_NAMESPACE_TO_ADD")); //$NON-NLS-1$
-
-		tableViewer = new CommonNamespaceInfoTable(tableSection, SWT.CHECK, 6);
-		editNamespaceControl = new EditNamespaceControl(pageBook);
-		pageBook.showPage(tableSection);
-
-		tableViewer.setInput(namespaceInfoList);
-	}
-
-
-
-	public List getNamespaceInfoList() {
-		List list = new ArrayList();
-		if (radio1.getSelection()) {
-			TableItem[] items = tableViewer.getTable().getItems();
-			for (int i = 0; i < items.length; i++) {
-				TableItem item = items[i];
-				if (item.getChecked()) {
-					list.add(item.getData());
-				}
-			}
-		} else {
-			NamespaceInfo info = new NamespaceInfo();
-			info.prefix = editNamespaceControl.prefixField.getText();
-			info.uri = editNamespaceControl.uriField.getText();
-			info.locationHint = editNamespaceControl.locationHintField.getText();
-			list.add(info);
-		}
-		return list;
-	}
-
-	public void setNamespaceInfoList(List list) {
-		namespaceInfoList = list;
-		tableViewer.setInput(namespaceInfoList);
-	}
-
-	public void widgetDefaultSelected(SelectionEvent e) {
-	}
-
-	public void widgetSelected(SelectionEvent e) {
-		if (e.widget == radio1) {
-			pageBook.showPage(tableSection);
-		} else if (e.widget == radio2) {
-			pageBook.showPage(editNamespaceControl);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonAddNamespacesDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonAddNamespacesDialog.java
deleted file mode 100644
index 4553512..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonAddNamespacesDialog.java
+++ /dev/null
@@ -1,188 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.nsedit;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.uriresolver.XMLCatalog;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogEntry;
-import org.eclipse.wst.xml.uriresolver.XMLCatalogPlugin;
-
-
-public class CommonAddNamespacesDialog extends Dialog {
-	protected CommonAddNamespacesControl addNamespacesControl;
-	protected List existingNamespaces;
-	protected List namespaceInfoList;
-	protected Button okButton;
-	protected HashMap preferredPrefixTable = new HashMap();
-	protected IPath resourceLocation;
-	protected String title;
-
-	public CommonAddNamespacesDialog(Shell parentShell, String title, IPath resourceLocation, List existingNamespaces) {
-		super(parentShell);
-		this.resourceLocation = resourceLocation;
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		this.title = title;
-		this.existingNamespaces = existingNamespaces;
-		preferredPrefixTable.put("http://schemas.xmlsoap.org/wsdl/", "wsdl"); //$NON-NLS-1$ //$NON-NLS-2$
-		preferredPrefixTable.put("http://schemas.xmlsoap.org/wsdl/soap/", "soap"); //$NON-NLS-1$ //$NON-NLS-2$
-		preferredPrefixTable.put("http://schemas.xmlsoap.org/wsdl/http/", "http"); //$NON-NLS-1$ //$NON-NLS-2$
-		preferredPrefixTable.put("http://schemas.xmlsoap.org/wsdl/mime/", "mime"); //$NON-NLS-1$ //$NON-NLS-2$
-		preferredPrefixTable.put("http://schemas.xmlsoap.org/soap/encoding/", "soapenc"); //$NON-NLS-1$ //$NON-NLS-2$
-		preferredPrefixTable.put("http://schemas.xmlsoap.org/soap/envelope/", "soapenv"); //$NON-NLS-1$ //$NON-NLS-2$
-		preferredPrefixTable.put("http://www.w3.org/2001/XMLSchema-instance", "xsi"); //$NON-NLS-1$ //$NON-NLS-2$
-		preferredPrefixTable.put("http://www.w3.org/2001/XMLSchema", "xsd"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-	protected void addBuiltInNamespaces(List list) {
-		String xsiNamespace = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$
-		String xsdNamespace = "http://www.w3.org/2001/XMLSchema"; //$NON-NLS-1$
-		if (!isAlreadyDeclared(xsiNamespace)) {
-			list.add(new NamespaceInfo("http://www.w3.org/2001/XMLSchema-instance", "xsi", null)); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		if (!isAlreadyDeclared(xsdNamespace)) {
-			list.add(new NamespaceInfo("http://www.w3.org/2001/XMLSchema", "xsd", null)); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-
-	protected void addCatalogMapToList(XMLCatalog catalog, List list) {
-		for (Iterator i = catalog.getEntries().iterator(); i.hasNext();) {
-			XMLCatalogEntry entry = (XMLCatalogEntry) i.next();
-			if (entry.getType() == XMLCatalogEntry.PUBLIC && entry.getURI().endsWith(".xsd")) { //$NON-NLS-1$
-				if (!isAlreadyDeclared(entry.getKey())) {
-					NamespaceInfo namespaceInfo = new NamespaceInfo(entry.getKey(), "xx", null); //$NON-NLS-1$
-					list.add(namespaceInfo);
-				}
-			}
-		}
-	}
-
-	protected void buttonPressed(int buttonId) {
-		if (buttonId == IDialogConstants.OK_ID) {
-			namespaceInfoList = addNamespacesControl.getNamespaceInfoList();
-		}
-		super.buttonPressed(buttonId);
-	}
-
-	public void computeAddablePrefixes(List addableList, List exisitingList) {
-		HashMap map = new HashMap();
-		for (Iterator i = exisitingList.iterator(); i.hasNext();) {
-			NamespaceInfo info = (NamespaceInfo) i.next();
-			if (info.prefix != null) {
-				map.put(info.prefix, info);
-			}
-		}
-		for (Iterator i = addableList.iterator(); i.hasNext();) {
-			NamespaceInfo info = (NamespaceInfo) i.next();
-			if (info.uri != null) {
-				String prefix = (String) preferredPrefixTable.get(info.uri);
-				info.prefix = getUniquePrefix(map, prefix, info.uri);
-				map.put(info.prefix, info);
-			}
-		}
-	}
-
-	public int createAndOpen() {
-		create();
-		getShell().setText(title);
-		Rectangle r = getShell().getBounds();
-		getShell().setBounds(r.x + 80, r.y + 80, r.width, r.height);
-		setBlockOnOpen(true);
-		return open();
-	}
-
-	protected void createButtonsForButtonBar(Composite parent) {
-		okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-
-	protected Control createContents(Composite parent) {
-		Control control = super.createContents(parent);
-		return control;
-	}
-
-
-
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-		addNamespacesControl = new CommonAddNamespacesControl(dialogArea, SWT.NONE, resourceLocation);
-		List list = new ArrayList();
-
-		addBuiltInNamespaces(list);
-		XMLCatalog catalog = XMLCatalogPlugin.getInstance().getDefaultXMLCatalog();
-		addCatalogMapToList(catalog.getChildCatalog(XMLCatalog.USER_CATALOG_ID), list);
-		addCatalogMapToList(catalog.getChildCatalog(XMLCatalog.SYSTEM_CATALOG_ID), list);
-
-		computeAddablePrefixes(list, existingNamespaces);
-
-		addNamespacesControl.setNamespaceInfoList(list);
-		return dialogArea;
-	}
-
-	public List getNamespaceInfoList() {
-		return namespaceInfoList;
-	}
-
-	protected String getPreferredPrefix(String namespaceURI) {
-		return (String) preferredPrefixTable.get(namespaceURI);
-	}
-
-	private String getUniquePrefix(HashMap prefixMap, String prefix, String uri) {
-		if (prefix == null) {
-			int lastIndex = uri.lastIndexOf('/');
-			if (lastIndex == uri.length() - 1) {
-				uri = uri.substring(0, lastIndex);
-				lastIndex = uri.lastIndexOf('/');
-			}
-			prefix = uri.substring(lastIndex + 1);
-			if (prefix.length() > 20 || prefix.indexOf(':') != -1) {
-				prefix = null;
-			}
-		}
-		if (prefix == null) {
-			prefix = "p"; //$NON-NLS-1$
-		}
-		if (prefixMap.get(prefix) != null) {
-			String base = prefix;
-			for (int count = 0; prefixMap.get(prefix) != null; count++) {
-				prefix = base + count;
-			}
-		}
-		return prefix;
-	}
-
-	protected boolean isAlreadyDeclared(String namespaceURI) {
-		boolean result = false;
-		for (Iterator i = existingNamespaces.iterator(); i.hasNext();) {
-			NamespaceInfo namespaceInfo = (NamespaceInfo) i.next();
-			if (namespaceURI.equals(namespaceInfo.uri)) {
-				result = true;
-				break;
-			}
-		}
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonEditNamespacesDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonEditNamespacesDialog.java
deleted file mode 100644
index edac2dd..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonEditNamespacesDialog.java
+++ /dev/null
@@ -1,318 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.nsedit;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.dialogs.EditNamespaceInfoDialog;
-import org.eclipse.wst.xml.ui.dialogs.NamespaceInfoErrorHelper;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-public class CommonEditNamespacesDialog {
-	protected Composite commonComposite;
-	protected Button deleteButton;
-	protected Button editButton;
-
-	protected Label errorMessageLabel;
-	protected int heightHint = 250;
-	protected List namespaceInfoList = new ArrayList();
-
-	protected Button newButton;
-	protected IPath resourceLocation;
-
-	private boolean showLocationText = false;
-	protected String tableLabel = ""; //$NON-NLS-1$
-	protected CommonNamespaceInfoTable tableViewer;
-
-	protected Composite topComposite;
-	protected boolean useGroup;
-	protected int widthHint = 500;
-
-	public CommonEditNamespacesDialog(Composite parent, IPath resourceLocation, String stringTableLabel) {
-		this(parent, resourceLocation, stringTableLabel, false, false);
-	}
-
-	public CommonEditNamespacesDialog(Composite parent, IPath resourceLocation, String stringTableLabel, boolean useGroup, boolean showLocText) {
-		this.resourceLocation = resourceLocation;
-		tableLabel = stringTableLabel;
-		this.useGroup = useGroup;
-		showLocationText = showLocText;
-
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		if (widthHint != -1) {
-			gd.widthHint = widthHint;
-		}
-		if (heightHint != -1) {
-			gd.heightHint = heightHint;
-		}
-
-		// Set GridData and GridLayout for the parent Composite
-		parent.setLayoutData(gd);
-		parent.setLayout(new GridLayout());
-
-		// Create the top Composite
-		topComposite = new Composite(parent, SWT.NONE);
-		GridData topData = new GridData(GridData.FILL_HORIZONTAL);
-		topData.heightHint = 0;
-		topComposite.setLayoutData(topData);
-		topComposite.setLayout(new GridLayout());
-
-		// Create the 'common'/middle Composite
-		if (useGroup) {
-			commonComposite = new Group(parent, SWT.NONE);
-		} else {
-			commonComposite = new Composite(parent, SWT.NONE);
-		}
-		commonComposite.setLayoutData(new GridData(GridData.FILL_BOTH));
-		commonComposite.setLayout(new GridLayout(3, false));
-
-		// Add the error Message Label
-		errorMessageLabel = new Label(parent, SWT.NONE);
-		errorMessageLabel.setLayoutData(createHorizontalFill());
-		Color color = new Color(errorMessageLabel.getDisplay(), 200, 0, 0);
-		errorMessageLabel.setForeground(color);
-
-		createControlArea();
-	}
-
-
-	protected void createButtons(Composite parent) {
-		Composite composite = new Composite(parent, SWT.NONE);
-		composite.setLayoutData(new GridData(GridData.FILL_VERTICAL));
-		GridLayout gridLayout = new GridLayout();
-		gridLayout.numColumns = 1;
-		gridLayout.marginHeight = 0;
-		gridLayout.marginWidth = 0;
-		composite.setLayout(gridLayout);
-
-		SelectionListener selectionListener = new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				if (e.widget == newButton) {
-					performNew();
-				} else if (e.widget == editButton) {
-					performEdit();
-				} else if (e.widget == deleteButton) {
-					performDelete();
-				}
-			}
-		};
-
-		// create a composite to hold the three buttons
-		Composite buttonComposite = new Composite(composite, SWT.NONE);
-		buttonComposite.setLayoutData(createHorizontalFill());
-		GridLayout buttonGridLayout = new GridLayout();
-		//buttonGridLayout.numColumns = 3;
-		//buttonGridLayout.makeColumnsEqualWidth = true;
-		buttonComposite.setLayout(buttonGridLayout);
-
-		// add the New button
-		//
-		newButton = new Button(buttonComposite, SWT.NONE);
-		//newButton.setText(" " +
-		// XMLCommonUIPlugin.getInstance().getString("_UI_BUTTON_NEW") + " ");
-		newButton.setText("   " + XMLUIPlugin.getResourceString("%CommonEditNamespacesDialog.0") + "   "); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		newButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); //ViewUtility.createHorizontalFill());
-		newButton.addSelectionListener(selectionListener);
-
-		// add the Edit button
-		//
-		//gd = new GridData();
-		//gd.horizontalAlignment = gd.FILL;
-		//gd.grabExcessHorizontalSpace = true;
-
-		editButton = new Button(buttonComposite, SWT.NONE);
-		editButton.setText(XMLUIPlugin.getResourceString("%_UI_BUTTON_EDIT")); //$NON-NLS-1$
-		editButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); //ViewUtility.createHorizontalFill());
-		editButton.addSelectionListener(selectionListener);
-
-		// add the Delete button
-		//
-		//gd = new GridData();
-		//gd.horizontalAlignment = gd.FILL;
-		//gd.grabExcessHorizontalSpace = true;
-
-		deleteButton = new Button(buttonComposite, SWT.NONE);
-		deleteButton.setText(XMLUIPlugin.getResourceString("%_UI_BUTTON_DELETE")); //$NON-NLS-1$
-		deleteButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); //ViewUtility.createHorizontalFill());
-		deleteButton.addSelectionListener(selectionListener);
-	}
-
-	private void createControlArea() {
-		if (useGroup) {
-			((Group) commonComposite).setText(tableLabel);
-		} else {
-			Label label = new Label(commonComposite, SWT.NONE);
-			label.setText(tableLabel);
-			label.setLayoutData(createGridData(false, 3));
-		}
-
-		tableViewer = new CommonNamespaceInfoTable(commonComposite, 6, showLocationText);
-		tableViewer.getControl().setLayoutData(createGridData(true, 2));
-		createButtons(commonComposite);
-
-		tableViewer.setInput(namespaceInfoList);
-		updateButtonEnabledState();
-		ISelectionChangedListener selectionChangedListener = new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				updateButtonEnabledState();
-			}
-		};
-		tableViewer.addSelectionChangedListener(selectionChangedListener);
-	}
-
-	protected GridData createGridData(boolean both, int span) {
-		GridData gd = new GridData(both ? GridData.FILL_BOTH : GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		return gd;
-	}
-
-	private GridData createHorizontalFill() {
-		GridData gd = new GridData();
-		gd.horizontalAlignment = GridData.FILL;
-		gd.grabExcessHorizontalSpace = true;
-		return gd;
-	}
-
-
-
-	public NamespaceInfo getNamespaceInfo(String namespace) {
-		NamespaceInfo result = null;
-		for (Iterator i = namespaceInfoList.iterator(); i.hasNext();) {
-			NamespaceInfo info = (NamespaceInfo) i.next();
-			if (info.uri != null && info.uri.equals(namespace)) {
-				result = info;
-				break;
-			}
-		}
-		return result;
-	}
-
-	protected Object getSelection(ISelection selection) {
-		if (selection == null) {
-			return null;
-		} // end of if ()
-
-		Object result = null;
-		if (selection instanceof IStructuredSelection) {
-			IStructuredSelection es = (IStructuredSelection) selection;
-			Iterator i = es.iterator();
-			if (i.hasNext()) {
-				result = i.next();
-			}
-		}
-		return result;
-	}
-
-	/*
-	 * Use the returned Composite to add content above the 'common contents'.
-	 * Note: The GridData for the returned Composite has a heightHint = 0.
-	 * This means when using the returned Composite, the GridData must be
-	 * reset, else the Composite and it's contents will not appear.
-	 */
-	protected Composite getTopComposite() {
-		return topComposite;
-	}
-
-	protected EditNamespaceInfoDialog invokeDialog(String title, NamespaceInfo info) {
-		Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-		EditNamespaceInfoDialog dialog = new EditNamespaceInfoDialog(shell, info);
-		dialog.create();
-		dialog.getShell().setText(title);
-		dialog.setBlockOnOpen(true);
-		dialog.setResourceLocation(resourceLocation);
-		dialog.open();
-		return dialog;
-	}
-
-	protected void performDelayedUpdate() {
-		tableViewer.refresh();
-		/*
-		 * Runnable delayedUpdate = new Runnable() { public void run() {
-		 * tableViewer.refresh(); } };
-		 * Display.getCurrent().asyncExec(delayedUpdate);
-		 */
-		//if (updateListener != null)
-		//{
-		//  updateListener.updateOccured(this, namespaceInfoList);
-		//}
-	}
-
-	public void performDelete() {
-		ISelection selection = tableViewer.getSelection();
-		if (selection instanceof IStructuredSelection) {
-			IStructuredSelection structuredSelection = (IStructuredSelection) selection;
-			namespaceInfoList.removeAll(structuredSelection.toList());
-			updateErrorMessage(namespaceInfoList);
-			performDelayedUpdate();
-		}
-	}
-
-	public void performEdit() {
-		Object selection = getSelection(tableViewer.getSelection());
-		if (selection != null) {
-			EditNamespaceInfoDialog dialog = invokeDialog(XMLUIPlugin.getResourceString("%_UI_LABEL_NEW_NAMESPACE_INFORMATION"), (NamespaceInfo) selection); //$NON-NLS-1$
-			updateErrorMessage(namespaceInfoList);
-			performDelayedUpdate();
-		}
-	}
-
-	public void performNew() {
-		Shell shell = XMLUIPlugin.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-		CommonAddNamespacesDialog dialog = new CommonAddNamespacesDialog(shell, XMLUIPlugin.getResourceString("%_UI_ADD_NAMESPACE_DECLARATIONS"), resourceLocation, namespaceInfoList); //$NON-NLS-1$
-		dialog.createAndOpen();
-		if (dialog.getReturnCode() == Window.OK) {
-			namespaceInfoList.addAll(dialog.getNamespaceInfoList());
-			updateErrorMessage(namespaceInfoList);
-			performDelayedUpdate();
-		}
-	}
-
-	public void setNamespaceInfoList(List list) {
-		namespaceInfoList = list;
-		tableViewer.setInput(namespaceInfoList);
-	}
-
-	public void updateButtonEnabledState() {
-		Object selection = getSelection(tableViewer.getSelection());
-		NamespaceInfo info = (NamespaceInfo) selection;
-		editButton.setEnabled(info != null);
-		deleteButton.setEnabled(info != null && info.getProperty("unremovable") == null); //$NON-NLS-1$
-	}
-
-	public void updateErrorMessage(List namespaceInfoList) {
-		NamespaceInfoErrorHelper helper = new NamespaceInfoErrorHelper();
-		String errorMessage = helper.computeErrorMessage(namespaceInfoList, null);
-		errorMessageLabel.setText(errorMessage != null ? errorMessage : ""); //$NON-NLS-1$
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonEditNamespacesTargetFieldDialog.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonEditNamespacesTargetFieldDialog.java
deleted file mode 100644
index b04a998..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonEditNamespacesTargetFieldDialog.java
+++ /dev/null
@@ -1,104 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.nsedit;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.dialogs.EditNamespaceInfoDialog;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-/*
- * This class is an extension of CommonEditNamespacesDialog. This class adds
- * the target namespaces dialog field.
- */
-public class CommonEditNamespacesTargetFieldDialog extends CommonEditNamespacesDialog {
-
-	class TargetNamespaceModifyListener implements ModifyListener {
-		public void modifyText(ModifyEvent e) {
-			String oldTargetNamespace = targetNamespace;
-			targetNamespace = targetNamespaceField.getText();
-			updateTargetNamespaceAndNamespaceInfo(oldTargetNamespace, targetNamespace);
-		}
-	}
-
-	protected String targetNamespace;
-	protected Text targetNamespaceField;
-
-	public CommonEditNamespacesTargetFieldDialog(Composite parent, IPath resourceLocation) {
-		super(parent, resourceLocation, XMLUIPlugin.getResourceString("%_UI_NAMESPACE_DECLARATIONS")); //$NON-NLS-1$
-
-		Composite targetComp = getTopComposite();
-		targetComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		Label targetNamespaceLabel = new Label(targetComp, SWT.NONE);
-		targetNamespaceLabel.setLayoutData(gd);
-		targetNamespaceLabel.setText(XMLUIPlugin.getResourceString("%_UI_TARGET_NAMESPACE")); //$NON-NLS-1$
-
-		targetNamespaceField = new Text(targetComp, SWT.BORDER);
-		targetNamespaceField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		targetNamespaceField.addModifyListener(new TargetNamespaceModifyListener());
-
-		//		createControlArea();
-	}
-
-	public String getTargetNamespace() {
-		return targetNamespace;
-	}
-
-	public void performEdit() {
-		Object selection = getSelection(tableViewer.getSelection());
-		if (selection != null) {
-			boolean editTargetNamespace = false;
-			NamespaceInfo nsInfo = (NamespaceInfo) selection;
-			if (getTargetNamespace().equals(nsInfo.uri)) {
-				editTargetNamespace = true;
-			}
-
-			EditNamespaceInfoDialog dialog = invokeDialog(XMLUIPlugin.getResourceString("%_UI_LABEL_NEW_NAMESPACE_INFORMATION"), nsInfo); //$NON-NLS-1$
-			updateErrorMessage(namespaceInfoList);
-			performDelayedUpdate();
-
-			if (editTargetNamespace) {
-				targetNamespaceField.setText(nsInfo.uri);
-			}
-		}
-	}
-
-	public void setTargetNamespace(String theTargetNamespace) {
-		targetNamespace = theTargetNamespace != null ? theTargetNamespace : ""; //$NON-NLS-1$
-		targetNamespaceField.setText(targetNamespace);
-		//updateTargetNamespaceAndNamespaceInfo(targetNamespace);
-	}
-
-	private void updateTargetNamespaceAndNamespaceInfo(String oldTargetNamespace, String newTargetNamespace) {
-		NamespaceInfo info = getNamespaceInfo(newTargetNamespace);
-		if (info == null) {
-			info = getNamespaceInfo(oldTargetNamespace);
-			if (info == null) {
-				info = new NamespaceInfo(newTargetNamespace, "tns", null); //$NON-NLS-1$
-				namespaceInfoList.add(info);
-			} else {
-				info.uri = targetNamespace;
-			}
-		}
-		tableViewer.refresh();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonNamespaceInfoTable.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonNamespaceInfoTable.java
deleted file mode 100644
index 78fc820..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/nsedit/CommonNamespaceInfoTable.java
+++ /dev/null
@@ -1,340 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.nsedit;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-public class CommonNamespaceInfoTable extends TableViewer {
-
-	/**
-	 * NamespaceInfoTableLabelProvider
-	 */
-	protected class Provider extends LabelProvider implements ITableLabelProvider, IStructuredContentProvider {
-		Viewer viewer;
-
-		public Image getColumnImage(Object object, int columnIndex) {
-			Image result = null;
-			int columnCode = getColumnCode(columnIndex);
-			if (columnCode == COLUMN_LOCATION_HINT) {
-				NamespaceInfo info = (NamespaceInfo) object;
-				if (info.locationHint == null || info.locationHint.trim().equals("")) { //$NON-NLS-1$
-					// Comment this out until we solve the alignment/(space
-					// for image being allocated
-					// to prefix column) ......
-					//          result =
-					// XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_WARNING_OBJ);
-				}
-			}
-
-			return result;
-		}
-
-		public String getColumnText(Object object, int column) {
-			NamespaceInfo info = (NamespaceInfo) object;
-			String result = null;
-			int columnCode = getColumnCode(column);
-			switch (columnCode) {
-				case COLUMN_PREFIX : {
-					result = info.prefix;
-					break;
-				}
-				case COLUMN_NAMESPACE_URI : {
-					result = info.uri;
-					break;
-				}
-				case COLUMN_CHECKBOX : {
-					result = ""; //info.locationHint; //$NON-NLS-1$
-					break;
-				}
-				case COLUMN_LOCATION_HINT : {
-					result = info.locationHint;
-					break;
-				}
-			}
-			result = result != null ? result : ""; //$NON-NLS-1$
-			if (result.equals("")) { //$NON-NLS-1$
-				switch (columnCode) {
-					case COLUMN_PREFIX : {
-						result = XMLUIPlugin.getResourceString("%_UI_NO_PREFIX"); //$NON-NLS-1$
-						break;
-					}
-					case COLUMN_NAMESPACE_URI : {
-						result = XMLUIPlugin.getResourceString("%_UI_NO_NAMESPACE_NAME"); //$NON-NLS-1$
-						break;
-					}
-				}
-			}
-			return result;
-		}
-
-		public Object[] getElements(Object inputElement) {
-			List list = (List) viewer.getInput();
-			return list != null ? list.toArray() : null;
-		}
-
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-			this.viewer = viewer;
-		}
-	}
-
-	class TableItemChecker extends MouseAdapter {
-		public void mouseDown(MouseEvent e) {
-			TableItem item = getTable().getItem(new Point(e.x, e.y));
-			if (item != null) {
-				Object obj = item.getData();
-				if (obj != null) {
-					NamespaceInfo info = (NamespaceInfo) obj;
-					TableColumn col = getTable().getColumn(0);
-					if (e.x < col.getWidth()) // if the point falls within the
-					// Select column then perform
-					// check/uncheck
-					{
-						String currentState = (String) info.getProperty("checked"); //$NON-NLS-1$
-						System.out.println("currentState" + currentState); //$NON-NLS-1$
-						if (currentState == null || currentState.equals("false")) //$NON-NLS-1$
-						{
-							info.setProperty("checked", "true"); //$NON-NLS-1$ //$NON-NLS-2$
-						} else {
-							info.setProperty("checked", "false"); //$NON-NLS-1$ //$NON-NLS-2$
-						}
-						refresh();
-					}
-				}
-			}
-		}
-	}
-
-	protected static final int COLUMN_CHECKBOX = 1;
-	protected static final int COLUMN_LOCATION_HINT = 4;
-	protected static final int COLUMN_NAMESPACE_URI = 2;
-	protected static final int COLUMN_PREFIX = 3;
-
-	protected static final String LABEL_CHECKBOX = ""; //$NON-NLS-1$
-	protected static final String LABEL_LOCATION_HINT = XMLUIPlugin.getResourceString("%_UI_LABEL_LOCATION_HINT"); //$NON-NLS-1$
-	protected static final String LABEL_NAMESPACE_URI = XMLUIPlugin.getResourceString("%_UI_LABEL_NAMESPACE_NAME"); //$NON-NLS-1$
-	protected static final String LABEL_PREFIX = XMLUIPlugin.getResourceString("%_UI_LABEL_PREFIX"); //$NON-NLS-1$
-	protected List checkedList = new ArrayList();
-
-	//protected List namespaceInfoList = new ArrayList();
-	protected int[] columnIndexMap;
-	protected boolean showCheckBoxes = true;
-	private boolean showLocationText = false;
-
-	private Table table;
-	protected int visibleRows = -1;
-
-	public CommonNamespaceInfoTable(Composite parent, int visibleRows) {
-		this(parent, SWT.FULL_SELECTION | SWT.MULTI | SWT.BORDER, visibleRows, false);
-	}
-
-	//protected CellEditor getCellEditor(int column)
-	// {
-	//  return (column == COLUMN_CHECKBOX) ? checkBoxCellEditor :
-	// textCellEditor;
-	// }
-
-	public CommonNamespaceInfoTable(Composite parent, int visibleRows, boolean showLocationText) {
-		this(parent, SWT.FULL_SELECTION | SWT.MULTI | SWT.BORDER, visibleRows, showLocationText);
-	}
-
-	public CommonNamespaceInfoTable(Composite parent, int style, int visibleRows) {
-		this(parent, SWT.FULL_SELECTION | SWT.MULTI | SWT.BORDER | style, visibleRows, false);
-	}
-
-	public CommonNamespaceInfoTable(Composite parent, int style, int visibleRows, boolean showLocationText) {
-		super(new Table(parent, style));
-		getTable().setLinesVisible(true);
-		this.showCheckBoxes = (style & SWT.CHECK) != 0;
-		columnIndexMap = createColumnIndexMap();
-		this.showLocationText = showLocationText;
-
-		Provider provider = new Provider();
-		setContentProvider(provider);
-		setLabelProvider(provider);
-
-		String[] columnPropertiesArray = createColumnPropertiesArray();
-		setColumnProperties(columnPropertiesArray);
-
-		table = getTable();
-		table.setHeaderVisible(true);
-		table.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-		TableLayout layout = new TableLayout();
-
-		for (int i = 0; i < columnPropertiesArray.length; i++) {
-			TableColumn column = new TableColumn(table, i);
-			if ((columnPropertiesArray[i]).equals(LABEL_LOCATION_HINT)) {
-				if (showLocationText) {
-					column.setText(columnPropertiesArray[i]);
-				} else {
-					// Comment this out until we solve the alignment/(space
-					// for image being allocated
-					// to prefix column) ......
-					//          	column.setImage(XMLEditorPluginImageHelper.getInstance().getImage(XMLEditorPluginImages.IMG_OBJ_TXTEXT));
-				}
-			} else {
-				column.setText(columnPropertiesArray[i]);
-			}
-			column.setAlignment(SWT.LEFT);
-			layout.addColumnData(new ColumnWeightData(getColumnWidth(i), true));
-		}
-		table.setLayout(layout);
-
-		this.visibleRows = visibleRows;
-		//for (int i = 0; i < visibleRows; i++)
-		// {
-		//  TableItem item = new TableItem(table, SWT.NONE);
-		//  item.setText("#######");
-		//}
-		//checkBoxCellEditor = new NamespaceInfoCheckboxCellEditor(table);
-		//textCellEditor = new TextCellEditor(table);
-
-		/*
-		 * CellEditor[] cellEditors = new
-		 * CellEditor[columnPropertiesArray.length]; for (int i = 0; i <
-		 * columnPropertiesArray.length; i++) { cellEditors[i] =
-		 * getCellEditor(i); } setCellEditors(cellEditors);
-		 */
-		//if (showCheckBoxes)
-		//{
-		//  getTable().addMouseListener(new TableItemChecker());
-		//}
-	}
-
-	//protected CellEditor checkBoxCellEditor;
-	//protected CellEditor textCellEditor;
-
-	protected int[] createColumnIndexMap() {
-		int[] result = new int[showCheckBoxes ? 4 : 3];
-		int i = 0;
-		if (showCheckBoxes) {
-			result[i++] = COLUMN_CHECKBOX;
-		}
-		result[i++] = COLUMN_PREFIX;
-		result[i++] = COLUMN_NAMESPACE_URI;
-		if (!showCheckBoxes) {
-			result[i++] = COLUMN_LOCATION_HINT;
-		}
-		return result;
-	}
-
-	protected String[] createColumnPropertiesArray() {
-		String[] result = new String[3];
-		int i = 0;
-		if (showCheckBoxes) {
-			result[i++] = LABEL_CHECKBOX;
-		}
-		result[i++] = LABEL_PREFIX;
-		result[i++] = LABEL_NAMESPACE_URI;
-		if (!showCheckBoxes) {
-			result[i++] = LABEL_LOCATION_HINT;
-		}
-		return result;
-	}
-
-	protected int getColumnCode(int column) {
-		int result = 0;
-		if (column < columnIndexMap.length) {
-			result = columnIndexMap[column];
-		}
-		return result;
-	}
-
-	protected int getColumnWidth(int column) {
-		int result = 0;
-		switch (getColumnCode(column)) {
-			case COLUMN_PREFIX : {
-				result = 5;
-				break;
-			}
-			case COLUMN_NAMESPACE_URI : {
-				// Size columns differently when location hint text label is
-				// displayed
-				if (showLocationText) {
-					result = 10;
-				} else {
-					result = 20;
-				}
-				break;
-			}
-			case COLUMN_CHECKBOX : {
-				result = 1; //info.locationHint;
-				break;
-			}
-			case COLUMN_LOCATION_HINT : {
-				// Size columns differently when location hint text label is
-				// displayed
-				if (showLocationText) {
-					result = 10;
-				} else {
-					result = 2;
-				}
-				break;
-			}
-		}
-		return result;
-	}
-	/*
-	 * protected class NamespaceInfoCellModifier implements ICellModifier {
-	 * public NamespaceInfoCellModifier() { }
-	 * 
-	 * public boolean canModify(Object element, String property) { if
-	 * (property.equals(LABEL_CHECKBOX)) { return true; } else if
-	 * (property.equals(LABEL_PREFIX)) { return true; } return false; }
-	 * 
-	 * public Object getValue(Object element, String property) { int column =
-	 * 0; if (property.equals(LABEL_CHECKBOX)) { column = 0; } else if
-	 * (property.equals(LABEL_PREFIX)) { column = 1; } else if
-	 * (property.equals(LABEL_NAMESPACE_URI)) { column = 2; }
-	 * 
-	 * //if (element instanceof TableElement) //{ // return
-	 * provider.getColumnText(element, column); //} //else //{ // return null; // }
-	 * return "hello"; }
-	 * 
-	 * public void modify(Object element, String property, Object value) { } }
-	 * 
-	 * protected class NamespaceInfoCheckboxCellEditor extends
-	 * CheckboxCellEditor implements MouseListener { public
-	 * NamespaceInfoCheckboxCellEditor(Composite parent) { super(parent); }
-	 * 
-	 * protected void doSetValue(Object value) { }
-	 * 
-	 * public void activate() { super.activate(); deactivate();
-	 * Display.getCurrent().getFocusControl().redraw(); }
-	 * 
-	 * public void mouseDown(MouseEvent e) { if (getTable().getItem(new
-	 * Point(e.x, e.y)) != null) { } } public void mouseDoubleClick(MouseEvent
-	 * e) { } public void mouseUp(MouseEvent e) { } }
-	 */
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/openon/DefaultOpenOnXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/openon/DefaultOpenOnXML.java
deleted file mode 100644
index 73fe2ad..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/openon/DefaultOpenOnXML.java
+++ /dev/null
@@ -1,361 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.openon;
-
-
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.wst.common.uriresolver.URIResolverPlugin;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.openon.AbstractOpenOn;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-
-/**
- * This action class retrieves the link/file selected by the cursor and
- * attempts to open the link/file in the default editor or web browser
- * 
- * @deprecated Use base support for hyperlink navigation
- */
-public class DefaultOpenOnXML extends AbstractOpenOn {
-	private final String NO_NAMESPACE_SCHEMA_LOCATION = "noNamespaceSchemaLocation"; //$NON-NLS-1$
-	private final String SCHEMA_LOCATION = "schemaLocation"; //$NON-NLS-1$
-	private final String XMLNS = "xmlns"; //$NON-NLS-1$
-	private final String XSI_NAMESPACE_URI = "http://www.w3.org/2001/XMLSchema-instance"; //$NON-NLS-1$
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.AbstractOpenOn#doGetOpenOnRegion(int)
-	 */
-	protected IRegion doGetOpenOnRegion(int offset) {
-		// find the element for this node
-		Node currNode = getCurrentNode(offset);
-		if (currNode != null) {
-			// handle doc type node
-			if (currNode.getNodeType() == Node.DOCUMENT_TYPE_NODE) {
-				XMLNode docNode = (XMLNode) currNode;
-				return new Region(docNode.getStartOffset(), docNode.getEndOffset() - docNode.getStartOffset());
-			}
-
-			Attr linkableAtt = getLinkableAttrFromNode(currNode, offset);
-			// found attribute to open on
-			if (linkableAtt != null) {
-				XMLAttr att = (XMLAttr) linkableAtt;
-				// do not include quotes in attribute value region
-				int regOffset = att.getValueRegionStartOffset();
-				int regLength = att.getValueRegion().getTextLength();
-				String attValue = att.getValueRegionText();
-				if (StringUtils.isQuoted(attValue)) {
-					regOffset = ++regOffset;
-					regLength = regLength - 2;
-				}
-				return new Region(regOffset, regLength);
-			}
-		}
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.AbstractOpenOn#doOpenOn(org.eclipse.jface.text.IRegion)
-	 */
-	protected void doOpenOn(IRegion region) {
-		String uriString = getURIString(region.getOffset());
-		openFileInEditor(uriString);
-	}
-
-	/**
-	 * Get the base location from the current model
-	 * 
-	 */
-	protected String getBaseLocation() {
-		String baseLoc = null;
-
-		// get the base location from the current model
-		IStructuredModel sModel = null;
-		try {
-			sModel = StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());
-			if (sModel != null) {
-				IPath location = new Path(sModel.getBaseLocation());
-				if (location.toFile().exists()) {
-					baseLoc = location.toString();
-				}
-				else {
-					IPath basePath = new Path(sModel.getBaseLocation());
-					if(basePath.segmentCount() > 1)
-						baseLoc = ResourcesPlugin.getWorkspace().getRoot().getFile(basePath).getLocation().toString();
-					else
-						baseLoc = ResourcesPlugin.getWorkspace().getRoot().getLocation().append(basePath).toString();
-				}
-			}
-		}
-		finally {
-			if (sModel != null) {
-				sModel.releaseFromRead();
-			}
-		}
-		return baseLoc;
-	}
-
-	/**
-	 * Returns the attribute node within node at offset
-	 * 
-	 * @param node
-	 * @param offset
-	 * @return Node
-	 */
-	private Node getCurrentAttrNode(Node node, int offset) {
-		if ((node instanceof IndexedRegion) && ((IndexedRegion) node).contains(offset) && (node.hasAttributes())) {
-			NamedNodeMap attrs = node.getAttributes();
-			// go through each attribute in node and if attribute contains
-			// offset, return that attribute
-			for (int i = 0; i < attrs.getLength(); ++i) {
-				// assumption that if parent node is of type IndexedRegion,
-				// then its attributes will also be of type IndexedRegion
-				IndexedRegion attRegion = (IndexedRegion) attrs.item(i);
-				if (attRegion.contains(offset)) {
-					return attrs.item(i);
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the node the cursor is currently on in the document. null if no
-	 * node is selected
-	 * 
-	 * @param offset
-	 * @return Node
-	 */
-	protected Node getCurrentNode(int offset) {
-		// get the current node at the offset (returns element, doctype, text)
-		IndexedRegion inode = null;
-		IStructuredModel sModel = StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());
-		inode = sModel.getIndexedRegion(offset);
-		if (inode == null)
-			inode = sModel.getIndexedRegion(offset - 1);
-		sModel.releaseFromRead();
-
-		if (inode instanceof Node) {
-			return (Node) inode;
-		}
-		return null;
-	}
-
-	/**
-	 * Return an attr of element that is "openOn-able" if one exists. null
-	 * otherwise
-	 * 
-	 * @param element -
-	 *            cannot be null
-	 * @return Attr attribute that can be used for open on, null if no
-	 *         attribute could be found
-	 */
-	protected Attr getLinkableAttr(Element element) {
-		ModelQuery mq = ModelQueryUtil.getModelQuery(element.getOwnerDocument());
-		if (mq != null) {
-			// get the list of attributes for this node
-			NamedNodeMap attrs = element.getAttributes();
-			for (int i = 0; i < attrs.getLength(); ++i) {
-				// check if this attribute is "openOn-able"
-				Attr att = (Attr) attrs.item(i);
-				if (isLinkableAttr(att, mq)) {
-					return att;
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Return an attr of element that is "openOn-able" if one exists. null
-	 * otherwise
-	 * 
-	 * @param node -
-	 *            cannot be null
-	 * @return Attr attribute that can be used for open on, null if no
-	 *         attribute could be found
-	 */
-	protected Attr getLinkableAttrFromNode(Node node, int offset) {
-		// check to see if we're already on an attribute we can work with
-		Attr currentAtt = null;
-		if (node.getNodeType() == Node.ATTRIBUTE_NODE) {
-			currentAtt = (Attr) node;
-		}
-		else {
-			Node attN = getCurrentAttrNode(node, offset);
-			if (attN != null)
-				currentAtt = (Attr) attN;
-		}
-		if ((currentAtt != null) && isLinkableAttr(currentAtt, null)) {
-			return currentAtt;
-		}
-
-		// now check the whole element tag and see if there's an attribute we
-		// can work with
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			// find an attribute that is "openOn-able"
-			return getLinkableAttr((Element) node);
-		}
-		return null;
-	}
-
-	/**
-	 * Find the location hint for the given namespaceURI if it exists
-	 * 
-	 * @param elementNode -
-	 *            cannot be null
-	 * @param namespaceURI -
-	 *            cannot be null
-	 * @return location hint (systemId) if it was found, null otherwise
-	 */
-	private String getLocationHint(Element elementNode, String namespaceURI) {
-		Attr schemaLocNode = elementNode.getAttributeNodeNS(XSI_NAMESPACE_URI, SCHEMA_LOCATION);
-		if (schemaLocNode != null) {
-			StringTokenizer st = new StringTokenizer(schemaLocNode.getValue());
-			while (st.hasMoreTokens()) {
-				String publicId = st.hasMoreTokens() ? st.nextToken() : null;
-				String systemId = st.hasMoreTokens() ? st.nextToken() : null;
-				// found location hint
-				if (namespaceURI.equalsIgnoreCase(publicId))
-					return systemId;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the URI string
-	 * 
-	 * @param offset
-	 */
-	protected String getURIString(int offset) {
-		Node currNode = getCurrentNode(offset);
-		if (currNode != null) {
-			// need the base location, publicId, and systemId for URIResolver
-			String baseLoc = null;
-			String publicId = null;
-			String systemId = null;
-
-			// handle doc type node
-			if (currNode.getNodeType() == Node.DOCUMENT_TYPE_NODE) {
-				baseLoc = getBaseLocation();
-				publicId = ((DocumentType) currNode).getPublicId();
-				systemId = ((DocumentType) currNode).getSystemId();
-			}
-			else { // handle all other types of nodes
-				Attr linkableAtt = getLinkableAttrFromNode(currNode, offset);
-				// found attribute to open on
-				if (linkableAtt != null) {
-					baseLoc = getBaseLocation();
-					String attrName = linkableAtt.getName();
-					String attrValue = linkableAtt.getValue();
-					attrValue = StringUtils.strip(attrValue);
-
-					// handle schemaLocation attribute
-					String prefix = DOMNamespaceHelper.getPrefix(attrName);
-					String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attrName);
-					if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName))) {
-						publicId = attrValue;
-						systemId = getLocationHint(linkableAtt.getOwnerElement(), publicId);
-					}
-					else if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(linkableAtt))) && (unprefixedName.equals("schemaLocation"))) { //$NON-NLS-1$
-						// for now just use the first pair
-						// need to look into being more precise
-						StringTokenizer st = new StringTokenizer(attrValue);
-						publicId = st.hasMoreTokens() ? st.nextToken() : null;
-						systemId = st.hasMoreTokens() ? st.nextToken() : null;
-						// else check if xmlns publicId = value
-					}
-					else {
-						systemId = attrValue;
-					}
-				}
-			}
-
-			String resolvedURI = resolveURI(baseLoc, publicId, systemId);
-			return resolvedURI;
-		}
-		return null;
-	}
-
-	/**
-	 * Checks to see if the given attribute is openOn-able. Attribute is
-	 * openOn-able if it is a namespace declaration attribute or if the
-	 * attribute value is of type URI.
-	 * 
-	 * @param attr
-	 *            cannot be null
-	 * @param query
-	 *            ModelQuery associated with the attribute (can be null)
-	 * @return true if this attribute is "openOn-able" false otherwise
-	 */
-	protected boolean isLinkableAttr(Attr attr, ModelQuery query) {
-		String prefix = DOMNamespaceHelper.getPrefix(attr.getName());
-		String unprefixedName = DOMNamespaceHelper.getUnprefixedName(attr.getName());
-		// determine if attribute is namespace declaration
-		if ((XMLNS.equals(prefix)) || (XMLNS.equals(unprefixedName)))
-			return true;
-
-		// determine if attribute contains schema location
-		if ((XSI_NAMESPACE_URI.equals(DOMNamespaceHelper.getNamespaceURI(attr))) && ((SCHEMA_LOCATION.equals(unprefixedName)) || (NO_NAMESPACE_SCHEMA_LOCATION.equals(unprefixedName))))
-			return true;
-
-		// determine if attribute value is of type URI
-		if (query != null) {
-			CMAttributeDeclaration attrDecl = query.getCMAttributeDeclaration(attr);
-			if ((attrDecl != null) && (attrDecl.getAttrType() != null) && (CMDataType.URI.equals(attrDecl.getAttrType().getDataTypeName()))) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Resolves the given URI information
-	 * 
-	 * @param baseLocation
-	 * @param publicId
-	 * @param systemId
-	 * @return String resolved uri.
-	 */
-	protected String resolveURI(String baseLocation, String publicId, String systemId) {
-		// dont resolve if there's nothing to resolve
-		if ((baseLocation == null) && (publicId == null) && (systemId == null))
-			return null;
-		return URIResolverPlugin.createResolver().resolve(baseLocation, publicId, systemId);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/EncodingSettings.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/EncodingSettings.java
deleted file mode 100644
index e05a354..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/EncodingSettings.java
+++ /dev/null
@@ -1,356 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.preferences;
-
-import java.util.Vector;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.sse.core.internal.encoding.CommonCharsetNames;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-/**
- * EncodingSettings is a composite that can be used to display the set of
- * encoding values that are available to the user. The list of encoding values
- * is based off the SupportedJavaEncoding class. As the user selects an
- * encoding from the combo box, the readonly field below it changes to show
- * the IANA tag for that particular encoding description. The labels for the
- * widgets are configurable and the initial value to display to the user can
- * be set using the setIANATag(). The currently selected entry's IANA tag can
- * be retrieved with getIANATag(). Entries displayed to the user can be added
- * and removed.
- */
-public class EncodingSettings extends Composite {
-
-	private class ComboListener implements ModifyListener {
-		public void modifyText(ModifyEvent e) {
-			int i = encodingCombo.getSelectionIndex();
-			if (i >= 0 && i < ianaVector.size())
-				ianaText.setText((String) (ianaVector.elementAt(encodingCombo.getSelectionIndex())));
-		}
-	}
-
-	private static String ENCODING_LABEL = XMLUIPlugin.getResourceString("%EncodingSettings.1"); //$NON-NLS-1$
-
-	private static String IANA_LABEL = XMLUIPlugin.getResourceString("%EncodingSettings.0"); //$NON-NLS-1$
-
-	private ModifyListener comboListener = new ComboListener();
-	protected Combo encodingCombo;
-	protected Label encodingLabel, ianaLabel;
-	protected Text ianaText;
-	protected Vector ianaVector;
-
-	/**
-	 * Method EncodingSettings.
-	 * 
-	 * @param parent
-	 */
-	public EncodingSettings(Composite parent) {
-		super(parent, SWT.NONE);
-		init(IANA_LABEL, ENCODING_LABEL);
-	}
-
-	/**
-	 * Method EncodingSettings.
-	 * 
-	 * @param parent
-	 * @param encodingLabel -
-	 *            text label to use beside the locale sensitive description of
-	 *            the currently selected encoding
-	 */
-	public EncodingSettings(Composite parent, String encodingLabel) {
-		super(parent, SWT.NONE);
-		init(IANA_LABEL, encodingLabel);
-	}
-
-	/**
-	 * Method EncodingSettings.
-	 * 
-	 * @param parent
-	 * @param ianaLabel =
-	 *            text label to use beside the display only IANA field
-	 * @param encodingLabel -
-	 *            text label to use beside the locale sensitive description of
-	 *            the currently selected encoding
-	 */
-	public EncodingSettings(Composite parent, String ianaLabel, String encodingLabel) {
-		super(parent, SWT.NONE);
-		init(ianaLabel, encodingLabel);
-	}
-
-	/**
-	 * Method addEntry. Add an entry to the end of the Encoding Combobox
-	 * 
-	 * @param description -
-	 *            encoding description to display
-	 * @param ianaTag -
-	 *            IANA tag for the description
-	 */
-	public void addEntry(String description, String ianaTag) {
-		encodingCombo.add(description);
-		ianaVector.add(ianaTag);
-	}
-
-	/**
-	 * Method addEntry. Add an entry to the Encoding Combobox at index index
-	 * 
-	 * @param description -
-	 *            encoding description to display
-	 * @param ianaTag -
-	 *            IANA tag for the description
-	 * @param index -
-	 *            index into the combo to add to
-	 */
-	public void addEntry(String description, String ianaTag, int index) {
-		if (index == ianaVector.size()) {
-			// just add to the end
-			addEntry(description, ianaTag);
-			return;
-		}
-
-		if (0 <= index && index < ianaVector.size()) {
-			encodingCombo.add(description, index);
-			ianaVector.add(index, ianaTag);
-		}
-	}
-
-	protected Combo createComboBox(Composite parent, boolean isReadOnly) {
-		int style = isReadOnly == true ? SWT.READ_ONLY : SWT.DROP_DOWN;
-
-		Combo combo = new Combo(parent, style);
-
-		GridData data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.grabExcessHorizontalSpace = true;
-		combo.setLayoutData(data);
-		return combo;
-	}
-
-	/**
-	 * Helper method for creating labels.
-	 */
-	protected Label createLabel(Composite parent, String text) {
-		Label label = new Label(parent, SWT.LEFT);
-		label.setText(text);
-
-		GridData data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		label.setLayoutData(data);
-		return label;
-	}
-
-	protected Text createTextField(Composite parent, int width) {
-		Text text = new Text(parent, SWT.SINGLE | SWT.READ_ONLY);
-
-		GridData data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.grabExcessHorizontalSpace = true;
-		data.widthHint = width;
-		text.setLayoutData(data);
-
-		return text;
-	}
-
-	/**
-	 * @see org.eclipse.swt.widgets.Widget#dispose()
-	 */
-	public void dispose() {
-		encodingCombo.removeModifyListener(comboListener);
-		super.dispose();
-	}
-
-	private void fillCombo() {
-		try {
-			String[] ianaTags = CommonCharsetNames.getCommonCharsetNames();
-			int totalNum = ianaTags.length;
-			for (int i = 0; i < totalNum; i++) {
-				String iana = ianaTags[i];
-				String enc = CommonCharsetNames.getDisplayString(iana);
-
-				if (enc != null) {
-					encodingCombo.add(enc);
-				} else {
-					Logger.log(Logger.WARNING, "CommonCharsetNames.getDisplayString(" + iana + ") returned null"); //$NON-NLS-1$ //$NON-NLS-2$
-					encodingCombo.add(iana);
-				}
-				ianaVector.add(iana);
-			}
-		} catch (Exception e) {
-			//e.printStackTrace();
-			//MessageDialog.openError(getShell(), "Resource exception",
-			// "Unable to obtain encoding strings. Check resource file");
-			//XMLEncodingPlugin.getPlugin().getMsgLogger().write(e.toString());
-			//XMLEncodingPlugin.getPlugin().getMsgLogger().writeCurrentThread();
-			Logger.log(Logger.ERROR, "Exception", e); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * <code>getEncoding</code> Get the descriptive encoding name that was
-	 * selected.
-	 * 
-	 * @return a <code>String</code> value
-	 */
-	public String getEncoding() {
-		return encodingCombo.getText();
-	}
-
-	/**
-	 * Method getEncodingCombo. Returns the combo used to display the encoding
-	 * descriptions.
-	 * 
-	 * @return Combo
-	 */
-	public Combo getEncodingCombo() {
-		return encodingCombo;
-	}
-
-	/**
-	 * <code>getIANATag</code> Get the IANA tag equivalent of the selected
-	 * descriptive encoding name
-	 * 
-	 * @return a <code>String</code> value
-	 */
-	public String getIANATag() {
-		int i = encodingCombo.getSelectionIndex();
-		if (i >= 0) {
-			return (String) (ianaVector.elementAt(i));
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	protected void init(String ianaLabelStr, String encodingLabelStr) {
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		setLayout(layout);
-		GridData data = new GridData();
-		data.verticalAlignment = GridData.FILL;
-		data.horizontalAlignment = GridData.FILL;
-		data.grabExcessHorizontalSpace = true;
-		setLayoutData(data);
-
-		encodingLabel = createLabel(this, encodingLabelStr);
-		encodingCombo = createComboBox(this, true);
-		ianaLabel = createLabel(this, ianaLabelStr);
-		ianaText = createTextField(this, 20);
-		ianaVector = new Vector();
-
-		fillCombo();
-		resetToDefaultEncoding();
-		encodingCombo.addModifyListener(comboListener);
-	}
-
-	/**
-	 * <code>isEncodingInList</code> Checks whether the encoding name is in
-	 * the combo
-	 * 
-	 * @param enc
-	 *            a <code>string</code> value. The encoding name.
-	 * @return a <code>boolean</code> value. TRUE if encoding is in list.
-	 *         FALSE if encoding is not in list.
-	 */
-	public boolean isEncodingInList(String enc) {
-		int i = encodingCombo.indexOf(enc);
-		if (i >= 0) {
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * <code>isIANATagInList</code> Checks whether the IANA tag is in the
-	 * combo
-	 * 
-	 * @param ianaTag
-	 *            a <code>string</code> value. The IANA tag.
-	 * @return a <code>boolean</code> value. TRUE if tag is in list. FALSE
-	 *         if tag is not in list.
-	 */
-	public boolean isIANATagInList(String ianaTag) {
-		int i = ianaVector.indexOf(ianaTag);
-		if (i >= 0) {
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Method removeEntry. Removes both the description and the IANA tag at
-	 * the specified index
-	 * 
-	 * @param index
-	 */
-	public void removeEntry(int index) {
-		if (0 <= index && index < ianaVector.size()) {
-			encodingCombo.remove(index);
-			ianaVector.remove(index);
-		}
-	}
-
-	/**
-	 * Method resetToDefaultEncoding. Reset the control to the default
-	 * encoding. Currently UTF-8
-	 */
-	public void resetToDefaultEncoding() {
-		String defaultIANATag = "UTF-8"; //$NON-NLS-1$
-		ianaText.setText(defaultIANATag);
-		setIANATag(defaultIANATag);
-	}
-
-	/**
-	 * Method setEnabled. Enable/disable the EncodingSettings composite.
-	 * 
-	 * @param enabled
-	 */
-	public void setEnabled(boolean enabled) {
-		encodingCombo.setEnabled(enabled);
-		encodingLabel.setEnabled(enabled);
-		ianaLabel.setEnabled(enabled);
-		ianaText.setEnabled(enabled);
-	}
-
-	/**
-	 * <code>setEncoding</code> Set the selection in the combo to the
-	 * descriptive encoding name.
-	 * 
-	 * @param enc
-	 *            a <code>string</code> value. Note this is not the IANA
-	 *            tag.
-	 */
-	public void setEncoding(String enc) {
-		encodingCombo.setText(enc);
-		encodingCombo.select(encodingCombo.indexOf(enc));
-	}
-
-	/**
-	 * <code>setIANATag</code> Set the IANA tag for the combo
-	 * 
-	 * @param ianaTag
-	 *            a <code>string</code> value. The IANA tag.
-	 */
-	public void setIANATag(String ianaTag) {
-		int i = ianaVector.indexOf(ianaTag);
-		if (i >= 0) {
-			encodingCombo.select(i);
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/WorkbenchDefaultEncodingSettings.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/WorkbenchDefaultEncodingSettings.java
deleted file mode 100644
index 6bb93dc..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/WorkbenchDefaultEncodingSettings.java
+++ /dev/null
@@ -1,137 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.preferences;
-
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.wst.sse.core.internal.encoding.CommonCharsetNames;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-/**
- * WorkbenchDefaultEncodingSettings is an extension of EncodingSettings. This
- * composite contains EncodingSettings for users to select the encoding they
- * desire as well as a checkbox for users to select to use the default
- * workbench encoding instead.
- * 
- * @see org.eclipse.wst.xml.ui.preferences.EncodingSettings
- */
-public class WorkbenchDefaultEncodingSettings extends Composite {
-
-	private final static int INDENT = 15;
-	private static final String WORKBENCH_DEFAULT = ""; //$NON-NLS-1$
-	private EncodingSettings fEncodingSettings;
-	private String fNonDefaultIANA = null;
-	private Button fUseDefaultButton;
-
-	public WorkbenchDefaultEncodingSettings(Composite parent) {
-		super(parent, SWT.NONE);
-		createControls();
-	}
-
-	private void createControls() {
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 1;
-		layout.marginWidth = 0;
-		setLayout(layout);
-		GridData data = new GridData();
-		data.verticalAlignment = GridData.FILL;
-		data.horizontalAlignment = GridData.FILL;
-		data.grabExcessHorizontalSpace = true;
-		setLayoutData(data);
-
-		Composite defaultEncodingComposite = new Composite(this, SWT.NONE);
-		layout = new GridLayout();
-		layout.marginWidth = 0;
-		layout.marginHeight = 0;
-		data = new GridData(GridData.FILL_BOTH);
-		defaultEncodingComposite.setLayout(layout);
-		defaultEncodingComposite.setLayoutData(data);
-
-		fUseDefaultButton = new Button(defaultEncodingComposite, SWT.CHECK);
-		fUseDefaultButton.setText(XMLUIPlugin.getResourceString("%WorkbenchDefaultEncodingSettings.0")); //$NON-NLS-1$
-
-		fUseDefaultButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				handleUseDefaultButtonSelected();
-			}
-		});
-
-		fEncodingSettings = new EncodingSettings(this);
-		((GridLayout) fEncodingSettings.getLayout()).marginWidth = 0;
-		((GridData) fEncodingSettings.getLayoutData()).horizontalIndent = INDENT;
-
-	}
-
-	private Combo getEncodingCombo() {
-		return fEncodingSettings.getEncodingCombo();
-	}
-
-	/**
-	 * <code>getIANATag</code> Get the IANA tag equivalent of the selected
-	 * descriptive encoding name. Returns empty string if using workbench
-	 * encoding.
-	 * 
-	 * @return a <code>String</code> value
-	 */
-	public String getIANATag() {
-		if (!isDefault())
-			return fEncodingSettings.getIANATag();
-		return WORKBENCH_DEFAULT;
-	}
-
-	private String getWorkbenchEncoding() {
-		return ResourcesPlugin.getEncoding();
-	}
-
-	private void handleUseDefaultButtonSelected() {
-		if (fUseDefaultButton.getSelection()) {
-			fNonDefaultIANA = fEncodingSettings.getIANATag();
-			String workbenchValue = getWorkbenchEncoding();
-			workbenchValue = CommonCharsetNames.getIanaPreferredCharsetName(workbenchValue);
-			fEncodingSettings.setIANATag(workbenchValue);
-		} else if (fNonDefaultIANA != null) {
-			fEncodingSettings.setIANATag(fNonDefaultIANA);
-		}
-		getEncodingCombo().setEnabled(!fUseDefaultButton.getSelection());
-		fEncodingSettings.setEnabled(!fUseDefaultButton.getSelection());
-	}
-
-	private boolean isDefault() {
-		return fUseDefaultButton.getSelection();
-	}
-
-	/**
-	 * <code>setEncoding</code> Set the selection in the combo to the
-	 * descriptive encoding name. Selects use workbench encoding if ianaTag is
-	 * null or empty string.
-	 * 
-	 */
-	public void setIANATag(String ianaTag) {
-		if (ianaTag == null || ianaTag.equals(WORKBENCH_DEFAULT)) {
-			fUseDefaultButton.setSelection(true);
-			handleUseDefaultButtonSelected();
-		} else {
-			fUseDefaultButton.setSelection(false);
-			handleUseDefaultButtonSelected();
-			if (!isDefault())
-				fEncodingSettings.setIANATag(ianaTag);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLColorPage.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLColorPage.java
deleted file mode 100644
index 204137f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLColorPage.java
+++ /dev/null
@@ -1,222 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.preferences;
-
-import java.util.ArrayList;
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Iterator;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore;
-import org.eclipse.wst.sse.ui.internal.preferences.OverlayPreferenceStore.OverlayKey;
-import org.eclipse.wst.sse.ui.preferences.ui.AbstractColorPage;
-import org.eclipse.wst.sse.ui.preferences.ui.StyledTextColorPicker;
-import org.eclipse.wst.xml.core.contenttype.ContentTypeIdForXML;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.xml.ui.style.IStyleConstantsXML;
-
-public class XMLColorPage extends AbstractColorPage {
-
-	protected Control createContents(Composite parent) {
-		Composite pageComponent = createComposite(parent, 1);
-		((GridData) pageComponent.getLayoutData()).horizontalAlignment = GridData.HORIZONTAL_ALIGN_FILL;
-
-		super.createContents(pageComponent);
-		WorkbenchHelp.setHelp(pageComponent, IHelpContextIds.XML_PREFWEBX_STYLES_HELPID);
-		return pageComponent;
-	}
-
-	/**
-	 * Set up all the style preference keys in the overlay store
-	 */
-	protected OverlayKey[] createOverlayStoreKeys() {
-		ArrayList overlayKeys = new ArrayList();
-
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-		Iterator i = styleList.iterator();
-		while (i.hasNext()) {
-			overlayKeys.add(new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.STRING, (String) i.next()));
-		}
-
-		OverlayPreferenceStore.OverlayKey[] keys = new OverlayPreferenceStore.OverlayKey[overlayKeys.size()];
-		overlayKeys.toArray(keys);
-		return keys;
-	}
-
-	protected IPreferenceStore doGetPreferenceStore() {
-		return XMLUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	public String getSampleText() {
-		return XMLUIPlugin.getResourceString("%Sample_XML_doc"); //$NON-NLS-1$ = "<?xml version=\"1.0\"?>\n<?customProcessingInstruction\n\tXML processor specific\n\tcontent ?>\n<!DOCTYPE colors\n\tPUBLIC \"//IBM/XML/COLORS/\" \"colors.dtd\">\n<colors>\n\t<!-- begin color definitions -->\n\t<color name=\"plaintext\" foreground=\"#000000\"\n\t\tbackground=\"#D4D0C8\"/>\n\t<color name=\"bold\" foreground=\"#000000\"\n\t\tbackground=\"#B3ACA0\">\n\t<![CDATA[<123456789>]]>\n\tNormal text content.\n\t<color name=\"inverse\" foreground=\"#F0F0F0\"\n\t\tbackground=\"#D4D0C8\"/>\n\n</colors>\n";
-	}
-
-	protected void initCommonContextStyleMap(Dictionary contextStyleMap) {
-
-		contextStyleMap.put(XMLRegionContext.XML_COMMENT_OPEN, IStyleConstantsXML.COMMENT_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_COMMENT_TEXT, IStyleConstantsXML.COMMENT_TEXT);
-		contextStyleMap.put(XMLRegionContext.XML_COMMENT_CLOSE, IStyleConstantsXML.COMMENT_BORDER);
-
-		contextStyleMap.put(XMLRegionContext.XML_TAG_OPEN, IStyleConstantsXML.TAG_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_END_TAG_OPEN, IStyleConstantsXML.TAG_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_TAG_NAME, IStyleConstantsXML.TAG_NAME);
-		contextStyleMap.put(XMLRegionContext.XML_TAG_ATTRIBUTE_NAME, IStyleConstantsXML.TAG_ATTRIBUTE_NAME);
-		contextStyleMap.put(XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE, IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-		contextStyleMap.put(XMLRegionContext.XML_TAG_CLOSE, IStyleConstantsXML.TAG_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_EMPTY_TAG_CLOSE, IStyleConstantsXML.TAG_BORDER);
-
-		contextStyleMap.put(XMLRegionContext.XML_DECLARATION_OPEN, IStyleConstantsXML.DECL_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_DECLARATION_CLOSE, IStyleConstantsXML.DECL_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_ELEMENT_DECLARATION, IStyleConstantsXML.DECL_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_ELEMENT_DECL_CLOSE, IStyleConstantsXML.DECL_BORDER);
-
-		contextStyleMap.put(XMLRegionContext.XML_CONTENT, IStyleConstantsXML.XML_CONTENT);
-	}
-
-	protected void initCommonDescriptions(Dictionary descriptions) {
-
-		// create descriptions for hilighting types
-		descriptions.put(IStyleConstantsXML.COMMENT_BORDER, XMLUIPlugin.getResourceString("%Comment_Delimiters_UI_")); //$NON-NLS-1$ = "Comment Delimiters"
-		descriptions.put(IStyleConstantsXML.COMMENT_TEXT, XMLUIPlugin.getResourceString("%Comment_Content_UI_")); //$NON-NLS-1$ = "Comment Content"
-		descriptions.put(IStyleConstantsXML.TAG_BORDER, XMLUIPlugin.getResourceString("%Tag_Delimiters_UI_")); //$NON-NLS-1$ = "Tag Delimiters"
-		descriptions.put(IStyleConstantsXML.TAG_NAME, XMLUIPlugin.getResourceString("%Tag_Names_UI_")); //$NON-NLS-1$ = "Tag Names"
-		descriptions.put(IStyleConstantsXML.TAG_ATTRIBUTE_NAME, XMLUIPlugin.getResourceString("%Attribute_Names_UI_")); //$NON-NLS-1$ = "Attribute Names"
-		descriptions.put(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE, XMLUIPlugin.getResourceString("%Attribute_Values_UI_")); //$NON-NLS-1$ = "Attribute Values"
-		descriptions.put(IStyleConstantsXML.DECL_BORDER, XMLUIPlugin.getResourceString("%Declaration_Delimiters_UI_")); //$NON-NLS-1$ = "Declaration Delimiters"
-		descriptions.put(IStyleConstantsXML.XML_CONTENT, XMLUIPlugin.getResourceString("%Content_UI_")); //$NON-NLS-1$ = "Content"
-	}
-
-	protected void initCommonStyleList(ArrayList list) {
-
-		//list.add(IStyleConstantsXML.CDATA_BORDER);
-		//list.add(IStyleConstantsXML.CDATA_TEXT);
-		//list.add(IStyleConstantsXML.PI_BORDER);
-		//list.add(IStyleConstantsXML.PI_CONTENT);
-
-		list.add(IStyleConstantsXML.TAG_BORDER);
-		list.add(IStyleConstantsXML.TAG_NAME);
-		list.add(IStyleConstantsXML.TAG_ATTRIBUTE_NAME);
-		list.add(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-		list.add(IStyleConstantsXML.COMMENT_BORDER);
-		list.add(IStyleConstantsXML.COMMENT_TEXT);
-		list.add(IStyleConstantsXML.DECL_BORDER);
-		list.add(IStyleConstantsXML.XML_CONTENT);
-	}
-
-	protected void initContextStyleMap(Dictionary contextStyleMap) {
-
-		initCommonContextStyleMap(contextStyleMap);
-		initDocTypeContextStyleMap(contextStyleMap);
-		contextStyleMap.put(XMLRegionContext.XML_CDATA_OPEN, IStyleConstantsXML.CDATA_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_CDATA_TEXT, IStyleConstantsXML.CDATA_TEXT);
-		contextStyleMap.put(XMLRegionContext.XML_CDATA_CLOSE, IStyleConstantsXML.CDATA_BORDER);
-
-		contextStyleMap.put(XMLRegionContext.XML_PI_OPEN, IStyleConstantsXML.PI_BORDER);
-		contextStyleMap.put(XMLRegionContext.XML_PI_CONTENT, IStyleConstantsXML.PI_CONTENT);
-		contextStyleMap.put(XMLRegionContext.XML_PI_CLOSE, IStyleConstantsXML.PI_BORDER);
-
-	}
-
-	protected void initDescriptions(Dictionary descriptions) {
-
-		initCommonDescriptions(descriptions);
-		initDocTypeDescriptions(descriptions);
-		descriptions.put(IStyleConstantsXML.CDATA_BORDER, XMLUIPlugin.getResourceString("%CDATA_Delimiters_UI_")); //$NON-NLS-1$ = "CDATA Delimiters"
-		descriptions.put(IStyleConstantsXML.CDATA_TEXT, XMLUIPlugin.getResourceString("%CDATA_Content_UI_")); //$NON-NLS-1$ = "CDATA Content"
-		descriptions.put(IStyleConstantsXML.PI_BORDER, XMLUIPlugin.getResourceString("%Processing_Instruction_Del_UI_")); //$NON-NLS-1$ = "Processing Instruction Delimiters"
-		descriptions.put(IStyleConstantsXML.PI_CONTENT, XMLUIPlugin.getResourceString("%Processing_Instruction_Con_UI__UI_")); //$NON-NLS-1$ = "Processing Instruction Content"
-	}
-
-	protected void initDocTypeContextStyleMap(Dictionary contextStyleMap) {
-
-		contextStyleMap.put(XMLRegionContext.XML_ELEMENT_DECL_NAME, IStyleConstantsXML.DOCTYPE_NAME);
-		contextStyleMap.put(XMLRegionContext.XML_DOCTYPE_DECLARATION, IStyleConstantsXML.TAG_NAME);
-		contextStyleMap.put(XMLRegionContext.XML_DOCTYPE_DECLARATION_CLOSE, IStyleConstantsXML.DECL_BORDER);
-
-		contextStyleMap.put(XMLRegionContext.XML_DOCTYPE_NAME, IStyleConstantsXML.DOCTYPE_NAME);
-		contextStyleMap.put(XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_PUBLIC, IStyleConstantsXML.DOCTYPE_EXTERNAL_ID);
-		contextStyleMap.put(XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_PUBREF, IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF);
-		contextStyleMap.put(XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_SYSTEM, IStyleConstantsXML.DOCTYPE_EXTERNAL_ID);
-		contextStyleMap.put(XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_SYSREF, IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF);
-	}
-
-	protected void initDocTypeDescriptions(Dictionary descriptions) {
-
-		// create descriptions for hilighting types for DOCTYPE related items
-		descriptions.put(IStyleConstantsXML.DOCTYPE_NAME, XMLUIPlugin.getResourceString("%DOCTYPE_Name_UI_")); //$NON-NLS-1$ = "DOCTYPE Name"
-		descriptions.put(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID, XMLUIPlugin.getResourceString("%DOCTYPE_SYSTEM/PUBLIC_Keyw_UI_")); //$NON-NLS-1$ = "DOCTYPE SYSTEM/PUBLIC Keyword"
-		descriptions.put(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF, XMLUIPlugin.getResourceString("%DOCTYPE_Public_Reference_UI_")); //$NON-NLS-1$ = "DOCTYPE Public Reference"
-		descriptions.put(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF, XMLUIPlugin.getResourceString("%DOCTYPE_System_Reference_UI_")); //$NON-NLS-1$ = "DOCTYPE System Reference"
-	}
-
-	protected void initDocTypeStyleList(ArrayList list) {
-
-		list.add(IStyleConstantsXML.DOCTYPE_NAME);
-		list.add(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID);
-		list.add(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF);
-		list.add(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF);
-	}
-
-	protected void initStyleList(ArrayList list) {
-		initCommonStyleList(list);
-		initDocTypeStyleList(list);
-		list.add(IStyleConstantsXML.CDATA_BORDER);
-		list.add(IStyleConstantsXML.CDATA_TEXT);
-		list.add(IStyleConstantsXML.PI_BORDER);
-		list.add(IStyleConstantsXML.PI_CONTENT);
-	}
-
-	public boolean performOk() {
-		// required since the superclass *removes* existing preferences before
-		// saving its own
-		super.performOk();
-
-		SSEUIPlugin.getDefault().savePluginPreferences();
-		return true;
-	}
-
-	protected void setupPicker(StyledTextColorPicker picker) {
-		IModelManager mmanager = StructuredModelManager.getModelManager();
-		picker.setParser(mmanager.createStructuredDocumentFor(ContentTypeIdForXML.ContentTypeID_XML).getParser());
-
-		Dictionary descriptions = new Hashtable();
-		initDescriptions(descriptions);
-
-		Dictionary contextStyleMap = new Hashtable();
-		initContextStyleMap(contextStyleMap);
-
-		ArrayList styleList = new ArrayList();
-		initStyleList(styleList);
-
-		picker.setContextStyleMap(contextStyleMap);
-		picker.setDescriptions(descriptions);
-		picker.setStyleList(styleList);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.preferences.ui.AbstractColorPage#savePreferences()
-	 */
-	protected void savePreferences() {
-		XMLUIPlugin.getDefault().savePluginPreferences();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLFilesPreferencePage.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLFilesPreferencePage.java
deleted file mode 100644
index 8cbbd6a..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLFilesPreferencePage.java
+++ /dev/null
@@ -1,200 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.preferences;
-
-import java.util.Vector;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.sse.core.internal.encoding.CommonEncodingPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.preferences.ui.AbstractPreferencePage;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds;
-
-public class XMLFilesPreferencePage extends AbstractPreferencePage {
-	protected EncodingSettings fEncodingSettings = null;
-
-	protected Combo fEndOfLineCode = null;
-	private Vector fEOLCodes = null;
-
-	protected Control createContents(Composite parent) {
-		Composite composite = (Composite) super.createContents(parent);
-		WorkbenchHelp.setHelp(composite, IHelpContextIds.XML_PREFWEBX_FILES_HELPID);
-		createContentsForCreatingOrSavingGroup(composite);
-		createContentsForCreatingGroup(composite);
-
-		setSize(composite);
-		loadPreferences();
-
-		return composite;
-	}
-
-	protected void createContentsForCreatingGroup(Composite parent) {
-		Group creatingGroup = createGroup(parent, 1);
-		creatingGroup.setText(SSEUIPlugin.getResourceString("%Creating_files")); //$NON-NLS-1$
-
-		Label label = createLabel(creatingGroup, SSEUIPlugin.getResourceString("%Encoding_desc")); //$NON-NLS-1$
-
-		fEncodingSettings = new EncodingSettings(creatingGroup, SSEUIPlugin.getResourceString("%Encoding")); //$NON-NLS-1$
-	}
-
-	protected void createContentsForCreatingOrSavingGroup(Composite parent) {
-		Group creatingOrSavingGroup = createGroup(parent, 2);
-		creatingOrSavingGroup.setText(SSEUIPlugin.getResourceString("%Creating_or_saving_files")); //$NON-NLS-1$
-
-		Label label = createLabel(creatingOrSavingGroup, SSEUIPlugin.getResourceString("%End-of-line_code_desc")); //$NON-NLS-1$
-		((GridData) label.getLayoutData()).horizontalSpan = 2;
-		((GridData) label.getLayoutData()).grabExcessHorizontalSpace = true;
-
-		createLabel(creatingOrSavingGroup, SSEUIPlugin.getResourceString("%End-of-line_code")); //$NON-NLS-1$
-		fEndOfLineCode = createDropDownBox(creatingOrSavingGroup);
-		populateLineDelimiters();
-	}
-
-	protected IPreferenceStore doGetPreferenceStore() {
-		return SSEUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	protected void doSavePreferenceStore() {
-		XMLCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-
-	/**
-	 * Return the currently selected line delimiter preference
-	 * 
-	 * @return a line delimiter constant from CommonEncodingPreferenceNames
-	 */
-	private String getCurrentEOLCode() {
-		int i = fEndOfLineCode.getSelectionIndex();
-		if (i >= 0) {
-			return (String) (fEOLCodes.elementAt(i));
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.preferences.ui.AbstractPreferencePage#getModelPreferences()
-	 */
-	protected Preferences getModelPreferences() {
-		return XMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	protected void initializeValues() {
-		initializeValuesForCreatingOrSavingGroup();
-		initializeValuesForCreatingGroup();
-	}
-
-	protected void initializeValuesForCreatingGroup() {
-		String encoding = getModelPreferences().getString(CommonEncodingPreferenceNames.OUTPUT_CODESET);
-
-		fEncodingSettings.setIANATag(encoding);
-	}
-
-	protected void initializeValuesForCreatingOrSavingGroup() {
-		String endOfLineCode = getModelPreferences().getString(CommonEncodingPreferenceNames.END_OF_LINE_CODE);
-
-		if (endOfLineCode.length() > 0)
-			setCurrentEOLCode(endOfLineCode);
-		else
-			setCurrentEOLCode(CommonEncodingPreferenceNames.NO_TRANSLATION);
-	}
-
-	protected void performDefaults() {
-		performDefaultsForCreatingOrSavingGroup();
-		performDefaultsForCreatingGroup();
-
-		super.performDefaults();
-	}
-
-	protected void performDefaultsForCreatingGroup() {
-		String encoding = getModelPreferences().getDefaultString(CommonEncodingPreferenceNames.OUTPUT_CODESET);
-
-		fEncodingSettings.setIANATag(encoding);
-		//		fEncodingSettings.resetToDefaultEncoding();
-	}
-
-	protected void performDefaultsForCreatingOrSavingGroup() {
-		String endOfLineCode = getModelPreferences().getDefaultString(CommonEncodingPreferenceNames.END_OF_LINE_CODE);
-
-		if (endOfLineCode.length() > 0)
-			setCurrentEOLCode(endOfLineCode);
-		else
-			setCurrentEOLCode(CommonEncodingPreferenceNames.NO_TRANSLATION);
-	}
-
-	public boolean performOk() {
-		boolean result = super.performOk();
-
-		doSavePreferenceStore();
-
-		return result;
-	}
-
-	/**
-	 * Populates the vector containing the line delimiter to display string
-	 * mapping and the combobox displaying line delimiters
-	 */
-	private void populateLineDelimiters() {
-		fEOLCodes = new Vector();
-		fEndOfLineCode.add(SSEUIPlugin.getResourceString("%EOL_Unix")); //$NON-NLS-1$
-		fEOLCodes.add(CommonEncodingPreferenceNames.LF);
-
-		fEndOfLineCode.add(SSEUIPlugin.getResourceString("%EOL_Mac")); //$NON-NLS-1$
-		fEOLCodes.add(CommonEncodingPreferenceNames.CR);
-
-		fEndOfLineCode.add(SSEUIPlugin.getResourceString("%EOL_Windows")); //$NON-NLS-1$
-		fEOLCodes.add(CommonEncodingPreferenceNames.CRLF);
-
-		fEndOfLineCode.add(SSEUIPlugin.getResourceString("%EOL_NoTranslation")); //$NON-NLS-1$
-		fEOLCodes.add(CommonEncodingPreferenceNames.NO_TRANSLATION);
-	}
-
-	/**
-	 * Select the line delimiter in the eol combobox
-	 * 
-	 */
-	private void setCurrentEOLCode(String eolCode) {
-		// Clear the current selection.
-		fEndOfLineCode.clearSelection();
-		fEndOfLineCode.deselectAll();
-
-		int i = fEOLCodes.indexOf(eolCode);
-		if (i >= 0) {
-			fEndOfLineCode.select(i);
-		}
-	}
-
-	protected void storeValues() {
-		storeValuesForCreatingOrSavingGroup();
-		storeValuesForCreatingGroup();
-	}
-
-	protected void storeValuesForCreatingGroup() {
-		getModelPreferences().setValue(CommonEncodingPreferenceNames.OUTPUT_CODESET, fEncodingSettings.getIANATag());
-	}
-
-	protected void storeValuesForCreatingOrSavingGroup() {
-		String eolCode = getCurrentEOLCode();
-		getModelPreferences().setValue(CommonEncodingPreferenceNames.END_OF_LINE_CODE, eolCode);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLSourcePreferencePage.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLSourcePreferencePage.java
deleted file mode 100644
index c2797a2..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLSourcePreferencePage.java
+++ /dev/null
@@ -1,246 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.preferences;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.preferences.ui.AbstractPreferencePage;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds;
-import org.eclipse.wst.xml.ui.internal.preferences.XMLUIPreferenceNames;
-
-public class XMLSourcePreferencePage extends AbstractPreferencePage implements ModifyListener, SelectionListener, IWorkbenchPreferencePage {
-	// Content Assist
-	protected Button fAutoPropose;
-	protected Label fAutoProposeLabel;
-	protected Text fAutoProposeText;
-	protected Button fClearAllBlankLines;
-	protected Button fIndentUsingTabs;
-	// Formatting
-	protected Label fLineWidthLabel;
-	protected Text fLineWidthText;
-	protected Button fSplitMultiAttrs;
-	// grammar constraints
-	protected Button fUseInferredGrammar;
-
-	protected Control createContents(Composite parent) {
-		Composite composite = (Composite) super.createContents(parent);
-		WorkbenchHelp.setHelp(composite, IHelpContextIds.XML_PREFWEBX_SOURCE_HELPID);
-
-		createContentsForFormattingGroup(composite);
-		createContentsForContentAssistGroup(composite);
-		createContentsForGrammarConstraintsGroup(composite);
-		setSize(composite);
-		loadPreferences();
-
-		return composite;
-	}
-
-	protected void createContentsForContentAssistGroup(Composite parent) {
-		Group contentAssistGroup = createGroup(parent, 2);
-		contentAssistGroup.setText(SSEUIPlugin.getResourceString("%Content_assist_UI_")); //$NON-NLS-1$ = "Content assist"
-
-		fAutoPropose = createCheckBox(contentAssistGroup, SSEUIPlugin.getResourceString("%Automatically_make_suggest_UI_")); //$NON-NLS-1$ = "Automatically make suggestions"
-		((GridData) fAutoPropose.getLayoutData()).horizontalSpan = 2;
-		fAutoPropose.addSelectionListener(this);
-
-		fAutoProposeLabel = createLabel(contentAssistGroup, SSEUIPlugin.getResourceString("%Prompt_when_these_characte_UI_")); //$NON-NLS-1$ = "Prompt when these characters are inserted:"
-		fAutoProposeText = createTextField(contentAssistGroup);
-	}
-
-	protected void createContentsForFormattingGroup(Composite parent) {
-		Group formattingGroup = createGroup(parent, 2);
-		formattingGroup.setText(SSEUIPlugin.getResourceString("%Formatting_UI_")); //$NON-NLS-1$ = "Formatting"
-
-		fLineWidthLabel = createLabel(formattingGroup, SSEUIPlugin.getResourceString("%Line_width__UI_")); //$NON-NLS-1$ = "Line width:"
-		fLineWidthText = new Text(formattingGroup, SWT.SINGLE | SWT.BORDER);
-		GridData gData = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING | GridData.BEGINNING);
-		gData.widthHint = 25;
-		fLineWidthText.setLayoutData(gData);
-		fLineWidthText.addModifyListener(this);
-
-		fSplitMultiAttrs = createCheckBox(formattingGroup, SSEUIPlugin.getResourceString("%Split_&multiple_attributes_2")); //$NON-NLS-1$
-		((GridData) fSplitMultiAttrs.getLayoutData()).horizontalSpan = 2;
-
-		fIndentUsingTabs = createCheckBox(formattingGroup, SSEUIPlugin.getResourceString("%&Indent_using_tabs_3")); //$NON-NLS-1$
-		((GridData) fIndentUsingTabs.getLayoutData()).horizontalSpan = 2;
-
-		fClearAllBlankLines = createCheckBox(formattingGroup, SSEUIPlugin.getResourceString("%Clear_all_blank_lines_UI_")); //$NON-NLS-1$ = "Clear all blank lines"
-		((GridData) fClearAllBlankLines.getLayoutData()).horizontalSpan = 2;
-	}
-
-	protected void createContentsForGrammarConstraintsGroup(Composite parent) {
-		Group grammarConstraintsGroup = createGroup(parent, 1);
-		grammarConstraintsGroup.setText(SSEUIPlugin.getResourceString("%Grammar_Constraints")); //$NON-NLS-1$
-		grammarConstraintsGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL));
-
-		fUseInferredGrammar = createCheckBox(grammarConstraintsGroup, SSEUIPlugin.getResourceString("%Use_inferred_grammar_in_absence_of_DTD/Schema")); //$NON-NLS-1$
-	}
-
-	protected IPreferenceStore doGetPreferenceStore() {
-		return XMLUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	protected void doSavePreferenceStore() {
-		XMLUIPlugin.getDefault().savePluginPreferences(); // editor
-		XMLCorePlugin.getDefault().savePluginPreferences(); // model
-	}
-
-	protected void enableValues() {
-		if (fAutoPropose != null) {
-			if (fAutoPropose.getSelection()) {
-				fAutoProposeLabel.setEnabled(true);
-				fAutoProposeText.setEnabled(true);
-			} else {
-				fAutoProposeLabel.setEnabled(false);
-				fAutoProposeText.setEnabled(false);
-			}
-		}
-	}
-
-	/**
-	 * @deprecated key no longer needed (preference should be stored in their own preference store)
-	 */
-	protected String getKey(String key) {
-//		String contentTypeId = IContentTypeIdentifier.ContentTypeID_SSEXML;
-//		return PreferenceKeyGenerator.generateKey(key, contentTypeId);
-		return key;
-	}
-
-	protected Preferences getModelPreferences() {
-		return XMLCorePlugin.getDefault().getPluginPreferences();
-	}
-
-	protected void initializeValues() {
-		initializeValuesForFormattingGroup();
-		initializeValuesForContentAssistGroup();
-		initializeValuesForGrammarConstraintsGroup();
-	}
-
-	protected void initializeValuesForContentAssistGroup() {
-		// Content Assist
-		fAutoPropose.setSelection(getPreferenceStore().getBoolean(XMLUIPreferenceNames.AUTO_PROPOSE));
-		fAutoProposeText.setText(getPreferenceStore().getString(XMLUIPreferenceNames.AUTO_PROPOSE_CODE));
-	}
-
-	protected void initializeValuesForFormattingGroup() {
-		// Formatting
-		fLineWidthText.setText(getModelPreferences().getString(CommonModelPreferenceNames.LINE_WIDTH));
-		fSplitMultiAttrs.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.SPLIT_MULTI_ATTRS));
-		fIndentUsingTabs.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.INDENT_USING_TABS));
-		fClearAllBlankLines.setSelection(getModelPreferences().getBoolean(CommonModelPreferenceNames.CLEAR_ALL_BLANK_LINES));
-	}
-
-	protected void initializeValuesForGrammarConstraintsGroup() {
-		fUseInferredGrammar.setSelection(getPreferenceStore().getBoolean(XMLUIPreferenceNames.USE_INFERRED_GRAMMAR));
-	}
-
-	protected void performDefaults() {
-		performDefaultsForFormattingGroup();
-		performDefaultsForContentAssistGroup();
-		performDefaultsForGrammarConstraintsGroup();
-
-		validateValues();
-		enableValues();
-
-		super.performDefaults();
-	}
-
-	protected void performDefaultsForContentAssistGroup() {
-		// Content Assist
-		fAutoPropose.setSelection(getPreferenceStore().getDefaultBoolean(XMLUIPreferenceNames.AUTO_PROPOSE));
-		fAutoProposeText.setText(getPreferenceStore().getDefaultString(XMLUIPreferenceNames.AUTO_PROPOSE_CODE));
-	}
-
-	protected void performDefaultsForFormattingGroup() {
-		// Formatting
-		fLineWidthText.setText(getModelPreferences().getDefaultString(CommonModelPreferenceNames.LINE_WIDTH));
-		fSplitMultiAttrs.setSelection(getModelPreferences().getDefaultBoolean(CommonModelPreferenceNames.SPLIT_MULTI_ATTRS));
-		fIndentUsingTabs.setSelection(getModelPreferences().getDefaultBoolean(CommonModelPreferenceNames.INDENT_USING_TABS));
-		fClearAllBlankLines.setSelection(getModelPreferences().getDefaultBoolean(CommonModelPreferenceNames.CLEAR_ALL_BLANK_LINES));
-	}
-
-	protected void performDefaultsForGrammarConstraintsGroup() {
-		fUseInferredGrammar.setSelection(getPreferenceStore().getDefaultBoolean(XMLUIPreferenceNames.USE_INFERRED_GRAMMAR));
-	}
-
-	public boolean performOk() {
-		boolean result = super.performOk();
-
-		doSavePreferenceStore();
-
-		return result;
-	}
-
-	protected void storeValues() {
-		storeValuesForFormattingGroup();
-		storeValuesForContentAssistGroup();
-		storeValuesForGrammarConstraintsGroup();
-	}
-
-	protected void storeValuesForContentAssistGroup() {
-		// Content Assist
-		getPreferenceStore().setValue(XMLUIPreferenceNames.AUTO_PROPOSE, fAutoPropose.getSelection());
-		getPreferenceStore().setValue(XMLUIPreferenceNames.AUTO_PROPOSE_CODE, fAutoProposeText.getText());
-	}
-
-	protected void storeValuesForFormattingGroup() {
-		// Formatting
-		getModelPreferences().setValue(CommonModelPreferenceNames.LINE_WIDTH, fLineWidthText.getText());
-		getModelPreferences().setValue(CommonModelPreferenceNames.SPLIT_MULTI_ATTRS, fSplitMultiAttrs.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.INDENT_USING_TABS, fIndentUsingTabs.getSelection());
-		getModelPreferences().setValue(CommonModelPreferenceNames.CLEAR_ALL_BLANK_LINES, fClearAllBlankLines.getSelection());
-	}
-
-	protected void storeValuesForGrammarConstraintsGroup() {
-		getPreferenceStore().setValue(XMLUIPreferenceNames.USE_INFERRED_GRAMMAR, fUseInferredGrammar.getSelection());
-	}
-
-	protected void validateValues() {
-		boolean isError = false;
-		String widthText = null;
-
-		if (fLineWidthText != null) {
-			try {
-				widthText = fLineWidthText.getText();
-				int formattingLineWidth = Integer.parseInt(widthText);
-				if ((formattingLineWidth < WIDTH_VALIDATION_LOWER_LIMIT) || (formattingLineWidth > WIDTH_VALIDATION_UPPER_LIMIT))
-					throw new NumberFormatException();
-			} catch (NumberFormatException nfexc) {
-				setInvalidInputMessage(widthText);
-				setValid(false);
-				isError = true;
-			}
-		}
-
-		if (!isError) {
-			setErrorMessage(null);
-			setValid(true);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLTemplatePreferencePage.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLTemplatePreferencePage.java
deleted file mode 100644
index b98697f..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/preferences/XMLTemplatePreferencePage.java
+++ /dev/null
@@ -1,67 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.preferences;
-
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.ui.texteditor.templates.TemplatePreferencePage;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.editor.IHelpContextIds;
-
-
-/**
- * Preference page for XML templates
- */
-public class XMLTemplatePreferencePage extends TemplatePreferencePage {
-
-	public XMLTemplatePreferencePage() {
-		XMLUIPlugin xmlEditorPlugin = XMLUIPlugin.getDefault();
-
-		setPreferenceStore(xmlEditorPlugin.getPreferenceStore());
-		setTemplateStore(xmlEditorPlugin.getTemplateStore());
-		setContextTypeRegistry(xmlEditorPlugin.getTemplateContextRegistry());
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite ancestor) {
-		Control c = super.createContents(ancestor);
-		WorkbenchHelp.setHelp(c, IHelpContextIds.XML_PREFWEBX_TEMPLATES_HELPID);
-		return c;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.texteditor.templates.TemplatePreferencePage#isShowFormatterSetting()
-	 */
-	protected boolean isShowFormatterSetting() {
-		// template formatting has not been implemented
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.preference.IPreferencePage#performOk()
-	 */
-	public boolean performOk() {
-		boolean ok = super.performOk();
-		XMLUIPlugin.getDefault().savePluginPreferences();
-		return ok;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/DelegatingSourceValidator.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/DelegatingSourceValidator.java
deleted file mode 100644
index e4750e5..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/DelegatingSourceValidator.java
+++ /dev/null
@@ -1,466 +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.xml.ui.reconcile;
-
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.validation.core.IFileDelta;
-import org.eclipse.wst.validation.core.IHelper;
-import org.eclipse.wst.validation.core.IMessage;
-import org.eclipse.wst.validation.core.IMessageAccess;
-import org.eclipse.wst.validation.core.IReporter;
-import org.eclipse.wst.validation.core.IValidator;
-import org.eclipse.wst.validation.core.ValidationException;
-import org.eclipse.wst.xml.core.document.XMLAttr;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLElement;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.document.XMLText;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * A DelegatingReconcileValidator calls its delegate validator
- * to get a list of validation error IMessages.  Using information
- * in this IMessage the DelegatingReconcileValidator updates the IMessage with
- * an offset and length to give a good range to be "squiggled"
- * and adds the messages to the IReporter
- * 
- * @author Mark Hutchinson
- * 
- */
-public class DelegatingSourceValidator implements IValidator
-{ //these are the selection Strategies:
-  protected static final String ALL_ATTRIBUTES = "ALL_ATTRIBUTES";
-  protected static final String ATTRIBUTE_NAME ="ATTRIBUTE_NAME";
-  protected static final String ATTRIBUTE_VALUE = "ATTRIBUTE_VALUE";
-  protected static final String START_TAG = "START_TAG";
-  protected static final String TEXT = "TEXT";
-  protected static final String FIRST_NON_WHITESPACE_TEXT = "FIRST_NON_WHITESPACE_TEXT";
-  protected static final String TEXT_ENTITY_REFERENCE = "TEXT_ENTITY_REFERENCE"; 
-  protected static final String NAME_OF_ATTRIBUTE_WITH_GIVEN_VALUE = "NAME_OF_ATTRIBUTE_WITH_GIVEN_VALUE";
-  
-  protected static final String COLUMN_NUMBER_ATTRIBUTE = "columnNumber";
-  protected static final String SQUIGGLE_SELECTION_STRATEGY_ATTRIBUTE = "squiggleSelectionStrategy";
-  protected static final String SQUIGGLE_NAME_OR_VALUE_ATTRIBUTE = "squiggleNameOrValue";
-  
-  public DelegatingSourceValidator()
-  { super(); //constructor
-  }
-  
-  public void cleanup(IReporter arg0)
-  { // don't need to implement
-  }
-  
-  // My Implementation of IHelper
-  class MyHelper implements IHelper
-  {
-    InputStream inputStream;
-
-    IFile file;
-
-    public MyHelper(InputStream inputStream, IFile file)
-    { this.inputStream = inputStream;
-      this.file = file;
-    }
-
-    public Object loadModel(String symbolicName, Object[] parms)
-    { if (symbolicName.equals("getFile"))
-      { return file;
-      }
-      return null;
-    }
-
-    public Object loadModel(String symbolicName)
-    { if (symbolicName.equals("inputStream"))
-      { return inputStream;
-      }
-      return null;
-    }
-  }
-  //My Implementation of IReporter
-  class MyReporter implements IReporter
-  {
-    List list = new ArrayList();
-    
-    public MyReporter()
-    { super();      
-    }
-    
-    public void addMessage(IValidator origin, IMessage message)
-    { list.add(message);
-    }
-
-    public void displaySubtask(IValidator validator, IMessage message)
-    {//do not need to implement
-    }
-
-    public IMessageAccess getMessageAccess()
-    { return null; //do not need to implement
-    }
-
-    public boolean isCancelled()
-    { return false; //do not need to implement
-    }
-
-    public void removeAllMessages(IValidator origin, Object object)
-    { //do not need to implement
-    }
-
-    public void removeAllMessages(IValidator origin)
-    {//do not need to implement
-    }
-
-    public void removeMessageSubset(IValidator validator, Object obj, String groupName)
-    {//do not need to implement
-    }
-  }
-
-  protected IValidator getDelegateValidator()
-  {   return null;//this class must be overridden by a subclass
-  }
-  
-  /**
-   * Calls a delegate validator getting and updates it's list of ValidationMessages
-   * with a good squiggle offset and length.
-   * 
-   * @param helper 
-   *      loads an object. 
-   * @param reporter
-   *      Is an instance of an IReporter interface, which is used for
-   * interaction with the user.
-   * @param delta
-   *      an array containing the file to be validated.  Only position 0 will be validated
-   */
-  public void validate(IHelper helper, IReporter reporter, IFileDelta[] delta) throws ValidationException
-  {
-    if (delta.length > 0)
-    {
-      // get the file, model and document:
-      IFile file = getFile(delta[0]);
-      XMLModel xmlModel = getModelForResource(file);
-      try
-      {
-        XMLDocument document = xmlModel.getDocument();
-
-        // store the text in a byte array; make a full copy to ease any threading problems
-        byte[] byteArray = xmlModel.getStructuredDocument().get().getBytes();
-        
-        IValidator validator = getDelegateValidator();
-        if (validator != null)
-        {
-          //Validate the file:
-          IHelper vHelper = new MyHelper(new ByteArrayInputStream(byteArray), file);
-          MyReporter vReporter = new MyReporter();
-          validator.validate(vHelper, vReporter, delta);
-          List messages = vReporter.list;
-  
-          //set the offset and length
-          updateValidationMessages(messages, document, reporter);
-        }
-      }
-
-      finally
-      {
-        if (xmlModel != null)
-          xmlModel.releaseFromRead();
-      }
-    }
-  }
-
-  /**
-   * iterates through the messages and calculates a "better" offset and length
-   * 
-   * @param messages - a List of IMessages
-   * @param document - the document
-   * @param reporter - the reporter the messages are to be added to
-   */
-  protected void updateValidationMessages(List messages, XMLDocument document, IReporter reporter)
-  {
-    for (int i = 0; i < messages.size(); i++)
-    {
-      IMessage message = (IMessage) messages.get(i);    
-      try
-      { 
-        int column = ((Integer)message.getAttribute(COLUMN_NUMBER_ATTRIBUTE)).intValue();
-        String selectionStrategy = (String)message.getAttribute(SQUIGGLE_SELECTION_STRATEGY_ATTRIBUTE);
-        String nameOrValue = (String)message.getAttribute(SQUIGGLE_NAME_OR_VALUE_ATTRIBUTE);
-        
-        // convert the line and Column numbers to an offset:        
-        int start = document.getStructuredDocument().getLineOffset(message.getLineNumber() - 1) + column - 1;
-
-        // calculate the "better" start and end offset:
-        int[] result = computeStartEndLocation(start, message.getText(), selectionStrategy, nameOrValue, document);
-        if (result != null)
-        {
-          message.setOffset(result[0]);
-          message.setLength(result[1] - result[0]);
-          reporter.addMessage(this, message);
-        }
-      }
-      catch(BadLocationException e)
-      {  //this exception should not occur - it is thrown if trying to convert an invalid line number to and offset       
-      }
-
-    }
-  }
- /**
-  * @param delta the IFileDelta containing the file name to get
-  * @return the IFile
-  */
-  public IFile getFile(IFileDelta delta)
-  {
-    IResource res = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(delta.getFileName()));
-    return res instanceof IFile ? (IFile) res : null;
-  }
-  /**
-   * 
-   * @param file the file to get the model for
-   * @return the file's XMLModel
-   */
-  protected XMLModel getModelForResource(IFile file)
-  {
-    IStructuredModel model = null;
-    IModelManager manager = StructuredModelManager.getModelManager();
-
-    try
-    { model = manager.getModelForRead(file);
-      // TODO.. HTML validator tries again to get a model a 2nd way
-    }
-    catch (Exception e)
-    {
-      //e.printStackTrace();
-    }
-
-    return model instanceof XMLModel ? (XMLModel) model : null;
-  }
-  
-  /**
-   * Calculates the "better" offsets.
-   *    
-   * @param startOffset - the offset given by Xerces
-   * @param errorMessage - the Xerces error Message
-   * @param selectionStrategy - the selectionStrategy
-   * @param document - the document
-   * @return int[] - position 0 has the start offset of the squiggle range, position 1 has the endOffset
-   */
-  /*
-   *   The way the offsets is calculated is:
-   *   
-   *    - find the indexed region (element) closest to the given offset
-   *    - if we are between two elements, the one on the left is the one we want
-   *    - based on the selectionStrategy choose the underlining strategy (eg START_TAG
-   *       means underline the start tag of that element)
-   *    - use information from nameOrValue and the DOM to get better offsets
-   *    
-   */
-  protected int[] computeStartEndLocation(int startOffset, String errorMessage, String selectionStrategy, String nameOrValue, XMLDocument document)
-  {
-    try
-    {
-      int startEndPositions[] = new int[2];
-
-      IndexedRegion region = document.getModel().getIndexedRegion(startOffset);
-      IndexedRegion prevRegion = document.getModel().getIndexedRegion(startOffset - 1);
-      
-      if (prevRegion != region)
-      { // if between two regions, the one on the left is the one we are interested in
-        region = prevRegion;
-      }
-
-      // initialize start and end positions to be the start positions this means if the
-      // special case is not taken care of below the start and end offset are set to be
-      // the start of the region where the error was
-      if (region != null)
-      {
-        startEndPositions[0] = region.getStartOffset();
-        startEndPositions[1] = startEndPositions[0];
-      }
-      else
-      { //this will message will not get added to the IReporter since the length is 0
-        startEndPositions[0] = 0;
-        startEndPositions[1] = 0;
-      }
-      if (region instanceof Node)
-      {
-        Node node = (Node) region;
-        
-        if (selectionStrategy.equals(START_TAG))
-        {// then we want to highlight the opening tag
-          if (node.getNodeType() == Node.ELEMENT_NODE)
-          {
-            XMLElement element = (XMLElement) node;
-            startEndPositions[0] = element.getStartOffset() + 1;
-            startEndPositions[1] = startEndPositions[0] + element.getTagName().length();
-          }
-        }
-        else if (selectionStrategy.equals(ATTRIBUTE_NAME))
-        { // in this case we want to underline the offending attribute name
-          if (node.getNodeType() == Node.ELEMENT_NODE)
-          {
-            XMLElement element = (XMLElement) node;
-            XMLNode attributeNode = (XMLNode) (element.getAttributeNode(nameOrValue));
-            if (attributeNode != null)
-            {
-              startEndPositions[0] = attributeNode.getStartOffset();
-              startEndPositions[1] = attributeNode.getStartOffset() + nameOrValue.length();
-            }
-          }
-        }
-        else if (selectionStrategy.equals(ATTRIBUTE_VALUE))
-        {// in this case we want to underline the attribute's value
-          if (node.getNodeType() == Node.ELEMENT_NODE)
-          {
-            XMLElement element = (XMLElement) node;
-            XMLAttr attributeNode = (XMLAttr) (element.getAttributeNode(nameOrValue));
-            if (attributeNode != null)
-            {
-              startEndPositions[0] = attributeNode.getValueRegionStartOffset();
-              startEndPositions[1] = startEndPositions[0] + attributeNode.getValueRegionText().length();
-            }
-          }
-        }
-        else if (selectionStrategy.equals(ALL_ATTRIBUTES))
-        {// then underline ALL attributes
-          if (node.getNodeType() == Node.ELEMENT_NODE)
-          {
-            XMLElement element = (XMLElement) node;
-            NamedNodeMap attributes = element.getAttributes();
-            if (attributes != null)
-            {
-              XMLNode first = (XMLNode) attributes.item(0);
-              XMLNode last = (XMLNode) attributes.item(attributes.getLength() - 1);
-              if (first != null && last != null)
-              {
-                startEndPositions[0] = first.getStartOffset();
-                startEndPositions[1] = last.getEndOffset();
-              }
-            }
-          }
-        }
-        else if (selectionStrategy.equals(TEXT))
-        {// in this case we want to underline the text (but not any extra whitespace)
-          if (node.getNodeType() == Node.TEXT_NODE)
-          {
-            XMLText textNode = (XMLText) node;
-            int start = textNode.getStartOffset();
-            String value = textNode.getNodeValue();
-            int index = 0;
-            char curChar = value.charAt(index);
-            //here we are finding start offset by skipping over whitespace:
-            while (curChar == '\n' || curChar == '\t' || curChar == '\r' || curChar == ' ')
-            {
-              curChar = value.charAt(index);
-              index++;
-              start++;
-            }
-            startEndPositions[0] = start - 1;
-            startEndPositions[1] = start + value.trim().length() - 1;
-          }
-          else if (node.getNodeType() == Node.ELEMENT_NODE)
-          {
-            XMLElement element = (XMLElement) node;
-            Node child = element.getFirstChild();
-            if (child instanceof XMLNode)
-            {
-              XMLNode xmlChild = ((XMLNode) child);
-              startEndPositions[0] = xmlChild.getStartOffset();
-              startEndPositions[1] = xmlChild.getEndOffset();
-            }
-          }
-        }
-        else if (selectionStrategy.equals(FIRST_NON_WHITESPACE_TEXT))
-        {  //here we search through all the child nodes, and give the range
-           // of the first non-whitespace node
-            if (node.getNodeType() == Node.ELEMENT_NODE)
-            { NodeList nodes = node.getChildNodes();
-              for (int i = 0; i< nodes.getLength(); i++)
-              {
-                Node currentNode = nodes.item(i);
-                if (currentNode.getNodeType() == Node.TEXT_NODE)
-                {
-                    XMLText textNode = (XMLText)currentNode;
-                    if (textNode.getNodeValue().trim().length() > 0)
-                    {
-                        String value = textNode.getNodeValue();
-                        int index = 0;
-                        int start = textNode.getStartOffset();
-                        char curChar = value.charAt(index);
-                        //here we are finding start offset by skipping over whitespace:
-                        while (curChar == '\n' || curChar == '\t' || curChar == '\r' || curChar == ' ')
-                        {
-                          curChar = value.charAt(index);
-                          index++;
-                        }
-                        if (index > 0)
-                        { index--;
-                        
-                        }
-                        start = start + index;
-                        startEndPositions[0] = start;
-                        startEndPositions[1] = start + value.trim().length(); 
-                        break;
-                    }
-                }
-                
-              }
-            }
-        }
-            
-        else if (selectionStrategy.equals(TEXT_ENTITY_REFERENCE))
-        { if (node.getNodeType() == Node.ENTITY_REFERENCE_NODE)
-            { startEndPositions[0] = region.getStartOffset();
-              startEndPositions[1] = region.getEndOffset();
-            }
-        }
-        else if (selectionStrategy.equals(NAME_OF_ATTRIBUTE_WITH_GIVEN_VALUE))
-        {//underline the name of the attribute containing the given value
-          if (node.getNodeType() == Node.ELEMENT_NODE)
-          {
-            //here we will search through all attributes for the one with the
-            //with the value we want:            
-            NamedNodeMap attributes = node.getAttributes();
-            for (int i=0; i<attributes.getLength(); i++)
-            {
-              XMLAttr attr = (XMLAttr)attributes.item(i);
-              String nodeValue = attr.getNodeValue().trim();
-              if (nodeValue.equals(nameOrValue))
-              { startEndPositions[0] = attr.getValueRegionStartOffset() + 1;
-                startEndPositions[1] = startEndPositions[0] + nodeValue.length();
-                break;
-              }
-            }
-          }
-        }
-      }
-      return startEndPositions;
-    }
-    catch (Exception e)
-    { //e.printStackTrace();
-    }
-    return null;
-  }  
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/DelegatingSourceValidatorForXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/DelegatingSourceValidatorForXML.java
deleted file mode 100644
index 5b16dec..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/DelegatingSourceValidatorForXML.java
+++ /dev/null
@@ -1,41 +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.xml.ui.reconcile;
-
-import org.eclipse.wst.validation.core.IValidator;
-import org.eclipse.wst.validation.plugin.ValidationPlugin;
-
-/**
- * @author Mark Hutchinson
- *
- */
-public class DelegatingSourceValidatorForXML extends DelegatingSourceValidator
-{
- private final static String VALIDATOR_CLASS = "org.eclipse.wst.xml.validation.internal.ui.eclipse.Validator";
- 
-  public DelegatingSourceValidatorForXML()
-  { super();
-  }
- 
-  protected IValidator getDelegateValidator()
-  {
-    try
-    {
-	  ValidationPlugin validationPlugin = new ValidationPlugin();
-	  return validationPlugin.getValidator(VALIDATOR_CLASS);	  
-    }
-    catch (Exception e)
-    { //
-    }
-    return null;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/ReconcileStepForMarkup.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/ReconcileStepForMarkup.java
deleted file mode 100644
index 0f5fe8d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/ReconcileStepForMarkup.java
+++ /dev/null
@@ -1,601 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.reconcile;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.reconciler.DirtyRegion;
-import org.eclipse.jface.text.reconciler.IReconcileResult;
-import org.eclipse.jface.text.reconciler.IReconcileStep;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.sse.ui.internal.reconcile.ReconcileAnnotationKey;
-import org.eclipse.wst.sse.ui.internal.reconcile.StructuredReconcileStep;
-import org.eclipse.wst.sse.ui.internal.reconcile.TemporaryAnnotation;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.internal.correction.ProblemIDsXML;
-import org.w3c.dom.Node;
-
-/**
- * Basic XML syntax checking step.
- * 
- * @author pavery
- */
-public class ReconcileStepForMarkup extends StructuredReconcileStep {
-	private String DQUOTE = "\""; //$NON-NLS-1$
-
-	protected String SEVERITY_ATTR_MISSING_VALUE = TemporaryAnnotation.ANNOT_ERROR;
-	protected String SEVERITY_ATTR_NO_VALUE = TemporaryAnnotation.ANNOT_ERROR;
-	// severities for the problems discoverable by this reconciler; possibly
-	// user configurable later
-	protected String SEVERITY_GENERIC_ILLFORMED_SYNTAX = TemporaryAnnotation.ANNOT_WARNING;
-	protected String SEVERITY_STRUCTURE = TemporaryAnnotation.ANNOT_ERROR;
-	protected String SEVERITY_SYNTAX_ERROR = TemporaryAnnotation.ANNOT_ERROR;
-	// used for attribute quote checking
-	private String SQUOTE = "'"; //$NON-NLS-1$
-
-	public ReconcileStepForMarkup() {
-		super();
-	}
-
-	public ReconcileStepForMarkup(IReconcileStep step) {
-		super(step);
-	}
-
-	private void addAttributeError(String message, String attributeValueText, int start, int length, int problemId, IStructuredDocumentRegion sdRegion, List results) {
-        
-        if (sdRegion.isDeleted())
-            return;
-        
-        Position p = new Position(start, length);
-		ReconcileAnnotationKey key = createKey(sdRegion, getScope());
-		TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_SYNTAX_ERROR, message, key, problemId);
-		annotation.setAdditionalFixInfo(attributeValueText);
-		results.add(annotation);
-	}
-
-	private void checkAttributesInEndTag(IStructuredDocumentRegion structuredDocumentRegion, List results) {
-        
-        if(structuredDocumentRegion.isDeleted())
-            return;
-        
-		ITextRegionList textRegions = structuredDocumentRegion.getRegions();
-		int errorCount = 0;
-		int start = structuredDocumentRegion.getEndOffset();
-		int end = structuredDocumentRegion.getEndOffset();
-		for (int i = 0; i < textRegions.size() && errorCount < ELEMENT_ERROR_LIMIT && !structuredDocumentRegion.isDeleted(); i++) {
-			ITextRegion textRegion = textRegions.get(i);
-			if (textRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME || textRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS || textRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				if (start > structuredDocumentRegion.getStartOffset(textRegion))
-					start = structuredDocumentRegion.getStartOffset(textRegion);
-				end = structuredDocumentRegion.getEndOffset(textRegion);
-				errorCount++;
-			}
-		}
-		// create one error for all attributes in the end tag
-		if (errorCount > 0) {
-			Position p = new Position(start, end - start);
-			String message = SSEUIPlugin.getResourceString("%End_tag_has_attributes"); //$NON-NLS-1$
-			results.add(new TemporaryAnnotation(p, SEVERITY_GENERIC_ILLFORMED_SYNTAX, message, createKey(structuredDocumentRegion, getScope()), ProblemIDsXML.AttrsInEndTag));
-		}
-	}
-
-
-	/**
-	 * @param structuredDocumentRegion
-	 * @param results
-	 */
-	private void checkClosingBracket(IStructuredDocumentRegion structuredDocumentRegion, List results) {
-        
-        if(structuredDocumentRegion.isDeleted())
-            return;
-        
-		ITextRegionList regions = structuredDocumentRegion.getRegions();
-		ITextRegion r = null;
-		boolean closed = false;
-		for (int i = 0; i < regions.size()  && !structuredDocumentRegion.isDeleted(); i++) {
-			r = regions.get(i);
-			if (r.getType() == XMLRegionContext.XML_TAG_CLOSE || r.getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE)
-				closed = true;
-		}
-		if (!closed) {
-
-			String message = SSEUIPlugin.getResourceString("%ReconcileStepForMarkup.6"); //$NON-NLS-1$
-
-			int start = structuredDocumentRegion.getStartOffset();
-			int length = structuredDocumentRegion.getText().trim().length();
-			Position p = new Position(start, length);
-			ReconcileAnnotationKey key = createKey(structuredDocumentRegion, getScope());
-
-			TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_SYNTAX_ERROR, message, key, ProblemIDsXML.MissingClosingBracket);
-			results.add(annotation);
-		}
-	}
-
-	private void checkEmptyTag(IStructuredDocumentRegion structuredDocumentRegion, List results) {
-        
-        if(structuredDocumentRegion.isDeleted())
-            return;
-        
-		// navigate to name
-		ITextRegionList regions = structuredDocumentRegion.getRegions();
-		if (regions.size() == 2) {
-			// missing name region
-			if (regions.get(0).getType() == XMLRegionContext.XML_TAG_OPEN && regions.get(1).getType() == XMLRegionContext.XML_TAG_CLOSE) {
-				String message = SSEUIPlugin.getResourceString("%ReconcileStepForMarkup.3"); //$NON-NLS-1$
-				int start = structuredDocumentRegion.getStartOffset();
-				int length = structuredDocumentRegion.getLength();
-				Position p = new Position(start, length);
-				ReconcileAnnotationKey key = createKey(structuredDocumentRegion, getScope());
-
-				TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_SYNTAX_ERROR, message, key, ProblemIDsXML.EmptyTag);
-				results.add(annotation);
-			}
-		}
-	}
-
-	private void checkForAttributeValue(IStructuredDocumentRegion structuredDocumentRegion, List results) {
-        
-        if(structuredDocumentRegion.isDeleted())
-            return;
-        
-		// check for attributes without a value
-		// track the attribute/equals/value sequence using a state of 0, 1 ,2
-		// representing the name, =, and value, respectively
-		int attrState = 0;
-		ITextRegionList textRegions = structuredDocumentRegion.getRegions();
-		ReconcileAnnotationKey key = createKey(structuredDocumentRegion, getScope());
-		int errorCount = 0;
-		for (int i = 0; i < textRegions.size() && errorCount < ELEMENT_ERROR_LIMIT; i++) {
-			ITextRegion textRegion = textRegions.get(i);
-			if (textRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME || isTagCloseTextRegion(textRegion)) {
-				// dangling name and '='
-				if (attrState == 2 && i >= 2) {
-					// create annotation
-					ITextRegion nameRegion = textRegions.get(i - 2);
-					Object[] args = {structuredDocumentRegion.getText(nameRegion)};
-					String message = SSEUIPlugin.getResourceString("%Attribute_{0}_is_missing_a_value", args);
-					int start = structuredDocumentRegion.getStartOffset(nameRegion);
-					int end = structuredDocumentRegion.getTextEndOffset(nameRegion);
-					Position p = new Position(start, end - start);
-					TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_ATTR_MISSING_VALUE, message, key, ProblemIDsXML.MissingAttrValue);
-
-					// quick fix info
-					ITextRegion equalsRegion = textRegions.get(i - 2 + 1);
-					int insertOffset = structuredDocumentRegion.getTextEndOffset(equalsRegion) - end;
-					Object[] additionalFixInfo = {structuredDocumentRegion.getText(nameRegion), new Integer(insertOffset)};
-					annotation.setAdditionalFixInfo(additionalFixInfo);
-
-					results.add(annotation);
-					errorCount++;
-				}
-				// name but no '=' (XML only)
-				else if (attrState == 1 && i >= 1) {
-					// create annotation
-					ITextRegion previousRegion = textRegions.get(i - 1);
-					Object[] args = {structuredDocumentRegion.getText(previousRegion)};
-					String message = SSEUIPlugin.getResourceString("%Attribute_{0}_has_no_value", args);
-					int start = structuredDocumentRegion.getStartOffset(previousRegion);
-					int end = structuredDocumentRegion.getTextEndOffset(previousRegion);
-					Position p = new Position(start, end - start);
-					TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_ATTR_NO_VALUE, message, key, ProblemIDsXML.NoAttrValue);
-
-					// quick fix info
-					annotation.setAdditionalFixInfo(structuredDocumentRegion.getText(previousRegion));
-
-					results.add(annotation);
-					errorCount++;
-				}
-				attrState = 1;
-			} else if (textRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-				attrState = 2;
-			} else if (textRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) {
-				attrState = 0;
-			}
-		}
-
-	}
-
-	private void checkForSpaceBeforeName(IStructuredDocumentRegion structuredDocumentRegion, List results) {
-        
-        if(structuredDocumentRegion.isDeleted())
-            return;
-        
-		String sdRegionText = structuredDocumentRegion.getFullText();
-		if (sdRegionText.startsWith(" ")) { //$NON-NLS-1$
-			IStructuredDocumentRegion prev = structuredDocumentRegion.getPrevious();
-			if (prev != null) {
-				// this is possibly the case of "< tag"
-				if (prev.getRegions().size() == 1 && isStartTag(prev)) {
-					// add the error for preceding space in tag name
-					String message = SSEUIPlugin.getResourceString("%ReconcileStepForMarkup.2"); //$NON-NLS-1$
-					int start = structuredDocumentRegion.getStartOffset();
-					// find length of whitespace
-					int length = sdRegionText.trim().equals("") ? sdRegionText.length() : sdRegionText.indexOf(sdRegionText.trim()); //$NON-NLS-1$
-
-					Position p = new Position(start, length);
-					ReconcileAnnotationKey key = createKey(structuredDocumentRegion, getScope());
-
-					TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_SYNTAX_ERROR, message, key, ProblemIDsXML.SpacesBeforeTagName);
-					results.add(annotation);
-				}
-			}
-		}
-	}
-
-	private void checkNoNamespaceInPI(IStructuredDocumentRegion structuredDocumentRegion, List results) {
-        
-        if(structuredDocumentRegion.isDeleted())
-            return;
-        
-		// navigate to name
-		ITextRegionList regions = structuredDocumentRegion.getRegions();
-		ITextRegion r = null;
-		int errorCount = 0;
-		for (int i = 0; i < regions.size() && errorCount < ELEMENT_ERROR_LIMIT && !structuredDocumentRegion.isDeleted(); i++) {
-			r = regions.get(i);
-			if (r.getType() == XMLRegionContext.XML_TAG_NAME) {
-				String piText = structuredDocumentRegion.getText(r);
-				int index = piText.indexOf(":"); //$NON-NLS-1$
-				if (index != -1) {
-					String message = SSEUIPlugin.getResourceString("%ReconcileStepForMarkup.4"); //$NON-NLS-1$
-					int start = structuredDocumentRegion.getStartOffset(r) + index;
-					int length = piText.trim().length() - index;
-					Position p = new Position(start, length);
-					ReconcileAnnotationKey key = createKey(structuredDocumentRegion, getScope());
-
-					TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_SYNTAX_ERROR, message, key, ProblemIDsXML.NamespaceInPI);
-					results.add(annotation);
-					errorCount++;
-				}
-			}
-		}
-	}
-
-	/**
-	 * @param structuredDocumentRegion
-	 * @param results
-	 */
-	private void checkQuotesForAttributeValues(IStructuredDocumentRegion structuredDocumentRegion, List results) {
-		ITextRegionList regions = structuredDocumentRegion.getRegions();
-		ITextRegion r = null;
-		String attrValueText = ""; //$NON-NLS-1$
-		int errorCount = 0;
-		for (int i = 0; i < regions.size() && errorCount < ELEMENT_ERROR_LIMIT; i++) {
-			r = regions.get(i);
-			if (r.getType() != XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-				continue;
-
-			attrValueText = structuredDocumentRegion.getText(r);
-			// attribute value includes quotes in the string
-			// split up attribute value on quotes
-			StringTokenizer st = new StringTokenizer(attrValueText, "\"'", true); //$NON-NLS-1$
-			int size = st.countTokens();
-			// get the pieces of the attribute value
-			String one = "", two = ""; //$NON-NLS-1$ //$NON-NLS-2$
-			if (size > 0)
-				one = st.nextToken();
-			if (size > 1)
-				two = st.nextToken();
-			if (size > 2) {
-				// should be handled by parsing...
-				// as in we can't have an attribute value like: <element
-				// attr="a"b"c"/>
-				// and <element attr='a"b"c' /> is legal
-				continue;
-			}
-
-
-			if (size == 1) {
-				if (one.equals(DQUOTE) || one.equals(SQUOTE)) {
-					// missing closing quote
-					String message = SSEUIPlugin.getResourceString("%ReconcileStepForMarkup.0"); //$NON-NLS-1$
-					addAttributeError(message, attrValueText, structuredDocumentRegion.getStartOffset(r), attrValueText.trim().length(), ProblemIDsXML.Unclassified, structuredDocumentRegion, results);
-					errorCount++;
-				} else {
-					// missing both
-					String message = SSEUIPlugin.getResourceString("%ReconcileStepForMarkup.1"); //$NON-NLS-1$
-					addAttributeError(message, attrValueText, structuredDocumentRegion.getStartOffset(r), attrValueText.trim().length(), ProblemIDsXML.AttrValueNotQuoted, structuredDocumentRegion, results);
-					errorCount++;
-				}
-			} else if (size == 2) {
-				if (one.equals(SQUOTE) && !two.equals(SQUOTE) || one.equals(DQUOTE) && !two.equals(DQUOTE)) {
-					// missing closing quote
-					String message = SSEUIPlugin.getResourceString("%ReconcileStepForMarkup.0"); //$NON-NLS-1$
-					addAttributeError(message, attrValueText, structuredDocumentRegion.getStartOffset(r), attrValueText.trim().length(), ProblemIDsXML.Unclassified, structuredDocumentRegion, results);
-					errorCount++;
-				}
-			}
-		}
-		// end of region for loop
-	}
-
-	private void checkStartEndTagPairs(IStructuredDocumentRegion sdRegion, List results) {
-        
-        if(sdRegion.isDeleted())
-            return;
-        
-		// check start/end tag pairs
-		XMLNode xmlNode = getXMLNode(sdRegion);
-        
-        if(xmlNode == null)
-            return;
-        
-		boolean selfClosed = false;
-		String tagName = null;
-		int length = 0;
-
-		if (xmlNode.isContainer()) {
-			IStructuredDocumentRegion endRegion = xmlNode.getEndStructuredDocumentRegion();
-			if (endRegion == null) {
-                IStructuredDocumentRegion startRegion = xmlNode.getStartStructuredDocumentRegion();
-                if(!startRegion.isDeleted()) {
-    				// analyze the tag (check self closing)
-    				ITextRegionList regions = startRegion.getRegions();
-    				ITextRegion r = null;
-    				for (int i = 0; i < regions.size(); i++) {
-    					r = regions.get(i);
-    					if (r.getType() == XMLRegionContext.XML_TAG_OPEN || r.getType() == XMLRegionContext.XML_TAG_CLOSE) {
-    						length++;
-    					} else if (r.getType() == XMLRegionContext.XML_TAG_NAME) {
-    						tagName = sdRegion.getText(r);
-    						length += tagName.length();
-    					} else if (r.getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE) {
-    						selfClosed = true;
-    					}
-    				}
-    
-    				if (!selfClosed && tagName != null) {
-    					Object[] args = {tagName};
-    					String message = SSEUIPlugin.getResourceString("%Missing_end_tag_{0}", args);
-    
-    					int start = sdRegion.getStart();
-    					Position p = new Position(start, length);
-    					TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_STRUCTURE, message, createKey(sdRegion, getScope()), ProblemIDsXML.MissingEndTag);
-    
-    					// quick fix info
-    					String tagClose = "/>"; //$NON-NLS-1$
-    					int tagCloseOffset = xmlNode.getFirstStructuredDocumentRegion().getEndOffset();
-    					if (r != null && r.getType() == XMLRegionContext.XML_TAG_CLOSE) {
-    						tagClose = "/"; //$NON-NLS-1$
-    						tagCloseOffset--;
-    					}
-    					XMLNode firstChild = (XMLNode) xmlNode.getFirstChild();
-    					while (firstChild != null && firstChild.getNodeType() == Node.TEXT_NODE) {
-    						firstChild = (XMLNode) firstChild.getNextSibling();
-    					}
-    					int endOffset = xmlNode.getEndOffset();
-    					int firstChildStartOffset = firstChild == null ? endOffset : firstChild.getStartOffset();
-    					Object[] additionalFixInfo = {tagName, tagClose, new Integer(tagCloseOffset), new Integer(xmlNode.getFirstStructuredDocumentRegion().getEndOffset()), // startTagEndOffset
-    								new Integer(firstChildStartOffset), // firstChildStartOffset
-    								new Integer(endOffset)}; // endOffset
-    					annotation.setAdditionalFixInfo(additionalFixInfo);
-    
-    					results.add(annotation);
-    				}
-    			}
-            }
-
-		}
-	}
-
-	private void checkStartingSpaceForPI(IStructuredDocumentRegion structuredDocumentRegion, List results) {
-        
-        if(structuredDocumentRegion.isDeleted())
-            return;
-        
-		IStructuredDocumentRegion prev = structuredDocumentRegion.getPrevious();
-		if (prev != null && !prev.isDeleted()) {
-			String prevText = prev.getFullText();
-			if (prev.getType() == XMLRegionContext.XML_CONTENT && prevText.endsWith(" ")) { //$NON-NLS-1$
-				String message = SSEUIPlugin.getResourceString("%ReconcileStepForMarkup.5"); //$NON-NLS-1$
-				int start = prev.getStartOffset();
-				int length = prev.getLength();
-				Position p = new Position(start, length);
-				ReconcileAnnotationKey key = createKey(structuredDocumentRegion, getScope());
-
-				TemporaryAnnotation annotation = new TemporaryAnnotation(p, SEVERITY_SYNTAX_ERROR, message, key, ProblemIDsXML.SpacesBeforePI);
-				results.add(annotation);
-			}
-		}
-	}
-
-	public int getScope() {
-		return ReconcileAnnotationKey.PARTIAL;
-	}
-
-	/**
-	 * A DirtyRegion can span multiple StructuredDocumentRegions. This method
-	 * returns the StructuredDocumentRegions in a given dirty region.
-	 * 
-	 * @param dirtyRegion
-	 */
-	private IStructuredDocumentRegion[] getStructuredDocumentRegions(DirtyRegion dirtyRegion) {
-		List regions = new ArrayList();
-        
-        if(getStructuredDocument() == null)
-            return new IStructuredDocumentRegion[0];
-        
-		IStructuredDocumentRegion sdRegion = getStructuredDocument().getRegionAtCharacterOffset(dirtyRegion.getOffset());
-		if (sdRegion != null) {
-            
-			if (!sdRegion.isDeleted())
-				regions.add(sdRegion);
-            
-            XMLNode xmlNode = getXMLNode(sdRegion);
-            
-			while (sdRegion != null 
-                    && !sdRegion.isDeleted() 
-                    && xmlNode != null
-                    && sdRegion.getEndOffset() <= xmlNode.getEndOffset()) {
-				if (!sdRegion.isDeleted())
-					regions.add(sdRegion);
-                sdRegion = sdRegion.getNext();
-                xmlNode = getXMLNode(sdRegion);
-			}
-		}
-		return (IStructuredDocumentRegion[]) regions.toArray(new IStructuredDocumentRegion[regions.size()]);
-	}
-
-	private XMLNode getXMLNode(IStructuredDocumentRegion sdRegion) {
-        
-        if(sdRegion == null)
-            return null;
-        
-		IStructuredModel xModel = null;
-		XMLNode xmlNode = null;
-		// get/release models should always be in a try/finally block
-		try {
-			xModel = StructuredModelManager.getModelManager().getExistingModelForRead(getDocument());
-			// xModel is sometime null, when closing editor, for example
-			if (xModel != null) {
-				xmlNode = (XMLNode) xModel.getIndexedRegion(sdRegion.getStart());
-			}
-		} finally {
-			if (xModel != null) {
-				xModel.releaseFromRead();
-			}
-		}
-		return xmlNode;
-	}
-
-	/**
-	 * Determines whether the IStructuredDocumentRegion is a XML "end tag"
-	 * since they're not allowed to have attribute ITextRegions
-	 * 
-	 * @param structuredDocumentRegion
-	 */
-	private boolean isEndTag(IStructuredDocumentRegion structuredDocumentRegion) {
-		if (structuredDocumentRegion == null || structuredDocumentRegion.isDeleted())
-			return false;
-		return structuredDocumentRegion.getFirstRegion().getType() == XMLRegionContext.XML_END_TAG_OPEN;
-	}
-
-	/**
-	 * Determines if the IStructuredDocumentRegion is an XML Processing
-	 * Instruction
-	 * 
-	 * @param structuredDocumentRegion
-	 * 
-	 */
-	private boolean isPI(IStructuredDocumentRegion structuredDocumentRegion) {
-        if (structuredDocumentRegion == null || structuredDocumentRegion.isDeleted())
-            return false;
-		return structuredDocumentRegion.getFirstRegion().getType() == XMLRegionContext.XML_PI_OPEN;
-	}
-
-	/**
-	 * Determines whether the IStructuredDocumentRegion is a XML "start tag"
-	 * since they need to be checked for proper XML attribute region sequences
-	 * 
-	 * @param structuredDocumentRegion
-	 * 
-	 */
-	private boolean isStartTag(IStructuredDocumentRegion structuredDocumentRegion) {
-		if (structuredDocumentRegion == null || structuredDocumentRegion.isDeleted())
-			return false;
-		return structuredDocumentRegion.getFirstRegion().getType() == XMLRegionContext.XML_TAG_OPEN;
-	}
-
-	// Because we check the "proper" closing separately from attribute
-	// sequencing, we need to know what's
-	// an appropriate close.
-	private boolean isTagCloseTextRegion(ITextRegion textRegion) {
-		return textRegion.getType() == XMLRegionContext.XML_TAG_CLOSE || textRegion.getType() == XMLRegionContext.XML_EMPTY_TAG_CLOSE;
-	}
-
-	/**
-	 * Determines if the IStructuredDocumentRegion is XML Content
-	 * 
-	 * @param structuredDocumentRegion
-	 * 
-	 */
-	private boolean isXMLContent(IStructuredDocumentRegion structuredDocumentRegion) {
-        if(structuredDocumentRegion == null || structuredDocumentRegion.isDeleted())
-            return false;
-		return structuredDocumentRegion.getFirstRegion().getType() == XMLRegionContext.XML_CONTENT;
-	}
-
-	/*
-	 * check syntax of dirty region
-	 */
-	protected IReconcileResult[] reconcile(IStructuredDocumentRegion structuredDocumentRegion) {
-		List results = new ArrayList();
-
-		if (structuredDocumentRegion == null)
-			return EMPTY_RECONCILE_RESULT_SET;
-
-		if (isStartTag(structuredDocumentRegion)) {
-			// check for attributes without a value
-			checkForAttributeValue(structuredDocumentRegion, results);
-			// check if started tag is ended
-			checkStartEndTagPairs(structuredDocumentRegion, results);
-			// check empty tag <>
-			checkEmptyTag(structuredDocumentRegion, results);
-			// check that each attribute has quotes
-			checkQuotesForAttributeValues(structuredDocumentRegion, results);
-			// check that the closing '>' is there
-			checkClosingBracket(structuredDocumentRegion, results);
-		} else if (isEndTag(structuredDocumentRegion)) {
-			checkAttributesInEndTag(structuredDocumentRegion, results);
-			// check that the closing '>' is there
-			checkClosingBracket(structuredDocumentRegion, results);
-		} else if (isPI(structuredDocumentRegion)) {
-			// check validity of processing instruction
-			checkStartingSpaceForPI(structuredDocumentRegion, results);
-			checkNoNamespaceInPI(structuredDocumentRegion, results);
-		} else if (isXMLContent(structuredDocumentRegion)) {
-			checkForSpaceBeforeName(structuredDocumentRegion, results);
-		}
-
-		return (IReconcileResult[]) results.toArray(new IReconcileResult[results.size()]);
-	}
-
-	/*
-	 * @see org.eclipse.text.reconcilerpipe.AbstractReconcilePipeParticipant#reconcileModel(org.eclipse.jface.text.reconciler.DirtyRegion,
-	 *      org.eclipse.jface.text.IRegion)
-	 */
-	protected IReconcileResult[] reconcileModel(DirtyRegion dirtyRegion, IRegion subRegion) {
-		if (dirtyRegion == null)
-			return EMPTY_RECONCILE_RESULT_SET;
-
-        if(DEBUG)
-            System.out.println("[trace reconciler] > reconcile model in MARKUP step w/ dirty region: [" + dirtyRegion.getOffset() + ":" + dirtyRegion.getLength() + "]" + (dirtyRegion == null ? "null" : dirtyRegion.getText())); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-
-		IReconcileResult[] results = EMPTY_RECONCILE_RESULT_SET;
-
-		// TODO: may need to add back some synch(doc) and/or synch(region[i])
-		// to be thread safe
-		IStructuredDocumentRegion[] regions = getStructuredDocumentRegions(dirtyRegion);
-		for (int i = 0; i < regions.length; i++) {
-			// the region may be irrelevant at this point
-			// if the user has deleted it
-			if (!regions[i].isDeleted()) {
-				results = merge(results, reconcile(regions[i]));
-			}
-		}
-
-        if(DEBUG)
-            System.out.println("[trace reconciler] > MARKUP step done"); //$NON-NLS-1$
-		return results;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/StructuredTextReconcilingStrategyForMarkup.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/StructuredTextReconcilingStrategyForMarkup.java
deleted file mode 100644
index e4c0c27..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/reconcile/StructuredTextReconcilingStrategyForMarkup.java
+++ /dev/null
@@ -1,34 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.reconcile;
-
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.wst.sse.ui.internal.reconcile.AbstractStructuredTextReconcilingStrategy;
-
-
-/**
- * 
- * @author pavery
- *  
- */
-public class StructuredTextReconcilingStrategyForMarkup extends AbstractStructuredTextReconcilingStrategy {
-
-	public StructuredTextReconcilingStrategyForMarkup(ITextEditor editor) {
-		super(editor);
-	}
-
-	public void createReconcileSteps() {
-		// only one step, to check syntax
-		fFirstStep = new ReconcileStepForMarkup();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/registry/AdapterFactoryProviderForEmbeddedXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/registry/AdapterFactoryProviderForEmbeddedXML.java
deleted file mode 100644
index 690355d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/registry/AdapterFactoryProviderForEmbeddedXML.java
+++ /dev/null
@@ -1,40 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.registry;
-
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.modelhandler.EmbeddedTypeHandler;
-import org.eclipse.wst.sse.ui.registry.embedded.EmbeddedAdapterFactoryProvider;
-import org.eclipse.wst.xml.core.document.XMLDocument;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.modelhandler.EmbeddedXML;
-
-
-public class AdapterFactoryProviderForEmbeddedXML implements EmbeddedAdapterFactoryProvider {
-
-	/*
-	 * @see AdapterFactoryProvider#addAdapterFactories(IStructuredModel)
-	 */
-	public void addAdapterFactories(IStructuredModel structuredModel) {
-		if (structuredModel instanceof XMLModel) {
-			XMLDocument doc = ((XMLModel) structuredModel).getDocument();
-		}
-	}
-
-	/*
-	 * @see AdapterFactoryProvider#isFor(ContentTypeDescription)
-	 */
-	public boolean isFor(EmbeddedTypeHandler contentTypeDescription) {
-		return (contentTypeDescription instanceof EmbeddedXML);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/registry/AdapterFactoryProviderForXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/registry/AdapterFactoryProviderForXML.java
deleted file mode 100644
index 9320d9e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/registry/AdapterFactoryProviderForXML.java
+++ /dev/null
@@ -1,103 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.registry;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.FactoryRegistry;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.modelhandler.IDocumentTypeHandler;
-import org.eclipse.wst.sse.core.util.Assert;
-import org.eclipse.wst.sse.ui.registry.AdapterFactoryProvider;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.modelhandler.ModelHandlerForXML;
-import org.eclipse.wst.xml.ui.DOMObserver;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.preferences.XMLUIPreferenceNames;
-import org.eclipse.wst.xml.ui.views.contentoutline.JFaceNodeAdapterFactory;
-import org.eclipse.wst.xml.ui.views.properties.XMLPropertySourceAdapterFactory;
-
-/**
- *  
- */
-public class AdapterFactoryProviderForXML implements AdapterFactoryProvider {
-
-	/*
-	 * @see AdapterFactoryProvider#addAdapterFactories(IStructuredModel)
-	 */
-	public void addAdapterFactories(IStructuredModel structuredModel) {
-
-		// add the normal content based factories to model's registry
-		addContentBasedFactories(structuredModel);
-	}
-
-	protected void addContentBasedFactories(IStructuredModel structuredModel) {
-		FactoryRegistry factoryRegistry = structuredModel.getFactoryRegistry();
-		Assert.isNotNull(factoryRegistry, "Program Error: client caller must ensure model has factory registry"); //$NON-NLS-1$
-		IAdapterFactory factory = null;
-		// == this list came from the previous "XML only" list
-
-		// what was this still here? (6/4/03)
-		// I commented out on 6/4/03) but may have been something "extra"
-		// initializing
-		// old content assist adapter unnecessarily?
-		//factory =
-		// factoryRegistry.getFactoryFor(com.ibm.sed.edit.adapters.ContentAssistAdapter.class);
-
-		factory = factoryRegistry.getFactoryFor(IPropertySource.class);
-		if (factory == null) {
-			factory = new XMLPropertySourceAdapterFactory();
-			factoryRegistry.addFactory(factory);
-		}
-		factory = factoryRegistry.getFactoryFor(IJFaceNodeAdapter.class);
-		if (factory == null) {
-			factory = new JFaceNodeAdapterFactory();
-			factoryRegistry.addFactory(factory);
-		}
-
-		// cs... added for inferred grammar support
-		//
-		if (structuredModel != null) {
-			ModelQuery modelQuery = ModelQueryUtil.getModelQuery(structuredModel);
-			if (modelQuery != null) {
-				CMDocumentManager documentManager = modelQuery.getCMDocumentManager();
-				if (documentManager != null) {
-					IPreferenceStore store = XMLUIPlugin.getDefault().getPreferenceStore();
-					boolean useInferredGrammar = (store != null) ? store.getBoolean(XMLUIPreferenceNames.USE_INFERRED_GRAMMAR) : true;
-
-					documentManager.setPropertyEnabled(CMDocumentManager.PROPERTY_ASYNC_LOAD, true);
-					documentManager.setPropertyEnabled(CMDocumentManager.PROPERTY_AUTO_LOAD, false);
-					documentManager.setPropertyEnabled(CMDocumentManager.PROPERTY_USE_CACHED_RESOLVED_URI, true);
-					DOMObserver domObserver = new DOMObserver(structuredModel);
-					domObserver.setGrammarInferenceEnabled(useInferredGrammar);
-					domObserver.init();
-				}
-			}
-		}
-	}
-
-	/*
-	 * @see AdapterFactoryProvider#isFor(ContentTypeDescription)
-	 */
-	public boolean isFor(IDocumentTypeHandler contentTypeDescription) {
-		return (contentTypeDescription instanceof ModelHandlerForXML);
-	}
-
-	public void reinitializeFactories(IStructuredModel structuredModel) {
-		// nothing to do, since no embedded type
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/style/IStyleConstantsXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/style/IStyleConstantsXML.java
deleted file mode 100644
index 1164ca6..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/style/IStyleConstantsXML.java
+++ /dev/null
@@ -1,41 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.style;
-
-/**
- * Contains the symbolic name of styles used by LineStyleProvider,
- * ColorManager, and any others who may be interested
- */
-public interface IStyleConstantsXML {
-	public static final String BACKGROUND = "background"; //$NON-NLS-1$
-	public static final String CDATA_BORDER = "cdataBorder";//$NON-NLS-1$
-	public static final String CDATA_TEXT = "cdataText";//$NON-NLS-1$
-	public static final String COMMENT_BORDER = "commentBorder";//$NON-NLS-1$
-	public static final String COMMENT_TEXT = "commentText";//$NON-NLS-1$
-	public static final String DECL_BORDER = "declBoder";//$NON-NLS-1$
-	public static final String DOCTYPE_EXTERNAL_ID = "doctypeExternalId";//$NON-NLS-1$
-	public static final String DOCTYPE_EXTERNAL_ID_PUBREF = "doctypeExternalPubref";//$NON-NLS-1$
-	public static final String DOCTYPE_EXTERNAL_ID_SYSREF = "doctypeExtrenalSysref";//$NON-NLS-1$
-	public static final String DOCTYPE_NAME = "doctypeName";//$NON-NLS-1$
-
-	public static final String FOREGROUND = "foreground"; //$NON-NLS-1$
-	public static final String PI_BORDER = "piBorder";//$NON-NLS-1$
-	public static final String PI_CONTENT = "piContent";//$NON-NLS-1$
-
-	public static final String TAG_ATTRIBUTE_EQUALS = "tagAttributeEquals"; //$NON-NLS-1$
-	public static final String TAG_ATTRIBUTE_NAME = "tagAttributeName";//$NON-NLS-1$
-	public static final String TAG_ATTRIBUTE_VALUE = "tagAttributeValue";//$NON-NLS-1$
-	public static final String TAG_BORDER = "tagBorder";//$NON-NLS-1$
-	public static final String TAG_NAME = "tagName";//$NON-NLS-1$
-	public static final String XML_CONTENT = "xmlContent";//$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/style/LineStyleProviderForXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/style/LineStyleProviderForXML.java
deleted file mode 100644
index c3d45a2..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/style/LineStyleProviderForXML.java
+++ /dev/null
@@ -1,173 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.style;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.TextAttribute;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.ui.style.AbstractLineStyleProvider;
-import org.eclipse.wst.sse.ui.style.LineStyleProvider;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-public class LineStyleProviderForXML extends AbstractLineStyleProvider implements LineStyleProvider {
-	public LineStyleProviderForXML() {
-		super();
-		loadColors();
-	}
-
-	protected void clearColors() {
-		getTextAttributes().clear();
-	}
-
-	protected TextAttribute getAttributeFor(ITextRegion region) {
-		/**
-		 * a method to centralize all the "format rules" for regions
-		 * specifically associated for how to "open" the region.
-		 */
-		// not sure why this is coming through null, but just to catch it
-		if (region == null) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.CDATA_TEXT);
-		}
-		String type = region.getType();
-		if ((type == XMLRegionContext.XML_CONTENT) || (type == XMLRegionContext.XML_DOCTYPE_INTERNAL_SUBSET)) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-		} else if ((type == XMLRegionContext.XML_TAG_OPEN) || (type == XMLRegionContext.XML_END_TAG_OPEN) || (type == XMLRegionContext.XML_TAG_CLOSE) || (type == XMLRegionContext.XML_EMPTY_TAG_CLOSE)) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_BORDER);
-		} else if ((type == XMLRegionContext.XML_CDATA_OPEN) || (type == XMLRegionContext.XML_CDATA_CLOSE)) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.CDATA_BORDER);
-		} else if (type == XMLRegionContext.XML_CDATA_TEXT) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.CDATA_TEXT);
-		} else if (type == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_ATTRIBUTE_NAME);
-		} else if (type == XMLRegionContext.XML_DOCTYPE_DECLARATION) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_NAME);
-		} else if (type == XMLRegionContext.XML_TAG_NAME) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_NAME);
-		} else if ((type == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-		} else if (type == XMLRegionContext.XML_TAG_ATTRIBUTE_EQUALS) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS);
-		} else if ((type == XMLRegionContext.XML_COMMENT_OPEN) || (type == XMLRegionContext.XML_COMMENT_CLOSE)) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.COMMENT_BORDER);
-		} else if (type == XMLRegionContext.XML_COMMENT_TEXT) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.COMMENT_TEXT);
-		} else if (type == XMLRegionContext.XML_DOCTYPE_NAME) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.DOCTYPE_NAME);
-		} else if (type == XMLRegionContext.XML_PI_CONTENT) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.PI_CONTENT);
-		} else if ((type == XMLRegionContext.XML_PI_OPEN) || (type == XMLRegionContext.XML_PI_CLOSE)) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.PI_BORDER);
-		} else if ((type == XMLRegionContext.XML_DECLARATION_OPEN) || (type == XMLRegionContext.XML_DECLARATION_CLOSE)) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.DECL_BORDER);
-		} else if (type == XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_SYSREF) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF);
-		} else if (type == XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_PUBREF) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF);
-		} else if (type == XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_PUBLIC || type == XMLRegionContext.XML_DOCTYPE_EXTERNAL_ID_SYSTEM) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID);
-		} else if (type == XMLRegionContext.UNDEFINED) {
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.CDATA_TEXT);
-		} else if (type == XMLRegionContext.WHITE_SPACE) {
-			// white space is normall not on its own ... but when it is, we'll
-			// treat as content
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.XML_CONTENT);
-		} else if ((type == XMLRegionContext.XML_CHAR_REFERENCE) || (type == XMLRegionContext.XML_ENTITY_REFERENCE) || (type == XMLRegionContext.XML_PE_REFERENCE)) {
-			// we may want to character and entity references to have it own
-			// color in future,
-			// but for now, we'll make attribute value
-			return (TextAttribute) getTextAttributes().get(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-		} else {
-			// default, return null to signal "not handled"
-			// in which case, other factories should be tried
-			return null;
-		}
-	}
-
-	protected IPreferenceStore getColorPreferences() {
-		return XMLUIPlugin.getDefault().getPreferenceStore();
-	}
-
-	protected void handlePropertyChange(PropertyChangeEvent event) {
-		String styleKey = null;
-
-		if (event != null) {
-			String prefKey = event.getProperty();
-			// check if preference changed is a style preference
-			if (IStyleConstantsXML.TAG_NAME.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_NAME;
-			} else if (IStyleConstantsXML.TAG_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_BORDER;
-			} else if (IStyleConstantsXML.TAG_ATTRIBUTE_NAME.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_ATTRIBUTE_NAME;
-			} else if (IStyleConstantsXML.TAG_ATTRIBUTE_VALUE.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_ATTRIBUTE_VALUE;
-			} else if (IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS;
-			} else if (IStyleConstantsXML.COMMENT_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.COMMENT_BORDER;
-			} else if (IStyleConstantsXML.COMMENT_TEXT.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.COMMENT_TEXT;
-			} else if (IStyleConstantsXML.CDATA_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.CDATA_BORDER;
-			} else if (IStyleConstantsXML.CDATA_TEXT.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.CDATA_TEXT;
-			} else if (IStyleConstantsXML.DECL_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DECL_BORDER;
-			} else if (IStyleConstantsXML.DOCTYPE_EXTERNAL_ID.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DOCTYPE_EXTERNAL_ID;
-			} else if (IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF;
-			} else if (IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF;
-			} else if (IStyleConstantsXML.DOCTYPE_NAME.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.DOCTYPE_NAME;
-			} else if (IStyleConstantsXML.PI_CONTENT.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.PI_CONTENT;
-			} else if (IStyleConstantsXML.PI_BORDER.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.PI_BORDER;
-			} else if (IStyleConstantsXML.XML_CONTENT.equals(prefKey)) {
-				styleKey = IStyleConstantsXML.XML_CONTENT;
-			}
-		}
-
-		if (styleKey != null) {
-			// overwrite style preference with new value
-			addTextAttribute(styleKey);
-			super.handlePropertyChange(event);
-		}
-	}
-
-	protected void loadColors() {
-		clearColors();
-
-		addTextAttribute(IStyleConstantsXML.TAG_NAME);
-		addTextAttribute(IStyleConstantsXML.TAG_BORDER);
-		addTextAttribute(IStyleConstantsXML.TAG_ATTRIBUTE_NAME);
-		addTextAttribute(IStyleConstantsXML.TAG_ATTRIBUTE_VALUE);
-		addTextAttribute(IStyleConstantsXML.TAG_ATTRIBUTE_EQUALS);
-		addTextAttribute(IStyleConstantsXML.COMMENT_BORDER);
-		addTextAttribute(IStyleConstantsXML.COMMENT_TEXT);
-		addTextAttribute(IStyleConstantsXML.CDATA_BORDER);
-		addTextAttribute(IStyleConstantsXML.CDATA_TEXT);
-		addTextAttribute(IStyleConstantsXML.DECL_BORDER);
-		addTextAttribute(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID);
-		addTextAttribute(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_PUBREF);
-		addTextAttribute(IStyleConstantsXML.DOCTYPE_EXTERNAL_ID_SYSREF);
-		addTextAttribute(IStyleConstantsXML.DOCTYPE_NAME);
-		addTextAttribute(IStyleConstantsXML.PI_CONTENT);
-		addTextAttribute(IStyleConstantsXML.PI_BORDER);
-		addTextAttribute(IStyleConstantsXML.XML_CONTENT);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/MarkupTagInfoProvider.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/MarkupTagInfoProvider.java
deleted file mode 100644
index 31ada2d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/MarkupTagInfoProvider.java
+++ /dev/null
@@ -1,174 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.taginfo;
-
-import org.eclipse.wst.sse.ui.internal.SSEUIPlugin;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocumentation;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNodeList;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDescriptionBuilder;
-
-/**
- * Provides basic tag information such as element/attribute name, data type,
- * and tag info/documentation for CMNodes. Uses HTML to enhance presentation.
- */
-public class MarkupTagInfoProvider {
-	protected final static String BOLD_END = "</b>"; //$NON-NLS-1$
-	protected final static String BOLD_START = "<b>"; //$NON-NLS-1$
-	protected final static String HEADING_END = "</h5>"; //$NON-NLS-1$
-	protected final static String HEADING_START = "<h5>"; //$NON-NLS-1$
-	protected final static String LIST_BEGIN = "<ul>"; //$NON-NLS-1$
-	protected final static String LIST_ELEMENT = "<li>"; //$NON-NLS-1$
-	protected final static String NEW_LINE = "<dl>"; //$NON-NLS-1$
-	protected final static String PARAGRAPH_END = "</p>"; //$NON-NLS-1$
-	protected final static String PARAGRAPH_START = "<p>"; //$NON-NLS-1$
-	protected final static String SPACE = " "; //$NON-NLS-1$
-
-	/**
-	 * Returns basic tag information for display given a CMNode
-	 *  
-	 * @return String
-	 */
-	public String getInfo(CMNode node) {
-		if (node == null)
-			return null;
-		StringBuffer sb = new StringBuffer();
-		// we assume that if there is tagInfo present, only display tagInfo
-		printTagInfo(sb, node);
-
-		// no tagInfo present, so try to display tag description
-		if (sb.length() == 0) {
-			printDescription(sb, node);
-		}
-
-		// no tag description present either, so display default info
-		if (sb.length() == 0) {
-			printDefaultInfo(node, sb);
-		}
-
-		return sb.toString();
-	}
-
-	/**
-	 * Adds dataType's data type information, including enumerated type values
-	 * to string buffer, sb
-	 * 
-	 */
-	protected void printDataTypeInfo(StringBuffer sb, CMDataType dataType) {
-		String dataTypeName = dataType.getNodeName();
-		if ((dataTypeName != null) && (dataTypeName.length() > 0)) {
-			sb.append(PARAGRAPH_START + BOLD_START + SSEUIPlugin.getResourceString("%Data_Type____4") + SPACE + BOLD_END); //$NON-NLS-1$
-			sb.append(dataTypeName);
-			sb.append(PARAGRAPH_END);
-		}
-		String[] enumeratedValue = dataType.getEnumeratedValues();
-		if (enumeratedValue != null && enumeratedValue.length > 0) {
-			sb.append(PARAGRAPH_START + BOLD_START + SSEUIPlugin.getResourceString("%Enumerated_Values____5") + SPACE + BOLD_END); //$NON-NLS-1$
-			sb.append(LIST_BEGIN);
-			for (int i = 0; i < enumeratedValue.length; i++) {
-				sb.append(LIST_ELEMENT + enumeratedValue[i]);
-			}
-			sb.append(PARAGRAPH_END);
-		}
-	}
-
-	/**
-	 * Adds the default info (element name, content model, data type) of
-	 * CMNode to the string buffer, sb
-	 * 
-	 */
-	protected void printDefaultInfo(CMNode node, StringBuffer sb) {
-		{
-
-			if (node.getNodeType() == CMNode.ELEMENT_DECLARATION) {
-				CMElementDeclaration ed = (CMElementDeclaration) node;
-				sb.append(PARAGRAPH_START + BOLD_START + SSEUIPlugin.getResourceString("%Element____1") + SPACE + BOLD_END); //$NON-NLS-1$
-				sb.append(node.getNodeName());
-				sb.append(PARAGRAPH_END);
-				if (ed.getContentType() == CMElementDeclaration.PCDATA) {
-					CMDataType dataType = ed.getDataType();
-					if (dataType != null) {
-						printDataTypeInfo(sb, dataType);
-					}
-				} else {
-					CMDescriptionBuilder builder = new CMDescriptionBuilder();
-					String description = builder.buildDescription(node);
-					if ((description != null) && (description.length() > 0)) {
-						sb.append(PARAGRAPH_START + BOLD_START + SSEUIPlugin.getResourceString("%Content_Model____2") + SPACE + BOLD_END); //$NON-NLS-1$
-						sb.append(description + PARAGRAPH_END);
-					}
-				}
-				printDocumentation(sb, node);
-			} else if (node.getNodeType() == CMNode.ATTRIBUTE_DECLARATION) {
-				CMAttributeDeclaration ad = (CMAttributeDeclaration) node;
-				sb.append(PARAGRAPH_START + BOLD_START + SSEUIPlugin.getResourceString("%Attribute____3") + SPACE + BOLD_END); //$NON-NLS-1$
-				sb.append(node.getNodeName());
-				sb.append(PARAGRAPH_END);
-				CMDataType dataType = ad.getAttrType();
-				if (dataType != null) {
-					printDataTypeInfo(sb, dataType);
-				}
-				printDocumentation(sb, node);
-			} else if (node.getNodeType() == CMNode.DATA_TYPE) {
-				sb.append(PARAGRAPH_START + BOLD_START + SSEUIPlugin.getResourceString("%Data_Type____4") + SPACE + BOLD_END); //$NON-NLS-1$
-				sb.append(node.getNodeName());
-				sb.append(PARAGRAPH_END);
-				printDocumentation(sb, node);
-			}
-		}
-	}
-
-	/**
-	 * Adds the description property of the CMNode to the string buffer, sb
-	 * 
-	 */
-	protected void printDescription(StringBuffer sb, CMNode node) {
-		String tagInfo = (String) node.getProperty("description"); //$NON-NLS-1$
-		if (tagInfo != null) {
-			sb.append(PARAGRAPH_START + tagInfo.trim() + PARAGRAPH_END);
-		}
-	}
-
-	/**
-	 * Adds the tag documentation property of the CMNode to the string buffer,
-	 * sb
-	 * 
-	 */
-	protected void printDocumentation(StringBuffer sb, CMNode node) {
-		CMNodeList nodeList = (CMNodeList) node.getProperty("documentation"); //$NON-NLS-1$
-		if ((nodeList != null) && (nodeList.getLength() > 0)) {
-			sb.append(NEW_LINE);
-			for (int i = 0; i < nodeList.getLength(); i++) {
-				CMDocumentation documentation = (CMDocumentation) nodeList.item(i);
-				String doc = documentation.getValue();
-				if (doc != null) {
-					sb.append(PARAGRAPH_START + doc.trim() + PARAGRAPH_END);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Adds the tag info property of the CMNode to the string buffer, sb
-	 * 
-	 */
-	protected void printTagInfo(StringBuffer sb, CMNode node) {
-		String tagInfo = (String) node.getProperty("tagInfo"); //$NON-NLS-1$
-		if (tagInfo != null) {
-			sb.append(PARAGRAPH_START + tagInfo.trim() + PARAGRAPH_END);
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLBestMatchHoverProcessor.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLBestMatchHoverProcessor.java
deleted file mode 100644
index fb93c7e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLBestMatchHoverProcessor.java
+++ /dev/null
@@ -1,39 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.taginfo;
-
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.wst.sse.ui.taginfo.AbstractBestMatchHoverProcessor;
-
-
-/**
- * Provides the best xml hover help documentation (by using other hover help
- * processors) Priority of hover help processors is: ProblemHoverProcessor,
- * XMLTagInfoHoverProcessor, AnnotationHoverProcessor
- */
-public class XMLBestMatchHoverProcessor extends AbstractBestMatchHoverProcessor {
-	XMLTagInfoHoverProcessor fTagInfoHover;
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.structured.taginfo.AbstractBestMatchHoverProcessor#getTagInfoHover()
-	 */
-	protected ITextHover getTagInfoHover() {
-		if (fTagInfoHover == null) {
-			fTagInfoHover = new XMLTagInfoHoverProcessor();
-		}
-		return fTagInfoHover;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLInformationProvider.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLInformationProvider.java
deleted file mode 100644
index ae52fe9..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLInformationProvider.java
+++ /dev/null
@@ -1,64 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.taginfo;
-
-
-
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.information.IInformationProvider;
-import org.eclipse.jface.text.information.IInformationProviderExtension;
-
-/**
- * Provides context information for XML tags (Shows tooltip description)
- * 
- * @author amywu
- */
-public class XMLInformationProvider implements IInformationProvider, IInformationProviderExtension {
-
-	private XMLBestMatchHoverProcessor fTextHover = null;
-
-	public XMLInformationProvider() {
-		fTextHover = new XMLBestMatchHoverProcessor();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.information.IInformationProvider#getInformation(org.eclipse.jface.text.ITextViewer,
-	 *      org.eclipse.jface.text.IRegion)
-	 */
-	public String getInformation(ITextViewer textViewer, IRegion subject) {
-		return (String) getInformation2(textViewer, subject);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.information.IInformationProviderExtension#getInformation2(org.eclipse.jface.text.ITextViewer,
-	 *      org.eclipse.jface.text.IRegion)
-	 */
-	public Object getInformation2(ITextViewer textViewer, IRegion subject) {
-		return fTextHover.getHoverInfo(textViewer, subject);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.information.IInformationProvider#getSubject(org.eclipse.jface.text.ITextViewer,
-	 *      int)
-	 */
-	public IRegion getSubject(ITextViewer textViewer, int offset) {
-		return fTextHover.getHoverRegion(textViewer, offset);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLTagInfoHoverProcessor.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLTagInfoHoverProcessor.java
deleted file mode 100644
index f0241b8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/taginfo/XMLTagInfoHoverProcessor.java
+++ /dev/null
@@ -1,334 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.taginfo;
-
-
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextHover;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.Region;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.sse.core.text.IStructuredDocument;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.Debug;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.contentassist.ContentAssistUtils;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceHelper;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-/**
- * Provides hover help documentation for xml tags
- * 
- * @author amywu
- * @see org.eclipse.jface.text.ITextHover
- */
-public class XMLTagInfoHoverProcessor implements ITextHover {
-	protected MarkupTagInfoProvider fInfoProvider = null;
-
-	/**
-	 * Constructor for XMLTextHoverProcessor.
-	 */
-	public XMLTagInfoHoverProcessor() {
-	}
-
-	/**
-	 * Retreives documentation to display in the hover help popup.
-	 * 
-	 * @return String any documentation information to display
-	 *         <code>null</code> if there is nothing to display.
-	 *  
-	 */
-	protected String computeHoverHelp(ITextViewer textViewer, int documentPosition) {
-		String result = null;
-
-		IndexedRegion treeNode = ContentAssistUtils.getNodeAt((StructuredTextViewer) textViewer, documentPosition);
-		if (treeNode == null)
-			return null;
-		Node node = (Node) treeNode;
-
-		while (node != null && node.getNodeType() == Node.TEXT_NODE && node.getParentNode() != null)
-			node = node.getParentNode();
-		XMLNode parentNode = (XMLNode) node;
-
-		IStructuredDocumentRegion flatNode = ((IStructuredDocument) textViewer.getDocument()).getRegionAtCharacterOffset(documentPosition);
-		if (flatNode != null) {
-			ITextRegion region = flatNode.getRegionAtCharacterOffset(documentPosition);
-			if (region != null) {
-				result = computeRegionHelp(treeNode, parentNode, flatNode, region);
-			}
-		}
-
-		return result;
-	}
-
-	/**
-	 * Computes the hoverhelp based on region
-	 * 
-	 * @return String hoverhelp
-	 */
-	protected String computeRegionHelp(IndexedRegion treeNode, XMLNode parentNode, IStructuredDocumentRegion flatNode, ITextRegion region) {
-		String result = null;
-		if (region == null)
-			return null;
-		String regionType = region.getType();
-		if (regionType == XMLRegionContext.XML_TAG_NAME)
-			result = computeTagNameHelp((XMLNode) treeNode, parentNode, flatNode, region);
-		else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)
-			result = computeTagAttNameHelp((XMLNode) treeNode, parentNode, flatNode, region);
-		else if (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)
-			result = computeTagAttValueHelp((XMLNode) treeNode, parentNode, flatNode, region);
-		return result;
-	}
-
-	/**
-	 * Computes the hover help for the attribute name
-	 */
-	protected String computeTagAttNameHelp(XMLNode xmlnode, XMLNode parentNode, IStructuredDocumentRegion flatNode, ITextRegion region) {
-		CMElementDeclaration elementDecl = getCMElementDeclaration(xmlnode);
-		String attName = flatNode.getText(region);
-		CMAttributeDeclaration attDecl = getCMAttributeDeclaration(elementDecl, attName);
-		return getAdditionalInfo(elementDecl, attDecl);
-	}
-
-	/**
-	 * Computes the hover help for the attribute value (this is the same as
-	 * the attribute name's help)
-	 */
-	protected String computeTagAttValueHelp(XMLNode xmlnode, XMLNode parentNode, IStructuredDocumentRegion flatNode, ITextRegion region) {
-		CMElementDeclaration elementDecl = getCMElementDeclaration(xmlnode);
-		ITextRegion attrNameRegion = getAttrNameRegion(xmlnode, region);
-
-		String attName = flatNode.getText(attrNameRegion);
-		CMAttributeDeclaration attDecl = getCMAttributeDeclaration(elementDecl, attName);
-		return getAdditionalInfo(elementDecl, attDecl);
-	}
-
-	/**
-	 * Computes the hover help for the tag name
-	 */
-	protected String computeTagNameHelp(XMLNode xmlnode, XMLNode parentNode, IStructuredDocumentRegion flatNode, ITextRegion region) {
-		CMElementDeclaration elementDecl = getCMElementDeclaration(xmlnode);
-		CMElementDeclaration pelementDecl = getCMElementDeclaration(parentNode);
-		return getAdditionalInfo(pelementDecl, elementDecl);
-	}
-
-	/**
-	 * Retreives cmnode's documentation to display in the hover help popup. If
-	 * no documentation exists for cmnode, try displaying parentOrOwner's
-	 * documentation
-	 * 
-	 * @return String any documentation information to display for cmnode.
-	 *         <code>null</code> if there is nothing to display.
-	 */
-	protected String getAdditionalInfo(CMNode parentOrOwner, CMNode cmnode) {
-		String addlInfo = null;
-
-		if (cmnode == null) {
-			if (Debug.displayWarnings) {
-				new IllegalArgumentException("Null declaration!").printStackTrace(); //$NON-NLS-1$
-			}
-			return null;
-		}
-
-		addlInfo = getInfoProvider().getInfo(cmnode);
-		if (addlInfo == null && parentOrOwner != null)
-			addlInfo = getInfoProvider().getInfo(parentOrOwner);
-		return addlInfo;
-	}
-
-	/**
-	 * Find the region of the attribute name for the given attribute value
-	 * region
-	 * 
-	 */
-	protected ITextRegion getAttrNameRegion(XMLNode node, ITextRegion region) {
-		// Find the attribute name for which this position should have a value
-		IStructuredDocumentRegion open = node.getFirstStructuredDocumentRegion();
-		ITextRegionList openRegions = open.getRegions();
-		int i = openRegions.indexOf(region);
-		if (i < 0)
-			return null;
-		ITextRegion nameRegion = null;
-		while (i >= 0) {
-			nameRegion = openRegions.get(i--);
-			if (nameRegion.getType() == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME)
-				break;
-		}
-		return nameRegion;
-	}
-
-	/**
-	 * Retreives CMAttributeDeclaration indicated by attribute name within
-	 * elementDecl
-	 */
-	protected CMAttributeDeclaration getCMAttributeDeclaration(CMElementDeclaration elementDecl, String attName) {
-		CMAttributeDeclaration attrDecl = null;
-
-		if (elementDecl != null) {
-			CMNamedNodeMap attributes = elementDecl.getAttributes();
-			String noprefixName = DOMNamespaceHelper.getUnprefixedName(attName);
-			if (attributes != null) {
-				attrDecl = (CMAttributeDeclaration) attributes.getNamedItem(noprefixName);
-				if (attrDecl == null) {
-					attrDecl = (CMAttributeDeclaration) attributes.getNamedItem(attName);
-				}
-			}
-		}
-		return attrDecl;
-	}
-
-	/**
-	 * Retreives CMElementDeclaration for given node
-	 * 
-	 * @return CMElementDeclaration - CMElementDeclaration of node or
-	 *         <code>null</code> if not possible
-	 */
-	protected CMElementDeclaration getCMElementDeclaration(Node node) {
-		CMElementDeclaration result = null;
-		if (node.getNodeType() == Node.ELEMENT_NODE) {
-			ModelQuery modelQuery = ModelQueryUtil.getModelQuery(node.getOwnerDocument());
-			if (modelQuery != null)
-				result = modelQuery.getCMElementDeclaration((Element) node);
-		}
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.ITextHover#getHoverInfo(org.eclipse.jface.text.ITextViewer,
-	 *      org.eclipse.jface.text.IRegion)
-	 */
-	public String getHoverInfo(ITextViewer viewer, IRegion hoverRegion) {
-		if ((hoverRegion == null) || (viewer == null) || (viewer.getDocument() == null))
-			return null;
-
-		String displayText = null;
-		int documentOffset = hoverRegion.getOffset();
-		displayText = computeHoverHelp(viewer, documentOffset);
-
-		return displayText;
-	}
-
-	/**
-	 * Returns the region to hover the text over based on the offset.
-	 * 
-	 * @param textViewer
-	 * @param offset
-	 * 
-	 * @return IRegion region to hover over if offset is within tag name,
-	 *         attribute name, or attribute value and if offset is not over
-	 *         invalid whitespace. otherwise, returns <code>null</code>
-	 * 
-	 * @see ITextHover#getHoverRegion(ITextViewer, int)
-	 */
-	public IRegion getHoverRegion(ITextViewer textViewer, int offset) {
-		if ((textViewer == null) || (textViewer.getDocument() == null))
-			return null;
-
-		IStructuredDocumentRegion flatNode = ((IStructuredDocument) textViewer.getDocument()).getRegionAtCharacterOffset(offset);
-		ITextRegion region = null;
-
-		if (flatNode != null) {
-			region = flatNode.getRegionAtCharacterOffset(offset);
-		}
-
-		if (region != null) {
-			// only supply hoverhelp for tag name, attribute name, or
-			// attribute value
-			String regionType = region.getType();
-			if ((regionType == XMLRegionContext.XML_TAG_NAME) || (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) || (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)) {
-				try {
-					// check if we are at whitespace before or after line
-					IRegion line = textViewer.getDocument().getLineInformationOfOffset(offset);
-					if ((offset > (line.getOffset())) && (offset < (line.getOffset() + line.getLength()))) {
-						// check if we are in region's trailing whitespace
-						// (whitespace after relevant info)
-						if (offset < flatNode.getTextEndOffset(region)) {
-							return new Region(flatNode.getStartOffset(region), region.getTextLength());
-						}
-					}
-				} catch (BadLocationException e) {
-					Logger.logException(e);
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * @deprecated if enabled flag is false, dont call getHoverRegion in the
-	 *             first place if true, use getHoverRegion(ITextViewer, int)
-	 */
-	public IRegion getHoverRegion(ITextViewer textViewer, int offset, boolean enabled) {
-		if ((!enabled) || (textViewer == null) || (textViewer.getDocument() == null))
-			return null;
-
-		IStructuredDocumentRegion flatNode = ((IStructuredDocument) textViewer.getDocument()).getRegionAtCharacterOffset(offset);
-		ITextRegion region = null;
-
-		if (flatNode != null) {
-			region = flatNode.getRegionAtCharacterOffset(offset);
-		}
-
-		if (region != null) {
-			// only supply hoverhelp for tag name, attribute name, or
-			// attribute value
-			String regionType = region.getType();
-			if ((regionType == XMLRegionContext.XML_TAG_NAME) || (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_NAME) || (regionType == XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE)) {
-				try {
-					// check if we are at whitespace before or after line
-					IRegion line = textViewer.getDocument().getLineInformationOfOffset(offset);
-					if ((offset > (line.getOffset())) && (offset < (line.getOffset() + line.getLength()))) {
-						// check if we are in region's trailing whitespace
-						// (whitespace after relevant info)
-						if (offset < flatNode.getTextEndOffset(region)) {
-							return new Region(flatNode.getStartOffset(region), region.getTextLength());
-						}
-					}
-				} catch (BadLocationException e) {
-					Logger.logException(e);
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Gets the infoProvider.
-	 * 
-	 * @return Returns fInfoProvider and if fInfoProvider was
-	 *         <code>null</code> set fInfoProvider to DefaultInfoProvider
-	 */
-	public MarkupTagInfoProvider getInfoProvider() {
-		if (fInfoProvider == null) {
-			fInfoProvider = new MarkupTagInfoProvider();
-		}
-		return fInfoProvider;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/text/XMLDocumentRegionEdgeMatcher.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/text/XMLDocumentRegionEdgeMatcher.java
deleted file mode 100644
index 901fe89..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/text/XMLDocumentRegionEdgeMatcher.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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.text;
-
-import org.eclipse.wst.sse.ui.text.DocumentRegionEdgeMatcher;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-
-
-public class XMLDocumentRegionEdgeMatcher extends DocumentRegionEdgeMatcher {
-
-
-	public XMLDocumentRegionEdgeMatcher() {
-		super(new String[]{XMLRegionContext.XML_TAG_NAME, XMLRegionContext.XML_COMMENT_TEXT, XMLRegionContext.XML_CDATA_TEXT, XMLRegionContext.XML_PI_OPEN, XMLRegionContext.XML_PI_CONTENT}, null);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/SharedXMLEditorPluginImageHelper.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/SharedXMLEditorPluginImageHelper.java
deleted file mode 100644
index 81c8a44..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/SharedXMLEditorPluginImageHelper.java
+++ /dev/null
@@ -1,72 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.util;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-
-
-public class SharedXMLEditorPluginImageHelper {
-	public static final String IMG_DTOOL_CONSTRAINOFF = XMLEditorPluginImages.IMG_DTOOL_CONSTRAINOFF;
-	public static final String IMG_DTOOL_CONSTRAINON = XMLEditorPluginImages.IMG_DTOOL_CONSTRAINON;
-	public static final String IMG_DTOOL_RLDGRMR = XMLEditorPluginImages.IMG_DTOOL_RLDGRMR;
-	public static final String IMG_DTOOL_VALIDATE = XMLEditorPluginImages.IMG_DTOOL_VALIDATE;
-	public static final String IMG_ETOOL_CONSTRAINOFF = XMLEditorPluginImages.IMG_ETOOL_CONSTRAINOFF;
-	public static final String IMG_ETOOL_CONSTRAINON = XMLEditorPluginImages.IMG_ETOOL_CONSTRAINON;
-	public static final String IMG_ETOOL_RLDGRMR = XMLEditorPluginImages.IMG_ETOOL_RLDGRMR;
-	public static final String IMG_ETOOL_VALIDATE = XMLEditorPluginImages.IMG_ETOOL_VALIDATE;
-	public static final String IMG_OBJ_ATTRIBUTE = XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE;
-	public static final String IMG_OBJ_CDATASECTION = XMLEditorPluginImages.IMG_OBJ_CDATASECTION;
-	public static final String IMG_OBJ_COMMENT = XMLEditorPluginImages.IMG_OBJ_COMMENT;
-	public static final String IMG_OBJ_DOCTYPE = XMLEditorPluginImages.IMG_OBJ_DOCTYPE;
-	public static final String IMG_OBJ_ELEMENT = XMLEditorPluginImages.IMG_OBJ_ELEMENT;
-	public static final String IMG_OBJ_ENTITY = XMLEditorPluginImages.IMG_OBJ_ENTITY;
-	public static final String IMG_OBJ_ENTITY_REFERENCE = XMLEditorPluginImages.IMG_OBJ_ENTITY_REFERENCE;
-	public static final String IMG_OBJ_NOTATION = XMLEditorPluginImages.IMG_OBJ_NOTATION;
-	public static final String IMG_OBJ_PROCESSINGINSTRUCTION = XMLEditorPluginImages.IMG_OBJ_PROCESSINGINSTRUCTION;
-	public static final String IMG_OBJ_TAG_GENERIC = XMLEditorPluginImages.IMG_OBJ_TAG_GENERIC;
-	public static final String IMG_OBJ_TAG_MACRO = XMLEditorPluginImages.IMG_OBJ_TAG_MACRO;
-	public static final String IMG_OBJ_TXTEXT = XMLEditorPluginImages.IMG_OBJ_TXTEXT;
-
-	/**
-	 * Retrieves the specified image from the xml source editor plugin's image
-	 * registry. Note: The returned <code>Image</code> is managed by the
-	 * workbench; clients must <b>not </b> dispose of the returned image.
-	 * 
-	 * @param symbolicName
-	 *            the symbolic name of the image; there are constants declared
-	 *            in this class for build-in images that come with the xml
-	 *            source editor
-	 * @return the image, or <code>null</code> if not found
-	 */
-	public static Image getImage(String symbolicName) {
-		return XMLEditorPluginImageHelper.getInstance().getImage(symbolicName);
-	}
-
-	/**
-	 * Retrieves the image descriptor for specified image from the xml source
-	 * editor plugin's image registry. Unlike <code>Image</code>s, image
-	 * descriptors themselves do not need to be disposed.
-	 * 
-	 * @param symbolicName
-	 *            the symbolic name of the image; there are constants declared
-	 *            in this interface for build-in images that come with the xml
-	 *            source editor
-	 * @return the image descriptor, or <code>null</code> if not found
-	 */
-	public static ImageDescriptor getImageDescriptor(String symbolicName) {
-		return XMLEditorPluginImageHelper.getInstance().getImageDescriptor(symbolicName);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/XMLCommonResources.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/XMLCommonResources.java
deleted file mode 100644
index 857d8c0..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/XMLCommonResources.java
+++ /dev/null
@@ -1,96 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.util;
-
-import java.text.MessageFormat;
-import java.util.ResourceBundle;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.ui.views.markers.internal.ImageFactory;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-
-/**
- * @deprecated use XMLUIPlugin.getResourceString() instead
- */
-/**
- * This class exists temporarily until the properties files can be
- * re-organized and the various resource references can be updated
- */
-public class XMLCommonResources {
-	protected static XMLCommonResources instance;
-
-	public synchronized static XMLCommonResources getInstance() {
-		if (instance == null)
-			instance = new XMLCommonResources(XMLUIPlugin.getDefault());
-		return instance;
-	}
-
-	private XMLUIPlugin editorPlugin;
-
-	protected ImageFactory imageFactory;
-	private ResourceBundle resourceBundle;
-
-	public XMLCommonResources(XMLUIPlugin editorPlugin) {
-		instance = this;
-		this.editorPlugin = editorPlugin;
-		//imageFactory = new ImageFactory();
-		try {
-			resourceBundle = ResourceBundle.getBundle("org.eclipse.wst.xml.ui.internal.XMLUIPluginResources"); //$NON-NLS-1$
-			imageFactory = new ImageFactory();
-		} catch (java.util.MissingResourceException exception) {
-			//TODO... log an error message
-			//B2BUtilPlugin.getPlugin().getMsgLogger().write(B2BUtilPlugin.getGUIString("_WARN_PLUGIN_PROPERTIES_MISSING")
-			// + descriptor.getLabel());
-			resourceBundle = null;
-		}
-	}
-
-	 ImageDescriptor _getImageDescriptor(String iconName) {
-		return AbstractUIPlugin.imageDescriptorFromPlugin(XMLUIPlugin.ID, iconName);
-	}
-
-
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}
-
-	/**
-	 * This gets the string resource.
-	 */
-	public String getString(String key) {
-		return getResourceBundle().getString(key);
-	}
-
-	/**
-	 * This gets the string resource and does one substitution.
-	 */
-	public String getString(String key, Object s1) {
-		return MessageFormat.format(getString(key), new Object[]{s1});
-	}
-
-	/**
-	 * This gets the string resource and does two substitutions.
-	 */
-	public String getString(String key, Object s1, Object s2) {
-		return MessageFormat.format(getString(key), new Object[]{s1, s2});
-	}
-
-	public IWorkbench getWorkbench() {
-		return editorPlugin.getWorkbench();
-	}
-	/*
-	 * public ImageFactory getImageFactory() { return imageFactory; }
-	 */
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/XMLCommonUIContextIds.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/XMLCommonUIContextIds.java
deleted file mode 100644
index e421f22..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/util/XMLCommonUIContextIds.java
+++ /dev/null
@@ -1,64 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-
-
-package org.eclipse.wst.xml.ui.util;
-
-/**
- * Context help id constants.
- */
-public interface XMLCommonUIContextIds {
-	public static final String PLUGIN_NAME = "com.ibm.etools.xml.common.ui"; //$NON-NLS-1$
-
-
-	/* CONTEXT_IDs for "Assign an XSL Stylesheet To The XML File" dialog */
-	/* CONTEXT_ID comn0010 for the dropdown menu. Follow comnxxxx */
-	public static final String XCUI_ASSIGN_XSL_TO_XML_DROPDOWN = PLUGIN_NAME + ".xcui1000"; //$NON-NLS-1$
-	/* CONTEXT_ID comn0030 for the import button. Follow comnxxxx */
-	public static final String XCUI_ASSIGN_XSL_TO_XML_IMPORT = PLUGIN_NAME + ".xcui3000"; //$NON-NLS-1$
-	/* CONTEXT_ID comn0020 for the workbench button. Follow comnxxxx */
-	public static final String XCUI_ASSIGN_XSL_TO_XML_WORKBENCH = PLUGIN_NAME + ".xcui2000"; //$NON-NLS-1$
-
-	/* CONTEXT_ID xcui0500 for Edit Attribute Instruction Dialog */
-	public static final String XCUI_ATTRIBUTE_DIALOG = PLUGIN_NAME + ".xcui0500"; //$NON-NLS-1$
-
-	/* CONTEXT_ID xcui0400 for Select XML Catalog ID Dialog */
-	public static final String XCUI_CATALOG_DIALOG = PLUGIN_NAME + ".xcui0400"; //$NON-NLS-1$
-
-	/* CONTEXT_IDs for XML Common UI use xcuixxx context IDs */
-
-	/* CONTEXT_ID xcui0010 for Edit Doctype Dialog */
-	public static final String XCUI_DOCTYPE_DIALOG = PLUGIN_NAME + ".xcui0010"; //$NON-NLS-1$
-	/* CONTEXT_ID xcui0030 for Public ID Text Edit */
-	public static final String XCUI_DOCTYPE_PUBLIC = PLUGIN_NAME + ".xcui0030"; //$NON-NLS-1$
-	/* CONTEXT_ID xcui0030 for Public ID Browse Button */
-	public static final String XCUI_DOCTYPE_PUBLIC_BROWSE = PLUGIN_NAME + ".xcui0040"; //$NON-NLS-1$
-	/* CONTEXT_ID xcui0020 for Root Element Name Text Edit */
-	public static final String XCUI_DOCTYPE_ROOT = PLUGIN_NAME + ".xcui0020"; //$NON-NLS-1$
-	/* CONTEXT_ID xcui0040 for System ID Text Edit */
-	public static final String XCUI_DOCTYPE_SYSTEM = PLUGIN_NAME + ".xcui0050"; //$NON-NLS-1$
-	/* CONTEXT_ID xcui0030 for System ID Browse Button */
-	public static final String XCUI_DOCTYPE_SYSTEM_BROWSE = PLUGIN_NAME + ".xcui0060"; //$NON-NLS-1$
-
-	/* CONTEXT_ID xcui0300 for Edit Element Instruction Dialog */
-	public static final String XCUI_ELEMENT_DIALOG = PLUGIN_NAME + ".xcui0600"; //$NON-NLS-1$
-
-	/* CONTEXT_ID xcui0200 for Edit Namespace Dialog */
-	public static final String XCUI_NAMESPACE_DIALOG = PLUGIN_NAME + ".xcui0200"; //$NON-NLS-1$
-
-	/* CONTEXT_ID xcui0300 for Edit Processing Instruction Dialog */
-	public static final String XCUI_PROCESSING_DIALOG = PLUGIN_NAME + ".xcui0300"; //$NON-NLS-1$
-
-	/* CONTEXT_ID xcui0100 for Edit Schema Information Dialog */
-	public static final String XCUI_SCHEMA_INFO_DIALOG = PLUGIN_NAME + ".xcui0100"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeAdapter.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeAdapter.java
deleted file mode 100644
index 32a9a29..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeAdapter.java
+++ /dev/null
@@ -1,345 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.contentoutline;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.views.properties.PropertySheetPage;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapterFactory;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDocument;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManagerListener;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.contentoutline.BufferedOutlineUpdater;
-import org.eclipse.wst.xml.ui.internal.editor.CMImageUtil;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImageHelper;
-import org.eclipse.wst.xml.ui.internal.editor.XMLEditorPluginImages;
-import org.w3c.dom.Node;
-
-/**
- * Adapts a DOM node to a JFace viewer.
- */
-public class JFaceNodeAdapter implements IJFaceNodeAdapter {
-
-	public class CMDocumentManagerListenerImpl implements CMDocumentManagerListener {
-
-		List beingRefreshed = Collections.synchronizedList(new ArrayList());
-
-		public void cacheCleared(org.eclipse.wst.xml.core.internal.contentmodel.util.CMDocumentCache cache) {
-
-		}
-
-		public void cacheUpdated(CMDocumentCache cache, final String uri, int oldStatus, int newStatus, CMDocument cmDocument) {
-
-			if (newStatus == CMDocumentCache.STATUS_LOADED || newStatus == CMDocumentCache.STATUS_ERROR) {
-				refreshViewers();
-			}
-		}
-
-		private Display getDisplay() {
-
-			return PlatformUI.getWorkbench().getDisplay();
-		}
-
-		public void propertyChanged(CMDocumentManager cmDocumentManager, String propertyName) {
-
-			if (cmDocumentManager.getPropertyEnabled(CMDocumentManager.PROPERTY_AUTO_LOAD)) {
-				refreshViewers();
-			}
-		}
-
-		protected void refreshViewers() {
-
-			// we're counting on getListers returning a "copy" of the
-			// listeners, so we'll be thread safe.
-			Collection listeners = ((IJFaceNodeAdapterFactory) adapterFactory).getListeners();
-			Iterator iterator = listeners.iterator();
-			while (iterator.hasNext()) {
-				Object listener = iterator.next();
-				// now that we use aynchExec, we ourselves have to gaurd
-				// against
-				// agains adding some refreshes when its already being
-				// refreshed.
-				if (listener instanceof PropertySheetPage && (!beingRefreshed.contains(listener))) {
-					final PropertySheetPage propertySheetPage = (PropertySheetPage) listener;
-					beingRefreshed.add(propertySheetPage);
-					getDisplay().asyncExec(new Runnable() {
-
-						public void run() {
-
-							if (getDisplay().isDisposed()) {
-								return;
-							}
-							if (propertySheetPage.getControl() != null && !propertySheetPage.getControl().isDisposed()) {
-								propertySheetPage.refresh();
-								beingRefreshed.remove(propertySheetPage);
-							}
-						}
-					});
-				}
-			}
-		}
-	}
-
-	final static Class ADAPTER_KEY = IJFaceNodeAdapter.class;
-
-	// for debugging
-	private static final boolean DEBUG;
-	static {
-		String value = Platform.getDebugOption("org.eclipse.wst.sse.ui/debug/outline"); //$NON-NLS-1$
-		DEBUG = value != null && value.equalsIgnoreCase("true"); //$NON-NLS-1$
-	}
-
-	protected IAdapterFactory adapterFactory;
-	protected CMDocumentManagerListener cmDocumentManagerListener;
-	private BufferedOutlineUpdater fUpdater = null;
-
-	public JFaceNodeAdapter(IAdapterFactory adapterFactory) {
-
-		super();
-		this.adapterFactory = adapterFactory;
-	}
-
-	protected Image createImage(Object object) {
-
-		Image image = null;
-		Node node = (Node) object;
-		switch (node.getNodeType()) {
-			case Node.ELEMENT_NODE : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);
-				break;
-			}
-			case Node.ATTRIBUTE_NODE : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ATTRIBUTE);
-				break;
-			}
-			case Node.TEXT_NODE : { // actually, TEXT should never be seen in
-				// the tree
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);
-				break;
-			}
-			case Node.CDATA_SECTION_NODE : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_CDATASECTION);
-				break;
-			}
-			case Node.ENTITY_REFERENCE_NODE :
-			case Node.ENTITY_NODE : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ENTITY);
-				break;
-			}
-			case Node.PROCESSING_INSTRUCTION_NODE : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_PROCESSINGINSTRUCTION);
-				break;
-			}
-			case Node.COMMENT_NODE : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_COMMENT);
-				break;
-			}
-			case Node.DOCUMENT_TYPE_NODE : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_DOCTYPE);
-				break;
-			}
-			case Node.NOTATION_NODE : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_NOTATION);
-				break;
-			}
-			default : {
-				image = createXMLImageDescriptor(XMLEditorPluginImages.IMG_OBJ_ELEMENT);
-				break;
-			}
-		}
-		return image;
-	}
-
-	protected Image createXMLImageDescriptor(String imageResourceName) {
-		return XMLEditorPluginImageHelper.getInstance().getImage(imageResourceName);
-	}
-
-	public Object[] getChildren(Object object) {
-
-		// (pa) 20021217
-		// cmvc defect 235554
-		// performance enhancement: using child.getNextSibling() rather than
-		// nodeList(item) for O(n) vs. O(n*n)
-		//
-		Node node = (Node) object;
-		ArrayList v = new ArrayList(node.getChildNodes().getLength());
-		for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
-			Node n = child;
-			if (n.getNodeType() != Node.TEXT_NODE)
-				v.add(n);
-		}
-		return v.toArray();
-	}
-
-	/**
-	 * Returns a CMDocumentManagerListener that can update JFace views when
-	 * notified of CMDocumentManager events
-	 */
-	public org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManagerListener getCMDocumentManagerListener() {
-
-		if (cmDocumentManagerListener == null)
-			cmDocumentManagerListener = new CMDocumentManagerListenerImpl();
-		return cmDocumentManagerListener;
-	}
-
-	Display getDisplay() {
-
-		// Note: the workbench should always have a display
-		// (unless running headless), whereas Display.getCurrent()
-		// only returns the display if the currently executing thread
-		// has one.
-		if (PlatformUI.isWorkbenchRunning())
-			return PlatformUI.getWorkbench().getDisplay();
-		else
-			return null;
-	}
-
-	/**
-	 * Returns an enumeration with the elements belonging to the passed
-	 * element. These are the top level items in a list, tree, table, etc...
-	 */
-	public Object[] getElements(Object node) {
-
-		return getChildren(node);
-	}
-
-	/**
-	 * Fetches the label image specific to this object instance.
-	 */
-	public Image getLabelImage(Object node) {
-
-		Image image = CMImageUtil.getImage(CMImageUtil.getDeclaration((Node) node));
-		if (image == null && JFaceResources.getImageRegistry() != null) {
-			ImageRegistry imageRegistry = JFaceResources.getImageRegistry();
-			String nodeName = getNodeName(node);
-			image = imageRegistry.get(nodeName);
-			if (image == null) {
-				image = createImage(node);
-				if (image != null)
-					imageRegistry.put(nodeName, image);
-			}
-		}
-		return image;
-	}
-
-	/**
-	 * Fetches the label text specific to this object instance.
-	 */
-	public String getLabelText(Object node) {
-
-		return getNodeName(node);
-	}
-
-	private String getNodeName(Object object) {
-
-		Node node = (Node) object;
-		String nodeName = node.getNodeName();
-		if (node.getNodeType() == Node.DOCUMENT_TYPE_NODE)
-			nodeName = "DOCTYPE:" + nodeName; //$NON-NLS-1$
-		return nodeName;
-	}
-
-	private BufferedOutlineUpdater getOutlineUpdater() {
-		if (fUpdater == null)
-			fUpdater = new BufferedOutlineUpdater();
-		return fUpdater;
-	}
-
-	public Object getParent(Object object) {
-
-		Node node = (Node) object;
-		return node.getParentNode();
-	}
-
-	public boolean hasChildren(Object object) {
-
-		// (pa) 20021217
-		// cmvc defect 235554 > use child.getNextSibling() instead of
-		//                          nodeList(item) for O(n) vs. O(n*n)
-		Node node = (Node) object;
-		for (Node child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
-			if (child.getNodeType() != Node.TEXT_NODE)
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-
-		return type.equals(ADAPTER_KEY);
-	}
-
-	/**
-	 * Called by the object being adapter (the notifier) when something has
-	 * changed.
-	 */
-	public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue, Object newValue, int pos) {
-
-		// future_TODO: the 'uijobs' used in this method were added to solve
-		// threading problems when the dom
-		// is updated in the background while the editor is open. They may be
-		// a bit overkill and not that useful.
-		// (That is, may be be worthy of job manager management). If they are
-		// found to be important enough to leave in,
-		// there's probably some optimization that can be done.
-		Collection listeners = ((JFaceNodeAdapterFactory) adapterFactory).getListeners();
-		Iterator iterator = listeners.iterator();
-
-		while (iterator.hasNext()) {
-			Object listener = iterator.next();
-			if (notifier instanceof Node && (listener instanceof StructuredViewer) && (eventType == INodeNotifier.STRUCTURE_CHANGED || (eventType == INodeNotifier.CHANGE && changedFeature == null))) {
-
-				if (DEBUG)
-					System.out.println("JFaceNodeAdapter notified on event type > " + eventType);
-
-				// refresh on structural and "unknown" changes
-				StructuredViewer structuredViewer = (StructuredViewer) listener;
-				// https://w3.opensource.ibm.com/bugzilla/show_bug.cgi?id=5230
-				if (structuredViewer.getControl() != null /*
-														   * &&
-														   * structuredViewer.getControl().isVisible()
-														   */)
-					getOutlineUpdater().processNode(structuredViewer, (Node) notifier);
-			} else if ((listener instanceof PropertySheetPage) && ((eventType == INodeNotifier.CHANGE) || (eventType == INodeNotifier.STRUCTURE_CHANGED))) {
-				PropertySheetPage propertySheetPage = (PropertySheetPage) listener;
-				if (propertySheetPage.getControl() != null /*
-														    * &&
-														    * !propertySheetPage.getControl().isDisposed()
-														    */) {
-					RefreshPropertySheetJob refreshPropertySheetJob = new RefreshPropertySheetJob(getDisplay(), XMLUIPlugin.getResourceString("%JFaceNodeAdapter.1"), propertySheetPage); //$NON-NLS-1$
-					refreshPropertySheetJob.schedule();
-				}
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeAdapterFactory.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeAdapterFactory.java
deleted file mode 100644
index 0ce8682..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeAdapterFactory.java
+++ /dev/null
@@ -1,104 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.contentoutline;
-
-
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapterFactory;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.CMDocumentManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.ssemodelquery.ModelQueryAdapter;
-
-
-/**
- * An adapter factory to create JFaceNodeAdapters. Use this adapter factory
- * with a JFaceAdapterContentProvider to display DOM nodes in a tree.
- */
-public class JFaceNodeAdapterFactory extends AbstractAdapterFactory implements IJFaceNodeAdapterFactory {
-	protected CMDocumentManager cmDocumentManager;
-	/**
-	 * This keeps track of all the listeners.
-	 */
-	protected ArrayList fListeners = new ArrayList();
-
-	protected INodeAdapter singletonAdapter;
-
-	public JFaceNodeAdapterFactory() {
-		this(IJFaceNodeAdapter.class, true);
-	}
-
-	public JFaceNodeAdapterFactory(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	public synchronized void addListener(Object listener) {
-		fListeners.add(listener);
-	}
-
-	public IAdapterFactory copy() {
-
-		return new JFaceNodeAdapterFactory(this.adapterKey, this.shouldRegisterAdapter);
-	}
-
-	/**
-	 * Create a new JFace adapter for the DOM node passed in
-	 */
-	protected INodeAdapter createAdapter(INodeNotifier node) {
-		if (singletonAdapter == null) {
-			// create the JFaceNodeAdapter
-			singletonAdapter = new JFaceNodeAdapter(this);
-			initAdapter(singletonAdapter, node);
-		}
-		return singletonAdapter;
-	}
-
-	/**
-	 * returns "copy" so no one can modify our list. Its is a shallow copy.
-	 */
-	public synchronized Collection getListeners() {
-		return (Collection) fListeners.clone();
-	}
-
-	protected void initAdapter(INodeAdapter adapter, INodeNotifier node) {
-		// register for CMDocumentManager events
-		if (((JFaceNodeAdapter) adapter).getCMDocumentManagerListener() != null) {
-			ModelQueryAdapter mqadapter = (ModelQueryAdapter) node.getAdapterFor(ModelQueryAdapter.class);
-			if (mqadapter != null) {
-				ModelQuery mquery = mqadapter.getModelQuery();
-				if (mquery != null && mquery.getCMDocumentManager() != null) {
-					cmDocumentManager = mquery.getCMDocumentManager();
-					cmDocumentManager.addListener(((JFaceNodeAdapter) adapter).getCMDocumentManagerListener());
-				}
-			}
-		}
-	}
-
-	public void release() {
-		// deregister from CMDocumentManager events
-		if (cmDocumentManager != null && singletonAdapter != null && ((JFaceNodeAdapter) singletonAdapter).getCMDocumentManagerListener() != null) {
-			cmDocumentManager.removeListener(((JFaceNodeAdapter) singletonAdapter).getCMDocumentManagerListener());
-		}
-	}
-
-	public synchronized void removeListener(Object listener) {
-		fListeners.remove(listener);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeContentProvider.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeContentProvider.java
deleted file mode 100644
index ad4b0e3..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeContentProvider.java
+++ /dev/null
@@ -1,104 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.contentoutline;
-
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-import org.eclipse.wst.xml.core.document.XMLModel;
-
-
-/**
- * An ITreeContentProvider for a TreeViewers used to display DOM nodes. This
- * content provider takes an adapter factory to create JFace adapters for the
- * nodes in the tree.
- */
-public class JFaceNodeContentProvider implements ITreeContentProvider {
-	protected IAdapterFactory adapterFactory;
-
-	public JFaceNodeContentProvider(IAdapterFactory jfaceAdapterFactory) {
-		super();
-		this.adapterFactory = jfaceAdapterFactory;
-	}
-
-	/**
-	 * The visual part that is using this content provider is about to be
-	 * disposed. Deallocate all allocated SWT resources.
-	 */
-	public void dispose() {
-	}
-
-	/**
-	 * Returns the JFace adapter for the specified object.
-	 * 
-	 * @return com.ibm.sed.view.tree.DOMJFaceAdapter The JFace adapter
-	 * @param adaptable
-	 *            java.lang.Object The object to get the adapter for
-	 */
-	protected IJFaceNodeAdapter getAdapter(Object adaptable) {
-		if (adaptable instanceof INodeNotifier) {
-			INodeAdapter adapter = adapterFactory.adapt((INodeNotifier) adaptable);
-			if (adapter instanceof IJFaceNodeAdapter)
-				return (IJFaceNodeAdapter) adapter;
-		}
-		return null;
-	}
-
-	public Object[] getChildren(Object object) {
-		IJFaceNodeAdapter adapter = getAdapter(object);
-
-		if (adapter != null)
-			return adapter.getChildren(object);
-
-		return new Object[0];
-	}
-
-	public Object[] getElements(Object object) {
-		// The root is usually an instance of an XMLStructuredModel in
-		// which case we want to extract the document.
-		Object topNode = object;
-		if (object instanceof XMLModel)
-			topNode = ((XMLModel) object).getDocument();
-
-		IJFaceNodeAdapter adapter = getAdapter(topNode);
-
-		if (adapter != null)
-			return adapter.getElements(topNode);
-
-		return new Object[0];
-	}
-
-	public Object getParent(Object object) {
-		IJFaceNodeAdapter adapter = getAdapter(object);
-
-		if (adapter != null)
-			return adapter.getParent(object);
-
-		return null;
-	}
-
-	public boolean hasChildren(Object object) {
-		IJFaceNodeAdapter adapter = getAdapter(object);
-
-		if (adapter != null)
-			return adapter.hasChildren(object);
-
-		return false;
-	}
-
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeLabelProvider.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeLabelProvider.java
deleted file mode 100644
index 545567d..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/JFaceNodeLabelProvider.java
+++ /dev/null
@@ -1,136 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.contentoutline;
-
-
-
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.contentoutline.IJFaceNodeAdapter;
-
-
-/**
- * A class that uses a JFaceNodeAdapterFactory to provide adapters to provide
- * the labels and images for DOM nodes.
- */
-public class JFaceNodeLabelProvider implements ILabelProvider {
-
-	protected IAdapterFactory adapterFactory;
-
-	/**
-	 * JFaceNodeLabelProvider constructor comment.
-	 */
-	public JFaceNodeLabelProvider(IAdapterFactory adapterFactory) {
-		super();
-		this.adapterFactory = adapterFactory;
-	}
-
-	/**
-	 * Adds a listener to the label provider. A label provider should inform
-	 * its listener about state changes that enforces rendering of the visual
-	 * part that uses this label provider.
-	 */
-	public void addListener(ILabelProviderListener listener) {
-		// The label provider state never changes so we do not have
-		// to implement this method.
-	}
-
-	/**
-	 * The visual part that is using this label provider is about to be
-	 * disposed. Deallocate all allocated SWT resources.
-	 */
-	public void dispose() {
-		// Nothing to dispose
-	}
-
-	/**
-	 * Returns the JFace adapter for the specified object.
-	 * 
-	 * @return com.ibm.sed.view.tree.DOMJFaceAdapter The JFace adapter
-	 * @param adaptable
-	 *            java.lang.Object The object to get the adapter for
-	 */
-	protected IJFaceNodeAdapter getAdapter(Object adaptable) {
-		return (IJFaceNodeAdapter) adapterFactory.adapt((INodeNotifier) adaptable);
-	}
-
-	/**
-	 * Returns the image for the label of the given element, for use in the
-	 * given viewer.
-	 * 
-	 * @param element
-	 *            The element for which to provide the label image. Element
-	 *            can be <code>null</code> indicating no input object is set
-	 *            to the viewer.
-	 */
-	public Image getImage(Object element) {
-		return getAdapter(element).getLabelImage(element);
-	}
-
-	/**
-	 * Returns the text for the label of the given element, for use in the
-	 * given viewer.
-	 * 
-	 * @param element
-	 *            The element for which to provide the label text. Element can
-	 *            be <code>null</code> indicating no input object is set to
-	 *            the viewer.
-	 */
-	public java.lang.String getText(Object element) {
-		// This was returning null, on occasion ... probably should not be,
-		// but
-		// took the quick and easy way out for now. (dmw 3/8/01)
-		String result = getAdapter(element).getLabelText(element);
-		if (result == null)
-			result = "";//$NON-NLS-1$
-		return result;
-	}
-
-	/**
-	 * Checks whether this label provider is affected by the given domain
-	 * event.
-	 */
-	public boolean isAffected(Object dummy) {//DomainEvent event) {
-		//return event.isModifier(DomainEvent.NON_STRUCTURE_CHANGE);
-		return true;
-
-	}
-
-	/**
-	 * Returns whether the label would be affected by a change to the given
-	 * property of the given element. This can be used to optimize a
-	 * non-structural viewer update. If the property mentioned in the update
-	 * does not affect the label, then the viewer need not update the label.
-	 * 
-	 * @param element
-	 *            the element
-	 * @param property
-	 *            the property
-	 * @return <code>true</code> if the label would be affected, and
-	 *         <code>false</code> if it would be unaffected
-	 */
-	public boolean isLabelProperty(Object element, String property) {
-		return false;
-	}
-
-	/**
-	 * Removes a listener from the label provider.
-	 */
-	public void removeListener(ILabelProviderListener listener) {
-		// The label provider state never changes so we do not have
-		// to implement this method.
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/RefreshOutlineJob.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/RefreshOutlineJob.java
deleted file mode 100644
index 093b76e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/RefreshOutlineJob.java
+++ /dev/null
@@ -1,90 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.contentoutline;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.progress.UIJob;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.w3c.dom.Node;
-
-/**
- * @deprecated should be using org.eclipse.wst.sse.ui.views.contentoutline.RefreshOutlineJob
- */
-public class RefreshOutlineJob extends UIJob {
-
-	private INodeNotifier fNodeNotifier;
-	private StructuredViewer fStructuredViewer;
-
-	/**
-	 * @param jobDisplay
-	 * @param name
-	 */
-	public RefreshOutlineJob(Display jobDisplay, String name, StructuredViewer structuredViewer, INodeNotifier nodeNotifier) {
-		super(jobDisplay, name);
-		setPriority(Job.SHORT);
-
-		setStructuredViewer(structuredViewer);
-		setNodeNotifier(nodeNotifier);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public IStatus runInUIThread(IProgressMonitor monitor) {
-		IStatus result = Status.OK_STATUS;
-		try {
-			Control control = fStructuredViewer.getControl();
-			// we should have check before even scheduling this, but even if
-			// ok then, need to check again, right before executing.
-			if (control != null && !control.isDisposed()) {
-
-				if ((fNodeNotifier instanceof Node) && (((Node) fNodeNotifier).getParentNode() == null)) {
-					// refresh whole document
-					fStructuredViewer.refresh();
-				} else {
-					// refresh only the node that's changed
-					fStructuredViewer.refresh(fNodeNotifier);
-				}
-			}
-		} catch (Exception e) {
-			result = errorStatus(e);
-		} finally {
-			monitor.done();
-		}
-		return result;
-	}
-
-	/**
-	 * @param nodeNotifier
-	 */
-	private void setNodeNotifier(INodeNotifier nodeNotifier) {
-		fNodeNotifier = nodeNotifier;
-
-	}
-
-	/**
-	 * @param structuredViewer
-	 */
-	private void setStructuredViewer(StructuredViewer structuredViewer) {
-		fStructuredViewer = structuredViewer;
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/RefreshPropertySheetJob.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/RefreshPropertySheetJob.java
deleted file mode 100644
index e20a28b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/RefreshPropertySheetJob.java
+++ /dev/null
@@ -1,62 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.contentoutline;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.progress.UIJob;
-import org.eclipse.ui.views.properties.PropertySheetPage;
-
-
-public class RefreshPropertySheetJob extends UIJob {
-
-
-	private PropertySheetPage fPropertySheetPage;
-
-	/**
-	 * @param jobDisplay
-	 * @param name
-	 */
-	public RefreshPropertySheetJob(Display jobDisplay, String name, PropertySheetPage propertySheetPage) {
-		super(jobDisplay, name);
-		setPriority(Job.SHORT);
-		fPropertySheetPage = propertySheetPage;
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public IStatus runInUIThread(IProgressMonitor monitor) {
-		IStatus result = Status.OK_STATUS;
-		try {
-			Control control = fPropertySheetPage.getControl();
-			// we should have check before even scheduling this, but even if
-			// ok then, need to check again, right before executing.
-			if (control != null && !control.isDisposed()) {
-				fPropertySheetPage.refresh();
-			}
-		} catch (Exception e) {
-			result = errorStatus(e);
-		} finally {
-			monitor.done();
-		}
-		return result;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/XMLContentOutlineConfiguration.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/XMLContentOutlineConfiguration.java
deleted file mode 100644
index a24aa28..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/XMLContentOutlineConfiguration.java
+++ /dev/null
@@ -1,234 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.contentoutline;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.util.TransferDragSourceListener;
-import org.eclipse.jface.util.TransferDropTargetListener;
-import org.eclipse.jface.viewers.IContentProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.dnd.DragSourceEvent;
-import org.eclipse.swt.dnd.DropTargetEvent;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.wst.common.ui.dnd.ObjectTransfer;
-import org.eclipse.wst.common.ui.dnd.ViewerDragAdapter;
-import org.eclipse.wst.common.ui.dnd.ViewerDropAdapter;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.ui.internal.IReleasable;
-import org.eclipse.wst.sse.ui.view.events.NodeSelectionChangedEvent;
-import org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration;
-import org.eclipse.wst.xml.ui.dnd.XMLDragAndDropManager;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Node;
-
-public class XMLContentOutlineConfiguration extends StructuredContentOutlineConfiguration {
-
-	protected class ActionManagerMenuListener implements IMenuListener, IReleasable {
-		private XMLNodeActionManager fActionManager;
-		private TreeViewer fTreeViewer;
-
-		public ActionManagerMenuListener(TreeViewer viewer) {
-			fTreeViewer = viewer;
-			fActionManager = createNodeActionManager(fTreeViewer);
-		}
-
-		public void menuAboutToShow(IMenuManager manager) {
-			if (fActionManager != null)
-				fActionManager.fillContextMenu(manager, fTreeViewer.getSelection());
-		}
-
-		public void release() {
-			fTreeViewer = null;
-			fActionManager.setModel(null);
-		}
-	}
-
-	protected ActionManagerMenuListener fContextMenuFiller = null;
-
-	private TransferDragSourceListener[] fTransferDragSourceListeners;
-	private TransferDropTargetListener[] fTransferDropTargetListeners;
-
-	public XMLContentOutlineConfiguration() {
-		super();
-	}
-
-	protected XMLNodeActionManager createNodeActionManager(TreeViewer treeViewer) {
-		return new XMLNodeActionManager(getEditor().getModel(), treeViewer);
-	}
-
-	public IContentProvider getContentProvider(TreeViewer viewer) {
-		if (fContentProvider == null) {
-			if (getFactory() != null) {
-				fContentProvider = new JFaceNodeContentProvider((IAdapterFactory) getFactory());
-			} else {
-				fContentProvider = super.getContentProvider(viewer);
-			}
-		}
-		return fContentProvider;
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getLabelProvider(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public ILabelProvider getLabelProvider(TreeViewer viewer) {
-		if (fLabelProvider == null) {
-			if (getFactory() != null) {
-				fLabelProvider = new JFaceNodeLabelProvider((IAdapterFactory) getFactory());
-			} else {
-				fLabelProvider = super.getLabelProvider(viewer);
-			}
-		}
-		return fLabelProvider;
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getMenuListener(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public IMenuListener getMenuListener(TreeViewer viewer) {
-		if (fContextMenuFiller == null) {
-			fContextMenuFiller = new ActionManagerMenuListener(viewer);
-		}
-		return fContextMenuFiller;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getNodes(java.util.List)
-	 */
-	public List getNodes(List nodes) {
-		List filteredNodes = new ArrayList(super.getNodes(nodes));
-		for (int i = 0; i < filteredNodes.size(); i++) {
-			Object selectedNode = filteredNodes.get(i);
-			if (selectedNode instanceof Node) {
-				Node eachNode = (Node) selectedNode;
-				// replace attribute node in selection with its parent
-				if (eachNode.getNodeType() == Node.ATTRIBUTE_NODE)
-					filteredNodes.set(i, ((Attr) eachNode).getOwnerElement());
-				// replace TextNode in selection with its parent
-				else if (eachNode.getNodeType() == Node.TEXT_NODE)
-					filteredNodes.set(i, eachNode.getParentNode());
-			}
-		}
-		return filteredNodes;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getSelectedNodes(org.eclipse.wst.sse.ui.view.events.NodeSelectionChangedEvent)
-	 */
-	public List getSelectedNodes(NodeSelectionChangedEvent event) {
-		return getNodes(super.getSelectedNodes(event));
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getTransferDragSourceListeners(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public TransferDragSourceListener[] getTransferDragSourceListeners(TreeViewer treeViewer) {
-		if (fTransferDragSourceListeners == null) {
-			// emulate the XMLDragAndDropManager
-			final ViewerDragAdapter dragAdapter = new ViewerDragAdapter(treeViewer);
-			fTransferDragSourceListeners = new TransferDragSourceListener[]{new TransferDragSourceListener() {
-				public void dragFinished(DragSourceEvent event) {
-					dragAdapter.dragFinished(event);
-				}
-
-				public void dragSetData(DragSourceEvent event) {
-					dragAdapter.dragSetData(event);
-				}
-
-				public void dragStart(DragSourceEvent event) {
-					dragAdapter.dragStart(event);
-				}
-
-				public Transfer getTransfer() {
-					return ObjectTransfer.getInstance();
-				}
-			}};
-		}
-
-		return fTransferDragSourceListeners;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration#getTransferDropTargetListeners(org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public TransferDropTargetListener[] getTransferDropTargetListeners(TreeViewer treeViewer) {
-		if (fTransferDropTargetListeners == null) {
-			// emulate the XMLDragAnDropManager
-			final ViewerDropAdapter dropAdapter = new ViewerDropAdapter(treeViewer, new XMLDragAndDropManager());
-			fTransferDropTargetListeners = new TransferDropTargetListener[]{new TransferDropTargetListener() {
-				public void dragEnter(DropTargetEvent event) {
-					dropAdapter.dragEnter(event);
-				}
-
-				public void dragLeave(DropTargetEvent event) {
-					dropAdapter.dragLeave(event);
-				}
-
-				public void dragOperationChanged(DropTargetEvent event) {
-					dropAdapter.dragOperationChanged(event);
-				}
-
-				public void dragOver(DropTargetEvent event) {
-					dropAdapter.dragOver(event);
-				}
-
-				public void drop(DropTargetEvent event) {
-					dropAdapter.drop(event);
-				}
-
-				public void dropAccept(DropTargetEvent event) {
-					dropAdapter.dropAccept(event);
-				}
-
-				public Transfer getTransfer() {
-					return ObjectTransfer.getInstance();
-				}
-
-				public boolean isEnabled(DropTargetEvent event) {
-					return getTransfer().isSupportedType(event.currentDataType);
-				}
-			}};
-		}
-		return fTransferDropTargetListeners;
-	}
-
-	public void unconfigure(TreeViewer viewer) {
-		super.unconfigure(viewer);
-		fTransferDragSourceListeners = null;
-		fTransferDropTargetListeners = null;
-		if (fContextMenuFiller != null) {
-			fContextMenuFiller.release();
-			fContextMenuFiller = null;
-		}
-		// TODO: Add DnD support
-		// XMLDragAndDropManager.addDragAndDropSupport(fTreeViewer);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.views.contentoutline.StructuredContentOutlineConfiguration#getPreferenceStore()
-	 */
-	protected IPreferenceStore getPreferenceStore() {
-		return XMLUIPlugin.getDefault().getPreferenceStore();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/XMLNodeActionManager.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/XMLNodeActionManager.java
deleted file mode 100644
index 8a2920e..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/contentoutline/XMLNodeActionManager.java
+++ /dev/null
@@ -1,52 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.contentoutline;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.ui.actions.AbstractNodeActionManager;
-import org.w3c.dom.Node;
-
-
-public class XMLNodeActionManager extends AbstractNodeActionManager {
-	public XMLNodeActionManager(IStructuredModel model, Viewer viewer) {
-		super(model, ModelQueryUtil.getModelQuery(model), viewer);
-	}
-
-	public void reformat(Node newElement, boolean deep) {
-		try {
-			// tell the model that we are about to make a big model change
-			model.aboutToChangeModel();
-
-			// format selected node
-			IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();
-			formatProcessor.formatNode(newElement);
-		} finally {
-			// tell the model that we are done with the big model change
-			model.changedModel();
-		}
-	}
-
-	public void setModel(IStructuredModel newModel) {
-		model = newModel;
-		setModelQuery(ModelQueryUtil.getModelQuery(newModel));
-	}
-
-	protected void setModelQuery(ModelQuery newModelQuery) {
-		modelQuery = newModelQuery;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/ProcessingInstructionPropertySourceAdapter.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/ProcessingInstructionPropertySourceAdapter.java
deleted file mode 100644
index fb3f6ab..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/ProcessingInstructionPropertySourceAdapter.java
+++ /dev/null
@@ -1,158 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.properties;
-
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.text.ITextRegion;
-import org.eclipse.wst.sse.core.text.ITextRegionList;
-import org.eclipse.wst.sse.core.util.StringUtils;
-import org.eclipse.wst.sse.ui.util.Assert;
-import org.eclipse.wst.sse.ui.views.properties.CustomPropertyDescriptor;
-import org.eclipse.wst.sse.ui.views.properties.IPropertySourceExtension;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.parser.XMLRegionContext;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-
-
-/**
- * An IPropertySource implementation for a JFace viewer used to display
- * properties of DOM nodes. Requires an adapter factory to create JFace
- * adapters for the nodes in the tree.
- * 
- * @deprecated - to be removed in M4
- */
-public class ProcessingInstructionPropertySourceAdapter implements INodeAdapter, IPropertySource, IPropertySourceExtension {
-	protected final static String CATEGORY_ATTRIBUTES = "Instructions"; //$NON-NLS-1$
-
-	protected IPropertyDescriptor[] fDescriptors = null;
-	protected Node fNode = null;
-
-	public ProcessingInstructionPropertySourceAdapter(INodeNotifier target) {
-		super();
-		fNode = (Node) target;
-		Assert.isTrue(target instanceof XMLNode);
-		Assert.isTrue(fNode.getNodeType() == Node.PROCESSING_INSTRUCTION_NODE);
-	}
-
-	/**
-	 * Returns the current collection of property descriptors.
-	 * 
-	 * @return all valid descriptors.
-	 */
-	protected IPropertyDescriptor[] createPropertyDescriptors() {
-		boolean isXML = ((ProcessingInstruction) fNode).getTarget().equalsIgnoreCase("xml"); //$NON-NLS-1$
-		if (!isXML)
-			return new IPropertyDescriptor[0];
-		CustomPropertyDescriptor[] descriptors = new CustomPropertyDescriptor[2];
-		descriptors[0] = new CustomPropertyDescriptor("version", "version", null); //$NON-NLS-1$ //$NON-NLS-2$
-		descriptors[0].setCategory(CATEGORY_ATTRIBUTES);
-		descriptors[1] = new CustomPropertyDescriptor("encoding", "encoding", null); //$NON-NLS-1$ //$NON-NLS-2$
-		descriptors[1].setCategory(CATEGORY_ATTRIBUTES);
-		return descriptors;
-	}
-
-	/**
-	 * Returns a value for this Node that can be editted in a property sheet.
-	 * 
-	 * @return a value that can be editted
-	 */
-	public Object getEditableValue() {
-		return null;
-	}
-
-	/**
-	 * Returns the current collection of property descriptors.
-	 * 
-	 * @return all valid descriptors.
-	 */
-	public IPropertyDescriptor[] getPropertyDescriptors() {
-		if (fDescriptors == null) {
-			fDescriptors = createPropertyDescriptors();
-		}
-		return fDescriptors;
-	}
-
-	/**
-	 * Returns the current value for the named property.
-	 */
-	public Object getPropertyValue(Object nameObject) {
-		XMLNode node = (XMLNode) fNode;
-		String value = null;
-		String name = null;
-		IStructuredDocumentRegion docRegion = node.getFirstStructuredDocumentRegion();
-		if (docRegion == null)
-			return null;
-		ITextRegionList regions = docRegion.getRegions();
-		ITextRegion region = null;
-		int i = 2;
-		while (value == null && i < regions.size()) {
-			region = regions.get(i);
-			if (region.getType().equals(XMLRegionContext.XML_TAG_ATTRIBUTE_NAME))
-				name = docRegion.getText(region);
-			else if (region.getType().equals(XMLRegionContext.XML_TAG_ATTRIBUTE_VALUE) && name != null && name.equals(nameObject))
-				value = docRegion.getText(region);
-			i++;
-		}
-		if (value != null)
-			value = StringUtils.strip(value);
-		return value;
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type == IPropertySource.class;
-	}
-
-	/**
-	 * Returns whether the property value has changed from the default.
-	 * 
-	 * @return <code>true</code> if the value of the specified property has
-	 *         changed from its original default value; <code>false</code>
-	 *         otherwise.
-	 */
-	public boolean isPropertySet(Object propertyObject) {
-		return false;
-	}
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, java.lang.Object changedFeature, java.lang.Object oldValue, java.lang.Object newValue, int pos) {
-	}
-
-	/**
-	 * Remove the given attribute from the Node
-	 * 
-	 * @param propertyObject
-	 */
-	public void removeProperty(Object propertyObject) {
-	}
-
-	/**
-	 * Resets the specified property's value to its default value.
-	 */
-	public void resetPropertyValue(Object propertyObject) {
-	}
-
-	/**
-	 * Sets the named property to the given value.
-	 * 
-	 */
-	public void setPropertyValue(Object nameObject, Object value) {
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySheetConfiguration.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySheetConfiguration.java
deleted file mode 100644
index 7ce0ff0..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySheetConfiguration.java
+++ /dev/null
@@ -1,88 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.sse.ui.views.properties.StructuredPropertySheetConfiguration;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Node;
-
-
-public class XMLPropertySheetConfiguration extends StructuredPropertySheetConfiguration {
-
-	/**
-	 *  
-	 */
-	public XMLPropertySheetConfiguration() {
-		super();
-	}
-
-	/**
-	 * @see org.eclipse.wst.sse.ui.views.properties.PropertySheetConfiguration#getSelection(org.eclipse.ui.IWorkbenchPart,
-	 *      org.eclipse.jface.viewers.ISelection)
-	 */
-	public ISelection getSelection(IWorkbenchPart selectingPart, ISelection selection) {
-		// On Attr nodes, select the owner Element. On Text nodes, select the
-		// parent Element.
-		ISelection preferredSelection = selection;
-		if (selection instanceof ITextSelection) {
-			// on text selection, find the appropriate Node
-			ITextSelection textSel = (ITextSelection) selection;
-			if (getModel() != null) {
-				Object inode = getModel().getIndexedRegion(textSel.getOffset());
-				if (inode instanceof Node) {
-					Node node = (Node) inode;
-					// replace Attribute Node with its owner
-					if (node.getNodeType() == Node.ATTRIBUTE_NODE)
-						inode = ((Attr) node).getOwnerElement();
-					// replace Text Node with its parent
-					else if ((node.getNodeType() == Node.TEXT_NODE || (node.getNodeType() == Node.CDATA_SECTION_NODE)) && node.getParentNode() != null) {
-						inode = node.getParentNode();
-					}
-				}
-				if (inode != null) {
-					List inputList = new ArrayList(1);
-					inputList.add(inode);
-					preferredSelection = new StructuredSelection(inputList);
-				}
-			}
-		} else if (selection instanceof IStructuredSelection) {
-			IStructuredSelection structuredSel = (IStructuredSelection) selection;
-			if (getModel() != null) {
-				List inputList = new ArrayList(structuredSel.toList());
-				for (int i = 0; i < inputList.size(); i++) {
-					Object inode = inputList.get(i);
-					if (inode instanceof Node) {
-						Node node = (Node) inputList.get(i);
-						// replace Attribute Node with its owner
-						if (node.getNodeType() == Node.ATTRIBUTE_NODE)
-							inputList.set(i, ((Attr) node).getOwnerElement());
-						// replace Text Node with its parent
-						else if ((node.getNodeType() == Node.TEXT_NODE || (node.getNodeType() == Node.CDATA_SECTION_NODE)) && node.getParentNode() != null) {
-							inputList.set(i, node.getParentNode());
-						}
-					}
-				}
-				preferredSelection = new StructuredSelection(inputList);
-			}
-		}
-		return preferredSelection;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySourceAdapter.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySourceAdapter.java
deleted file mode 100644
index 38b4cac..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySourceAdapter.java
+++ /dev/null
@@ -1,709 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.properties;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Stack;
-
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySheetEntry;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.IPropertySource2;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.ui.views.properties.IPropertySourceExtension;
-import org.eclipse.wst.xml.core.document.DocumentTypeAdapter;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMAttributeDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMDataType;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMElementDeclaration;
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNamedNodeMap;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.eclipse.wst.xml.ui.internal.Logger;
-import org.eclipse.wst.xml.ui.internal.XMLUIPlugin;
-import org.eclipse.wst.xml.ui.internal.properties.EnumeratedStringPropertyDescriptor;
-import org.w3c.dom.Attr;
-import org.w3c.dom.DOMException;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-/**
- * An IPropertySource implementation for a JFace viewer used to display
- * properties of DOM nodes. Requires an adapter factory to create JFace
- * adapters for the nodes in the tree.
- */
-public class XMLPropertySourceAdapter implements INodeAdapter, IPropertySource, IPropertySourceExtension, IPropertySource2 {
-	protected final static String CATEGORY_ATTRIBUTES = XMLUIPlugin.getResourceString("%XMLPropertySourceAdapter.0"); //$NON-NLS-1$
-
-	private static final boolean fSetExpertFilter = false;
-
-	// derive categories from CMDataTypes; disabled until display strings can
-	// be planned
-	private final static boolean fShouldDeriveCategories = false;
-
-	private final static boolean fSortEnumeratedValues = true;
-	protected boolean fCaseSensitive = true;
-	protected IPropertyDescriptor[] fDescriptors = null;
-	protected Node fNode = null;
-
-	protected Stack fValuesBeingSet = new Stack();
-
-	public XMLPropertySourceAdapter(INodeNotifier target) {
-		super();
-		fNode = (Node) target;
-		if (fNode instanceof XMLNode) {
-			Document ownerDocument = fNode.getOwnerDocument();
-			if (ownerDocument == null) {
-				// if ownerDocument is null, then it must be the Document Node
-				ownerDocument = (Document) fNode;
-			}
-			DocumentTypeAdapter adapter = (DocumentTypeAdapter) ((INodeNotifier) ownerDocument).getAdapterFor(DocumentTypeAdapter.class);
-			if (adapter != null)
-				fCaseSensitive = adapter.getTagNameCase() == DocumentTypeAdapter.STRICT_CASE;
-		}
-	}
-
-	private String[] _getValidFixedStrings(CMAttributeDeclaration attrDecl, CMDataType helper) {
-		String attributeName = attrDecl.getAttrName();
-		List values = new ArrayList(1);
-		String impliedValue = helper.getImpliedValue();
-		if (impliedValue != null)
-			values.add(impliedValue);
-		boolean checkIfCurrentValueIsIncluded = (fNode.getAttributes() != null && fNode.getAttributes().getNamedItem(attributeName) != null && fNode.getAttributes().getNamedItem(attributeName).getNodeValue() != null);
-		if (checkIfCurrentValueIsIncluded) {
-			String currentValue = null;
-			currentValue = fNode.getAttributes().getNamedItem(attributeName).getNodeValue();
-			if (!currentValue.equals(impliedValue))
-				values.add(currentValue);
-		}
-		String[] validStrings = new String[values.size()];
-		validStrings = (String[]) values.toArray(validStrings);
-		return validStrings;
-	}
-
-	private String[] _getValidStrings(CMAttributeDeclaration attrDecl, CMDataType valuesHelper) {
-		String attributeName = attrDecl.getAttrName();
-		List values = new ArrayList(1);
-		boolean currentValueKnown = false;
-		boolean checkIfCurrentValueIsKnown = (fNode.getAttributes() != null && fNode.getAttributes().getNamedItem(attributeName) != null && fNode.getAttributes().getNamedItem(attributeName).getNodeValue() != null);
-		String currentValue = null;
-		if (checkIfCurrentValueIsKnown)
-			currentValue = fNode.getAttributes().getNamedItem(attributeName).getNodeValue();
-
-		if (valuesHelper.getImpliedValueKind() == CMDataType.IMPLIED_VALUE_FIXED && valuesHelper.getImpliedValue() != null) {
-			// FIXED value
-			currentValueKnown = currentValue != null && valuesHelper.getImpliedValue().equals(currentValue);
-			values.add(valuesHelper.getImpliedValue());
-		}
-		else {
-			// ENUMERATED values
-			String[] valueStrings = null;
-			// valueStrings = valuesHelper.getEnumeratedValues();
-			ModelQuery modelQuery = ModelQueryUtil.getModelQuery(fNode.getOwnerDocument());
-			if (modelQuery != null && fNode.getNodeType() == Node.ELEMENT_NODE) {
-				valueStrings = modelQuery.getPossibleDataTypeValues((Element) fNode, attrDecl);
-			}
-			else {
-				valueStrings = attrDecl.getAttrType().getEnumeratedValues();
-			}
-			if (valueStrings != null) {
-				for (int i = 0; i < valueStrings.length; i++) {
-					if (checkIfCurrentValueIsKnown && valueStrings[i].equals(currentValue))
-						currentValueKnown = true;
-					values.add(valueStrings[i]);
-				}
-			}
-		}
-		if (valuesHelper.getImpliedValueKind() != CMDataType.IMPLIED_VALUE_NONE && valuesHelper.getImpliedValue() != null) {
-			if (!values.contains(valuesHelper.getImpliedValue()))
-				values.add(valuesHelper.getImpliedValue());
-		}
-
-		if (checkIfCurrentValueIsKnown && !currentValueKnown && currentValue != null && currentValue.length() > 0)
-			values.add(currentValue);
-		String[] validStrings = new String[values.size()];
-		validStrings = (String[]) values.toArray(validStrings);
-		return validStrings;
-	}
-
-	protected void clearDescriptors() {
-		fDescriptors = null;
-	}
-
-	protected IPropertyDescriptor createDefaultPropertyDescriptor(String attributeName) {
-		return createDefaultPropertyDescriptor(attributeName, false);
-	}
-
-	protected IPropertyDescriptor createDefaultPropertyDescriptor(String attributeName, boolean hideOnFilter) {
-		// The descriptor class used here is also used in
-		// updatePropertyDescriptors()
-		TextPropertyDescriptor descriptor = new TextPropertyDescriptor(attributeName, attributeName);
-		descriptor.setCategory(getCategory(null));
-		descriptor.setDescription(attributeName);
-		if (hideOnFilter && fSetExpertFilter)
-			descriptor.setFilterFlags(new String[]{IPropertySheetEntry.FILTER_ID_EXPERT});
-		return descriptor;
-	}
-
-	/**
-	 * Creates a property descriptor for an attribute with ENUMERATED values -
-	 * if the value does not exist, an editable combo box is returned - if the
-	 * value exists but is not one in the enumerated list of value, a combo
-	 * box featuring the current and correct values is returned - if the value
-	 * exists and it is a valid value, a combo box featuring the correct
-	 * values with the current one visible is returned
-	 */
-	private IPropertyDescriptor createEnumeratedPropertyDescriptor(CMAttributeDeclaration attrDecl, CMDataType valuesHelper) {
-		// the displayName MUST be set
-		EnumeratedStringPropertyDescriptor descriptor = new EnumeratedStringPropertyDescriptor(attrDecl.getAttrName(), attrDecl.getAttrName(), _getValidStrings(attrDecl, valuesHelper));
-		descriptor.setCategory(getCategory(attrDecl));
-		descriptor.setDescription(attrDecl.getAttrName());
-		if (attrDecl.getUsage() != CMAttributeDeclaration.REQUIRED && fSetExpertFilter)
-			descriptor.setFilterFlags(new String[]{IPropertySheetEntry.FILTER_ID_EXPERT});
-		return descriptor;
-	}
-
-	/**
-	 * Creates a property descriptor for an attribute with a FIXED value - if
-	 * the value does not exist, an editable combo box is returned - if the
-	 * value exists but is not the fixed/default value, a combo box featuring
-	 * the current and correct value is returned - if the value exists and it
-	 * is the fixed/default value, no cell editor is provided "locking" the
-	 * value in
-	 */
-	private IPropertyDescriptor createFixedPropertyDescriptor(CMAttributeDeclaration attrDecl, CMDataType helper) {
-		// the displayName MUST be set
-		EnumeratedStringPropertyDescriptor descriptor = new EnumeratedStringPropertyDescriptor(attrDecl.getNodeName(), attrDecl.getNodeName(), _getValidFixedStrings(attrDecl, helper));
-		descriptor.setCategory(getCategory(attrDecl));
-		descriptor.setDescription(attrDecl.getAttrName());
-		return descriptor;
-	}
-
-	protected IPropertyDescriptor createPropertyDescriptor(CMAttributeDeclaration attrDecl) {
-		IPropertyDescriptor descriptor = null;
-		CMDataType attrType = attrDecl.getAttrType();
-
-		if (attrType != null) {
-			// handle declarations that provide FIXED/ENUMERATED values
-			if (attrType.getEnumeratedValues() != null && attrType.getEnumeratedValues().length > 0) {
-				descriptor = createEnumeratedPropertyDescriptor(attrDecl, attrType);
-			}
-			else if ((attrDecl.getUsage() == CMAttributeDeclaration.FIXED || attrType.getImpliedValueKind() == CMDataType.IMPLIED_VALUE_FIXED) && attrType.getImpliedValue() != null) {
-				descriptor = createFixedPropertyDescriptor(attrDecl, attrType);
-			}
-			else {
-				// plain text
-				descriptor = createTextPropertyDescriptor(attrDecl);
-			}
-		}
-		else {
-			// no extra information given
-			descriptor = createTextPropertyDescriptor(attrDecl);
-		}
-		return descriptor;
-	}
-
-	/**
-	 * Returns the current collection of property descriptors.
-	 * 
-	 * @return all valid descriptors.
-	 */
-	protected IPropertyDescriptor[] createPropertyDescriptors() {
-		CMNamedNodeMap attrMap = null;
-		CMElementDeclaration ed = getDeclaration();
-		if (ed != null) {
-			attrMap = ed.getAttributes();
-		}
-
-		List descriptorList = new ArrayList();
-		List names = new ArrayList();
-		IPropertyDescriptor descriptor;
-
-		CMAttributeDeclaration attrDecl = null;
-
-		// add descriptors for existing attributes
-		NamedNodeMap attributes = fNode.getAttributes();
-		if (attributes != null) {
-			for (int i = 0; i < attributes.getLength(); i++) {
-				Attr attr = (Attr) attributes.item(i);
-				// if metainfo is present for this attribute, use the
-				// CMAttributeDeclaration to derive a descriptor
-				if (attrMap != null) {
-					String attrName = attr.getName();
-					if (fCaseSensitive)
-						attrDecl = (CMAttributeDeclaration) attrMap.getNamedItem(attrName);
-					else {
-						for (int j = 0; j < attrMap.getLength(); j++) {
-							if (!fCaseSensitive && attrMap.item(j).getNodeName().equalsIgnoreCase(attrName)) {
-								attrDecl = (CMAttributeDeclaration) attrMap.item(j);
-								break;
-							}
-						}
-					}
-				}
-				// be consistent: if there's metainfo, use *that* as the
-				// descriptor ID
-				if (attrDecl != null) {
-					descriptor = createPropertyDescriptor(attrDecl);
-					if (descriptor != null)
-						names.add(attrDecl.getNodeName());
-				}
-				else {
-					descriptor = createDefaultPropertyDescriptor(attr.getName());
-					if (descriptor != null)
-						names.add(attr.getName());
-				}
-				if (descriptor != null)
-					descriptorList.add(descriptor);
-			}
-		}
-
-		// add descriptors from the metainfo that are not yet listed
-		if (attrMap != null) {
-			for (int i = 0; i < attrMap.getLength(); i++) {
-				attrDecl = (CMAttributeDeclaration) attrMap.item(i);
-				if (!names.contains(attrDecl.getAttrName())) {
-					IPropertyDescriptor holdDescriptor = createPropertyDescriptor(attrDecl);
-					if (holdDescriptor != null) {
-						descriptorList.add(holdDescriptor);
-					}
-				}
-			}
-		}
-
-		IPropertyDescriptor[] descriptors = new IPropertyDescriptor[descriptorList.size()];
-		for (int i = 0; i < descriptors.length; i++)
-			descriptors[i] = (IPropertyDescriptor) descriptorList.get(i);
-		return descriptors;
-	}
-
-	private IPropertyDescriptor createTextPropertyDescriptor(CMAttributeDeclaration attrDecl) {
-		TextPropertyDescriptor descriptor = new TextPropertyDescriptor(attrDecl.getAttrName(), attrDecl.getAttrName());
-		descriptor.setCategory(getCategory(attrDecl));
-		descriptor.setDescription(attrDecl.getAttrName());
-		if (attrDecl.getUsage() != CMAttributeDeclaration.REQUIRED && fSetExpertFilter)
-			descriptor.setFilterFlags(new String[]{IPropertySheetEntry.FILTER_ID_EXPERT});
-		return descriptor;
-	}
-
-	protected String getCategory(CMAttributeDeclaration attrDecl) {
-		if (attrDecl != null) {
-			if (attrDecl.supports("category")) { //$NON-NLS-1$
-				return (String) attrDecl.getProperty("category"); //$NON-NLS-1$
-			}
-			if (fShouldDeriveCategories && attrDecl.getAttrType() != null && attrDecl.getAttrType().getNodeName() != null && attrDecl.getAttrType().getNodeName().length() > 0) {
-				return attrDecl.getAttrType().getDataTypeName();
-			}
-		}
-		return CATEGORY_ATTRIBUTES;
-	}
-
-	protected CMElementDeclaration getDeclaration() {
-		if (fNode == null || fNode.getNodeType() != Node.ELEMENT_NODE)
-			return null;
-		ModelQuery modelQuery = ModelQueryUtil.getModelQuery(fNode.getOwnerDocument());
-		if (modelQuery != null) {
-			return modelQuery.getCMElementDeclaration((Element) fNode);
-		}
-		return null;
-	}
-
-	private Display getDisplay() {
-
-		return PlatformUI.getWorkbench().getDisplay();
-	}
-
-	/**
-	 * Returns a value for this Node that can be editted in a property sheet.
-	 * 
-	 * @return a value that can be editted
-	 */
-	public Object getEditableValue() {
-		return null;
-	}
-
-	/**
-	 * Returns the current collection of property descriptors.
-	 * 
-	 * @return all valid descriptors.
-	 */
-	public IPropertyDescriptor[] getPropertyDescriptors() {
-		if (fDescriptors == null || fDescriptors.length == 0) {
-			fDescriptors = createPropertyDescriptors();
-		}
-		else {
-			updatePropertyDescriptors();
-		}
-		return fDescriptors;
-	}
-
-	/**
-	 * Returns the current value for the named property.
-	 * 
-	 */
-	public Object getPropertyValue(Object nameObject) {
-		String name = nameObject.toString();
-		String returnedValue = null;
-		NamedNodeMap attrMap = fNode.getAttributes();
-		if (attrMap != null) {
-			Node attribute = attrMap.getNamedItem(name);
-			if (attribute != null) {
-				if (attribute instanceof XMLNode)
-					returnedValue = ((XMLNode) attribute).getValueSource();
-				else
-					returnedValue = attribute.getNodeValue();
-			}
-		}
-		if (returnedValue == null)
-			returnedValue = ""; //$NON-NLS-1$
-		return returnedValue;
-	}
-
-	protected String[] getValidValues(CMAttributeDeclaration attrDecl) {
-		if (attrDecl == null)
-			return new String[0];
-
-		String[] validValues = null;
-		CMDataType attrType = attrDecl.getAttrType();
-		if (attrType != null) {
-			validValues = _getValidStrings(attrDecl, attrType);
-			if (fSortEnumeratedValues)
-				Arrays.sort(validValues);
-		}
-		if (validValues == null)
-			validValues = new String[0];
-		return validValues;
-	}
-
-	/**
-	 * Allowing the INodeAdapter to compare itself against the type allows it
-	 * to return true in more than one case.
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type == IPropertySource.class;
-	}
-
-	protected boolean isFixedValue(CMAttributeDeclaration attrDecl) {
-		if (attrDecl == null)
-			return true;
-
-		CMDataType attrType = attrDecl.getAttrType();
-		if (attrType != null) {
-			return attrType.getImpliedValueKind() == CMDataType.IMPLIED_VALUE_FIXED || attrDecl.getUsage() == CMAttributeDeclaration.FIXED;
-		}
-		return false;
-	}
-
-	public boolean isPropertyResettable(Object id) {
-		boolean resettable = false;
-		String property = id.toString();
-		CMNamedNodeMap attrDecls = null;
-
-		CMElementDeclaration ed = getDeclaration();
-		if (ed != null) {
-			attrDecls = ed.getAttributes();
-		}
-
-		if (attrDecls != null) {
-			CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) attrDecls.getNamedItem(property);
-			if (attrDecl != null) {
-				if (attrDecl.getAttrType() != null) {
-					CMDataType helper = attrDecl.getAttrType();
-					if (helper.getImpliedValueKind() != CMDataType.IMPLIED_VALUE_NONE && helper.getImpliedValue() != null) {
-						resettable = true;
-					}
-				}
-			}
-		}
-		return resettable;
-	}
-
-	/**
-	 * Returns whether the property value has changed from the default.
-	 * 
-	 * @return <code>true</code> if the value of the specified property has
-	 *         changed from its original default value; <code>false</code>
-	 *         otherwise.
-	 */
-	public boolean isPropertySet(Object propertyObject) {
-		String property = propertyObject.toString();
-
-		NamedNodeMap attrMap = fNode.getAttributes();
-		if (attrMap != null)
-			return attrMap.getNamedItem(property) != null;
-		return false;
-	}
-
-	public void notifyChanged(INodeNotifier notifier, int eventType, java.lang.Object changedFeature, java.lang.Object oldValue, java.lang.Object newValue, int pos) {
-	}
-
-	/**
-	 * Remove the given attribute from the Node
-	 * 
-	 * @param propertyObject
-	 */
-	public void removeProperty(Object propertyObject) {
-		NamedNodeMap attrMap = fNode.getAttributes();
-		if (attrMap != null) {
-			Node attribute = attrMap.getNamedItem(propertyObject.toString());
-			if (attribute != null) {
-				try {
-					attrMap.removeNamedItem(propertyObject.toString());
-				}
-				catch (DOMException e) {
-					if (e.code != DOMException.INVALID_MODIFICATION_ERR) {
-						Logger.logException(e);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Resets the specified property's value to its default value.
-	 * 
-	 */
-	public void resetPropertyValue(Object propertyObject) {
-		String property = propertyObject.toString();
-		CMNamedNodeMap attrDecls = null;
-
-		CMElementDeclaration ed = getDeclaration();
-		if (ed != null) {
-			attrDecls = ed.getAttributes();
-		}
-
-		NamedNodeMap attrMap = fNode.getAttributes();
-		if (attrDecls != null) {
-			CMAttributeDeclaration attrDecl = (CMAttributeDeclaration) attrDecls.getNamedItem(property);
-			String defValue = null;
-			if (attrDecl != null) {
-				if (attrDecl.getAttrType() != null) {
-					CMDataType helper = attrDecl.getAttrType();
-					if (helper.getImpliedValueKind() != CMDataType.IMPLIED_VALUE_NONE && helper.getImpliedValue() != null)
-						defValue = helper.getImpliedValue();
-				}
-			}
-			if (defValue != null && defValue.length() > 0) {
-				((Attr) attrMap.getNamedItem(property)).setValue(defValue);
-			}
-			else {
-				attrMap.removeNamedItem(property);
-			}
-		}
-		else {
-			attrMap.removeNamedItem(property);
-		}
-	}
-
-	/**
-	 * Sets the named property to the given value.
-	 * 
-	 */
-	public void setPropertyValue(Object nameObject, Object value) {
-		// Avoid cycling - can happen if a closing cell editor causes a
-		// refresh
-		// on the PropertySheet page and the setInput again asks the editor to
-		// close; besides, why apply the same value twice?
-		if (!fValuesBeingSet.isEmpty() && fValuesBeingSet.peek() == nameObject)
-			return;
-		fValuesBeingSet.push(nameObject);
-		String name = nameObject.toString();
-		String valueString = null;
-		if (value != null)
-			valueString = value.toString();
-		NamedNodeMap attrMap = fNode.getAttributes();
-		try {
-			if (attrMap != null) {
-				Attr attr = (Attr) attrMap.getNamedItem(name);
-				if (attr != null) {
-					// EXISTING VALUE
-					// potential out of control loop if updating the value
-					// triggers a viewer update, forcing the
-					// active cell editor to save its value and causing the
-					// loop to continue
-					if (attr.getValue() == null || !attr.getValue().equals(valueString)) {
-						if (attr instanceof XMLNode)
-							((XMLNode) attr).setValueSource(valueString);
-						else
-							attr.setValue(valueString);
-					}
-				}
-				else {
-					// NEW(?) value
-					if (value != null) { // never create an empty attribute
-						Attr newAttr = fNode.getOwnerDocument().createAttribute(name);
-						if (newAttr instanceof XMLNode)
-							((XMLNode) newAttr).setValueSource(valueString);
-						else
-							newAttr.setValue(valueString);
-						attrMap.setNamedItem(newAttr);
-					}
-				}
-			}
-			else {
-				if (fNode instanceof Element) {
-					((Element) fNode).setAttribute(name, valueString);
-				}
-			}
-		}
-		catch (DOMException e) {
-			Display d = getDisplay();
-			if (d != null)
-				d.beep();
-		}
-		fValuesBeingSet.pop();
-	}
-
-	protected void updatePropertyDescriptors() {
-		if (fDescriptors == null || fDescriptors.length == 0)
-			// Nothing to update
-			return;
-
-		// List of all names encountered in the tag and defined by the element
-		List declaredNames = new ArrayList();
-		// New descriptor list that will become fDescriptors after all
-		// processing is done
-		List descriptors = new ArrayList();
-		// Names of the descriptors in the above List
-		List descriptorNames = new ArrayList();
-
-		// Update any descriptors derived from the metainfo
-		CMElementDeclaration ed = getDeclaration();
-		CMNamedNodeMap attrMap = null;
-		if (ed != null) {
-			attrMap = ed.getAttributes();
-		}
-		// Update exiting descriptors; not added to the final list here
-		if (attrMap != null) {
-			// Update existing descriptor types based on metainfo
-			CMAttributeDeclaration attrDecl = null;
-			for (int i = 0; i < attrMap.getLength(); i++) {
-				attrDecl = (CMAttributeDeclaration) attrMap.item(i);
-				String attrName = attrDecl.getAttrName();
-				if (!declaredNames.contains(attrName)) {
-					declaredNames.add(attrName);
-				}
-				for (int j = 0; j < fDescriptors.length; j++) {
-					boolean sameName = (fCaseSensitive && fDescriptors[j].getId().equals(attrDecl.getNodeName())) || (!fCaseSensitive && attrDecl.getNodeName().equals(fDescriptors[j].getId().toString()));
-					if (sameName) {
-						String[] validValues = getValidValues(attrDecl);
-						// Update the descriptor for this
-						// CMAttributeDeclaration (only enumerated values get
-						// updated for now)
-						if (fDescriptors[j] instanceof EnumeratedStringPropertyDescriptor) {
-							((EnumeratedStringPropertyDescriptor) fDescriptors[j]).updateValues(validValues);
-						}
-						// Replace with better descriptor
-						else if (validValues != null && validValues.length > 0) {
-							fDescriptors[j] = createPropertyDescriptor(attrDecl);
-						}
-					}
-				}
-			}
-		}
-		else {
-			// Update existing descriptors based on not having any metainfo
-			for (int j = 0; j < fDescriptors.length; j++) {
-				// Replace with basic descriptor
-				if (!(fDescriptors[j] instanceof TextPropertyDescriptor)) {
-					fDescriptors[j] = createDefaultPropertyDescriptor((String) fDescriptors[j].getId());
-				}
-			}
-		}
-
-		NamedNodeMap attributes = fNode.getAttributes();
-
-		// Remove descriptors for attributes that aren't present AND aren't
-		// known through metainfo,
-		// do this by only reusing existing descriptors for attributes that
-		// are present or declared
-		for (int i = 0; i < fDescriptors.length; i++) {
-			if (fDescriptors[i] != null) {
-				String descriptorName = fDescriptors[i].getId().toString();
-				if ((declaredNames.contains(descriptorName) || (attributes.getNamedItem(descriptorName) != null)) && !descriptorNames.contains(descriptorName)) {
-					descriptorNames.add(descriptorName);
-					descriptors.add(fDescriptors[i]);
-				}
-			}
-		}
-
-		// Add descriptors for declared attributes that don't already have one
-		if (attrMap != null) {
-			// Update existing descriptor types based on metainfo
-			CMAttributeDeclaration attrDecl = null;
-			for (int i = 0; i < attrMap.getLength(); i++) {
-				attrDecl = (CMAttributeDeclaration) attrMap.item(i);
-				String attrName = attrDecl.getAttrName();
-				if (fCaseSensitive) {
-					if (!descriptorNames.contains(attrName)) {
-						IPropertyDescriptor descriptor = createPropertyDescriptor(attrDecl);
-						if (descriptor != null) {
-							descriptorNames.add(attrName);
-							descriptors.add(descriptor);
-						}
-					}
-				}
-				else {
-					boolean exists = false;
-					for (int j = 0; j < descriptorNames.size(); j++)
-						exists = (descriptorNames.get(j).toString().equalsIgnoreCase(attrName)) || exists;
-					if (!exists) {
-						descriptorNames.add(attrName);
-						IPropertyDescriptor descriptor = createPropertyDescriptor(attrDecl);
-						if (descriptor != null) {
-							descriptorNames.add(attrName);
-							descriptors.add(descriptor);
-						}
-					}
-				}
-			}
-		}
-
-		// Add descriptors for existing attributes that don't already have one
-		if (attributes != null) {
-			for (int i = 0; i < attributes.getLength(); i++) {
-				Attr attr = (Attr) attributes.item(i);
-				String attrName = attr.getName();
-				if (fCaseSensitive) {
-					if (!descriptorNames.contains(attrName)) {
-						descriptorNames.add(attrName);
-						descriptors.add(createDefaultPropertyDescriptor(attrName));
-					}
-				}
-				else {
-					boolean exists = false;
-					for (int j = 0; j < descriptorNames.size(); j++)
-						exists = (descriptorNames.get(j).toString().equalsIgnoreCase(attrName)) || exists;
-					if (!exists) {
-						descriptorNames.add(attrName);
-						descriptors.add(createDefaultPropertyDescriptor(attrName));
-					}
-				}
-			}
-		}
-
-		// Update fDescriptors
-		IPropertyDescriptor[] newDescriptors = new IPropertyDescriptor[descriptors.size()];
-		for (int i = 0; i < newDescriptors.length; i++)
-			newDescriptors[i] = (IPropertyDescriptor) descriptors.get(i);
-		fDescriptors = newDescriptors;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySourceAdapterFactory.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySourceAdapterFactory.java
deleted file mode 100644
index b069903..0000000
--- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/views/properties/XMLPropertySourceAdapterFactory.java
+++ /dev/null
@@ -1,43 +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
- *     Jens Lukowski/Innoopract - initial renaming/restructuring
- *     
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.views.properties;
-
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.sse.core.AbstractAdapterFactory;
-import org.eclipse.wst.sse.core.IAdapterFactory;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.w3c.dom.Node;
-
-
-public class XMLPropertySourceAdapterFactory extends AbstractAdapterFactory {
-
-	public XMLPropertySourceAdapterFactory() {
-		super(IPropertySource.class, true);
-	}
-
-	public XMLPropertySourceAdapterFactory(Object adapterKey, boolean registerAdapters) {
-		super(adapterKey, registerAdapters);
-	}
-
-	public IAdapterFactory copy() {
-		return new XMLPropertySourceAdapterFactory(this.adapterKey, this.shouldRegisterAdapter);
-	}
-
-	protected INodeAdapter createAdapter(INodeNotifier target) {
-		// at the moment, only one implementation exists
-		if (target != null && target instanceof Node && ((Node) target).getNodeType() == Node.PROCESSING_INSTRUCTION_NODE)
-			return new ProcessingInstructionPropertySourceAdapter(target);
-		return new XMLPropertySourceAdapter(target);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates.properties
deleted file mode 100644
index d287e11..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates.properties
+++ /dev/null
@@ -1,16 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=comment
-Templates.comment.desc=xml comment
-Templates.xmldeclaration.name=xml declaration
-Templates.xmldeclaration.desc=xml declaration
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates.xml b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates.xml
deleted file mode 100644
index 8dca4b6..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<templates>
-<template name="%Templates.xmldeclaration.name" description="%Templates.xmldeclaration.desc" id="org.eclipse.wst.xml.ui.internal.templates.xmldeclaration" context="xml_new" enabled="true">&lt;?xml version="1.0" encoding="${encoding}"?&gt;</template>
-<template name="%Templates.comment.name" description="%Templates.comment.desc" id="org.eclipse.wst.xml.ui.internal.templates.comment" context="xml_tag" enabled="true">&lt;!-- ${cursor} --&gt;</template>
-</templates>
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_de.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_de.properties
deleted file mode 100644
index 9d5e20b..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_de.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=Kommentar
-Templates.comment.desc=XML-Kommentar
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_es.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_es.properties
deleted file mode 100644
index 3a5d4a3..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_es.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=comment
-Templates.comment.desc=Comentario xml
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_fr.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_fr.properties
deleted file mode 100644
index 15246b2..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_fr.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=commentaire
-Templates.comment.desc=commentaire xml
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_it.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_it.properties
deleted file mode 100644
index 7319beb..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_it.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=commento
-Templates.comment.desc=commento xml
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_ja.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_ja.properties
deleted file mode 100644
index 8c87bc8..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_ja.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=\u30b3\u30e1\u30f3\u30c8
-Templates.comment.desc=xml \u30b3\u30e1\u30f3\u30c8
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_ko.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_ko.properties
deleted file mode 100644
index 8c61a28..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_ko.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=\uc8fc\uc11d
-Templates.comment.desc=xml \uc8fc\uc11d
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_pt_BR.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_pt_BR.properties
deleted file mode 100644
index 3fe1125..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_pt_BR.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=coment\u00e1rio
-Templates.comment.desc=coment\u00e1rio xml
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_zh_CN.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_zh_CN.properties
deleted file mode 100644
index 9bff0b4..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_zh_CN.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=\u6ce8\u91ca
-Templates.comment.desc=xml \u6ce8\u91ca
diff --git a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_zh_TW.properties b/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_zh_TW.properties
deleted file mode 100644
index b051523..0000000
--- a/bundles/org.eclipse.wst.xml.ui/templates/xmldefault-templates_zh_TW.properties
+++ /dev/null
@@ -1,14 +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
-#     Jens Lukowski/Innoopract - initial renaming/restructuring
-#     
-###############################################################################
-Templates.comment.name=\u8a3b\u89e3
-Templates.comment.desc=xml \u8a3b\u89e3
diff --git a/bundles/org.eclipse.wst.xsd.ui/.classpath b/bundles/org.eclipse.wst.xsd.ui/.classpath
deleted file mode 100644
index 275b34c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/.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/bundles/org.eclipse.wst.xsd.ui/.cvsignore b/bundles/org.eclipse.wst.xsd.ui/.cvsignore
deleted file mode 100644
index 7ba51e6..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-xsdeditor.jar
-build.xml
-temp.folder
-org.eclipse.wst.xsd.ui_1.0.0.jar
diff --git a/bundles/org.eclipse.wst.xsd.ui/.project b/bundles/org.eclipse.wst.xsd.ui/.project
deleted file mode 100644
index aab3824..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.xsd.ui</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/bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index efba9c0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Fri Dec 10 00:29:03 EST 2004

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=error

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=error

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=error

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=warning

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=error

-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.5

-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error

-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=enabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 179abb3..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-#Fri Dec 10 00:50:26 EST 2004

-compilers.p.unused-element-or-attribute=0

-compilers.p.unresolved-ex-points=0

-compilers.p.unknown-element=0

-compilers.p.unknown-resource=0

-compilers.p.unknown-class=0

-compilers.p.unknown-attribute=0

-compilers.p.no-required-att=0

-eclipse.preferences.version=1

-compilers.p.unresolved-import=0

-compilers.p.illegal-att-value=0

-compilers.use-project=true

diff --git a/bundles/org.eclipse.wst.xsd.ui/build.properties b/bundles/org.eclipse.wst.xsd.ui/build.properties
deleted file mode 100644
index bb73afb..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/build.properties
+++ /dev/null
@@ -1,33 +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
-###############################################################################
-source.xsdeditor.jar = src/
-bin.includes = xsdeditor.jar,\
-               plugin.xml,\
-               icons/,\
-               image/,\
-               doc/,\
-               plugin.properties,\
-               samples/,\
-               w3c/
-src.includes = w3c/,\
-               samples/,\
-               plugin.xml,\
-               plugin.properties,\
-               image/,\
-               icons/,\
-               doc/,\
-               src/,\
-               test/,\
-               build.xml,\
-               build.properties,\
-               .project,\
-               .classpath,\
-               xsdeditor.jar
diff --git a/bundles/org.eclipse.wst.xsd.ui/component.xml b/bundles/org.eclipse.wst.xsd.ui/component.xml
deleted file mode 100644
index dfc01cc..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/component.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model"
-	name="org.eclipse.wst.xsd">
-	<component-depends unrestricted="true"></component-depends>
-	<plugin	id="org.eclipse.wst.xsd.contentmodel" fragment="false" />
-	<plugin	id="org.eclipse.wst.xsd.ui" fragment="false" />
-	<plugin	id="org.eclipse.wst.xsd.validation" fragment="false" />
-</component>
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/XSDFile.gif b/bundles/org.eclipse.wst.xsd.ui/icons/XSDFile.gif
deleted file mode 100644
index 3900f1b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/XSDFile.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/annotationsheader.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/annotationsheader.gif
deleted file mode 100644
index 9bfb682..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/annotationsheader.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/attributegroupsheader.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/attributegroupsheader.gif
deleted file mode 100644
index e618a25..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/attributegroupsheader.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/attributesheader.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/attributesheader.gif
deleted file mode 100644
index 9254879..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/attributesheader.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/directivesheader.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/directivesheader.gif
deleted file mode 100644
index 6000cb8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/directivesheader.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/elementsheader.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/elementsheader.gif
deleted file mode 100644
index 26f7206..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/elementsheader.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/groupsheader.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/groupsheader.gif
deleted file mode 100644
index c9745f0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/groupsheader.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/notationsheader.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/notationsheader.gif
deleted file mode 100644
index e05c645..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/notationsheader.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_list_obj.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_list_obj.gif
deleted file mode 100644
index 6e2cd93..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_list_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_restrict_obj.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_restrict_obj.gif
deleted file mode 100644
index 1ebd546..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_restrict_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_union_obj.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_union_obj.gif
deleted file mode 100644
index 0b01f8c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/smpl_union_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/typesheader.gif b/bundles/org.eclipse.wst.xsd.ui/icons/obj16/typesheader.gif
deleted file mode 100644
index 3267542..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/obj16/typesheader.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/ovr16/attributeoverlay.gif b/bundles/org.eclipse.wst.xsd.ui/icons/ovr16/attributeoverlay.gif
deleted file mode 100644
index 1931f92..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/ovr16/attributeoverlay.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/icons/ovr16/textoverlay.gif b/bundles/org.eclipse.wst.xsd.ui/icons/ovr16/textoverlay.gif
deleted file mode 100644
index d455c2b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/icons/ovr16/textoverlay.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/plugin.properties b/bundles/org.eclipse.wst.xsd.ui/plugin.properties
deleted file mode 100644
index f819bc8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/plugin.properties
+++ /dev/null
@@ -1,1065 +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
-###############################################################################
-! Properties file for component: XMSCH - XML Tools -  XML Schema Editor
-! Packaged for translation in:  xml.zip
-
-!
-! Plugin
-!
-_UI_PLUGIN_NAME             = XML Schema Editor
-_UI_EDITOR_NAME             = XML Schema Editor
-
-_UI_ACTION_EXT_GENERATE      = &Generate
-_UI_ACTION_EXT_GENERATE_DDL  = &DDL...
-_UI_ACTION_EXT_GENERATE_DTD  = D&TD...
-_UI_ACTION_EXT_GENERATE_JAVA = &Java Beans...
-
-_UI_ACTION_EXT_GENERATE_XSD = &Generate XML Schema
-_UI_WIZARD_NAME_NEW_XSD     = XML Schema
-
-_UI_XML_TOOLS_PREFERENCE_PAGE  = XML
-_UI_XML_SCHEMA_PREFERENCE      = XML Schema Files
-
-_UI_WIZARD_NEW_XSD             = XML Schema
-_UI_CREATE_A_NEW_SCHEMA        = Create a new XML schema file
-
-! New property tabs
-_UI_LABEL_GENERAL       = General
-_UI_LABEL_OTHER         = Other
-_UI_LABEL_ATTRIBUTES    = Attributes
-_UI_LABEL_DOCUMENTATION = Documentation
-_UI_LABEL_FACETS        = Facets
-_UI_LABEL_ENUMERATIONS  = Enumerations
-_UI_LABEL_NAMESPACE     = Namespace
-
-_UI_LABEL_READ_ONLY     = read-only
-_UI_LABEL_KIND          = Kind:
-_UI_LABEL_VARIETY       = Variety:
-
-!
-! Schema File Window
-!
-_UI_LABEL_FILE_NAME              = File name:
-_UI_LABEL_VERSION                = Version:
-_UI_TOOLTIP_VERSION              = Convenient attribute to store version number
-_UI_LABEL_LANGUAGE               = Language:
-_UI_TOOLTIP_LANGUAGE             = Represents natural language identifiers
-_UI_GROUP_NAMESPACE              = Namespace
-_UI_LABEL_SCHEMA_PREFIX          = Prefix:
-_UI_TOOLTIP_SCHEMA_PREFIX        = The prefix associated with the current namespace.
-_UI_LABEL_TARGET_NAME_SPACE      = Target namespace:
-_UI_TOOLTIP_TARGET_NAME_SPACE    = The namespace for this schema.
-_UI_BUTTON_APPLY                 = Apply
-_UI_LABEL_ATTRIBUTE_FORM_DEFAULT = Attribute form default:
-_UI_TOOLTIP_ATTRIBUTE_FORM       = Indicates if all attributes in a schema must be qualified or not in the instance document
-_UI_LABEL_ELEMENT_FORM_DEFAULT   = Element form default:
-_UI_TOOLTIP_ELEMENT_FORM_DEFAULT = Indicates if all elements in a schema must be qualified or not in the instance document
-_UI_LABEL_BLOCK_DEFAULT          = Block default:
-_UI_TOOLTIP_BLOCK_DEFAULT        = Control derivations for every type and element in the schema
-_UI_LABEL_FINAL_DEFAULT          = Final default:
-_UI_TOOLTIP_FINAL_DEFAULT        = Control derivations for every type and element in the schema
-_UI_ACTION_DELETE_INCLUDE        = Delete
-_UI_ACTION_DELETE_NODES          = Delete Nodes
-! Note to translators: The following is the acronym for Uniform Resource Indicator
-_UI_LABEL_URI                    = URI:
-
-
-_UI_LABEL_ADD              = Add...
-_UI_LABEL_EDIT             = Edit...
-_UI_LABEL_PATTERNS         = Patterns
-_ERROR_FILE_ALREADY_EXISTS = The file name already exists: {0}
-
-!
-! Any Section
-!
-! Note to translators - translate only the word and
-_UI_LABEL_NAMESPACE_AND_PROCESS_CONTENTS = namespace and processContents
-
-!
-! minOccurs and maxOccurs section
-!
-! Note to translators - translate only the word and
-_UI_LABEL_MINOCCURS_AND_MAXOCCURS = minOccurs and maxOccurs
-
-!
-! Value Information Section
-!
-_UI_LABEL_VALUE_INFORMATION   = Value Information
-
-!
-! Notation window
-!
-_UI_NOTATION_NAME                = Name:
-_UI_NOTATION_PUBLIC              = Public:
-_UI_NOTATION_SYSTEM              = System:
-_UI_TOOLTIP_PUBLIC               = An optional public identifier
-_UI_TOOLTIP_SYSTEM               = An optional URI reference
-
-!
-! Complex Type Window
-!
-_UI_NAME                         = Name:
-_UI_ABSTRACT                     = Abstract:
-_UI_MIXED                        = Mixed:
-_UI_BLOCK                        = Block:
-_UI_FINAL                        = Final:
-
-_UI_CT_TOOLTIP_MIXED             = Indicates if type may contain mixed content
-_UI_CT_TOOLTIP_ABSTRACT          = When a complex type is declared abstract, it cannot be used in an instance document
-_UI_CT_TOOLTIP_FINAL             = You can use this to prevent further derivations
-_UI_CT_TOOLTIP_BLOCK             = You can use this to block any derivations
-
-!
-! SimpleContent and ComplexContent Window
-! 
-_UI_LABEL_DERIVED_BY            = Derived by:
-_UI_TOOLTIP_DERIVED_BY          = Derive by extension to inherit from a base type content model and add to it. Derive by restriction to restrict the content model of an existing type.
-
-!
-! Combo box items - no need to translate
-!
-_UI_COMBO_RESTRICTION           = restriction
-_UI_COMBO_EXTENSION             = extension
-
-!
-! Element & Element Ref Window
-!
-_UI_ELEMENT_NAME                 = Name:
-_UI_CHECKBOX_NILLABLE            = Nillable
-_UI_CHECKBOX_ABSTRACT            = Abstract
-_UI_SUBSTITUTION                 = Substitution group:
-_UI_MINIMUM                      = Minimum:
-_UI_MAXIMUM                      = Maximum:
-_UI_REFERENCE_NAME               = Reference name:
-
-_UI_TOOLTIP_ELEMENT_MINIMUM      = A non-negative integer that specifies the minimum number of times an element can occur.
-_UI_TOOLTIP_ELEMENT_MAXIMUM      = A non-negative integer or unbounded if there is no upper limit on the number of times the element can occur.
-_UI_TOOLTIP_ELEMENT_ABSTRACT     = When an element is declared abstract, a member of its equivalent class must appear in the instance document,
-_UI_TOOLTIP_ELEMENT_NIL          = If selected, an attribute can be included in the instance document to indicate that the element has a nil value.
-_UI_TOOLTIP_ELEMENT_SUBSTITUTION = Select the element that can be substituted by this element
-_UI_TOOLTIP_ELEMENT_FORM         = Indicates if the element is qualifed in the instance document
-_UI_TOOLTIP_ELEMENT_VALUE        = Provides a default or fixed value for the element.
-
-
-!
-! Attribute Window
-!    _UI_COMBO_BOX strings are used in code generation. 
-!    Probably don't need to be translated
-!
-_UI_COMBO_BOX_REQUIRED           = required
-_UI_COMBO_BOX_OPTIONAL           = optional
-_UI_COMBO_BOX_PROHIBITED         = prohibited
-
-_UI_FIXED                        = Fixed
-_UI_DEFAULT                      = Default
-_UI_ATTRIBUTE_NAME               = Attribute name:
-_UI_USAGE                        = Usage:
-_UI_FORM                         = Form qualification:
-_UI_VALUE                        = Value
-
-_UI_LABEL_OTHER_ATTRIBUTES       = Other Attributes
-
-_UI_TOOLTIP_ATTRIBUTE_USE        = Indicates if the attribute is required, optional, or prohibited
-_UI_TOOLTIP_ATTRIBUTE_FORM       = Indicates if the attribute is qualifed or not in the instance document
-_UI_TOOLTIP_ATTRIBUTE_VALUE      = Provides default or fixed value for the attribute. Default value only valid if Usage value is set to optional.
-
-_UI_PROCESS_CONTENTS             = Process contents:
-
-!
-! Annotation - Doc & AppInfo Window
-!
-_UI_COMMENT                      = Comment
-_UI_TOOLTIP_COMMENT              = Information useful to the user or application
-_UI_SOURCE                       = Source:
-_UI_TOOLTIP_SOURCE               = An optional URI reference to supplement the local information
-_UI_LANGUAGE                     = Language:
-_UI_TOOLTIP_LANGUAGE_ANNOTATION  = Indicate the language in which the annotation is expressed
-
-!
-! Group
-! 
-_UI_CONTENT_MODEL               = Content model
-_UI_SEQUENCE                    = Sequence
-_UI_CHOICE                      = Choice
-_UI_ALL                         = All
-
-
-!
-! Simple Type Related Facets  - appear as entries in a table - restriction on simple type
-!
-_UI_GROUP_FACETS                = Facets
-_UI_LENGTH                      = Length
-_UI_MINIMUM_LENGTH              = Minimum Length
-_UI_MAXIMUM_LENGTH              = Maximum Length
-_UI_MINIMUM_INCLUSIVE           = Minimum Inclusive
-_UI_MAXIMUM_INCLUSIVE           = Maximum Inclusive
-_UI_MINIMUM_EXCLUSIVE           = Minimum Exclusive
-_UI_MAXIMUM_EXCLUSIVE           = Maximum Exclusive
-_UI_TOTAL_DIGITS                = Total Digits
-_UI_FRACTION_DIGITS             = Fraction Digits
-_UI_WHITE_SPACE                 = White Space
-_UI_FACET_NAME                  = Name
-_UI_FACET_VALUE                 = Value
-_UI_FACET_FIXED                 = Fixed
-
-_UI_TOOLTIP_LENGTH              = The number of units of length. Must be a non-negative integer.
-_UI_TOOLTIP_MIN_LEN             = The minimum number of units of length. Must be a non-negative integer.
-_UI_TOOLTIP_MAX_LEN             = The maximum number of units of length. Must be a non-negative integer.
-_UI_TOOLTIP_MAX_INCLUSIVE       = The upper bound of the value space. The value is itself included.
-_UI_TOOLTIP_MAX_EXCLUSIVE       = The upper bound of the value space. The value is itself excluded.
-_UI_TOOLTIP_MIN_INCLUSIVE       = The lower bound of the value space. The value is itself included.
-_UI_TOOLTIP_MIN_EXCLUSIVE       = The lower bound of the value space. The value is itself excluded.
-_UI_TOOLTIP_TOTAL_DIGITS        = The maximum number of decimal digits. Must be a positive integer.
-_UI_TOOLTIP_FRACTION_DIGITS     = The maximum number of decimal digits in the fractional part. Must be a non-negative integer.
-_UI_TOOLTIP_WHITE_SPACE         = Indicates if white space should be preserved, replaced or collapsed. 
-
-_UI_TOOLTIP_PATTERN             = Constrains the value to match a specific pattern. The pattern must be a regular expression. 
-_UI_TOOLTIP_ENUM                = Constrains the value to a specified set of values. 
-
-!
-! Simple/Complex Type Selection 
-!
-_UI_LABEL_TYPE_INFORMATION          = Type information
-_UI_LABEL_BASE_TYPE                 = Base type
-_UI_LABEL_BASE_TYPE_WITH_COLON      = Base type:
-_UI_LABEL_SET_BASE_TYPE             = Set Base Type
-_UI_ACTION_SET_BASE_TYPE            = Set Base Type...
-_UI_RADIO_NONE                      = None
-_UI_RADIO_BUILT_IN_SIMPLE_TYPE      = Built-in simple type
-_UI_RADIO_USER_DEFINED_SIMPLE_TYPE  = User-defined simple type
-_UI_RADIO_USER_DEFINED_COMPLEX_TYPE = User-defined complex type
-_UI_NO_TYPE                         = **none**
-
-!
-! Combo-box value 
-! NOTE TO TRANSLATOR: Do not translate following line
-_UI_DEFAULT_ANONYMOUS               = **anonymous**
-
-!
-! Unique, Key and KeyRef window
-!
-_UI_REFERENCE_KEY                   = Reference key
-_UI_SELECTOR                        = Selector
-_UI_FIELDS                          = Fields
-
-_UI_TOOLTIP_SELECTOR_TEXT           = Specifies an XPath expression relative to instances of the current element
-_UI_TOOLTIP_FIELD_TEXT              = Specifies an XPath expression relative to each element selected by the selector
-
-_UI_ADD_BUTTON                      = Add>>
-_UI_REMOVE_BUTTON                   = <<Remove
-
-!
-! Include & Imports
-!
-_UI_LABEL_PREFIX                = Prefix:
-_UI_LABEL_NAMESPACE             = Namespace:
-
-_UI_SCHEMA_INCLUDE_DESC         = Select a schema file so that the definitions in the schema file will be available in the current schema. The target namespace of the included schema must be the same as the target namespace of the current schema.
-_UI_LABEL_SCHEMA_IMPORT_DESC    = Select a schema file from a different namespace so that its definitions can be referenced by the current schema. You must associate a prefix with the new namespace for use in the current schema.
-
-_UI_LABEL_SCHEMA_LOCATION        = Schema location:
-_UI_BUTTON_SELECT                = Select
-_UI_FILEDIALOG_SELECT_XML_SCHEMA = Select XML schema file
-_UI_FILEDIALOG_SELECT_XML_DESC   = Select an XML schema file from the Workbench projects
-_UI_FILEDIALOG_SELECT_XML_URL    = Select an XML schema file from HTTP
-
-_UI_LABEL_LOADING_XML_SCHEMA     = Loading XML Schema
-_UI_LABEL_FINISH_LOADING         = Finish Loading
-_UI_LABEL_NO_LOCATION_SPECIFIED  = No Location Specified
-
-!
-! XSD Editor
-!
-_UI_TAB_SOURCE                  = Source
-_UI_TAB_DESIGN                  = Design
-!  Note to translators: Graph is the graphic view of the XML schema
-_UI_TAB_GRAPH                   = Graph
-_UI_MENU_UNDO                   = &Undo @Ctrl+Z
-_UI_MENU_REDO                   = &Redo @Ctrl+Y
-
-!
-! Task List Related Message
-!
-_UI_REF_FILE_ERROR_DESCRIPTION      = The errors below were detected when validating the file "{0}" via the file "{1}".  In most cases these errors can be detected by validating "{2}" directly.  However it is possible that errors will only occur when {2} is validated in the context of {3}.
-_UI_REF_FILE_ERROR_PUSH_HELP        = Push the help button below to read more.
-_UI_REF_FILE_ERROR_MESSAGE          = Referenced file contains errors ({0}).  For more information, right click on the message and select "Show Details..."
-_UI_REF_FILE_SHOW_DETAILS           = Show Details...
-
-
-!
-! XSDEditor Menu bar contributor
-!
-_UI_MENU_GENERATE_JAVA              = Generate &Java Beans...
-_UI_MENU_GENERATE_DTD               = Generate &DTD...
-_UI_MENU_GENERATE_SAMPLE_XML        = Generate XM&L...
-_UI_MENU_XSD_EDITOR                 = &XSD
-_UI_MENU_VALIDATE_XML               = &Validate XML Schema
-_UI_MENU_VALIDATE_XML_TOOLTIP       = Validate the current state of the XML Schema
-_UI_MENU_GENERATE_JAVA_TOOLTIP      = Generate Java beans for the XML Schema
-_UI_MENU_GENERATE_DTD_TOOLTIP       = Generate a DTD from the XML Schema
-_UI_MENU_GENERATE_SAMPLE_XML_TOOLTIP = Generate an XML from the XML Schema
-_UI_MENU_RELOAD_DEPENDENCIES_TOOLTIP = Reload Dependencies
-_UI_MENU_RELOAD_DEPENDENCIES = &Reload Dependencies
-
-!
-! Preference Page
-!
-_UI_TEXT_INDENT_LABEL                 = Indentation
-_UI_TEXT_INDENT_SPACES_LABEL          = &Number of spaces: 
-_UI_TEXT_XSD_NAMESPACE_PREFIX         = XML schema language
-_UI_TEXT_XSD_DEFAULT_PREFIX           = XML schema language constructs &prefix:
-_UI_QUALIFY_XSD                       = &Qualify XML schema language constructs
-_UI_SEPARATE_DESIGN_AND_SOURCE_VIEW   = Separate Source, Design and Graph view
-_UI_COMBINED_DESIGN_AND_SOURCE_VIEW   = Combined Source or Graph view with Design view 
-_UI_LABEL_EDITOR_LAYOUT               = Editor Layout
-_UI_PREF_DESIGN_VIEW_LAYOUT           = Design View Location
-_UI_PREF_DESIGN_BOTTOM                = Below
-_UI_PREF_DESIGN_RIGHT                 = Right
-_UI_TEXT_XSD_DEFAULT_TARGET_NAMESPACE = Default Target Namespace:
-
-!
-! Content Outline View action
-! NOTE TO TRANSLATOR: Do not translate the word(s) following "Add" on each line in
-!   this section i.e. Annotation, Documentation, AppInfo  These words are XML Schema keywords.
-_UI_ACTION_DELETE                  = D&elete
-_UI_ACTION_ADD_ANNOTATION          = Add &Annotation
-_UI_ACTION_ADD_DOC                 = Add &Documentation
-_UI_ACTION_ADD_APP_INFO            = Add A&ppInfo
-_UI_ACTION_ADD_GLOBAL_ELEMENT      = Add Glob&al Element
-_UI_ACTION_ADD_KEY                 = Add &Key
-_UI_ACTION_ADD_KEY_REF             = Add Key Re&f
-_UI_ACTION_ADD_UNIQUE              = Add Uni&que
-_UI_ACTION_ADD_GROUP               = Add G&roup
-_UI_ADD_GROUP_REF                  = Add Gr&oup Ref
-_UI_ACTION_ADD_CONTENT_MODEL       = Add Content &Model
-_UI_ACTION_ADD_ELEMENT             = Add &Element
-_UI_ACTION_ADD_ELEMENT_REF         = Add E&lement Ref
-_UI_ACTION_ADD_SIMPLE_TYPE         = Add &Simple Type
-_UI_ACTION_ADD_PATTERN             = Add &Pattern
-_UI_ACTION_ADD_ENUM                = Add En&umeration
-_UI_ACTION_ADD_ENUMS               = Add Enu&merations...
-_UI_ACTION_ADD_COMPLEX_TYPE        = Add Complex &Type
-_UI_ACTION_ADD_COMPLEX_CONTENT     = Add Comple&x Content
-_UI_ACTION_ADD_SIMPLE_CONTENT      = Add Simple &Content
-_UI_ACTION_ADD_ATTRIBUTE           = Add Attri&bute
-_UI_ACTION_ADD_ATTRIBUTE_GROUP     = Add Attr&ibute Group
-_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF = Add A&ttribute Group Ref
-_UI_ACTION_ADD_INCLUDE             = Add In&clude
-_UI_ACTION_ADD_IMPORT              = Add &Import
-_UI_ACTION_ADD_REDEFINE            = Add Re&define
-_UI_ACTION_ADD_NOTATION            = Add &Notation
-_UI_ACTION_ADD_ANY_ELEMENT         = Add An&y
-_UI_ACTION_ADD_ANY_ATTRIBUTE       = Add &Any Attribute
-_UI_ACTION_ADD_GLOBAL_ATTRIBUTE    = Add &Global Attribute
-_UI_ACTION_ADD_ATTRIBUTE_REFERENCE = Add Attrib&ute Ref
-_UI_ACTION_ADD_RESTRICTION         = Add Re&striction
-_UI_ACTION_ADD_UNION               = Add U&nion
-_UI_ACTION_ADD_LIST                = Add &List
-_UI_ACTION_DELETE_GROUP_SCOPE      = D&elete
-_UI_ACTION_ADD_CHOICE              = Add &Choice
-_UI_ACTION_ADD_SEQUENCE            = Add Se&quence
-_UI_ACTION_ADD_ALL                 = Add &All
-_UI_ACTION_ADD_EXTENSION           = Add E&xtension
-_UI_ACTION_ADD_SELECTOR            = Add &Selector
-_UI_ACTION_ADD_FIELD               = Add &Field
-! NOTE TO TRANSLATOR: Translate Add and Node
-_UI_ACTION_ADD_SCHEMA_NODE         = Add &Schema Node
-! NOTE TO TRANSLATOR: TRANSLATE Add and Local
-_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE   = Add Local &Simple Type
-_UI_ACTION_ADD_LOCAL_COMPLEX_TYPE  = Add Local &Complex Type
-_UI_ACTION_BACK_TO_SCHEMA_VIEW     = Back To Schema
-_UI_HOVER_BACK_TO_SCHEMA_VIEW     = Back to schema
-
-_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL = Make Anonymous Type Global
-_UI_ACTION_OPEN_SCHEMA                = Open Schema
-
-_UI_ACTION_INSERT_BEFORE           = Insert Before
-_UI_ACTION_INSERT_AFTER            = Insert After
-
-_UI_OUTLINE_SORT                   = Sort alphabetically
-_UI_OUTLINE_DO_NOT_SORT            = Do not sort alphabetically
-
-_UI_OUTLINE_SHOW_COMPLEX_TYPE      = Show Complex Types Only
-_UI_OUTLINE_SHOW_SIMPLE_TYPE       = Show Simple Types Only
-_UI_OUTLINE_SHOW_ATTRIBUTE_GROUP   = Show Attribute Groups Only
-_UI_OUTLINE_SHOW_GROUP             = Show Groups Only
-_UI_OUTLINE_SHOW_GLOBAL_ELEMENT    = Show Global Elements Only
-_UI_OUTLINE_SHOW_REFERENCES        = Show Reference Content
-_UI_OUTLINE_SHOW_INHERITED         = Show Inherited Content
-
-!
-! New XML Schema Wizard
-!
-_UI_WIZARD_CREATE_XSD_MODEL_TITLE    = Create XML Schema
-
-! NOTE TO TRANSLATOR: Do not translate following line
-_UI_CREATEXSD                        = createXSD
-_UI_NEW_XML_SCHEMA_TITLE             = New XML Schema
-_UI_CREATE_A_NEW_XML_SCHEMA_DESC     = Create a new XML schema.
-
-! NOTE TO TRANSLATOR: Do not translate following line
-_UI_NEW_XML_SCHEMA_FILENAME          = NewXMLSchema.xsd
-
-!
-! XSD From RDB Schema Wizard
-!
-_UI_WIZARD_CREATE_XSD_FROM_RDB_TITLE = Create XSD from RDB Table
-
-
-!
-! Regular Expression Wizard
-!
-_UI_REGEX_WIZARD_CREATE_BUTTON = Create Regular Expression...
-_UI_TOOLTIP_REGEX_WIZARD_BUTTON = Launch the Regular Expression Wizard
-_UI_REGEX_WIZARD_TITLE = Regular Expression Wizard
-_UI_REGEX_WIZARD_COMPOSITION_PAGE_TITLE = Compose Regular Expression
-_UI_REGEX_WIZARD_COMPOSITION_PAGE_DESCRIPTION = To add a token, specify its contents and occurrence, then click Add.
-_UI_REGEX_WIZARD_INVALID_REGEX_ERROR_PREFIX = The current regular expression is not valid.  Reason:  
-_UI_REGEX_WIZARD_INVALID_TOKEN_ERROR_PREFIX = The current token is not valid.  Reason:  
-_UI_REGEX_WIZARD_INVALID_REGEX_ERROR = The current regular expression is not valid.
-_UI_REGEX_WIZARD_INVALID_TOKEN_ERROR = The current token is not valid.
-_UI_REGEX_WIZARD_INVALID_MIN_ERROR_SUFFIX = Invalid minimum range value.  The value must be a positive integer less than the maximum value.
-_UI_REGEX_WIZARD_MISSING_MIN_ERROR_SUFFIX = Invalid minimum range value.  A minimum range must be specified if a maximum range is specified.
-_UI_REGEX_WIZARD_INVALID_MAX_ERROR_SUFFIX = Invalid maximum range value.  The value must be a positive integer greater than the minimum value.
-_UI_REGEX_WIZARD_INVALID_REPEAT_ERROR_SUFFIX = Invalid repeat value.  The value must be a positive integer.
-_UI_REGEX_WIZARD_INVALID_SELECTION_ERROR = Nothing is currently selected.  Either make a selection or choose a different token. 
-_UI_REGEX_WIZARD_TOKEN_LABEL = Token contents:
-_UI_REGEX_WIZARD_AUTO_ESCAPE_CHECKBOX_LABEL = Auto escape
-_UI_REGEX_WIZARD_OCCURENCE_LABEL = Occurrence
-! Instructions for translators: The following label is used in a phrase to identify a range of values.
-! For example:  5 to 10.
-! The values are text fields that are initially blank so the user has to enter in values
-! For example:   _______ to ________
-_UI_REGEX_WIZARD_TO_LABEL = to
-_UI_REGEX_WIZARD_ADD_BUTTON_LABEL = Add 
-_UI_REGEX_WIZARD_CURRENT_REGEX_LABEL = Current regular expression:
-_UI_TOOLTIP_REGEX_WIZARD_TERMS = Content of new token
-_UI_TOOLTIP_REGEX_WIZARD_AUTO_ESCAPE_CHECKBOX = Insert escape characters to match metacharacter literals (e.g. converts \"*\" to \"\\*\")
-_UI_TOOLTIP_REGEX_WIZARD_ADD_BUTTON = Add this token to the regular expression
-_UI_TOOLTIP_REGEX_WIZARD_CURRENT_REGEX = The current regular expression
-_UI_TOOLTIP_REGEX_WIZARD_REPEAT = The number of times that the token must occur.
-_UI_TOOLTIP_REGEX_WIZARD_MIN = The minimum number of times that the token can occur.
-_UI_TOOLTIP_REGEX_WIZARD_MAX = The maximum number of times that the token can occur.
-_UI_TOOLTIP_REGEX_WIZARD_CARET_LABEL = The location where the new token will be inserted.
-_UI_REGEX_WIZARD_TESTING_PAGE_TITLE = Test Regular Expression
-_UI_REGEX_WIZARD_TESTING_PAGE_DESCRIPTION = To test the regular expression, enter sample text that you wish to match.  The success of the match will be indicated above.
-_UI_REGEX_WIZARD_REGEX_LABEL = Regular expression: 
-_UI_REGEX_WIZARD_SAMPLE_TEXT =  Sample text: 
-_UI_REGEX_WIZARD_MATCHES = The text matches the regular expression.
-_UI_REGEX_WIZARD_DOES_NOT_MATCH = The text does not match the regular expression.
-_UI_REGEX_WIZARD_TERM_ANY_CHAR = Any character
-_UI_REGEX_WIZARD_TERM_ALPHANUMERIC_CHAR = Alphanumeric character
-_UI_REGEX_WIZARD_TERM_WHITESPACE = Whitespace
-_UI_REGEX_WIZARD_TERM_DIGIT = Digit
-_UI_REGEX_WIZARD_TERM_UPPER = Upper case
-_UI_REGEX_WIZARD_TERM_LOWER = Lower case
-_UI_REGEX_WIZARD_TERM_SELECTION = Current selection
-_UI_REGEX_WIZARD_QUANTIFIER_SINGLE = Just once
-_UI_REGEX_WIZARD_QUANTIFIER_STAR = Zero or more
-_UI_REGEX_WIZARD_QUANTIFIER_PLUS = One or more
-_UI_REGEX_WIZARD_QUANTIFIER_OPTIONAL = Optional
-_UI_REGEX_WIZARD_QUANTIFIER_REPEAT = Repeat
-_UI_REGEX_WIZARD_QUANTIFIER_RANGE = Range
-
-!
-! Select Include File Wizard
-_UI_LABEL_INCLUDE_URL_FILE    = Select schema from:
-_UI_RADIO_URL                 = HTTP
-_UI_RADIO_FILE                = Workbench projects
-_UI_WIZARD_INCLUDE_FILE_TITLE = Include Another Schema
-_UI_WIZARD_INCLUDE_FILE_DESC  = Select another schema from workbench projects or from HTTP.
-_UI_LABEL_URL                 = URL:
-_UI_URL_START_WITH            = The URL must start with http://
-_UI_SPECIFY_URL               = Please specify a URL
-
-!
-! Enumerations Dialog
-_UI_ENUMERATIONS_DIALOG_TITLE = Add Enumerations
-_UI_LABEL_DELIMITER_CHAR      = &Delimiter characters:
-_UI_LABEL_PRESERVE_WHITESPACE = &Preserve leading and trailing whitespace
-
-_UI_ACTION_DELETE_ENUMERATION = Delete Enumeration
-
-!
-! Validate Schema 
-!
-_UI_DIALOG_XML_SCHEMA_INVALID_TITLE  = Validation Failed
-_UI_DIALOG_XML_SCHEMA_VALID_TITLE    = Validation Succeeded
-_UI_DIALOG_XML_SCHEMA_VALID_TEXT     = The XML schema file is valid.
-_UI_DIALOG_XML_SCHEMA_LIMITE_EXCEEDED  = The XML schema file is not valid.  The message limit for the Tasks view has been exceeded.  Please increase the limit and try again.
-
-!
-! Combo-box choices 
-!
-! NOTE TO TRANSLATOR: Do not translate following 10 lines
-_UI_COMBO_QUALIFIED             = qualified
-_UI_COMBO_UNQUALIFIED           = unqualified
-_UI_COMBO_EXTENSION             = extension
-_UI_COMBO_RESTRICTION           = restriction
-_UI_COMBO_ALL                   = all
-_UI_COMBO_TRUE                  = true
-_UI_COMBO_FALSE                 = false
-_UI_COMBO_LAX                   = lax
-_UI_COMBO_SKIP                  = skip
-_UI_COMBO_STRICT                = strict
-
-! Generate DTD - pass as title and description for wizard page
-_UI_GENERATE_DTD_TITLE          = Generate DTD
-_UI_GENERATE_DTD_DESCRIPTION    = Generate a DTD from the selected XML schema file.
-
-! Generate DDL - pass as title and description for wizard page
-_UI_GENERATE_DDL_TITLE          = Generate DDL
-_UI_GENERATE_DDL_DESCRIPTION    = Generate DDL from the selected XML schema file.
-
-_UI_XML_SCHEMA_VALIDATOR            = XML Schema Validator
-
-! Generation from the Schema model - pre-condition check
-_UI_DIALOG_TITLE_GRAMMAR_ERROR      = Invalid Grammar
-_UI_DIALOG_INFO_SCHEMA_INVALID      = The schema file contains errors. Open it in the XML Schema editor and validate it for details.
-_UI_DIALOG_TITLE_NO_GLOBAL_ELEMENTS = No Global Elements
-_UI_DIALOG_INFO_NO_GLOBAL_ELEMENTS  = The selected schema has no global elements. Global elements are required to generate anything from an XML schema.
-
-! Section title for other attributes
-_UI_SECTION_ADVANCED_ATTRIBUTES   = Advanced
-
-! For undo action menus
-! Note to Translators: For the following "Change" phrases,
-! maxOccurs, minOccurs, lang, xpath are keywords so please
-! do no translate them.  These are for the undo action menus.
-! For example, if the user makes a change in the name of an
-! element, then the undo action would be Undo Element Name Change
-_UI_NAMESPACE_CHANGE           = Namespace Change
-_UI_PROCESSCONTENTS_CHANGE     = Process Contents Change
-_UI_MAXOCCURS_CHANGE           = maxOccurs Change
-_UI_MINOCCURS_CHANGE           = minOccurs Change
-_UI_SOURCE_ATTRIBUTE_CHANGE    = Source Change
-_UI_COMMENT_CHANGE             = Comment Change
-_UI_PREFIX_CHANGE              = Prefix Change
-_UI_ATTRIBUTEGROUP_REF_CHANGE  = Attribute Group Reference Change
-_UI_ATTRIBUTEGROUP_NAME_CHANGE = Attribute Group Name Change
-_UI_ATTRIBUTE_FIXED_CHANGE     = Attribute Fixed Change
-_UI_ATTRIBUTE_DEFAULT_CHANGE   = Attribute Default Change
-_UI_ATTRIBUTE_NAME_CHANGE      = Attribute Name Change
-_UI_ATTRIBUTE_VALUE_CHANGE     = Attribute Value Change
-_UI_ATTRIBUTE_USE_CHANGE       = Attribute Use Change
-_UI_ATTRIBUTE_FORM_CHANGE      = Attribute Form Change
-_UI_COMPLEXTYPE_NAME_CHANGE    = Complex Type Name Change
-_UI_COMPLEXTYPE_ABSTRACT_CHANGE = Complex Type Abstract Change
-_UI_COMPLEXTYPE_MIXED_CHANGE   = Complex Type Mixed Change
-_UI_COMPLEXTYPE_BLOCK_CHANGE   = Complex Type Block Change
-_UI_COMPLEXTYPE_FINAL_CHANGE   = Complex Type Final Change
-_UI_DOCUMENTATION_SOURCE_CHANGE = Documentation Source Change
-_UI_DOCUMENTATION_LANG_CHANGE   = Documentation lang Change
-_UI_DOCUMENTATION_COMMENT_CHANGE = Documentation Comment Change
-_UI_ELEMENT_NAME_CHANGE          = Element Name Change
-_UI_ELEMENT_VALUE_CHANGE         = Element Value Change
-_UI_ELEMENT_TYPE_CHANGE          = Element Type Change
-_UI_ENUM_VALUE_CHANGE            = Enum Value Change
-_UI_FIELD_XPATH_CHANGE           = Field xpath Change
-_UI_GROUP_REF_CHANGE             = Group Reference Change
-_UI_GROUP_SCOPE_CHANGE           = Content Model Change
-_UI_GROUP_NAME_CHANGE            = Group Name Change
-_UI_IMPORT_CHANGE                = Import Change
-_UI_KEY_NAME_CHANGE              = Key Name Change
-_UI_KEYREF_NAME_CHANGE           = Key Reference Name Change
-! Note to translators
-! For the following item, Refer is the keyref attribute to refer to some other key
-_UI_KEYREF_REFER_CHANGE          = Key Reference Refer Change
-_UI_NOTATION_NAME_CHANGE         = Notation Name Change
-_UI_NOTATION_PUBLIC_CHANGE       = Notation Public Change
-_UI_NOTATION_SYSTEM_CHANGE       = Notation System Change
-_UI_PATTERN_VALUE_CHANGE         = Pattern Value Change
-_UI_SCHEMA_VERSION_CHANGE        = Schema Version Change
-_UI_SCHEMA_LANG_CHANGE           = Schema lang Change
-_UI_SELECTOR_XPATH_CHANGE        = Selector xpath Change
-_UI_TYPE_CHANGE                  = Type Change
-_UI_DERIVEDBY_CHANGE             = Derivation Change
-_UI_FACET_CHANGE                 = Facet Change
-_UI_SIMPLETYPE_NAME_CHANGE       = SimpleType Name Change
-_UI_UNIQUE_NAME_CHANGE           = Unique Name Change
-_UI_SCHEMA_ATTRIBUTEFORMDEFAULT_CHANGE = Attribute Form Default Change
-_UI_SCHEMA_ELEMENTFORMDEFAULT_CHANGE = Element Form Default Change
-_UI_SCHEMA_BLOCKDEFAULT_CHANGE   = Block Default Change
-_UI_SCHEMA_FINALDEFAULT_CHANGE   = Final Default Change
-_UI_ELEMENT_SUBSTITUTIONGROUP_CHANGE = Substitution Group Change
-_UI_ELEMENT_FORM_CHANGE          = Form Change
-_UI_ELEMENT_BLOCK_CHANGE         = Block Change
-_UI_ELEMENT_FINAL_CHANGE         = Final Change
-_UI_ELEMENT_ABSTRACT_CHANGE      = Abstract Change
-_UI_ELEMENT_NILLABLE_CHANGE      = Nillable Change
-_UI_TARGETNAMESPACE_CHANGE       = Target Namespace Change
-
-! Window Headings for Flat View
-_UI_PAGE_HEADING_ANYATTRIBUTE = Any Attribute
-_UI_PAGE_HEADING_ANYELEMENT   = Any Element
-_UI_PAGE_HEADING_APPINFO            = AppInfo
-_UI_PAGE_HEADING_ATTRIBUTEGROUP_REF = Attribute Group Reference
-_UI_PAGE_HEADING_ATTRIBUTEGROUP     = Attribute Group
-_UI_PAGE_HEADING_ATTRIBUTE_REF      = Attribute Reference
-_UI_PAGE_HEADING_ATTRIBUTE          = Attribute
-_UI_PAGE_HEADING_COMPLEXTYPE        = Complex Type
-_UI_PAGE_HEADING_DOCUMENTATION      = Documentation
-_UI_PAGE_HEADING_ELEMENT     = Element
-_UI_PAGE_HEADING_ELEMENT_REF = Element Reference
-_UI_PAGE_HEADING_ENUM        = Enumeration
-_UI_PAGE_HEADING_FIELD       = Field
-_UI_PAGE_HEADING_GROUP_REF   = Group Reference
-_UI_PAGE_HEADING_CONTENTMODEL  = Content Model
-_UI_PAGE_HEADING_GROUP         = Group
-_UI_PAGE_HEADING_IMPORT        = Import
-_UI_PAGE_HEADING_INCLUDE       = Include
-_UI_PAGE_HEADING_KEYREF        = Key Reference
-_UI_PAGE_HEADING_KEY           = Key
-_UI_PAGE_HEADING_NOTATION      = Notation
-_UI_PAGE_HEADING_PATTERN       = Pattern
-_UI_PAGE_HEADING_REDEFINE      = Redefine
-_UI_PAGE_HEADING_SCHEMA        = Schema
-_UI_PAGE_HEADING_SELECTOR      = Selector
-_UI_PAGE_HEADING_LIST          = List
-_UI_PAGE_HEADING_UNION         = Union
-_UI_PAGE_HEADING_SIMPLECONTENT = Simple Content
-_UI_PAGE_HEADING_COMPLEXCONTENT = Complex Content
-_UI_PAGE_HEADING_RESTRICTION   = Restriction
-_UI_PAGE_HEADING_EXTENSION     = Extension
-_UI_PAGE_HEADING_SIMPLETYPE    = Simple Type
-_UI_PAGE_HEADING_UNIQUE        = Unique
-_UI_PAGE_HEADING_REFERENCE     = reference
-
-!
-! Graph page
-!
-_UI_GRAPH_SIMPLE_TYPES         = Simple Types
-_UI_GRAPH_COMPLEX_TYPES        = Complex Types
-_UI_GRAPH_GROUPS               = Groups
-_UI_GRAPH_GLOBAL_ATTRIBUTES    = Global Attributes
-_UI_GRAPH_GLOBAL_ELEMENTS      = Global Elements
-_UI_GRAPH_XSDSCHEMA            = Schema
-_UI_GRAPH_XSDSCHEMA_NO_NAMESPACE = (no target namespace specified)
-_UI_GRAPH_XSDCOMPLEXTYPEDEFINITION = XSD Complex Type Definition:
-_UI_GRAPH_XSDMODELGROUP        = XSD Model Group
-_UI_GRAPH_XSDPARTICLE          = XSD Particle
-_UI_GRAPH_VIEW_NOT_AVAILABLE   = View is not available for selected object.
-_UI_GRAPH_UNKNOWN_OBJECT       = Unknown object
-
-! Additional Categories
-_UI_GRAPH_TYPES                = Types
-_UI_GRAPH_ELEMENTS             = Elements
-_UI_GRAPH_ATTRIBUTES           = Attributes
-_UI_GRAPH_ATTRIBUTE_GROUPS     = Attribute Groups
-_UI_GRAPH_NOTATIONS            = Notations
-_UI_GRAPH_IDENTITY_CONSTRAINTS = Identity Constraints
-_UI_GRAPH_ANNOTATIONS          = Annotations
-_UI_GRAPH_DIRECTIVES           = Directives
-
-! For Union MemberTypes Dialog
-_UI_LABEL_SELECT_MEMBERTYPES   = Select from the available types and add to the memberTypes list
-_UI_LABEL_MEMBERTYPES_CHANGE   = Member Types Change
-_UI_LABEL_MEMBERTYPES_VALUE    = Member Types Value:
-_UI_LABEL_MEMBERTYPES          = Member types:
-
-_UI_LABEL_VARIETY_CHANGE       = Variety Change
-
-_UI_LABEL_FIXEDORDEFAULT_VALUE = Fixed/Default Value
-
-_UI_LABEL_ITEM_TYPE_CHANGE     = Item Type Change
-
-_UI_LABEL_AVAILABLE_TYPES      = Available Types
-
-_UI_LABEL_INCLUDE_CHANGE       = Include Change
-
-_UI_LABEL_ITEM_TYPE            = Item type:
-_UI_LABEL_BASE_TYPE            = Base Type
-_UI_LABEL_TYPE                 = Type
-_UI_LABEL_MODEL_GROUP          = Model Group
-
-_UI_LABEL_ABSENT               = absent
-
-_UI_WARNING_RESET_ATTRGRP_REF  = Reset attribute group reference <{0}>
-_UI_WARNING_REMOVE_ATTRGRP_REF = Remove attribute group reference <{0}>
-_UI_WARNING_RESET_ATTR_REF     = Reset attribute reference <{0}>
-_UI_WARNING_REMOVE_ATTR_REF    = Remove attribute reference <{0}>
-
-!======================================================================================
-!
-! Here is the list of Error string that have message IDs - make sure they are unique
-!  Range for XSDEditor messageIDs: IWAX1001E - IWAX1200E
-!
-!======================================================================================
-! These three errors appear in the select include wizard
-! The name of the file will be substituted in
-_UI_DIFFERENT_NAME_SPACE  = {0} is in a different namespace 
-_UI_SAME_NAME_SPACE       = {0} is in the same namespace
-_UI_INCORRECT_XML_SCHEMA  = {0} is an invalid XML schema file
-
-_ERROR_SCHEMA_NOT_EXIST         = IWAX1003E does not exist.
-_ERROR_LABEL_INVALID_PREFIX     = IWAX1004E Invalid prefix. A prefix must not be empty or contain any space.
-
-! The name of the file will be substituted in
-_ERROR_SCHEMA_NAME_THE_SAME  = IWAX1005E {0} is the current schema. A schema cannot include itself. Reset to the last valid schema.
-
-_ERROR_XSD_GENERATION                = IWAX1006E Error generating XML schema
-_ERROR_NO_CONTAINER                  = IWAX1007E No folder selected
-_ERROR_NO_FILE_NAME                  = IWAX1008E No file name provided
-_ERROR_FILENAME_MUST_END_XSD         = IWAX1011E The file name must end in .xsd
-
-
-!
-! For schema that has too many errors, an extended message. 
-!
-_ERROR_DIALOG_XML_SCHEMA_INVALID_TEXT  = IWAX100d9E The XML schema file is not valid.  
-_ERROR_MORE_ERRORS                    = There are more errors in the schema than are displayed in the Tasks view.  Correct the first {0} errors and re-validate the schema file.
-
-! DDL Generation Failed Dialog
-_UI_DIALOG_DDL_GEN_FAILED_TITLE     = DDL Generation Failed
-_ERROR_DIALOG_DDL_NOT_GENEREATED    = IWAX1010E DDL has not been generated
-_UI_DIALOG_DDL_GEN_FAILED_REASON    = The selected schema has no global elements
-_UI_DIALOG_DDL_GEN_FAILED_REASON2   = None of the global elements in the schema have a complex type or they reference complex types that cannot be found.
-
-_EXC_OPEN_XSD = IWAX1011E Cannot open XML Schema editor
-
-_ERROR_LABEL_PREFIX_EXISTS     = IWAX1012E Prefix already exists
-
-_ERROR_REMOVE_LOCAL_SIMPLETYPE  = IWAX1013E Remove local simple type from extension
-
-_WARN_INVALID_TARGET_NAMESPACE = IWAX1014E The target namespace is not well-formed
-
-_ERROR_TARGET_NAMESPACE_AND_PREFIX = IWAX1015E A target namespace must be associated with a prefix
-
-
-_UI_CONTAINMENT = Containment
-_UI_INHERITANCE = Inheritance
-_UI_SUBSTITUTION_GROUPS = Substitution Groups
-_UI_ANONYMOUS = **anonymous**
-_UI_VALUE = Value
-_UI_ANY_ELEMENT = Any Element
-_UI_SORT = Sort
-
-_UI_ACTION_EDIT_NAMESPACES = Edit Namespaces...
-
-
-_UI_CreateChild_text = {0}
-_UI_CreateChild_text2 = {1} {0}
-_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
-_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
-_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
-
-_UI_PropertyDescriptor_description = The {0} of the {1}
-
-_UI_XSDAnnotation_type = Annotation
-_UI_XSDAttributeDeclaration_type = Attribute Declaration
-_UI_XSDAttributeGroupContent_type = Attribute Group Content
-_UI_XSDAttributeGroupDefinition_type = Attribute Group Definition
-_UI_XSDAttributeUse_type = Attribute Use
-_UI_XSDBoundedFacet_type = Bounded Facet
-_UI_XSDCardinalityFacet_type = Cardinality Facet
-_UI_XSDComplexTypeContent_type = Complex Type Content
-_UI_XSDComplexTypeDefinition_type = Complex Type Definition
-_UI_XSDComponent_type = Component
-_UI_XSDConcreteComponent_type = Concrete Component
-_UI_XSDConstrainingFacet_type = Constraining Facet
-_UI_XSDDiagnostic_type = Diagnostic
-_UI_XSDElementDeclaration_type = Element Declaration
-_UI_XSDEnumerationFacet_type = Enumeration Facet
-_UI_XSDFacet_type = Facet
-_UI_XSDFeature_type = Feature
-_UI_XSDFixedFacet_type = Fixed Facet
-_UI_XSDFractionDigitsFacet_type = Fraction Digits Facet
-_UI_XSDFundamentalFacet_type = Fundamental Facet
-_UI_XSDIdentityConstraintDefinition_type = Identity Constraint Definition
-_UI_XSDImport_type = Import
-_UI_XSDInclude_type = Include
-_UI_XSDLengthFacet_type = Length Facet
-_UI_XSDMaxExclusiveFacet_type = Max Exclusive Facet
-_UI_XSDMaxFacet_type = Max Facet
-_UI_XSDMaxInclusiveFacet_type = Max Inclusive Facet
-_UI_XSDMaxLengthFacet_type = Max Length Facet
-_UI_XSDMinExclusiveFacet_type = Min Exclusive Facet
-_UI_XSDMinFacet_type = Min Facet
-_UI_XSDMinInclusiveFacet_type = Min Inclusive Facet
-_UI_XSDMinLengthFacet_type = Min Length Facet
-_UI_XSDModelGroup_type = Model Group
-_UI_XSDModelGroupDefinition_type = Model Group Definition
-_UI_XSDNamedComponent_type = Named Component
-_UI_XSDNotationDeclaration_type = Notation Declaration
-_UI_XSDNumericFacet_type = Numeric Facet
-_UI_XSDOrderedFacet_type = Ordered Facet
-_UI_XSDParticle_type = Particle
-_UI_XSDParticleContent_type = Particle Content
-_UI_XSDPatternFacet_type = Pattern Facet
-_UI_XSDRedefinableComponent_type = Redefinable Component
-_UI_XSDRedefineContent_type = Redefine Content
-_UI_XSDRedefine_type = Redefine
-_UI_XSDRepeatableFacet_type = Repeatable Facet
-_UI_XSDSchema_type = Schema
-_UI_XSDSchemaCompositor_type = Schema Compositor
-_UI_XSDSchemaContent_type = Schema Content
-_UI_XSDSchemaDirective_type = Schema Directive
-_UI_XSDScope_type = Scope
-_UI_XSDSimpleTypeDefinition_type = Simple Type Definition
-_UI_XSDTerm_type = Term
-_UI_XSDTotalDigitsFacet_type = Total Digits Facet
-_UI_XSDTypeDefinition_type = Type Definition
-_UI_XSDWhiteSpaceFacet_type = White Space Facet
-_UI_XSDWildcard_type = Wildcard
-_UI_XSDXPathDefinition_type = XPath Definition
-_UI_Unknown_type = Object
-
-_UI_XSDAnnotation_applicationInformation_feature = Application Information
-_UI_XSDAnnotation_userInformation_feature = User Information
-_UI_XSDAnnotation_attributes_feature = Attributes
-_UI_XSDAttributeDeclaration_attributeDeclarationReference_feature = Attribute Declaration Reference
-_UI_XSDAttributeDeclaration_annotation_feature = Annotation
-_UI_XSDAttributeDeclaration_anonymousTypeDefinition_feature = Anonymous Type Definition
-_UI_XSDAttributeDeclaration_typeDefinition_feature = Type Definition
-_UI_XSDAttributeDeclaration_resolvedAttributeDeclaration_feature = Resolved Attribute Declaration
-_UI_XSDAttributeGroupDefinition_attributeGroupDefinitionReference_feature = Attribute Group Definition Reference
-_UI_XSDAttributeGroupDefinition_annotation_feature = Annotation
-_UI_XSDAttributeGroupDefinition_contents_feature = Contents
-_UI_XSDAttributeGroupDefinition_attributeUses_feature = Attribute Uses
-_UI_XSDAttributeGroupDefinition_attributeWildcardContent_feature = Attribute Wildcard Content
-_UI_XSDAttributeGroupDefinition_attributeWildcard_feature = Attribute Wildcard
-_UI_XSDAttributeGroupDefinition_resolvedAttributeGroupDefinition_feature = Resolved Attribute Group Definition
-_UI_XSDAttributeGroupDefinition_syntheticWildcard_feature = Synthetic Wildcard
-_UI_XSDAttributeUse_required_feature = Required
-_UI_XSDAttributeUse_value_feature = Value
-_UI_XSDAttributeUse_constraint_feature = Constraint
-_UI_XSDAttributeUse_use_feature = Use
-_UI_XSDAttributeUse_lexicalValue_feature = Lexical Value
-_UI_XSDAttributeUse_attributeDeclaration_feature = Attribute Declaration
-_UI_XSDAttributeUse_content_feature = Content
-_UI_XSDBoundedFacet_value_feature = Value
-_UI_XSDCardinalityFacet_value_feature = Value
-_UI_XSDComplexTypeDefinition_derivationMethod_feature = Derivation Method
-_UI_XSDComplexTypeDefinition_final_feature = Final
-_UI_XSDComplexTypeDefinition_abstract_feature = Abstract
-_UI_XSDComplexTypeDefinition_contentTypeCategory_feature = Content Type Category
-_UI_XSDComplexTypeDefinition_prohibitedSubstitutions_feature = Prohibited Substitutions
-_UI_XSDComplexTypeDefinition_lexicalFinal_feature = Lexical Final
-_UI_XSDComplexTypeDefinition_block_feature = Block
-_UI_XSDComplexTypeDefinition_mixed_feature = Mixed
-_UI_XSDComplexTypeDefinition_contentAnnotation_feature = Content Annotation
-_UI_XSDComplexTypeDefinition_baseTypeDefinition_feature = Base Type Definition
-_UI_XSDComplexTypeDefinition_content_feature = Content
-_UI_XSDComplexTypeDefinition_contentType_feature = Content Type
-_UI_XSDComplexTypeDefinition_attributeUses_feature = Attribute Uses
-_UI_XSDComplexTypeDefinition_attributeContents_feature = Attribute Contents
-_UI_XSDComplexTypeDefinition_attributeWildcard_feature = Attribute Wildcard
-_UI_XSDComplexTypeDefinition_attributeWildcardContent_feature = Attribute Wildcard Content
-_UI_XSDComplexTypeDefinition_rootTypeDefinition_feature = Root Type Definition
-_UI_XSDComplexTypeDefinition_syntheticParticle_feature = Synthetic Particle
-_UI_XSDComplexTypeDefinition_syntheticWildcard_feature = Synthetic Wildcard
-_UI_XSDConcreteComponent_element_feature = Element
-_UI_XSDConcreteComponent_container_feature = Container
-_UI_XSDConcreteComponent_rootContainer_feature = Root Container
-_UI_XSDConcreteComponent_schema_feature = Schema
-_UI_XSDConcreteComponent_diagnostics_feature = Diagnostics
-_UI_XSDDiagnostic_severity_feature = Severity
-_UI_XSDDiagnostic_message_feature = Message
-_UI_XSDDiagnostic_locationURI_feature = Location URI
-_UI_XSDDiagnostic_line_feature = Line
-_UI_XSDDiagnostic_column_feature = Column
-_UI_XSDDiagnostic_node_feature = Node
-_UI_XSDDiagnostic_annotationURI_feature = Annotation URI
-_UI_XSDDiagnostic_components_feature = Components
-_UI_XSDDiagnostic_primaryComponent_feature = Primary Component
-_UI_XSDElementDeclaration_nillable_feature = Nillable
-_UI_XSDElementDeclaration_disallowedSubstitutions_feature = Disallowed Substitutions
-_UI_XSDElementDeclaration_substitutionGroupExclusions_feature = Substitution Group Exclusions
-_UI_XSDElementDeclaration_abstract_feature = Abstract
-_UI_XSDElementDeclaration_lexicalFinal_feature = Lexical Final
-_UI_XSDElementDeclaration_block_feature = Block
-_UI_XSDElementDeclaration_elementDeclarationReference_feature = Element Declaration Reference
-_UI_XSDElementDeclaration_circular_feature = Circular
-_UI_XSDElementDeclaration_annotation_feature = Annotation
-_UI_XSDElementDeclaration_anonymousTypeDefinition_feature = Anonymous Type Definition
-_UI_XSDElementDeclaration_typeDefinition_feature = Type Definition
-_UI_XSDElementDeclaration_identityConstraintDefinitions_feature = Identity Constraint Definitions
-_UI_XSDElementDeclaration_resolvedElementDeclaration_feature = Resolved Element Declaration
-_UI_XSDElementDeclaration_substitutionGroupAffiliation_feature = Substitution Group Affiliation
-_UI_XSDElementDeclaration_substitutionGroup_feature = Substitution Group
-_UI_XSDEnumerationFacet_value_feature = Value
-_UI_XSDFacet_lexicalValue_feature = Lexical Value
-_UI_XSDFacet_facetName_feature = Facet Name
-_UI_XSDFacet_effectiveValue_feature = Effective Value
-_UI_XSDFacet_annotation_feature = Annotation
-_UI_XSDFacet_simpleTypeDefinition_feature = Simple Type Definition
-_UI_XSDFeature_value_feature = Value
-_UI_XSDFeature_constraint_feature = Constraint
-_UI_XSDFeature_form_feature = Form
-_UI_XSDFeature_lexicalValue_feature = Lexical Value
-_UI_XSDFeature_global_feature = Global
-_UI_XSDFeature_featureReference_feature = Feature Reference
-_UI_XSDFeature_scope_feature = Scope
-_UI_XSDFeature_resolvedFeature_feature = Resolved Feature
-_UI_XSDFeature_type_feature = Type
-_UI_XSDFixedFacet_fixed_feature = Fixed
-_UI_XSDFractionDigitsFacet_value_feature = Value
-_UI_XSDIdentityConstraintDefinition_identityConstraintCategory_feature = Identity Constraint Category
-_UI_XSDIdentityConstraintDefinition_annotation_feature = Annotation
-_UI_XSDIdentityConstraintDefinition_referencedKey_feature = Referenced Key
-_UI_XSDIdentityConstraintDefinition_selector_feature = Selector
-_UI_XSDIdentityConstraintDefinition_fields_feature = Fields
-_UI_XSDImport_namespace_feature = Namespace
-_UI_XSDImport_annotation_feature = Annotation
-_UI_XSDInclude_annotation_feature = Annotation
-_UI_XSDLengthFacet_value_feature = Value
-_UI_XSDMaxFacet_value_feature = Value
-_UI_XSDMaxFacet_inclusive_feature = Inclusive
-_UI_XSDMaxFacet_exclusive_feature = Exclusive
-_UI_XSDMaxLengthFacet_value_feature = Value
-_UI_XSDMinFacet_value_feature = Value
-_UI_XSDMinFacet_inclusive_feature = Inclusive
-_UI_XSDMinFacet_exclusive_feature = Exclusive
-_UI_XSDMinLengthFacet_value_feature = Value
-_UI_XSDModelGroup_compositor_feature = Compositor
-_UI_XSDModelGroup_annotation_feature = Annotation
-_UI_XSDModelGroup_contents_feature = Contents
-_UI_XSDModelGroup_particles_feature = Particles
-_UI_XSDModelGroupDefinition_modelGroupDefinitionReference_feature = Model Group Definition Reference
-_UI_XSDModelGroupDefinition_annotation_feature = Annotation
-_UI_XSDModelGroupDefinition_modelGroup_feature = Model Group
-_UI_XSDModelGroupDefinition_resolvedModelGroupDefinition_feature = Resolved Model Group Definition
-_UI_XSDNamedComponent_name_feature = Name
-_UI_XSDNamedComponent_targetNamespace_feature = Target Namespace
-_UI_XSDNamedComponent_aliasName_feature = Alias Name
-_UI_XSDNamedComponent_uRI_feature = URI
-_UI_XSDNamedComponent_aliasURI_feature = Alias URI
-_UI_XSDNamedComponent_qName_feature = QName
-_UI_XSDNotationDeclaration_systemIdentifier_feature = System Identifier
-_UI_XSDNotationDeclaration_publicIdentifier_feature = Public Identifier
-_UI_XSDNotationDeclaration_annotation_feature = Annotation
-_UI_XSDNumericFacet_value_feature = Value
-_UI_XSDOrderedFacet_value_feature = Value
-_UI_XSDParticle_minOccurs_feature = Min Occurs
-_UI_XSDParticle_maxOccurs_feature = Max Occurs
-_UI_XSDParticle_content_feature = Content
-_UI_XSDParticle_term_feature = Term
-_UI_XSDPatternFacet_value_feature = Value
-_UI_XSDRedefinableComponent_circular_feature = Circular
-_UI_XSDRedefine_annotations_feature = Annotations
-_UI_XSDRedefine_contents_feature = Contents
-_UI_XSDRepeatableFacet_annotations_feature = Annotations
-_UI_XSDSchema_document_feature = Document
-_UI_XSDSchema_schemaLocation_feature = Schema Location
-_UI_XSDSchema_targetNamespace_feature = Target Namespace
-_UI_XSDSchema_attributeFormDefault_feature = Attribute Form Default
-_UI_XSDSchema_elementFormDefault_feature = Element Form Default
-_UI_XSDSchema_finalDefault_feature = Final Default
-_UI_XSDSchema_blockDefault_feature = Block Default
-_UI_XSDSchema_version_feature = Version
-_UI_XSDSchema_contents_feature = Contents
-_UI_XSDSchema_elementDeclarations_feature = Element Declarations
-_UI_XSDSchema_attributeDeclarations_feature = Attribute Declarations
-_UI_XSDSchema_attributeGroupDefinitions_feature = Attribute Group Definitions
-_UI_XSDSchema_typeDefinitions_feature = Type Definitions
-_UI_XSDSchema_modelGroupDefinitions_feature = Model Group Definitions
-_UI_XSDSchema_identityConstraintDefinitions_feature = Identity Constraint Definitions
-_UI_XSDSchema_notationDeclarations_feature = Notation Declarations
-_UI_XSDSchema_annotations_feature = Annotations
-_UI_XSDSchema_allDiagnostics_feature = All Diagnostics
-_UI_XSDSchema_referencingDirectives_feature = Referencing Directives
-_UI_XSDSchema_rootVersion_feature = Root Version
-_UI_XSDSchema_originalVersion_feature = Original Version
-_UI_XSDSchema_incorporatedVersions_feature = Incorporated Versions
-_UI_XSDSchema_schemaForSchema_feature = Schema For Schema
-_UI_XSDSchemaCompositor_incorporatedSchema_feature = Incorporated Schema
-_UI_XSDSchemaDirective_schemaLocation_feature = Schema Location
-_UI_XSDSchemaDirective_resolvedSchema_feature = Resolved Schema
-_UI_XSDSimpleTypeDefinition_variety_feature = Variety
-_UI_XSDSimpleTypeDefinition_final_feature = Final
-_UI_XSDSimpleTypeDefinition_lexicalFinal_feature = Lexical Final
-_UI_XSDSimpleTypeDefinition_validFacets_feature = Valid Facets
-_UI_XSDSimpleTypeDefinition_contents_feature = Contents
-_UI_XSDSimpleTypeDefinition_facetContents_feature = Facet Contents
-_UI_XSDSimpleTypeDefinition_facets_feature = Facets
-_UI_XSDSimpleTypeDefinition_memberTypeDefinitions_feature = Member Type Definitions
-_UI_XSDSimpleTypeDefinition_fundamentalFacets_feature = Fundamental Facets
-_UI_XSDSimpleTypeDefinition_baseTypeDefinition_feature = Base Type Definition
-_UI_XSDSimpleTypeDefinition_primitiveTypeDefinition_feature = Primitive Type Definition
-_UI_XSDSimpleTypeDefinition_itemTypeDefinition_feature = Item Type Definition
-_UI_XSDSimpleTypeDefinition_rootTypeDefinition_feature = Root Type Definition
-_UI_XSDSimpleTypeDefinition_minFacet_feature = Min Facet
-_UI_XSDSimpleTypeDefinition_maxFacet_feature = Max Facet
-_UI_XSDSimpleTypeDefinition_maxInclusiveFacet_feature = Max Inclusive Facet
-_UI_XSDSimpleTypeDefinition_minInclusiveFacet_feature = Min Inclusive Facet
-_UI_XSDSimpleTypeDefinition_minExclusiveFacet_feature = Min Exclusive Facet
-_UI_XSDSimpleTypeDefinition_maxExclusiveFacet_feature = Max Exclusive Facet
-_UI_XSDSimpleTypeDefinition_lengthFacet_feature = Length Facet
-_UI_XSDSimpleTypeDefinition_whiteSpaceFacet_feature = White Space Facet
-_UI_XSDSimpleTypeDefinition_enumerationFacets_feature = Enumeration Facets
-_UI_XSDSimpleTypeDefinition_patternFacets_feature = Pattern Facets
-_UI_XSDSimpleTypeDefinition_cardinalityFacet_feature = Cardinality Facet
-_UI_XSDSimpleTypeDefinition_numericFacet_feature = Numeric Facet
-_UI_XSDSimpleTypeDefinition_maxLengthFacet_feature = Max Length Facet
-_UI_XSDSimpleTypeDefinition_minLengthFacet_feature = Min Length Facet
-_UI_XSDSimpleTypeDefinition_totalDigitsFacet_feature = Total Digits Facet
-_UI_XSDSimpleTypeDefinition_fractionDigitsFacet_feature = Fraction Digits Facet
-_UI_XSDSimpleTypeDefinition_orderedFacet_feature = Ordered Facet
-_UI_XSDSimpleTypeDefinition_boundedFacet_feature = Bounded Facet
-_UI_XSDSimpleTypeDefinition_effectiveMaxFacet_feature = Effective Max Facet
-_UI_XSDSimpleTypeDefinition_effectiveWhiteSpaceFacet_feature = Effective White Space Facet
-_UI_XSDSimpleTypeDefinition_effectiveMaxLengthFacet_feature = Effective Max Length Facet
-_UI_XSDSimpleTypeDefinition_effectiveFractionDigitsFacet_feature = Effective Fraction Digits Facet
-_UI_XSDSimpleTypeDefinition_effectivePatternFacet_feature = Effective Pattern Facet
-_UI_XSDSimpleTypeDefinition_effectiveEnumerationFacet_feature = Effective Enumeration Facet
-_UI_XSDSimpleTypeDefinition_effectiveTotalDigitsFacet_feature = Effective Total Digits Facet
-_UI_XSDSimpleTypeDefinition_effectiveMinLengthFacet_feature = Effective Min Length Facet
-_UI_XSDSimpleTypeDefinition_effectiveLengthFacet_feature = Effective Length Facet
-_UI_XSDSimpleTypeDefinition_effectiveMinFacet_feature = Effective Min Facet
-_UI_XSDSimpleTypeDefinition_syntheticFacets_feature = Synthetic Facets
-_UI_XSDTotalDigitsFacet_value_feature = Value
-_UI_XSDTypeDefinition_annotation_feature = Annotation
-_UI_XSDTypeDefinition_derivationAnnotation_feature = Derivation Annotation
-_UI_XSDTypeDefinition_annotations_feature = Annotations
-_UI_XSDTypeDefinition_rootType_feature = Root Type
-_UI_XSDTypeDefinition_baseType_feature = Base Type
-_UI_XSDTypeDefinition_simpleType_feature = Simple Type
-_UI_XSDTypeDefinition_complexType_feature = Complex Type
-_UI_XSDWhiteSpaceFacet_value_feature = Value
-_UI_XSDWildcard_namespaceConstraintCategory_feature = Namespace Constraint Category
-_UI_XSDWildcard_namespaceConstraint_feature = Namespace Constraint
-_UI_XSDWildcard_processContents_feature = Process Contents
-_UI_XSDWildcard_lexicalNamespaceConstraint_feature = Lexical Namespace Constraint
-_UI_XSDWildcard_annotation_feature = Annotation
-_UI_XSDWildcard_annotations_feature = Annotations
-_UI_XSDXPathDefinition_variety_feature = Variety
-_UI_XSDXPathDefinition_value_feature = Value
-_UI_XSDXPathDefinition_annotation_feature = Annotation
-_UI_Unknown_feature = Unspecified
-
-!======================================================================================
-!
-! Used by org.eclipse.wst.common.ui.viewers.SelectSingleFileView
-!
-!======================================================================================
-_UI_LABEL_SOURCE_FILES   = Workbench Files
-_UI_LABEL_SELECTED_FILES = Selected Files
-
-_UI_IMPORT_BUTTON          = Import Files...
-_UI_IMPORT_BUTTON_TOOL_TIP = Import files from file system
-
-
-!======================================================================================
-!
-! refactoring
-!
-!======================================================================================
-refactoringActionSet.label=Refactor
-refactoringActionSet.description=XSD Editor refactoring actions
-refactoring.menu.label=Refactor
-refactoring.renameAction.label=Re&name...
-context.text.editor.xsd.name=Editing XSD context
-command.xsd.refactor.rename.element.name=Rename XSD element
-command.xsd.refactor.rename.element.description=Rename XSD element
-command.xsd.refactor.makeElementGlobal.element.name=Make local element global
-command.xsd.refactor.makeElementGlobal.element.description=Promotes local element to global level and replaces its references
-command.xsd.refactor.makeTypeGlobal.element.name=Make anonymous type global
-command.xsd.refactor.makeTypeGlobal.element.description=Promotes anonymous type to global level and replaces its references
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/plugin.xml b/bundles/org.eclipse.wst.xsd.ui/plugin.xml
deleted file mode 100644
index cb77ce4..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/plugin.xml
+++ /dev/null
@@ -1,310 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.wst.xsd.ui"
-   name="%_UI_PLUGIN_NAME"
-   version="1.0.0"
-   provider-name="Eclipse.org"
-   class="org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin">
-
-   <runtime>
-      <library name="xsdeditor.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.core.runtime.compatibility"/>
-      
-      <import plugin="org.eclipse.wst.xml.uriresolver"/>
-      <import plugin="org.eclipse.wst.sse.ui"/>
-      <import plugin="org.eclipse.wst.sse.core"/>
-      <import plugin="org.eclipse.wst.xml.core"/>
-      <import plugin="org.eclipse.wst.xml.ui"/>
-      <import plugin="org.eclipse.wst.common.ui"/>
-      
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.xsd"/>
-      <import plugin="org.eclipse.gef"/>
-      <import plugin="org.eclipse.jface"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.wst.common.ui.properties"/>
-      <import plugin="org.eclipse.xsd.edit"/>
-      <import plugin="org.eclipse.emf.edit"/>
-      <import plugin="org.eclipse.emf.edit.ui"/> 
-      <import plugin="org.eclipse.wst.validation"/>
-      
-      <import plugin="org.eclipse.ltk.core.refactoring" />
-	  <import plugin="org.eclipse.ltk.ui.refactoring" />
-    </requires>
-
-
-   <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%_UI_EDITOR_NAME"
-            default="true"
-            icon="icons/XSDFile.gif"
-            extensions="xsd"
-            contributorClass="org.eclipse.wst.xsd.ui.internal.XSDActionBarContributor"
-            class="org.eclipse.wst.xsd.ui.internal.XSDEditor"
-            id="org.eclipse.wst.xsd.ui.XSDEditor">
-      </editor>
-   </extension>
-<!-- drop targets for XSDTextEditor-->
-   <extension
-         point="org.eclipse.wst.sse.ui.dropTargetTransfers">
-      <dropTargetContribution
-            targetID="org.eclipse.wst.xsd.ui.internal.XSDTextEditor"
-            id="org.eclipse.wst.xsd.ui.ExtendedTransfers">
-         <transfer
-               priority="mid"
-               singleton="true"
-               class="org.eclipse.swt.dnd.FileTransfer"
-               method="getInstance"
-               id="org.eclipse.swt.dnd.FileTransfer">
-         </transfer>
-         <dropAction
-               class="org.eclipse.wst.sse.ui.extension.FileDropAction"
-               transferID="org.eclipse.swt.dnd.FileTransfer"
-               id="org.eclipse.wst.sse.ui.extension.FileDropAction">
-         </dropAction>
-         <transfer
-               priority="low"
-               singleton="true"
-               class="org.eclipse.swt.dnd.TextTransfer"
-               method="getInstance"
-               id="org.eclipse.swt.dnd.TextTransfer">
-         </transfer>
-         <dropAction
-               class="org.eclipse.wst.sse.ui.extension.TextDropAction"
-               transferID="org.eclipse.swt.dnd.TextTransfer"
-               id="corg.eclipse.wst.sse.ui.extension.TextDropAction">
-         </dropAction>
-      </dropTargetContribution>
-   </extension>
-
-   <extension point="org.eclipse.ui.newWizards">
-     <wizard id = "org.eclipse.wst.xsd.ui.internal.wizards.NewXSDWizard"
-        name = "%_UI_WIZARD_NEW_XSD"
-        class = "org.eclipse.wst.xsd.ui.internal.wizards.NewXSDWizard"
-        category = "org.eclipse.wst.XMLCategory"
-        icon = "icons/XSDFile.gif">
-      <description>%_UI_CREATE_A_NEW_SCHEMA</description>
-      <selection class = "org.eclipse.core.resources.IResource" />
-      </wizard>
-   </extension>
-
-   <extension point="org.eclipse.ui.preferencePages">
-      <page
-            name="%_UI_XML_SCHEMA_PREFERENCE"
-            category="org.eclipse.wst.sse.ui.preferences"
-            class="org.eclipse.wst.xsd.ui.internal.preferences.XSDPreferencePage"
-            id="org.eclipse.wst.xsd.ui.internal.preferences.XSDPreferencePage">
-      </page>
-   </extension>
-	<extension point="org.eclipse.wst.sse.ui.extendedconfiguration">
-		<definition 
-			type="preferencepages"
-			value="org.eclipse.wst.xsd.ui.internal.preferences.XSDPreferencePage"
-			target="org.eclipse.wst.xsd.ui.internal.XSDEditor.source" />
-	</extension>
-   
-   <!-- ==================================================== -->
-<!-- Support help on the tags                             -->
-<!-- ==================================================== -->
-<!--   <extension
-         point="org.eclipse.wst.xml.core.internal.contentmodel.annotationFiles">
-      <annotationFile
-            location="/w3c/schemaForCodeAssist-annotations.xml"
-            publicId="http://www.w3.org/2001/XMLSchema">
-      </annotationFile>
-   </extension>
--->
-   <extension
-         point="org.eclipse.wst.common.ui.properties.propertyContributor">
-      <propertyContributor
-            contributorId="org.eclipse.wst.xsd.ui.internal.XSDEditor"
-            sectionDescriptorProvider="org.eclipse.wst.xsd.ui.internal.properties.section.XSDSectionDescriptorProvider"
-            labelProvider="org.eclipse.wst.xsd.ui.internal.properties.section.XSDSectionLabelProvider">
-         <propertyCategory
-               category="general">
-         </propertyCategory>
-         <propertyCategory
-               category="namespace">
-         </propertyCategory>
-         <propertyCategory
-               category="other">
-         </propertyCategory>
-         <propertyCategory
-               category="attributes">
-         </propertyCategory>
-         <propertyCategory
-               category="enumerations">
-         </propertyCategory>
-         <propertyCategory
-               category="documentation">
-         </propertyCategory>
-         <propertyCategory
-               category="facets">
-         </propertyCategory>
-      </propertyContributor>
-   </extension>
-   <extension
-         point="org.eclipse.wst.common.ui.properties.propertyTabs">
-      <propertyTabs
-            contributorId="org.eclipse.wst.xsd.ui.internal.XSDEditor">
-         <propertyTab
-               label="%_UI_LABEL_GENERAL"
-               category="general"
-               id="com.ibm.xmlwebservices.general">
-         </propertyTab>
-         <propertyTab
-               label="%_UI_LABEL_NAMESPACE"
-               category="namespace"
-               afterTab="com.ibm.xmlwebservices.general"
-               id="com.ibm.xmlwebservices.namespace">
-         </propertyTab>
-         <propertyTab
-               label="%_UI_LABEL_OTHER"
-               category="other"
-               id="com.ibm.xmlwebservices.other">
-         </propertyTab>
-         <propertyTab
-               label="%_UI_LABEL_ATTRIBUTES"
-               category="attributes"
-               id="com.ibm.xmlwebservices.attributes">
-         </propertyTab>
-         <propertyTab
-               label="%_UI_LABEL_ENUMERATIONS"
-               category="enumerations"
-               id="com.ibm.xmlwebservices.enumerations">
-         </propertyTab>
-         <propertyTab
-               label="%_UI_LABEL_DOCUMENTATION"
-               category="documentation"
-               id="com.ibm.xmlwebservices.documentation">
-         </propertyTab>
-         <propertyTab
-               label="%_UI_SECTION_ADVANCED_ATTRIBUTES"
-               category="facets"
-               id="com.ibm.xmlwebservices.facets">
-         </propertyTab>
-      </propertyTabs>
-   </extension>
-   
-   <!--
-    <extension point="org.eclipse.wst.xml.uriresolver.catalogContributor">
-     <catalogContributor catalogId="default">
-       <mappingInfo key="http://www.w3.org/2001/XMLSchema" uri="w3c/XMLSchema.xsd"/>
-      </catalogContributor>
-    </extension>
-    -->
- 
-  	<!-- intialize xsd reconcile validator -->
-	 <extension
-         point="org.eclipse.wst.sse.ui.sourcevalidation">
-      <validator
-            scope="total"
-            class="org.eclipse.wst.xsd.ui.reconcile.DelegatingSourceValidatorForXSD"
-            id="org.eclipse.wst.xsd.ui.reconcile.DelegatingSourceValidatorForXSD">
-  	<contentTypeIdentifier
-               id="org.eclipse.wst.xsd.contentmodel.xsdsource">
-            <partitionType
-                  id="org.eclipse.wst.xml.XML_DEFAULT">
-            </partitionType>
-         </contentTypeIdentifier>       
-      </validator>
-   </extension>
-   
-   <extension point="org.eclipse.ui.contexts"> 
- 		<context id="org.eclipse.wst.xsd.ui.text.editor.context"
- 			name="%context.text.editor.xsd.name"
- 			parentId="org.eclipse.ui.textEditorScope"/>
- 	</extension>
- 
- 	<extension point="org.eclipse.ui.commands">
-		<command name="%command.xsd.refactor.rename.element.name"
-			description="%command.xsd.refactor.rename.element.description"
-			categoryId="org.eclipse.ui.category.edit"
-			id="org.eclipse.wst.xsd.ui.refactor.rename.element">
-		</command>
-		<keyBinding keySequence="Alt+Shift+R"
-			contextId="org.eclipse.wst.xsd.ui.text.editor.context"
-			commandId="org.eclipse.wst.xsd.ui.refactor.rename.element"
-			keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration">
-		</keyBinding>
-	</extension>
-	
-	<extension point="org.eclipse.ui.commands">
-		<command name="%command.xsd.refactor.makeElementGlobal.element.name"
-			description="%command.xsd.refactor.makeElementGlobal.element.description"
-			categoryId="org.eclipse.ui.category.edit"
-			id="org.eclipse.wst.xsd.ui.refactor.makeElementGlobal">
-		</command>
-		<keyBinding 
-			contextId="org.eclipse.wst.xsd.ui.text.editor.context"
-			commandId="org.eclipse.wst.xsd.ui.refactor.makeElementGlobal"
-			keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration">
-		</keyBinding>
-	</extension>
-	
-   <extension point="org.eclipse.ui.commands">
-		<command name="%command.xsd.refactor.makeTypeGlobal.element.name"
-			description="%command.xsd.refactor.makeTypeGlobal.element.description"
-			categoryId="org.eclipse.ui.category.edit"
-			id="org.eclipse.wst.xsd.ui.refactor.makeTypeGlobal">
-		</command>
-		<keyBinding 
-			contextId="org.eclipse.wst.xsd.ui.text.editor.context"
-			commandId="org.eclipse.wst.xsd.ui.refactor.makeTypeGlobal"
-			keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration">
-		</keyBinding>
-	</extension>
-   
-    <!--extension
-       point="org.eclipse.ltk.core.refactoring.renameParticipants">
-       <renameParticipant
-			name="%xsd.resource.rename.participant.name"
-			class="org.eclipse.wst.xsd.ui.internal.refactor.rename.XSDResourceRenameParticipant"
-			id="org.eclipse.wst.xsd.ui.refactoring.XSDResourceRenameParticipant">
-			<enablement>
-			  <with
-                  variable="element">
-               <instanceof
-                     value="org.eclipse.core.resources.IResource">
-               </instanceof>
-              </with>
-			</enablement>
-		</renameParticipant>
-    </extension-->
-
-  <!-- 
-  	   The following extension to the file context menu is temporary until resource 
-       navigator will provide allow to extend refactor menu        
-  -->                                               
-<!--
-  <extension point="org.eclipse.ui.popupMenus">
-      <objectContribution
-          objectClass="org.eclipse.core.resources.IFile"
-          nameFilter="*.xsd"
-          id="org.wst.xsd.ui.rename">
-         <menu id="refactorXSDResource" path="additions" label="%refactoring.menu.label">
-         	<separator name="refactor"/>
-         </menu>
-         <action
-             label="%refactoring.renameAction.label"
-             menubarPath="refactorXSDResource/refactor"
-             class="org.eclipse.wst.xsd.ui.internal.refactor.actions.RenameResourceActionDelegate"
-             enablesFor="1"
-             id="org.eclipse.wst.xsd.ui.refactoring.actions.RenameResource">
-         </action>
-      </objectContribution>
-   </extension>
-   -->
-   
-</plugin>
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/AbstractXSDDataTypeValueExtension.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/AbstractXSDDataTypeValueExtension.java
deleted file mode 100644
index d80261d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/AbstractXSDDataTypeValueExtension.java
+++ /dev/null
@@ -1,195 +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.xsd.ui.internal;
-import java.util.Vector;
-
-import org.eclipse.wst.xml.core.internal.contentmodel.CMNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.extension.DataTypeValueExtension;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-  /**
-   * This class is used to extend the ModelQuery behaviour so that we can contribute our own
-   * 'allowed values' for attributes or elements (e.g. the 'type' attribute).
-   */
-  public abstract class AbstractXSDDataTypeValueExtension implements DataTypeValueExtension
-  { 
-    protected ModelQuery modelQuery;
-
-    public int getType()
-    {
-      return DATA_TYPE_VALUE_EXTENSION;
-    }   
-
-    public abstract String getId();
-
-    public AbstractXSDDataTypeValueExtension(ModelQuery modelQuery)
-    {
-      this.modelQuery = modelQuery;
-      if (modelQuery != null && modelQuery.getExtensionManager() != null)
-      {
-        modelQuery.getExtensionManager().addExtension(this);
-      }
-    }  
-
-    public void dispose()
-    {
-      if (modelQuery != null && modelQuery.getExtensionManager() != null)
-      {
-        modelQuery.getExtensionManager().removeExtension(this);
-      }
-    }
-
-    protected abstract XSDSchema getEnclosingXSDSchema(Element element);  
-
-
-	protected TypesHelper createTypesHelper(XSDSchema schema)
-	{ 
-		return new TypesHelper(schema);		
-	}
-	
-    public java.util.List getDataTypeValues(Element element, CMNode cmNode)
-    {
-      java.util.List list = new Vector();
-      if (cmNode.getNodeType() == CMNode.ATTRIBUTE_DECLARATION)
-      {
-        TypesHelper typesHelper = createTypesHelper(getEnclosingXSDSchema(element));
-        String name = cmNode.getNodeName();
-        String currentElementName = element.getLocalName();
-        Node parentNode = element.getParentNode();
-        String parentName = "";
-        if (parentNode != null)
-        {
-          parentName = parentNode.getLocalName();
-        }
-
-        if (checkName(name, "type"))
-        {
-          if (checkName(currentElementName, "attribute"))
-          {
-            list = typesHelper.getBuiltInTypeNamesList();
-            list.addAll(typesHelper.getUserSimpleTypeNamesList());
-          }
-          else if (checkName(currentElementName, "element"))
-          {
-            list = typesHelper.getBuiltInTypeNamesList2();
-            list.addAll(typesHelper.getUserSimpleTypeNamesList());
-            list.addAll(typesHelper.getUserComplexTypeNamesList());
-          }
-        }
-        else if (checkName(name, "itemType"))
-        {
-          if (checkName(currentElementName, "list"))
-          {
-            if (checkName(parentName, "simpleType"))
-            {
-              list = typesHelper.getBuiltInTypeNamesList();
-              list.addAll(typesHelper.getUserSimpleTypeNamesList());
-            }
-          }
-        }
-        else if (checkName(name, "memberTypes"))
-        {
-          if (checkName(currentElementName, "union"))
-          {
-            if (checkName(parentName, "simpleType"))
-            {
-              list = typesHelper.getBuiltInTypeNamesList();
-              list.addAll(typesHelper.getUserSimpleTypeNamesList());
-            }
-          }
-        }
-        else if (checkName(name, "base"))
-        {
-          if (checkName(currentElementName, "restriction"))
-          {
-            if (checkName(parentName, "simpleType"))
-            {
-              list = typesHelper.getBuiltInTypeNamesList();
-              list.addAll(typesHelper.getUserSimpleTypeNamesList());
-            }
-            else if (checkName(parentName, "simpleContent"))
-            {
-              list = typesHelper.getBuiltInTypeNamesList();
-              list.addAll(typesHelper.getUserComplexTypeNamesList());
-            }
-            else if (checkName(parentName, "complexContent"))
-            {
-              list = typesHelper.getBuiltInTypeNamesList();
-              list.addAll(typesHelper.getUserComplexTypeNamesList());
-            }
-          }
-          else if (checkName(currentElementName, "extension"))
-          {
-            if (checkName(parentName, "simpleContent"))
-            {
-              list = typesHelper.getBuiltInTypeNamesList();
-              list.addAll(typesHelper.getUserComplexTypeNamesList());
-            }
-            else if (checkName(parentName, "complexContent"))
-            {
-              list = typesHelper.getBuiltInTypeNamesList();
-              list.addAll(typesHelper.getUserComplexTypeNamesList());
-            }
-          }
-        }
-        else if (checkName(name, "ref"))
-        {
-          if (checkName(currentElementName, "element"))
-          {
-            list = typesHelper.getGlobalElements();
-          }
-          else if (checkName(currentElementName, "attribute"))
-          {
-            list = typesHelper.getGlobalAttributes();
-          }
-          else if (checkName(currentElementName, "attributeGroup"))
-          {
-            list = typesHelper.getGlobalAttributeGroups();
-          }
-          else if (checkName(currentElementName, "group"))
-          {
-            list = typesHelper.getModelGroups();
-          }
-        }
-        else if (checkName(name, "substitutionGroup"))
-        {
-          if (checkName(currentElementName, "element"))
-          {
-            list = typesHelper.getGlobalElements();
-          }
-        }
-/*        else if (checkName(name, "refer"))
-        {
-          if (checkName(currentElementName, "keyref"))
-          {
-            list = typesHelper.getKeys();
-          }
-        } */
-
-
-      }
-      return list;
-    }
-
-    protected boolean checkName(String localName, String token)
-    {
-      if (localName != null && localName.trim().equals(token))
-      {
-        return true;
-      }
-      return false;
-    }
-  }
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/AbstractXSDModelQueryContributor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/AbstractXSDModelQueryContributor.java
deleted file mode 100644
index 0edc86a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/AbstractXSDModelQueryContributor.java
+++ /dev/null
@@ -1,79 +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.xsd.ui.internal;
-import java.net.URL;
-import java.util.Vector;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.core.internal.modelquery.ModelQueryUtil;
-import org.w3c.dom.Document;
-
-public abstract class AbstractXSDModelQueryContributor
-{ 
-  protected AbstractXSDDataTypeValueExtension xsdDataTypeValueExtension;
-
-  public void setModel(XMLModel model)
-  {                    
-    // remove our old DataTypeValueExtension
-    //
-    if (xsdDataTypeValueExtension != null)
-    {
-      xsdDataTypeValueExtension.dispose();
-      xsdDataTypeValueExtension = null;
-    }
-
-    setImplicitGrammar(model.getDocument());
-
-    // add a new DataTypeValueExtension
-    //                                                          
-    ModelQuery modelQuery = ModelQueryUtil.getModelQuery(model.getDocument());
-    xsdDataTypeValueExtension = createXSDDataTypeValueExtension(modelQuery);
-  }
-  
-  protected void setImplicitGrammar(Document document)
-  {
-//    DOMExtension domExtension = DOMExtensionProviderRegistry.getInstance().getDOMExtension(document);
-//    if (domExtension != null)
-//    {
-      String uri = "platform:/plugin/org.eclipse.wst.xsd.ui/w3c/schemaForCodeAssist.xsd";
-      uri = resolvePlatformUrl(uri);
-      if (uri != null)
-      {
-        Vector list = new Vector();
-        NamespaceInfo info = new NamespaceInfo("http://www.w3.org/2001/XMLSchema", "xsd", uri);
-        info.setProperty("isImplied", "true");
-        list.add(info);
-//        domExtension.setImplictNamespaceInfoList(list);
-      }
-//    }
-  } 
-
-  protected static String resolvePlatformUrl(String urlspec)
-  {
-    String result = null;
-    try
-    {
-      urlspec = urlspec.replace('\\', '/');
-      URL url = new URL(urlspec);
-      URL resolvedURL = Platform.resolve(url);
-      result = resolvedURL.toString();
-    }
-    catch (Exception e)
-    {
-    }
-    return result;
-  }
-
-  public abstract AbstractXSDDataTypeValueExtension createXSDDataTypeValueExtension(ModelQuery modelQuery);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDActionBarContributor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDActionBarContributor.java
deleted file mode 100644
index c9e8790..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDActionBarContributor.java
+++ /dev/null
@@ -1,201 +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.xsd.ui.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.actions.RetargetAction;
-import org.eclipse.ui.part.MultiPageEditorActionBarContributor;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.ITextEditorActionConstants;
-import org.eclipse.ui.texteditor.RetargetTextEditorAction;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-import org.eclipse.wst.xsd.ui.internal.actions.ISchemaEditorActionConstants;
-import org.eclipse.wst.xsd.ui.internal.actions.ReloadDependenciesAction;
-import org.eclipse.wst.xsd.ui.internal.refactor.actions.RefactorActionGroup;
-
-public class XSDActionBarContributor extends MultiPageEditorActionBarContributor
-{
-  protected XSDEditor xsdEditor;
-  protected XSDTextEditor textEditor;
-
-  protected ReloadDependenciesAction reloadDependenciesAction;
-  
-  protected List fPartListeners= new ArrayList();
-
-  protected RetargetAction retargetReloadDependenciesAction;
-  private RetargetTextEditorAction renameElementAction = null;
-  private IMenuManager refactorMenu = null;
- 
-  /**
-   * Constructor for XSDActionBarContributor.
-   */
-  public XSDActionBarContributor()
-  {
-    super();
-
-    // Reload Dependencies
-    reloadDependenciesAction = new ReloadDependenciesAction(XSDEditorPlugin.getXSDString("_UI_MENU_RELOAD_DEPENDENCIES"));
-    retargetReloadDependenciesAction = new RetargetAction(ISchemaEditorActionConstants.RETARGET_RELOAD_DEPENDENCIES_ACTION_ID, XSDEditorPlugin.getXSDString("_UI_MENU_RELOAD_DEPENDENCIES"));
-    retargetReloadDependenciesAction.setToolTipText(XSDEditorPlugin.getXSDString("_UI_MENU_RELOAD_DEPENDENCIES_TOOLTIP"));
-    retargetReloadDependenciesAction.setImageDescriptor(
-        ImageDescriptor.createFromFile(XSDEditorPlugin.getPlugin().getClass(), "icons/reloadgrammar.gif"));
-    fPartListeners.add(retargetReloadDependenciesAction);
-    
-    ResourceBundle bundle = Platform.getResourceBundle(XSDEditorPlugin.getPlugin().getBundle());
-	renameElementAction = new RetargetTextEditorAction(bundle, ISchemaEditorActionConstants.RETARGET_RENAME_ELEMENT_ACTION_ID + StructuredTextEditorActionConstants.DOT);
-	renameElementAction.setActionDefinitionId("org.eclipse.wst.xsd.ui.refactor.rename.element"); // TODO: add to contstants command id
-		
-	// the refactor menu, add the menu itself to add all refactor actions
-	refactorMenu = new MenuManager("Refactor", RefactorActionGroup.MENU_ID); //TODO: externalize string
-	refactorMenu.add(this.renameElementAction);
-  }
-
-  protected void updateActions()
-  {
-    if (xsdEditor != null && xsdEditor.getCurrentPageType().equals(XSDEditorPlugin.GRAPH_PAGE))
-    {
-      IAction deleteAction = xsdEditor.getGraphViewer().getComponentViewer().getMenuListener().getDeleteAction();
-      getActionBars().setGlobalActionHandler(ActionFactory.DELETE.getId(), deleteAction);
-
-      IAction printGraphAction = xsdEditor.getGraphViewer().getPrintGraphAction();
-      getActionBars().setGlobalActionHandler(ActionFactory.PRINT.getId(), printGraphAction);
-    }
-    else
-    {
-      getActionBars().setGlobalActionHandler(ActionFactory.DELETE.getId(), null);      
-      // always enable print regardless of whether we are on source or design
-      updateAction(ActionFactory.PRINT.getId(), ITextEditorActionConstants.PRINT, true);
-    }
-  }
-      
-  public void setActivePage(IEditorPart activeEditor)
-  {
-    updateActions();
-    getActionBars().updateActionBars();
-  }
-
-  protected void updateAction(String globalActionId, String textEditorActionId, boolean enable)
-  {
-    getActionBars().setGlobalActionHandler(globalActionId,
-                                      enable ? getAction(textEditor, textEditorActionId) :
-                                               null);
-  }
-
-  /**
-   * Returns the action registed with the given text editor.
-   * @return IAction or null if editor is null.
-   */
-  protected IAction getAction(ITextEditor editor, String actionID)
-  {
-    try
-    {
-      return (editor == null ? null : editor.getAction(actionID));
-    }
-    catch (Exception e)
-    {
-      return null;
-    }
-  }
-
-  private IMenuManager editMenu;
-
-  public void addToMenu(IMenuManager menuManager)
-  {
-  	//menuManager.insertAfter(IWorkbenchActionConstants.M_EDIT, refactorMenu);
-    editMenu = menuManager.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT);
-
-    MenuManager treeMenu = new MenuManager(XSDEditorPlugin.getXSDString("_UI_MENU_XSD_EDITOR"));
-    menuManager.insertAfter(IWorkbenchActionConstants.MB_ADDITIONS, treeMenu);
-
-    treeMenu.add(new Separator("group1"));
-//  Add retarget actions
-
-    treeMenu.add(retargetReloadDependenciesAction);
-
-    treeMenu.add(new Separator("group2"));
-  }
-
-
-public void addToToolBar(IToolBarManager toolBarManager)
-  {
-    toolBarManager.add(new Separator("XMLSchema.2"));
-//  Add retarget actions
-    toolBarManager.add(retargetReloadDependenciesAction);
-
-    toolBarManager.add(new Separator("XMLSchema.1"));
-
-    toolBarManager.add(new Separator());
-  }
-  
-  public void contributeToToolBar(IToolBarManager toolBarManager)
-  {
-    addToToolBar(toolBarManager);
-  }
-  
-  public void contributeToMenu(IMenuManager menuManager)
-  {
-    addToMenu(menuManager);
-  }
-  
-  /**
-   * @see org.eclipse.ui.IEditorActionBarContributor#setActiveEditor(IEditorPart)
-   */
-  public void setActiveEditor(IEditorPart targetEditor)
-  {
-    super.setActiveEditor(targetEditor);
-
-    if (targetEditor instanceof XSDEditor)
-    {
-      xsdEditor = (XSDEditor) targetEditor;
-      reloadDependenciesAction.setEditor((XSDEditor)targetEditor);
-
-      textEditor = ((XSDEditor)targetEditor).getXSDTextEditor();
-      if (textEditor != null)
-      {      
-      	 
-      	renameElementAction.setAction(getAction(textEditor, ISchemaEditorActionConstants.RETARGET_RENAME_ELEMENT_ACTION_ID));
-        updateActions();  
-        getActionBars().updateActionBars();
-      }
-    }
-  }
-
-  public void init(IActionBars bars, IWorkbenchPage page)
-  {
-    Iterator e = fPartListeners.iterator();
-    while (e.hasNext())
-    {
-      page.addPartListener((RetargetAction) e.next());
-    }
-
-    // register actions that have a dynamic editor. 
-
-    bars.setGlobalActionHandler(ISchemaEditorActionConstants.RETARGET_RELOAD_DEPENDENCIES_ACTION_ID, reloadDependenciesAction);
-
-    super.init(bars, page);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDContentOutlinePage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDContentOutlinePage.java
deleted file mode 100644
index 8206b70..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDContentOutlinePage.java
+++ /dev/null
@@ -1,382 +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.xsd.ui.internal;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
-import org.eclipse.wst.xsd.ui.internal.actions.OpenSchemaAction;
-import org.eclipse.wst.xsd.ui.internal.provider.CategoryAdapter;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.w3c.dom.Element;
-
-public class XSDContentOutlinePage extends ContentOutlinePage
-{
-  protected XSDEditor xsdEditor;
-  protected int level = 0;
-  protected Object model;
-  protected ITreeContentProvider contentProvider;
-  protected ILabelProvider labelProvider;
-  protected XSDSelectionManager selectionManager;
-  protected SelectionManagerSelectionChangeListener selectionManagerSelectionChangeListener = new SelectionManagerSelectionChangeListener();
-  protected TreeSelectionChangeListener treeSelectionChangeListener = new TreeSelectionChangeListener();
-  XSDTextEditor xsdTextEditor;
-  XSDMenuListener menuListener;
-
-  /**
-   *  
-   */
-  public XSDContentOutlinePage(XSDTextEditor xsdTextEditor)
-  {
-    super();
-    this.xsdTextEditor = xsdTextEditor;
-  }
-
-  public void setModel(Object newModel)
-  {
-    model = newModel;
-  }
-
-  public void setContentProvider(ITreeContentProvider contentProvider)
-  {
-    this.contentProvider = contentProvider;
-  }
-
-  public void setLabelProvider(ILabelProvider labelProvider)
-  {
-    this.labelProvider = labelProvider;
-  }
-
-  // expose
-  public TreeViewer getTreeViewer()
-  {
-    return super.getTreeViewer();
-  }
-
-  public void createControl(Composite parent)
-  {
-    super.createControl(parent);
-    getTreeViewer().setContentProvider(contentProvider);
-    getTreeViewer().setLabelProvider(labelProvider);
-    getTreeViewer().setInput(model);
-    getTreeViewer().addSelectionChangedListener(this);
-    MenuManager menuManager = new MenuManager("#popup");//$NON-NLS-1$
-    menuManager.setRemoveAllWhenShown(true);
-    Menu menu = menuManager.createContextMenu(getTreeViewer().getControl());
-    getTreeViewer().getControl().setMenu(menu);
-    menuListener = new XSDMenuListener(xsdTextEditor.getXSDEditor().getSelectionManager());
-//  menuListener.setSelectionProvider(getTreeViewer());
-    menuManager.addMenuListener(menuListener);
-    
-    // enable popupMenus extension
-    getSite().registerContextMenu("org.eclipse.wst.xsd.ui.popup.outline", menuManager, xsdTextEditor.getXSDEditor().getSelectionManager());
-    
-    setSelectionManager(xsdTextEditor.getXSDEditor().getSelectionManager());
-    // cs... why are we doing this from the outline view?
-    //
-    //xsdTextEditor.getXSDEditor().getSelectionManager().setSelection(new
-    // StructuredSelection(xsdTextEditor.getXSDSchema()));
-    XSDKeyListener keyListener = new XSDKeyListener(getTreeViewer(), menuListener);
-    getTreeViewer().getControl().addKeyListener(keyListener);
-    // drill down from outline view
-    getTreeViewer().getControl().addMouseListener(new MouseAdapter()
-    {
-      public void mouseDoubleClick(MouseEvent e)
-      {
-        ISelection iSelection = getTreeViewer().getSelection();
-        if (iSelection instanceof StructuredSelection)
-        {
-          StructuredSelection selection = (StructuredSelection)iSelection;
-          Object obj = selection.getFirstElement();
-          if (obj instanceof XSDConcreteComponent)
-          {
-            XSDConcreteComponent comp = (XSDConcreteComponent)obj;
-            if (comp.getContainer() instanceof XSDSchema)
-            {
-              xsdTextEditor.getXSDEditor().getGraphViewer().setInput(obj);
-            }
-          }
-        }
-
-      }
-    });
-  }
-  class XSDKeyListener extends KeyAdapter
-  {
-    TreeViewer viewer;
-    XSDMenuListener menuListener;
-
-    public XSDKeyListener(TreeViewer viewer, XSDMenuListener menuListener)
-    {
-      super();
-      this.viewer = viewer;
-      this.menuListener = menuListener;
-    }
-
-    /**
-     * @see org.eclipse.swt.events.KeyAdapter#keyReleased(KeyEvent)
-     */
-    public void keyReleased(KeyEvent e)
-    {
-      if (e.character == SWT.DEL)
-      {
-        menuListener.getDeleteAction().run();
-      }
-      else if (e.keyCode == SWT.F3) // open editor on any
-                                    // include/import/redefine
-      {
-        if (e.widget instanceof Tree)
-        {
-          Tree tree = (Tree) e.widget;
-          TreeItem[] selection = tree.getSelection();
-          if (selection.length > 0)
-          {
-            if (selection[0].getData() instanceof XSDSchemaDirective)
-            {
-              XSDSchemaDirective comp = (XSDSchemaDirective) selection[0].getData();
-              OpenSchemaAction openSchema = new OpenSchemaAction(XSDEditorPlugin.getXSDString("_UI_ACTION_OPEN_SCHEMA"), comp);
-              openSchema.run();
-            }
-          }
-        }
-      }
-    }
-  }
-
-  public void setExpandToLevel(int i)
-  {
-    level = i;
-  }
-
-  public void setInput(Object value)
-  {
-    getTreeViewer().setInput(value);
-    getTreeViewer().expandToLevel(level);
-  }
-
-  //	public ISelection getSelection()
-  //	{
-  //		if (getTreeViewer() == null)
-  //			return StructuredSelection.EMPTY;
-  //		return getTreeViewer().getSelection();
-  //	}
-  public void setSelectionManager(XSDSelectionManager newSelectionManager)
-  {
-    TreeViewer treeViewer = getTreeViewer();
-    // disconnect from old one
-    if (selectionManager != null)
-    {
-      selectionManager.removeSelectionChangedListener(selectionManagerSelectionChangeListener);
-      treeViewer.removeSelectionChangedListener(treeSelectionChangeListener);
-    }
-    selectionManager = newSelectionManager;
-    // connect to new one
-    if (selectionManager != null)
-    {
-      selectionManager.addSelectionChangedListener(selectionManagerSelectionChangeListener);
-      treeViewer.addSelectionChangedListener(treeSelectionChangeListener);
-    }
-  }
-  class SelectionManagerSelectionChangeListener implements ISelectionChangedListener
-  {
-    public void selectionChanged(SelectionChangedEvent event)
-    {
-      if (event.getSelectionProvider() != getTreeViewer())
-      {
-        getTreeViewer().setSelection(event.getSelection(), true);
-      }
-    }
-  }
-  class TreeSelectionChangeListener implements ISelectionChangedListener
-  {
-    public void selectionChanged(SelectionChangedEvent event)
-    {
-      if (selectionManager != null)
-      {
-        ISelection selection = event.getSelection();
-        if (selection instanceof IStructuredSelection)
-        {
-          IStructuredSelection structuredSelection = (IStructuredSelection) selection;
-          Object o = structuredSelection.getFirstElement();
-          // TODO ...
-          // we need to implement a selectionManagerMapping extension point
-          // so that extensions can specify how they'd like to map view objects
-          // to selection objects
-          //                                        
-          if (o instanceof Element)
-          {
-            try
-            {
-              Object modelObject = xsdTextEditor.getXSDSchema().getCorrespondingComponent((Element) o);
-              if (modelObject != null)
-              {
-                o = modelObject;
-              }
-            }
-            catch (Exception e)
-            {
-            }
-          }
-          else if (o instanceof CategoryAdapter)
-          {
-            // todo... we need to ensure we eliminate the propagation 
-            // of 'view' specific objects into the SelectionManager.                     
-            // We need to do some work to ensure all views utilize the 'Category' model object  
-            // so we can get rid of this CategoryAdapter class.
-//             CategoryAdapter adapter = (CategoryAdapter) o;
-//             o = adapter.getXSDSchema();
-          }
-          if (o != null)
-          {
-            selectionManager.setSelection(new StructuredSelection(o), getTreeViewer());
-//          selectionManager.selectionChanged(new SelectionChangedEvent(getTreeViewer(),new StructuredSelection(o)));
-          }
-          else
-          {
-            //            selectionManager.setSelection(new StructuredSelection(),
-            // getTreeViewer());
-          }
-        }
-      }
-    }
-  }
-  FilterAction referenceAction, inheritedAction;
-
-  public void setActionBars(IActionBars actionBars)
-  {
-    super.setActionBars(actionBars);
-    // Uncomment to add sort action
-    //    SortAction sortAction = new SortAction();
-    //
-    //    actionBars.getToolBarManager().add(sortAction);
-    //    sortAction.setChecked(false);
-    referenceAction = new FilterAction(new ReferenceFilter("Reference Content"), XSDEditorPlugin.getXSDString("_UI_OUTLINE_SHOW_REFERENCES"), ImageDescriptor.createFromFile(XSDEditorPlugin
-        .getPlugin().getClass(), "icons/XSDElementRef.gif"));
-    boolean initialRef = xsdTextEditor.getXSDModelAdapterFactory().getShowReferences();
-    referenceAction.setChecked(initialRef);
-    inheritedAction = new FilterAction(new ReferenceFilter("Inherited Content"), XSDEditorPlugin.getXSDString("_UI_OUTLINE_SHOW_INHERITED"), ImageDescriptor.createFromFile(XSDEditorPlugin.getPlugin()
-        .getClass(), "icons/XSDComplexContent.gif"));
-    boolean initialInherited = xsdTextEditor.getXSDModelAdapterFactory().getShowReferences();
-    IMenuManager menu = actionBars.getMenuManager();
-    menu.add(referenceAction);
-    menu.add(inheritedAction);
-  }
-
-  private void updateActions(Action current)
-  {
-    if (referenceAction.isChecked())
-    {
-      xsdTextEditor.getXSDModelAdapterFactory().setShowReferences(true);
-    }
-    else
-    {
-      xsdTextEditor.getXSDModelAdapterFactory().setShowReferences(false);
-    }
-    if (inheritedAction.isChecked())
-    {
-      xsdTextEditor.getXSDModelAdapterFactory().setShowInherited(true);
-    }
-    else
-    {
-      xsdTextEditor.getXSDModelAdapterFactory().setShowInherited(false);
-    }
-  }
-  private Sorter sorter = new Sorter();
-  public class Sorter extends org.eclipse.jface.viewers.ViewerSorter
-  {
-  }
-  public class SortAction extends Action
-  {
-    public SortAction()
-    {
-      super("Sort", ImageDescriptor.createFromFile(XSDEditorPlugin.getPlugin().getClass(), "icons/sort.gif"));
-    }
-
-    public void run()
-    {
-      getTreeViewer().getControl().setVisible(false);
-      Object[] expandedElements = getTreeViewer().getExpandedElements();
-      getTreeViewer().setSorter(isChecked() ? sorter : null);
-      Object input = getTreeViewer().getInput();
-      getTreeViewer().setInput(input);
-      getTreeViewer().setExpandedElements(expandedElements);
-      getTreeViewer().getControl().setVisible(true);
-    }
-
-    public void setChecked(boolean checked)
-    {
-      super.setChecked(checked);
-      setToolTipText(checked ? XSDEditorPlugin.getXSDString("_UI_OUTLINE_DO_NOT_SORT") : XSDEditorPlugin.getXSDString("_UI_OUTLINE_SORT"));
-    }
-  }
-  public class FilterAction extends Action
-  {
-    ViewerFilter filter;
-
-    public FilterAction(ViewerFilter filter, String label, ImageDescriptor image)
-    {
-      super(label, image);
-      this.filter = filter;
-      setChecked(false);
-    }
-
-    public void run()
-    {
-      updateActions(this);
-      if (isChecked())
-      {
-        getTreeViewer().resetFilters();
-        getTreeViewer().addFilter(filter);
-      }
-      else
-      {
-        getTreeViewer().removeFilter(filter);
-      }
-    }
-  }
-  class ReferenceFilter extends ViewerFilter // Dummy filter
-  {
-    public ReferenceFilter(String elementTag)
-    {
-      this.elementTag = elementTag;
-    }
-    protected String elementTag;
-
-    public boolean select(Viewer viewer, Object parentElement, Object element)
-    {
-      return true;
-    }
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditor.java
deleted file mode 100644
index c44e91f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditor.java
+++ /dev/null
@@ -1,1172 +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.xsd.ui.internal;
-
-import java.util.ArrayList;
-import java.util.EventObject;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.command.BasicCommandStack;
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.emf.common.command.CommandStackListener;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.internal.editors.text.JavaFileEditorInput;
-import org.eclipse.ui.views.properties.PropertySheet;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertySheetPageContributor;
-import org.eclipse.wst.sse.core.INodeAdapter;
-import org.eclipse.wst.sse.core.INodeNotifier;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.internal.SSECorePlugin;
-import org.eclipse.wst.sse.core.undo.IStructuredTextUndoManager;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.document.XMLModelImpl;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphViewer;
-//import org.eclipse.wst.xsd.ui.internal.graph.model.XSDModelAdapterFactory;
-import org.eclipse.wst.xsd.ui.internal.util.OpenOnSelectionHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDPackage;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.impl.XSDSchemaImpl;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.ProcessingInstruction;
-
-// public class XSDEditor extends StructuredTextMultiPageEditorPart
-public class XSDEditor extends XSDMultiPageEditorPart implements ITabbedPropertySheetPageContributor
-{
-  protected XSDTextEditor textEditor;
-  IFile resourceFile;
-  XSDSelectionManager xsdSelectionManager;
-
-  private IStructuredModel result;
-  private XMLModelImpl model;
-
-  public XSDEditor()
-  {
-    super();
-    xsdSelectionManager = new XSDSelectionManager();
-  }
-
-  InternalPartListener partListener = new InternalPartListener(this);
-  
-  // show outline view - defect 266116
-  public void init(IEditorSite site, IEditorInput editorInput) throws PartInitException
-  {
-    super.init(site, editorInput);
-    
-    IWorkbenchWindow dw=PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-    IWorkbenchPage page=dw.getActivePage();
-    getSite().getPage().addPartListener(partListener);
-    try
-    {
-      if (page != null)
-      {
-//      page.showView("org.eclipse.ui.views.ContentOutline");
-        page.showView("org.eclipse.ui.views.PropertySheet");
-      }
-    } catch (PartInitException e) 
-    {
-//       e.printStackTrace();
-    }      
-   }
-  
-  // For team support
-  //  protected PropertyDirtyChangeListener propertyChangeListener;
-
-  /**
-   * Creates the pages of this multi-page editor.
-   * <p>
-   * Subclasses of <code>MultiPageEditor</code> must implement this method.
-   * </p>
-   */
-  protected void createPages()
-  {
-    try
-    {
-      if (!loadFile())
-        return;
-
-      // source page MUST be created before design page, now
-      createSourcePage();
-
-      addSourcePage();
-      buildXSDModel();
-
-      // comment this line out to hide the graph page 
-      // 
-      createAndAddGraphPage();
-
-      int pageIndexToShow = getDefaultPageTypeIndex();
-      setActivePage(pageIndexToShow);
-      
-      addCommandStackListener();
-      
-      XSDEditorPlugin.getPlugin().getPreferenceStore().addPropertyChangeListener(preferenceStoreListener);
-    }
-    catch (PartInitException exception)
-    {
-      throw new SourceEditingRuntimeException(SSECorePlugin.getResourceString("An_error_has_occurred_when1_ERROR_")); //$NON-NLS-1$ = "An error has occurred when initializing the input for the the editor's source page."
-    }
-  }
-
-  public String[] getPropertyCategories()
-  {
-    return new String[] { "general", "namespace", "other", "attributes", "documentation", "facets" }; //$NON-NLS-1$
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySheetPageContributor#getContributorId()
-	 */ 
-  public String getContributorId()
-	{
-    return "org.eclipse.wst.xsd.ui.internal.XSDEditor";
-    //return getSite().getId();
-  }
-
-  protected CommandStackListener commandStackListener;
-  protected void addCommandStackListener()
-  {
-    if (commandStackListener == null)
-    {
-      IStructuredTextUndoManager undoManager = getModel().getUndoManager();
-        commandStackListener = new CommandStackListener()
-        {
-          /**
-           * @see org.eclipse.emf.common.command.CommandStackListener#commandStackChanged(EventObject)
-           */
-          public void commandStackChanged(EventObject event)
-          {
-            Object obj = event.getSource();
-            if (obj instanceof BasicCommandStack)
-            {
-              BasicCommandStack stack = (BasicCommandStack) obj;
-              Command recentCommand = stack.getMostRecentCommand();
-              Command redoCommand = stack.getRedoCommand();
-              Command undoCommand = stack.getUndoCommand();
-              if (recentCommand == redoCommand)
-              {
-                // there must have been an undo reset info tasks 
-                resetInformationTasks();
-              }
-            }
-          }
-        };
-
-//TODO WTP Port        undoManager.getCommandStack().addCommandStackListener(commandStackListener);
-      
-    }
-  } 
-
-  protected void pageChange(int arg)
-  {
-    super.pageChange(arg);
-  }
-
-  protected void removeCommandStackListener()
-  {
-    if (commandStackListener != null)
-    {
-      IStructuredTextUndoManager undoManager = getModel().getUndoManager();
-//TODO WTP Port      undoManager.getCommandStack().removeCommandStackListener(commandStackListener);
-    }
-  }
-
-  // This is from the IValidateEditEditor interface
-/*  public void undoChange()
-  {
-    StructuredTextUndoManager undoManager = textEditor.getModel().getUndoManager();   
-    undoManager.undo();
-    // Make the editor clean
-    textEditor.getModel().setDirtyState(false);
-  } */
-
-  private class PreferenceStoreListener implements IPropertyChangeListener
-  {
-    /**
-     * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(PropertyChangeEvent)
-     */
-    public void propertyChange(PropertyChangeEvent event)
-    {
-    }
-  }
-
-  protected IPropertyChangeListener preferenceStoreListener = new PreferenceStoreListener();
-
-  protected int getDefaultPageTypeIndex()
-  {
-    int pageIndex = sourcePageIndex;
-    
-    if (XSDEditorPlugin.getPlugin().getDefaultPage().equals(XSDEditorPlugin.GRAPH_PAGE))
-    {
-      if (graphPageIndex != -1)
-        pageIndex = graphPageIndex;
-    }
-    
-    return pageIndex;
-  }
-      
-	int currentPage = -1;      
-	public String getCurrentPageType()
-	{
-		// should update pref. for valid pages
-		if (getActivePage() != -1)
-		{
-			currentPage = getActivePage();
-		}
-		if (currentPage == graphPageIndex)
-		{
-			return XSDEditorPlugin.GRAPH_PAGE;
-		}
-		else
-		{
-			return XSDEditorPlugin.SOURCE_PAGE;
-    }
-	}
-	
-	public Object getActivePart()
-  {
-		return getSite().getWorkbenchWindow().getActivePage().getActivePart();	
-	}
-
-  public void dispose()
-  {
-//    propertyChangeListener.dispose();
-    removeCommandStackListener();
-    
-    XSDEditorPlugin.getPlugin().setDefaultPage(getCurrentPageType());
-    XSDEditorPlugin.getPlugin().getPreferenceStore().removePropertyChangeListener(preferenceStoreListener);
-    
-    getSite().getPage().removePartListener(partListener);
-
-    super.dispose();
-  }
-
-  protected boolean loadFile()
-  {
-    Object input = getEditorInput();
-
-    if (input instanceof IFileEditorInput)
-    {
-      resourceFile = ((IFileEditorInput) input).getFile();
-    }
-    else if (input instanceof JavaFileEditorInput)
-    {
-      IPath path = ((JavaFileEditorInput)input).getPath(input);
-      String ext = path.getFileExtension();
-      if (ext != null && ext.equals("xsd"))
-      {
-        return true;
-      }
-      return false;
-    }
-    else
-    {
-//      XSDEditorPlugin.getPlugin().getMsgLogger().write("###Error...XSDEditor::createPages() .. Can't find input..Exiting..");
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Method openOnGlobalReference.
-   * The comp argument is a resolved xsd schema object from another file.  This is created and called from another
-   * schema model to allow F3 navigation to open a new editor and choose the referenced object within that editor context
-   * @param comp
-   */
-  public void openOnGlobalReference(XSDConcreteComponent comp)
-  {
-    openOnSelectionHelper.openOnGlobalReference(comp);
-  }
-  
-  protected OpenOnSelectionHelper openOnSelectionHelper;
-
-  public OpenOnSelectionHelper getOpenOnSelectionHelper()
-  {
-    return openOnSelectionHelper;
-  }
-  
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.XSDMultiPageEditorPart#createTextEditor()
-   */
-  protected StructuredTextEditor createTextEditor()
-  {
-    return new XSDTextEditor(this);
-  }
-
-  /*
-   * @see StructuredTextMultiPageEditorPart#createSourcePage()
-   */
-  protected void createSourcePage() throws PartInitException
-  {
-    super.createSourcePage();
-    
-    textEditor = (XSDTextEditor) getTextEditor();
-
-		openOnSelectionHelper = new OpenOnSelectionHelper(textEditor);
-  }
- 
-  int sourcePageIndex = -1;
-  /**
-   * Adds the source page of the multi-page editor.
-   */
-  protected void addSourcePage() throws PartInitException {
-  
-    sourcePageIndex = addPage(textEditor, getEditorInput());
-    setPageText(sourcePageIndex, XSDEditorPlugin.getXSDString("_UI_TAB_SOURCE"));
-
-    // defect 223043 ... do textEditor.setModel() here instead of in createSourcePage()
-		// the update's critical, to get viewer selection manager and highlighting to work
-    IEditorInput editorInput = getEditorInput();
-    if (editorInput instanceof IFileEditorInput)
-    {
-      textEditor.setModel((IFileEditorInput)getEditorInput());
-    }
-    else
-    {
-//      textEditor.setModel(editorInput);
-    }
-    textEditor.update();
-		firePropertyChange(PROP_TITLE);
-  }                       
-
-  int graphPageIndex = -1;            
-  XSDGraphViewer graphViewer;
-
-  /**
-   * Creates the graph page and adds it to the multi-page editor.
-   */
-  protected void createAndAddGraphPage() throws PartInitException 
-  {                         
-    graphViewer = new XSDGraphViewer(this);                              
-    graphViewer.setSchema(xsdSchema);
-    Control graphControl = graphViewer.createControl(getContainer());
-    graphPageIndex = addPage(graphControl);
-    setPageText(graphPageIndex, XSDEditorPlugin.getXSDString("_UI_TAB_GRAPH"));
-
-    // graphViewer.setViewerSelectionManager(textEditor.getViewerSelectionManager());    
-    graphViewer.setSelectionManager(getSelectionManager());
-    
-    // this forces the editor to initially select the top level schema object
-    //
-    getSelectionManager().setSelection(new StructuredSelection(textEditor.getXSDSchema()));    
-  }
-
-  /*
-   * @see IAdaptable#getAdapter(Class)
-   */
-  public Object getAdapter(Class key)
-  {
-    Object result = null;
-    if (key == ISelectionProvider.class)
-    {
-      result = xsdSelectionManager;
-    }
-    else 
-    {
-      result = textEditor.getAdapter(key);
-    }
-    return result;
-  }
-
-  public XSDSelectionManager getSelectionManager()
-  {
-    return xsdSelectionManager;
-  }
- 
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.XSDMultiPageEditorPart#doSaveAs()
-   */
-  public void doSaveAs()
-  {
-    super.doSaveAs();
-  }
-
-  public void doSave(org.eclipse.core.runtime.IProgressMonitor monitor)
-  {
-    super.doSave(monitor);
-  }
-
-  protected XSDSchema xsdSchema;
-  protected ResourceSet resourceSet;
-
-  public void reparseSchema()
-  {
-    Document document  = ((XMLModel)getModel()).getDocument();
-    createSchema(document.getDocumentElement());
-  }
-  
-  public XSDSchema createSchema(Node node)
-  {
-    try
-    {
-      EPackage.Registry reg = EPackage.Registry.INSTANCE; 
-      XSDPackage xsdPackage = (XSDPackage)reg.getEPackage(XSDPackage.eNS_URI);
-      xsdSchema = xsdPackage.getXSDFactory().createXSDSchema();
-      
-      // Force the loading of the "meta" schema for schema instance instance.
-      //
-      String schemaForSchemaNamespace = node.getNamespaceURI();
-      XSDSchemaImpl.getSchemaForSchema(schemaForSchemaNamespace);
-
-      resourceSet = XSDSchemaImpl.createResourceSet();
-      resourceSet.setURIConverter(new XSDURIConverter(resourceFile));
-
-      String pathName = "";
-      // If the resource is in the workspace....
-      // otherwise the user is trying to open an external file
-      if (resourceFile != null)
-      {
-        pathName = resourceFile.getFullPath().toString();
-        Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(pathName), true);
-//      resource.getContents().add(xsdSchema);
-        resourceSet.getResources().add(resource);
-      
-        Object obj = resource.getContents().get(0);
-        if (obj instanceof XSDSchema)
-        {
-          xsdSchema = (XSDSchema)obj;
-        }
-
-//      URIConverter uriConverter = resourceSet.getURIConverter();
-//      resourceSet.setURIConverter(new XSDURIConverter(resourceFile));
- 
-        xsdSchema.setElement((Element)node);
-        resource.setModified(false);
-      }
-      else
-      {
-        xsdSchema.setElement((Element)node);
-      }
-    }
-    catch (StackOverflowError e)
-    {
-//      XSDEditorPlugin.getPlugin().getMsgLogger().write("Stack overflow encountered.  Possibly an invalid recursive circular schema");
-    }
-    catch (Exception ex)
-    {
-//      ex.printStackTrace();
-    }
-    
-    return xsdSchema;
-  }
-
-  class XSDDocumentAdapter extends DocumentAdapter
-  {
-  	INodeNotifier currentNotifier;
-  	int currentEventType;
-  	
-		public XSDDocumentAdapter(Document document)
-		{
-			super(document);
-		}
-
-		boolean handlingNotifyChanged = false;
-
-		public void notifyChanged(INodeNotifier notifier, int eventType, Object feature, Object oldValue, Object newValue, int index)
-		{
-			if (!handlingNotifyChanged)
-			{
-				handlingNotifyChanged = true;
-				try
-				{
-					// delay handle events only in the source view
-					if (getCurrentPageType() == XSDEditorPlugin.SOURCE_PAGE &&
-							!(getActivePart() instanceof PropertySheet) && 
-							!(getActivePart() instanceof org.eclipse.ui.views.contentoutline.ContentOutline)) {
-						startDelayedEvent(notifier, eventType, feature, oldValue, newValue, index);
-					}
-					else // all other views, just handle the events right away
-					{
-						handleNotifyChange(notifier, eventType, feature, oldValue, newValue, index);
-					}
-				}
-				catch (Exception e)
-				{
-//					XSDEditorPlugin.getPlugin().getMsgLogger().write(e);
-				}
-				handlingNotifyChanged = false;
-			}
-		}
-
-		public void handleNotifyChange(INodeNotifier notifier, int eventType, Object feature, Object oldValue, Object newValue, int index)
-		{
-//			System.out.println(eventType + " : HandleNotifyChange " + notifier.hashCode() + " notifier " + notifier);
-			switch (eventType)
-			{
-				case INodeNotifier.ADD:
-				{
-					if (newValue instanceof Element)
-					{
-						adapt((Element)newValue);
-//	Add			updateParentForDerivation(node, listener);
-					}
-					break;
-				}
-        case INodeNotifier.REMOVE:
-        {
-          Node node = (Node)notifier;
-          XSDConcreteComponent listener = xsdSchema.getCorrespondingComponent(node);
-         
-          if (listener instanceof XSDSchema)
-          {
-            // we want to reset the schema's external elements when the directive is deleted
-            if (feature instanceof Element)
-            {
-              Element elem = (Element)feature;
-              if (XSDDOMHelper.inputEquals(elem, XSDConstants.INCLUDE_ELEMENT_TAG, false) ||
-                  XSDDOMHelper.inputEquals(elem, XSDConstants.IMPORT_ELEMENT_TAG, false) ||
-                  XSDDOMHelper.inputEquals(elem, XSDConstants.REDEFINE_ELEMENT_TAG, false))
-              {
-                xsdSchema.reset();
-                xsdSchema.update();
-              }
-            }
-          }          
-        }
-				case INodeNotifier.CHANGE:
-				{
-					Node node = (Node)notifier;
-			    XSDConcreteComponent listener = xsdSchema.getCorrespondingComponent(node);
-          if (node.getNodeType() == Node.ELEMENT_NODE)
-          {
-  		      listener.elementAttributesChanged((Element)node);
-    	      listener.elementChanged((Element)node);
-          }
-          else if (node.getNodeType() == Node.DOCUMENT_NODE)
-          {
-            listener.elementAttributesChanged(((Document)node).getDocumentElement());
-            listener.elementChanged(((Document)node).getDocumentElement());
-          }
-    	    break;
-				}
-				case INodeNotifier.STRUCTURE_CHANGED:
-				case INodeNotifier.CONTENT_CHANGED:
-				{
-					Node node = (Node)notifier;
-					XSDConcreteComponent listener = xsdSchema.getCorrespondingComponent(node);
-          if (node.getNodeType() == Node.ELEMENT_NODE)
-					{
-						listener.elementContentsChanged((Element)node);
-						break;
-					}
-					else if (node.getNodeType() == Node.DOCUMENT_NODE)
-					{
-						Element docElement = ((Document)node).getDocumentElement();
-						// Need to add check if doc element is being edited in the source
-						if (docElement != null)
-					  {
-						  String prefix = docElement.getPrefix();
-						  String xmlnsString = prefix == null? "xmlns" : "xmlns:" + prefix;
-						  Attr attr = docElement.getAttributeNode(xmlnsString);
-						  boolean doParse = false;
-						  if (attr != null)
-						  {
-						    if (attr.getValue().equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001) && docElement.getLocalName().equals("schema"))
-						    {
-						      // We have a viable schema so parse it
-						      doParse = true;
-						    }
-						  }
-						  
-							if (doParse)
-							{
-					      adapt(docElement);
- 						    xsdSchema.setElement(docElement);
-							}
-					  }
-					}
-					break;
-				}
-			}
-		}
-
-		protected DelayedEvent delayedTask;
-		protected void startDelayedEvent(INodeNotifier notifier, int eventType, Object feature, Object oldValue, Object newValue, int index)
-		{
-//			System.out.println("start delayed event");
-      // check if there is already a delayed task for the same notifier and eventType
-//			if (delayedTask != null)
-//			{
-//  			Notifier aNotifier = delayedTask.getNotifier();
-//	  		int anEventType = delayedTask.getEventType();
-//  			if (notifier == aNotifier && anEventType == eventType)
-//			  {
-//				  // same event, just different data, delay new event
-//				  delayedTask.setCancel(true);
-//			  }
-//			}
-
-			delayedTask = new DelayedEvent();
-
-			delayedTask.setNotifier(notifier);
-			delayedTask.setEventType(eventType);
-			delayedTask.setFeature(feature);
-			delayedTask.setOldValue(oldValue);
-			delayedTask.setNewValue(newValue);
-			delayedTask.setIndex(index);
-
-			Display.getDefault().timerExec(400,delayedTask);
-		}
-
-		class DelayedEvent implements Runnable
-		{
-		  INodeNotifier notifier;
-			int eventType;
-			Object feature;
-			Object oldValue;
-			Object newValue;
-			int index;
-			boolean cancelEvent = false;
-
-			/*
-			 * @see Runnable#run()
-			 */
-			public void run()
-			{
-				if (!cancelEvent)
-				{
-				  handleNotifyChange(notifier, eventType, feature, oldValue, newValue, index);
-				  if (delayedTask == this)
-				  {
-				  	delayedTask = null;
-				  }
-				}
-			}
-			
-			public void setCancel(boolean flag)
-			{
-				cancelEvent = flag;
-			}
-
-			public void setNotifier(INodeNotifier notifier)
-			{
-				this.notifier = notifier;
-			}
-		
-			public void setEventType(int eventType)
-			{
-				this.eventType = eventType;
-			}
-
-			public void setFeature(Object feature)
-			{
-				this.feature = feature;
-			}
-
-			public void setOldValue(Object oldValue)
-			{
-				this.oldValue = oldValue;			
-			}
-
-			public void setNewValue(Object newValue)
-			{
-				this.newValue = newValue;
-			}
-
-			public void setIndex(int index)
-			{
-				this.index = index;			
-			}
-
-			public INodeNotifier getNotifier()
-			{
-				return notifier;
-			}
-
-			public int getEventType()
-			{
-				return eventType;
-			}
-
-			public Object getNewValue()
-			{
-				return newValue;
-			}
-
-			public Object getOldValue()
-			{
-				return oldValue;
-			}
-
-		}
-  }
-
-  abstract class DocumentAdapter implements INodeAdapter
-  {
-    public DocumentAdapter(Document document)
-    {
-      ((INodeNotifier)document).addAdapter(this);
-      adapt(document.getDocumentElement());
-    }
-
-    public void adapt(Element element)
-    {
-      if (((INodeNotifier)element).getExistingAdapter(this) == null)
-      {
-
-        ((INodeNotifier)element).addAdapter(this);
-
-        for (Node child = element.getFirstChild(); child != null; child = child.getNextSibling())
-        {
-          if (child.getNodeType() == Node.ELEMENT_NODE)
-          {
-            adapt((Element)child);
-          }
-        }
-      }
-    }
-
-    public boolean isAdapterForType(Object type)
-    {
-      return type == this;
-    }
-
-    abstract public void notifyChanged
-      (INodeNotifier notifier, int eventType, Object feature, Object oldValue, Object newValue, int index);
-  }
-
-
-  /**
-   * Method createDefaultSchemaNode.  Should only be called to insert a schema node into an empty document
-   */
-  public void createDefaultSchemaNode()
-  {
-    Document document  = ((XMLModel)getModel()).getDocument();
-    if (document.getChildNodes().getLength() == 0)
-    {
-      // if it is a completely empty file, then add the encoding and version processing instruction
-//TODO  String encoding = EncodingHelper.getDefaultEncodingTag();
-      String encoding = "UTF-8";
-      ProcessingInstruction instr = document.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"" + encoding + "\"");
-      document.appendChild(instr);
-    }
-
-    // Create a default schema tag now
-
-    // String defaultPrefixForTargetNamespace = getFileResource().getProjectRelativePath().removeFileExtension().lastSegment();
-    String defaultPrefixForTargetNamespace = "tns";
-    String prefixForSchemaNamespace = "";
-    String schemaNamespaceAttribute = "xmlns";
-    if (XSDEditorPlugin.getPlugin().isQualifyXMLSchemaLanguage())
-    {
-      // Added this if check before disallowing blank prefixes in the preferences...
-      // Can take this out.  See also NewXSDWizard
-      if (XSDEditorPlugin.getPlugin().getXMLSchemaPrefix().trim().length() > 0)
-      {
-        prefixForSchemaNamespace = XSDEditorPlugin.getPlugin().getXMLSchemaPrefix() + ":";
-        schemaNamespaceAttribute += ":" + XSDEditorPlugin.getPlugin().getXMLSchemaPrefix();
-      }
-    }
-    
-    document.appendChild(document.createTextNode("\n"));
-    Element element = document.createElement(prefixForSchemaNamespace + XSDConstants.SCHEMA_ELEMENT_TAG);
-    
-    element.setAttribute(schemaNamespaceAttribute,"http://www.w3.org/2001/XMLSchema");
-    
-    String defaultTargetURI = XSDEditorPlugin.getPlugin().getXMLSchemaTargetNamespace();
-    element.setAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE, defaultTargetURI);
-    element.setAttribute("xmlns:" + defaultPrefixForTargetNamespace, defaultTargetURI);
-    
-    document.appendChild(element);
-  }
-  
-  public void buildXSDModel()
-  {
-    try
-    {
-      Document document  = ((XMLModel)getModel()).getDocument();
-      if (document.getChildNodes().getLength() == 0)
-      {
-        // this is an empty document.  Create a default schema tag now
-        createDefaultSchemaNode();
-      }
-
-      createSchema(document.getDocumentElement());
-
-			XSDDocumentAdapter documentAdapter =
-				new XSDDocumentAdapter(((XMLModel)getModel()).getDocument());
-    }
-    catch (Exception e)
-    {
-//      XSDEditorPlugin.getPlugin().getMsgLogger().write("Failed to create Model");
-//      XSDEditorPlugin.getPlugin().getMsgLogger().write(e);
-//      e.printStackTrace();
-    }
-
-
-
-//      XSDResourceFactoryImpl.validate(xsdSchema, input.getFile().getContents(true));
-  }
-
-//  private void updateParentForDerivation(Node node, XSDConcreteComponent correspondingComponent)
-//  {
-//    if (XSDDOMHelper.inputEquals(node, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false)||
-//        XSDDOMHelper.inputEquals(node,XSDConstants.COMPLEXCONTENT_ELEMENT_TAG,false))
-//    {
-//      XSDComplexTypeDefinition xsdComplexTypeDefinition =
-//        correspondingComponent.getContainer() instanceof XSDComplexTypeDefinition ? 
-//          (XSDComplexTypeDefinition)correspondingComponent.getContainer() :
-//          null;
-//      if (xsdComplexTypeDefinition != null)
-//      {
-//        xsdComplexTypeDefinition.elementContentsChanged(xsdComplexTypeDefinition.getElement());
-//      }
-//    }
-//  }    
-
-//  private void checkUnion(Node node, XSDConcreteComponent correspondingComponent, int i)
-//  {
-//    // bug 219967 - union changes to restriction
-//    if (XSDDOMHelper.inputEquals(node, XSDConstants.UNION_ELEMENT_TAG, false))
-//    {
-////      XSDConcreteComponent comp = correspondingComponent.getContainer();
-////      if (comp != null)
-////      {
-////        switch (i)
-////        {
-////          case 1:
-////            comp.elementAttributesChanged((Element)node);
-////            break;
-////          case 4:
-////            comp.elementContentsChanged((Element)node);
-////            break;
-////        }
-////      }
-//    }
-//    else
-//    {
-//      switch (i)
-//      {
-//        case 1:
-//        case 4:
-//          // do both types of updates since sometimes the attributes have changed indirectly
-//          // because the content has changed
-//          correspondingComponent.elementAttributesChanged((Element)node);
-//          correspondingComponent.elementContentsChanged((Element)node);
-//          break;
-//      }
-//    }
-//  }
-  
-//  private void updateMap(XSDConcreteComponent listener, Element documentElement)
-//  {
-//    boolean handleChangeInSchema = false;
-//    if (listener instanceof XSDSchema)
-//    {
-//      if (!handleChangeInSchema)
-//      {
-//        handleChangeInSchema = true;
-//        XSDSchema xsdSchema = (XSDSchema)listener;
-//        java.util.Map prefixToNameSpaceMap = xsdSchema.getQNamePrefixToNamespaceMap();
-//        String targetNamespace = xsdSchema.getTargetNamespace();
-////        System.out.println("targetNamespace = " + targetNamespace);
-//
-//        NamedNodeMap attributes = documentElement.getAttributes();
-//        int length = attributes.getLength();
-//        
-//        ArrayList keyList = new ArrayList();
-//        keyList.addAll(prefixToNameSpaceMap.keySet());
-//        
-//        String key;
-//
-//
-//        // update the map when the prefix is changed
-//        CHECK: for (int i = 0; i < length; i++)
-//        {
-//          Attr attr = (Attr)attributes.item(i);
-//          String name = attr.getNodeName();
-//          
-//          if (isValidXMLNSAttribute(name))
-////          if (name.startsWith("xmlns"))
-//          {
-//            String value = attr.getNodeValue();
-//            if (value == null)
-//            {
-//              break CHECK;
-//            }
-//            int index = name.indexOf(":");
-//            key  = index == -1 ? null : name.substring(index + 1);
-////            System.out.println(" Attribute key is " + key + " , value = " + value);
-////            System.out.println("   map.get(key) = " + prefixToNameSpaceMap.get(key));
-//            if (!prefixToNameSpaceMap.containsKey(key))
-//            {
-//              for (Iterator iter = keyList.iterator(); iter.hasNext(); )
-//              {
-//                String aPrefix = (String)iter.next();
-////                System.out.println("    --> A Map Prefix is " + aPrefix);
-////                System.out.println("    --> model map.get(prefix) " + prefixToNameSpaceMap.get(aPrefix));
-//                if (prefixToNameSpaceMap.get(aPrefix) != null)
-//                {
-//                  if (prefixToNameSpaceMap.get(aPrefix).equals(value))
-//                  {
-//                    prefixToNameSpaceMap.remove(aPrefix);
-//                  }
-//                }
-//              }
-//            }
-//            else if (prefixToNameSpaceMap.containsKey(key))
-//            {
-//              if (prefixToNameSpaceMap.get(key) != null)
-//              {
-//                if (!prefixToNameSpaceMap.get(key).equals(value))
-//                {
-//                  Set entrySet = prefixToNameSpaceMap.entrySet();
-//                  for (Iterator iter = entrySet.iterator(); iter.hasNext(); )
-//                  {
-//                    Map.Entry aMapEntry = (Map.Entry)iter.next();
-//                    if (  (key != null && (aMapEntry.getKey() != null && aMapEntry.getKey().equals(key)))
-//                           || (key == null && (aMapEntry.getKey() == null)))
-//                    {
-//                      aMapEntry.setValue(value);
-//                    }
-//                  }
-//                }
-//              }
-//              else
-//              {
-//                Set entrySet = prefixToNameSpaceMap.entrySet();
-//                for (Iterator iter = entrySet.iterator(); iter.hasNext(); )
-//                {
-//                  Map.Entry aMapEntry = (Map.Entry)iter.next();
-//                  if (  (key != null && (aMapEntry.getKey() != null && aMapEntry.getKey().equals(key)))
-//                         || (key == null && (aMapEntry.getKey() == null)))
-//                  {
-//                    aMapEntry.setValue(value);
-//                  }
-//                }
-//              }
-//            }
-//          }
-//        }
-//        
-//        boolean modelMapPrefixFound = false;
-//        for (Iterator iter = keyList.iterator(); iter.hasNext(); )
-//        {
-//          String aPrefix = (String)iter.next();
-//          modelMapPrefixFound = false;
-//          attributes = documentElement.getAttributes();
-//          length = attributes.getLength();
-//
-//          for (int i = 0; i < length; i++)
-//          {
-//            Attr attr = (Attr)attributes.item(i);
-//            if (attr != null)
-//            {
-//              String name = attr.getNodeName();
-//            
-//              // if (name.startsWith("xmlns"))
-//              if (isValidXMLNSAttribute(name))
-//              {
-//                String value = attr.getNodeValue();
-//                int index = name.indexOf(":");
-//                key  = index == -1 ? null : name.substring(index + 1);
-//                if (aPrefix == null && key == null)
-//                {
-//                  modelMapPrefixFound = true;
-//                }
-//                else if (aPrefix != null && (aPrefix.equals(key)))
-//                {
-//                  modelMapPrefixFound = true;
-//                  if ((prefixToNameSpaceMap.get(key) != null && !prefixToNameSpaceMap.get(key).equals(value))
-//                       || (prefixToNameSpaceMap.get(key) == null && value != null))
-//                  {
-//                    if (value != null && value.length() > 0)
-//                    {
-//                      prefixToNameSpaceMap.put(aPrefix, value);
-//                    }
-//                  }
-//                }
-//                else if (key != null && (key.equals(aPrefix)))
-//                {
-//                  modelMapPrefixFound = true;
-//                }
-//              }
-//            }
-//          }
-//          if (!modelMapPrefixFound)
-//          {
-//            prefixToNameSpaceMap.remove(aPrefix);
-//          }
-//        }
-//       
-//        // to ensure map is recreated
-////        XSDSchemaHelper.updateElement(xsdSchema);        
-////        reparseSchema();
-//
-//        handleChangeInSchema = false;
-//
-////        System.out.println("XSDeditor Map is " + prefixToNameSpaceMap.values());
-////        System.out.println("XSDeditor Map keys are " + prefixToNameSpaceMap.keySet());
-//        
-//      }
-//    }
-//  }
-
-  /**
-   * Returns the xsdSchema.
-   * @return XSDSchema
-   */
-  public XSDSchema getXSDSchema()
-  {
-    return xsdSchema;
-  }
-
-
-  /**
-   * Returns the resourceFile.
-   * @return IFile
-   */
-  public IFile getFileResource()
-  {
-    return resourceFile;
-  }
-
-  /**
-   * Get the IDocument from the text viewer
-   */
-  public IDocument getEditorIDocument()
-  {
-    IDocument document = textEditor.getTextViewer().getDocument();
-    return document;
-  }
-
-  /**
-   * Create ref integrity tasks in task list
-   */
-  public void createTasksInTaskList(ArrayList messages)
-  {
-//    DisplayErrorInTaskList tasks = new DisplayErrorInTaskList(getEditorIDocument(), getFileResource(), messages);
-//    tasks.run();
-  }
-
-  public void resetInformationTasks()
-  {
-// DisplayErrorInTaskList.removeInfoMarkers(getFileResource());
-  }
-  
-  public XSDGraphViewer getGraphViewer()
-  {
-    return graphViewer;
-  }
-
-//  /**
-//   * @see org.eclipse.ui.part.MultiPageEditorPart#handlePropertyChange(int)
-//   */
-//  protected void handlePropertyChange(int propertyId)
-//  {
-//    super.handlePropertyChange(propertyId);
-//    
-//    if (propertyId == IEditorPart.PROP_INPUT)
-//    {
-//      setInput(textEditor.getEditorInput());
-//      resourceFile = ((IFileEditorInput) getEditorInput()).getFile();
-//      setTitle(resourceFile.getName());
-////      outline.setModel(getModel());
-//
-//      // even though we've set title etc., several times already!
-//      // only now is all prepared for it.
-//      firePropertyChange(IWorkbenchPart.PROP_TITLE);
-//      firePropertyChange(PROP_DIRTY);
-//    }
-//    else if (propertyId == IEditorPart.PROP_TITLE)
-//    {
-//      if (getEditorInput() != textEditor.getEditorInput())
-//      {
-//        setInput(textEditor.getEditorInput());
-//      }
-//    }    
-//  }
-
-  public IEditorPart getActiveEditorPage()
-  {
-    return getActiveEditor();
-  }
-  
-  public XSDTextEditor getXSDTextEditor()
-	{
-    return textEditor;
-  }
-
-	class InternalPartListener implements IPartListener
-	{
-	  XSDEditor editor;
-	  public InternalPartListener(XSDEditor editor)
-	  {
-	    this.editor = editor; 
-	  }
-	  
-		public void partActivated(IWorkbenchPart part)
-		{
-			if (part == editor)
-			{
-        ISelection selection = getSelectionManager().getSelection();
-        if (selection != null)
-        {
-          if (getCurrentPageType().equals(XSDEditorPlugin.GRAPH_PAGE))
-          {
-            getSelectionManager().selectionChanged(new SelectionChangedEvent(editor.getGraphViewer().getComponentViewer(), selection));
-          }
-          else if (getCurrentPageType().equals(XSDEditorPlugin.SOURCE_PAGE))
-          {
-            getSelectionManager().setSelection(selection);
-          }
-        }
-			}
-		}
-
-		public void partBroughtToTop(IWorkbenchPart part)
-		{
-		}
-
-		public void partClosed(IWorkbenchPart part)
-		{
-		}
-
-   
-		public void partDeactivated(IWorkbenchPart part)
-		{
-		}
-
-		public void partOpened(IWorkbenchPart part)
-		{
-		}
-	}
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorAdapter.java
deleted file mode 100644
index 7591376..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorAdapter.java
+++ /dev/null
@@ -1,27 +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.xsd.ui.internal;
-
-import java.util.ArrayList;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.text.IDocument;
-
-public interface XSDEditorAdapter
-{
-  public IFile getFileResource();
-
-  public IDocument getEditorIDocument();
-
-  public void createTasksInTaskList(ArrayList messages);
-
-  public void resetInformationTasks();
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorContextIds.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorContextIds.java
deleted file mode 100644
index 8f95f5c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorContextIds.java
+++ /dev/null
@@ -1,460 +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.xsd.ui.internal;
-
-/**
- * Context help id constants.
- */
-public interface XSDEditorContextIds 
-{
-  public static final String PLUGIN_NAME = "org.eclipse.wst.xsd.ui.internal";
-
-  /* CONTEXT_IDs New XSD Wizard uses the WizardNewFileCreationPage from org.eclipse.ui.dialogs */
- 
-  /* CONTEXT_IDs for XSDEditor follow the xsdexxx context IDs */
-
-  /* CONTEXT_ID xsde0010 for XSD Editor Design View */
-  public static final String XSDE_SCHEMA_DESIGN_VIEW      = PLUGIN_NAME + ".xsde0010";
-  /* no CONTEXT_ID for File Name Text Edit (not editable) */
-  /* CONTEXT_ID xsde0020 for Version Text Edit */
-  public static final String XSDE_SCHEMA_VERSION          = PLUGIN_NAME + ".xsde0020";
-  /* CONTEXT_ID xsde0030 for Language Text Edit */
-  public static final String XSDE_SCHEMA_LANGUAGE         = PLUGIN_NAME + ".xsde0030";
-  /* CONTEXT_ID xsde0040 for Namespace Group */
-  public static final String XSDE_SCHEMA_NAMESPACE_GROUP  = PLUGIN_NAME + ".xsde0040";
-  /* CONTEXT_ID xsde0050 for Prefix Text Edit */
-  public static final String XSDE_SCHEMA_PREFIX           = PLUGIN_NAME + ".xsde0050";
-  /* CONTEXT_ID xsde0060 for Target namespace Text Edit */
-  public static final String XSDE_SCHEMA_TARGET_NAMESPACE = PLUGIN_NAME + ".xsde0060";
-  /* CONTEXT_ID xsde0070 for Apply Push Button */
-  public static final String XSDE_SCHEMA_APPLY            = PLUGIN_NAME + ".xsde0070";
-  /* CONTEXT_ID xsde0080 for Attribute form default Combo Box */
-  public static final String XSDE_SCHEMA_ATTRIBUTE        = PLUGIN_NAME + ".xsde0080";
-  /* CONTEXT_ID xsde0090 for Element form default Combo Box */
-  public static final String XSDE_SCHEMA_ELEMENT          = PLUGIN_NAME + ".xsde0090";
-  /* CONTEXT_ID xsde0100 for Block default Combo Box */
-  public static final String XSDE_SCHEMA_BLOCK            = PLUGIN_NAME + ".xsde0100";
-  /* CONTEXT_ID xsde0110 for Final Default Combo Box */
-  public static final String XSDE_SCHEMA_FINAL            = PLUGIN_NAME + ".xsde0110";
-
-  
-  /* CONTEXT_ID xsde0200 for Annotations Comment Group - only used generically */
-  /* CONTEXT_ID      - used in Documentation Design View */
-  /* CONTEXT_ID      - used in App Info Design View */
-  public static final String XSDE_ANNOTATION_COMMENT_GROUP = PLUGIN_NAME + ".xsde0200";
-  /* CONTEXT_ID xsde0210 for Annotations Comment Group - only used generically */
-  /* CONTEXT_ID      - used in Documentation Design View */
-  /* CONTEXT_ID      - used in App Info Design View */
-  public static final String XSDE_ANNOTATION_COMMENT       = PLUGIN_NAME + ".xsde0210";
-  
-  /* CONTEXT_ID xsde0300 for Documentation Design View */
-  public static final String XSDE_DOCUMENTATION_DESIGN_VIEW   = PLUGIN_NAME + ".xsde0300";
-  /* CONTEXT_ID xsde0310 for Source Text Edit */
-  public static final String XSDE_DOCUMENTATION_SOURCE        = PLUGIN_NAME + ".xsde0310";
-  /* CONTEXT_ID xsde0320 for Language Text Edit */
-  public static final String XSDE_DOCUMENTATION_LANGUAGE      = PLUGIN_NAME + ".xsde0320";
-  /* CONTEXT_ID Comment Group is from Annotations Window xsde0200 */
-  /* CONTEXT_ID Comment Multi-line Edit is from Annotations Window xsd0210 */
-
-  /* CONTEXT_ID xsde0400 for App Info Design View */
-  public static final String XSDE_APP_INFO_DESIGN_VIEW = PLUGIN_NAME + ".xsde0400";
-  /* CONTEXT_ID xsde0410 for App Info Source Text Edit */
-  public static final String XSDE_APP_INFO_SOURCE = PLUGIN_NAME + ".xsde0410";
-  /* CONTEXT_ID Comment Group is from Annotations Window xsde0200 */
-  /* CONTEXT_ID Comment Multi-line Edit is from Annotations Window xsd0210 */
-
-  /* CONTEXT_ID xsde0500 for Complex Type Design View */
-  public static final String XSDE_COMPLEX_DESIGN_VIEW = PLUGIN_NAME + ".xsde0500";
-  /* CONTEXT_ID xsde0510 for Name Text Edit */
-  public static final String XSDE_COMPLEX_NAME        = PLUGIN_NAME + ".xsde0510";
-  /* CONTEXT_ID xsde0520 for Abstract Combo Box */
-  public static final String XSDE_COMPLEX_ABSTRACT    = PLUGIN_NAME + ".xsde0520";
-  /* CONTEXT_ID xsde0530 for Mixed Combo Box */
-  public static final String XSDE_COMPLEX_MIXED       = PLUGIN_NAME + ".xsde0530";
-  /* CONTEXT_ID xsde0540 for Block Combo Box */
-  public static final String XSDE_COMPLEX_BLOCK       = PLUGIN_NAME + ".xsde0540";
-  /* CONTEXT_ID xsde0550 for Final Combo Box */
-  public static final String XSDE_COMPLEX_FINAL       = PLUGIN_NAME + ".xsde0550";
-
-  /* CONTEXT_ID xsde0600 for Simple Type Design View */
-  public static final String XSDE_SIMPLE_DESIGN_VIEW = PLUGIN_NAME + ".xsde0600";
-  /* CONTEXT_ID xsde0610 for Name Text Edit */
-  public static final String XSDE_SIMPLE_NAME        = PLUGIN_NAME + ".xsde0610";
-
-  /* CONTEXT_ID for Global Element and Element Design Views are the same */
-  /* CONTEXT_ID xsde0700 for Element Design View */
-  public static final String XSDE_ELEMENT_DESIGN_VIEW = PLUGIN_NAME + ".xsde0700";
-  /* CONTEXT_ID xsde0710 for Element Name Text Edit */
-  public static final String XSDE_ELEMENT_NAME         = PLUGIN_NAME + ".xsde0710";
-  /* CONTEXT_ID Type Information Group is from Type Helper xsde0900 */
-  /* CONTEXT_ID Built-in simple type Radio Button is from Type Helper xsde0920 */
-  /* CONTEXT_ID User-defined simple type Radio Button is from Type Helper xsde0930 */
-  /* CONTEXT_ID User-defined complex type Radio Button is from Type Helper xsde0940 */
-  /* CONTEXT_ID Type information Combo Box is from Type Helper xsde0950 */
-  /* CONTEXT_ID xsde0720 for Abstract Check Box */
-  public static final String XSDE_ELEMENT_ABSTRACT     = PLUGIN_NAME + ".xsde0720";
-  /* CONTEXT_ID xsde0730 for Nillable Check Box */
-  public static final String XSDE_ELEMENT_NILLABLE     = PLUGIN_NAME + ".xsde0730";
-  /* CONTEXT_ID xsde0740 for Value Group */
-  public static final String XSDE_ELEMENT_VALUE        = PLUGIN_NAME + ".xsde0740";
-  /* CONTEXT_ID xsde0750 for Fixed Radio Button */
-  public static final String XSDE_ELEMENT_FIXED        = PLUGIN_NAME + ".xsde0750";
-  /* CONTEXT_ID xsde0760 for Default Radio Button */
-  public static final String XSDE_ELEMENT_DEFAULT      = PLUGIN_NAME + ".xsde0760";
-  /* CONTEXT_ID xsde0770 for Value Group */
-  public static final String XSDE_ELEMENT_VALUE_GROUP  = PLUGIN_NAME + ".xsde0770";
-  /* CONTEXT_ID xsde0780 for Minimum Text Edit */
-  public static final String XSDE_ELEMENT_MINIMUM      = PLUGIN_NAME + ".xsde0780";
-  /* CONTEXT_ID xsde0790 for Maximum Text Edit */
-  public static final String XSDE_ELEMENT_MAXIMUM      = PLUGIN_NAME + ".xsde0790";
-  /* CONTEXT_ID xsde0800 for Block Combo Box */
-  public static final String XSDE_ELEMENT_BLOCK        = PLUGIN_NAME + ".xsde0800";
-  /* CONTEXT_ID xsde0810 for Final Combo Box */
-  public static final String XSDE_ELEMENT_FINAL        = PLUGIN_NAME + ".xsde0810";
-  /* CONTEXT_ID xsde0820 for Substitution Group Combo Box */
-  public static final String XSDE_ELEMENT_SUBSTITUTION = PLUGIN_NAME + ".xsde0820";
-  /* CONTEXT_ID xsde0830 for Form Qualification Combo Box */                    
-  public static final String XSDE_ELEMENT_FORM         = PLUGIN_NAME + ".xsde0830";
-
-  /* CONTEXT_ID xsde0900 for Type Helper Group - only used generically */
-  /* CONTEXT_ID      - used in Global Element Design View */
-  /* CONTEXT_ID      - used in Global Attribute Design View */
-  /* CONTEXT_ID      - used in Simple Content Design View */
-  /* CONTEXT_ID      - used in Restriction Design View */
-  /* CONTEXT_ID      - used in List Design View */
-  /* CONTEXT_ID      - used in Union Design View */
-  public static final String XSDE_TYPE_HELPER_GROUP    = PLUGIN_NAME + ".xsde0900";
-  /* CONTEXT_ID xsde0910 for None Radio Button - only used generically */
-  /* CONTEXT_ID      - used in Simple Content Design View */
-  /* CONTEXT_ID      - used in Restriction Design View */
-  /* CONTEXT_ID      - used in List Design View */
-  /* CONTEXT_ID      - used in Union Design View */
-  public static final String XSDE_TYPE_HELPER_NONE     = PLUGIN_NAME + ".xsde0910";
-  /* CONTEXT_ID xsde0920 for Built-in simple type Radio Button - only used generically */
-  /* CONTEXT_ID      - used in Global Element Design View */
-  /* CONTEXT_ID      - used in Global Attribute Design View */
-  /* CONTEXT_ID      - used in Simple Content Design View */
-  /* CONTEXT_ID      - used in Restriction Design View */
-  /* CONTEXT_ID      - used in List Design View */
-  /* CONTEXT_ID      - used in Union Design View */
-  public static final String XSDE_TYPE_HELPER_BUILT_IN = PLUGIN_NAME + ".xsde0920";
-  /* CONTEXT_ID xsde0930 for User-defined simple type Radio Button - only used generically */
-  /* CONTEXT_ID      - used in Global Element Design View */
-  /* CONTEXT_ID      - used in Global Attribute Design View */
-  /* CONTEXT_ID      - used in Simple Content Design View */
-  /* CONTEXT_ID      - used in Restriction Design View */
-  /* CONTEXT_ID      - used in List Design View */
-  /* CONTEXT_ID      - used in Union Design View */
-  public static final String XSDE_TYPE_HELPER_USER_DEFINED_SIMPLE = PLUGIN_NAME + ".xsde0930";
-  /* CONTEXT_ID xsde0940 for User-defined complex type Radio Button - only used generically */
-  /* CONTEXT_ID      - used in Global Element Design View */
-  public static final String XSDE_TYPE_HELPER_USER_DEFINED_COMPLEX = PLUGIN_NAME + ".xsde0940";
-  /* CONTEXT_ID xsde0950 for Type information Combo Box - only used generically */
-  /* CONTEXT_ID      - used in Global Element Design View */
-  /* CONTEXT_ID      - used in Global Attribute Design View */
-  /* CONTEXT_ID      - used in Simple Content Design View */
-  /* CONTEXT_ID      - used in Restriction Design View */
-  /* CONTEXT_ID      - used in List Design View */
-  public static final String XSDE_TYPE_HELPER_TYPE = PLUGIN_NAME + ".xsde0950";
-
-  /* CONTEXT_ID xsde1000 for Attribute Design View */
-  public static final String XSDE_ATTRIBUTE_DESIGN_VIEW = PLUGIN_NAME + ".xsde1000";
-  /* CONTEXT_ID xsde1010 for Attribute Name Text Edit */
-  public static final String XSDE_ATTRIBUTE_NAME        = PLUGIN_NAME + ".xsde1010";
-  /* CONTEXT_ID Type Information Group is from Type Helper xsde0900 */
-  /* CONTEXT_ID Built-in simple type Radio Button is from Type Helper xsde0920 */
-  /* CONTEXT_ID User-defined simple type Radio Button is from Type Helper xsde0930 */
-  /* CONTEXT_ID Type information Combo Box is from Type Helper xsde0950 */
-  /* CONTEXT_ID xsde1020 for Value Group */
-  public static final String XSDE_ATTRIBUTE_VALUE_GROUP = PLUGIN_NAME + ".xsde1020";
-  /* CONTEXT_ID xsde1030 for Fixed Radio Button */
-  public static final String XSDE_ATTRIBUTE_FIXED       = PLUGIN_NAME + ".xsde1030";
-  /* CONTEXT_ID xsde1040 for Default Radio Button */
-  public static final String XSDE_ATTRIBUTE_DEFAULT     = PLUGIN_NAME + ".xsde1040";
-  /* CONTEXT_ID xsde1050 for Value Text Edit */
-  public static final String XSDE_ATTRIBUTE_VALUE       = PLUGIN_NAME + ".xsde1050";
-  /* CONTEXT_ID xsde1060 for Usage Combo Box */
-  public static final String XSDE_ATTRIBUTE_USAGE       = PLUGIN_NAME + ".xsde1060";
-  /* CONTEXT_ID xsde1070 for Form qualificaiton Combo Box */
-  public static final String XSDE_ATTRIBUTE_FORM        = PLUGIN_NAME + ".xsde1070";
-
-  /* CONTEXT_ID xsde1100 for Element Ref Window Design View */
-  public static final String XSDE_ELEMENT_REF_DESIGN_VIEW = PLUGIN_NAME + ".xsde1100";
-  /* CONTEXT_ID xsde1110 for Reference Name Combo Box */
-  public static final String XSDE_ELEMENT_REF_REFERENCE   = PLUGIN_NAME + ".xsde1110";
-  /* CONTEXT_ID xsde1120 for Minimum Text Edit */
-  public static final String XSDE_ELEMENT_REF_MINIMUM     = PLUGIN_NAME + ".xsde1120";
-  /* CONTEXT_ID xsde1130 for Maximum Text Edit */
-  public static final String XSDE_ELEMENT_REF_MAXIMUM     = PLUGIN_NAME + ".xsde1130";
-  
-  /* CONTEXT_ID xsde1200 for Simple Content Design View - used generically */
-  /* CONTEXT_ID      - used in Simple Content Design View */ 
-  /* CONTEXT_ID      - used in Complex Content Design View */
-    public static final String XSDE_SIMPLE_CONTENT_DESIGN_VIEW = PLUGIN_NAME + ".xsde1200";
-  /* CONTEXT_ID Base Type Group is from Type Helper xsde0900 */
-  /* CONTEXT_ID None Radio Button is from Type Helper xsde0910 */
-  /* CONTEXT_ID Built-in simple type Radio Button is from Type Helper xsde0920 */
-  /* CONTEXT_ID User-defined simple type Radio Button is from Type Helper xsde0930 */
-  /* CONTEXT_ID Type information Combo Box is from Type Helper xsde0950 */
-  /* CONTEXT_ID xsde1210 for Derived by Combo Box - used generically */
-  /* CONTEXT_ID      - used in Simple Content Design View */ 
-  /* CONTEXT_ID      - used in Complex Content Design View */
-  public static final String XSDE_SIMPLE_CONTENT_DERIVED = PLUGIN_NAME + ".xsde1210";
-
-  /* CONTEXT_ID xsde1300 for Restriction Design View */
-  public static final String XSDE_RESTRICTION_DESIGN_VIEW  = PLUGIN_NAME + ".xsde1300";
-  /* CONTEXT_ID Base Type Group is from Type Helper xsde0900 */
-  /* CONTEXT_ID None Radio Button is from Type Helper xsde0910 */
-  /* CONTEXT_ID Built-in simple type Radio Button is from Type Helper xsde0920 */
-  /* CONTEXT_ID User-defined simple type Radio Button is from Type Helper xsde0930 */
-  /* CONTEXT_ID Type information Combo Box is from Type Helper xsde0950 */
-  /* CONTEXT_ID xsde1310 for Facets Group */
-  public static final String XSDE_RESTRICTION_FACETS_GROUP = PLUGIN_NAME + ".xsde1310";
-  /* CONTEXT_ID xsde1320 for Facets Table */
-  public static final String XSDE_RESTRICTION_FACETS       = PLUGIN_NAME + ".xsde1320";
-
-  /* CONTEXT_ID xsde1400 for List Design View */
-  public static final String XSDE_LIST_DESIGN_VIEW  = PLUGIN_NAME + ".xsde1400";
-  /* CONTEXT_ID Base Type Group is from Type Helper xsde0900 */
-  /* CONTEXT_ID None Radio Button is from Type Helper xsde0910 */
-  /* CONTEXT_ID Built-in simple type Radio Button is from Type Helper xsde0920 */
-  /* CONTEXT_ID User-defined simple type Radio Button is from Type Helper xsde0930 */
-  /* CONTEXT_ID Type information Combo Box is from Type Helper xsde0950 */
-
-  /* CONTEXT_ID xsde1500 for Attribute Group Design View */
-  public static final String XSDE_ATTRIBUTE_GROUP_DESIGN_VIEW = PLUGIN_NAME + ".xsde1500";
-  /* CONTEXT_ID xsde1510 for Name Text Edit */
-  public static final String XSDE_ATTRIBUTE_GROUP_NAME = PLUGIN_NAME + ".xsde1510";
-
-  /* CONTEXT_ID for Global Attribute and Attribute Design Views are the same */
-  /* CONTEXT_ID xsde1600 for Attribute Group Reference Design View */
-  public static final String XSDE_ATTRIBUTE_GROUP_REF_DESIGN_VIEW = PLUGIN_NAME + ".xsde1600";
-  /* CONTEXT_ID xsde1610 for Reference Name Combo Box */
-  public static final String XSDE_ATTRIBUTE_GROUP_REF_NAME = PLUGIN_NAME + ".xsde1610";
-
-  /* CONTEXT_ID xsde1700 for Attribute Reference Design View */
-  public static final String XSDE_ATTRIBUTE_REF_DESIGN_VIEW = PLUGIN_NAME + ".xsde1700";
-  /* CONTEXT_ID xsde1710 for Reference Name Combo Box */
-  public static final String XSDE_ATTRIBUTE_REF_NAME = PLUGIN_NAME + ".xsde1710";
-
-  /* CONTEXT_ID xsde1800 for Pattern Design View */
-  public static final String XSDE_PATTERN_DESIGN_VIEW = PLUGIN_NAME + ".xsde1800";
-  /* CONTEXT_ID xsde1810 for Value Text Edit */
-  public static final String XSDE_PATTERN_VALUE   = PLUGIN_NAME + ".xsde1810";
-  /* CONTEXT_ID xsde1820 for Create Regular Expression Push Button */
-  public static final String XSDE_PATTERN_REGULAR = PLUGIN_NAME + ".xsde1820";
-
-  /* CONTEXT_ID xsde1900 for Enum Design View */
-  public static final String XSDE_ENUM_DESIGN_VIEW = PLUGIN_NAME + ".xsde1900";
-  /* CONTEXT_ID xsde1910 for Value Text Edit */
-  public static final String XSDE_ENUM_VALUE       = PLUGIN_NAME + ".xsde1910";
-  
-  /* CONTEXT_ID xsde2000 for Include Design Page */
-  public static final String XSDE_INCLUDE_DESIGN_VIEW = PLUGIN_NAME + ".xsde2000";
-  /* no CONTEXT_ID for Schema Location Text Edit (not editable) */
-  /* CONTEXT_ID Select Push Button is from Include Helper xsde2100 */ 
-  
-  /* CONTEXT_ID xsde2100 for Include Helper Select Push Button - used generically */
-  /* CONTEXT_ID      - used in Include Design View */
-  /* CONTEXT_ID      - used in Import Design View */
-  public static final String XSDE_INCLUDE_HELPER_SELECT = PLUGIN_NAME + ".xsde2100";
-
-  /* CONTEXT_ID xsde2200 for Import Design Page */
-  public static final String XSDE_IMPORT_DESIGN_VIEW = PLUGIN_NAME + ".xsde2200";
-  /* no CONTEXT_ID for Schema Location Text Edit (not editable) */
-  /* CONTEXT_ID Select Push Button is from Include Helper xsde2100 */
-  /* CONTEXT_ID xsde2210 for Prefix Text Edit */
-  public static final String XSDE_IMPORT_PREFIX      = PLUGIN_NAME + ".xsde2210";
-  /* no CONTEXT_ID for Namespace Text Edit (not editable) */
-
-  /* CONTEXT_ID xsde2300 for Redefine Design View */
-  public static final String XSDE_REDEFINE_DESIGN_VIEW = PLUGIN_NAME + ".xsde2300";
-  /* no CONTEXT_ID for Schema Location Text Edit (not editable) */
-  /* CONTEXT_ID Select Push Button is from Include Helper xsde2100 */
-
-  /* CONTEXT_ID xsde2400 for Group Design View */
-  public static final String XSDE_GROUP_DESIGN_VIEW = PLUGIN_NAME + ".xsde2400";
-  /* CONTEXT_ID xsde2410 for Name Text Edit */
-  public static final String XSDE_GROUP_NAME        = PLUGIN_NAME + ".xsde2410";
-
-  /* CONTEXT_ID xsde2500 for Group Scope Design View */
-  public static final String XSDE_GROUP_SCOPE_DESIGN_VIEW   = PLUGIN_NAME + ".xsde2500";
-  /* CONTEXT_ID xsde2510 for Content model Group */
-  public static final String XSDE_GROUP_SCOPE_CONTENT_GROUP = PLUGIN_NAME + ".xsde2510";
-  /* CONTEXT_ID xsde2520 for Sequence Radio Button */
-  public static final String XSDE_GROUP_SCOPE_SEQUENCE = PLUGIN_NAME + ".xsde2520";
-  /* CONTEXT_ID xsde2530 for Choice Radio Button */
-  public static final String XSDE_GROUP_SCOPE_CHOICE   = PLUGIN_NAME + ".xsde2530";
-  /* CONTEXT_ID xsde2540 for All Radio Button */
-  public static final String XSDE_GROUP_SCOPE_ALL      = PLUGIN_NAME + ".xsde2540";
-  /* CONTEXT_ID xsde2550 for Minimum Text Edit */
-  public static final String XSDE_GROUP_SCOPE_MINIMUM  = PLUGIN_NAME + ".xsde2550";
-  /* CONTEXT_ID xsde2560 for Maximum Text Edit*/
-  public static final String XSDE_GROUP_SCOPE_MAXIMUM  = PLUGIN_NAME + ".xsde2560";
-
-  /* CONTEXT_ID xsde2600 for Group Ref Design View */
-  public static final String XSDE_GROUP_REF_DESIGN_VIEW = PLUGIN_NAME + ".xsde2600";
-  /* CONTEXT_ID xsde2610 for Reference name Combo Box */
-  public static final String XSDE_GROUP_REF_REFERENCE   = PLUGIN_NAME + ".xsde2610";
-  /* CONTEXT_ID xsde2620 for Minimum Text Edit */
-  public static final String XSDE_GROUP_REF_MINIMUM     = PLUGIN_NAME + ".xsde2620";
-  /* CONTEXT_ID xsde2630 for Maximum Text Edit */
-  public static final String XSDE_GROUP_REF_MAXIMUM     = PLUGIN_NAME + ".xsde2630";
-
-  /* CONTEXT_ID xsde2700 for Unique Design View */
-  public static final String XSDE_UNIQUE_DESIGN_VIEW = PLUGIN_NAME + ".xsde2700";
-  /* CONTEXT_ID Name Text Edit is from Unique Base xsde2800 */
-  /* CONTEXT_ID Selector Group is from Unique Base xsde2810 */
-  /* CONTEXT_ID Selector Mulit-line Edit is from Unique Base xsde2820 */
-  /* CONTEXT_ID Fields Group is from Unique Base xsde2830 */
-  /* CONTEXT_ID Source Text Edit is from Unique Base xsde2840 */
-  /* CONTEXT_ID Add Push Button is from Unique Base xsde2850 */
-  /* CONTEXT_ID Remove Push Button is from Unique Base xsde2860 */
-  /* CONTEXT_ID Target List Box is from Unique Base xsde2870 */
-  
-  /* CONTEXT_ID xsde2800 for Unique Base Name Text Edit - used generically */
-  /* CONTEXT_ID      - used in Unique Design View */
-  /* CONTEXT_ID      - used in Key Design View */
-  /* CONTEXT_ID      - used in Key Ref Design View */
-  public static final String XSDE_UNIQUE_BASE_NAME = PLUGIN_NAME + ".xsde2800";
-  /* CONTEXT_ID xsde2810 for Selector Group - used generically */
-  /* CONTEXT_ID      - used in Unique Design View */
-  /* CONTEXT_ID      - used in Key Design View */
-  /* CONTEXT_ID      - used in Key Ref Design View */
-  public static final String XSDE_UNIQUE_BASE_SELECTOR_GROUP = PLUGIN_NAME + ".xsde2810";
-  /* CONTEXT_ID xsde2820 for Selector Multi-line Edit - used generically */
-  /* CONTEXT_ID      - used in Unique Design View */
-  /* CONTEXT_ID      - used in Key Design View */
-  /* CONTEXT_ID      - used in Key Ref Design View */
-  public static final String XSDE_UNIQUE_BASE_SELECTOR       = PLUGIN_NAME + ".xsde2820";
-  /* CONTEXT_ID xsde2830 for Fields Group - used generically */
-  /* CONTEXT_ID      - used in Unique Design View */
-  /* CONTEXT_ID      - used in Key Design View */
-  /* CONTEXT_ID      - used in Key Ref Design View */
-  public static final String XSDE_UNIQUE_BASE_FIELDS_GROUP   = PLUGIN_NAME + ".xsde2830";
-  /* CONTEXT_ID xsde2840 for Source Text Edit - used generically */
-  /* CONTEXT_ID      - used in Unique Design View */
-  /* CONTEXT_ID      - used in Key Design View */
-  /* CONTEXT_ID      - used in Key Ref Design View */
-  public static final String XSDE_UNIQUE_BASE_SOURCE         = PLUGIN_NAME + ".xsde2840";
-  /* CONTEXT_ID xsde2850 for Add Push Button - used generically */
-  /* CONTEXT_ID      - used in Unique Design View */
-  /* CONTEXT_ID      - used in Key Design View */
-  /* CONTEXT_ID      - used in Key Ref Design View */
-  public static final String XSDE_UNIQUE_BASE_ADD            = PLUGIN_NAME + ".xsde2850";
-  /* CONTEXT_ID xsde2860 for Remove Push Button - used generically */
-  /* CONTEXT_ID      - used in Unique Design View */
-  /* CONTEXT_ID      - used in Key Design View */
-  /* CONTEXT_ID      - used in Key Ref Design View */
-  public static final String XSDE_UNIQUE_BASE_REMOVE         = PLUGIN_NAME + ".xsde2860";
-  /* CONTEXT_ID xsde2870 for Target List Box - used generically */
-  /* CONTEXT_ID      - used in Unique Design View */
-  /* CONTEXT_ID      - used in Key Design View */
-  /* CONTEXT_ID      - used in Key Ref Design View */
-  public static final String XSDE_UNIQUE_BASE_TARGET         = PLUGIN_NAME + ".xsde2870";
-
-  /* CONTEXT_ID xsde2900 for Key Design View */
-  public static final String XSDE_KEY_DESIGN_VIEW = PLUGIN_NAME + ".xsde2900";
-  /* CONTEXT_ID Name Text Edit is from Unique Base xsde2800 */
-  /* CONTEXT_ID Selector Group is from Unique Base xsde2810 */
-  /* CONTEXT_ID Selector Mulit-line Edit is from Unique Base xsde2820 */
-  /* CONTEXT_ID Fields Group is from Unique Base xsde2830 */
-  /* CONTEXT_ID Source Text Edit is from Unique Base xsde2840 */
-  /* CONTEXT_ID Add Push Button is from Unique Base xsde2850 */
-  /* CONTEXT_ID Remove Push Button is from Unique Base xsde2860 */
-  /* CONTEXT_ID Target List Box is from Unique Base xsde2870 */
-  /* CONTEXT_ID xsde2900 for Key Design View */
-  
-  /* CONTEXT_ID xsde2950 for Key Ref Design View */
-  public static final String XSDE_KEY_REF_DESIGN_VIEW = PLUGIN_NAME + ".xsde2950";
-  /* CONTEXT_ID Name Text Edit is from Unique Base xsde2800 */
-  /* CONTEXT_ID xsde2960 for Reference Key Combo Box */
-  public static final String XSDE_KEY_REF_REFERENCE = PLUGIN_NAME + ".xsde2960";
-  /* CONTEXT_ID Selector Group is from Unique Base xsde2810 */
-  /* CONTEXT_ID Selector Mulit-line Edit is from Unique Base xsde2820 */
-  /* CONTEXT_ID Fields Group is from Unique Base xsde2830 */
-  /* CONTEXT_ID Source Text Edit is from Unique Base xsde2840 */
-  /* CONTEXT_ID Add Push Button is from Unique Base xsde2850 */
-  /* CONTEXT_ID Remove Push Button is from Unique Base xsde2860 */
-  /* CONTEXT_ID Target List Box is from Unique Base xsde2870 */
-
-  /* CONTEXT_ID xsde3000 for Any Element Design View */
-  public static final String XSDE_ANY_ELEMENT_VIEW = PLUGIN_NAME + ".xsde3000";
-  /* CONTEXT_ID xsde3010 for Namespace Text Edit */
-  public static final String XSDE_ANY_ELEMENT_NAMESPACE = PLUGIN_NAME + ".xsde3010";
-  /* CONTEXT_ID xsde3020 for Process Contents Combo Box */
-  public static final String XSDE_ANY_ELEMENT_PROCESS   = PLUGIN_NAME + ".xsde3020";
-  /* CONTEXT_ID xsde3030 for Minimum Text Edit */
-  public static final String XSDE_ANY_ELEMENT_MINIMUM   = PLUGIN_NAME + ".xsde3030";
-  /* CONTEXT_ID xsde3040 for Maximum Text Edit */
-  public static final String XSDE_ANY_ELEMENT_MAXIMUM   = PLUGIN_NAME + ".xsde3040";
-
-  /* CONTEXT_ID xsde3100 for Any Attribute Design View */
-  public static final String XSDE_ANY_ATTRIBUTE_VIEW = PLUGIN_NAME + ".xsde3100";
-  /* CONTEXT_ID xsde3110 for Namespace Text Edit */
-  public static final String XSDE_ANY_ATTRIBUTE_NAMESPACE = PLUGIN_NAME + ".xsde3110";
-  /* CONTEXT_ID xsde3120 for Process Contents Combo Box */
-  public static final String XSDE_ANY_ATTRIBUTE_PROCESS   = PLUGIN_NAME + ".xsde3120";
-
-  /* no CONTEXT_ID for Union Design View - uses a generic interface */
-  /* CONTEXT_ID Type Information Group is from Type Helper xsde0900 */
-  /* CONTEXT_ID Built-in simple type Radio Button is from Type Helper xsde0920 */
-  /* CONTEXT_ID User-defined simple type Radio Button is from Type Helper xsde0930 */
-  /* CONTEXT_ID Type information Combo Box is from Type Helper xsde0950 */
-
-  /* CONTEXT_ID xsde3200 for Notation Design View */
-  public static final String XSDE_NOTATION_VIEW = PLUGIN_NAME + ".xsde3200";
-
-  /* CONTEXT_ID xsde4000 for Source View */
-  public static final String XSDE_SOURCE_VIEW = PLUGIN_NAME + ".xsde4000";
-
-  /* CONTEXT_IDs for Regular Expression Wizard follow the xsdrxxx context IDs */
-  
-  /* CONTEXT_ID xsdr0010 for Compose Regular Expression Page */
-  public static final String XSDR_COMPOSITION_PAGE         = PLUGIN_NAME + ".xsdr0010";
-  /* CONTEXT_ID xsdr0015 for Token Contents Combo Box */
-  public static final String XSDR_COMPOSITION_TOKEN = PLUGIN_NAME + ".xsdr0015";
-  /* CONTEXT_ID xsdr0020 for Occurrece Group */
-  public static final String XSDR_COMPOSITION_OCCURRENCE_GROUP = PLUGIN_NAME + ".xsdr0020";
-  /* CONTEXT_ID xsdr0030 for Just once Radio Button */
-  public static final String XSDR_COMPOSITION_JUST_ONCE    = PLUGIN_NAME + ".xsdr0030";
-  /* CONTEXT_ID xsdr0040 for Zero or more Radio Button */
-  public static final String XSDR_COMPOSITION_ZERO_OR_MORE = PLUGIN_NAME + ".xsdr0040";
-  /* CONTEXT_ID xsdr0050 for One or more Radio Button */
-  public static final String XSDR_COMPOSITION_ONE_OR_MORE  = PLUGIN_NAME + ".xsdr0050";
-  /* CONTEXT_ID xsdr0060 for Optional Radio Button */
-  public static final String XSDR_COMPOSITION_OPTIONAL     = PLUGIN_NAME + ".xsdr0060";
-  /* CONTEXT_ID xsdr0070 for Repeat Radio Button */
-  public static final String XSDR_COMPOSITION_REPEAT       = PLUGIN_NAME + ".xsdr0070";
-  /* CONTEXT_ID xsdr0080 for Range Radio Button */
-  public static final String XSDR_COMPOSITION_RANGE        = PLUGIN_NAME + ".xsdr0080";
-  /* CONTEXT_ID xsdr0090 for Repeat Text Edit */
-  public static final String XSDR_COMPOSITION_REPEAT_TEXT  = PLUGIN_NAME + ".xsdr0090";
-  /* CONTEXT_ID xsdr0100 for Range Minimum Text Edit */
-  public static final String XSDR_COMPOSITION_RANGE_MIN    = PLUGIN_NAME + ".xsdr0100";
-  /* CONTEXT_ID xsdr0110 for Range Maximum Text Edit */
-  public static final String XSDR_COMPOSITION_RANGE_MAX    = PLUGIN_NAME + ".xsdr0110";
-  /* CONTEXT_ID xsdr0120 for Add Push Button */
-  public static final String XSDR_COMPOSITION_ADD          = PLUGIN_NAME + ".xsdr0120";
-  /* CONTEXT_ID xsdr0130 for Current Regular Expression Text Edit */
-  public static final String XSDR_COMPOSITION_CURRENT      = PLUGIN_NAME + ".xsdr0130";
-
-  /* CONTEXT_ID xsdr0200 for Test Regular Expression Page */
-  public static final String XSDR_TEST_PAGE   = PLUGIN_NAME + ".xsdr0200";
-  /* no CONTEXT_ID for Regular Expression Text Edit (not editable) */
-  /* CONTEXT_ID xsdr0210 for Sample Text Text Edit */
-  public static final String XSDR_TEST_SAMPLE = PLUGIN_NAME + ".xsdr0210";
-
-  /* CONTEXT_IDs for Preferences Page follows the xsdpxxx context IDs */
-  
-  /* CONTEXT_ID xsdp0010 for XML Schema Preferences Page */
-  public static final String XSDP_PREFERENCE_PAGE = PLUGIN_NAME + ".xsdp0010";
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorPlugin.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorPlugin.java
deleted file mode 100644
index 55d62b2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDEditorPlugin.java
+++ /dev/null
@@ -1,326 +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.xsd.ui.internal;
-
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.text.MessageFormat;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IPluginDescriptor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.wst.sse.core.IModelManager;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-
-
-public class XSDEditorPlugin extends AbstractUIPlugin {
-	public final static String PLUGIN_ID = "org.eclipse.wst.xsd.ui";
-	public final static String XSD_EDITOR_ID = "org.eclipse.wst.xsd.ui.XSDEditor";
-
-	public final static String DEFAULT_TARGET_NAMESPACE = "http://www.example.org";
-
-	protected static XSDEditorPlugin plugin;
-
-	// protected XMLSchemaPackage xmlschemaPackage;
-	// KCPort private static MsgLogger myMsgLogger;
-
-	public XSDEditorPlugin(IPluginDescriptor descriptor) {
-		super(descriptor);
-		plugin = this;
-		// KCPort myMsgLogger = getMsgLogger();
-		// myMsgLogger.write(Level.CONFIG, new BuildInfo());
-		// myMsgLogger.write(Level.CONFIG, BuildInfo.getWSABuildLevel());
-	}
-
-	/**
-	 * Copy the w3c XMLSchema.dtd and datatypes.dtd into the plugin metadata
-	 * directory for validation purposes
-	 * 
-	 * @throws CoreException
-	 * 
-	 * ISSUE: should be removed.
-	 */
-	public void startup() throws CoreException {
-		super.startup();
-	}
-
-
-	/**
-	 * @deprecated use StructuredModelManager.getModelManager(); instead.
-	 */
-	public static IModelManager getModelManager() {
-		return StructuredModelManager.getModelManager();
-	}
-
-
-	/**
-	 * Get the Install URL
-	 */
-	public static URL getInstallURL() {
-		return getPlugin().getDescriptor().getInstallURL();
-	}
-
-	/**
-	 * Return the plugin physical directory location
-	 */
-	public static IPath getPluginLocation() {
-		try {
-			IPath installPath = new Path(getInstallURL().toExternalForm()).removeTrailingSeparator();
-			String installStr = Platform.asLocalURL(new URL(installPath.toString())).getFile();
-			return new Path(installStr);
-		}
-		catch (IOException e) {
-
-		}
-		return null;
-	}
-
-	/**
-	 * Get the metadata directory for this plugin
-	 */
-	public static String getMetaDataDirectory() {
-		return getPlugin().getStateLocation().toOSString();
-	}
-
-	/**
-	 * Get the one xmlschema package.
-	 */
-	// public XMLSchemaPackage getXMLSchemaPackage()
-	// {
-	// return xmlschemaPackage;
-	// }
-	// /**
-	// * Get the one xmlschema factory.
-	// */
-	// public XMLSchemaFactory getXMLSchemaFactory()
-	// {
-	// return (XMLSchemaFactory)xmlschemaPackage.getEFactoryInstance();
-	// }
-	/**
-	 * Get the singleton instance.
-	 */
-	public static XSDEditorPlugin getPlugin() {
-		return plugin;
-	}
-
-	public static Image getXSDImage(String iconName) {
-		return getPlugin().getImage(iconName);
-	}
-
-	public Image getImage(String iconName) {
-		ImageRegistry imageRegistry = getImageRegistry();
-
-		if (imageRegistry.get(iconName) != null) {
-			return imageRegistry.get(iconName);
-		}
-		else {
-			imageRegistry.put(iconName, ImageDescriptor.createFromFile(getClass(), iconName));
-			return imageRegistry.get(iconName);
-		}
-	}
-
-	public static String getXSDString(String key) {
-		return Platform.getResourceBundle(plugin.getBundle()).getString(key);
-	}
-
-	/**
-	 * This gets the string resource and does one substitution.
-	 */
-	public String getString(String key, Object s1) {
-		return MessageFormat.format(Platform.getResourceBundle(getBundle()).getString(key), new Object[]{s1});
-	}
-
-	// public IWorkspace getWorkspace()
-	// {
-	// return ResourcesPlugin.getWorkspace();
-	// }
-
-	public static Shell getShell() {
-		return getPlugin().getWorkbench().getActiveWorkbenchWindow().getShell();
-	}
-
-	/**
-	 * Get the xml schema default namespace prefix
-	 */
-	public String getXMLSchemaPrefix() {
-		return getPreferenceStore().getString(CONST_XSD_DEFAULT_PREFIX_TEXT);
-	}
-
-	/**
-	 * Get the xml schema default target namespace
-	 */
-	public String getXMLSchemaTargetNamespace() {
-		String targetNamespace = getPreferenceStore().getString(CONST_DEFAULT_TARGET_NAMESPACE);
-		if (!targetNamespace.endsWith("/")) {
-			targetNamespace = targetNamespace + "/";
-		}
-		return targetNamespace;
-	}
-
-	/**
-	 * Get the xml schema language qualification
-	 */
-	public boolean isQualifyXMLSchemaLanguage() {
-		return getPreferenceStore().getBoolean(CONST_XSD_LANGUAGE_QUALIFY);
-	}
-
-	/**
-	 * Method isCombinedDesignAndSourceView.
-	 * 
-	 * @return boolean if the editor should have a single page that is a
-	 *         combined design and source page
-	 */
-	public boolean isCombinedDesignAndSourceView() {
-		return COMBINED_LAYOUT.equals(getPreferenceStore().getString(EDITOR_LAYOUT));
-	}
-
-	public int getDesignLayout() {
-		if (TOP_LAYOUT.equals(getPreferenceStore().getString(DESIGN_LAYOUT))) {
-			return SWT.VERTICAL;
-		}
-		else if (BOTTOM_LAYOUT.equals(getPreferenceStore().getString(DESIGN_LAYOUT))) {
-			return SWT.VERTICAL;
-		}
-		else if (LEFT_LAYOUT.equals(getPreferenceStore().getString(DESIGN_LAYOUT))) {
-			return SWT.HORIZONTAL;
-		}
-		else if (RIGHT_LAYOUT.equals(getPreferenceStore().getString(DESIGN_LAYOUT))) {
-			return SWT.HORIZONTAL;
-		}
-		return SWT.HORIZONTAL;
-	}
-
-	public String getDesignLayoutPosition() {
-		if (TOP_LAYOUT.equals(getPreferenceStore().getString(DESIGN_LAYOUT))) {
-			return TOP_LAYOUT;
-		}
-		else if (BOTTOM_LAYOUT.equals(getPreferenceStore().getString(DESIGN_LAYOUT))) {
-			return BOTTOM_LAYOUT;
-		}
-		else if (LEFT_LAYOUT.equals(getPreferenceStore().getString(DESIGN_LAYOUT))) {
-			return LEFT_LAYOUT;
-		}
-		else if (RIGHT_LAYOUT.equals(getPreferenceStore().getString(DESIGN_LAYOUT))) {
-			return RIGHT_LAYOUT;
-		}
-		return RIGHT_LAYOUT;
-	}
-
-	/*---------------------------------------------------------------------------*/
-	/* the following methods are impls for the IPluginHelper interface */
-	/*---------------------------------------------------------------------------*/
-	// public void setMsgLoggerConfig(Hashtable msgLoggerConfig)
-	// {
-	// getMsgLogger().setMsgLoggerConfig(msgLoggerConfig);
-	// }
-	//
-	// public Hashtable getMsgLoggerConfig(Plugin plugin)
-	// {
-	// return (new PluginHelperImpl().getMsgLoggerConfig(plugin));
-	// }
-	//
-	// public Hashtable getMsgLoggerConfig()
-	// {
-	// return (getMsgLoggerConfig(this));
-	// }
-	//
-	// /**
-	// * XSDEditor and XSDModel use the same logger. See plugin.xml
-	// */
-	// public MsgLogger getMsgLogger()
-	// {
-	// if (myMsgLogger == null)
-	// {
-	// myMsgLogger = (MsgLogger) MsgLogger.getFactory().getLogger(new
-	// PluginHelperImpl().getMsgLoggerName(this), this);
-	// }
-	// return (myMsgLogger);
-	// }
-	public static final String CONST_XSD_DEFAULT_PREFIX_TEXT = "org.eclipse.wst.xmlschema.xsdDefaultPrefixText";
-	public static final String CONST_XSD_LANGUAGE_QUALIFY = "org.eclipse.wst.xmlschema.xsdQualify";
-	public static final String CONST_DEFAULT_TARGET_NAMESPACE = "org.eclipse.wst.xmlschema.defaultTargetnamespaceText";
-
-	// Preference to store which page should come up as the default page in
-	// the editor. This setting is based
-	// on the page that was left showing the last time the editor was closed.
-	public static String DEFAULT_PAGE = "org.eclipse.wst.xsd.ui.internal.defaultPage";
-	public static String DESIGN_PAGE = "org.eclipse.wst.xsd.ui.internal.designPage";
-	public static String SOURCE_PAGE = "org.eclipse.wst.xsd.ui.internal.sourcePage";
-	public static String GRAPH_PAGE = "org.eclipse.wst.xsd.ui.internal.graphPage";
-
-	public static String EDITOR_LAYOUT = "org.eclipse.wst.xsd.ui.internal.editorlayout";
-	public static String COMBINED_LAYOUT = "org.eclipse.wst.xsd.ui.internal.combined";
-	public static String SEPARATE_LAYOUT = "org.eclipse.wst.xsd.ui.internal.separate";
-
-	public static String DESIGN_LAYOUT = "org.eclipse.wst.xsd.ui.internal.designlayout";
-	public static String TOP_LAYOUT = "org.eclipse.wst.xsd.ui.internal.top";
-	public static String BOTTOM_LAYOUT = "org.eclipse.wst.xsd.ui.internal.bottom";
-	public static String LEFT_LAYOUT = "org.eclipse.wst.xsd.ui.internal.left";
-	public static String RIGHT_LAYOUT = "org.eclipse.wst.xsd.ui.internal.right";
-
-	/**
-	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#initializeDefaultPreferences(IPreferenceStore)
-	 */
-	protected void initializeDefaultPreferences(IPreferenceStore store) {
-		super.initializeDefaultPreferences(store);
-
-		store.setDefault(CONST_XSD_DEFAULT_PREFIX_TEXT, "xsd");
-		store.setDefault(CONST_XSD_LANGUAGE_QUALIFY, false);
-
-		store.setDefault(DEFAULT_PAGE, DESIGN_PAGE);
-		store.setDefault(EDITOR_LAYOUT, COMBINED_LAYOUT);
-		store.setDefault(DESIGN_LAYOUT, RIGHT_LAYOUT);
-
-		store.setDefault(XSDEditorPlugin.CONST_DEFAULT_TARGET_NAMESPACE, DEFAULT_TARGET_NAMESPACE);
-	}
-
-	public void setDefaultPage(String page) {
-		getPreferenceStore().setValue(DEFAULT_PAGE, page);
-	}
-
-	/**
-	 * Method getDefaultPage.
-	 * 
-	 * @return String value of the string constant that is the default page
-	 *         the editor should turn to when first opened. Changes to the
-	 *         last visible page when the editor was closed
-	 */
-	public String getDefaultPage() {
-		return getPreferenceStore().getString(DEFAULT_PAGE);
-	}
-
-	protected URL baseURL;
-
-	public URL getBaseURL() {
-		return getDescriptor().getInstallURL();
-	}
-
-	public Image getIconImage(String object) {
-		try {
-			return ExtendedImageRegistry.getInstance().getImage(new URL(getBaseURL() + "icons/" + object + ".gif"));
-		}
-		catch (MalformedURLException exception) {
-			System.out.println("Failed to load image for '" + object + "'");
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDMenuListener.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDMenuListener.java
deleted file mode 100644
index 5f24fad..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDMenuListener.java
+++ /dev/null
@@ -1,2150 +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.xsd.ui.internal;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gef.ui.parts.AbstractEditPartViewer;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.actions.ActionContext;
-import org.eclipse.wst.xsd.ui.internal.actions.AddEnumsAction;
-import org.eclipse.wst.xsd.ui.internal.actions.AddModelGroupAction;
-import org.eclipse.wst.xsd.ui.internal.actions.BackAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateAnnotationAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateElementAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateGroupAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateIdentityConstraintsAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateLocalComplexTypeAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateLocalSimpleTypeAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateSimpleContentAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateSimpleTypeAction;
-import org.eclipse.wst.xsd.ui.internal.actions.DOMAttribute;
-import org.eclipse.wst.xsd.ui.internal.actions.DeleteAction;
-import org.eclipse.wst.xsd.ui.internal.actions.OpenSchemaAction;
-import org.eclipse.wst.xsd.ui.internal.actions.SetBaseTypeAction;
-import org.eclipse.wst.xsd.ui.internal.actions.SetMultiplicityAction;
-import org.eclipse.wst.xsd.ui.internal.actions.SetTypeAction;
-import org.eclipse.wst.xsd.ui.internal.actions.XSDEditNamespacesAction;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ComplexTypeDefinitionEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ElementDeclarationEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ModelGroupDefinitionEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.TopLevelComponentEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.model.Category;
-import org.eclipse.wst.xsd.ui.internal.provider.CategoryAdapter;
-import org.eclipse.wst.xsd.ui.internal.refactor.actions.RefactorActionGroup;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDCompositor;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class XSDMenuListener implements IMenuListener
-{
-  protected ISelectionProvider selectionProvider;
-  //protected XSDTextEditor textEditor;
-  protected DeleteAction deleteAction;
-//  protected IAction undoAction, redoAction;
-  protected CreateElementAction addComplexTypeAction;
-  protected XSDSchema xsdSchema;
-  protected boolean isReadOnly;
-  protected Object sourceContext;
-  private RefactorActionGroup fRefactorMenuGroup;
-
-  /**
-   * Constructor for XSDMenuListener.
-   */
-  public XSDMenuListener(ISelectionProvider selectionProvider)
-  {
-    super();
-    this.selectionProvider = selectionProvider;
-
-    deleteAction = new DeleteAction(XSDEditorPlugin.getXSDString("_UI_ACTION_DELETE"), null, getXSDSchema());
-    deleteAction.setSelectionProvider(selectionProvider);
-    selectionProvider.addSelectionChangedListener(deleteAction);
-  }
-
-  public void setSourceContext(Object sourceContext)
-  {
-    this.sourceContext = sourceContext;
-  }
-
-  public void setSelectionProvider(ISelectionProvider selectionProvider)
-  {
-    this.selectionProvider = selectionProvider;
-  }
-
-  protected XSDSchema getXSDSchema()
-  {
-    return xsdSchema;
-  }
-
-  protected Object getSelectedElement()
-  {
-    ISelection selection = selectionProvider.getSelection();
-    if (selection.isEmpty())
-    {
-      return null;
-    }
-    return ((IStructuredSelection) selection).getFirstElement();
-  }
-  
-  protected void updateXSDSchema()
-  {
-    Object object = getSelectedElement();
-    if (object instanceof XSDConcreteComponent)
-    {
-      xsdSchema = ((XSDConcreteComponent)object).getSchema();
-      boolean flag = true;
-      isReadOnly = false;
-      if (xsdSchema == null)
-      {
-        return;
-      }
-      while (flag)
-      {
-        List list = xsdSchema.getReferencingDirectives();
-        if (list.size() > 0)
-        {
-          isReadOnly = true;
-          XSDSchemaDirective xsdSchemaDirective = (XSDSchemaDirective)list.get(0);
-          XSDSchema refSchema = xsdSchemaDirective.getSchema(); 
-          // check if included schema is the same as the current - don't want cycle
-          if (refSchema != null && refSchema != xsdSchema)
-          {
-            xsdSchema = xsdSchemaDirective.getSchema();
-          }
-          else
-          {
-            if (refSchema == xsdSchema)
-            {
-              // if it includes itself, then we should still be able to edit it
-              isReadOnly = false;
-            }
-            flag = false;
-          }
-        }
-        else
-        {
-          flag = false;
-        }
-      }
-    }
-    else if (object instanceof Category)
-    {
-      Category cg = (Category)object;
-      xsdSchema = cg.getXSDSchema();
-    }
-    else if (object instanceof CategoryAdapter)
-    {
-      CategoryAdapter category = (CategoryAdapter)object;
-      xsdSchema = category.getXSDSchema();
-    }
-  }
-
-  /*
-   * @see IMenuListener#menuAboutToShow(IMenuManager)
-   */
-  public void menuAboutToShow(IMenuManager manager)
-  {
-    isReadOnly = false;
-    updateXSDSchema();
-    if (xsdSchema == null)
-    {
-      return;
-    }
-    
-    deleteAction.setXSDSchema(xsdSchema);
-    deleteAction.setEnabled(!isReadOnly);
-    
-    BackAction backAction = new BackAction(XSDEditorPlugin.getXSDString("_UI_ACTION_BACK_TO_SCHEMA_VIEW")); //$NON-NLS-1$
-    backAction.setXSDSchema(getXSDSchema());
-    backAction.setSelectionProvider(selectionProvider);
-    
-    Object selectedElementObj = getSelectedElement();
-    
-    if (selectedElementObj instanceof XSDSchema || selectedElementObj instanceof Category || selectedElementObj instanceof CategoryAdapter)
-    {
-      backAction.setEnabled(false);
-    }
-    manager.add(backAction);
-    manager.add(new Separator());
-//    if (undoAction == null && textEditor != null)
-//    {
-//      undoAction = textEditor.getAction(org.eclipse.ui.texteditor.ITextEditorActionConstants.UNDO);
-//      redoAction = textEditor.getAction(org.eclipse.ui.texteditor.ITextEditorActionConstants.REDO);
-//    }
-    //    Element selectedElement = getSelectedElement();
-
-    Element selectedElement = null;
-    
-    if (selectedElementObj instanceof Element)
-    {
-      selectedElement = (Element) selectedElementObj;
-    }
-    else if (selectedElementObj instanceof XSDConcreteComponent)
-    {
-      selectedElement = ((XSDConcreteComponent) selectedElementObj).getElement();
-    }
-    else if (selectedElementObj instanceof Category || selectedElementObj instanceof CategoryAdapter)
-    {
-      int groupType = -1;
-      if (selectedElementObj instanceof Category)
-      {
-        Category category = (Category) selectedElementObj;
-        groupType = category.getGroupType();
-      }
-      // todo... We need to ensure we eliminate the need for
-      // this case. The XSDMenuListener class should not have
-      // view dependant code. We need to do some work to ensure all
-      // views utilize the 'Category' model object
-      else if (selectedElementObj instanceof CategoryAdapter)
-      {
-        CategoryAdapter categoryAdapter = (CategoryAdapter) selectedElementObj;
-        groupType = categoryAdapter.getGroupType();
-      }
-      ArrayList attributes = null;
-      Element parent = getXSDSchema().getElement();
-      
-      if (parent == null)
-      {
-        return;
-      }
-      
-      Node relativeNode = null;
-      switch (groupType)
-      {
-        case Category.TYPES : {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("ComplexType")));
-          Action action = addCreateElementAction(manager, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_COMPLEX_TYPE"), attributes, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("SimpleType")));
-          Action action2 = addCreateSimpleTypeAction(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SIMPLE_TYPE"), attributes, parent, relativeNode);
-          ((CreateElementAction) action2).setIsGlobal(true);
-          break;
-        }
-        case Category.ELEMENTS : {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.ELEMENT_ELEMENT_TAG, "GlobalElement")));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          Action action = addCreateElementAction(manager, XSDConstants.ELEMENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ELEMENT"), attributes, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          break;
-        }
-        case Category.GROUPS : {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.GROUP_ELEMENT_TAG, "Group")));
-          CreateGroupAction groupAction = addCreateGroupAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_GROUP"), attributes, parent, relativeNode);
-          groupAction.setIsGlobal(true);
-          break;
-        }
-        case Category.ATTRIBUTES : {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.ATTRIBUTE_ELEMENT_TAG, "GlobalAttribute")));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          Action action = addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_GLOBAL_ATTRIBUTE"), attributes, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          break;
-        }
-        case Category.ATTRIBUTE_GROUPS : {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, "AttributeGroup")));
-          Action action = addCreateElementAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP"), attributes, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          break;
-        }
-        case Category.NOTATIONS : {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.NOTATION_ELEMENT_TAG, "Notation")));
-          attributes.add(new DOMAttribute(XSDConstants.PUBLIC_ATTRIBUTE, ""));
-          Action action = addCreateElementAction(manager, XSDConstants.NOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_NOTATION"), attributes, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          break;
-        }
-        case Category.DIRECTIVES : {
-          boolean b = true;
-          NodeList children = parent.getChildNodes();
-          int length = children.getLength();
-          Node effectiveRelativeNode = parent.getFirstChild();
-          for (int i = 0; i < length && b; i++)
-          {
-            Node child = children.item(i);
-            if (child != null && child instanceof Element)
-            {
-              if (XSDDOMHelper.inputEquals((Element) child, XSDConstants.INCLUDE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals((Element) child, XSDConstants.IMPORT_ELEMENT_TAG, false)
-                  || XSDDOMHelper.inputEquals((Element) child, XSDConstants.REDEFINE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals((Element) child, XSDConstants.ANNOTATION_ELEMENT_TAG, false))
-              {
-                effectiveRelativeNode = child;
-              }
-              else
-              {
-                b = false;
-              }
-            }
-          }
-          relativeNode = effectiveRelativeNode != null ? XSDDOMHelper.getNextElementNode(effectiveRelativeNode) : null;
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, ""));
-          Action action = addCreateElementAction(manager, XSDConstants.INCLUDE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_INCLUDE"), attributes, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          action = addCreateElementAction(manager, XSDConstants.IMPORT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_IMPORT"), null, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          action = addCreateElementAction(manager, XSDConstants.REDEFINE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_REDEFINE"), attributes, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          break;
-        }
-        case Category.ANNOTATIONS : {
-          Action action = addCreateElementAction(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), null, parent, relativeNode);
-          ((CreateElementAction) action).setIsGlobal(true);
-          break;
-        }
-      }
-//      manager.add(new Separator());
-//      if (undoAction != null)
-//      {
-//        manager.add(undoAction);
-//        manager.add(redoAction);
-//      }
-      
-      // insertion point for popupMenus extension
-      manager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));    
-
-      return;
-    }
-    if (selectedElement != null)
-    {
-      // Add context menu items for selected element
-      addContextItems(manager, selectedElement, null);
-      manager.add(new Separator());
-      //else
-//      if (textEditor != null)
-//      {
-//        Document document = getXSDSchema().getDocument();
-//        if (document != null)
-//        {
-//          Element docElement = getXSDSchema().getDocument().getDocumentElement();
-//          if (!XSDDOMHelper.inputEquals(docElement, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-//          //        if (list.getLength() == 0)
-//          {
-//            // no schema tag. Enable the Add Schema action
-//            AddSchemaNodeAction action = new AddSchemaNodeAction(XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SCHEMA_NODE"));
-//            action.setEditor((XSDEditor) textEditor.getEditorPart());
-//            manager.add(action);
-//          }
-//        }
-//      }
-    }
-//    manager.add(new Separator());
-//    if (undoAction != null)
-//    {
-//      manager.add(undoAction);
-//      manager.add(redoAction);
-//    }
-    
-    manager.add(new Separator());
-    if (deleteAction != null)
-    {
-      manager.add(deleteAction);
-    }
-    
-    // insertion point for popupMenus extension
-    manager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));    
-  }
-
-  protected String getBuiltInStringQName()
-  {
-    String stringName = "string";
-    if (getXSDSchema() != null)
-    {
-      String schemaForSchemaPrefix = getXSDSchema().getSchemaForSchemaQNamePrefix();
-      if (schemaForSchemaPrefix != null && schemaForSchemaPrefix.length() > 0)
-      {
-        String prefix = getXSDSchema().getSchemaForSchemaQNamePrefix();
-        if (prefix != null && prefix.length() > 0)
-        {
-          stringName = prefix + ":" + stringName;
-        }
-      }
-    }
-    return stringName;
-  }
-
-  /**
-   * Method addContextItems.
-   * 
-   * @param manager
-   * @param parent -
-   *          menu items should be context sensitive to this node
-   * @param relativeNode -
-   *          anything inserted, should be inserted before this node (which is a
-   *          child of the parent node. A value of null means add to the end
-   */
-  protected void addContextItems(IMenuManager manager, Element parent, Node relativeNode)
-  {
-    ArrayList attributes = null;
-    if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-    { //
-      addSchemaElementItems(manager, parent, relativeNode);
-      manager.add(new Separator());
-      boolean b = true;
-      NodeList children = parent.getChildNodes();
-      Node effectiveRelativeNode = parent.getFirstChild();
-      for (int i = 0; i < children.getLength() && b; i++)
-      {
-        Node child = children.item(i);
-        if (child != null && child instanceof Element)
-        {
-          if (XSDDOMHelper.inputEquals((Element) child, XSDConstants.INCLUDE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals((Element) child, XSDConstants.IMPORT_ELEMENT_TAG, false)
-              || XSDDOMHelper.inputEquals((Element) child, XSDConstants.REDEFINE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals((Element) child, XSDConstants.ANNOTATION_ELEMENT_TAG, false))
-          {
-            effectiveRelativeNode = child;
-          }
-          else
-          {
-            b = false;
-          }
-        }
-      }
-      relativeNode = effectiveRelativeNode != null ? effectiveRelativeNode.getNextSibling() : null;
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, ""));
-      addCreateElementAction(manager, XSDConstants.INCLUDE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_INCLUDE"), attributes, parent, relativeNode);
-      addCreateElementAction(manager, XSDConstants.IMPORT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_IMPORT"), null, parent, relativeNode);
-      addCreateElementAction(manager, XSDConstants.REDEFINE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_REDEFINE"), attributes, parent, relativeNode);
-      attributes = null;
-      addCreateAnnotationAction(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), null, parent, relativeNode);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false))
-    { //
-      addCreateElementAction(manager, XSDConstants.DOCUMENTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_DOC"), attributes, parent, null);
-      addCreateElementAction(manager, XSDConstants.APPINFO_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_APP_INFO"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-    {
-      XSDConcreteComponent concreteComponent = getXSDSchema().getCorrespondingComponent(parent);
-      Element parentNode = (Element) parent.getParentNode();
-      boolean isGlobalElement = false;
-      if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        isGlobalElement = true;
-      }
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      boolean simpleTypeExists = elementExists(XSDConstants.SIMPLETYPE_ELEMENT_TAG, parent);
-      boolean complexTypeExists = elementExists(XSDConstants.COMPLEXTYPE_ELEMENT_TAG, parent);
-      manager.add(new Separator());
-      if (annotationExists)
-      {
-        Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-        if (!(simpleTypeExists || complexTypeExists) && annotationNode != null)
-        {
-          //addCreateLocalSimpleTypeActionIfNotExist(manager,
-          // XSDConstants.SIMPLETYPE_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"),
-          // attributes, parent, annotationNode.getNextSibling());
-          //addCreateLocalComplexTypeActionIfNotExist(manager,
-          // XSDConstants.COMPLEXTYPE_ELEMENT_TAG, "Add Local Complex Type",
-          // attributes, parent, annotationNode.getNextSibling());
-          manager.add(new Separator());
-        }
-      }
-      else
-      {
-        // Should still be able to add the content models if the anonymous type
-        // exists,
-        // ie. with attributes
-        //        if (!(simpleTypeExists || complexTypeExists))
-        //        {
-        //addCreateLocalSimpleTypeActionIfNotExist(manager,
-        // XSDConstants.SIMPLETYPE_ELEMENT_TAG,
-        // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"),
-        // attributes, parent, parent.getFirstChild());
-        //addCreateLocalComplexTypeActionIfNotExist(manager,
-        // XSDConstants.COMPLEXTYPE_ELEMENT_TAG, "Add Local Complex Type",
-        // attributes, parent, parent.getFirstChild());
-        if (concreteComponent != null)
-        {
-          AddModelGroupAction addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.SEQUENCE_LITERAL);
-          addModelGroupAction.setEnabled(!isReadOnly);
-          manager.add(addModelGroupAction);
-          
-          addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.CHOICE_LITERAL);
-          addModelGroupAction.setEnabled(!isReadOnly);
-          manager.add(addModelGroupAction);
-          
-          addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.ALL_LITERAL);
-          addModelGroupAction.setEnabled(!isReadOnly);
-          manager.add(addModelGroupAction);
-          
-          manager.add(new Separator());
-        }
-        //        }
-      }
-//      attributes = new ArrayList();
-//      attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, "New_Unique"));
-//      addCreateIdentityConstraintsAction(manager, XSDConstants.UNIQUE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_UNIQUE"), attributes, parent, null);
-//      attributes = new ArrayList();
-//      attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, "New_Key"));
-//      addCreateIdentityConstraintsAction(manager, XSDConstants.KEY_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_KEY"), attributes, parent, null);
-//      attributes = new ArrayList();
-//      attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, "New_KeyRef"));
-//      addCreateIdentityConstraintsAction(manager, XSDConstants.KEYREF_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_KEY_REF"), attributes, parent, null);
-      XSDDOMHelper domHelper = new XSDDOMHelper();
-      Element anonymousType = (Element) domHelper.getChildNode(parent, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      if (anonymousType != null)
-      {
-        manager.add(new Separator());
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("ComplexType")));
-        addMoveAnonymousGlobal(manager, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL"), attributes, anonymousType, null);
-        attributes = null;
-      }
-      anonymousType = (Element) domHelper.getChildNode(parent, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      if (anonymousType != null)
-      {
-        manager.add(new Separator());
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("SimpleType")));
-        addMoveAnonymousGlobal(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL"), attributes, anonymousType, null);
-        attributes = null;
-      }
-      
-      manager.add(new Separator());
-      MenuManager setTypeCascadeMenu = new MenuManager("Set Type");
-      manager.add(setTypeCascadeMenu);
-
-      SetTypeAction setNewComplexTypeAction = new SetTypeAction("New Complex Type", ImageDescriptor.createFromFile(XSDEditorPlugin.class, "icons/XSDComplexType.gif"), concreteComponent);
-      setNewComplexTypeAction.setTypeKind(XSDConstants.COMPLEXTYPE_ELEMENT);
-      setNewComplexTypeAction.setEnabled(!isReadOnly);
-      setTypeCascadeMenu.add(setNewComplexTypeAction);
-
-      SetTypeAction setNewSimpleTypeAction = new SetTypeAction("New Simple Type", ImageDescriptor.createFromFile(XSDEditorPlugin.class, "icons/XSDSimpleType.gif"), concreteComponent);
-      setNewSimpleTypeAction.setTypeKind(XSDConstants.SIMPLETYPE_ELEMENT);
-      setNewSimpleTypeAction.setEnabled(!isReadOnly);
-      setTypeCascadeMenu.add(setNewSimpleTypeAction);
-      
-      SetTypeAction setExistingTypeAction = new SetTypeAction("Set Existing Type...", concreteComponent);
-      setExistingTypeAction.setTypeKind(0);
-      setExistingTypeAction.setEnabled(!isReadOnly);
-      setTypeCascadeMenu.add(setExistingTypeAction);
-      manager.add(new Separator());
-
-      if (!isGlobalElement)
-      {
-        addMultiplicityMenu(concreteComponent, manager);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.SEQUENCE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals(parent, XSDConstants.CHOICE_ELEMENT_TAG, false))
-    { //
-      XSDConcreteComponent concreteComponent = getXSDSchema().getCorrespondingComponent(parent);
-      
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      manager.add(new Separator());
-      addCreateElementAction(manager, XSDConstants.CHOICE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CHOICE"), attributes, parent, null);
-      addCreateElementAction(manager, XSDConstants.SEQUENCE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SEQUENCE"), attributes, parent, null);
-      addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, null);
-      manager.add(new Separator());
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ELEMENT_ELEMENT_TAG, "Element", false)));
-      attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-      addCreateElementAction(manager, XSDConstants.ELEMENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ELEMENT"), attributes, parent, null);
-      addCreateElementRefAction(manager, XSDConstants.ELEMENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ELEMENT_REF"), parent, null);
-      manager.add(new Separator());
-      attributes = null;
-      addCreateElementAction(manager, XSDConstants.ANY_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ELEMENT"), attributes, parent, null);
-      
-      addMultiplicityMenu(concreteComponent, manager);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ALL_ELEMENT_TAG, false))
-    { //
-      XSDConcreteComponent concreteComponent = getXSDSchema().getCorrespondingComponent(parent);
-      
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      manager.add(new Separator());
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ELEMENT_ELEMENT_TAG, "Element", false)));
-      attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-      addCreateElementAction(manager, XSDConstants.ELEMENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ELEMENT"), attributes, parent, null);
-      addCreateElementRefAction(manager, XSDConstants.ELEMENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ELEMENT_REF"), parent, null);
-      
-      addMultiplicityMenu(concreteComponent, manager);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, false))
-    { //
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      boolean anyAttributeExists = elementExists(XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, parent);
-      Node anyAttributeNode = null;
-      manager.add(new Separator());
-      if (anyAttributeExists)
-      {
-        anyAttributeNode = getFirstChildNodeIfExists(parent, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false);
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-        attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-        addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, anyAttributeNode);
-        attributes = null;
-        addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, anyAttributeNode);
-        addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, anyAttributeNode);
-      }
-      else
-      {
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-        attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-        addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-        attributes = null;
-        addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, parent.getLastChild());
-        addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, parent.getLastChild());
-      }
-      attributes = null;
-      addCreateElementActionIfNotExist(manager, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.NOTATION_ELEMENT_TAG, false))
-    { //
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-    { //
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      boolean restrictionExists = elementExists(XSDConstants.RESTRICTION_ELEMENT_TAG, parent);
-      boolean unionExists = elementExists(XSDConstants.UNION_ELEMENT_TAG, parent);
-      boolean listExists = elementExists(XSDConstants.LIST_ELEMENT_TAG, parent);
-      if (!(restrictionExists || unionExists || listExists))
-      {
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.BASE_ATTRIBUTE, getBuiltInStringQName()));
-        addCreateElementActionIfNotExist(manager, XSDConstants.RESTRICTION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_RESTRICTION"), attributes, parent, null);
-        attributes = null;
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, getBuiltInStringQName()));
-        addCreateElementActionIfNotExist(manager, XSDConstants.UNION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_UNION"), attributes, parent, null);
-        attributes = null;
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE, getBuiltInStringQName()));
-        addCreateElementActionIfNotExist(manager, XSDConstants.LIST_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LIST"), attributes, parent, null);
-        attributes = null;
-      }
-      if (XSDDOMHelper.inputEquals(parent.getParentNode(), XSDConstants.ELEMENT_ELEMENT_TAG, false))
-      {
-        manager.add(new Separator());
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("SimpleType")));
-        addMoveAnonymousGlobal(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL"), attributes, parent, null);
-        attributes = null;
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.GROUP_ELEMENT_TAG, false))
-    { //
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      addCreateElementActionIfNotExist(manager, XSDConstants.SEQUENCE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-    { //
-      boolean annotationExists = false;
-      boolean contentExists = false;
-      boolean complexOrSimpleContentExists = false;
-      boolean anyAttributeExists = false;
-      Node annotationNode = null;
-      Node contentNode = null;
-      Node anyAttributeNode = null;
-      NodeList children = parent.getChildNodes();
-      for (int i = 0; i < children.getLength(); i++)
-      {
-        Node child = children.item(i);
-        if (child != null && child instanceof Element)
-        {
-          if (XSDDOMHelper.inputEquals((Element) child, XSDConstants.ANNOTATION_ELEMENT_TAG, false))
-          {
-            annotationNode = child;
-            annotationExists = true;
-          }
-          else if (XSDDOMHelper.inputEquals((Element) child, XSDConstants.SEQUENCE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals((Element) child, XSDConstants.ALL_ELEMENT_TAG, false)
-              || XSDDOMHelper.inputEquals((Element) child, XSDConstants.CHOICE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals((Element) child, XSDConstants.GROUP_ELEMENT_TAG, true)
-              || XSDDOMHelper.inputEquals((Element) child, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals((Element) child, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-          {
-            contentExists = true;
-            contentNode = child;
-            if (XSDDOMHelper.inputEquals((Element) child, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals((Element) child, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-            {
-              complexOrSimpleContentExists = true;
-            }
-          }
-          else if (XSDDOMHelper.inputEquals((Element) child, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false))
-          {
-            anyAttributeExists = true;
-            anyAttributeNode = child;
-          }
-        }
-      }
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      manager.add(new Separator());
-      addSetBaseTypeAction(manager, parent);
-      XSDConcreteComponent concreteComponent = getXSDSchema().getCorrespondingComponent(parent);
-      if (annotationExists)
-      {
-        if (!contentExists)
-        {
-          // Add content model
-          // addCreateElementAction(manager, XSDConstants.SEQUENCE_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"),
-          // attributes, parent, annotationNode.getNextSibling());
-          if (concreteComponent != null)
-          {
-            AddModelGroupAction addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.SEQUENCE_LITERAL);
-            addModelGroupAction.setEnabled(!isReadOnly);
-            manager.add(addModelGroupAction);
-            
-            addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.CHOICE_LITERAL);
-            addModelGroupAction.setEnabled(!isReadOnly);
-            manager.add(addModelGroupAction);
-            
-            addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.ALL_LITERAL);
-            addModelGroupAction.setEnabled(!isReadOnly);
-            manager.add(addModelGroupAction);
-
-          }
-          // Temporarily remove this until we provide a graphical rep of these
-          // components
-          //          addCreateSimpleContentAction(manager,
-          // XSDConstants.SIMPLECONTENT_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SIMPLE_CONTENT"),
-          // attributes,
-          // parent, annotationNode.getNextSibling());
-          //          addCreateSimpleContentAction(manager,
-          // XSDConstants.COMPLEXCONTENT_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_COMPLEX_CONTENT"),
-          // attributes,
-          // parent, annotationNode.getNextSibling());
-          addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, annotationNode.getNextSibling());
-          attributes = null;
-        }
-      }
-      else
-      {
-        if (!contentExists)
-        {
-          // Add content model
-          // addCreateElementAction(manager, XSDConstants.SEQUENCE_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"),
-          // attributes, parent, parent.getFirstChild());
-          if (concreteComponent != null)
-          {
-            AddModelGroupAction addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.SEQUENCE_LITERAL);
-            addModelGroupAction.setEnabled(!isReadOnly);
-            manager.add(addModelGroupAction);
-            
-            addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.CHOICE_LITERAL);
-            addModelGroupAction.setEnabled(!isReadOnly);
-            manager.add(addModelGroupAction);
-            
-            addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.ALL_LITERAL);
-            addModelGroupAction.setEnabled(!isReadOnly);
-            manager.add(addModelGroupAction);
-
-          }
-          // Temporarily remove this until we provide a graphical rep of these
-          // components
-          //          addCreateSimpleContentAction(manager,
-          // XSDConstants.SIMPLECONTENT_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SIMPLE_CONTENT"),
-          // attributes,
-          // parent, parent.getFirstChild());
-          //          addCreateSimpleContentAction(manager,
-          // XSDConstants.COMPLEXCONTENT_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_COMPLEX_CONTENT"),
-          // attributes,
-          // parent, parent.getFirstChild());
-          addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, parent.getFirstChild());
-          attributes = null;
-        }
-      }
-      manager.add(new Separator());
-      if (anyAttributeExists)
-      {
-        if (!complexOrSimpleContentExists)
-        {
-//          attributes = new ArrayList();
-//          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-//          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-//          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, anyAttributeNode);
-//          attributes = null;
-//          // ARE ATTRIBUTE GROUPS ALLOWED ?
-//          //          addCreateElementAction(manager,
-//          // XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG,
-//          // "_UI_ACTION_ADD_ATTRIBUTE_GROUP", attributes, parent,
-//          // anyAttributeNode);
-//          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, anyAttributeNode);
-//          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, anyAttributeNode);
-        }
-      }
-      else
-      {
-        if (!complexOrSimpleContentExists)
-        {
-//          attributes = new ArrayList();
-//          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-//          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-//          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-//          attributes = null;
-//          // ARE ATTRIBUTE GROUPS ALLOWED ?
-//          //          addCreateElementAction(manager,
-//          // XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG,
-//          // "_UI_ACTION_ADD_ATTRIBUTE_GROUP", attributes, parent,
-//          // parent.getLastChild());
-//          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, parent.getLastChild());
-//          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, parent.getLastChild());
-//          attributes = null;
-//          addCreateElementActionIfNotExist(manager, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-        }
-      }
-      if (XSDDOMHelper.inputEquals(parent.getParentNode(), XSDConstants.ELEMENT_ELEMENT_TAG, false))
-      {
-        manager.add(new Separator());
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("ComplexType")));
-        addMoveAnonymousGlobal(manager, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL"), attributes, parent, null);
-        attributes = null;
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-    { //
-      XSDDOMHelper xsdDOMHelper = new XSDDOMHelper();
-      Element derivedByNode = xsdDOMHelper.getDerivedByElement(parent);
-      String derivedByName = xsdDOMHelper.getDerivedByName(parent);
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      manager.add(new Separator());
-      if (derivedByNode == null)
-      {
-        TypesHelper typesHelper = new TypesHelper(getXSDSchema());
-        String firstType = "";
-        List listOfCT = typesHelper.getUserComplexTypeNamesList();
-        if (listOfCT.size() > 0)
-        {
-          firstType = (String) (listOfCT).get(0);
-        }
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.BASE_ATTRIBUTE, firstType));
-        addCreateElementActionIfNotExist(manager, XSDConstants.RESTRICTION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_RESTRICTION"), attributes, parent, null);
-        addCreateElementActionIfNotExist(manager, XSDConstants.EXTENSION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_EXTENSION"), attributes, parent, null);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-    { //
-      XSDDOMHelper xsdDOMHelper = new XSDDOMHelper();
-      Element derivedByNode = xsdDOMHelper.getDerivedByElement(parent);
-      String derivedByName = xsdDOMHelper.getDerivedByName(parent);
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      manager.add(new Separator());
-      if (derivedByNode == null)
-      {
-        TypesHelper typesHelper = new TypesHelper(getXSDSchema());
-        String firstType = "";
-        List listOfCT = typesHelper.getUserComplexTypeNamesList();
-        if (listOfCT.size() > 0)
-        {
-          firstType = (String) (listOfCT).get(0);
-        }
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.BASE_ATTRIBUTE, firstType));
-        addCreateElementActionIfNotExist(manager, XSDConstants.RESTRICTION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_RESTRICTION"), attributes, parent, null);
-        addCreateElementActionIfNotExist(manager, XSDConstants.EXTENSION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_EXTENSION"), attributes, parent, null);
-      }
-      /*
-       * for combined SimpleContent and derivedBy nodes (but without
-       * restrictions) XSDDOMHelper xsdDOMHelper = new XSDDOMHelper(); Element
-       * derivedByNode = xsdDOMHelper.getDerivedByElement(parent); String
-       * derivedByName = xsdDOMHelper.getDerivedByName(parent);
-       * 
-       * if (derivedByNode != null) { if (derivedByName.equals("restriction")) {
-       * addCreateElementActionIfNotExist(manager,
-       * XSDConstants.SIMPLETYPE_ELEMENT_TAG, "_UI_ACTION_ADD_SIMPLE_TYPE",
-       * attributes, derivedByNode, relativeNode); }
-       * addCreateElementActionIfNotExist(manager,
-       * XSDConstants.ANNOTATION_ELEMENT_TAG, "_UI_ACTION_ADD_ANNOTATION",
-       * attributes, derivedByNode, relativeNode);
-       * addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG,
-       * "_UI_ACTION_ADD_ATTRIBUTE", attributes, derivedByNode, relativeNode);
-       * attributes = new ArrayList(); attributes.add(new
-       * DOMAttribute(XSDConstants.REF_ATTRIBUTE, ""));
-       * addCreateElementAction(manager,
-       * XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG,
-       * "_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF", attributes, derivedByNode,
-       * relativeNode); attributes = new ArrayList();
-       * addCreateElementActionIfNotExist(manager,
-       * XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, "_UI_ACTION_ADD_ANY_ATTRIBUTE",
-       * attributes, derivedByNode, relativeNode); } else { TypesHelper
-       * typesHelper = new TypesHelper(getXSDSchema()); String firstType =
-       * (String)(typesHelper.getBuiltInTypeNamesList()).get(0); attributes =
-       * new ArrayList(); attributes.add(new
-       * DOMAttribute(XSDConstants.BASE_ATTRIBUTE, firstType));
-       * 
-       * addCreateElementActionIfNotExist(manager,
-       * XSDConstants.ANNOTATION_ELEMENT_TAG, "_UI_ACTION_ADD_ANNOTATION",
-       * attributes, parent, relativeNode);
-       * addCreateElementActionIfNotExist(manager,
-       * XSDConstants.RESTRICTION_ELEMENT_TAG, "_UI_ACTION_ADD_RESTRICTION",
-       * attributes, parent, relativeNode);
-       * addCreateElementActionIfNotExist(manager,
-       * XSDConstants.EXTENSION_ELEMENT_TAG, "_UI_ACTION_ADD_EXTENSION",
-       * attributes, parent, relativeNode); }
-       */
-      //      addCreateElementActionIfNotExist(manager,
-      // XSDConstants.SEQUENCE_ELEMENT_TAG,
-      // "_UI_ACTION_ADD_CONTENT_MODEL", attributes, parent, relativeNode);
-      //      attributes = new ArrayList();
-      //      attributes.add(new DOMAttribute(XSDConstants.REF_ATTRIBUTE, ""));
-      //      addCreateElementActionIfNotExist(manager,
-      // XSDConstants.GROUP_ELEMENT_TAG,
-      // "_UI_ADD_GROUP_REF", attributes, parent, relativeNode);
-      //      addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG,
-      // "_UI_ACTION_ADD_ATTRIBUTE", attributes, parent, relativeNode);
-      //      attributes = new ArrayList();
-      //      attributes.add(new DOMAttribute(XSDConstants.REF_ATTRIBUTE, ""));
-      //      addCreateElementAction(manager,
-      // XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG,
-      // "_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF", attributes, parent,
-      // relativeNode);
-      //      addCreateElementActionIfNotExist(manager,
-      // XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, "_UI_ACTION_ADD_ANY_ATTRIBUTE",
-      // attributes, parent, relativeNode);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.RESTRICTION_ELEMENT_TAG, false))
-    {
-      Element parentNode = (Element) parent.getParentNode();
-      // <simpleContent>
-      //    <restriction>
-      //      ...
-      if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-      {
-        boolean annotationExists = false;
-        boolean anyAttributeExists = false;
-        Node anyAttributeNode = null;
-        anyAttributeExists = elementExists(XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, parent);
-        annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent
-            .getFirstChild());
-        if (annotationExists)
-        {
-          Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-          //addCreateLocalSimpleTypeActionIfNotExist(manager,
-          // XSDConstants.SIMPLETYPE_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"),
-          // attributes, parent, annotationNode.getNextSibling());
-        }
-        else
-        {
-          //addCreateLocalSimpleTypeActionIfNotExist(manager,
-          // XSDConstants.SIMPLETYPE_ELEMENT_TAG,
-          // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"),
-          // attributes, parent, parent.getFirstChild());
-        }
-        /*
-         * addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG,
-         * "_UI_ACTION_ADD_ATTRIBUTE", attributes, parent, relativeNode);
-         * attributes = new ArrayList(); attributes.add(new
-         * DOMAttribute(XSDConstants.REF_ATTRIBUTE, ""));
-         * addCreateElementAction(manager,
-         * XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG,
-         * "_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF", attributes, parent,
-         * relativeNode); attributes = new ArrayList();
-         * addCreateElementActionIfNotExist(manager,
-         * XSDConstants.ANYATTRIBUTE_ELEMENT_TAG,
-         * "_UI_ACTION_ADD_ANY_ATTRIBUTE", attributes, parent, relativeNode);
-         */
-        manager.add(new Separator());
-        if (anyAttributeExists)
-        {
-          anyAttributeNode = getFirstChildNodeIfExists(parent, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false);
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, anyAttributeNode);
-          attributes = null;
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, anyAttributeNode);
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, anyAttributeNode);
-        }
-        else
-        {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-          attributes = null;
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, parent.getLastChild());
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, parent.getLastChild());
-        }
-        attributes = null;
-        addCreateElementActionIfNotExist(manager, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-      }
-      // <simpleType>
-      //    <restriction>
-      //      ...
-      else if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-      {
-        boolean annotationExists = false;
-        attributes = null;
-        annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent
-            .getFirstChild());
-        if (annotationExists)
-        {
-          Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-          addCreateLocalSimpleTypeActionIfNotExist(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"), attributes, parent, annotationNode
-              .getNextSibling());
-        }
-        else
-        {
-          addCreateLocalSimpleTypeActionIfNotExist(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"), attributes, parent, parent
-              .getFirstChild());
-        }
-        manager.add(new Separator());
-        addCreateElementAction(manager, XSDConstants.PATTERN_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_PATTERN"), attributes, parent, null);
-        addCreateElementAction(manager, XSDConstants.ENUMERATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ENUM"), attributes, parent, null);
-        addEnumsAction(manager, XSDConstants.ENUMERATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ENUMS"), attributes, parent, null);
-      }
-      // <complexContent>
-      //    <restriction>
-      //      ...
-      else if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-      {
-        boolean annotationExists = false;
-        boolean anyAttributeExists = false;
-        Node anyAttributeNode = null;
-        boolean sequenceExists = elementExists(XSDConstants.SEQUENCE_ELEMENT_TAG, parent);
-        boolean choiceExists = elementExists(XSDConstants.CHOICE_ELEMENT_TAG, parent);
-        boolean allExists = elementExists(XSDConstants.ALL_ELEMENT_TAG, parent);
-        boolean groupExists = elementExists(XSDConstants.GROUP_ELEMENT_TAG, parent);
-        anyAttributeExists = elementExists(XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, parent);
-        annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent
-            .getFirstChild());
-        manager.add(new Separator());
-        if (annotationExists)
-        {
-          if (!(sequenceExists || choiceExists || allExists || groupExists))
-          {
-            Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-            addCreateElementActionIfNotExist(manager, XSDConstants.SEQUENCE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"), attributes, parent, annotationNode
-                .getNextSibling());
-            //            addCreateGroupAction(manager, XSDConstants.GROUP_ELEMENT_TAG,
-            // "_UI_ACTION_ADD_GROUP", attributes, parent,
-            // annotationNode.getNextSibling());
-            addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, annotationNode.getNextSibling());
-          }
-        }
-        else
-        {
-          if (!(sequenceExists || choiceExists || allExists || groupExists))
-          {
-            addCreateElementActionIfNotExist(manager, XSDConstants.SEQUENCE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"), attributes, parent, parent.getFirstChild());
-            //            addCreateGroupAction(manager, XSDConstants.GROUP_ELEMENT_TAG,
-            // "_UI_ACTION_ADD_GROUP", attributes, parent,
-            // parent.getFirstChild());
-            addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, parent.getFirstChild());
-          }
-        }
-        manager.add(new Separator());
-        if (anyAttributeExists)
-        {
-          anyAttributeNode = getFirstChildNodeIfExists(parent, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false);
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, anyAttributeNode);
-          attributes = null;
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, anyAttributeNode);
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, anyAttributeNode);
-        }
-        else
-        {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-          attributes = null;
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, parent.getLastChild());
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, parent.getLastChild());
-        }
-        attributes = null;
-        addCreateElementActionIfNotExist(manager, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.EXTENSION_ELEMENT_TAG, false))
-    { //
-      Element parentNode = (Element) parent.getParentNode();
-      // <simpleContent>
-      //    <extension>
-      //      ...
-      if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-      {
-        boolean annotationExists = false;
-        boolean anyAttributeExists = false;
-        Node anyAttributeNode = null;
-        anyAttributeExists = elementExists(XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, parent);
-        annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent
-            .getFirstChild());
-        manager.add(new Separator());
-        if (anyAttributeExists)
-        {
-          anyAttributeNode = getFirstChildNodeIfExists(parent, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false);
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, anyAttributeNode);
-          attributes = null;
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, anyAttributeNode);
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, anyAttributeNode);
-        }
-        else
-        {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-          attributes = null;
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, parent.getLastChild());
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, parent.getLastChild());
-        }
-        attributes = null;
-        addCreateElementActionIfNotExist(manager, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-      }
-      // <complexContent>
-      //    <extension>
-      //      ...
-      else if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-      {
-        boolean annotationExists = false;
-        boolean anyAttributeExists = false;
-        Node anyAttributeNode = null;
-        boolean sequenceExists = elementExists(XSDConstants.SEQUENCE_ELEMENT_TAG, parent);
-        boolean choiceExists = elementExists(XSDConstants.CHOICE_ELEMENT_TAG, parent);
-        boolean allExists = elementExists(XSDConstants.ALL_ELEMENT_TAG, parent);
-        boolean groupExists = elementExists(XSDConstants.GROUP_ELEMENT_TAG, parent);
-        anyAttributeExists = elementExists(XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, parent);
-        annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent
-            .getFirstChild());
-        manager.add(new Separator());
-        if (annotationExists)
-        {
-          if (!(sequenceExists || choiceExists || allExists || groupExists))
-          {
-            Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-            addCreateElementActionIfNotExist(manager, XSDConstants.SEQUENCE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"), attributes, parent, annotationNode
-                .getNextSibling());
-            //            addCreateGroupAction(manager, XSDConstants.GROUP_ELEMENT_TAG,
-            // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_GROUP"), attributes,
-            // parent,
-            // annotationNode.getNextSibling());
-            addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, annotationNode.getNextSibling());
-          }
-        }
-        else
-        {
-          if (!(sequenceExists || choiceExists || allExists || groupExists))
-          {
-            addCreateElementActionIfNotExist(manager, XSDConstants.SEQUENCE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"), attributes, parent, parent.getFirstChild());
-            //            addCreateGroupAction(manager, XSDConstants.GROUP_ELEMENT_TAG,
-            // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_GROUP"), attributes,
-            // parent,
-            // parent.getFirstChild());
-            addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, parent.getFirstChild());
-          }
-        }
-        manager.add(new Separator());
-        if (anyAttributeExists)
-        {
-          anyAttributeNode = getFirstChildNodeIfExists(parent, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false);
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, anyAttributeNode);
-          attributes = null;
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, anyAttributeNode);
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, anyAttributeNode);
-        }
-        else
-        {
-          attributes = new ArrayList();
-          attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-          attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-          addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-          attributes = null;
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, parent.getLastChild());
-          addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, parent.getLastChild());
-        }
-        attributes = null;
-        addCreateElementActionIfNotExist(manager, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.REDEFINE_ELEMENT_TAG, false))
-    { //
-      addCreateElementAction(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, null);
-      addCreateElementAction(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SIMPLE_TYPE"), attributes, parent, null);
-      addCreateElementAction(manager, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_COMPLEX_TYPE"), attributes, parent, null);
-      addCreateGroupAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_GROUP"), attributes, parent, null);
-      addCreateElementAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP"), attributes, parent, null);
-      manager.add(new Separator());
-      addOpenSchemaAction(manager, XSDEditorPlugin.getXSDString("_UI_ACTION_OPEN_SCHEMA"), parent);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.LIST_ELEMENT_TAG, false))
-    { //
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      manager.add(new Separator());
-      addCreateLocalSimpleTypeActionIfNotExist(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.UNION_ELEMENT_TAG, false))
-    { //
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      manager.add(new Separator());
-      addCreateLocalSimpleTypeAction(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.UNIQUE_ELEMENT_TAG, false))
-    { //
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      manager.add(new Separator());
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.XPATH_ATTRIBUTE, ""));
-      if (annotationExists)
-      {
-        Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-        addCreateElementActionIfNotExist(manager, XSDConstants.SELECTOR_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SELECTOR"), attributes, parent, annotationNode.getNextSibling());
-      }
-      else
-      {
-        addCreateElementActionIfNotExist(manager, XSDConstants.SELECTOR_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SELECTOR"), attributes, parent, parent.getFirstChild());
-      }
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.XPATH_ATTRIBUTE, ""));
-      addCreateElementAction(manager, XSDConstants.FIELD_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_FIELD"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.KEYREF_ELEMENT_TAG, false))
-    { //
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      manager.add(new Separator());
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.XPATH_ATTRIBUTE, ""));
-      if (annotationExists)
-      {
-        Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-        addCreateElementActionIfNotExist(manager, XSDConstants.SELECTOR_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SELECTOR"), attributes, parent, annotationNode.getNextSibling());
-      }
-      else
-      {
-        addCreateElementActionIfNotExist(manager, XSDConstants.SELECTOR_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SELECTOR"), attributes, parent, parent.getFirstChild());
-      }
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.XPATH_ATTRIBUTE, ""));
-      addCreateElementAction(manager, XSDConstants.FIELD_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_FIELD"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.KEY_ELEMENT_TAG, false))
-    { //
-      boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-          parent.getFirstChild());
-      manager.add(new Separator());
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.XPATH_ATTRIBUTE, ""));
-      if (annotationExists)
-      {
-        Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-        addCreateElementActionIfNotExist(manager, XSDConstants.SELECTOR_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SELECTOR"), attributes, parent, annotationNode.getNextSibling());
-      }
-      else
-      {
-        addCreateElementActionIfNotExist(manager, XSDConstants.SELECTOR_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SELECTOR"), attributes, parent, parent.getFirstChild());
-      }
-      attributes = new ArrayList();
-      attributes.add(new DOMAttribute(XSDConstants.XPATH_ATTRIBUTE, ""));
-      addCreateElementAction(manager, XSDConstants.FIELD_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_FIELD"), attributes, parent, null);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.IMPORT_ELEMENT_TAG, false))
-    {
-      addCreateElementActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      manager.add(new Separator());
-      addOpenSchemaAction(manager, XSDEditorPlugin.getXSDString("_UI_ACTION_OPEN_SCHEMA"), parent);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.SELECTOR_ELEMENT_TAG, false))
-    {
-      addCreateElementActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.FIELD_ELEMENT_TAG, false))
-    {
-      addCreateElementActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.INCLUDE_ELEMENT_TAG, false))
-    {
-      addCreateElementActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      manager.add(new Separator());
-      addOpenSchemaAction(manager, XSDEditorPlugin.getXSDString("_UI_ACTION_OPEN_SCHEMA"), parent);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ANY_ELEMENT_TAG, false))
-    {
-      XSDConcreteComponent concreteComponent = getXSDSchema().getCorrespondingComponent(parent);
-      addCreateElementActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      // need to add adapters for the ANY element.  I'd rather not provide this menu
-      // and let users see that the graph view doesn't update
-//      addMultiplicityMenu(concreteComponent, manager);
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false))
-    {
-      addCreateElementActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-    {
-      addCreateElementActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      addCreateLocalSimpleTypeActionIfNotExist(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"), attributes, parent, null);
-    }
-    // Facets all have optional annotation nodes
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.MINEXCLUSIVE_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.MININCLUSIVE_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.MAXEXCLUSIVE_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.MAXINCLUSIVE_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.TOTALDIGITS_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.FRACTIONDIGITS_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.LENGTH_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.MINLENGTH_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.MAXLENGTH_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ENUMERATION_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.WHITESPACE_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.PATTERN_ELEMENT_TAG, false))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, true))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true))
-    {
-      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-    }
-    else if (XSDDOMHelper.inputEquals(parent, XSDConstants.ELEMENT_ELEMENT_TAG, true))
-    {
-      // TODO common this up with the non-ref case
-//      addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-      XSDConcreteComponent xsdConcreteComponent = (XSDConcreteComponent)getXSDSchema().getCorrespondingComponent(parent);
-      if (xsdConcreteComponent instanceof XSDElementDeclaration)
-      {
-        XSDElementDeclaration xsdElementDeclaration = (XSDElementDeclaration)xsdConcreteComponent;
-        XSDElementDeclaration resolvedElementDeclaration = xsdElementDeclaration.getResolvedElementDeclaration();
-        if (resolvedElementDeclaration.getRootContainer() == xsdSchema)
-        {
-          parent = resolvedElementDeclaration.getElement(); 
-        
-          Element parentNode = (Element) parent.getParentNode();
-
-          boolean isGlobalElement = false;
-          if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-          {
-            isGlobalElement = true;
-          }
-          boolean annotationExists = addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent,
-              parent.getFirstChild());
-          boolean simpleTypeExists = elementExists(XSDConstants.SIMPLETYPE_ELEMENT_TAG, parent);
-          boolean complexTypeExists = elementExists(XSDConstants.COMPLEXTYPE_ELEMENT_TAG, parent);
-          manager.add(new Separator());
-          if (annotationExists)
-          {
-            Node annotationNode = getFirstChildNodeIfExists(parent, XSDConstants.ANNOTATION_ELEMENT_TAG, false);
-            if (!(simpleTypeExists || complexTypeExists) && annotationNode != null)
-            {
-              //addCreateLocalSimpleTypeActionIfNotExist(manager,
-              // XSDConstants.SIMPLETYPE_ELEMENT_TAG,
-              // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"),
-              // attributes, parent, annotationNode.getNextSibling());
-              //addCreateLocalComplexTypeActionIfNotExist(manager,
-              // XSDConstants.COMPLEXTYPE_ELEMENT_TAG, "Add Local Complex Type",
-              // attributes, parent, annotationNode.getNextSibling());
-              manager.add(new Separator());
-            }
-          }
-          else
-          {
-            // Should still be able to add the content models if the anonymous type
-            // exists,
-            // ie. with attributes
-            //        if (!(simpleTypeExists || complexTypeExists))
-            //        {
-            //addCreateLocalSimpleTypeActionIfNotExist(manager,
-            // XSDConstants.SIMPLETYPE_ELEMENT_TAG,
-            // XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"),
-            // attributes, parent, parent.getFirstChild());
-            //addCreateLocalComplexTypeActionIfNotExist(manager,
-            // XSDConstants.COMPLEXTYPE_ELEMENT_TAG, "Add Local Complex Type",
-            // attributes, parent, parent.getFirstChild());
-            XSDConcreteComponent concreteComponent = getXSDSchema().getCorrespondingComponent(parent);
-            if (concreteComponent != null)
-            {
-              AddModelGroupAction addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.SEQUENCE_LITERAL);
-              addModelGroupAction.setEnabled(!isReadOnly);
-              manager.add(addModelGroupAction);
-              
-              addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.CHOICE_LITERAL);
-              addModelGroupAction.setEnabled(!isReadOnly);
-              manager.add(addModelGroupAction);
-              
-              addModelGroupAction = new AddModelGroupAction(concreteComponent, XSDCompositor.ALL_LITERAL);
-              addModelGroupAction.setEnabled(!isReadOnly);
-              manager.add(addModelGroupAction);
-              
-              manager.add(new Separator());
-            }
-            //        }
-          }
-    //      attributes = new ArrayList();
-    //      attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, "New_Unique"));
-    //      addCreateIdentityConstraintsAction(manager, XSDConstants.UNIQUE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_UNIQUE"), attributes, parent, null);
-    //      attributes = new ArrayList();
-    //      attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, "New_Key"));
-    //      addCreateIdentityConstraintsAction(manager, XSDConstants.KEY_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_KEY"), attributes, parent, null);
-    //      attributes = new ArrayList();
-    //      attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, "New_KeyRef"));
-    //      addCreateIdentityConstraintsAction(manager, XSDConstants.KEYREF_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_KEY_REF"), attributes, parent, null);
-          XSDDOMHelper domHelper = new XSDDOMHelper();
-          Element anonymousType = (Element) domHelper.getChildNode(parent, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-          if (anonymousType != null)
-          {
-            manager.add(new Separator());
-            attributes = new ArrayList();
-            attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("ComplexType")));
-            addMoveAnonymousGlobal(manager, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL"), attributes, anonymousType, null);
-            attributes = null;
-          }
-          anonymousType = (Element) domHelper.getChildNode(parent, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-          if (anonymousType != null)
-          {
-            manager.add(new Separator());
-            attributes = new ArrayList();
-            attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("SimpleType")));
-            addMoveAnonymousGlobal(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL"), attributes, anonymousType, null);
-            attributes = null;
-          }
-        }
-        addMultiplicityMenu(xsdConcreteComponent, manager);
-      }
-    }
-    /*
-     * These have none else if (XSDDOMHelper.inputEquals(parent,
-     * XSDConstants.DOCUMENTATION_ELEMENT_TAG, false)) { } else if
-     * (XSDDOMHelper.inputEquals(parent, XSDConstants.APPINFO_ELEMENT_TAG,
-     * false)) { }
-     */
-    
-    XSDConcreteComponent concreteComponent = getXSDSchema().getCorrespondingComponent(parent);
-    if (concreteComponent instanceof XSDNamedComponent)
-    {
-      addRefactorMenuGroup(manager);
-      if (selectionProvider instanceof XSDSelectionManager)
-      {
-        if (sourceContext instanceof AbstractEditPartViewer)
-        {
-          AbstractEditPartViewer viewer = (AbstractEditPartViewer)sourceContext;
-        
-          Object obj = viewer.getSelectedEditParts().get(0);
-          
-          if (obj instanceof GraphicalEditPart)
-          {
-            boolean canEdit = true;
-            if (obj instanceof ElementDeclarationEditPart)
-            {
-              XSDElementDeclaration elem = ((ElementDeclarationEditPart)obj).getXSDElementDeclaration();
-              if (elem.isElementDeclarationReference())
-              {
-                canEdit = false;
-              }
-            }
-            else if (obj instanceof ModelGroupDefinitionEditPart)
-            {
-              XSDModelGroupDefinition group = ((ModelGroupDefinitionEditPart)obj).getXSDModelGroupDefinition();
-              if (group.isModelGroupDefinitionReference())
-              {
-                canEdit = false;
-              }
-            }
-            else if (obj instanceof ComplexTypeDefinitionEditPart)
-            {
-              XSDComplexTypeDefinition ct = ((ComplexTypeDefinitionEditPart)obj).getXSDComplexTypeDefinition();
-              if (ct.getName() == null) // anonymous
-              {
-                canEdit = false;
-              }
-            }
-            else if (obj instanceof TopLevelComponentEditPart)
-            {
-              canEdit = true;
-            }
-            else
-            {
-              canEdit = false;
-            }
-            //if (canEdit)
-            {
-//              GraphRenameAction graphRenameAction = new GraphRenameAction((XSDNamedComponent)concreteComponent, (GraphicalEditPart)obj);
- //             manager.add(graphRenameAction);
-            	
-            	
-            }
-          }
-        }
-      }
-    }
-  }
-
-  protected void addContextInsertItems(IMenuManager manager, Element parent, Element currentElement, Node relativeNode)
-  {
-    ArrayList attributes = null;
-    if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.INCLUDE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals(currentElement, XSDConstants.IMPORT_ELEMENT_TAG, false)
-        || XSDDOMHelper.inputEquals(currentElement, XSDConstants.REDEFINE_ELEMENT_TAG, false) || XSDDOMHelper.inputEquals(currentElement, XSDConstants.ANNOTATION_ELEMENT_TAG, false))
-    {
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        attributes = new ArrayList();
-        attributes.add(new DOMAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, ""));
-        addCreateElementAction(manager, XSDConstants.INCLUDE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_INCLUDE"), attributes, parent, relativeNode);
-        addCreateElementAction(manager, XSDConstants.IMPORT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_IMPORT"), null, parent, relativeNode);
-        addCreateElementAction(manager, XSDConstants.REDEFINE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_REDEFINE"), attributes, parent, relativeNode);
-        attributes = null;
-        addCreateElementAction(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), null, parent, relativeNode);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-    {
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        addSchemaElementItems(manager, parent, relativeNode);
-      }
-      //      else if (XSDDOMHelper.inputEquals(parent,
-      // XSDConstants.LIST_ELEMENT_TAG,
-      // false))
-      //      {
-      //        addCreateElementAction(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG,
-      // "_UI_ACTION_ADD_SIMPLE_TYPE", attributes, parent, relativeNode);
-      //      }
-      else if (XSDDOMHelper.inputEquals(parent, XSDConstants.UNION_ELEMENT_TAG, false))
-      {
-        addCreateLocalSimpleTypeAction(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LOCAL_SIMPLE_TYPE"), attributes, parent, relativeNode);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-    {
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        addSchemaElementItems(manager, parent, relativeNode);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.GROUP_ELEMENT_TAG, false))
-    {
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        addSchemaElementItems(manager, parent, relativeNode);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, false))
-    {
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        addSchemaElementItems(manager, parent, relativeNode);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-    {
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        addSchemaElementItems(manager, parent, relativeNode);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-    {
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        addSchemaElementItems(manager, parent, relativeNode);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.NOTATION_ELEMENT_TAG, false))
-    {
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        addSchemaElementItems(manager, parent, relativeNode);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.DOCUMENTATION_ELEMENT_TAG, false))
-    {
-      addCreateElementAction(manager, XSDConstants.DOCUMENTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_DOC"), attributes, parent, relativeNode);
-      addCreateElementAction(manager, XSDConstants.APPINFO_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_APP_INFO"), attributes, parent, relativeNode);
-    }
-    else if (XSDDOMHelper.inputEquals(currentElement, XSDConstants.APPINFO_ELEMENT_TAG, false))
-    {
-      addCreateElementAction(manager, XSDConstants.DOCUMENTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_DOC"), attributes, parent, relativeNode);
-      addCreateElementAction(manager, XSDConstants.APPINFO_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_APP_INFO"), attributes, parent, relativeNode);
-    }
-  }
-
-  protected String getNewGlobalName(String elementTag, String description)
-  {
-    return getNewGlobalName(elementTag, description, false);
-  }
-
-  protected String getNewGlobalTypeName(String description)
-  {
-    return getNewGlobalName(null, description, true);
-  }
-
-  protected String getNewGlobalName(String elementTag, String description, boolean isSimpleOrComplexType)
-  {  
-     return getNewName(getXSDSchema().getDocument(), elementTag, description, isSimpleOrComplexType);
-  }
-
-  // TODO.. .we need to rewrite this code to me model driven... not document driven
-  //
-  protected String getNewName(Node parentNode, String elementTag, String description, boolean isSimpleOrComplexType)
-  {
-    NodeList list = null;
-    NodeList typeList2 = null;
-    // if the global name is for a simple or complex type, we ignore the
-    // elementTag and populate 2 lists
-    // one to look for all simple types and the other to look for all complex
-    // types
-    if (isSimpleOrComplexType)
-    {
-      if (parentNode instanceof Document)
-      {
-        list = ((Document) parentNode).getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-        typeList2 = ((Document) parentNode).getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      }
-      else if (parentNode instanceof Element)
-      {
-        list = ((Element) parentNode).getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-        typeList2 = ((Element) parentNode).getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      }
-    }
-    else
-    {
-      if (parentNode instanceof Document)
-      {
-        list = ((Document) parentNode).getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, elementTag);
-      }
-      else if (parentNode instanceof Element)
-      {
-        list = ((Element) parentNode).getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, elementTag);
-      }
-    }
-    String name = "New" + description;
-    if (list == null || list.getLength() == 0 && (typeList2 != null && typeList2.getLength() == 0))
-    {
-      return name;
-    }
-    for (int i = 1; i < 100; i++)
-    {
-      boolean newName = false;
-      for (int j = 0; j < list.getLength(); j++)
-      {
-        String currName = ((Element) list.item(j)).getAttribute(XSDConstants.NAME_ATTRIBUTE);
-        if (currName == null || currName.length() == 0)
-        {
-          continue;
-        }
-        if (currName.equals(name))
-        {
-          name = "New" + description + String.valueOf(i);
-          newName = true;
-          break;
-        }
-      }
-      // if there is another type list and we haven't created a new name, then
-      // check the type list
-      if (typeList2 != null && !newName)
-      {
-        for (int j = 0; j < typeList2.getLength(); j++)
-        {
-          String currName = ((Element) typeList2.item(j)).getAttribute(XSDConstants.NAME_ATTRIBUTE);
-          if (currName == null || currName.length() == 0)
-          {
-            continue;
-          }
-          if (currName.equals(name))
-          {
-            name = "New" + description + String.valueOf(i);
-            break;
-          }
-        }
-      }
-    }
-    return name;
-  }
-
-  protected String getFirstGlobalElementTagName(String elementTag)
-  {
-    //XMLModel model = getXMLModel();
-    //if (model != null)
-    {
-      String targetNamespace = "";
-      XSDSchema schema = getXSDSchema();
-      TypesHelper helper = new TypesHelper(schema);
-      String prefix = "";
-      if (schema != null)
-      {
-        prefix = helper.getPrefix(schema.getTargetNamespace(), true);
-      }
-      // get the schema node
-      NodeList slist = schema.getDocument().getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, XSDConstants.SCHEMA_ELEMENT_TAG);
-      Node schemaNode = null;
-      if (slist != null && slist.getLength() > 0)
-      {
-        schemaNode = slist.item(0);
-      }
-      NodeList list = null;
-      // get the schema's direct children - hence, globals
-      if (schemaNode != null)
-      {
-        list = schemaNode.getChildNodes();
-      }
-      String name = null;
-      if (list != null)
-      {
-        // Performance issue perhaps?
-        for (int i = 0; i < list.getLength(); i++)
-        {
-          if (list.item(i) instanceof Element)
-          {
-            if (list.item(i).getLocalName().equals(elementTag))
-            {
-              name = ((Element) list.item(i)).getAttribute(XSDConstants.NAME_ATTRIBUTE);
-              if (name != null && name.length() > 0)
-              {
-                return prefix + name;
-              }
-            }
-          }
-        }
-      }
-      if (elementTag.equals(XSDConstants.ELEMENT_ELEMENT_TAG))
-      {
-        return helper.getGlobalElement(schema);
-      }
-      else if (elementTag.equals(XSDConstants.ATTRIBUTE_ELEMENT_TAG))
-      {
-        return helper.getGlobalAttribute(schema);
-      }
-      else if (elementTag.equals(XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG))
-      {
-        return helper.getGlobalAttributeGroup(schema);
-      }
-      else if (elementTag.equals(XSDConstants.GROUP_ELEMENT_TAG))
-      {
-        return helper.getModelGroup(schema);
-      }
-    }
-    return null;
-  }
-
-  protected void addSchemaElementItems(IMenuManager manager, Element parent, Node relativeNode)
-  {
-    ArrayList attributes = null;
-    // Add Edit Namespaces menu action
-    //////////////// Externalize String below!!!!!
-    XSDEditNamespacesAction nsAction = new XSDEditNamespacesAction(XSDEditorPlugin.getXSDString("_UI_ACTION_EDIT_NAMESPACES"), parent, relativeNode, getXSDSchema());
-    manager.add(nsAction);
-    manager.add(new Separator());
-    DOMAttribute nameAttribute = new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("ComplexType"));
-    attributes = new ArrayList();
-    attributes.add(nameAttribute);
-    Action action = addCreateElementAction(manager, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_COMPLEX_TYPE"), attributes, parent, relativeNode);
-    ((CreateElementAction) action).setIsGlobal(true);
-    attributes = new ArrayList();
-    attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalTypeName("SimpleType")));
-    action = addCreateElementAction(manager, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SIMPLE_TYPE"), attributes, parent, relativeNode);
-    ((CreateElementAction) action).setIsGlobal(true);
-    attributes = new ArrayList();
-    attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.ELEMENT_ELEMENT_TAG, "GlobalElement")));
-    attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-    action = addCreateElementAction(manager, XSDConstants.ELEMENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_GLOBAL_ELEMENT"), attributes, parent, relativeNode);
-    ((CreateElementAction) action).setIsGlobal(true);
-    attributes = new ArrayList();
-    attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.ATTRIBUTE_ELEMENT_TAG, "GlobalAttribute")));
-    attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-    action = addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_GLOBAL_ATTRIBUTE"), attributes, parent, relativeNode);
-    ((CreateElementAction) action).setIsGlobal(true);
-    attributes = new ArrayList();
-    attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, "AttributeGroup")));
-    action = addCreateElementAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP"), attributes, parent, relativeNode);
-    ((CreateElementAction) action).setIsGlobal(true);
-    attributes = new ArrayList();
-    attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.GROUP_ELEMENT_TAG, "Group")));
-    CreateGroupAction groupAction = addCreateGroupAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_GROUP"), attributes, parent, relativeNode);
-    groupAction.setIsGlobal(true);
-    attributes = new ArrayList();
-    attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE, getNewGlobalName(XSDConstants.NOTATION_ELEMENT_TAG, "Notation")));
-    attributes.add(new DOMAttribute(XSDConstants.PUBLIC_ATTRIBUTE, ""));
-    action = addCreateElementAction(manager, XSDConstants.NOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_NOTATION"), attributes, parent, relativeNode);
-    ((CreateElementAction) action).setIsGlobal(true);
-    action = addCreateElementAction(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), null, parent, relativeNode);
-    ((CreateElementAction) action).setIsGlobal(true);
-  }
-
-  // returns whether element exists already
-  protected boolean addCreateElementActionIfNotExist(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    //    if
-    // (!(parent.getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-    // elementTag).getLength() > 0))
-    //    XSDDOMHelper helper = new XSDDOMHelper();
-    //    if (helper.getChildNode(parent, elementTag) == null)
-    if (getFirstChildNodeIfExists(parent, elementTag, false) == null)
-    {
-      addCreateElementAction(manager, elementTag, label, attributes, parent, relativeNode);
-      return false;
-    }
-    return true;
-  }
-
-  protected Action addCreateElementAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateElementAction action = new CreateElementAction(label);
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setXSDSchema(getXSDSchema());
-    action.setSelectionProvider(selectionProvider);
-    action.setEnabled(!isReadOnly);
-    action.setSourceContext(sourceContext);
-    manager.add(action);
-    return action;
-  }
-
-  protected void addCreateElementAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode, boolean isEnabled)
-  {
-    Action action = addCreateElementAction(manager, elementTag, label, attributes, parent, relativeNode);
-    action.setEnabled(isEnabled);
-  }
-
-  protected void addCreateElementRefAction(IMenuManager manager, String elementTag, String label, Element parent, Node relativeNode)
-  {
-    ArrayList attributes = new ArrayList();
-    String ref = getFirstGlobalElementTagName(elementTag);
-    attributes.add(new DOMAttribute(XSDConstants.REF_ATTRIBUTE, ref));
-    Action action = addCreateElementAction(manager, elementTag, label, attributes, parent, relativeNode);
-    action.setEnabled(ref != null && !isReadOnly);
-  }
-
-  protected void addCreateSimpleContentAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    //    if
-    // (!(parent.getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-    // elementTag).getLength() > 0))
-    if (getFirstChildNodeIfExists(parent, elementTag, false) == null)
-    {
-      CreateSimpleContentAction action = new CreateSimpleContentAction(label, getXSDSchema());
-      action.setElementTag(elementTag);
-      action.setAttributes(attributes);
-      action.setParentNode(parent);
-      action.setRelativeNode(relativeNode);
-      action.setEnabled(!isReadOnly);
-      manager.add(action);
-    }
-  }
-
-  protected CreateGroupAction addCreateGroupAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateGroupAction action = new CreateGroupAction(label, getXSDSchema());
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setXSDSchema(getXSDSchema());
-    action.setSelectionProvider(selectionProvider);
-    action.setEnabled(!isReadOnly);
-    action.setSourceContext(sourceContext);
-    manager.add(action);
-    return action;
-  }
-
-  protected void addCreateIdentityConstraintsAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateIdentityConstraintsAction action = new CreateIdentityConstraintsAction(label, getXSDSchema());
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setXSDSchema(getXSDSchema());
-    action.setSelectionProvider(selectionProvider);
-    action.setEnabled(!isReadOnly);
-    manager.add(action);
-  }
-
-  protected void addEnumsAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    AddEnumsAction action = new AddEnumsAction(label);
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setDescription(XSDEditorPlugin.getXSDString("_UI_ENUMERATIONS_DIALOG_TITLE"));
-    action.setEnabled(!isReadOnly);
-    manager.add(action);
-  }
-
-  protected Action addCreateSimpleTypeAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateSimpleTypeAction action = new CreateSimpleTypeAction(label);
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setXSDSchema(getXSDSchema());
-    action.setSelectionProvider(selectionProvider);
-    action.setEnabled(!isReadOnly);
-    action.setSourceContext(sourceContext);
-    manager.add(action);
-    return action;
-  }
-
-  protected boolean addCreateLocalSimpleTypeActionIfNotExist(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    //    if
-    // (!(parent.getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-    // elementTag).getLength() > 0))
-    //    XSDDOMHelper helper = new XSDDOMHelper();
-    //    if (helper.getChildNode(parent, elementTag) == null)
-    if (getFirstChildNodeIfExists(parent, elementTag, false) == null)
-    {
-      addCreateLocalSimpleTypeAction(manager, elementTag, label, attributes, parent, relativeNode);
-      return false;
-    }
-    return true;
-  }
-
-  protected void addSetBaseTypeAction(IMenuManager manager, Element element)
-  {
-    SetBaseTypeAction action = new SetBaseTypeAction(XSDEditorPlugin.getXSDString("_UI_ACTION_SET_BASE_TYPE"));// +
-    // "...");
-    action.setComplexTypeElement(element);
-    action.setXSDSchema(getXSDSchema());
-    action.setEnabled(!isReadOnly);
-    manager.add(action);
-  }
-
-  protected void addCreateLocalSimpleTypeAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateLocalSimpleTypeAction action = new CreateLocalSimpleTypeAction(label);
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setXSDSchema(getXSDSchema());
-    action.setSelectionProvider(selectionProvider);
-    action.setEnabled(!isReadOnly);
-    manager.add(action);
-  }
-
-  protected boolean addCreateLocalComplexTypeActionIfNotExist(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    if (getFirstChildNodeIfExists(parent, elementTag, false) == null)
-    {
-      addCreateLocalComplexTypeAction(manager, elementTag, label, attributes, parent, relativeNode);
-      return false;
-    }
-    return true;
-  }
-
-  protected void addCreateLocalComplexTypeAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateLocalComplexTypeAction action = new CreateLocalComplexTypeAction(label);
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setXSDSchema(getXSDSchema());
-    action.setSelectionProvider(selectionProvider);
-    action.setEnabled(!isReadOnly);
-    manager.add(action);
-  }
-
-  protected boolean addCreateAnnotationActionIfNotExist(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    //    if
-    // (!(parent.getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-    // elementTag).getLength() > 0))
-    //    XSDDOMHelper helper = new XSDDOMHelper();
-    //    if (helper.getChildNode(parent, elementTag) == null)
-    // CS... I comment the
-    //
-    //if (getFirstChildNodeIfExists(parent, elementTag, false) == null)
-    //{
-    //  addCreateAnnotationAction(manager,elementTag,label,attributes,parent,relativeNode);
-    //  return false;
-    //}
-    //return true;
-    return false;
-  }
-
-  protected void addOpenSchemaAction(IMenuManager manager, String label, Element parent)
-  {
-    OpenSchemaAction openAction = new OpenSchemaAction(label, getXSDSchema().getCorrespondingComponent(parent));
-    manager.add(openAction);
-  }
-
-  protected void addMoveAnonymousGlobal(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-//    MakeAnonymousGlobal action = new MakeAnonymousGlobal(label, parent, getXSDSchema());
-//    action.setElementTag(elementTag);
-//    action.setAttributes(attributes);
-//    action.setParentNode(getXSDSchema().getElement());
-//    action.setRelativeNode(relativeNode);
-//    action.setEnabled(!isReadOnly);
-//    //manager.add(action);
-//    addRefactorMenuGroup(manager);
-//    fRefactorMenuGroup.addAction(action);
-  }
-  
-  protected void addRefactorMenuGroup(IMenuManager manager){
-	  	fRefactorMenuGroup = new RefactorActionGroup(selectionProvider, getXSDSchema());
-     	ActionContext context= new ActionContext(selectionProvider.getSelection());
-    	fRefactorMenuGroup.setContext(context);
-    	fRefactorMenuGroup.fillContextMenu(manager);
-    	fRefactorMenuGroup.setContext(null);
-  }
-
-  protected void addCreateAnnotationAction(IMenuManager manager, String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateAnnotationAction action = new CreateAnnotationAction(label);
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setEnabled(!isReadOnly);
-    manager.add(action);
-  }
-
-  protected Node getFirstChildNodeIfExists(Node parent, String elementTag, boolean isRef)
-  {
-    if (parent == null)
-      return null;
-    NodeList children = parent.getChildNodes();
-    Node targetNode = null;
-    for (int i = 0; i < children.getLength(); i++)
-    {
-      Node child = children.item(i);
-      if (child != null && child instanceof Element)
-      {
-        if (XSDDOMHelper.inputEquals((Element) child, elementTag, isRef))
-        {
-          targetNode = child;
-          break;
-        }
-      }
-    }
-    return targetNode;
-  }
-
-  protected boolean elementExists(String elementTag, Element parent)
-  {
-    if (!(parent.getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, elementTag).getLength() > 0))
-    {
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Returns the deleteAction.
-   * 
-   * @return DeleteAction
-   */
-  public DeleteAction getDeleteAction()
-  {
-    return deleteAction;
-  }
-  
-  protected void addMultiplicityMenu(XSDConcreteComponent concreteComponent, IMenuManager manager)
-  {
-    SetMultiplicityAction oneMultiplicity = new SetMultiplicityAction(concreteComponent, "1");
-    oneMultiplicity.setMaxOccurs(1);
-    oneMultiplicity.setMinOccurs(1);
-    oneMultiplicity.setEnabled(!isReadOnly);
-    SetMultiplicityAction zeroOrMoreMultiplicity = new SetMultiplicityAction(concreteComponent, "0..* (Zero or More)");
-    zeroOrMoreMultiplicity.setMaxOccurs(-1);
-    zeroOrMoreMultiplicity.setMinOccurs(0);
-    zeroOrMoreMultiplicity.setEnabled(!isReadOnly);
-    SetMultiplicityAction zeroOrOneMultiplicity = new SetMultiplicityAction(concreteComponent, "0..1 (Zero or One)");
-    zeroOrOneMultiplicity.setMaxOccurs(1);
-    zeroOrOneMultiplicity.setMinOccurs(0);
-    zeroOrOneMultiplicity.setEnabled(!isReadOnly);
-    SetMultiplicityAction oneOrMoreMultiplicity = new SetMultiplicityAction(concreteComponent, "1..* (One or More)");
-    oneOrMoreMultiplicity.setMaxOccurs(-1);
-    oneOrMoreMultiplicity.setMinOccurs(1);
-    oneOrMoreMultiplicity.setEnabled(!isReadOnly);
-    
-    MenuManager multiplicityMenu = new MenuManager("Set Multiplicity");
-    manager.add(multiplicityMenu);
-    multiplicityMenu.add(oneMultiplicity);
-    multiplicityMenu.add(zeroOrOneMultiplicity);
-    multiplicityMenu.add(zeroOrMoreMultiplicity);
-    multiplicityMenu.add(oneOrMoreMultiplicity);    
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDMultiPageEditorPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDMultiPageEditorPart.java
deleted file mode 100644
index 947eec3..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDMultiPageEditorPart.java
+++ /dev/null
@@ -1,726 +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.xsd.ui.internal;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.List;
-
-import org.eclipse.core.internal.resources.ResourceException;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-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.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextInputListener;
-import org.eclipse.swt.events.ShellAdapter;
-import org.eclipse.swt.events.ShellEvent;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IEditorActionBarContributor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.IPropertyListener;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.ide.IGotoMarker;
-import org.eclipse.ui.part.MultiPageEditorPart;
-import org.eclipse.ui.part.MultiPageEditorSite;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.core.exceptions.SourceEditingRuntimeException;
-import org.eclipse.wst.sse.core.internal.SSECorePlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextEditor;
-import org.eclipse.wst.xml.core.XMLPreferenceNames;
-import org.eclipse.wst.xml.ui.StructuredTextEditorXML;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-public class XSDMultiPageEditorPart extends MultiPageEditorPart implements IPropertyListener
-{
-
-  /**
-   * 
-   */
-  public XSDMultiPageEditorPart()
-  {
-    super();
-  }
-  
-  /**
-   * Internal part activation listener
-   */
-  class PartListener extends ShellAdapter implements IPartListener {
-    private IWorkbenchPart fActivePart;
-    private boolean fIsHandlingActivation = false;
-
-    private void handleActivation() {
-
-      if (fIsHandlingActivation)
-        return;
-
-      if (fActivePart == XSDMultiPageEditorPart.this) {
-        fIsHandlingActivation = true;
-        try {
-          safelySanityCheckState();
-        }
-        finally {
-          fIsHandlingActivation = false;
-        }
-      }
-    }
-
-    /**
-     * @see IPartListener#partActivated(IWorkbenchPart)
-     */
-    public void partActivated(IWorkbenchPart part) {
-      fActivePart = part;
-      handleActivation();
-    }
-
-    /**
-     * @see IPartListener#partBroughtToTop(IWorkbenchPart)
-     */
-    public void partBroughtToTop(IWorkbenchPart part) {
-    }
-
-    /**
-     * @see IPartListener#partClosed(IWorkbenchPart)
-     */
-    public void partClosed(IWorkbenchPart part) {
-    }
-
-    /**
-     * @see IPartListener#partDeactivated(IWorkbenchPart)
-     */
-    public void partDeactivated(IWorkbenchPart part) {
-      fActivePart = null;
-    }
-
-    /**
-     * @see IPartListener#partOpened(IWorkbenchPart)
-     */
-    public void partOpened(IWorkbenchPart part) {
-    }
-
-    /*
-     * @see ShellListener#shellActivated(ShellEvent)
-     */
-    public void shellActivated(ShellEvent e) {
-      handleActivation();
-    }
-  }
-
-  class TextInputListener implements ITextInputListener {
-    public void inputDocumentAboutToBeChanged(IDocument oldInput, IDocument newInput) {
-    }
-
-    public void inputDocumentChanged(IDocument oldInput, IDocument newInput) {
-    }
-  }
-
-  /** The source page index. */
-  private int fSourcePageIndex;
-  /** The text editor. */
-  private StructuredTextEditor fTextEditor;
-
-  private PartListener partListener;
-
-
-  /*
-   * This method is just to make firePropertyChanged accessbible from some
-   * (anonomous) inner classes.
-   */
-  protected void _firePropertyChange(int property) {
-    super.firePropertyChange(property);
-  }
-
-  /**
-   * Adds the source page of the multi-page editor.
-   */
-  protected void addSourcePage() throws PartInitException {
-    try {
-      fSourcePageIndex = addPage(fTextEditor, getEditorInput());
-      setPageText(fSourcePageIndex, XSDEditorPlugin.getXSDString("_UI_TAB_SOURCE")); //$NON-NLS-1$
-      // the update's critical, to get viewer selection manager and
-      // highlighting to work
-      fTextEditor.update();
-  
-      firePropertyChange(PROP_TITLE);
-  
-      // Changes to the Text Viewer's document instance should also force an
-      // input refresh
-      fTextEditor.getTextViewer().addTextInputListener(new TextInputListener());
-    }
-    catch (PartInitException exception) {
-      // dispose editor
-      dispose();
-
-      throw new SourceEditingRuntimeException(SSECorePlugin.getResourceString("An_error_has_occurred_when1_ERROR_")); //$NON-NLS-1$
-    }
-  }
-
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.part.MultiPageEditorPart#createPages()
-   */
-  protected void createPages()
-  {
-    try
-    {
-      // source page MUST be created before design page, now
-      createSourcePage();
-      addSourcePage();
-      setActivePage();
-
-    // future_TODO: add a catch block here for any exception the design
-    // page throws and convert it into a more informative message.
-    }
-    catch (PartInitException e) {
-      throw new RuntimeException(e);
-    }
-  }
-
-  /**
-   * @see org.eclipse.ui.part.MultiPageEditorPart#createSite(org.eclipse.ui.IEditorPart)
-   */
-  protected IEditorSite createSite(IEditorPart editor) {
-    IEditorSite site = null;
-    if (editor == fTextEditor) {
-      site = new MultiPageEditorSite(this, editor) {
-        /**
-         * @see org.eclipse.ui.part.MultiPageEditorSite#getActionBarContributor()
-         */
-        public IEditorActionBarContributor getActionBarContributor() {
-          IEditorActionBarContributor contributor = super.getActionBarContributor();
-          IEditorActionBarContributor multiContributor = XSDMultiPageEditorPart.this.getEditorSite().getActionBarContributor();
-//          if (multiContributor instanceof XMLMultiPageEditorActionBarContributor) {
-//            contributor = ((XMLMultiPageEditorActionBarContributor) multiContributor).sourceViewerActionContributor;
-//          }
-          return contributor;
-        }
-      };
-    }
-    else {
-      site = super.createSite(editor);
-    }
-    return site;
-  }
-
-  /**
-   * Creates the source page of the multi-page editor.
-   */
-  protected void createSourcePage() throws PartInitException {
-    fTextEditor = createTextEditor();
-    fTextEditor.setEditorPart(this);
-
-    // Set the SourceViewerConfiguration now so the text editor won't use
-    // the default configuration first
-    // and switch to the StructuredTextViewerConfiguration later.
-    // DMW removed setSourceViewerConfiguration 3/26/2003 since added
-    // createPartControl to our text editor.
-    // fTextEditor.setSourceViewerConfiguration();
-    fTextEditor.addPropertyListener(this);
-  }
-
-  /**
-   * Method createTextEditor.
-   * 
-   * @return StructuredTextEditor
-   */
-  protected StructuredTextEditor createTextEditor() {
-    return new StructuredTextEditorXML();
-  }
-
-  public void dispose()
-  {
-    IWorkbenchWindow window = getSite().getWorkbenchWindow();
-    window.getPartService().removePartListener(partListener);
-    window.getShell().removeShellListener(partListener);
-
-    getSite().getPage().removePartListener(partListener);
-    if (fTextEditor != null) {
-      fTextEditor.removePropertyListener(this);
-    }
-
-    // moved to last when added window ... seems like
-    // we'd be in danger of losing some data, like site,
-    // or something.
-    super.dispose();
-  }
-
-  /*
-   * (non-Javadoc) Saves the contents of this editor. <p> Subclasses must
-   * override this method to implement the open-save-close lifecycle for an
-   * editor. For greater details, see <code> IEditorPart </code></p>
-   * 
-   * @see IEditorPart
-   */
-  public void doSave(IProgressMonitor monitor) {
-    fTextEditor.doSave(monitor);
-    //    // this is a temporary way to force validation.
-    //    // when the validator is a workbench builder, the following lines
-    // can be removed
-    //    if (fDesignViewer != null)
-    //      fDesignViewer.saveOccurred();
-
-  }
-
-  /*
-   * (non-Javadoc) Saves the contents of this editor to another object. <p>
-   * Subclasses must override this method to implement the open-save-close
-   * lifecycle for an editor. For greater details, see <code> IEditorPart
-   * </code></p>
-   * 
-   * @see IEditorPart
-   */
-  public void doSaveAs() {
-    fTextEditor.doSaveAs();
-    // 253619
-    // following used to be executed here, but is
-    // now called "back" from text editor (since
-    // mulitiple paths to the performSaveAs in StructuredTextEditor.
-    //doSaveAsForStructuredTextMulitPagePart();
-  }
-
-  private void editorInputIsAcceptable(IEditorInput input) throws PartInitException {
-    if (input instanceof IFileEditorInput) {
-      // verify that it can be opened
-      CoreException[] coreExceptionArray = new CoreException[1];
-      if (fileDoesNotExist((IFileEditorInput) input, coreExceptionArray)) {
-        // todo use message formatter for {0}
-        Throwable coreException = coreExceptionArray[0];
-        if (coreException instanceof ResourceException) {
-          // I'm assuming this is always 'does not exist'
-          // we'll refresh local go mimic behavior of default
-          // editor, where the
-          // troublesome file is refreshed (and will cause it to
-          // 'disappear' from Navigator.
-          try {
-            ((IFileEditorInput) input).getFile().refreshLocal(IResource.DEPTH_ZERO, new NullProgressMonitor());
-          }
-          catch (CoreException ce) {
-            // very unlikely
-//            Logger.logException(ce);
-          }
-          throw new PartInitException(SSECorePlugin.getResourceString("23concat_EXC_", (new Object[]{input.getName()}))); //$NON-NLS-1$
-          //$NON-NLS-1$ = "Resource {0} does not exist."
-        }
-        else {
-          throw new PartInitException(SSECorePlugin.getResourceString("32concat_EXC_", (new Object[]{input.getName()}))); //$NON-NLS-1$
-          //$NON-NLS-1$ = "Editor could not be open on {0}"
-        }
-      }
-    }
-    else if (input instanceof IStorageEditorInput) {
-      InputStream contents = null;
-      try {
-        contents = ((IStorageEditorInput) input).getStorage().getContents();
-      }
-      catch (CoreException noStorageExc) {
-      }
-      if (contents == null) {
-        throw new PartInitException(SSECorePlugin.getResourceString("32concat_EXC_", (new Object[]{input.getName()}))); //$NON-NLS-1$
-      }
-      else {
-        try {
-          contents.close();
-        }
-        catch (IOException e) {
-        }
-      }
-    }
-  }
-
-  //  void doSaveAsForStructuredTextMulitPagePart() {
-  //    setPageText(getActivePage(), fTextEditor.getTitle());
-  //    setInput(fTextEditor.getEditorInput());
-  //    if (fDesignViewer != null) {
-  //      //fDesignViewer.setEditorInput(fTextEditor.getEditorInput());
-  //      fDesignViewer.setModel(getModel());
-  //      fDesignViewer.saveAsOccurred();
-  //    }
-  //    // even though we've set title etc., several times already!
-  //    // only now is all prepared for it.
-  //    firePropertyChange(IWorkbenchPart.PROP_TITLE);
-  //    firePropertyChange(PROP_DIRTY);
-  //  }
-  /*
-   * (non-Javadoc) Initializes the editor part with a site and input. <p>
-   * Subclasses of <code> EditorPart </code> must implement this method.
-   * Within the implementation subclasses should verify that the input type
-   * is acceptable and then save the site and input. Here is sample code:
-   * </p><pre> if (!(input instanceof IFileEditorInput)) throw new
-   * PartInitException("Invalid Input: Must be IFileEditorInput");
-   * setSite(site); setInput(editorInput); </pre>
-   */
-  protected boolean fileDoesNotExist(IFileEditorInput input, Throwable[] coreException) {
-    boolean result = false;
-    InputStream inStream = null;
-    if ((!(input.exists())) || (!(input.getFile().exists()))) {
-      result = true;
-    }
-    else {
-      try {
-        inStream = input.getFile().getContents(true);
-      }
-      catch (CoreException e) {
-        // very likely to be file not found
-        result = true;
-        coreException[0] = e;
-      }
-      finally {
-        if (input != null) {
-          try {
-            if (inStream != null) {
-              inStream.close();
-            }
-          }
-          catch (IOException e) {
-
-          }
-        }
-      }
-    }
-    return result;
-  }
-
-  public Object getAdapter(Class key) {
-    Object result = null;
-
-      // DMW: I'm bullet-proofing this because
-      // its been reported (on 4.03 version) a null pointer sometimes
-      // happens here on startup, when an editor has been left
-      // open when workbench shutdown.
-      if (fTextEditor != null) {
-        result = fTextEditor.getAdapter(key);
-      }
-    return result;
-  }
-
-  /**
-   * IExtendedMarkupEditor method
-   */
-  public Node getCaretNode() {
-    if (getTextEditor() == null)
-      return null;
-
-    return getTextEditor().getCaretNode();
-  }
-
-  /**
-   * IExtendedSimpleEditor method
-   */
-  public int getCaretPosition() {
-    if (getTextEditor() == null)
-      return -1;
-
-    return getTextEditor().getCaretPosition();
-  }
-
-  /**
-   * IExtendedSimpleEditor method
-   */
-  public IDocument getDocument() {
-    if (getTextEditor() == null)
-      return null;
-
-    return getTextEditor().getDocument();
-  }
-
-  /**
-   * IExtendedMarkupEditor method
-   */
-  public Document getDOMDocument() {
-    if (getTextEditor() == null)
-      return null;
-
-    return getTextEditor().getDOMDocument();
-  }
-
-  /**
-   * IExtendedSimpleEditor method
-   */
-  public IEditorPart getEditorPart() {
-    return this;
-  }
-
-  protected IStructuredModel getModel() {
-    IStructuredModel model = null;
-    if (fTextEditor != null)
-      model = fTextEditor.getModel();
-    return model;
-  }
-
-  protected IPreferenceStore getPreferenceStore() {
-    return XSDEditorPlugin.getPlugin().getPreferenceStore();
-  }
-
-  /**
-   * IExtendedMarkupEditor method
-   */
-  public List getSelectedNodes() {
-    if (getTextEditor() == null)
-      return null;
-    return getTextEditor().getSelectedNodes();
-  }
-
-  /**
-   * IExtendedSimpleEditor method
-   */
-  public Point getSelectionRange() {
-    if (getTextEditor() == null)
-      return new Point(-1, -1);
-
-    return getTextEditor().getSelectionRange();
-  }
-
-  public StructuredTextEditor getTextEditor() {
-    return fTextEditor;
-  }
-
-  /*
-   * (non-Javadoc) Method declared on IWorkbenchPart.
-   */
-  public String getTitle() {
-    String title = null;
-    if (getTextEditor() == null) {
-      if (getEditorInput() != null) {
-        title = getEditorInput().getName();
-      }
-    }
-    else {
-      title = getTextEditor().getTitle();
-    }
-    if (title == null) {
-      title = getPartName();
-    }
-    return title;
-  }
-
-  /*
-   * (non-Javadoc) Sets the cursor and selection state for this editor to
-   * the passage defined by the given marker. <p> Subclasses may override.
-   * For greater details, see <code> IEditorPart </code></p>
-   * 
-   * @see IEditorPart
-   */
-  public void gotoMarker(IMarker marker) {
-    // (pa) 20020217 this was null when opening an editor that was
-    // already open
-    if (fTextEditor != null) {
-      IGotoMarker markerGotoer = (IGotoMarker) fTextEditor.getAdapter(IGotoMarker.class);
-      markerGotoer.gotoMarker(marker);
-    }
-  }
-
-  public void init(IEditorSite site, IEditorInput input) throws PartInitException {
-    editorInputIsAcceptable(input);
-    try {
-      super.init(site, input);
-      if (partListener == null) {
-        partListener = new PartListener();
-      }
-      //getSite().getPage().addPartListener(partListner);
-      // we want to listen for our own activation
-      IWorkbenchWindow window = getSite().getWorkbenchWindow();
-      window.getPartService().addPartListener(partListener);
-      window.getShell().addShellListener(partListener);
-    }
-    catch (Exception e) {
-      if (e instanceof SourceEditingRuntimeException) {
-        Throwable t = ((SourceEditingRuntimeException) e).getOriginalException();
-        if (t instanceof IOException) {
-          System.out.println(t);
-          // file not found
-        }
-      }
-    }
-    setPartName(input.getName());
-  }
-
-  /*
-   * (non-Javadoc) Returns whether the "save as" operation is supported by
-   * this editor. <p> Subclasses must override this method to implement the
-   * open-save-close lifecycle for an editor. For greater details, see
-   * <code> IEditorPart </code></p>
-   * 
-   * @see IEditorPart
-   */
-  public boolean isSaveAsAllowed() {
-    return fTextEditor != null && fTextEditor.isSaveAsAllowed();
-  }
-
-  /*
-   * (non-Javadoc) Returns whether the contents of this editor should be
-   * saved when the editor is closed. <p> This method returns <code> true
-   * </code> if and only if the editor is dirty ( <code> isDirty </code> ).
-   * </p>
-   */
-  public boolean isSaveOnCloseNeeded() {
-    // overriding super class since it does a lowly isDirty!
-    if (fTextEditor != null)
-      return fTextEditor.isSaveOnCloseNeeded();
-    return isDirty();
-  }
-
-  /**
-   * Notifies this multi-page editor that the page with the given id has
-   * been activated. This method is called when the user selects a different
-   * tab.
-   * 
-   * @param newPageIndex
-   *            the index of the activated page
-   */
-  protected void pageChange(int newPageIndex) {
-    super.pageChange(newPageIndex);
-
-    saveLastActivePageIndex(newPageIndex);
-  }
-
-  /**
-   * Posts the update code "behind" the running operation.
-   */
-  protected void postOnDisplayQue(Runnable runnable) {
-    IWorkbench workbench = PlatformUI.getWorkbench();
-    IWorkbenchWindow[] windows = workbench.getWorkbenchWindows();
-    if (windows != null && windows.length > 0) {
-      Display display = windows[0].getShell().getDisplay();
-      display.asyncExec(runnable);
-    }
-    else
-      runnable.run();
-  }
-
-  /**
-   * Indicates that a property has changed.
-   * 
-   * @param source
-   *            the object whose property has changed
-   * @param propId
-   *            the id of the property which has changed; property ids are
-   *            generally defined as constants on the source class
-   */
-  public void propertyChanged(Object source, int propId) {
-    switch (propId) {
-      // had to implement input changed "listener" so that
-      // strucutedText could tell it containing editor that
-      // the input has change, when a 'resource moved' event is
-      // found.
-      case IEditorPart.PROP_INPUT :
-      case IEditorPart.PROP_DIRTY : {
-        if (source == fTextEditor) {
-          if (fTextEditor.getEditorInput() != getEditorInput()) {
-            setInput(fTextEditor.getEditorInput());
-            // title should always change when input changes.
-            // create runnable for following post call
-            Runnable runnable = new Runnable() {
-              public void run() {
-                _firePropertyChange(IWorkbenchPart.PROP_TITLE);
-              }
-            };
-            // Update is just to post things on the display queue
-            // (thread). We have to do this to get the dirty
-            // property to get updated after other things on the
-            // queue are executed.
-            postOnDisplayQue(runnable);
-          }
-        }
-        break;
-      }
-      case IWorkbenchPart.PROP_TITLE : {
-        // update the input if the title is changed
-        if (source == fTextEditor) {
-          if (fTextEditor.getEditorInput() != getEditorInput()) {
-            setInput(fTextEditor.getEditorInput());
-          }
-        }
-        break;
-      }
-      default : {
-        // propagate changes. Is this needed? Answer: Yes.
-        if (source == fTextEditor) {
-          firePropertyChange(propId);
-        }
-        break;
-      }
-    }
-
-  }
-
-  protected void safelySanityCheckState() {
-    // If we're called before editor is created, simply ignore since we
-    // delegate this function to our embedded TextEditor
-    if (getTextEditor() == null)
-      return;
-
-    getTextEditor().safelySanityCheckState(getEditorInput());
-
-  }
-
-  protected void saveLastActivePageIndex(int newPageIndex) {
-    // save the last active page index to preference manager
-    getPreferenceStore().setValue(XMLPreferenceNames.LAST_ACTIVE_PAGE, newPageIndex);
-  }
-
-  /**
-   * Sets the currently active page.
-   */
-  protected void setActivePage() {
-    // retrieve the last active page index from preference manager
-    int activePageIndex = getPreferenceStore().getInt(XMLPreferenceNames.LAST_ACTIVE_PAGE);
-
-    // We check this range since someone could hand edit the XML
-    // preference file to an invalid value ... which I know from
-    // experience :( ... if they do, we'll reset to default and continue
-    // rather than throw an assertion error in the setActivePage(int)
-    // method.
-    if (activePageIndex < 0 || activePageIndex >= getPageCount()) {
-      activePageIndex = fSourcePageIndex;
-    }
-    setActivePage(activePageIndex);
-  }
-
-  /*
-   * (non-Javadoc)
-   * 
-   * @see org.eclipse.ui.part.EditorPart#setInput(org.eclipse.ui.IEditorInput)
-   */
-  protected void setInput(IEditorInput input) {
-    // If driven from the Source page, it's "model" may not be up to date
-    // with the input just yet. We'll rely on later notification from the
-    // TextViewer to set us straight
-    super.setInput(input);
-    setPartName(input.getName());
-  }
-
-  /**
-   * IExtendedMarkupEditor method
-   */
-  public IStatus validateEdit(Shell context) {
-    if (getTextEditor() == null)
-      return new Status(IStatus.ERROR, XSDEditorPlugin.PLUGIN_ID, IStatus.INFO, "", null); //$NON-NLS-1$
-
-    return getTextEditor().validateEdit(context);
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDSelectionManager.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDSelectionManager.java
deleted file mode 100644
index 22f0354..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDSelectionManager.java
+++ /dev/null
@@ -1,96 +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.xsd.ui.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-
-public class XSDSelectionManager implements ISelectionProvider, ISelectionChangedListener
-{
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ISelectionProvider#addSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
-   */
-  public void addSelectionChangedListener(ISelectionChangedListener listener)
-  {
-    listenerList.add(listener);
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ISelectionProvider#getSelection()
-   */
-  public ISelection getSelection()
-  {
-    return currentSelection;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ISelectionProvider#removeSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
-   */
-  public void removeSelectionChangedListener(ISelectionChangedListener listener)
-  {
-    listenerList.remove(listener);
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ISelectionProvider#setSelection(org.eclipse.jface.viewers.ISelection)
-   */
-  public void setSelection(ISelection selection)
-  {
-    setSelection(selection, this);
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-   */
-  public void selectionChanged(SelectionChangedEvent event)
-  {
-    if (enableNotify)
-    {
-      setSelection(event.getSelection(), event.getSelectionProvider());
-    }
-  }
-
-  
-  protected List listenerList = new ArrayList();
-  protected ISelection currentSelection;
-  protected boolean enableNotify = true;
-
-  public void setSelection(ISelection selection, ISelectionProvider source)
-  {  
-//	  System.out.println("SelectionManager.setSelection() " + selection + ", " + source);
-    if (enableNotify)
-    {
-      currentSelection = selection;
-      enableNotify = false;
-      try
-      {
-        SelectionChangedEvent event = new SelectionChangedEvent(source, selection);
-        List copyOfListenerList = new ArrayList(listenerList);
-        for (Iterator i = copyOfListenerList.iterator(); i.hasNext(); )
-        {
-          ISelectionChangedListener listener = (ISelectionChangedListener)i.next();
-          listener.selectionChanged(event);
-        }
-      }
-      finally
-      {
-        enableNotify = true;
-      }
-    }
-  }      
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDTextEditor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDTextEditor.java
deleted file mode 100644
index 40a20bf..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDTextEditor.java
+++ /dev/null
@@ -1,424 +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.xsd.ui.internal;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.jface.text.source.IVerticalRuler;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.actions.ActionContext;
-import org.eclipse.ui.actions.ActionGroup;
-import org.eclipse.ui.texteditor.ITextEditor;
-import org.eclipse.ui.texteditor.ITextEditorActionConstants;
-import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
-import org.eclipse.ui.views.properties.IPropertySheetPage;
-import org.eclipse.wst.sse.core.internal.SSECorePlugin;
-import org.eclipse.wst.sse.ui.internal.StructuredTextViewer;
-import org.eclipse.wst.sse.ui.internal.actions.StructuredTextEditorActionConstants;
-import org.eclipse.wst.sse.ui.internal.openon.OpenOnAction;
-import org.eclipse.wst.sse.ui.view.events.INodeSelectionListener;
-import org.eclipse.wst.sse.ui.view.events.NodeSelectionChangedEvent;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.contentmodel.modelquery.ModelQuery;
-import org.eclipse.wst.xml.ui.StructuredTextEditorXML;
-import org.eclipse.wst.xsd.ui.internal.properties.section.XSDTabbedPropertySheetPage;
-import org.eclipse.wst.xsd.ui.internal.provider.CategoryAdapter;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDAdapterFactoryLabelProvider;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDContentProvider;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDModelAdapterFactoryImpl;
-import org.eclipse.wst.xsd.ui.internal.refactor.actions.RefactorActionGroup;
-import org.eclipse.wst.xsd.ui.internal.util.SelectionAdapter;
-import org.eclipse.xsd.XSDComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class XSDTextEditor extends StructuredTextEditorXML implements INodeSelectionListener, ISelectionChangedListener
-{
-  protected XSDSelectionManager xsdSelectionManager;
-  protected XSDModelAdapterFactoryImpl xsdModelAdapterFactory;
-  protected static XSDAdapterFactoryLabelProvider adapterFactoryLabelProvider;
-  protected InternalSelectionProvider internalSelectionProvider = new InternalSelectionProvider();
-
-  public XSDTextEditor(XSDEditor xsdEditor)
-  {
-    super();
-    xsdSelectionManager = xsdEditor.getSelectionManager();
-    xsdSelectionManager.addSelectionChangedListener(this);
-
-    setHelpContextId(XSDEditorContextIds.XSDE_SOURCE_VIEW);
-    
-    xsdModelAdapterFactory = XSDModelAdapterFactoryImpl.getInstance();
-    adapterFactoryLabelProvider = new XSDAdapterFactoryLabelProvider(xsdModelAdapterFactory);
-  }
-  
-  public void dispose()
-  {
-    super.dispose();
-    xsdSelectionManager.removeSelectionChangedListener(this);
-  }
-  
-  public XSDModelAdapterFactoryImpl getXSDModelAdapterFactory()
-  {
-    return xsdModelAdapterFactory;
-  }
-
-  public static XSDAdapterFactoryLabelProvider getLabelProvider()
-  {
-    return adapterFactoryLabelProvider;
-  }
-
-	public Object getAdapter(Class required) {
-	  
-		if (IPropertySheetPage.class.equals(required))
-    {
-	    fPropertySheetPage = new XSDTabbedPropertySheetPage(getXSDEditor());
-      
-	    ((XSDTabbedPropertySheetPage)fPropertySheetPage).setXSDModelAdapterFactory(xsdModelAdapterFactory);
-      ((XSDTabbedPropertySheetPage)fPropertySheetPage).setSelectionManager(getXSDEditor().getSelectionManager());
-	    ((XSDTabbedPropertySheetPage)fPropertySheetPage).setXSDSchema(getXSDSchema());
-
-      return fPropertySheetPage;
-		}
-		else if (IContentOutlinePage.class.equals(required))
-		{
-			if (fOutlinePage == null || fOutlinePage.getControl() == null || fOutlinePage.getControl().isDisposed())
-			{
-				XSDContentOutlinePage outlinePage = new XSDContentOutlinePage(this);
-        XSDContentProvider xsdContentProvider = new XSDContentProvider(xsdModelAdapterFactory);
-        xsdContentProvider.setXSDSchema(getXSDSchema());
-	      outlinePage.setContentProvider(xsdContentProvider);
-	      outlinePage.setLabelProvider(adapterFactoryLabelProvider);
-				outlinePage.setModel(getXSDSchema().getDocument());
-				
-				// Update outline selection from source editor selection:
-	      getViewerSelectionManager().addNodeSelectionListener(this);
-	      internalSelectionProvider.addSelectionChangedListener(getViewerSelectionManager());
-	      internalSelectionProvider.setEventSource(outlinePage);
-
-				fOutlinePage = outlinePage;
-			}
-			return fOutlinePage;
-		}
-	
-		return super.getAdapter(required);
-	}
-  
-  XSDModelQueryContributor xsdModelQueryContributor = new XSDModelQueryContributor();
-
-  protected XSDContentOutlinePage outlinePage;
-
-  /*
-   * @see StructuredTextEditor#getContentOutlinePage()
-   */
-  public IContentOutlinePage getContentOutlinePage()
-  {
-    return fOutlinePage;
-  }
-
-  // used to map selections from the outline view to the source view
-  // this class thinks of selections in terms of DOM element
-  class InternalSelectionProvider extends SelectionAdapter
-  {
-    protected Object getObjectForOtherModel(Object object)
-    {
-      Node node = null;
-
-      if (object instanceof Node)
-      {
-        node = (Node)object;
-      }
-      else if (object instanceof XSDComponent)
-      {
-        node = ((XSDComponent)object).getElement();
-      }
-      else if (object instanceof CategoryAdapter)
-      {
-        node = ((CategoryAdapter)object).getXSDSchema().getElement();
-      }
-
-      // the text editor can only accept sed nodes!
-      //
-      if (!(node instanceof XMLNode))
-      {
-        node = null;
-      }
-      return node;
-    }
-  }
-
-  public void selectionChanged(SelectionChangedEvent event)
-  {
-    // here we convert the model selection to a node selection req'd for the source view
-    //
-    internalSelectionProvider.setSelection(event.getSelection());
-  }
-
-  public void nodeSelectionChanged(NodeSelectionChangedEvent event)
-  {
-    // here we convert an node seleciton to a model selection as req'd by the other views
-    //
-    if (!event.getSource().equals(internalSelectionProvider) && getXSDEditor().getActiveEditorPage() != null)
-    {
-      Element element = null;
-      List list = event.getSelectedNodes();
-      for (Iterator i = list.iterator(); i.hasNext();)
-      {
-        Node node = (Node)i.next();
-        if (node != null)
-        {
-	        if (node.getNodeType() == Node.ELEMENT_NODE)
-	        {
-	          element = (Element)node;
-	          break;
-	        }
-	        else if (node.getNodeType() == Node.ATTRIBUTE_NODE)
-	        {
-	          element = ((Attr)node).getOwnerElement();
-	          break;
-	        }
-        }
-      }
-
-      Object o = element;
-      if (element != null)
-      {
-        Object modelObject = getXSDSchema().getCorrespondingComponent(element);
-        if (modelObject != null)
-        {
-          o = modelObject;
-        }
-      }
-
-      if (o != null)
-      {
-        xsdSelectionManager.setSelection(new StructuredSelection(o), internalSelectionProvider);
-      }
-      else
-      {
-        xsdSelectionManager.setSelection(new StructuredSelection(), internalSelectionProvider);
-      }
-    }
-  }
-
-  
-  /*
-   * @see ITextEditor#doRevertToSaved()
-   */
-  public void doRevertToSaved()
-  {
-    super.doRevertToSaved();
-  }
-
-  /*
-   * @see StructuredTextEditor#update()
-   */
-  public void update()
-  {
-    super.update();
-    if (outlinePage != null)
-     outlinePage.setModel(getModel());
-  }
-
-  protected Composite client;
-  
-  protected void addOpenOnSelectionListener()
-  {
-    getTextViewer().getTextWidget().addKeyListener(new KeyAdapter()
-    {
-      /**
-         * @see org.eclipse.swt.events.KeyListener#keyReleased(org.eclipse.swt.events.KeyEvent)
-         */
-      public void keyReleased(KeyEvent arg0)
-      {
-        if (arg0.keyCode == SWT.F3)
-        {
-          getXSDEditor().getOpenOnSelectionHelper().openOnSelection();
-        }
-      }
-
-    });
-  }
-
- // private static Color dividerColor;
-
-	protected ISourceViewer createSourceViewer(Composite parent, IVerticalRuler verticalRuler, int styles) {
-
-		fAnnotationAccess= createAnnotationAccess();
-		fOverviewRuler= createOverviewRuler(getSharedColors());
-
-		StructuredTextViewer sourceViewer = createStructedTextViewer(parent, verticalRuler, styles);
-		initSourceViewer(sourceViewer);
-
-    // end of super createSourceViewer
-		
-    //StructuredAnnotationAccess annotationAccess = new StructuredAnnotationAccess();
-	 // DefaultMarkerAnnotationAccess annotationAccess = new DefaultMarkerAnnotationAccess();
-		
-	//  ISharedTextColors sharedColors = getTextColorsCache();
-////  fOverviewRuler = new OverviewRuler(annotationAccess, OVERVIEW_RULER_WIDTH, sharedColors);
-	//  fOverviewRuler = new OverviewRuler(createAnnotationAccess(), 12, sharedColors);
-	  
-//	  fOverviewRuler.addHeaderAnnotationType(StructuredAnnotationType.ERROR);
-//	  fOverviewRuler.addHeaderAnnotationType(StructuredAnnotationType.WARNING);
-	  
-	 // fSourceViewerDecorationSupport = new SourceViewerDecorationSupport(sourceViewer, fOverviewRuler, annotationAccess, sharedColors);
-    //configureSourceViewerDecorationSupport(fSourceViewerDecorationSupport);    
-
-// The following method was removed
-//    sourceViewer.setEditor(this);
-
-		return sourceViewer;
-	}
-
-  /*
-   * @see StructuredTextEditor#setModel(IFileEditorInput)
-   */
-  public void setModel(IFileEditorInput input)
-  {                     
-    super.setModel(input);
-    if (getModel() instanceof XMLModel)
-    {
-      xsdModelQueryContributor.setModel((XMLModel)getModel());
-    }
-    file = input.getFile();
-  }
-
-  protected IFile file;
-
-
-  /**
-   * Gets the xsdSchema.
-   * @return Returns a XSDSchema
-   */
-  public XSDSchema getXSDSchema()
-  {
-    return ((XSDEditor)getEditorPart()).getXSDSchema();
-  }
-  
-  public XSDEditor getXSDEditor()
-  {
-    return (XSDEditor)getEditorPart();
-  }
- 
-  /**
-   * @see org.eclipse.ui.texteditor.AbstractTextEditor#safelySanityCheckState(IEditorInput)
-   */
-	public void safelySanityCheckState(IEditorInput input)
-  {
-    super.safelySanityCheckState(input);
-  }
-
-  protected class WrappedOpenFileAction extends OpenOnAction
-  {
-    /**
-     * Constructor for WrappedAction.
-     * @param bundle
-     * @param prefix
-     * @param editor
-     */
-    public WrappedOpenFileAction(
-      ResourceBundle bundle,
-      String prefix,
-      ITextEditor editor)
-    {
-      super(bundle, prefix, editor);
-    }
-
-    /**
-     * @see org.eclipse.jface.action.IAction#run()
-     */
-    public void run()
-    {
-      if (!getXSDEditor().getOpenOnSelectionHelper().openOnSelection())
-      {
-        super.run();
-      }
-    }
-  }
-  
-  protected WrappedOpenFileAction wrappedAction;
-  private static final String DOT = "."; //$NON-NLS-1$
-  private ActionGroup fRefactorMenuGroup;
-  
-  /**
-   * @see org.eclipse.ui.texteditor.AbstractTextEditor#createActions()
-   */
-  protected void createActions()
-  {
-    super.createActions();
-    addOpenOnSelectionListener();
-    ResourceBundle resourceBundle = SSECorePlugin.getDefault().getResourceBundle(); //ResourceBundle.getBundle(RESOURCE_BUNDLE_NAME);
-    
-    wrappedAction = new WrappedOpenFileAction(resourceBundle, StructuredTextEditorActionConstants.ACTION_NAME_OPEN_FILE + DOT, this);
-    setAction(StructuredTextEditorActionConstants.ACTION_NAME_OPEN_FILE, wrappedAction);
-	fRefactorMenuGroup = new RefactorActionGroup(this.getXSDEditor().getSelectionManager(), getXSDSchema(), ITextEditorActionConstants.GROUP_EDIT
-);
-
-  }
-  /* (non-Javadoc)
-	 * @see org.eclipse.wst.sse.ui.StructuredTextEditor#addContextMenuActions(org.eclipse.jface.action.IMenuManager)
-	 */
-	protected void addContextMenuActions(IMenuManager menu) {
-		
-		super.addContextMenuActions(menu);
-		ActionContext context= new ActionContext(getSelectionProvider().getSelection());
-		fRefactorMenuGroup.setContext(context);
-		fRefactorMenuGroup.fillContextMenu(menu);
-		fRefactorMenuGroup.setContext(null);
-	}
-    
-
-  class XSDModelQueryContributor extends AbstractXSDModelQueryContributor
-  {
-    public AbstractXSDDataTypeValueExtension createXSDDataTypeValueExtension(ModelQuery modelQuery)
-    {
-      return new XSDDataTypeValueExtension(modelQuery);
-    }
-  }
- 
-
-  class XSDDataTypeValueExtension extends AbstractXSDDataTypeValueExtension
-  {                             
-    public XSDDataTypeValueExtension(ModelQuery modelQuery)
-    {
-      super(modelQuery);
-    }
-
-    public String getId()
-    {
-      return "XSDDataTypeValueExtension";
-    }
-     
-    protected XSDSchema getEnclosingXSDSchema(Element element)
-    {
-      return getXSDSchema();
-    }   
-  }
-
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDURIConverter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDURIConverter.java
deleted file mode 100644
index 58f639b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/XSDURIConverter.java
+++ /dev/null
@@ -1,87 +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.xsd.ui.internal;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.impl.URIConverterImpl;
-import org.eclipse.wst.xml.uriresolver.util.IdResolver;
-import org.eclipse.wst.xml.uriresolver.util.IdResolverImpl;
-
-public class XSDURIConverter extends URIConverterImpl
-{
-  IFile resourceFile;
-  public XSDURIConverter(IFile resourceFile)
-  {
-    super();
-    this.resourceFile = resourceFile;
-  }
-  
-  /**
-   * @see org.eclipse.emf.ecore.resource.URIConverter#createInputStream(URI)
-   */
-  public InputStream createInputStream(URI uri) throws IOException
-  {
-    String scheme = uri.scheme();
-    URI mappedURI = uri;
-    if (scheme != null && !scheme.equals("file") && !scheme.equals("platform"))
-    // if ("http".equals(scheme))
-    {
-      String theURI = uri.toString();
-      IdResolver idResolver = new IdResolverImpl(theURI);
-      String result = idResolver.resolveId("/", null, theURI);
-      if (result != null)
-      {
-        mappedURI = createURI(result);
-      }  
-    }  
-    return super.createURLInputStream(mappedURI);
-  }
-  
-  public static URI createURI(String uriString)
-  {
-    if (hasProtocol(uriString))
-      return URI.createURI(uriString);
-    else
-      return URI.createFileURI(uriString);
-  }
-  
-  private static boolean hasProtocol(String uri)
-  {
-    boolean result = false;     
-    if (uri != null)
-    {
-      int index = uri.indexOf(":");
-      if (index != -1 && index > 2) // assume protocol with be length 3 so that the'C' in 'C:/' is not interpreted as a protocol
-      {
-        result = true;
-      }
-    }
-    return result;
-  }
-
-  private String getRelativePathToSchema(String a, String b)
-  {
-    String result;
-    if (b.startsWith(a))
-    {
-      result = b.substring(a.length() + 1);
-      return result;
-    }
-    else
-    {
-      return b;
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AbstractAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AbstractAction.java
deleted file mode 100644
index b421416..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AbstractAction.java
+++ /dev/null
@@ -1,68 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.xsd.XSDConcreteComponent;
-
-public class AbstractAction extends Action
-{
-  XSDConcreteComponent xsdConcreteComponent;
-
-  /**
-   * @param text
-   */
-  public AbstractAction(String text, XSDConcreteComponent xsdConcreteComponent)
-  {
-    super(text);
-    this.xsdConcreteComponent = xsdConcreteComponent;
-  }
-
-  /**
-   * @param text
-   * @param image
-   */
-  public AbstractAction(String text, ImageDescriptor image, XSDConcreteComponent xsdConcreteComponent)
-  {
-    super(text, image);
-    this.xsdConcreteComponent = xsdConcreteComponent;
-  }
-
-  /**
-   * @param text
-   * @param style
-   */
-  public AbstractAction(String text, int style)
-  {
-    super(text, style);
-  }
-  
-  public DocumentImpl getDocument()
-  {
-    return (DocumentImpl) xsdConcreteComponent.getElement().getOwnerDocument();
-  }
-    
-  public void beginRecording(String description)
-  {
-    getDocument().getModel().beginRecording(this, description);
-  }
-  
-  public void endRecording()
-  {
-    DocumentImpl doc = (DocumentImpl) getDocument();
-    
-    doc.getModel().endRecording(this);    
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddAttributeAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddAttributeAction.java
deleted file mode 100644
index f1a9f3f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddAttributeAction.java
+++ /dev/null
@@ -1,40 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xsd.ui.internal.commands.AddAttributeDeclarationCommand;
-import org.eclipse.xsd.XSDConcreteComponent;
-
-public class AddAttributeAction extends AbstractAction
-{
-  protected AddAttributeDeclarationCommand command;
-  
-  public AddAttributeAction(String text, XSDConcreteComponent parent)
-  {
-    super(text, parent);
-    command = new AddAttributeDeclarationCommand(parent);
-  }
-
-  public AddAttributeAction(String text, ImageDescriptor image, XSDConcreteComponent parent)
-  {
-    super(text, image, parent);
-    command = new AddAttributeDeclarationCommand(parent);
-  }
-
-  public void run()
-  {
-    beginRecording(getText());
-    command.run();
-    
-    endRecording();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddEnumsAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddEnumsAction.java
deleted file mode 100644
index ecc2f4b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddEnumsAction.java
+++ /dev/null
@@ -1,92 +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.xsd.ui.internal.actions;
-
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xsd.ui.internal.widgets.EnumerationsDialog;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-/**
- * Pattern is scoped to Enum Type
- */
-public class AddEnumsAction extends CreateElementAction
-{
-  public AddEnumsAction(String label)
-  {
-  	super(label);
-  }
- 
-  public Element createAndAddNewChildElement(String token)
-  {
-    String prefix = parentNode.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    Element childNode = getDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + elementTag);
-    if (getAttributes() != null)
-    {
-      List attributes = getAttributes();
-      for (int i = 0; i < attributes.size(); i++)
-      {
-        DOMAttribute attr = (DOMAttribute) attributes.get(i);
-        childNode.setAttribute(attr.getName(), attr.getValue());
-      }
-    }
-    if (getRelativeNode() == null)
-    {
-      parentNode.appendChild(childNode);
-    }
-    else
-    {
-      ((Element)parentNode).insertBefore(childNode,getRelativeNode());
-    }
-    childNode.setAttribute("value", token);
-    return childNode;
-  }    
-  
-  public void run()
-  {
-    Display display = Display.getCurrent();
-    // if it is null, get the default one
-    display = display == null ? Display.getDefault() : display;
-    Shell parentShell = display.getActiveShell();
-    EnumerationsDialog dialog = new EnumerationsDialog(parentShell);
-    dialog.setBlockOnOpen(true);
-    int result = dialog.open();
-
-    if (result == Window.OK) 
-    {
-      beginRecording(getDescription());
-
-      String text = dialog.getText();
-      String delimiter = dialog.getDelimiter();
-      StringTokenizer tokenizer = new StringTokenizer(text, delimiter);
-      while (tokenizer.hasMoreTokens()) 
-      {
-        String token = tokenizer.nextToken();
-        if (dialog.isPreserveWhitespace() == false) 
-        {
-          token = token.trim();
-        }
-
-        Element child = createAndAddNewChildElement(token);
-        formatChild(child);        
-      }
-      endRecording();
-    }
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddModelGroupAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddModelGroupAction.java
deleted file mode 100644
index ac31566..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddModelGroupAction.java
+++ /dev/null
@@ -1,57 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.commands.AddModelGroupCommand;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDCompositor;
-import org.eclipse.xsd.XSDConcreteComponent;
-
-
-public class AddModelGroupAction extends Action
-{
-   protected AddModelGroupCommand command;
-   protected XSDConcreteComponent parent;
-  
-   public static String getLabel(XSDCompositor compositor)
-   {
-     String result = XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SEQUENCE"); //$NON-NLS-1$
-     if (compositor != null)
-     {
-       if (compositor == XSDCompositor.CHOICE_LITERAL)
-       {
-         result = XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CHOICE");  //$NON-NLS-1$
-       }
-       else if (compositor == XSDCompositor.ALL_LITERAL)
-       {
-         result = XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ALL");//$NON-NLS-1$
-       }  
-     }
-     return result;
-   }
-  
-   public AddModelGroupAction(XSDConcreteComponent parent, XSDCompositor compositor)
-   {
-     command = new AddModelGroupCommand(parent, compositor);
-     this.parent = parent;
-     setText(getLabel(compositor));     
-   }   
-   
-   public void run()
-   {
-     DocumentImpl doc = (DocumentImpl) parent.getElement().getOwnerDocument();
-     doc.getModel().beginRecording(this, getText());
-     command.run();
-     doc.getModel().endRecording(this);
-   }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddSchemaNodeAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddSchemaNodeAction.java
deleted file mode 100644
index 31a8950..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/AddSchemaNodeAction.java
+++ /dev/null
@@ -1,61 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-
-
-public class AddSchemaNodeAction extends Action
-{
-  /**
-   * Constructor for AddSchemaNodeAction.
-   */
-  public AddSchemaNodeAction()
-  {
-    super();
-  }
-
-  /**
-   * Constructor for AddSchemaNodeAction.
-   * @param text
-   */
-  public AddSchemaNodeAction(String text)
-  {
-    super(text);
-  }
-
-  /**
-   * Constructor for AddSchemaNodeAction.
-   * @param text
-   * @param image
-   */
-  public AddSchemaNodeAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public void setEditor(XSDEditor editor)
-  {
-    this.editor = editor;
-  }
-  
-  protected XSDEditor editor;
-  
-  /**
-   * @see org.eclipse.jface.action.IAction#run()
-   */
-  public void run()
-  {
-    editor.createDefaultSchemaNode();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/BackAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/BackAction.java
deleted file mode 100644
index 0ab518d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/BackAction.java
+++ /dev/null
@@ -1,90 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphViewer;
-import org.eclipse.xsd.XSDSchema;
-
-/**
- * @author kchong
- *
- * <a href="mailto:kchong@ca.ibm.com">kchong@ca.ibm.com</a>
- *
- */
-public class BackAction extends Action
-{
-  ISelectionProvider selectionProvider;
-  XSDGraphViewer xsdGraphViewer;
-  XSDSchema xsdSchema;
-  
-  /**
-   * 
-   */
-  public BackAction()
-  {
-    super();
-  }
-
-  /**
-   * @param text
-   */
-  public BackAction(String text)
-  {
-    super(text);
-  }
-
-  public BackAction(String text, XSDGraphViewer viewer)
-  {
-    super(text);
-    xsdGraphViewer = viewer;
-  }
-  
-  /**
-   * @param text
-   * @param image
-   */
-  public BackAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  /**
-   * @param text
-   * @param style
-   */
-  public BackAction(String text, int style)
-  {
-    super(text, style);
-  }
-
-  public void setSelectionProvider(ISelectionProvider selectionProvider)
-  {
-    this.selectionProvider = selectionProvider;
-  }
-
-  public void setXSDSchema(XSDSchema xsdSchema)
-  {
-    this.xsdSchema = xsdSchema;
-  }
-  
-  /*
-   * @see IAction#run()
-   */
-  public void run()
-  {
-    StructuredSelection selection = new StructuredSelection(xsdSchema);
-    selectionProvider.setSelection(selection);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateAnnotationAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateAnnotationAction.java
deleted file mode 100644
index 698d433..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateAnnotationAction.java
+++ /dev/null
@@ -1,55 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class CreateAnnotationAction extends CreateElementAction
-{
-  XSDSchema xsdSchema;
-  Element documentationNode;
-
-  public CreateAnnotationAction()
-  {
-    super();
-  }
-
-  public CreateAnnotationAction(String text)
-  {
-    super(text);
-  }
-
-  public CreateAnnotationAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public Element createAndAddNewChildElement()
-  {
-    Element childNode = super.createAndAddNewChildElement();
-
-    String prefix = parentNode.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    documentationNode = getDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.DOCUMENTATION_ELEMENT_TAG);
-    childNode.appendChild(documentationNode);
-
-    formatChild(childNode);
-    formatChild(documentationNode);
-    formatChild(childNode);
-    
-    return childNode;
-  }
-  
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateAttributeAndRequired.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateAttributeAndRequired.java
deleted file mode 100644
index 6a634e2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateAttributeAndRequired.java
+++ /dev/null
@@ -1,115 +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.xsd.ui.internal.actions;
-
-import java.util.List;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDSchema;
-import org.w3c.dom.Element;
-
-/*
- * Class which creates an Attribute and necessary Elements required before
- * an Attribute can be added.  For example, if we wish to add an Attribute
- * to a GlobalElement without a ComplexType, a ComplexType will be created.
- */
-public class CreateAttributeAndRequired extends Action {
-	String elementTag;
-	String label;
-	List attributes;
-	XSDSchema xsdSchema;
-	ISelectionProvider selectionProvider;
-	Object parent;
-	
-	public CreateAttributeAndRequired(String elementTag, String label, List attributes, XSDSchema xsdSchema, ISelectionProvider selProvider, Object parent) {
-		super(label);
-		
-		this.elementTag = elementTag;
-		this.label = label;
-		this.attributes = attributes;
-		this.xsdSchema = xsdSchema;
-		this.selectionProvider = selProvider;
-		this.parent = parent;
-	}
-
-	public void run() {
-		if (parent instanceof XSDElementDeclaration) {
-			XSDElementDeclaration ed = (XSDElementDeclaration) parent;
-			beginRecording(ed.getElement());
-	        ed.setTypeDefinition(null);
-	      	XSDComplexTypeDefinition td = XSDFactory.eINSTANCE.createXSDComplexTypeDefinition();
-	        ed.setAnonymousTypeDefinition(td);
-			
-		    CreateElementAction action = new CreateElementAction(label);		    
-		    action.setElementTag(elementTag);
-		    action.setAttributes(attributes);
-		    action.setParentNode(td.getElement());
-		    action.setRelativeNode(null);
-		    action.setXSDSchema(xsdSchema);
-		    action.setSelectionProvider(selectionProvider);
-		    action.run();
-		    
-		    formatChild(td.getElement());
-        if (td.getAttributeContents().size() > 0)
-        {
-		      selectObject(td.getAttributeContents().get(0));
-        }
-		    endRecording(ed.getElement());
-		}
-	}
-
-	protected void beginRecording(Element element) {
-		((DocumentImpl) element.getOwnerDocument()).getModel().beginRecording(this, getText());
-	}
-	
-	protected void endRecording(Element element) {
-		((DocumentImpl) element.getOwnerDocument()).getModel().endRecording(this);
-	}
-	
-	public void selectObject(Object object) {
-	    if (selectionProvider != null)
-	    {
-	        selectionProvider.setSelection(new StructuredSelection(object));
-	    }
-	}
-	
-	  protected void formatChild(Element child)
-	  {
-	    if (child instanceof XMLNode)
-	    {
-	      XMLModel model = ((XMLNode)child).getModel();
-	      try
-	      {
-	        // tell the model that we are about to make a big model change
-	        model.aboutToChangeModel();
-	        
-		      IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();
-			    formatProcessor.formatNode(child);
-	      }
-	      finally
-	      {
-	        // tell the model that we are done with the big model change
-	        model.changedModel(); 
-	      }
-	    }
-	  }
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateElementAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateElementAction.java
deleted file mode 100644
index 3190d53..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateElementAction.java
+++ /dev/null
@@ -1,365 +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.xsd.ui.internal.actions;
-import java.util.List;
-
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gef.ui.parts.AbstractEditPartViewer;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ComplexTypeDefinitionEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ElementDeclarationEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ModelGroupDefinitionEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.TopLevelComponentEditPart;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-public class CreateElementAction extends Action
-{
-  protected String description;
-  protected Element parentNode;
-
-  protected ISelectionProvider selectionProvider;
-  protected XSDSchema xsdSchema;
-
-  protected Object sourceContext;
-
-  /**
-   * Constructor for CreateElementAction.
-   */
-  public CreateElementAction()
-  {
-    super();
-  }
-  /**
-   * Constructor for CreateElementAction.
-   * @param text
-   */
-  public CreateElementAction(String text)
-  {
-    super(text);
-  }
-  /**
-   * Constructor for CreateElementAction.
-   * @param text
-   * @param image
-   */
-  public CreateElementAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public void setXSDSchema(XSDSchema xsdSchema)
-  {
-    this.xsdSchema = xsdSchema;
-  }
-  
-  public void setSelectionProvider(ISelectionProvider selectionProvider)
-  {
-    this.selectionProvider = selectionProvider;
-  }
-
-  public void setSourceContext(Object sourceContext)
-  {
-    this.sourceContext = sourceContext;
-  }
-  
-  /**
-   * Gets the parentNode.
-   * @return Returns a Element
-   */
-  public Element getParentNode()
-  {
-    return parentNode;
-  }
-
-  /**
-   * Sets the parentNode.
-   * @param parentNode The parentNode to set
-   */
-  public void setParentNode(Element parentNode)
-  {
-    this.parentNode = parentNode;
-  }
-
-  boolean isGlobal = false;
-  
-  public void setIsGlobal(boolean isGlobal)
-  {
-    this.isGlobal = isGlobal;
-  }
-  
-  public boolean getIsGlobal()
-  {
-    return isGlobal;
-  }
-
-  protected Node relativeNode;
-  protected String elementTag;
-  public void setElementTag(String elementTag)
-  {
-    this.elementTag = elementTag;
-  }
-  
-  public DocumentImpl getDocument()
-  {
-    return (DocumentImpl) getParentNode().getOwnerDocument();
-  }
-    
-  public void beginRecording(String description)
-  {
-    getDocument().getModel().beginRecording(this, description);
-  }
-  
-  public void endRecording()
-  {
-    DocumentImpl doc = (DocumentImpl) getDocument();
-    
-    doc.getModel().endRecording(this);    
-  }
-  
-  public Element createAndAddNewChildElement()
-  {
-    String prefix = parentNode.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    Element childNode = getDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + elementTag);
-    if (getAttributes() != null)
-    {
-      List attributes = getAttributes();
-      for (int i = 0; i < attributes.size(); i++)
-      {
-        DOMAttribute attr = (DOMAttribute) attributes.get(i);
-        childNode.setAttribute(attr.getName(), attr.getValue());
-      }
-    }
-    if (getRelativeNode() == null)
-    {
-      parentNode.appendChild(childNode);
-    }
-    else
-    {
-      ((Element)parentNode).insertBefore(childNode,getRelativeNode());
-    }
-    
-    if (isGlobal && getRelativeNode() == null)
-    {
-      Text textNode = getDocument().createTextNode("\n\n");
-      parentNode.appendChild(textNode);
-    }
-    else if (isGlobal && getRelativeNode() != null)
-    {
-      Text textNode = getDocument().createTextNode("\n\n");
-      parentNode.insertBefore(textNode, getRelativeNode());
-    }
-
-    formatChild(childNode);
-    
-    return childNode;
-  }    
-    
-  protected void formatChild(Element child)
-  {
-    if (child instanceof XMLNode)
-    {
-      XMLModel model = ((XMLNode)child).getModel();
-      try
-      {
-        // tell the model that we are about to make a big model change
-        model.aboutToChangeModel();
-        
-	      IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();
-		    formatProcessor.formatNode(child);
-      }
-      finally
-      {
-        // tell the model that we are done with the big model change
-        model.changedModel(); 
-      }
-    }
-  }
-  /*
-   * @see IAction#run()
-   */
-  public void run()
-  {
-    beginRecording(getDescription());
-    final Element child = createAndAddNewChildElement();
-    endRecording();
-
-    if (selectionProvider != null)
-    {
-      final XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(child);
-//      selectionProvider.setSelection(new StructuredSelection(comp));
-      
-    Runnable runnable = new Runnable()
-    {
-      public void run()
-      {
-        if (comp instanceof XSDAttributeDeclaration)
-        {
-          if (((XSDAttributeDeclaration)comp).getContainer() instanceof XSDAttributeUse)
-          {
-            if (comp.getContainer().getContainer() instanceof XSDAttributeGroupDefinition)
-            {
-              selectionProvider.setSelection(new StructuredSelection(comp.getContainer()));
-            }
-            else if (comp.getContainer().getContainer() instanceof XSDComplexTypeDefinition)
-            {
-              if (XSDDOMHelper.inputEquals((Element)child, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true))
-              {
-                selectionProvider.setSelection(new StructuredSelection(comp.getContainer()));
-              }
-              else
-              {
-                selectionProvider.setSelection(new StructuredSelection(comp));
-              }
-            }
-            else
-            {
-              selectionProvider.setSelection(new StructuredSelection(comp));
-            }
-          }
-          else
-          {
-            selectionProvider.setSelection(new StructuredSelection(comp));
-          }
-        }
-        else
-        {
-          selectionProvider.setSelection(new StructuredSelection(comp));
-        }
-        if (comp instanceof XSDNamedComponent)
-        {
-          if (sourceContext instanceof AbstractEditPartViewer)
-          {
-            AbstractEditPartViewer viewer = (AbstractEditPartViewer)sourceContext;
-          
-            Object obj = viewer.getSelectedEditParts().get(0);
-            
-            if (obj instanceof GraphicalEditPart)
-            {
-              if (obj instanceof ElementDeclarationEditPart)
-              {
-                XSDElementDeclaration elem = ((ElementDeclarationEditPart)obj).getXSDElementDeclaration();
-                if (!elem.isElementDeclarationReference())
-                {
-                  ((ElementDeclarationEditPart)obj).doEditName();
-                }
-              }
-              else if (obj instanceof ModelGroupDefinitionEditPart)
-              {
-                XSDModelGroupDefinition group = ((ModelGroupDefinitionEditPart)obj).getXSDModelGroupDefinition();
-                if (!group.isModelGroupDefinitionReference())
-                {
-                  ((ModelGroupDefinitionEditPart)obj).doEditName();
-                }
-              }
-              else if (obj instanceof ComplexTypeDefinitionEditPart)
-              {
-                XSDComplexTypeDefinition ct = ((ComplexTypeDefinitionEditPart)obj).getXSDComplexTypeDefinition();
-                if (ct.getName() != null)
-                {
-                  ((ComplexTypeDefinitionEditPart)obj).doEditName();
-                }
-              }
-              else if (obj instanceof TopLevelComponentEditPart)
-              {
-                ((TopLevelComponentEditPart)obj).doEditName();
-              }
-            }
-
-          }
-        }
-      }
-    };
-    Display.getDefault().timerExec(50,runnable);
-    }
-  }
-
-  /**
-   * Gets the relativeNode.
-   * @return Returns a Element
-   */
-  public Node getRelativeNode()
-  {
-    return relativeNode;
-  }
-
-  /**
-   * Sets the relativeNode.
-   * @param relativeNode The relativeNode to set
-   */
-  public void setRelativeNode(Node relativeNode)
-  {
-    this.relativeNode = relativeNode;
-  }
-
-  /**
-   * Gets the description.
-   * @return Returns a String
-   */
-  public String getDescription()
-  {
-    if (description == null)
-    {
-      return getText();
-    }
-    return description;
-  }
-
-  /**
-   * Sets the description.
-   * @param description The description to set
-   */
-  public void setDescription(String description)
-  {
-    this.description = description;
-  }
-
-  protected List attributes;
-  /**
-   * Gets the nameAttribute.
-   * @return Returns a String
-   */
-  public List getAttributes()
-  {
-    return attributes;
-  }
-
-  /**
-   * Sets the attributes.
-   * @param attributes The attributes to set
-   */
-  public void setAttributes(List attributes)
-  {
-    this.attributes = attributes;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateGroupAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateGroupAction.java
deleted file mode 100644
index f9eadae..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateGroupAction.java
+++ /dev/null
@@ -1,76 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class CreateGroupAction extends CreateElementAction
-{
-  XSDSchema xsdSchema;
-
-  /**
-   * Constructor for CreateGroupAction.
-   */
-  public CreateGroupAction()
-  {
-    super();
-  }
-  /**
-   * Constructor for CreateGroupAction.
-   * @param text
-   */
-  public CreateGroupAction(String text)
-  {
-    super(text);
-  }
-  /**
-   * Constructor for CreateGroupAction.
-   * @param text
-   * @param XSDSchema
-   */
-  public CreateGroupAction(String text, XSDSchema xsdSchema)
-  {
-    super(text);
-    this.xsdSchema = xsdSchema;
-  }
-  /**
-   * Constructor for CreateGroupAction.
-   * @param text
-   * @param image
-   */
-  public CreateGroupAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public Element createAndAddNewChildElement()
-  {
-    XSDConcreteComponent xsdComp = xsdSchema.getCorrespondingComponent(parentNode);
-    Element childNode = super.createAndAddNewChildElement();
-
-    String prefix = parentNode.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    Element contentModelNode = getDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.SEQUENCE_ELEMENT_TAG);
-    childNode.appendChild(contentModelNode);
-
-    formatChild(childNode);
-    
-    xsdComp.setElement(parentNode);
-    
-    return childNode;
-  }
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateIdentityConstraintsAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateIdentityConstraintsAction.java
deleted file mode 100644
index ca933f3..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateIdentityConstraintsAction.java
+++ /dev/null
@@ -1,74 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class CreateIdentityConstraintsAction extends CreateElementAction
-{
-  XSDSchema xsdSchema;
-
-  /**
-   * Constructor for CreateIdentityConstraintsAction.
-   */
-  public CreateIdentityConstraintsAction()
-  {
-    super();
-  }
-  /**
-   * Constructor for CreateIdentityConstraintsAction.
-   * @param text
-   */
-  public CreateIdentityConstraintsAction(String text)
-  {
-    super(text);
-  }
-  /**
-   * Constructor for CreateIdentityConstraintsAction.
-   * @param text
-   * @param XSDSchema
-   */
-  public CreateIdentityConstraintsAction(String text, XSDSchema xsdSchema)
-  {
-    super(text);
-    this.xsdSchema = xsdSchema;
-  }
-  /**
-   * Constructor for CreateIdentityConstraintsAction.
-   * @param text
-   * @param image
-   */
-  public CreateIdentityConstraintsAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public Element createAndAddNewChildElement()
-  {
-    Element childNode = super.createAndAddNewChildElement();
-
-    String prefix = parentNode.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    Element selectorNode = getDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.SELECTOR_ELEMENT_TAG);
-
-    DOMAttribute attr = new DOMAttribute(XSDConstants.XPATH_ATTRIBUTE, "");
-    selectorNode.setAttribute(attr.getName(), attr.getValue());
-
-    childNode.appendChild(selectorNode);
-
-    return childNode;
-  }
-	
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateLocalComplexTypeAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateLocalComplexTypeAction.java
deleted file mode 100644
index e8b0cd0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateLocalComplexTypeAction.java
+++ /dev/null
@@ -1,68 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class CreateLocalComplexTypeAction extends CreateElementAction
-{
-  /**
-   * Constructor for CreateLocalComplexTypeAction.
-   */
-  public CreateLocalComplexTypeAction()
-  {
-    super();
-  }
-  /**
-   * Constructor for CreateLocalComplexTypeAction.
-   * @param text
-   */
-  public CreateLocalComplexTypeAction(String text)
-  {
-    super(text);
-  }
-  /**
-   * Constructor for CreateLocalComplexTypeAction.
-   * @param text
-   * @param image
-   */
-  public CreateLocalComplexTypeAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public Element createAndAddNewChildElement()
-  {  
-    XSDConcreteComponent xsdComp = xsdSchema.getCorrespondingComponent(parentNode);
-    
-    Element childNode = super.createAndAddNewChildElement();
-  
-    if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.ELEMENT_ELEMENT_TAG, false))  
-    {  
-      parentNode.removeAttribute(XSDConstants.TYPE_ATTRIBUTE);  
-    }  
-                                                      
-    String prefix = parentNode.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    childNode.appendChild(getDocument().createElement(prefix + XSDConstants.SEQUENCE_ELEMENT_TAG));
-    
-    formatChild(childNode);
-    
-    xsdComp.setElement(parentNode);
-
-    return childNode;
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateLocalSimpleTypeAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateLocalSimpleTypeAction.java
deleted file mode 100644
index d2e1065..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateLocalSimpleTypeAction.java
+++ /dev/null
@@ -1,85 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class CreateLocalSimpleTypeAction extends CreateElementAction
-{
-  XSDSchema xsdSchema;
-
-  /**
-   * Constructor for CreateLocalSimpleTypeAction.
-   */
-  public CreateLocalSimpleTypeAction()
-  {
-    super();
-  }
-  /**
-   * Constructor for CreateLocalSimpleTypeAction.
-   * @param text
-   */
-  public CreateLocalSimpleTypeAction(String text)
-  {
-    super(text);
-  }
-
-  /**
-   * Constructor for CreateLocalSimpleTypeAction.
-   * @param text
-   * @param image
-   */
-  public CreateLocalSimpleTypeAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public Element createAndAddNewChildElement()
-  {
-    Element childNode = super.createAndAddNewChildElement();
-
-    if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.UNION_ELEMENT_TAG, false))
-    {
-//      parentNode.removeAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-    }
-    else if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.LIST_ELEMENT_TAG, false))
-    {
-      parentNode.removeAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE);
-    }
-    else if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-    {
-      parentNode.removeAttribute(XSDConstants.TYPE_ATTRIBUTE);
-    }
-    else if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.RESTRICTION_ELEMENT_TAG, false))
-    {
-      Node parent = parentNode.getParentNode();
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-      {
-        parentNode.removeAttribute(XSDConstants.BASE_ATTRIBUTE);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-    {
-      parentNode.removeAttribute(XSDConstants.TYPE_ATTRIBUTE);
-    }
-    
-    formatChild(childNode);
-    
-    return childNode;
-  }
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateSimpleContentAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateSimpleContentAction.java
deleted file mode 100644
index 9c49936..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateSimpleContentAction.java
+++ /dev/null
@@ -1,162 +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.xsd.ui.internal.actions;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-/**
- * @version   1.0
- * @author
- */
-public class CreateSimpleContentAction extends CreateElementAction
-{
-  XSDSchema xsdSchema;
-  //IDocument document;
-
-  /**
-   * Constructor for CreateSimpleContentAction.
-   */
-  public CreateSimpleContentAction()
-  {
-    super();
-  }
-  /**
-   * Constructor for CreateSimpleContentAction.
-   * @param text
-   */
-  public CreateSimpleContentAction(String text)
-  {
-    super(text);
-  }
-  /**
-   * Constructor for CreateSimpleContentAction.
-   * @param text
-   * @param XSDSchema
-   */
-  public CreateSimpleContentAction(String text, XSDSchema xsdSchema)
-  {
-    super(text);
-    this.xsdSchema = xsdSchema;
-  }
-  /**
-   * Constructor for CreateSimpleContentAction.
-   * @param text
-   * @param image
-   */
-  public CreateSimpleContentAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public Element createAndAddNewChildElement()
-  {
-    Element childNode = super.createAndAddNewChildElement();
-
-    String prefix = parentNode.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    Element derivedByNode = getDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + "restriction");
-    childNode.appendChild(derivedByNode);
-    Element sequence = null;
-
-    if (XSDDOMHelper.inputEquals(childNode, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-    {
-      sequence = getDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + "sequence");
-      derivedByNode.appendChild(sequence);
-    }
-
-    // now add the required base attribute for the derived by node
-    TypesHelper typesHelper = new TypesHelper(xsdSchema);
-    List listOfCT = typesHelper.getUserComplexTypeNamesList();
-    String firstType = "";
-    if (listOfCT.size() > 0)
-    {
-      firstType = (String)(listOfCT).get(0);
-    }
-    DOMAttribute attr = new DOMAttribute(XSDConstants.BASE_ATTRIBUTE, firstType);
-    derivedByNode.setAttribute(attr.getName(), attr.getValue());
-
-    formatChild(derivedByNode);
-    if (sequence != null)
-    {
-      formatChild(sequence);
-      formatChild(derivedByNode);
-    }
-    formatChild(childNode);
-
-    
-    return childNode;
-  }
-
-  /*
-   * @see IAction#run()
-   */
-  public void run()
-  {
-    ArrayList message = new ArrayList();
-    beginRecording(getDescription());
-
-    Element child = createAndAddNewChildElement();
-    endRecording();
-
-    NodeList children = parentNode.getChildNodes();
-/*
-    for (int i=0; i < children.getLength(); i++)
-    {
-      Node aChild = children.item(i);
-      if (aChild != null && aChild instanceof Element)
-      {
-        if (XSDDOMHelper.inputEquals((Element)aChild, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals((Element)aChild, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, true))
-        {
-          // REMOVE ATTRIBUTES AND ATTRIBUTE GROUP REFS FROM COMPLEX TYPES LIST OF CHILDREN
-          message.addElement(new ModelMessage
-                                 (XSDPlugin.getSchemaString("_INFO_REMOVE_ATTRIBUTE_FROM") +
-              " <" + parentNode.getAttribute("name") + ">", aChild));
-        }
-      }
-    }
-    domainModel.createMarkers(message);
-*/
-    for (int i=0; i < children.getLength(); i++)
-    {
-      Node aChild = children.item(i);
-      if (aChild != null && aChild instanceof Element)
-      {
-        if (XSDDOMHelper.inputEquals((Element)aChild, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals((Element)aChild, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true) ||
-            XSDDOMHelper.inputEquals((Element)aChild, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals((Element)aChild, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, true))
-        {
-          // REMOVE ATTRIBUTES AND ATTRIBUTE GROUP REFS FROM COMPLEX TYPES LIST OF CHILDREN
-// KCPort TODO
-//          ErrorMessage aTask = new ErrorMessage();
-//          Node parent = aChild;
-//          if (parent instanceof NodeImpl)
-//          {
-//            aTask.setModelObject(parent);
-//          }
-//          aTask.setLocalizedMessage(XSDPlugin.getSchemaString("_INFO_REMOVE_ATTRIBUTE_FROM") + " <" + parentNode.getAttribute("name") + ">");
-//          message.add(aTask);
-        }
-      }
-    }    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateSimpleTypeAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateSimpleTypeAction.java
deleted file mode 100644
index 5e5c29c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/CreateSimpleTypeAction.java
+++ /dev/null
@@ -1,68 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-public class CreateSimpleTypeAction extends CreateElementAction
-{
-  /**
-   * 
-   */
-  public CreateSimpleTypeAction()
-  {
-    super();
-  }
-
-  /**
-   * @param text
-   */
-  public CreateSimpleTypeAction(String text)
-  {
-    super(text);
-  }
-  
-  public CreateSimpleTypeAction(String text, XSDSchema xsdSchema)
-  {
-    super(text);
-    this.xsdSchema = xsdSchema;
-  }
-
-  /**
-   * @param text
-   * @param image
-   */
-  public CreateSimpleTypeAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-  
-  public Element createAndAddNewChildElement()
-  {
-    XSDConcreteComponent xsdComp = xsdSchema.getCorrespondingComponent(parentNode);
-    Element childNode = super.createAndAddNewChildElement();
-
-    String prefix = parentNode.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    Element contentModelNode = getDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.RESTRICTION_ELEMENT_TAG);
-    contentModelNode.setAttribute(XSDConstants.BASE_ATTRIBUTE, prefix + "string");
-    childNode.appendChild(contentModelNode);
-
-    formatChild(childNode);
-    
-    xsdComp.setElement(parentNode);
-    
-    return childNode;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/DOMAttribute.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/DOMAttribute.java
deleted file mode 100644
index 5580b40..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/DOMAttribute.java
+++ /dev/null
@@ -1,76 +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.xsd.ui.internal.actions;
-
-// TODO Remove this
-
-/**
- * @version 	1.0
- * @author
- */
-public class DOMAttribute
-{
-  /**
-   * Constructor for DOMAttribute.
-   */
-  public DOMAttribute()
-  {
-    super();
-  }
-  
-  /**
-   * Constructor for DOMAttribute.
-   */
-  public DOMAttribute(String name, String value)
-  {
-    super();
-    this.name = name;
-    this.value = value;
-  }
-  
-  protected String name, value;
-  /**
-   * Gets the value.
-   * @return Returns a String
-   */
-  public String getValue()
-  {
-    return value;
-  }
-
-  /**
-   * Sets the value.
-   * @param value The value to set
-   */
-  public void setValue(String value)
-  {
-    this.value = value;
-  }
-
-  /**
-   * Gets the name.
-   * @return Returns a String
-   */
-  public String getName()
-  {
-    return name;
-  }
-
-  /**
-   * Sets the name.
-   * @param name The name to set
-   */
-  public void setName(String name)
-  {
-    this.name = name;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/DeleteAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/DeleteAction.java
deleted file mode 100644
index 097a4a3..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/DeleteAction.java
+++ /dev/null
@@ -1,237 +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.xsd.ui.internal.actions;
-
-import java.util.Iterator;
-
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.actions.SelectionListenerAction;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.BaseGlobalCleanup;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.GlobalAttributeCleanup;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.GlobalAttributeGroupCleanup;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.GlobalElementCleanup;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.GlobalGroupCleanup;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.GlobalSimpleOrComplexTypeCleanup;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.XSDExternalFileCleanup;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDRedefine;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Node;
-
-
-public class DeleteAction extends SelectionListenerAction
-{
-  protected IEditorPart editor;
-  protected XSDSchema xsdSchema;
-  protected ISelectionProvider selectionProvider;
-  protected XSDConcreteComponent parentXSDComponent;
-  
-  /**
-   * Constructor for DeleteAction.
-   * @param text
-   */
-  public DeleteAction(String text, IEditorPart editor, XSDSchema xsdSchema)
-  {
-    super(text);
-    this.editor = editor;
-    this.xsdSchema = xsdSchema;
-  }
-  
-  public void setSelectionProvider(ISelectionProvider selectionProvider)
-  {
-    this.selectionProvider = selectionProvider;
-  }
-  
-  public IEditorPart getEditor()
-  {
-    return editor;
-  }
-  
-  public XSDSchema getSchema()
-  {
-    return xsdSchema;
-  }
-  
-  public void setXSDSchema(XSDSchema xsdSchema)
-  {
-    this.xsdSchema = xsdSchema;
-  }
-  
-  /*
-   * @see IAction#run()
-   */
-  public void run()
-  {
-    IStructuredSelection selection = getStructuredSelection();
-    
-    if (selection.isEmpty())
-    {
-      return;
-    }
-    
-    Iterator iter = selection.iterator();
-    DocumentImpl doc = null;
-    while (iter.hasNext())
-    {
-      Object obj = iter.next();
-      Node node = null;
-      if (obj instanceof Node)
-      {
-        node = (Node)obj;
-      }
-      else if (obj instanceof XSDConcreteComponent)
-      {
-        xsdSchema = ((XSDConcreteComponent)obj).getSchema();
-        
-        node = ((XSDConcreteComponent)obj).getElement();
-        if (node instanceof XMLNode)
-        {
-          parentXSDComponent = ((XSDConcreteComponent)obj).getContainer();
-        
-          if (parentXSDComponent instanceof XSDParticle)
-          {
-            // need to get the modelGroup
-            parentXSDComponent = parentXSDComponent.getContainer();
-          }
-        }
-
-      }
-      if (!XSDDOMHelper.inputEquals(node, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-      {
-        if (node instanceof XMLNode)
-        {
-          if (doc == null)
-          {
-            doc = (DocumentImpl) node.getOwnerDocument();
-            doc.getModel().beginRecording(this, XSDEditorPlugin.getXSDString("_UI_ACTION_DELETE_NODES"));
-          }
-    
-          boolean refresh = cleanupReferences(node);
-          if (node != null)
-          {
-            XSDDOMHelper.removeNodeAndWhitespace(node);
-          }
-          
-          // Workaround to reset included elements in XSD model
-          if (refresh)
-          {
-  //          getEditor().reparseSchema();
-  //          getEditor().getGraphViewer().setSchema(getEditor().getXSDSchema());
-          }
-        }
-      }
-    }
-    
-    if (parentXSDComponent != null && selectionProvider != null)
-    {
-      selectionProvider.setSelection(new StructuredSelection(parentXSDComponent));
-    }
-    
-    if (doc != null)
-    {
-      doc.getModel().endRecording(this);
-    }
-  }
-
-  protected boolean cleanupReferences(Node deletedNode)
-  {
-    boolean refresh = false;
-    XSDConcreteComponent comp = getSchema().getCorrespondingComponent(deletedNode);
-    
-    if (comp instanceof XSDInclude ||
-        comp instanceof XSDImport ||
-        comp instanceof XSDRedefine)
-    {
-      XSDSchema resolvedSchema = ((XSDSchemaDirective)comp).getResolvedSchema();
-      XSDSchema referencedSchema = null;
-      if (comp instanceof XSDInclude)
-      {
-        referencedSchema = ((XSDInclude)comp).getIncorporatedSchema();
-        refresh = true;
-      }
-      else if (comp instanceof XSDRedefine)
-      {
-        referencedSchema = ((XSDRedefine)comp).getIncorporatedSchema();
-        refresh = true;
-      }
-      else if (comp instanceof XSDImport)
-      {
-        XSDImport imp = (XSDImport)comp;
-        referencedSchema = ((XSDImport)comp).getResolvedSchema();
-        refresh = true;
-      }
-
-      if (referencedSchema != null)
-      {
-        XSDExternalFileCleanup cleanHelper = new XSDExternalFileCleanup(referencedSchema);
-        cleanHelper.visitSchema(getSchema());
-        // populate messages
-// TODO        getEditor().createTasksInTaskList(cleanHelper.getMessages());
-      }
-      if (comp instanceof XSDImport)
-      {
-        TypesHelper typesHelper = new TypesHelper(getSchema());
-        typesHelper.updateMapAfterDelete((XSDImport)comp);
-      }
-    }
-    else if (getSchema().equals(comp.getContainer()))
-    {
-      BaseGlobalCleanup cleanHelper = null;
-      // Only need to clean up references if the component being deleted is global scoped
-      if (comp instanceof XSDElementDeclaration)
-      {
-        cleanHelper = new GlobalElementCleanup(comp);
-      }
-      else if (comp instanceof XSDModelGroupDefinition)
-      {
-        cleanHelper = new GlobalGroupCleanup(comp);
-      }
-      else if (comp instanceof XSDTypeDefinition)
-      {
-        cleanHelper = new GlobalSimpleOrComplexTypeCleanup(comp);
-      }
-      else if (comp instanceof XSDAttributeDeclaration)
-      {
-        cleanHelper = new GlobalAttributeCleanup(comp);
-      }
-      else if (comp instanceof XSDAttributeGroupDefinition)
-      {
-        cleanHelper = new GlobalAttributeGroupCleanup(comp);
-      }
-      
-      
-      if (cleanHelper != null)
-      {
-        cleanHelper.visitSchema(getSchema());
-      }
-    }
-    return refresh;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/GraphRenameAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/GraphRenameAction.java
deleted file mode 100644
index 4576bfa..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/GraphRenameAction.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.eclipse.wst.xsd.ui.internal.actions;
-
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.xsd.ui.internal.commands.RenameCommand;
-import org.eclipse.xsd.XSDNamedComponent;
-
-
-public class GraphRenameAction extends Action
-{
-  protected RenameCommand command;
-  
-  public GraphRenameAction(XSDNamedComponent namedComponent, GraphicalEditPart editPart)
-  {
-    command = new RenameCommand(namedComponent, editPart);
-    setText("Rename");
-  }
-
-  public void run()
-  {
-    command.run();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ISchemaEditorActionConstants.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ISchemaEditorActionConstants.java
deleted file mode 100644
index 39836ff..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ISchemaEditorActionConstants.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.xsd.ui.internal.actions;
-
-public interface ISchemaEditorActionConstants
-{
-  public static final String RETARGET_VALIDATE_SCHEMA_ACTION_ID = "retargetValidateSchemaAction"; //$NON-NLS-1$
-  public static final String RETARGET_RELOAD_DEPENDENCIES_ACTION_ID = "retargetReloadDependenciesAction"; //$NON-NLS-1$
-  public static final String RETARGET_GENERATE_JAVA_ACTION_ID = "retargetGenerateJavaAction"; //$NON-NLS-1$
-  public static final String RETARGET_GENERATE_DTD_ACTION_ID = "retargetGenerateDtdAction"; //$NON-NLS-1$
-  public static final String RETARGET_GENERATE_XML_ACTION_ID = "retargetGenerateXMLAction"; //$NON-NLS-1$
-  public static final String RETARGET_RENAME_ELEMENT_ACTION_ID = "RenameElement"; //$NON-NLS-1$
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/MakeAnonymousGlobal.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/MakeAnonymousGlobal.java
deleted file mode 100644
index 9a9638a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/MakeAnonymousGlobal.java
+++ /dev/null
@@ -1,66 +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.xsd.ui.internal.actions;
-
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class MakeAnonymousGlobal extends CreateElementAction
-{
-	XSDSchema xsdSchema;
-	Element type;
-	
-	public MakeAnonymousGlobal(String text, Element type, XSDSchema xsdSchema)
-	{
-		super(text);
-		this.xsdSchema = xsdSchema;
-		this.type = type;
-		isGlobal = true;
-	}
-
-	public Element createAndAddNewChildElement()
-	{
-		// create the new global type
-		Element childNode = super.createAndAddNewChildElement();
-    // add the anonymous type's children to the new global type
-		if (type.hasChildNodes())
-		{        
-			NodeList nodes = type.getChildNodes();
-			// use clones so we don't have a refresh problem
-			for (int i = 0; i < nodes.getLength(); i++)
-			{
-				Node node = nodes.item(i);       
-				childNode.appendChild(node.cloneNode(true));
-			}
-		}
-
-    // clean up the element whose type was anonymous
-    // and set its type attribute to the new global type
-		TypesHelper helper = new TypesHelper(xsdSchema);
-		String prefix = helper.getPrefix(xsdSchema.getTargetNamespace(), true);
-		helper = null;
-		
-		Element parentElementOfAnonymousType = (Element)type.getParentNode();
-
-		parentElementOfAnonymousType.removeChild(type);
-		parentElementOfAnonymousType.setAttribute(XSDConstants.TYPE_ATTRIBUTE, prefix + childNode.getAttribute(XSDConstants.NAME_ATTRIBUTE));
-
-		formatChild(childNode);
-		
-    return childNode;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ModelMessage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ModelMessage.java
deleted file mode 100644
index aa30618..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ModelMessage.java
+++ /dev/null
@@ -1,36 +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.xsd.ui.internal.actions;
-
-import org.w3c.dom.Node;
-
-public class ModelMessage
-{
-  protected String message;
-  protected Node node;
-
-  public ModelMessage(String message, Node node)
-  {
-    this.message = message;
-    this.node = node;
-  }
-
-  public String getMessage()
-  {
-    return message;
-  }
-
-  public Node getNode()
-  {
-    return node;
-  }
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/MoveAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/MoveAction.java
deleted file mode 100644
index 741f7d0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/MoveAction.java
+++ /dev/null
@@ -1,182 +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.xsd.ui.internal.actions;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-public class MoveAction extends Action
-{
-  protected List selectedNodes;
-  protected Node parentNode;
-  protected Node refChild;
-
-  /**
-   * Constructor for DeleteAction.
-   * @param text
-   */
-  public MoveAction(Node parentNode, List selectedNodes, Node refChild)
-  {
-    this.parentNode = parentNode;
-    this.selectedNodes = selectedNodes;
-    this.refChild = refChild;
-  }    
-
-  public MoveAction(XSDConcreteComponent parentComponent, List selectedComponents, XSDConcreteComponent refChildComponent)
-  {
-    selectedNodes = new ArrayList(selectedComponents.size());
-    for (Iterator i = selectedComponents.iterator(); i.hasNext(); )
-    {
-      XSDConcreteComponent concreteComponent = (XSDConcreteComponent)i.next();
-      selectedNodes.add(concreteComponent.getElement());
-    }
-    parentNode = parentComponent.getElement();
-    refChild = refChildComponent != null ? refChildComponent.getElement() : null;
-  }
-                   
-  public boolean canMove()
-  {                           
-    // TODO... there are likely more restriction to consider here
-    boolean result = true;
-    for (Iterator i = selectedNodes.iterator(); i.hasNext(); )
-    {
-      Node child = (Node)i.next();
-      if (isDecendantOrSelf(child, parentNode)) 
-      {
-        result = false;
-        break;
-      }
-    }   
-    return result;
-  }           
-                  
-  protected boolean isDecendantOrSelf(Node potentialParent, Node node)
-  { 
-    boolean result = false;
-    while (node != null)
-    {
-      if (node == potentialParent)    
-      {
-        result = true;
-        break;
-      }           
-      node = node.getParentNode();
-    }
-    return result;
-  }
-
-
-  protected void beginRecording()
-  {
-    XMLModel model = getModel();      
-    if (model != null)
-    {
-      model.beginRecording(this, "Move");
-    }
-  }
-  
-  protected void endRecording()
-  {
-    XMLModel model = getModel();      
-    if (model != null)
-    {
-      model.endRecording(this);    
-    }
-  }
-
-  protected XMLModel getModel()
-  {
-    XMLModel model = null;
-    if (parentNode instanceof XMLNode)
-    {                            
-      model = ((XMLNode)parentNode).getModel();
-    }
-    return model;
-  }
-  
-
-     
-  /*
-   * @see IAction#run()
-   */
-  public void run()
-  {                            
-    beginRecording();
-    try
-    {
-      for (Iterator i = selectedNodes.iterator(); i.hasNext(); )
-      {
-        Node child = (Node)i.next();
-        repositionBefore(parentNode, child, refChild);
-      }   
-    }
-    catch (Exception e)
-    {         
-      e.printStackTrace();
-    }
-    endRecording();
-  }
-
-
-  public void repositionBefore(Node parent, Node child, Node refChild)
-  {   
-    // TODO... when the refChild (inserting as the last element) we need to
-    // special case the way we preserve indentation 
-    Node oldParent = child.getParentNode();
-    if (oldParent != null && refChild != child)
-    {  
-      // consider any indentation text node that preceeds the child
-      //      
-      Node textNode = isWhitespaceTextNode(child.getPreviousSibling()) ? child.getPreviousSibling() : null;
-
-      // remove the child
-      //
-      oldParent.removeChild(child);
-      
-      // Instead of inserting the child immediatlely infront of the refChild, we first check to see if there
-      // is an indentation text node preceeding the refChild.  If we find such a node, we perform the insertion
-      // so that the child is inserted before the indentation text node.
-      Node adjustedRefChild = refChild;
-      if (refChild != null && isWhitespaceTextNode(refChild.getPreviousSibling()))
-      {
-        adjustedRefChild = refChild.getPreviousSibling();
-      }
-          
-      // reposition the child and any indentation text node 
-      //
-      parent.insertBefore(child, adjustedRefChild);
-      if (textNode != null)
-      {
-        oldParent.removeChild(textNode);
-        parent.insertBefore(textNode, child);
-      }
-    }
-  }     
-    
-
-  protected static boolean isWhitespaceTextNode(Node node)
-  {
-    boolean result = false;
-    if (node != null && node.getNodeType() == Node.TEXT_NODE)
-    {
-      String data = ((Text)node).getData();
-      result = (data == null || data.trim().length() == 0);
-    }   
-    return result;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/OpenSchemaAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/OpenSchemaAction.java
deleted file mode 100644
index 6ba1ee9..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/OpenSchemaAction.java
+++ /dev/null
@@ -1,64 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.eclipse.wst.xsd.ui.internal.util.OpenOnSelectionHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.impl.XSDImportImpl;
-import org.w3c.dom.Node;
-
-
-public class OpenSchemaAction extends Action
-{
-  XSDConcreteComponent component;
-  public OpenSchemaAction(String label, XSDConcreteComponent component)
-  {
-    super(label);
-    this.component = component;
-  }
-
-  public void run()
-  {
-    if (component != null)
-    {
-      revealObject();
-    }
-  }
-
-  boolean lastResult = false;
-  protected boolean revealObject()
-  {
-    Node element = component.getElement();
-    String schemaLocation = "";
-    XSDSchemaDirective dir;
-    if (component instanceof XSDSchemaDirective)
-    {
-      dir = (XSDSchemaDirective)component;
-      // force load of imported schema
-      if (dir instanceof XSDImportImpl)
-      {
-        ((XSDImportImpl)dir).importSchema();
-      }
-      if (dir.getResolvedSchema() != null)
-      {
-        schemaLocation = URIHelper.removePlatformResourceProtocol(dir.getResolvedSchema().getSchemaLocation());
-        if (schemaLocation != null)
-        {
-          OpenOnSelectionHelper.openXSDEditor(schemaLocation);
-        }
-      }
-    }
-    return lastResult;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ReloadDependenciesAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ReloadDependenciesAction.java
deleted file mode 100644
index 73e239f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/ReloadDependenciesAction.java
+++ /dev/null
@@ -1,58 +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.xsd.ui.internal.actions;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-
-
-public class ReloadDependenciesAction extends Action
-{
-  /**
-   * Constructor for ReloadDependenciesAction.
-   */
-  public ReloadDependenciesAction()
-  {
-    super();
-  }
-
-  /**
-   * Constructor for ReloadDependenciesAction.
-   * @param text
-   */
-  public ReloadDependenciesAction(String text)
-  {
-    super(text);
-  }
-
-  /**
-   * Constructor for ReloadDependenciesAction.
-   * @param text
-   * @param image
-   */
-  public ReloadDependenciesAction(String text, ImageDescriptor image)
-  {
-    super(text, image);
-  }
-
-  public void setEditor(XSDEditor editor)
-  {
-    this.editor = editor;
-  }
-  
-  protected XSDEditor editor;
-  
-  public void run()
-  {
-    editor.reparseSchema();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetBaseTypeAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetBaseTypeAction.java
deleted file mode 100644
index 27bbabb..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetBaseTypeAction.java
+++ /dev/null
@@ -1,384 +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.xsd.ui.internal.actions;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.wst.xsd.ui.internal.widgets.SetBaseTypeDialog;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class SetBaseTypeAction extends Action
-{
-  XSDSchema xsdSchema;
-  Element element;
-  String type = "";
-  String derivedByString = "";
-  XSDDOMHelper domHelper;
-  
-  /**
-   * Constructor for SetBaseTypeAction.
-   */
-  public SetBaseTypeAction()
-  {
-    super();
-    domHelper = new XSDDOMHelper();
-  }
-  /**
-   * Constructor for SetBaseTypeAction.
-   * @param arg0
-   */
-  public SetBaseTypeAction(String arg0)
-  {
-    super(arg0);
-    domHelper = new XSDDOMHelper();
-  }
-  /**
-   * Constructor for SetBaseTypeAction.
-   * @param arg0
-   * @param arg1
-   */
-  public SetBaseTypeAction(String arg0, ImageDescriptor arg1)
-  {
-    super(arg0, arg1);
-    domHelper = new XSDDOMHelper();
-  }
-  /**
-   * Constructor for SetBaseTypeAction.
-   * @param arg0
-   * @param arg1
-   */
-  public SetBaseTypeAction(String arg0, int arg1)
-  {
-    super(arg0, arg1);
-    domHelper = new XSDDOMHelper();
-  }
-
-  
-  public void setXSDSchema(XSDSchema schema)
-  {
-    this.xsdSchema = schema;    
-  }
-
-  public void setComplexTypeElement(Element element)
-  {
-    this.element = element;
-  }
-  
-  public void setType(String type)
-  {
-    this.type = type; 
-  }
-
-  public void setDerivedBy(String derivedByString)
-  {
-    this.derivedByString = derivedByString;
-  }
-
-  public void run()
-  {
-    Display display = Display.getCurrent();
-    // if it is null, get the default one
-    display = display == null ? Display.getDefault() : display;
-    Shell parentShell = display.getActiveShell();
-
-    SetBaseTypeDialog dialog = new SetBaseTypeDialog(parentShell, xsdSchema, element);
-    dialog.setBlockOnOpen(true);
-
-    Element contentModelElement = domHelper.getContentModelFromParent(element);    
-    if (contentModelElement != null)
-    {
-      // to set the current values to show in the dialog
-      if (XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false) ||
-          XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-      {
-        Element derivedByElement = domHelper.getDerivedByElementFromComplexType(element);
-        if (derivedByElement != null)
-        {
-          String currentBaseType = derivedByElement.getAttribute(XSDConstants.BASE_ATTRIBUTE);
-          dialog.setCurrentBaseType(currentBaseType);
-          dialog.setCurrentDerivedBy(derivedByElement.getLocalName());
-        }
-        else
-        {
-          dialog.setCurrentBaseType("");
-          dialog.setCurrentDerivedBy("");
-        }
-      }
-    }
-
-    int result = dialog.open();
-    
-    if (result == Window.OK) 
-    {
-      type = dialog.getBaseType();
-      derivedByString = dialog.getDerivedBy();
-      performAction();
-    }
-  }
-
-  XSDTypeDefinition newTypeDefinition = null;
-  public XSDTypeDefinition getXSDTypeDefinition()
-  {
-    return newTypeDefinition;
-  }
-
-  public void performAction()
-  {
-    TypesHelper helper = new TypesHelper(xsdSchema);
-
-    XSDConcreteComponent xsdComp = xsdSchema.getCorrespondingComponent(element);
-    
-    Element contentModelElement = domHelper.getContentModelFromParent(element);
-    boolean contentModelExists = true;
-    if (contentModelElement == null)
-    {
-      contentModelExists = false;
-    }
-
-//  get XSD component of the new type chosen
-    newTypeDefinition = null;
-    for (Iterator i = xsdSchema.getTypeDefinitions().iterator(); i.hasNext(); )
-    {
-      XSDTypeDefinition typeDef = (XSDTypeDefinition)i.next();
-      if (typeDef.getQName().equals(type))
-      {
-        newTypeDefinition = typeDef;
-        break;
-      }
-    }
-   
-    boolean needsComplexContent = false;
-    boolean needsSimpleContent = false;
-
-    if (helper.getBuiltInTypeNamesList().contains(type) ||
-       helper.getUserSimpleTypeNamesList().contains(type))
-//    if (newTypeDefinition instanceof XSDSimpleTypeDefinition)
-    {
-      needsSimpleContent = true; 
-    }        
-    else if (newTypeDefinition instanceof XSDComplexTypeDefinition)
-    {
-      needsComplexContent = true;
-//      XSDComplexTypeDefinition newCTObj = (XSDComplexTypeDefinition)newTypeDefinition;
-//      XSDContentTypeCategory category = newCTObj.getContentTypeCategory();
-    }
-    
-    beginRecording(XSDEditorPlugin.getXSDString("_UI_LABEL_SET_BASE_TYPE"), element);
-    String prefix = element.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-
-    DOMAttribute attr = new DOMAttribute(XSDConstants.BASE_ATTRIBUTE, type);
-    boolean hasChildrenElements = domHelper.hasElementChildren(element);
-    if (!contentModelExists) // if no content model exists, then add the new nodes
-    {
-      if (helper.getBuiltInTypeNamesList().contains(type) ||
-          helper.getUserSimpleTypeNamesList().contains(type))
-      {
-        updateModelAndDerivedByKind(prefix + XSDConstants.SIMPLECONTENT_ELEMENT_TAG, prefix + XSDConstants.EXTENSION_ELEMENT_TAG, attr);
-      }
-      else if (helper.getUserComplexTypeNamesList().contains(type))
-      {
-        if (derivedByString.equals("")) // default
-        {
-          derivedByString = XSDConstants.EXTENSION_ELEMENT_TAG;
-        }
-        Element derivedByElement = updateModelAndDerivedByKind(prefix + XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, prefix + derivedByString, attr);
-        Element newModelGroupElement = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.SEQUENCE_ELEMENT_TAG);
-        derivedByElement.appendChild(newModelGroupElement);
-        formatChild(derivedByElement);
-      }
-    }
-    else  // else there is a content model
-    {
-      if (type.equals(""))  // the chosen type is blank, ie. there is no base type
-      {
-        Element derivedByElement = domHelper.getDerivedByElementFromComplexType(element);
-        Element sourceContentModelElement = domHelper.getContentModelFromParent(derivedByElement);
-        // Retain the content model if there is one from the complex or simple content derive by element
-        if (XSDDOMHelper.inputEquals(sourceContentModelElement, XSDConstants.SEQUENCE_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals(sourceContentModelElement, XSDConstants.CHOICE_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals(sourceContentModelElement, XSDConstants.ALL_ELEMENT_TAG, false))
-        {      
-          Element newNode = domHelper.cloneElement(element, sourceContentModelElement);
-          element.replaceChild(newNode, contentModelElement);
-          formatChild(element); 
-        }
-        else // otherwise just add the nodes
-        {
-          XSDDOMHelper.removeNodeAndWhitespace(contentModelElement);
-          Element newSequenceElement = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.SEQUENCE_ELEMENT_TAG);
-          element.appendChild(newSequenceElement);
-          formatChild(newSequenceElement);
-        }
-      }           
-      else // a base type is specified
-      {
-        Element sequenceChoiceOrAllElement = null;  // copy the model to reposition it off of the new derived by element
-        if (XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.SEQUENCE_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.CHOICE_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.ALL_ELEMENT_TAG, false))
-        {
-           sequenceChoiceOrAllElement = domHelper.cloneElement(element, contentModelElement);
-        }
-
-        if (needsComplexContent)
-        {
-          if (!(XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false)))
-          {
-            domHelper.changeContentModel(element, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, sequenceChoiceOrAllElement);
-            contentModelElement = domHelper.getContentModelFromParent(element);
-          }          
-        }
-        if (needsSimpleContent)
-        {
-          if (!(XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false)))
-          {
-            // we don't want to append the element content to a simple content
-            sequenceChoiceOrAllElement = null;
-            domHelper.changeContentModel(element, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, sequenceChoiceOrAllElement);
-            contentModelElement = domHelper.getContentModelFromParent(element);
-          }
-        }
-
-        Element derivedByElement = domHelper.getDerivedByElementFromComplexType(element);        
-        if (derivedByElement == null)
-        {
-          if (derivedByString == null || (derivedByString != null && derivedByString.equals("")))
-          {
-            derivedByString = XSDConstants.EXTENSION_ELEMENT_TAG;  // since there is no derivedByElement
-          }
-          derivedByElement = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, derivedByString);
-          contentModelElement.appendChild(derivedByElement);
-          formatChild(contentModelElement);
-          if (sequenceChoiceOrAllElement != null)
-          {
-            derivedByElement.appendChild(sequenceChoiceOrAllElement);
-            formatChild(derivedByElement);
-          }
-        }
-        else
-        {
-          if (helper.getBuiltInTypeNamesList().contains(type) ||
-              helper.getUserSimpleTypeNamesList().contains(type))
-          {
-            derivedByString = XSDConstants.EXTENSION_ELEMENT_TAG;
-            Element aContentModelElement = domHelper.getContentModelFromParent(derivedByElement);
-            if (aContentModelElement != null)
-            {
-              XSDDOMHelper.removeNodeAndWhitespace(aContentModelElement);
-            }
-          }
-          domHelper.changeDerivedByType(contentModelElement, derivedByString, type);
-        }
-        derivedByElement.setAttribute(attr.getName(), attr.getValue());
-      }
-    }
-    
-    xsdComp.setElement(element);
-    endRecording(element);
-  }
-
-  private Element updateModelAndDerivedByKind(String modelType, String derivedByKind, DOMAttribute attr)
-  {
-    Element newContentModelElement = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, modelType);
-    element.appendChild(newContentModelElement);
-
-    Element newDerivedByElement = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, derivedByKind);
-    newContentModelElement.appendChild(newDerivedByElement);
-
-    newDerivedByElement.setAttribute(attr.getName(), attr.getValue());
-    
-    NodeList children = element.getChildNodes();
-    int length = children.getLength();
-    ArrayList nodesToRemove = new ArrayList();
-    for (int i = 0; i < length; i++)
-    {
-      Node node = children.item(i);
-      if (XSDDOMHelper.inputEquals(node, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false) ||
-          XSDDOMHelper.inputEquals(node, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true) ||
-          XSDDOMHelper.inputEquals(node, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, true) ||
-          XSDDOMHelper.inputEquals(node, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false))
-      {
-        newDerivedByElement.appendChild(node.cloneNode(true));
-        nodesToRemove.add(node);
-      }
-    }
-    for (Iterator i = nodesToRemove.iterator(); i.hasNext(); )
-    {
-      XSDDOMHelper.removeNodeAndWhitespace((Node)i.next());
-    }
-    
-    formatChild(newContentModelElement);
-
-    return newDerivedByElement;
-  }
-
-  protected void formatChild(Element child)
-  {
-    if (child instanceof XMLNode)
-    {
-      XMLModel model = ((XMLNode)child).getModel();
-      try
-      {
-        // tell the model that we are about to make a big model change
-        model.aboutToChangeModel();
-        
-        IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();
-        formatProcessor.formatNode(child);
-      }
-      finally
-      {
-        // tell the model that we are done with the big model change
-        model.changedModel(); 
-      }
-    }
-
-  }
-
-  public DocumentImpl getDocument(Element element)
-  {
-    return (DocumentImpl) element.getOwnerDocument();
-  }
-
-  public void beginRecording(String description, Element element)
-  {
-    getDocument(element).getModel().beginRecording(this, description);
-  }
-  
-  public void endRecording(Element element)
-  {
-    DocumentImpl doc = (DocumentImpl) getDocument(element);
-    
-    doc.getModel().endRecording(this);    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetMultiplicityAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetMultiplicityAction.java
deleted file mode 100644
index 7de436d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetMultiplicityAction.java
+++ /dev/null
@@ -1,42 +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.xsd.ui.internal.actions;
-
-import org.eclipse.wst.xsd.ui.internal.commands.SetMultiplicityCommand;
-import org.eclipse.xsd.XSDConcreteComponent;
-
-public class SetMultiplicityAction extends AbstractAction
-{
-  SetMultiplicityCommand command;
-  
-  public SetMultiplicityAction(XSDConcreteComponent parent, String multiplicity)
-  {
-    super(multiplicity, parent);
-    command = new SetMultiplicityCommand(parent);
-  }
-  
-  public void setMaxOccurs(int i)
-  {
-    command.setMaxOccurs(i);
-  }
-
-  public void setMinOccurs(int i)
-  {
-    command.setMinOccurs(i);
-  }
-
-  public void run()
-  {
-    beginRecording(getText());
-    command.run();
-    endRecording();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetTypeAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetTypeAction.java
deleted file mode 100644
index 6ff6b92..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/SetTypeAction.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package org.eclipse.wst.xsd.ui.internal.actions;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.xsd.ui.internal.commands.SetTypeCommand;
-import org.eclipse.xsd.XSDConcreteComponent;
-
-public class SetTypeAction extends AbstractAction
-{
-  int typeKind;
-  SetTypeCommand command;
-  
-  public SetTypeAction(String text, ImageDescriptor image, XSDConcreteComponent xsdConcreteComponent)
-  {
-    super(text, image, xsdConcreteComponent);
-    command = new SetTypeCommand(xsdConcreteComponent);
-  }
-  
-  public SetTypeAction(String text, XSDConcreteComponent xsdConcreteComponent)
-  {
-    super(text, xsdConcreteComponent);
-    command = new SetTypeCommand(xsdConcreteComponent);
-  }
-  
-  public void setTypeKind(int type)
-  {
-    this.typeKind = type;
-    command.setTypeKind(type);
-  }
-  
-  public void run()
-  {
-    beginRecording(getText());
-    command.run();
-    endRecording();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/XSDEditNamespacesAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/XSDEditNamespacesAction.java
deleted file mode 100644
index 543d7a8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/actions/XSDEditNamespacesAction.java
+++ /dev/null
@@ -1,226 +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.xsd.ui.internal.actions;
-
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.DOMNamespaceInfoManager;
-import org.eclipse.wst.xml.core.internal.contentmodel.util.NamespaceInfo;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xml.ui.actions.ReplacePrefixAction;
-import org.eclipse.wst.xml.ui.util.XMLCommonResources;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.SchemaPrefixChangeHandler;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.TargetNamespaceChangeHandler;
-import org.eclipse.wst.xsd.ui.internal.widgets.XSDEditSchemaInfoDialog;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class XSDEditNamespacesAction extends Action {
-	private Element element;
-	private Node node;
-	private String resourceLocation;
-	private XSDSchema xsdSchema;
-    private DOMNamespaceInfoManager namespaceInfoManager = new DOMNamespaceInfoManager();
-	
-	public XSDEditNamespacesAction(String label, Element element, Node node) {
-		super();
-		setText(label);
-		
-		this.element = element;
-		this.node = node;
-		///////////////////// This needs to be changed....
-		this.resourceLocation = "dummy";		
-	}
-	
-	public XSDEditNamespacesAction(String label, Element element, Node node, XSDSchema schema) {
-		this (label, element, node);
-		xsdSchema = schema;
-	}
-	
-	public void run() {
-		if (element != null)
-		{   
-		      Shell shell = XMLCommonResources.getInstance().getWorkbench().getActiveWorkbenchWindow().getShell();
-		      String targetNamespace = null;
-		      if (xsdSchema != null) {
-		      	targetNamespace = xsdSchema.getTargetNamespace();
-		      }
-		      XSDEditSchemaInfoDialog dialog = new XSDEditSchemaInfoDialog(shell, new Path(resourceLocation), targetNamespace); 
-
-		      List namespaceInfoList = namespaceInfoManager.getNamespaceInfoList(element);
-		      List oldNamespaceInfoList = NamespaceInfo.cloneNamespaceInfoList(namespaceInfoList);
-
-		      // here we store a copy of the old info for each NamespaceInfo
-		      // this info will be used in createPrefixMapping() to figure out how to update the document 
-		      // in response to these changes
-		      for (Iterator i = namespaceInfoList.iterator(); i.hasNext(); )
-		      {
-		        NamespaceInfo info = (NamespaceInfo)i.next();
-		        NamespaceInfo oldCopy = new NamespaceInfo(info);
-		        info.setProperty("oldCopy", oldCopy);
-		      }
-		                              
-		      dialog.setNamespaceInfoList(namespaceInfoList);   
-		      dialog.create();      
-		      //dialog.getShell().setSize(500, 300);
-		      dialog.getShell().setText(XMLCommonResources.getInstance().getString("_UI_MENU_EDIT_SCHEMA_INFORMATION_TITLE"));
-		      dialog.setBlockOnOpen(true);                                 
-		      dialog.open();
-          String xsdPrefix = "";    
-
-		      if (dialog.getReturnCode() == Window.OK)
-		      {
-            Element xsdSchemaElement = xsdSchema.getElement();
-            DocumentImpl doc = (DocumentImpl) xsdSchemaElement.getOwnerDocument();
-            
-            List newInfoList = dialog.getNamespaceInfoList();
-
-		        // see if we need to rename any prefixes
-		        Map prefixMapping = createPrefixMapping(oldNamespaceInfoList, namespaceInfoList);
-            
-            Map map2 = new Hashtable();
-            String xsdNS = "";
-            for (Iterator iter = newInfoList.iterator(); iter.hasNext(); )
-            {
-              NamespaceInfo ni = (NamespaceInfo)iter.next();
-              String pref = ni.prefix;
-              String uri = ni.uri;
-              if (pref == null) pref = "";
-              if (uri == null) uri = "";
-              if (XSDConstants.isSchemaForSchemaNamespace(uri))
-              {
-                xsdPrefix = pref;
-              }
-              map2.put(pref, uri);
-            }
-           
-		        if (map2.size() > 0)
-		        {
-		        	try {
-                
-                doc.getModel().beginRecording(this, XSDEditorPlugin.getXSDString("_UI_NAMESPACE_CHANGE"));
-
-                if (xsdPrefix != null && xsdPrefix.length() == 0)
-                {
-                  xsdSchema.setSchemaForSchemaQNamePrefix(null);
-                }
-                else
-                {
-                  xsdSchema.setSchemaForSchemaQNamePrefix(xsdPrefix);
-                }
-
-                xsdSchema.setTargetNamespace(dialog.getTargetNamespace());
-                xsdSchema.update();
-                
-                SchemaPrefixChangeHandler spch = new SchemaPrefixChangeHandler(xsdSchema, xsdPrefix);
-                spch.resolve();
-                xsdSchema.update();
-                
-                xsdSchema.setIncrementalUpdate(false);
-                namespaceInfoManager.removeNamespaceInfo(element);
-                namespaceInfoManager.addNamespaceInfo(element, newInfoList, false);
-                xsdSchema.setIncrementalUpdate(true);
-
-                // don't need these any more?
-			          ReplacePrefixAction replacePrefixAction = new ReplacePrefixAction(null, element, prefixMapping);
-			          replacePrefixAction.run();
-                
-                TargetNamespaceChangeHandler targetNamespaceChangeHandler = new TargetNamespaceChangeHandler(xsdSchema, targetNamespace, dialog.getTargetNamespace());
-                targetNamespaceChangeHandler.resolve();
-				    	}
-              catch (Exception e)
-              { 
-//                e.printStackTrace();
-              }
-              finally
-              {
-                xsdSchema.update();
-                doc.getModel().endRecording(this);
-			     		}
-		        }
-		   }      
-          
-		}
-	}
-	
-	 protected Map createPrefixMapping(List oldList, List newList)
-	  {          
-	    Map map = new Hashtable();
-
-	    Hashtable oldURIToPrefixTable = new Hashtable();
-	    for (Iterator i = oldList.iterator(); i.hasNext(); )
-	    {    
-	      NamespaceInfo oldInfo = (NamespaceInfo)i.next();                    
-	      oldURIToPrefixTable.put(oldInfo.uri, oldInfo);
-	    }
-	    
-	    for (Iterator i = newList.iterator(); i.hasNext(); )
-	    {
-	      NamespaceInfo newInfo = (NamespaceInfo)i.next();
-	      NamespaceInfo oldInfo = (NamespaceInfo)oldURIToPrefixTable.get(newInfo.uri != null ? newInfo.uri : ""); 
-
-
-	      // if oldInfo is non null ... there's a matching URI in the old set
-	      // we can use its prefix to detemine out mapping
-	      //
-	      // if oldInfo is null ...  we use the 'oldCopy' we stashed away 
-	      // assuming that the user changed the URI and the prefix
-	      if (oldInfo == null)                                            
-	      {
-	        oldInfo = (NamespaceInfo)newInfo.getProperty("oldCopy");           
-	      } 
-
-	      if (oldInfo != null)
-	      {
-	        String newPrefix = newInfo.prefix != null ? newInfo.prefix : "";
-	        String oldPrefix = oldInfo.prefix != null ? oldInfo.prefix : "";
-	        if (!oldPrefix.equals(newPrefix))
-	        {
-	          map.put(oldPrefix, newPrefix);    
-	        }
-	      }      
-	    }        
-	    return map;
-	  }
-   
-//    private void updateAllNodes(Element element, String prefix)
-//    {
-//      element.setPrefix(prefix);
-//      NodeList list = element.getChildNodes();
-//      if (list != null)
-//      {
-//        for (int i=0; i < list.getLength(); i++)
-//        {
-//          Node child = list.item(i);
-//          if (child != null && child instanceof Element)
-//          {
-//            child.setPrefix(prefix);
-//            if (child.hasChildNodes())
-//            {
-//              updateAllNodes((Element)child, prefix);
-//            }
-//          }
-//        }
-//      }   
-//    }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AbstractCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AbstractCommand.java
deleted file mode 100644
index 9d8c0a1..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AbstractCommand.java
+++ /dev/null
@@ -1,71 +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.xsd.ui.internal.commands;
-
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.w3c.dom.Element;
-
-public abstract class AbstractCommand 
-{
-  private XSDConcreteComponent parent;
-  private XSDConcreteComponent model;
-
-  protected AbstractCommand(XSDConcreteComponent parent)
-  {
-    this.parent = parent;
-  }
-  
-  public abstract void run();
-
-  protected XSDConcreteComponent getParent()
-  {
-    return parent;
-  }
-  
-  public XSDConcreteComponent getModelObject()
-  {
-    return model;
-  }
-  
-  protected void setModelObject(XSDConcreteComponent model)
-  {
-    this.model = model;
-  }
-  
-  // Establish part-whole relationship
-  protected abstract boolean adopt(XSDConcreteComponent model);
-
-  protected void formatChild(Element child)
-  {
-    if (child instanceof XMLNode)
-    {
-      XMLModel model = ((XMLNode)child).getModel();
-      try
-      {
-        // tell the model that we are about to make a big model change
-        model.aboutToChangeModel();
-        
-        IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();
-        formatProcessor.formatNode(child);
-      }
-      finally
-      {
-        // tell the model that we are done with the big model change
-        model.changedModel(); 
-      }
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddAttributeDeclarationCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddAttributeDeclarationCommand.java
deleted file mode 100644
index 7be73f0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddAttributeDeclarationCommand.java
+++ /dev/null
@@ -1,141 +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.xsd.ui.internal.commands;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-public class AddAttributeDeclarationCommand extends AbstractCommand
-{
-  XSDAttributeDeclaration refAttribute = null;
-  /**
-   * @param parent
-   */
-  public AddAttributeDeclarationCommand(XSDConcreteComponent parent)
-  {
-    super(parent);
-  }
-
-  public AddAttributeDeclarationCommand(XSDConcreteComponent parent, XSDAttributeDeclaration ref)
-  {
-    super(parent);
-    this.refAttribute = ref;
-  }
-
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.xsd.ui.internal.commands.AbstractCommand#run()
-   */
-  public void run()
-  {
-    XSDConcreteComponent parent = getParent();
-    if (parent instanceof XSDComplexTypeDefinition)
-    {
-      XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)parent;
-
-      XSDAttributeDeclaration attribute = XSDFactory.eINSTANCE.createXSDAttributeDeclaration();
-      attribute.setName(getNewName("Attribute")); //$NON-NLS-1$
-      attribute.setTypeDefinition(ct.getSchema().getSchemaForSchema().resolveSimpleTypeDefinition("string")); //$NON-NLS-1$
-      
-      XSDAttributeUse attributeUse = XSDFactory.eINSTANCE.createXSDAttributeUse();
-      attributeUse.setAttributeDeclaration(attribute);
-      attributeUse.setContent(attribute);
-      
-      if (ct.getAttributeContents() != null)
-      {
-        ct.getAttributeContents().add(attributeUse);
-        formatChild(attribute.getElement());
-      }
-    }
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.xsd.ui.internal.commands.AbstractCommand#adopt(org.eclipse.xsd.XSDConcreteComponent)
-   */
-  protected boolean adopt(XSDConcreteComponent model)
-  {
-    return false;
-  }
-  
-  ArrayList names;
-  
-  protected String getNewName(String description)
-  {
-    String candidateName = "New" + description; //$NON-NLS-1$
-    StringBuffer candidateNameSB = new StringBuffer("New" + description); //$NON-NLS-1$
-    XSDConcreteComponent parent = getParent();
-    names = new ArrayList();
-    int i = 1;
-    if (parent instanceof XSDComplexTypeDefinition)
-    {
-      XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)parent;
-      walkUpInheritance(ct);
-
-      boolean ready = false;
-      while (!ready)
-      {
-        ready = true;
-        for (Iterator iter = names.iterator(); iter.hasNext(); )
-        {
-          String attrName = (String)iter.next();
-          if (candidateName.equals(attrName))
-          {
-            ready = false;
-            candidateName = "New" + description + String.valueOf(i); //$NON-NLS-1$
-            i++;
-          }
-        }
-      }
-    }
-    return candidateName;
-  }
-  
-  private void walkUpInheritance(XSDComplexTypeDefinition ct)
-  {
-    updateNames(ct);
-    XSDTypeDefinition typeDef = ct.getBaseTypeDefinition();
-    if (ct != ct.getRootType())
-    {
-      if (typeDef instanceof XSDComplexTypeDefinition)
-      {
-        XSDComplexTypeDefinition ct2 = (XSDComplexTypeDefinition)typeDef;
-        walkUpInheritance(ct2);
-      }
-    }
-  }
-
-  private void updateNames(XSDComplexTypeDefinition ct)
-  {
-    Iterator iter = ct.getAttributeContents().iterator();
-    while (iter.hasNext())
-    {
-      Object obj = iter.next();
-      if (obj instanceof XSDAttributeUse)
-      {
-        XSDAttributeUse use = (XSDAttributeUse)obj;
-        XSDAttributeDeclaration attr = use.getAttributeDeclaration();
-        String attrName = attr.getName();
-        if (attrName != null)
-        {
-          names.add(attrName);
-        }
-      }
-    }
-
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddComplexTypeDefinitionCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddComplexTypeDefinitionCommand.java
deleted file mode 100644
index 72da36a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddComplexTypeDefinitionCommand.java
+++ /dev/null
@@ -1,53 +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.xsd.ui.internal.commands;
-
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDSchema;
-
-public final class AddComplexTypeDefinitionCommand extends AbstractCommand
-{
-  private String name;
-  
-  public AddComplexTypeDefinitionCommand
-    (XSDConcreteComponent parent,
-     String name)
-  {
-    super(parent);
-    this.name = name; // this may be null for anonymous type
-  }
-	  
-  public void run()
-  {
-  	XSDComplexTypeDefinition typeDef = 
-      XSDFactory.eINSTANCE.createXSDComplexTypeDefinition();
-    typeDef.setName(name);
-    	
-    if (adopt(typeDef))
-      setModelObject(typeDef);
-  }
-  
-  protected boolean adopt(XSDConcreteComponent model)
-  {
-  	XSDConcreteComponent parent = getParent();
-    if (parent instanceof XSDSchema)
-      ((XSDSchema)parent).getTypeDefinitions().add(model);
-    else if (parent instanceof XSDElementDeclaration)
-      ((XSDElementDeclaration)parent).setAnonymousTypeDefinition((XSDComplexTypeDefinition)model);
-    else
-      return false; // invalid parent
-    
-    return true;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddElementDeclarationCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddElementDeclarationCommand.java
deleted file mode 100644
index cf161ec..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddElementDeclarationCommand.java
+++ /dev/null
@@ -1,53 +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.xsd.ui.internal.commands;
-
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDSchema;
-
-public final class AddElementDeclarationCommand extends AbstractCommand
-{
-  private String name; // element name
-  
-  public AddElementDeclarationCommand
-    (XSDConcreteComponent parent,
-     String name)
-  {
-    super(parent);
-    this.name = name;
-  }
-  
-  public void run()
-  {
-    XSDElementDeclaration elementDecl = 
-      XSDFactory.eINSTANCE.createXSDElementDeclaration();
-    elementDecl.setName(name);
-    
-    if (adopt(elementDecl))
-      setModelObject(elementDecl);
-  }
-
-  protected boolean adopt(XSDConcreteComponent model)
-  {
-  	XSDConcreteComponent parent = getParent();
-    if (parent instanceof XSDSchema)
-      ((XSDSchema)parent).getElementDeclarations().add(model);
-    else if (parent instanceof XSDParticle)
-      ((XSDParticle)parent).setContent((XSDElementDeclaration)model);
-    else
-      return false; // invalid parent
-    
-    return true;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddModelGroupCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddModelGroupCommand.java
deleted file mode 100644
index f5518e2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddModelGroupCommand.java
+++ /dev/null
@@ -1,103 +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.xsd.ui.internal.commands;
-
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDCompositor;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-
-public class AddModelGroupCommand extends AbstractCommand
-{
-  protected XSDCompositor compositor;
-
-  public AddModelGroupCommand(XSDConcreteComponent parent, XSDCompositor compositor)
-  {
-    super(parent);
-    this.compositor = compositor;
-  }
-
-  public void run()
-  {
-    XSDConcreteComponent parent = getParent();
-    XSDConcreteComponent owner = null;
-    if (parent instanceof XSDElementDeclaration)
-    {
-      XSDElementDeclaration ed = (XSDElementDeclaration)parent;      
-      if (ed.getTypeDefinition() != null) 
-      {
-        if (ed.getAnonymousTypeDefinition() == null)
-        {
-          ed.setTypeDefinition(null);
-          XSDComplexTypeDefinition td = XSDFactory.eINSTANCE.createXSDComplexTypeDefinition();
-          ed.setAnonymousTypeDefinition(td);
-          owner = ed.getTypeDefinition();
-        }
-        else
-        {
-          XSDComplexTypeDefinition td = XSDFactory.eINSTANCE.createXSDComplexTypeDefinition();
-          ed.setAnonymousTypeDefinition(td);
-          owner = td;        
-        }
-      }        
-      else if (ed.getAnonymousTypeDefinition() == null)
-      {
-        XSDComplexTypeDefinition td = XSDFactory.eINSTANCE.createXSDComplexTypeDefinition();
-        ed.setAnonymousTypeDefinition(td);
-        owner = td;        
-      }
-      else if (ed.getAnonymousTypeDefinition() instanceof XSDComplexTypeDefinition)
-      {
-        owner = ed.getAnonymousTypeDefinition();
-      }
-      else if (ed.getAnonymousTypeDefinition() instanceof XSDSimpleTypeDefinition)
-      {
-        XSDComplexTypeDefinition td = XSDFactory.eINSTANCE.createXSDComplexTypeDefinition();
-        ed.setAnonymousTypeDefinition(td);
-        owner = td;        
-      }
-    }
-    else if (parent instanceof XSDModelGroup)
-    {
-      ((XSDModelGroup) parent).getContents().add(createModelGroup());
-    }
-    else if (parent instanceof XSDComplexTypeDefinition)
-    {
-      owner = ((XSDComplexTypeDefinition)parent);
-    }
-    if (owner != null)
-    {
-      XSDParticle particle = XSDFactory.eINSTANCE.createXSDParticle(); 
-      XSDModelGroup modelGroup = createModelGroup();
-      particle.setContent(modelGroup);
-
-      XSDComplexTypeDefinition ctd = (XSDComplexTypeDefinition)owner;
-      ctd.setContent(particle);
-      formatChild(parent.getElement());
-    }  
-  }
-
-  protected boolean adopt(XSDConcreteComponent model)
-  {
-    return false;
-  }
-  
-  protected XSDModelGroup createModelGroup()
-  {
-    XSDModelGroup modelGroup = XSDFactory.eINSTANCE.createXSDModelGroup();
-    modelGroup.setCompositor(compositor);
-    return modelGroup;
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddSimpleTypeDefinitionCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddSimpleTypeDefinitionCommand.java
deleted file mode 100644
index b0c347b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/AddSimpleTypeDefinitionCommand.java
+++ /dev/null
@@ -1,56 +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.xsd.ui.internal.commands;
-
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-
-public final class AddSimpleTypeDefinitionCommand extends AbstractCommand
-{
-  private String name;
-  
-  public AddSimpleTypeDefinitionCommand
-    (XSDConcreteComponent parent,
-     String name)
-  {
-    super(parent);
-    this.name = name; // this may be null for anonymous type
-  }
-  
-  public void run()
-  {
-  	XSDSimpleTypeDefinition typeDef = 
-      XSDFactory.eINSTANCE.createXSDSimpleTypeDefinition();
-  	typeDef.setName(name);
-  	
-    if (adopt(typeDef))
-      setModelObject(typeDef);
-  }
-  
-  protected boolean adopt(XSDConcreteComponent model)
-  {
-  	XSDConcreteComponent parent = getParent();
-    if (parent instanceof XSDSchema)
-      ((XSDSchema)parent).getTypeDefinitions().add(model);
-    else if (parent instanceof XSDElementDeclaration)
-      ((XSDElementDeclaration)parent).setAnonymousTypeDefinition((XSDSimpleTypeDefinition)model);
-    else if (parent instanceof XSDAttributeDeclaration)
-      ((XSDAttributeDeclaration)parent).setAnonymousTypeDefinition((XSDSimpleTypeDefinition)model);
-    else
-      return false; // invalid parent
-    
-    return true;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/MakeAnonymousTypeGlobalCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/MakeAnonymousTypeGlobalCommand.java
deleted file mode 100644
index 7562a18..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/MakeAnonymousTypeGlobalCommand.java
+++ /dev/null
@@ -1,84 +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.xsd.ui.internal.commands;
-
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-public final class MakeAnonymousTypeGlobalCommand extends AbstractCommand {
-
-	String fNewName;
-
-	public MakeAnonymousTypeGlobalCommand(XSDConcreteComponent element,
-			String newName) {
-		super(element.getContainer());
-		setModelObject(element);
-		fNewName = newName;
-	}
-
-	public void run() {
-		XSDConcreteComponent model = getModelObject();
-		XSDConcreteComponent parent = model.getContainer();
-		XSDTypeDefinition globalTypeDef = null;
-		if (model instanceof XSDComplexTypeDefinition) {
-			if (parent instanceof XSDElementDeclaration) {
-				// clone typedef with it's content and set it global
-				globalTypeDef = (XSDComplexTypeDefinition) model
-						.cloneConcreteComponent(true, false);
-				globalTypeDef.setName(fNewName);
-				parent.getSchema().getContents().add(globalTypeDef);
-				((XSDElementDeclaration) parent)
-						.setTypeDefinition(globalTypeDef);
-			}
-		} else if (model instanceof XSDSimpleTypeDefinition) {
-
-			XSDSimpleTypeDefinition typeDef = (XSDSimpleTypeDefinition) model;
-			if (parent instanceof XSDElementDeclaration) {
-				// clone typedef with it's content and set it global
-				globalTypeDef = (XSDSimpleTypeDefinition) typeDef
-						.cloneConcreteComponent(true, false);
-				globalTypeDef.setName(fNewName);
-				parent.getSchema().getContents().add(globalTypeDef);
-				((XSDElementDeclaration) parent)
-						.setTypeDefinition(globalTypeDef);
-				formatChild(globalTypeDef.getElement());
-
-			} else if (parent instanceof XSDAttributeDeclaration) {
-				// clone typedef with it's content and set it global
-				globalTypeDef = (XSDSimpleTypeDefinition) typeDef
-						.cloneConcreteComponent(true, false);
-				globalTypeDef.setName(fNewName);
-				parent.getSchema().getContents().add(globalTypeDef);
-				((XSDAttributeDeclaration) parent)
-						.setTypeDefinition((XSDSimpleTypeDefinition) globalTypeDef);
-
-			}
-
-		}
-
-		formatChild(globalTypeDef.getElement());
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.xsd.ui.internal.commands.AbstractCommand#adopt(org.eclipse.xsd.XSDConcreteComponent)
-	 */
-	protected boolean adopt(XSDConcreteComponent model) {
-		// TODO Auto-generated method stub
-		return true;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/MakeLocalElementGlobalCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/MakeLocalElementGlobalCommand.java
deleted file mode 100644
index 7303919..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/MakeLocalElementGlobalCommand.java
+++ /dev/null
@@ -1,84 +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.xsd.ui.internal.commands;
-
-import org.eclipse.xsd.XSDComplexTypeContent;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-public final class MakeLocalElementGlobalCommand extends AbstractCommand
-{
-	
-  public MakeLocalElementGlobalCommand
-    (XSDConcreteComponent element)
-  {
-    super(element.getContainer());
-    setModelObject(element);
-  }
-  
-  public void run()
-  {
-    
-   if(getModelObject() instanceof XSDElementDeclaration){
-   
-	   XSDElementDeclaration element = (XSDElementDeclaration)getModelObject();
- 	XSDConcreteComponent parent = getParent();
- 	XSDConcreteComponent container = parent.getContainer();
- 	
- 	// clone element with it's content and set it global
-	XSDConcreteComponent  elementDecl = ((XSDElementDeclaration)getModelObject()).cloneConcreteComponent(true, true);
- 	container.getSchema().getContents().add(elementDecl);
- 	
- 	// create local element and set it's reference to the global one
- 	XSDElementDeclaration elementRef = 
-	      XSDFactory.eINSTANCE.createXSDElementDeclaration();
-	elementRef.setValue(element.getValue());
-    elementRef.setResolvedElementDeclaration((XSDElementDeclaration)elementDecl); 
-    
-    // now set content models
- 	if(parent instanceof XSDComplexTypeContent){
- 		if(container instanceof XSDModelGroup){
- 			XSDModelGroup modelGroup = (XSDModelGroup)container;
- 			// disconnect parent from its container
- 			int index = modelGroup.getContents().indexOf(parent);
- 			 XSDParticle particle = 
- 			      XSDFactory.eINSTANCE.createXSDParticle();
- 		    particle.setContent(elementRef);
- 		    modelGroup.getContents().add(index, particle); 
- 		   
- 			modelGroup.getContents().remove(parent);
- 		    modelGroup.updateElement(true);
-  		    formatChild(modelGroup.getElement());
- 		}
- 	}
- 	else if(parent instanceof XSDTypeDefinition){
-		System.out.println("MakeLocalElementGlobalCommand.run: parent instanceof XSDTypeDefinition");
-		 		
- 	}
- 	
- 	container.getSchema().updateElement(true);
-    formatChild(elementDecl.getElement());
-  
-   }
-
-  }
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.xsd.ui.internal.commands.AbstractCommand#adopt(org.eclipse.xsd.XSDConcreteComponent)
-	 */
-	protected boolean adopt(XSDConcreteComponent model) {
-		// TODO Auto-generated method stub
-		return true;
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/RenameCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/RenameCommand.java
deleted file mode 100644
index ade4b77..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/RenameCommand.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package org.eclipse.wst.xsd.ui.internal.commands;
-
-import org.eclipse.draw2d.Label;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ComplexTypeDefinitionEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ElementDeclarationEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ModelGroupDefinitionEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.TopLevelComponentEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDNamedComponent;
-
-
-/**
- * @author kchong
- *
- * <a href="mailto:kchong@ca.ibm.com">kchong@ca.ibm.com</a>
- *
- */
-public class RenameCommand
-{
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();
-  Label label = new Label();
-  XSDNamedComponent namedComponent;
-  GraphicalEditPart editPart;
-  
-  public RenameCommand(XSDNamedComponent namedComponent, GraphicalEditPart editPart)
-  {
-    this.namedComponent = namedComponent;
-    this.editPart = editPart;
-  }
-
-  /* (non-Javadoc)
-   * @see com.ibm.xsd.edit.actions.AbstractCommand#run()
-   */
-  public void run()
-  {
-    if (editPart instanceof ElementDeclarationEditPart)
-    {
-      ElementDeclarationEditPart elementDeclarationEditPart = (ElementDeclarationEditPart)editPart;
-      elementDeclarationEditPart.doEditName();
-    }
-    else if (editPart instanceof TopLevelComponentEditPart)
-    {
-      TopLevelComponentEditPart topLevelEditPart = (TopLevelComponentEditPart)editPart;
-      topLevelEditPart.doEditName();
-    }
-    else if (editPart instanceof ComplexTypeDefinitionEditPart)
-    {
-      ((ComplexTypeDefinitionEditPart)editPart).doEditName();
-    }
-    else if (editPart instanceof ModelGroupDefinitionEditPart)
-    {
-      ((ModelGroupDefinitionEditPart)editPart).doEditName();
-    }
-  }
-
-  /* (non-Javadoc)
-   * @see com.ibm.xsd.edit.actions.AbstractCommand#adopt(org.eclipse.xsd.XSDConcreteComponent)
-   */
-  protected boolean adopt(XSDConcreteComponent model)
-  {
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/SetMultiplicityCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/SetMultiplicityCommand.java
deleted file mode 100644
index f43bdcd..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/SetMultiplicityCommand.java
+++ /dev/null
@@ -1,67 +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.xsd.ui.internal.commands;
-
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDParticleContent;
-
-public class SetMultiplicityCommand extends AbstractCommand
-{
-  int maxOccurs, minOccurs;
-
-  /**
-   * @param parent
-   */
-  public SetMultiplicityCommand(XSDConcreteComponent parent)
-  {
-    super(parent);
-  }
-  
-  public void setMaxOccurs(int i)
-  {
-    maxOccurs=i;
-  }
-
-  public void setMinOccurs(int i)
-  {
-    minOccurs=i;    
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.xsd.ui.internal.commands.AbstractCommand#run()
-   */
-  public void run()
-  {
-    XSDConcreteComponent parent = getParent();
-    XSDConcreteComponent owner = null;
-    if (parent instanceof XSDParticleContent)
-    {
-      XSDParticleContent xsdParticleContent = (XSDParticleContent)parent;
-      XSDParticle xsdParticle = (XSDParticle)xsdParticleContent.getContainer();
-      if (maxOccurs < 0)
-      {
-        maxOccurs = XSDParticle.UNBOUNDED;
-      }
-      xsdParticle.setMaxOccurs(maxOccurs);
-      xsdParticle.setMinOccurs(minOccurs);
-    }
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.xsd.ui.internal.commands.AbstractCommand#adopt(org.eclipse.xsd.XSDConcreteComponent)
-   */
-  protected boolean adopt(XSDConcreteComponent model)
-  {
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/SetTypeCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/SetTypeCommand.java
deleted file mode 100644
index 1549e67..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/commands/SetTypeCommand.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package org.eclipse.wst.xsd.ui.internal.commands;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionDialog;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDSetTypeHelper;
-import org.eclipse.xsd.XSDCompositor;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class SetTypeCommand extends AbstractCommand
-{
-  protected int typeKind = XSDConstants.COMPLEXTYPE_ELEMENT;
-  
-  public SetTypeCommand(XSDConcreteComponent parent)
-  {
-    super(parent);
-  }
-  
-  public void setTypeKind(int type)
-  {
-    this.typeKind = type;
-  }
-
-  public void run()
-  {
-    XSDConcreteComponent parent = getParent();
-    if (parent instanceof XSDElementDeclaration)
-    {
-      XSDElementDeclaration element = (XSDElementDeclaration)parent;
-      XSDSchema schema = element.getSchema();
-      if (typeKind == XSDConstants.COMPLEXTYPE_ELEMENT)
-      {
-        AddComplexTypeDefinitionCommand ctCommand = new AddComplexTypeDefinitionCommand(element, null);
-//        ctCommand.run();
-        AddModelGroupCommand sequenceCommand = new AddModelGroupCommand(element, XSDCompositor.SEQUENCE_LITERAL);
-        sequenceCommand.run();
-      }
-      else if (typeKind == XSDConstants.SIMPLETYPE_ELEMENT)
-      {
-        AddSimpleTypeDefinitionCommand stCommand = new AddSimpleTypeDefinitionCommand(element, null);
-        stCommand.run();
-        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)stCommand.getModelObject();
-        XSDSimpleTypeDefinition base = schema.resolveSimpleTypeDefinition(schema.getSchemaForSchemaNamespace(), "string");
-        st.setBaseTypeDefinition(base);
-      }
-      else
-      {
-          Shell shell = Display.getCurrent().getActiveShell();
-          IFile currentIFile = ((IFileEditorInput)getActiveEditor().getEditorInput()).getFile();
-          
-          XSDComponentSelectionProvider provider = new XSDComponentSelectionProvider(currentIFile, schema);
-          XSDComponentSelectionDialog dialog = new XSDComponentSelectionDialog(shell, "Set Type", provider);  // TODO: Externalize This
-          provider.setDialog(dialog);
-          
-          dialog.setBlockOnOpen(true);
-          dialog.create();
-          
-          if (dialog.open() == Window.OK) {
-              XSDSetTypeHelper helper = new XSDSetTypeHelper(currentIFile, schema);
-              helper.setType(element.getElement(), "type", dialog.getSelection());
-          }
-      }
-      formatChild(element.getElement());
-    }
-
-  }
-  
-  private IEditorPart getActiveEditor()
-  {
-    IWorkbench workbench = XSDEditorPlugin.getPlugin().getWorkbench();
-    IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
-    IEditorPart editorPart = workbenchWindow.getActivePage().getActiveEditor();
-//    IEditorPart editorPart = part.getSite().getWorkbenchWindow().getActivePage().getActiveEditor();
-
-    return editorPart;
-  }
-
-  protected boolean adopt(XSDConcreteComponent model)
-  {
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/ComponentSelectionDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/ComponentSelectionDialog.java
deleted file mode 100644
index 32fc5a5..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/ComponentSelectionDialog.java
+++ /dev/null
@@ -1,447 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.common;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-
-public class ComponentSelectionDialog extends Dialog {
-    private Display display = Display.getCurrent();
-    private String dialogTitle;
-
-    protected IComponentSelectionProvider provider;
-    private List componentTreeViewerInput;
-    private List masterComponentList;
-    
-    // widgets
-    protected Composite topComposite;
-    protected Composite bottomComposite; 
-    private String filterTextLabel = "";
-    private String componentListLabel = "Components:";  // TODO: Externalize String
-    private Text textFilter;
-    protected TreeViewer componentTreeViewer;
-    private org.eclipse.swt.widgets.List qualifierList;
-    
-    protected Object componentSelection;
-    protected Object qualifierTextSelection;
-
-    public ComponentSelectionDialog(Shell shell, String dialogTitle, IComponentSelectionProvider provider) {
-        super(shell);
-        setShellStyle(getShellStyle() | SWT.RESIZE);
-        this.dialogTitle = dialogTitle;
-        this.provider = provider;
-        
-        componentTreeViewerInput = new ArrayList();
-        masterComponentList = new ArrayList();
-    }
-
-    /*
-     * This method should be called before createDialogArea(Composite)
-     */
-    public void setComponentTreeLabel(String string) {
-        componentListLabel = string;
-    }
-
-    /*
-     * This method should be called before createDialogArea(Composite)
-     */
-    public void setFilterLabel(String string) {
-        filterTextLabel = string;
-    }
-    
-    public void create() {
-        super.create();
-        setTextFilterFocus();
-    }
-    
-    protected void setTextFilterFocus() {
-        textFilter.setFocus();        
-    }
-
-    public Control createDialogArea(Composite parent) {
-        getShell().setText(dialogTitle);
-
-        Composite mainComposite = (Composite) super.createDialogArea(parent);
-        GridData gData = (GridData) mainComposite.getLayoutData();
-        gData.heightHint = 500;
-        gData.widthHint = 400;
-
-        // Subclasses may use this Composite to add desired widgets
-        //topComposite = new Composite(mainComposite, SWT.NONE);
-        //topComposite.setLayoutData(new GridData());
-        //topComposite.setLayout(new GridLayout());
-        
-        // do we need to introduce a method here to contain this
-        // so we can add different parent other than 'topComposite'
-        Composite filterLabelAndTree = new Composite(mainComposite, SWT.NONE);
-        GridData gd = new GridData(GridData.FILL_BOTH);
-        GridLayout layout = new GridLayout();
-        layout.marginWidth = 0;
-        filterLabelAndTree.setLayoutData(new GridData(GridData.FILL_BOTH));
-        filterLabelAndTree.setLayout(layout);
-
-        // Create Text textFilter
-        Label filterLabel = new Label(filterLabelAndTree, SWT.NONE);
-        filterLabel.setText(filterTextLabel);// + "(? = any character, * = any string):"); // TODO: Externalize String
-
-        textFilter = new Text(filterLabelAndTree, SWT.SINGLE | SWT.BORDER);
-        textFilter.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));        
-        textFilter.addModifyListener(new TextFilterModifyAdapter());
-        GridData textFilterData = new GridData();
-        textFilterData.horizontalAlignment = GridData.FILL;
-        textFilterData.grabExcessHorizontalSpace = true;
-        textFilter.setLayoutData(textFilterData);
-
-        //textFilter.setSelection(0);
-        //textFilter.setf
-        
-        
-        // Create Component TreeViewer
-        createComponentTreeViewer(filterLabelAndTree);
-
-        // Create Qualifier List widget
-        Label qualifierLabel = new Label(mainComposite, SWT.NONE);
-        qualifierLabel.setText("Qualifier:");                       // TODO: Externalize String
-
-        qualifierList = new org.eclipse.swt.widgets.List(mainComposite, SWT.BORDER | SWT.SINGLE);
-        GridData data = new GridData();
-        data.horizontalAlignment = GridData.FILL;
-        data.grabExcessHorizontalSpace = true;
-        data.heightHint = 45;
-        qualifierList.setLayoutData(data);
-                
-        bottomComposite = new Composite(mainComposite, SWT.NONE);
-        bottomComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        bottomComposite.setLayout(new GridLayout());
-
-        // Populate the Component TreeViewer via the provider
-        // TODO: Is this the right way to set/get the ContentProvider?
-        componentTreeViewer.setContentProvider(new ComponentTreeContentProvider());
-        componentTreeViewer.setLabelProvider(provider.getLabelProvider());
-        componentTreeViewer.setSorter(new ViewerSorter());
-        componentTreeViewer.setInput(componentTreeViewerInput);
-        
-        populateMasterComponentList();
-        refreshTreeViewer("");
-
-        return mainComposite;
-    }
-
-    protected TreeViewer createTreeViewer(Composite comp, String title) {
-        Label label = new Label(comp, SWT.NONE);
-        label.setText(title);
-
-        TreeViewer treeViewer = new TreeViewer(new Tree(comp, SWT.SINGLE | SWT.BORDER));
-        Control treeWidget = treeViewer.getTree();
-        GridData gd = new GridData(GridData.FILL_BOTH);
-        treeWidget.setLayoutData(gd);
-
-        return treeViewer;
-    }
-    
-    /*
-     * Creates the Component TreeViewer.
-     */
-    private void createComponentTreeViewer(Composite base) {
-        componentTreeViewer = createTreeViewer(base, componentListLabel);    
-        
-        componentTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
-            public void selectionChanged(SelectionChangedEvent event) {
-                IStructuredSelection structuredSelection = (IStructuredSelection) event.getSelection();
-                List qualifiers = provider.getQualifiers(structuredSelection.getFirstElement());
-                updateQualifierList(qualifiers);
-                updateCanFinish();
-            }
-        });
-    }
-    
-    private void updateQualifierList(List qualifiers) {
-        qualifierList.removeAll();
-        Iterator it = qualifiers.iterator();
-        while (it.hasNext()) {
-            qualifierList.add(it.next().toString());
-        }
-    }
-    
-    
-    /*
-     * Returns the processed filter text for the Text field.  Inserts a "."
-     * before each supported meta-character.
-     */
-    protected String getProcessedFilterString() {
-        return processFilterString(textFilter.getText());
-    }
-
-    /*
-     * If supported metacharacters are used in the filter string, we need to
-     * insert a "." before each metacharacter.
-     */
-    private String processFilterString(String inputString) {
-        if (!(inputString.equals(""))) {
-            inputString = insertString("*", ".", inputString);
-            inputString = insertString("?", ".", inputString);
-            inputString = inputString + ".*";
-        } else {
-            inputString = ".*";
-        }
-
-        return inputString.toLowerCase();
-    }
-    
-    /*
-     * Helper method to insert a "." before each metacharacter in the
-     * search/filter string.
-     */
-    private String insertString(String target, String newString, String string) {
-        ArrayList list = new ArrayList();
-        StringBuffer stringBuffer = new StringBuffer(string);
-
-        int index = stringBuffer.indexOf(target);
-        while (index != -1) {
-            stringBuffer = stringBuffer.insert(index, newString);
-            index = stringBuffer.indexOf(target, index + newString.length() + target.length());
-        }
-
-        return stringBuffer.toString();
-    }
-
-    /*
-     * Listens to changes made in the text filter widget
-     */
-    private class TextFilterModifyAdapter implements ModifyListener {
-        public void modifyText(ModifyEvent e) {
-            if (e.widget == textFilter) {
-                if (delayedEvent != null) {
-                    delayedEvent.CANCEL = true;
-                }
-
-                delayedEvent = new DelayedEvent();
-                Display.getCurrent().timerExec(400, delayedEvent);
-            }
-        }
-    }
-
-    //TODO... do we really need one instance?
-    private DelayedEvent delayedEvent;
-
-    /*
-     * Update the component TreeViewer when the text filter is modified.
-     * Use a DelayedEvent so we don't update on every keystroke.
-     */
-    private class DelayedEvent implements Runnable {
-        public boolean CANCEL = false;
-
-        public void run() {
-            if (!CANCEL) {
-                refreshTreeViewer(getProcessedFilterString());
-                
-                // Select first match
-                if (componentTreeViewer.getTree().getItemCount() > 0) {
-                    TreeItem item = componentTreeViewer.getTree().getItems()[0];
-                    TreeItem items[] = new TreeItem[1];
-                    items[0] = item;
-                    componentTreeViewer.getTree().setSelection(items);
-                }
-                
-                // Update qualifierList
-                IStructuredSelection structuredSelection = (IStructuredSelection) componentTreeViewer.getSelection();
-                List qualifiers = provider.getQualifiers(structuredSelection.getFirstElement());
-                updateQualifierList(qualifiers);
-                
-                updateCanFinish();
-            }
-        }
-    }
-
-    class ComponentList implements IComponentList {
-        private Vector objectVector = new Vector();
-        private long currentChangeCounter = 0;
-        
-        public void addComponent(Object o) {
-            objectVector.add(o);
-            currentChangeCounter++;
-            doViewerUpdate();
-        }
-        
-        private void doViewerUpdate() {
-            // TODO: Investigate if we should also add a timer condition??
-            if (currentChangeCounter == 10) {
-                currentChangeCounter = 0;
-                fireUpdateList(this);
-            }
-        }
-
-        public int size() {
-            return objectVector.size();
-        }
-        
-        public List subList(int startIndex, int endIndex) {
-            return objectVector.subList(startIndex, endIndex);
-        }
-        
-        public Iterator iterator() {
-            return objectVector.iterator();
-        }
-    }
-
-    
-    // this method gets called from a non-ui thread so needs to call
-    // asyncExec to ensure the UI updates happen on the UI thread
-    //
-    protected void fireUpdateList(final ComponentList list) {    
-        Runnable runnable = new Runnable() {
-            public void run(){
-                // add new objects
-                int growingListSize = list.size();
-                int currentSize = masterComponentList.size();
-                if (growingListSize > currentSize) {
-                    masterComponentList.addAll(list.subList(currentSize, growingListSize));
-                }
-
-                refreshTreeViewer(getProcessedFilterString());
-            }
-        };
-        display.asyncExec(runnable);        
-    }
-
-    
-    /*
-     * Populate the Component TreeViewer with items.
-     */
-    protected void populateMasterComponentList() {
-        masterComponentList.clear();
-        ILabelProvider labelProvider = provider.getLabelProvider();
-        
-        final ComponentList componentList = new ComponentList();
-        provider.getComponents(componentList, true);
-        
-        Job job = new Job("read components") {
-          protected IStatus run(IProgressMonitor monitor) {
-            try {
-              // this stuff gets executed on a non-UI thread
-              //
-              provider.getComponents(componentList, false);
-              
-              // Do a final update of our Input for the component tree viewer.
-              fireUpdateList(componentList);
-            }
-            catch (Exception e) {
-            }
-            return Status.OK_STATUS;
-          }          
-        };
-        job.schedule();
-    }
-    
-    protected void refreshTreeViewer(String filterText) {
-        componentTreeViewerInput.clear();
-        ILabelProvider labelProvider = provider.getLabelProvider();
-        Pattern regex = Pattern.compile(filterText);
-        Iterator it = masterComponentList.iterator();
-        while (it.hasNext()) {
-            Object item = it.next();
-            String itemString = labelProvider.getText(item);           
-            Matcher m = regex.matcher(itemString.toLowerCase());
-            if (itemString.toLowerCase().startsWith(filterText) || m.matches()) {
-                componentTreeViewerInput.add(item);
-            }
-        }
-        
-        componentTreeViewer.refresh();
-    }
-    
-    /*
-     * If there is a selection in the ComponentTreeViewer, enable OK
-     */
-    protected void updateCanFinish() {
-        IStructuredSelection selection = (IStructuredSelection) componentTreeViewer.getSelection();
-        if (selection.getFirstElement() != null) {
-            getButton(IDialogConstants.OK_ID).setEnabled(true);
-        }
-        else {
-            getButton(IDialogConstants.OK_ID).setEnabled(false);
-        }
-    }
-    
-    protected void okPressed() {
-        IStructuredSelection selection = (IStructuredSelection) componentTreeViewer.getSelection();
-        componentSelection = selection.getFirstElement();
-        int qualifierIndex = qualifierList.getSelectionIndex();
-        if (qualifierIndex < 0) {
-            qualifierIndex = 0;
-        }
-        qualifierTextSelection = qualifierList.getItem(qualifierIndex);
-        
-        super.okPressed();
-    }
-    
-    private class ComponentTreeContentProvider implements ITreeContentProvider {
-        public Object[] getChildren(Object parentElement) {
-            if (parentElement instanceof List) {
-                return ((List) parentElement).toArray();
-            }
-            return new Object[0];
-        }
-        
-        public Object[] getElements(Object inputElement) {
-            return getChildren(inputElement);
-        }
-        
-        public Object getParent(Object element) {
-            return null;
-        }
-        
-        public boolean hasChildren(Object element) {
-            if (getChildren(element).length > 0) {
-                return true;
-            }
-            return false;
-        }
-        
-        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-        }
-        
-        public void dispose() {
-        }
-    }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/IComponentList.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/IComponentList.java
deleted file mode 100644
index 5c5d46a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/IComponentList.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.common;
-
-import java.util.Iterator;
-
-public interface IComponentList {
-   public void addComponent(Object o);
-   public Iterator iterator();
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/IComponentSelectionProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/IComponentSelectionProvider.java
deleted file mode 100644
index de68271..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/common/IComponentSelectionProvider.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.common;
-
-import java.util.List;
-
-import org.eclipse.jface.viewers.ILabelProvider;
-
-public interface IComponentSelectionProvider {
-    
-    // warning ... this will get called on a non UI thread
-    void getComponents(IComponentList list, boolean quick);
-    
-	String getType(Object component);
-	ILabelProvider getLabelProvider();
-	List getQualifiers(Object component);
-	String getNameFieldTitle();
-	String getListTitle();
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/ResourceView.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/ResourceView.java
deleted file mode 100644
index 2a61449..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/ResourceView.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xml;
-
-public class ResourceView {
-/*
-	Label scopeComboLabel = new Label(topComposite, SWT.NONE);
-	scopeComboLabel.setText(searchScopeComboLabel);
-	scopeCombo = new Combo(topComposite, SWT.NONE);
-	initializeSearchScopeCombo();
-	
-	sashForm = new SashForm(topComposite,  SWT.VERTICAL);
-	GridData sashGD = new GridData(GridData.FILL_BOTH);
-	sashGD.grabExcessHorizontalSpace = true;
-	sashGD.grabExcessVerticalSpace = true;
-	sashForm.setLayoutData(new GridData(GridData.FILL_BOTH));
-	sashForm.setLayout(new GridLayout());
-	
-				int[] sashFormWeights = new int[2];
-			sashFormWeights[0] = 0;
-			sashFormWeights[1] = 7;
-			sashForm.setWeights(sashFormWeights);
-	
-	// Create PageBook for High Level TreeViewer
-			highLevelPageBook = new PageBook(sashForm, SWT.NONE);
-			GridData fileSystemPBData = new GridData();
-			fileSystemPBData.horizontalAlignment = SWT.FILL;
-			highLevelPageBook.setLayoutData(fileSystemPBData);
-			
-			blankHighLevelComposite = new Composite(highLevelPageBook, SWT.NONE);
-			highLevelComposite = new Composite(highLevelPageBook, SWT.NONE);
-			GridLayout fileSystemLayout = new GridLayout();
-			fileSystemLayout.marginWidth = 0;
-			highLevelComposite.setLayout(fileSystemLayout);
-			highLevelComposite.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-			createHighLevelTreeViewer(highLevelComposite);
-			populateHighLevelTreeViewer();
-			
-			highLevelPageBook.showPage(blankHighLevelComposite);
-//////////////////////////////////////////////////////////////////////////////	//
-			
-		/*
-		 * Creates the High Level TreeViewer (Top TreeViewer).
-		 *
-		private void createHighLevelTreeViewer(Composite base) {
-			highLevelTreeViewer = createTreeViewer(highLevelComposite, "Resources");
-			initializeHighLevelTreeViewer();
-			String ext[] = new String[1];
-			ext[0] = "xsd";
-			addFilterExtensions(highLevelTreeViewer, ext, new IFile[0]); 
-			
-			initializeHighLevelTreeViewer();
-			populateHighLevelTreeViewer();
-		}
-        
-        
-          protected void showHighLevelView(boolean show) {
-        if (show) {
-            int[] sashFormWeights = new int[2];
-            sashFormWeights[0] = 4;
-            sashFormWeights[1] = 5;
-            sashForm.setWeights(sashFormWeights);
-
-            highLevelPageBook.showPage(highLevelComposite);
-            topComposite.layout(true, true);
-
-            showHighLevelView();
-        } else {
-            int[] sashFormWeights = new int[2];
-            sashFormWeights[0] = 0;
-            sashFormWeights[1] = 7;
-            sashForm.setWeights(sashFormWeights);
-
-            highLevelPageBook.showPage(blankHighLevelComposite);
-            topComposite.layout(true, true);
-
-            hideHighLevelView();
-        }
-    }
-    
-    protected void setFilter(TreeViewer treeViewer, ViewerFilter filter) {
-        treeViewer.getTree().setRedraw(false);
-        treeViewer.resetFilters();
-        treeViewer.addFilter(filter);
-        treeViewer.getTree().setRedraw(true);
-        treeViewer.getTree().redraw();
-    }
-    
-  // ///////////////////////////////////////////////////
-    // This is a convenience method that allows filtering of the given file
-    // exensions. It internally creates a ResourceFilter so that users of this
-    // class don't have to construct one.
-    // If the extensions provided don't have '.', one will be added.
-    protected void addFilterExtensions(TreeViewer treeViewer, String[] filterExtensions, IFile[] excludedFiles) {
-        // First add the '.' to the filterExtensions if they don't already have
-        // one
-        String[] correctedFilterExtensions = new String[filterExtensions.length];
-        for (int i = 0; i < filterExtensions.length; i++) {
-            // If the extension doesn't start with a '.', then add one.
-            if (filterExtensions[i].startsWith(".")) {
-                correctedFilterExtensions[i] = filterExtensions[i];
-            } else {
-                correctedFilterExtensions[i] = "." + filterExtensions[i];
-            }
-        }
-        ViewerFilter filter;
-        if (excludedFiles != null) {
-            filter = new SetTypeResourceFilter(correctedFilterExtensions, excludedFiles, null);
-        } else {
-            filter = new SetTypeResourceFilter(correctedFilterExtensions, null);
-        }
-        setFilter(treeViewer, filter);
-    }    
-    
-    
-  
-     * Creates a Generic TreeViewer object with the specified label and sets
-     * it's GridData value.
-  
-    protected TreeViewer createTreeViewer(Composite comp, String title) {
-        Label label = new Label(comp, SWT.NONE);
-        label.setText(title);
-
-        TreeViewer treeViewer = new TreeViewer(new Tree(comp, SWT.SINGLE | SWT.BORDER));
-        Control treeWidget = treeViewer.getTree();
-        GridData gd = new GridData(GridData.FILL_BOTH);
-        treeWidget.setLayoutData(gd);
-
-        return treeViewer;
-    }
-*/		
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentFinder.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentFinder.java
deleted file mode 100644
index 465d2c2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentFinder.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xml;
-
-import java.util.ArrayList;
-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.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-
-/**
- * this thing parsers xml artifacts and picks out the specified components attributes
- * 
- */
-public class XMLComponentFinder {
-    public static final int ENCLOSING_PROJECT_SCOPE = 0;
-    public static final int ENTIRE_WORKSPACE_SCOPE = 1;
-
-    protected IFile currentIFile;
-	protected List validExtensions;			// List of extensions as String objects
-	protected List excludeFiles;			// List of files (full path) as String objects
-
-	public XMLComponentFinder() {
-		validExtensions = new ArrayList();
-		excludeFiles = new ArrayList();
-	}
-    
-    /*
-     * Takes in the IFile we are currently editing.
-     * The currentIFile must be set before the getEnclosingProjectFiles()
-     * method will return correctly.
-     */
-    public void setFile(IFile file) {
-        currentIFile = file;
-    }
-    
-    public void setValidExtensions(List newExtensions) {
-        validExtensions.clear();
-        validExtensions.addAll(newExtensions);
-    }
-
-    public void addExcludeFiles(List newExclude) {
-        excludeFiles.addAll(newExclude);
-    }
-    
-/*    
-     private String getNormalizedLocation(String location) {
-        try {
-            URL url = new URL(location);
-            URL resolvedURL = Platform.resolve(url);
-            location = resolvedURL.getPath();
-        }
-        catch (Exception e) {
-            e.printStackTrace();
-        }
-
-        return location;
-    }
-  */   
-
-    /*
-     * Returns a List of absolute file locations. For example
-     * "D:\files\....\file.xsd"
-     */
-    protected List getEnclosingProjectFiles() {
-        List files = new ArrayList();
-        
-        if (currentIFile != null) {
-            IWorkspaceRoot iwr = ResourcesPlugin.getWorkspace().getRoot();
-            IProject project = currentIFile.getProject();
-            try {
-                traverseIContainer(project, validExtensions, excludeFiles, files);
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-        
-        return files;
-    }
-
-    protected List getWorkspaceFiles() {
-        List files = new ArrayList();
-        IWorkspaceRoot iwr = ResourcesPlugin.getWorkspace().getRoot();
-        IProject[] projects = iwr.getProjects();
-
-        try {
-            for (int index = 0; index < projects.length; index++) {
-                traverseIContainer(projects[index], validExtensions, excludeFiles, files);
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-
-        return files;
-    }
-
-    /**
-     * Returns a List of absolute file locations. For example
-     * "D:\files\....\file.xsd"
-     */
-    protected void traverseIContainer(IContainer container, List extensions, List excludeFiles, List list) throws Exception {
-        IResource[] children = container.members();
-
-        for (int index = 0; index < children.length; index++) {
-            if (children[index] instanceof IFolder) {
-                traverseIContainer((IFolder) children[index], extensions, excludeFiles, list);
-            } else if (children[index] instanceof IFile) {
-                IFile file = (IFile) children[index];
-                String fileName = file.getLocation().toOSString();
-                String ext = file.getFileExtension();
-                if (extensions.contains(ext) && !excludeFiles.contains(fileName)) {
-                    list.add(file.getLocation());
-                }
-            }
-        }
-    }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSelectionDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSelectionDialog.java
deleted file mode 100644
index e19d96d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSelectionDialog.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xml;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.common.ComponentSelectionDialog;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.common.IComponentSelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSelectionProvider.XMLComponentTreeObject;
-
-public class XMLComponentSelectionDialog extends ComponentSelectionDialog {
-
-    protected final static String DEFAULT_NAME_FIELD_TITLE = "Component Name:";
-    protected final static String DEFAULT_LIST_TITLE = "Matching Components:";
-
-	public static final String SCOPE_SPECIFIED_FILE = "Specified File";
-
-	public static final String SCOPE_ENCLOSING_PROJECT = "Enclosing Project";
-
-	public static final String SCOPE_WORKSPACE = "Workspace";
-
-	public static final String SCOPE_CURRENT_RESOURCE = "Current Resource";
-
-	private String currentSearchScope = SCOPE_CURRENT_RESOURCE;
-
-	protected Button chooseButton;
-	protected Button[] radioButton = new Button[3];
-
-	public XMLComponentSelectionDialog(Shell shell, String dialogTitle,
-			IComponentSelectionProvider provider) {
-		super(shell, dialogTitle, provider);
-	}
-
-public Control createDialogArea(Composite parent) {
-
-        setFilterLabel(provider.getNameFieldTitle() != null ? provider.getNameFieldTitle() : DEFAULT_NAME_FIELD_TITLE);         
-        setComponentTreeLabel(provider.getListTitle() != null ? provider.getListTitle() : DEFAULT_LIST_TITLE);
-        super.createDialogArea(parent);
-        
-        // We use the Composite topComposite to create additional widgets
-        GridLayout layout = new GridLayout();
-        layout.marginWidth = 0;
-        bottomComposite.setLayout(layout);
-        
-        
-        Group group = new Group(bottomComposite, SWT.NONE);
-        GridLayout gridLayout = new GridLayout(3, false);
-        //gridLayout.marginWidth = 0;
-        //gridLayout.marginLeft = 2;
-        group.setLayout(gridLayout);
-        group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        group.setText("Search Scope");
-        
-        ScopeChangeListener scopeChangeListener = new ScopeChangeListener();
-        radioButton[0] = new Button(group, SWT.RADIO);       
-        radioButton[0].setText(SCOPE_WORKSPACE);
-        
-        radioButton[1] = new Button(group, SWT.RADIO);
-        radioButton[1].setText(SCOPE_ENCLOSING_PROJECT);
-        
-        radioButton[2] = new Button(group, SWT.RADIO);
-        radioButton[2].setText(SCOPE_CURRENT_RESOURCE);
-        
-        //radioButton[3] = new Button(group, SWT.RADIO);
-        //radioButton[3].setText("Resource Set");
-
-        
-        for (int i = 0; i < radioButton.length; i++)
-        {          	
-          if (radioButton[i].getText().equals(currentSearchScope))
-          {
-          	radioButton[i].setSelection(true);
-          }	
-          radioButton[i].addSelectionListener(scopeChangeListener);        	
-        }
-        if (false){
-        Composite selectFileGroup = new Composite(group, SWT.NONE);
-        GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-        gd.horizontalSpan = 2;
-        selectFileGroup.setLayoutData(gd);
-        GridLayout gridLayout3 = new GridLayout(2, false);       
-        gridLayout3.marginWidth = 0;    
-        gridLayout3.marginHeight = 0;
-        selectFileGroup.setLayout(gridLayout3);
-        Text t = new Text(selectFileGroup, SWT.BORDER | SWT.READ_ONLY);
-        t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        Button choose = new Button(selectFileGroup, SWT.NONE);
-        choose.setText("Choose...");
-        choose.addSelectionListener(scopeChangeListener);
-        }
-        
-        
-        Button check = new Button(group, SWT.CHECK);
-        check.setText("Use resource view to narrow search scope");
-        GridData gd = new GridData();
-        gd.horizontalSpan = 3;
-        check.setLayoutData(gd);
-        check.setEnabled(false);
-
-        return parent;
-    }	/*
-		  * Returns the selected search scope.
-		  */
-	public String getSearchScope() {
-		return currentSearchScope;
-	}
-
-	public XMLComponentSpecification getSelection() {
-		XMLComponentTreeObject treeObject = (XMLComponentTreeObject) componentSelection;
-		List specs = treeObject.getXMLComponentSpecification();
-
-		int matchingIndex = 0;
-		for (int index = 0; index < specs.size(); index++) {
-			XMLComponentSpecification spec = (XMLComponentSpecification) specs
-					.get(index);
-			IPath path = new Path(spec.getFileLocation());
-			String specText = spec.getTargetNamespace() + " - "
-					+ path.lastSegment();
-			if (specText.equals(qualifierTextSelection)) {
-				matchingIndex = index;
-				break;
-			}
-		}
-
-		return (XMLComponentSpecification) specs.get(matchingIndex);
-	}
-
-	private class ScopeChangeListener extends SelectionAdapter {
-		public void widgetSelected(SelectionEvent e) {
-
-			if (e.widget instanceof Button) {
-				Button b = (Button) e.widget;
-				if ((b.getStyle() & SWT.RADIO) != 0) {
-					currentSearchScope = b.getText();
-					populateMasterComponentList();
-					refreshTreeViewer(getProcessedFilterString());
-
-					// Select the first matching component. Though we should be
-					// smarter here
-					// and determine if there was a selection before the scope
-					// switch (and if
-					// the component is still available.
-					Tree tree = componentTreeViewer.getTree();
-					TreeItem items[] = tree.getItems();
-					if (items.length > 0) {
-						TreeItem select[] = new TreeItem[1];
-						select[0] = items[0];
-						tree.setSelection(select);
-					}
-
-					updateCanFinish();
-				}				
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSelectionProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSelectionProvider.java
deleted file mode 100644
index aef0a01..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSelectionProvider.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xml;
-
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.common.IComponentList;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.common.IComponentSelectionProvider;
-
-public abstract class XMLComponentSelectionProvider implements IComponentSelectionProvider {
-    public List getQualifiers(Object component) {
-        List qualifiers = new ArrayList();
-        if (component != null) {
-            XMLComponentTreeObject specification = (XMLComponentTreeObject) component;
-            Iterator it = specification.getXMLComponentSpecification().iterator();
-            while (it.hasNext()) {
-                XMLComponentSpecification spec = (XMLComponentSpecification) it.next();
-                qualifiers.add(createQualifierText(spec));
-            }
-        }
-        
-        return qualifiers;
-    }
-    
-    protected String createQualifierText(XMLComponentSpecification spec) {
-        IPath path = new Path(spec.getFileLocation());
-        return spec.getTargetNamespace() + " - " + path.lastSegment();        
-    }
-    
-    protected void addDataItemToTreeNode(IComponentList comps, XMLComponentSpecification dataItem) {
-        boolean foundMatch = false;
-        Iterator it = comps.iterator();
-        XMLComponentTreeObject containingTreeObject = null;
-
-        while (it.hasNext()) {
-            XMLComponentTreeObject treeObject = (XMLComponentTreeObject) it.next();
-            if (treeObject.getName().equals(dataItem.getAttributeInfo("name"))) {
-                // If the existing data item and the new data item have the same names
-                if (treeObject.getXMLComponentSpecification().size() > 0) {
-                    String existingPath = ((XMLComponentSpecification) treeObject.getXMLComponentSpecification().get(0)).getTagPath();
-                    if (existingPath.equals(dataItem.getTagPath())) {
-                        // If they are the same 'type' of items (according to the path value)
-                        containingTreeObject = treeObject;
-                        foundMatch = true;
-                        break;
-                    }
-                }
-            }
-        }
-        
-        if (!foundMatch) {
-            containingTreeObject = new XMLComponentTreeObject(dataItem);
-            comps.addComponent(containingTreeObject);
-        }
-        else {
-            // Only add to the tree object if the qualifier text differs than existing
-            // qualifier information contained in the tree object.
-            Iterator existingQualifiers = getQualifiers(containingTreeObject).iterator();
-            boolean alreadyExists = false;
-            while (existingQualifiers.hasNext()) {
-                String existingText = (String) existingQualifiers.next();
-                String newItemText = createQualifierText(dataItem);
-                if (existingText.equals(newItemText)) {
-                    alreadyExists = true;
-                    break;
-                }
-            }
-            
-            if (!alreadyExists) {
-                containingTreeObject.addXMLComponentSpecification(dataItem);
-            }
-        }
-    }
-    
-    protected String getNormalizedLocation(String location) {
-        try {
-            URL url = new URL(location);
-            URL resolvedURL = Platform.resolve(url);
-            location = resolvedURL.getPath();
-        }
-        catch (Exception e) {
-            e.printStackTrace();
-        }
-
-        return location;
-    }
-
-    
-    /*
-     * Object used to hold components with the same name but different qualifiers.
-     * This object will contain a list of XMLComponentSpecifications (with the same
-     * names but different qualifiers).
-     */
-    public class XMLComponentTreeObject {
-        private String name;
-        private List xmlComponentSpecifications;
-        
-        public XMLComponentTreeObject(XMLComponentSpecification spec) {
-            xmlComponentSpecifications = new ArrayList();
-            xmlComponentSpecifications.add(spec);
-            name = (String) spec.getAttributeInfo("name");
-        }
-        
-        public String getName() {
-            return name;
-        }
-        
-        public void addXMLComponentSpecification(XMLComponentSpecification spec) {
-            xmlComponentSpecifications.add(spec);
-        }
-        
-        public List getXMLComponentSpecification() {
-            return xmlComponentSpecifications;
-        }
-    }
-
-    /*
-     * Used to provide labels to the ComponentSeletionDialog
-     */
-    public class XMLComponentSelectionLabelProvider extends LabelProvider {
-        public String getText(Object element) {
-            XMLComponentTreeObject specification = (XMLComponentTreeObject) element;
-            return specification.getName();
-        }        
-    }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSpecification.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSpecification.java
deleted file mode 100644
index 04c2546..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLComponentSpecification.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xml;
-
-import java.util.Hashtable;
-
-/*
- * Simple class which keeps track of attribute information.
- * This class is basically a Hashtable with convenience methods.
- */
-public class XMLComponentSpecification {
-    String tagPath;
-    Hashtable hashtable;
-    String targetNamespace;
-    String fileLocation;
-    
-    public XMLComponentSpecification(String path) {
-        this.tagPath = path;
-        hashtable = new Hashtable();
-    }
-    
-    public void addAttributeInfo(Object attribute, Object value) {
-        hashtable.put(attribute, value);
-    }
-    
-    public Object getAttributeInfo(Object attribute) {
-        return hashtable.get(attribute);
-    }
-    
-    public String getTagPath() {
-        return tagPath;
-    }
-    
-    public String getTargetNamespace() {
-        return targetNamespace;
-    }
-    
-    public void setTargetNamespace(String tns) {
-        targetNamespace = tns;
-    }
-    
-    public String getFileLocation() {
-        return fileLocation;
-    }
-    
-    public void setFileLocation(String location) {
-        fileLocation = location;
-    }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLQuickScan.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLQuickScan.java
deleted file mode 100644
index c7efef2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xml/XMLQuickScan.java
+++ /dev/null
@@ -1,144 +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.xsd.ui.internal.dialogs.types.xml;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.transform.TransformerFactory;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.xml.sax.Attributes;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.XMLReader;
-import org.xml.sax.helpers.DefaultHandler;
-
-/**
- *
- */
-public class XMLQuickScan {
-  
-	/*
-	 * Returns information about matches encountered
-     * based on the criteria provided. 
-	 */
-  public static List getTagInfo(String fullFilePath, List paths, List attributes) {
-    XSDGlobalElementTypeContentHandler handler = new XSDGlobalElementTypeContentHandler();
-    handler.stringTagPaths = paths;
-    handler.searchAttributes = attributes;
-    handler.fileLocation = fullFilePath;
-
-    ClassLoader prevClassLoader = Thread.currentThread().getContextClassLoader();
-    
-    try {
-        IPath path = new Path(fullFilePath);
-    	FileInputStream inputStream = new FileInputStream(new File(path.toOSString()));
-    	
-        
-//      SAXParser  sparser = SAXParserFactory.newInstance().newSAXParser();
-//      XMLReader reader = sparser.getXMLReader();
-        
-        // Line below is a hack to get XMLReader working
-        Thread.currentThread().setContextClassLoader(XMLQuickScan.class.getClassLoader());
-        TransformerFactory transformerFactory = TransformerFactory.newInstance();
-        
-    	XMLReader reader = org.xml.sax.helpers.XMLReaderFactory.createXMLReader();
-    	reader.setContentHandler(handler);
-    	reader.parse(new InputSource(inputStream));
-    }
-    catch (Exception e) {
-    	e.printStackTrace();
-    }
-    finally {
-      Thread.currentThread().setContextClassLoader(prevClassLoader);
-    }
-    return handler.getSearchAttributeValues();
-  }
-  
-  public static class XSDGlobalElementTypeContentHandler extends DefaultHandler {
-  	protected List stringTagPaths;
-  	protected List searchAttributes;
-  	private List matchingTags = new ArrayList();
-  	private String targetNamespace = "";
-  	private String fileLocation;
-
-  	StringBuffer currentPath = new StringBuffer();
-  	
-    public void startElement(String uri, String localName, String qName, Attributes attributes)  throws SAXException {
-    	currentPath.append("/" + localName);
-    	
-    	// Search for targetNamespace if we haven't encountered it yet.
-    	if (targetNamespace.equals("")) {
-	        int nAttributes = attributes.getLength();
-	        for (int i = 0; i < nAttributes; i++)
-	        {
-	          if (attributes.getLocalName(i).equals("targetNamespace"))
-	          {
-	            targetNamespace = attributes.getValue(i);
-	            break;
-	          }
-	        }
-    	}
-    	
-    	// Search for the path
-    	for (int index = 0; index < stringTagPaths.size(); index++) {
-    		String path = (String) stringTagPaths.get(index);
-    		if (currentPath.length() == path.length() && currentPath.toString().equals(path)) {
-    			// Found a path match
-    			createTagInfo(attributes, (String[]) searchAttributes.get(index));
-    		}
-    	}
-    }
-    
-    public void endElement(String uri, String localName, String qName) throws SAXException {
-    	int slashIndex = currentPath.lastIndexOf("/");
-    	currentPath.delete(slashIndex, currentPath.length());
-    }
-    
-    /*
-     * Information about a tag is stored in a TagInfo class.
-     */
-    private void createTagInfo(Attributes attributes, String[] attributesToSearch) {
-    	XMLComponentSpecification spec = new XMLComponentSpecification(currentPath.toString());
-    	
-//    	tagInfo.addAttributeInfo("name", attributes.getValue("name"));
-    	for (int index = 0; index < attributesToSearch.length; index++) {
-    		String attrString = (String) attributesToSearch[index];
-    		String value = attributes.getValue(attrString);
-    		if (value != null) {
-    			spec.addAttributeInfo(attrString, value);
-    		}
-    	}
-    	spec.setTargetNamespace(targetNamespace);
-    	spec.setFileLocation(fileLocation);
-    	matchingTags.add(spec);
-    }
-    
-    private int getAttributeNameIndex(String attrName) {
-    	for (int index = 0; index < searchAttributes.size(); index++) {
-    		if (searchAttributes.get(index).equals(attrName)) {
-    			return index;
-    		}
-    	}
-    	
-    	// Not found.  We are not looking for this Attribute Name
-    	return -1;
-    }
-        
-    public List getSearchAttributeValues() {
-    	return matchingTags;
-    }
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentFinder.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentFinder.java
deleted file mode 100644
index 7f9fc7d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentFinder.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xsd;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentFinder;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLQuickScan;
-
-public class XSDComponentFinder extends XMLComponentFinder {    
-    public XSDComponentFinder() {
-        validExtensions.add("xsd");
-    }
-    
-    public List getWorkbenchResourceComponents(int scope) {
-        List components = new ArrayList();
-        List filePaths = new ArrayList();
-        
-        // We don't want to search through the current file we're working on.
-        if (currentIFile != null) {
-            excludeFiles.add(currentIFile.getLocation().toOSString());
-        }
-        
-        // Find files matching the search criteria specified in List extensions and
-        // List excludeFiles.
-        switch (scope) {
-        case ENCLOSING_PROJECT_SCOPE:
-            filePaths = getEnclosingProjectFiles();
-            break;
-            
-        case ENTIRE_WORKSPACE_SCOPE:
-            filePaths = getWorkspaceFiles();
-            break;
-            
-        default:            
-            break;
-        }
-        
-        // Search for the components in each of the files specified in the path.
-        List paths = new ArrayList();
-        paths.add("/schema/complexType");
-        paths.add("/schema/simpleType");
-        
-        List attributes = new ArrayList();
-        String[] nameAttr = new String[1];
-        nameAttr[0] = "name";
-        attributes.add(nameAttr);
-        attributes.add(nameAttr);
-
-        Iterator pathsIterator = filePaths.iterator();
-        while (pathsIterator.hasNext()) {
-//           String stringPath = ((Path) pathsIterator.next()).toOSString();
-           String stringPath = ((Path) pathsIterator.next()).toString();
-           components.addAll(XMLQuickScan.getTagInfo(stringPath, paths, attributes));
-        }
-        
-        return components;
-    }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentSelectionDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentSelectionDialog.java
deleted file mode 100644
index b66e13c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentSelectionDialog.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xsd;
-
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.common.IComponentSelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSelectionDialog;
-
-public class XSDComponentSelectionDialog extends XMLComponentSelectionDialog {
-
-	public static final int ELEMENT = 1;
-	public static final int TYPE = 2;
-	
-	public XSDComponentSelectionDialog(Shell shell, String dialogTitle,
-			IComponentSelectionProvider provider) {
-		super(shell, dialogTitle, provider);
-	}
-	
-	
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentSelectionProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentSelectionProvider.java
deleted file mode 100644
index 711744c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDComponentSelectionProvider.java
+++ /dev/null
@@ -1,346 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xsd;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.common.IComponentList;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentFinder;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSpecification;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDRedefine;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaContent;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.impl.XSDImportImpl;
-import org.eclipse.xsd.util.XSDConstants;
-
-/*
- *
- */
-public class XSDComponentSelectionProvider extends XMLComponentSelectionProvider {
-    private XSDComponentFinder xsdComponentFinder;
-    private XSDComponentSelectionDialog dialog;
-    private XSDSchema schema;
-    private XSDComponentLabelProvider labelProvider;
-    
-    private boolean showComplexTypes = true;
-    
-    /*
-     * Takes in the IFile we are currently editing.
-     */
-    public XSDComponentSelectionProvider(IFile file, XSDSchema schema) {
-        xsdComponentFinder = new XSDComponentFinder();
-        xsdComponentFinder.setFile(file);
-        this.schema = schema;
-        labelProvider = new XSDComponentLabelProvider();
-    }
-    
-    public void setDialog(XSDComponentSelectionDialog dialog) {
-        this.dialog = dialog;
-    }
-    
-    public void showComplexTypes(boolean show) {
-        showComplexTypes = show;
-    }
-    
-    public String getType(Object element) {
-        return null;
-    }
-        
-    /*
-     * The return value is a List of XMLComponentTreeObjects.
-     * 
-     */
-	public void getComponents(IComponentList list, boolean quick) {
-	    if (quick) {
-            // Populate IComponentList list with components most easily accessible (fastest)
-            // Grab Built-In types
-            Iterator builtInIt = getBuiltInTypes().iterator();
-            while (builtInIt.hasNext()) {
-                XMLComponentSpecification tagItem = (XMLComponentSpecification) builtInIt.next();
-                addDataItemToTreeNode(list, tagItem);
-            }
-            
-            // Create current Schema's complex and simple types
-            createComplexTypes(list);
-            createSimpleTypes(list);
-        }
-        else {
-            getComponents(list);
-        }
-	}
-    
-    /*
-     * TODO: Need to revisit how we build up our treeObject list.... 
-     * And it's somewhat messy, clean this up.
-     */
-    private void getComponents(IComponentList list) {
-        List extensions = new ArrayList();
-        extensions.add("xsd");
-        
-        String scope = "";
-        if (dialog != null) {
-            scope = dialog.getSearchScope();
-        }
-        
-        List comps = new ArrayList();
-        if (scope.equals(XSDComponentSelectionDialog.SCOPE_ENCLOSING_PROJECT)) {
-            comps = xsdComponentFinder.getWorkbenchResourceComponents(XMLComponentFinder.ENCLOSING_PROJECT_SCOPE);
-        }
-        else if (scope.equals(XSDComponentSelectionDialog.SCOPE_WORKSPACE)) {
-            comps = xsdComponentFinder.getWorkbenchResourceComponents(XMLComponentFinder.ENTIRE_WORKSPACE_SCOPE);            
-        }
-        
-//      Group same item types together (simple/complex)
-        List complex = new ArrayList();
-        List simple = new ArrayList();
-        Iterator itemsIterator = comps.iterator();
-        while (itemsIterator.hasNext()) {
-            XMLComponentSpecification tagItem = (XMLComponentSpecification) itemsIterator.next();
-            if (tagItem.getTagPath().equals("/schema/complexType")) {
-                complex.add(tagItem);
-            }               
-            else if (tagItem.getTagPath().equals("/schema/simpleType")) {
-                simple.add(tagItem);
-            }
-        }
-        
-        Iterator complexIt = complex.iterator();
-        Iterator simpleIt = simple.iterator();
-        if (showComplexTypes) {
-            while (complexIt.hasNext()) {
-                XMLComponentSpecification item = (XMLComponentSpecification) complexIt.next();
-                addDataItemToTreeNode(list, item);
-            }
-        }
-        
-        while (simpleIt.hasNext()) {
-            XMLComponentSpecification item = (XMLComponentSpecification) simpleIt.next();
-            addDataItemToTreeNode(list, item);
-        }
-        
-        // Create from imports, includes, and redefines
-        createFromImport(list);
-        createFromInclude(list);
-        createFromRedefine(list);
-    }
-    
-////////////////////////////////////////////////////////////////////////////////    
-    private List getBuiltInTypes() {        
-        List items = new ArrayList();
-        for (int i = 0; i < XSDDOMHelper.dataType.length; i++) {
-          items.add(XSDDOMHelper.dataType[i][0]);
-        }
-        Iterator it = items.iterator();
-        
-        List builtInComponentSpecs = new ArrayList();
-        while (it.hasNext()) {
-            Object item = it.next();
-            String itemString = item.toString();
-            
-            XMLComponentSpecification builtInTypeItem = new XMLComponentSpecification("BUILT_IN_SIMPLE_TYPE");
-            builtInTypeItem.addAttributeInfo("name", itemString);
-            builtInTypeItem.setTargetNamespace(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001);
-//            String normalizedFile = getNormalizedLocation(schema.getSchemaLocation());
-//            builtInTypeItem.setFileLocation(normalizedFile);
-            builtInTypeItem.setFileLocation("Built-In");
-            
-            builtInComponentSpecs.add(builtInTypeItem);
-        }
-        
-        return builtInComponentSpecs;
-    }
-
-    private void createComplexTypes(IComponentList treeObjectList) {
-        TypesHelper typesHelper = new TypesHelper(schema);
-        List complexTypes = typesHelper.getUserComplexTypes();
-        createComplexSimpleTreeObject(treeObjectList, complexTypes, true);
-    }
-    
-    private void createSimpleTypes(IComponentList treeObjectList) {
-        TypesHelper typesHelper = new TypesHelper(schema);
-        List complexTypes = typesHelper.getUserSimpleTypes();
-        createComplexSimpleTreeObject(treeObjectList, complexTypes, true);
-    }
-
-    
-    private void createFromImport(IComponentList treeObjectList) {
-        Iterator imports = getXSDImports().iterator();
-        while (imports.hasNext()) {
-            XSDImport importItem = (XSDImport) imports.next();
-            if (importItem.getSchemaLocation() != null) {
-                ((XSDImportImpl) importItem).importSchema();
-                TypesHelper helper = new TypesHelper(importItem.getResolvedSchema());
-                
-                List types = helper.getUserComplexTypes();
-                types.addAll(helper.getUserSimpleTypes());
-                createComplexSimpleTreeObject(treeObjectList, types, false);
-            }
-        }
-    }
-    
-        private void createFromInclude(IComponentList treeObjectList) {
-        Iterator imports = getXSDIncludes().iterator();
-        while (imports.hasNext()) {
-            XSDInclude includeItem = (XSDInclude) imports.next();
-            if (includeItem.getSchemaLocation() != null) {
-                TypesHelper helper = new TypesHelper(includeItem.getResolvedSchema());  
-                
-                List types = helper.getUserComplexTypes();
-                types.addAll(helper.getUserSimpleTypes());
-                createComplexSimpleTreeObject(treeObjectList, types, false);
-            }
-        }
-    }
-    
-    private void createFromRedefine(IComponentList treeObjectList) {
-        Iterator redefines = getXSDRedefines().iterator();
-        while (redefines.hasNext()) {
-            XSDRedefine redefineItem = (XSDRedefine) redefines.next();
-            if (redefineItem.getSchemaLocation() != null) {
-                TypesHelper helper = new TypesHelper(redefineItem.getResolvedSchema());
-                
-                List types = helper.getUserComplexTypes();
-                types.addAll(helper.getUserSimpleTypes());
-                createComplexSimpleTreeObject(treeObjectList, types, false);
-            }
-        }
-    }
-    
-        protected List getXSDImports() {
-        List imports = new ArrayList();
-        
-        Iterator contents = schema.getContents().iterator();
-        while (contents.hasNext()) {
-            XSDSchemaContent content = (XSDSchemaContent) contents.next();
-            if (content instanceof XSDImport) {
-                imports.add(content);             
-            }
-        }
-        
-        return imports;
-    }
-    
-    protected List getXSDIncludes() {
-        List includes = new ArrayList();
-        
-        Iterator contents = schema.getContents().iterator();
-        while (contents.hasNext()) {
-            XSDSchemaContent content = (XSDSchemaContent) contents.next();
-            if (content instanceof XSDInclude) {
-                includes.add(content);            
-            }
-        }
-        
-        return includes;
-    }
-
-    protected List getXSDRedefines() {
-        List includes = new ArrayList();
-        
-        Iterator contents = schema.getContents().iterator();
-        while (contents.hasNext()) {
-            XSDSchemaContent content = (XSDSchemaContent) contents.next();
-            if (content instanceof XSDRedefine) {
-                includes.add(content);            
-            }
-        }
-        
-        return includes;
-    }
-
-    private void createComplexSimpleTreeObject(IComponentList treeObjectList, List complexTypes, boolean sameNS) {
-        boolean proceed = true;
-        
-        for (int i = 0; i < complexTypes.size(); i++) {
-            XSDNamedComponent item = (XSDNamedComponent) complexTypes.get(i); 
-        
-            if (sameNS) {
-                // We do this check because Types from Includes might show up.  However, we don't want to show them
-                String itemLocation = item.getSchema().getSchemaLocation();
-                String currentSchemaLocation = schema.getSchemaLocation();
-                if (itemLocation != null) {
-                    proceed = itemLocation.equals(currentSchemaLocation);
-                }
-                else {
-                    proceed = false;
-                }
-            }
-            
-            if (proceed) {
-                XMLComponentSpecification typeItem =  null;
-                if (showComplexTypes && item instanceof XSDComplexTypeDefinition) {
-                    typeItem = new XMLComponentSpecification("/schema/complexType");
-                    typeItem.addAttributeInfo("name", ((XSDComplexTypeDefinition) item).getName());
-                }
-                else if (item instanceof XSDSimpleTypeDefinition) {
-                    typeItem = new XMLComponentSpecification("/schema/simpleType");
-                    typeItem.addAttributeInfo("name", ((XSDSimpleTypeDefinition) item).getName());
-                }
-                
-                if (typeItem != null) {
-                    typeItem.setTargetNamespace(item.getTargetNamespace());
-                    String normalizedFile = getNormalizedLocation(schema.getSchemaLocation());
-                    typeItem.setFileLocation(normalizedFile);
-    
-                    addDataItemToTreeNode(treeObjectList, typeItem);
-                }
-            }
-        }
-    }
-
-    
-	public ILabelProvider getLabelProvider() {
-		return labelProvider;
-	}
-
-    
-    public class XSDComponentLabelProvider extends XMLComponentSelectionLabelProvider {
-        public Image getImage(Object element) {
-            XMLComponentTreeObject specification = (XMLComponentTreeObject) element;
-            XMLComponentSpecification spec = (XMLComponentSpecification) specification.getXMLComponentSpecification().get(0);
-            if (spec.getTagPath().equals("/schema/complexType")) {
-                return XSDEditorPlugin.getXSDImage("icons/XSDComplexType.gif");
-            }
-            else if (spec.getTagPath().equals("/schema/simpleType")) {
-                return XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif");
-            }
-            else if (spec.getTagPath().equals("BUILT_IN_SIMPLE_TYPE")) {
-                return XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif");
-            }
-    
-            return null;
-        }
-    }
-    
-    
-
-	public String getListTitle() {
-		return "Matching Types:";
-	}
-
-	public String getNameFieldTitle() {
-		return "Type Name:";
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDSetTypeHelper.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDSetTypeHelper.java
deleted file mode 100644
index fcb097d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dialogs/types/xsd/XSDSetTypeHelper.java
+++ /dev/null
@@ -1,376 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.xsd.ui.internal.dialogs.types.xsd;
-
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateElementAction;
-import org.eclipse.wst.xsd.ui.internal.actions.DOMAttribute;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSpecification;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.XSDExternalFileCleanup;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDRedefine;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaContent;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.util.XSDConstants;
-import org.eclipse.xsd.util.XSDParser;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class XSDSetTypeHelper {
-    private XSDSchema xsdSchema;
-    private IFile currentIFile;
-    
-    public XSDSetTypeHelper(IFile iFile, XSDSchema schema) {
-        currentIFile = iFile;
-        xsdSchema = schema;
-    }
-
-    public void setType(Element element, String property, XMLComponentSpecification spec) {
-        addImportIfNecessary(element, spec);        
-        String typeObject = getPrefixedTypeName(spec);
-        
-        // Get the previous type --> previousStringType
-        String previousStringType = "";
-        Attr attr = element.getAttributeNode(property);
-        if (attr != null) {
-            String value = attr.getValue();
-        }
-
-        if (!XSDDOMHelper.inputEquals(element, XSDConstants.UNION_ELEMENT_TAG, false))
-        {
-            if (spec != null && spec.getTagPath().equals("**anonymous**"))
-            {
-              if (spec.getTagPath().equals("ANONYMOUS_SIMPLE_TYPE"))
-              {
-                if (!previousStringType.equals("**anonymous**"))
-                {
-                  updateElementToAnonymous(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-                }
-              }
-              else
-              {
-                if (!previousStringType.equals("**anonymous**"))
-                {
-                  updateElementToAnonymous(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-                }
-              }
-              // element.removeAttribute(XSDConstants.TYPE_ATTRIBUTE);
-              element.removeAttribute(property);
-            }
-            else
-            {
-              XSDDOMHelper.updateElementToNotAnonymous(element);
-              //element.setAttribute(XSDConstants.TYPE_ATTRIBUTE, typeObject.toString());
-              element.setAttribute(property, typeObject.toString());
-            }
-        }
-    }
-    
-    public void addImportIfNecessary(Element element, XMLComponentSpecification spec) {
-        String typeObject = "";
-        
-        // Get the new type --> typeObject
-        if (spec != null) {
-            String itemType = spec.getTagPath();
-            typeObject = (String) spec.getAttributeInfo("name");
-            
-            if (!itemType.equals("BUILT_IN_SIMPLE_TYPE")) {
-                // Do an actual import if needed
-                XSDParser parser = new XSDParser();
-                parser.parse(spec.getFileLocation());
-                XSDSchema schema = parser.getSchema();
-                String tns = schema.getTargetNamespace();
-                
-                boolean exists = false;
-                // Check if the type is defined in the 'current' file itself.
-                String currentFile = getNormalizedLocation(xsdSchema.getSchemaLocation());
-                IPath currentFilePath = new Path(currentFile);
-                if (currentFilePath.equals(new Path(spec.getFileLocation()))) {
-                    exists = true;
-                }
-
-                if (!exists) {
-                    if (tns.equals(xsdSchema.getTargetNamespace())) {
-                        // Check if the schema is in a redefine/include
-                        List existingList = getXSDIncludes();
-                        existingList.addAll(getXSDRedefines());
-                        Iterator it = existingList.iterator();
-                        while (it.hasNext()) {
-                            XSDSchemaDirective existingSchema = (XSDSchemaDirective) it.next();
-                            String normalizedFile = getNormalizedLocation(existingSchema.getResolvedSchema().getSchemaLocation());
-                            String normalizedSpec = spec.getFileLocation();
-                            
-                            if (normalizedFile.equals(normalizedSpec)) {
-                                // Found and existing one
-                                exists = true;
-                            }
-                        }                        
-                    }
-                    else {
-                        // Check if the schema is in a import
-                        List existingList = getXSDImports();
-                        Iterator it = existingList.iterator();
-                        while (it.hasNext()) {
-                            XSDSchemaDirective existingSchema = (XSDSchemaDirective) it.next();
-                            String normalizedFile = getNormalizedLocation(existingSchema.getResolvedSchema().getSchemaLocation());
-                            String normalizedSpec = spec.getFileLocation();
-
-                            if (normalizedFile.equals(normalizedSpec)) {
-                                // Found and existing one
-                                exists = true;
-                            }
-                        }                        
-                    }
-                }
-                
-                if (!exists) {
-                    doImport(spec.getFileLocation(), schema);
-                }
-            }
-        }
-    }
-    
-    /*
-     * Return the prefixed type name for the type described by the given
-     * XMLComponentSpecification object.
-     * If the type described is a Built-in type, do not add the prefix
-     */
-    public String getPrefixedTypeName(XMLComponentSpecification spec) {
-        String typeObject = (String) spec.getAttributeInfo("name");
-        
-        TypesHelper typesHelper = new TypesHelper(xsdSchema); // ???? Is this correct?
-        List prefixedNames = typesHelper.getPrefixedNames(spec.getTargetNamespace(), typeObject);
-        if (prefixedNames.size() > 0) {
-            // Grab the first prefixed name
-            typeObject = (String) prefixedNames.get(0);
-        }
-
-        return typeObject;
-    }
-    
-    private void updateElementToAnonymous(Element element, String xsdType) {
-        String prefix = element.getPrefix();
-        prefix = (prefix == null) ? "" : (prefix + ":");
-        XSDDOMHelper.updateElementToNotAnonymous(element);
-        boolean hasChildrenElements = hasElementChildren(element);
-        Element childNode = null;
-        if (xsdType.equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG)) {
-            childNode = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-        }
-        else if (xsdType.equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG)) {
-            childNode = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-        }
-        
-        if (childNode != null) {
-            XSDDOMHelper helper = new XSDDOMHelper();
-            Node annotationNode = helper.getChildNode(element, XSDConstants.ANNOTATION_ELEMENT_TAG);
-            if (annotationNode == null) {
-                Node firstChild = element.getFirstChild();
-                element.insertBefore(childNode, firstChild);
-            } else {
-                Node nextSibling = annotationNode.getNextSibling();
-                element.insertBefore(childNode, nextSibling);
-            }
-            XSDDOMHelper.formatChild(childNode);
-        }
-    }
-
-    private boolean hasElementChildren(Node parentNode) {
-        boolean hasChildrenElements = false;
-        if (parentNode != null && parentNode.hasChildNodes()) {
-            NodeList nodes = parentNode.getChildNodes();
-            for (int i = 0; i < nodes.getLength(); i++) {
-                if (nodes.item(i) instanceof Element) {
-                    hasChildrenElements = true;
-                    break;
-                }
-            }
-        }
-        return hasChildrenElements;
-    }
-
-    // TODO: We shouldn't need to pass in IPath externalSchemaPath.
-    private void doImport(String externalSchemaPath, XSDSchema externalSchema) {
-        // Determine schemaLocation
-        String locationAttribute = URIHelper.getRelativeURI(externalSchemaPath, currentIFile.getLocation().toOSString());
-        
-        boolean isInclude = false;
-        if (externalSchema.getTargetNamespace().equals(xsdSchema.getTargetNamespace())) {
-            isInclude = true;
-        }
-        
-        if (externalSchema != null) { // In case we have problems loading the file.... we should display an error message.
-                Element newElement;
-                if (isInclude) {                
-                    List attributes = new ArrayList();
-                    attributes.add(new DOMAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, locationAttribute));
-                    newElement = createElement(XSDConstants.INCLUDE_ELEMENT_TAG, attributes);
-                }
-                else if (!isInclude) {
-                    List attributes = new ArrayList();
-                    attributes.add(new DOMAttribute(XSDConstants.NAMESPACE_ATTRIBUTE, externalSchema.getTargetNamespace()));
-                    attributes.add(new DOMAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, locationAttribute));
-                    newElement = createElement(XSDConstants.IMPORT_ELEMENT_TAG, attributes);
-                    handleImportNS(newElement, externalSchema);
-                }
-        }
-    }
-
-    private void handleImportNS(Element importElement, XSDSchema externalSchema) {
-        String namespace = externalSchema.getTargetNamespace();
-        if (namespace == null) namespace = "";
-
-        XSDImport xsdImport = (XSDImport) xsdSchema.getCorrespondingComponent(importElement);
-        xsdImport.setResolvedSchema(externalSchema);
-        
-        java.util.Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-        
-//        System.out.println("changed Import Map is " + map.values());
-//        System.out.println("changed import Map keys are " + map.keySet());
-
-        // Referential integrity on old import
-        // How can we be sure that if the newlocation is the same as the oldlocation
-        // the file hasn't changed
-        
-        XSDSchema referencedSchema = xsdImport.getResolvedSchema();
-        if (referencedSchema != null)
-        {
-          XSDExternalFileCleanup cleanHelper = new XSDExternalFileCleanup(referencedSchema);
-          cleanHelper.visitSchema(xsdSchema);
-        }
-
-        Element schemaElement = xsdSchema.getElement();
-
-        // update the xmlns in the schema element first, and then update the import element next
-        // so that the last change will be in the import element.  This keeps the selection
-        // on the import element
-        TypesHelper helper = new TypesHelper(externalSchema);
-        String prefix = helper.getPrefix(namespace, false);
-        
-        if (map.containsKey(prefix))
-        {
-          prefix = null;
-        }
-
-        if (prefix == null || (prefix !=null && prefix.length() == 0))
-        {
-          StringBuffer newPrefix = new StringBuffer("pref");  //$NON-NLS-1$
-          int prefixExtension = 1;
-          while (map.containsKey(newPrefix.toString()) && prefixExtension < 100)
-          {
-            newPrefix = new StringBuffer("pref" + String.valueOf(prefixExtension));
-            prefixExtension++;
-          }
-          prefix = newPrefix.toString();
-        }
-
-        if (namespace.length() > 0)
-        {
-          // if ns already in map, use its corresponding prefix
-          if (map.containsValue(namespace))
-          {
-            TypesHelper typesHelper = new TypesHelper(xsdSchema);
-            prefix = typesHelper.getPrefix(namespace, false);
-          }
-          else // otherwise add to the map
-          {
-            schemaElement.setAttribute("xmlns:"+prefix, namespace);
-          }
-        }
-
-
-//        System.out.println("changed Import Map is " + map.values());
-//        System.out.println("changed import Map keys are " + map.keySet());
-    }
-    
-    private Element createElement(String elementTag, List attributes) {
-        Node relativeNode = XSDDOMHelper.getNextElementNode(xsdSchema.getElement().getFirstChild());
-        
-        CreateElementAction action = new CreateElementAction("");
-        action.setElementTag(elementTag);
-        action.setAttributes(attributes);
-        action.setParentNode(xsdSchema.getElement());
-        action.setRelativeNode(relativeNode);
-        action.setXSDSchema(xsdSchema);
-        return action.createAndAddNewChildElement();
-    }
-
-    private String getNormalizedLocation(String location) {
-        try {
-            URL url = new URL(location);
-            URL resolvedURL = Platform.resolve(url);
-            location = resolvedURL.getPath();
-        }
-        catch (Exception e) {
-            e.printStackTrace();
-        }
-        
-        return location; 
-      }
-    
-    private List getXSDImports() {
-        List imports = new ArrayList();
-        
-        Iterator contents = xsdSchema.getContents().iterator();
-        while (contents.hasNext()) {
-            XSDSchemaContent content = (XSDSchemaContent) contents.next();
-            if (content instanceof XSDImport) {
-                imports.add(content);             
-            }
-        }
-        
-        return imports;
-    }
-    
-    private List getXSDIncludes() {
-        List includes = new ArrayList();
-        
-        Iterator contents = xsdSchema.getContents().iterator();
-        while (contents.hasNext()) {
-            XSDSchemaContent content = (XSDSchemaContent) contents.next();
-            if (content instanceof XSDInclude) {
-                includes.add(content);            
-            }
-        }
-        
-        return includes;
-    }
-
-    private List getXSDRedefines() {
-        List includes = new ArrayList();
-        
-        Iterator contents = xsdSchema.getContents().iterator();
-        while (contents.hasNext()) {
-            XSDSchemaContent content = (XSDSchemaContent) contents.next();
-            if (content instanceof XSDRedefine) {
-                includes.add(content);            
-            }
-        }
-        
-        return includes;
-    }
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/BaseDragNodesCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/BaseDragNodesCommand.java
deleted file mode 100644
index 142d4ed..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/BaseDragNodesCommand.java
+++ /dev/null
@@ -1,102 +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.xsd.ui.internal.dnd;
-
-import java.util.Collection;
-
-import org.eclipse.wst.common.ui.dnd.DefaultDragAndDropCommand;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Node;
-
-
-public abstract class BaseDragNodesCommand extends DefaultDragAndDropCommand
-{
-  /**
-   * Constructor for BaseDragNodesCommand.
-   * @param target
-   * @param location
-   * @param operations
-   * @param operation
-   * @param sources
-   */
-  public BaseDragNodesCommand(
-    Object target,
-    float location,
-    int operations,
-    int operation,
-    Collection sources)
-  {
-    super(target, location, operations, operation, sources);
-  }
-
-  protected boolean isDirectSchemaChild(Node node)
-  {
-    Node parent = node.getParentNode();
-    if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false) &&
-        parent.getParentNode().equals(parent.getOwnerDocument()))
-    {
-      return true;
-    }
-    return false;
-  } 
-  
-  protected boolean isSiblingNodes(Node first, Node second)
-  {
-    if (first.getParentNode() != null)
-    {
-      return first.getParentNode().equals(second.getParentNode());
-    }
-    return false;
-  }
-  
-  protected void beginRecording()
-  {
-    if (target != null)
-    {
-      XMLModel model = getModel((Node)target);
-      
-      if (model != null)
-      {
-        model.beginRecording(this, "Move");
-      }
-    }
-  }
-  
-  protected void endRecording()
-  {
-    if (target != null)
-    {
-      XMLModel model = getModel((Node)target);
-      
-      if (model != null)
-      {
-        model.endRecording(this);
-      }
-    }
-  }
-  protected XMLModel getModel(Node node)
-  {
-    Object object = node.getOwnerDocument();
-    if (object instanceof DocumentImpl)
-    {
-      return ((DocumentImpl) object).getModel();
-    }
-    return null;
-  }
-  
-  protected void moveNode(Node referenceNode, Node nodeToMove, boolean isBefore)
-  {
-    XSDDOMHelper.moveNode(referenceNode, nodeToMove, isBefore);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/DragNodesCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/DragNodesCommand.java
deleted file mode 100644
index b3692cf..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/DragNodesCommand.java
+++ /dev/null
@@ -1,77 +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.xsd.ui.internal.dnd;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.format.NodeFormatter;
-import org.w3c.dom.Node;
-
-public class DragNodesCommand extends BaseDragNodesCommand
-{
-  /**
-   * Constructor for DragNodesCommand.
-   * @param target
-   * @param location
-   * @param operations
-   * @param operation
-   * @param sources
-   */
-  public DragNodesCommand(
-    Object target,
-    float location,
-    int operations,
-    int operation,
-    Collection sources)
-  {
-    super(target, location, operations, operation, sources);
-  }
-
-  /**
-   * @see org.eclipse.wst.common.ui.dnd.DragAndDropCommand#canExecute()
-   */
-  public boolean canExecute()
-  {
-    if (sources.size() > 0)
-    {
-      Node firstSource = (Node) sources.toArray()[0];
-      return isSiblingNodes((Node) target, firstSource);
-    }
-    return false;
-//    return isDirectSchemaChild((Node)target);
-  }
-
-  
-  /**
-   * @see org.eclipse.wst.common.ui.dnd.DragAndDropCommand#execute()
-   */
-  public void execute()
-  {
-  	NodeFormatter formatProcessor = new NodeFormatter();
-    Node referenceNode = (Node) target;
-    Iterator iter = sources.iterator();
-    beginRecording();
-
-    while (iter.hasNext()) 
-    {
-      Node node = (Node) iter.next();
-      if (isSiblingNodes(referenceNode,node)) 
-      {
-        moveNode(referenceNode, node, !isAfter());
-        formatProcessor.format((XMLNode)node);
-      }
-    }
-//    formatProcessor.format((XMLNode)referenceNode.getParentNode());
-    endRecording();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/XSDDragAndDropManager.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/XSDDragAndDropManager.java
deleted file mode 100644
index b00c642..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/dnd/XSDDragAndDropManager.java
+++ /dev/null
@@ -1,61 +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.xsd.ui.internal.dnd;
-
-import java.util.Collection;
-
-import org.eclipse.wst.common.ui.dnd.DragAndDropCommand;
-import org.eclipse.wst.common.ui.dnd.DragAndDropManager;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Node;
-
-public class XSDDragAndDropManager implements DragAndDropManager
-{
-  /**
-   * Constructor for XSDDragAndDropManager.
-   */
-  public XSDDragAndDropManager()
-  {
-  }
-  
-  protected boolean isDirectSchemaChild(Node node)
-  {
-    Node parent = node.getParentNode();
-    if (XSDDOMHelper.inputEquals(parent, XSDConstants.SCHEMA_ELEMENT_TAG, false) &&
-        parent.getParentNode().equals(parent.getOwnerDocument()))
-    {
-      return true;
-    }
-    return false;
-  } 
-
-  /**
-   * @see org.eclipse.wst.common.ui.dnd.DragAndDropManager#createCommand(Object, float, int, int, Collection)
-   */
-  public DragAndDropCommand createCommand(
-    Object target,
-    float location,
-    int operations,
-    int operation,
-    Collection source)
-  {
-    if (target instanceof Node) 
-    {
-      Node node = (Node) target;
-//      if (isDirectSchemaChild(node))
-//      {
-        return new DragNodesCommand(target, location, operations, operation, source);
-//      }
-    }
-    return null;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/editparts/AbstractComponentViewerRootEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/editparts/AbstractComponentViewerRootEditPart.java
deleted file mode 100644
index caef397..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/editparts/AbstractComponentViewerRootEditPart.java
+++ /dev/null
@@ -1,63 +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.xsd.ui.internal.gef.util.editparts;
-                                      
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Panel;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.editparts.AbstractGraphicalEditPart;
-import org.eclipse.wst.xsd.ui.internal.gef.util.figures.ContainerLayout;
-              
-
-public abstract class AbstractComponentViewerRootEditPart extends AbstractGraphicalEditPart 
-{
-  protected final static String MESSAGE_PLACE_HOLDER = "MESSAGE_PLACE_HOLDER";
-  protected Object input;              
-
-  public void setInput(Object input)
-  {
-    this.input = input;
-    refreshChildren();
-  }
-
-  protected IFigure createFigure()
-  {
-    Panel panel = new Panel();
-    ContainerLayout layout = new ContainerLayout();
-    layout.setBorder(60);
-    panel.setLayoutManager(layout);
-    return panel;
-  }   
-           
-
-  protected List getModelChildren() 
-  {               
-    List list = new ArrayList();
-    if (input != null)
-    {
-      list.add(input);
-    }
-    else
-    {
-      list.add(MESSAGE_PLACE_HOLDER);
-    }
-    return list;
-  }         
-
-  protected abstract EditPart createChild(Object model);
-  
-  protected void createEditPolicies()
-  {  
-  }             
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ConnectedEditPartFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ConnectedEditPartFigure.java
deleted file mode 100644
index f25f677..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ConnectedEditPartFigure.java
+++ /dev/null
@@ -1,138 +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.xsd.ui.internal.gef.util.figures;
-           
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.editparts.AbstractGraphicalEditPart;
-
-              
-public class ConnectedEditPartFigure extends ContainerFigure implements IConnectedEditPartFigure
-{                 
-  protected EditPart editPart;
-  protected boolean childConnectionsEnabled = true;
-  protected List connectedFigures = new ArrayList();
-  protected int connectionType = RIGHT_CONNECTION;
-    
-  public ConnectedEditPartFigure(EditPart editPart)
-  {
-    this.editPart = editPart;    
-  }     
-
-  public void setChildConnectionsEnabled(boolean enabled)
-  {
-    childConnectionsEnabled = enabled;
-  }          
-
-  protected IConnectedEditPartFigure getParentGraphNodeFigure()
-  {
-    IConnectedEditPartFigure result = null;
-    for (EditPart parentEditPart = editPart.getParent(); parentEditPart != null; parentEditPart = parentEditPart.getParent())
-    {                                                              
-      IFigure figure = ((AbstractGraphicalEditPart)parentEditPart).getFigure();    
-      if (figure instanceof IConnectedEditPartFigure)
-      {                                                            
-        IConnectedEditPartFigure graphNodeFigure = (IConnectedEditPartFigure)figure;
-        if (graphNodeFigure.getConnectionFigure() != null)
-        {
-          result = graphNodeFigure;
-          break;
-        }
-      }          
-    }          
-    return result;
-  }
-
-  public void addNotify()                     
-  {           
-    super.addNotify();
-    if (getConnectionFigure() != null)
-    {
-      IConnectedEditPartFigure parentGraphNodeFigure = getParentGraphNodeFigure();
-      if (parentGraphNodeFigure != null)
-      {   
-        parentGraphNodeFigure.addConnectedFigure(this);
-      }   
-    }
-  }   
-
-  public void removeNotify()
-  {
-    super.removeNotify();
-    if (getConnectionFigure() != null)
-    {
-      IConnectedEditPartFigure parentGraphNodeFigure = getParentGraphNodeFigure();
-      if (parentGraphNodeFigure != null)
-      {   
-        parentGraphNodeFigure.removeConnectedFigure(this);
-      }   
-    }
-  }   
-
-  public void addConnectedFigure(IConnectedEditPartFigure figure)
-  {   
-    if (childConnectionsEnabled) 
-    {  
-      // this test is required since we sometimes receive the 'addNotify' call twice
-      //
-      if (!connectedFigures.contains(figure))
-      {
-        connectedFigures.add(figure);
-      }
-    }
-  }
-
-  public void removeConnectedFigure(IConnectedEditPartFigure figure)
-  {
-    if (childConnectionsEnabled) 
-    { 
-      connectedFigures.remove(figure);
-    }
-  }    
-                    
-  public IFigure getSelectionFigure()
-  {
-    return this;
-  }
-
-  public IFigure getConnectionFigure()
-  {
-    return this;
-  }
-
-  public List getConnectedFigures(int type)
-  {
-    List list = new ArrayList();
-    for (Iterator i = connectedFigures.iterator(); i.hasNext(); )
-    {           
-      IConnectedEditPartFigure figure = (IConnectedEditPartFigure)i.next();
-      //if (type == 0 || type == figure.getConnectionType())
-      {
-        list.add(figure);
-      }      
-    }
-    return list;
-  }                               
-
-  public int getConnectionType()
-  {
-    return connectionType;
-  }
-
-  public void setConnectionType(int type)
-  {
-    connectionType = type;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ConnectionRenderingFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ConnectionRenderingFigure.java
deleted file mode 100644
index 7192108..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ConnectionRenderingFigure.java
+++ /dev/null
@@ -1,215 +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.xsd.ui.internal.gef.util.figures;
-        
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.PointList;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.GraphicalEditPart;
-              
-
-public class ConnectionRenderingFigure extends RectangleFigure
-{               
-  protected boolean isOutlined = true;
-  protected IFigure primaryLayer;
-
-  public ConnectionRenderingFigure(IFigure primaryLayer)
-  {
-    setOpaque(false);                   
-    this.primaryLayer = primaryLayer;
-    //setFocusTraversable(false); 
-    //setEnabled(false); 
-  }
-           
-  protected boolean isMouseEventTarget()
-  {
-    return false;
-  }        
-
-  public boolean containsPoint(int x, int y)
-  {
-    return false;
-  }
-
-  protected void fillShape(Graphics graphics)
-  { 
-    graphics.setForegroundColor(ColorConstants.black);
-    drawLines(graphics, primaryLayer);
-  }
-
-  protected void outlineShape(Graphics graphics)
-  { 
-    if (isOutlined)
-    {
-      super.outlineShape(graphics);
-    }
-  } 
-
-  protected void drawLines(Graphics graphics, IFigure figure)
-  {      
-    if (figure instanceof IConnectedEditPartFigure)
-    {
-      IConnectedEditPartFigure graphNodeFigure = (IConnectedEditPartFigure)figure;         
-      List connectedFigures = graphNodeFigure.getConnectedFigures(IConnectedEditPartFigure.RIGHT_CONNECTION);
-      int connectedFiguresSize = connectedFigures.size();              
-
-      if (connectedFiguresSize > 0) 
-      {                                         
-        IConnectedEditPartFigure firstGraphNodeFigure = (IConnectedEditPartFigure)connectedFigures.get(0);
-        Rectangle r = graphNodeFigure.getConnectionFigure().getBounds();    
-          
-        int x1 = r.x + r.width;
-        int y1 = r.y + r.height/2;
-                                                                                   
-        int startOfChildBox = firstGraphNodeFigure.getConnectionFigure().getBounds().x;
-        int x2 = x1 + (startOfChildBox - x1) / 3;
-        int y2 = y1;
-      
-        if (connectedFiguresSize == 1)
-        {
-          graphics.drawLine(x1, y1, startOfChildBox, y2);   
-        }
-        else // (connectedFigures.length > 1)
-        { 
-          graphics.drawLine(x1, y1, x2, y2);
-
-          int minY = Integer.MAX_VALUE;
-          int maxY = -1;
-
-          for (Iterator i = connectedFigures.iterator(); i.hasNext(); )
-          {                                 
-            IConnectedEditPartFigure connectedFigure = (IConnectedEditPartFigure)i.next();
-            Rectangle childConnectionRectangle = connectedFigure.getConnectionFigure().getBounds();
-            int y = childConnectionRectangle.y + childConnectionRectangle.height / 2;
-            minY = Math.min(minY, y);
-            maxY = Math.max(maxY, y);
-            graphics.drawLine(x2, y, childConnectionRectangle.x, y);
-          }                   
-          graphics.drawLine(x2, minY, x2, maxY);
-        }                          
-      }                             
-    }            
-
-    //boolean visitChildren = true;
-    List children = figure.getChildren();
-    for (Iterator i = children.iterator(); i.hasNext(); )
-    {
-      IFigure child = (IFigure)i.next();
-      drawLines(graphics, child);
-    }
-  }    
-
-  // This method supports the preview connection line function related to drag and drop
-  //     
-  public PointList getConnectionPoints(GraphicalEditPart parentEditPart, GraphicalEditPart childRefEditPart, Rectangle draggedFigureBounds)
-  {           
-    PointList pointList = new PointList();                         
-    int[] data = new int[1];
-    Point a = getConnectionPoint(parentEditPart, childRefEditPart, data);
-    if (a != null)
-    {   
-      int draggedFigureBoundsY = draggedFigureBounds.y + draggedFigureBounds.height/2;
-
-      pointList.addPoint(a); 
-      //pointList.addPoint(new Point(draggedFigureBounds.x, draggedFigureBoundsY));
-      
-      if (data[0] == 0) // insert between 2 items
-      {                                         
-        int x = a.x + (draggedFigureBounds.x - a.x)/2;
-        pointList.addPoint(new Point(x, a.y));
-        pointList.addPoint(new Point(x, draggedFigureBoundsY));        
-        pointList.addPoint(new Point(draggedFigureBounds.x, draggedFigureBoundsY));
-      }
-      else // insert at first or last position
-      {
-        pointList.addPoint(new Point(a.x, draggedFigureBoundsY));   
-        pointList.addPoint(new Point(draggedFigureBounds.x, draggedFigureBoundsY));
-      }
-    }       
-    return pointList;
-  }
-
-         
-  // This method supports the preview connection line function related to drag and drop
-  //     
-  protected Point getConnectionPoint(GraphicalEditPart parentEditPart, GraphicalEditPart childRefEditPart, int[] data)
-  {                      
-    Point point = null;     
-    List childList = parentEditPart.getChildren();         
-                                                                                                                                               
-    if (parentEditPart.getFigure() instanceof IConnectedEditPartFigure && childList.size() > 0)
-    {   
-      point = new Point();
-
-      GraphicalEditPart prev = null;    
-      GraphicalEditPart next = null;
-                               
-      for (Iterator i = childList.iterator(); i.hasNext(); )
-      {             
-        Object o = i.next();    
-        if (o instanceof GraphicalEditPart)
-        {
-          GraphicalEditPart childEditPart = (GraphicalEditPart)o;
-          if (childEditPart.getFigure() instanceof IConnectedEditPartFigure)
-          {
-            if (childEditPart == childRefEditPart)
-            {
-              next = childEditPart;
-              break;
-            }                                           
-            prev = childEditPart;
-          }
-        }
-      }                            
-                          
-
-      if (next != null && prev != null)
-      {                   
-        int ya = getConnectedEditPartConnectionBounds(prev).getCenter().y;
-        int yb = getConnectedEditPartConnectionBounds(next).getCenter().y;
-        point.y = ya + (yb - ya)/2;   
-        data[0] = 0;
-      }                               
-      else if (prev != null) // add it last
-      {
-        point.y = getConnectedEditPartConnectionBounds(prev).getCenter().y;
-        data[0] = 1;
-      }
-      else if (next != null) // add it first!
-      {                           
-        point.y = getConnectedEditPartConnectionBounds(next).getCenter().y;
-        data[0] = -1;
-      }
-          
-      if (next != null || prev != null)
-      {
-        GraphicalEditPart child = prev != null ? prev : next;
-        int startOfChildBox = getConnectedEditPartConnectionBounds(child).x;
-        Rectangle r = getConnectedEditPartConnectionBounds(parentEditPart);  
-        int x1 = r.x + r.width;
-        point.x = x1 + (startOfChildBox - x1) / 3;
-      }
-    }    
-    return point;
-  }
-
-  protected Rectangle getConnectedEditPartConnectionBounds(GraphicalEditPart editPart)
-  {
-    return ((IConnectedEditPartFigure)editPart.getFigure()).getConnectionFigure().getBounds();
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ContainerFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ContainerFigure.java
deleted file mode 100644
index d7a77ac..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ContainerFigure.java
+++ /dev/null
@@ -1,60 +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.xsd.ui.internal.gef.util.figures;
-            
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.RectangleFigure;
-              
-public class ContainerFigure extends RectangleFigure implements IExpandable
-{               
-  protected boolean isOutlined = false;
-  protected boolean isExpanded = true;
-
-  public ContainerFigure()
-  {
-    setLayoutManager(new ContainerLayout());
-    setFill(false);
-  }
-
-  public void doLayout()
-  {
-	  layout();
-	  setValid(true);
-  }  
-          
-  public ContainerLayout getContainerLayout()
-  {
-    return (ContainerLayout)getLayoutManager();
-  }           
-
-  public void setOutlined(boolean isOutlined)
-  {
-    this.isOutlined = isOutlined;
-  }     
-
-  protected void outlineShape(Graphics graphics)
-  { 
-    if (isOutlined)
-    {
-      super.outlineShape(graphics);
-    }
-  }
-
-  public boolean isExpanded()
-  {
-    return isExpanded;
-  }
-  
-  public void setExpanded(boolean isExpanded)
-  {
-    this.isExpanded = isExpanded;
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ContainerLayout.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ContainerLayout.java
deleted file mode 100644
index 12f654b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/ContainerLayout.java
+++ /dev/null
@@ -1,218 +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.xsd.ui.internal.gef.util.figures;
-                   
-import java.util.List;
-
-import org.eclipse.draw2d.AbstractLayout;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-              
-
-public class ContainerLayout extends AbstractLayout
-{                                         
-  protected boolean isHorizontal;
-  protected int spacing = 0;
-  protected int border = 0; 
-
-  public ContainerLayout()
-  { 
-    this(true, 0); 
-  }             
-
-  public ContainerLayout(boolean isHorizontal, int spacing)
-  {
-    this.isHorizontal = isHorizontal;   
-    this.spacing = spacing;
-  }  
-
-  public void setHorizontal(boolean isHorizontal)
-  {
-    this.isHorizontal = isHorizontal;
-  }  
-
-  public void setSpacing(int spacing)
-  {
-    this.spacing = spacing;
-  }  
-
-  public void setBorder(int border)
-  {
-    this.border = border;
-  }  
-
-  protected int alignFigure(IFigure parent, IFigure child)
-  { 
-    return -1;
-  }
-
-  /**
-   * Calculates and returns the preferred size of the container 
-   * given as input.
-   * 
-   * @param figure  Figure whose preferred size is required.
-   * @return  The preferred size of the passed Figure.
-   * @since 2.0
-   */
-  protected Dimension calculatePreferredSizeHelper(IFigure parent)
-  { 
-    Dimension	preferred = new Dimension();
-  	List children = parent.getChildren();
-		                                        
-	  for (int i=0; i < children.size(); i++)
-    {
-		  IFigure child = (IFigure)children.get(i);      
-    
-      Dimension	childSize = child.getPreferredSize();
-	  
-      if (isHorizontal)
-      {
-		    preferred.width += childSize.width;
-		    preferred.height = Math.max(preferred.height, childSize.height);
-      }
-      else
-      {  
-        preferred.height += childSize.height;
-        preferred.width = Math.max(preferred.width, childSize.width);
-      }
-	  }   
-
-    int childrenSize = children.size();
-    if (childrenSize > 1)
-    {                      
-      if (isHorizontal)    
-      {
-        preferred.width += spacing * (childrenSize - 1);
-      }
-      else
-      {
-		    preferred.height += spacing * (childrenSize - 1);
-      } 
-    }
-                          
-    preferred.width += border * 2;
-    preferred.height += border * 2;
-	  preferred.width += parent.getInsets().getWidth();
-	  preferred.height += parent.getInsets().getHeight();       
-  
-  	return preferred;
-  }
-
-  protected Dimension calculatePreferredSize(IFigure parent, int width, int height)
-  {    
-    Dimension	preferred = null;                                              
-                                  
-    // Here we ensure that an unexpanded container is given a size of (0,0)
-    //
-    if (parent instanceof IExpandable)
-    {
-      IExpandable expandableFigure = (IExpandable)parent;
-      if (!expandableFigure.isExpanded())
-      {
-        preferred = new Dimension(); 
-      }
-    }   
-    
-    if (preferred == null)
-    {
-	    preferred = calculatePreferredSizeHelper(parent);    
-    }
-    
-    return preferred;
-  }
-     
-
-  protected void adjustLayoutLocation(IFigure parent, Dimension dimension)
-  {     
-  }   
-
-  public void layout(IFigure parent)
-  {       
-  	List children = parent.getChildren();
- 
-    int rx = 0;
-    Dimension	dimension = new Dimension();                                          
-
-
-	  for (int i=0; i < children.size(); i++)
-    {
-		  IFigure child = (IFigure)children.get(i);
-		  Dimension	childSize = child.getPreferredSize();
-      if (isHorizontal)
-      {   
-        dimension.height = Math.max(dimension.height, childSize.height);
-        rx += childSize.width;
-      }
-      else
-      {
-        dimension.width = Math.max(dimension.width, childSize.width);
-      }
-    }
-
-	  //dimension.width += parent.getInsets().left;
-    //dimension.height += parent.getInsets().top;
-
-    if (isHorizontal)
-    {
-      dimension.height += border*2;
-    	dimension.width += border;
-    }
-    else
-    {
-      dimension.width += border*2;
-    	dimension.height += border;
-    }
-    adjustLayoutLocation(parent, dimension);    
-
-    for (int i=0; i < children.size(); i++)
-    {
-      IFigure child = (IFigure)children.get(i);
-	    Dimension	childSize = child.getPreferredSize();
-        
-      if (isHorizontal)
-      {   
-        int y = -1; 
-    
-        y = alignFigure(parent, child);
-    
-        if (y == -1)
-        {
-           y = (dimension.height - childSize.height) / 2;                                      
-        }                      
-                                                   
-        Rectangle rectangle = new Rectangle(dimension.width, y, childSize.width, childSize.height);
-        rectangle.translate(parent.getClientArea().getLocation());                           
-
-
-        child.setBounds(rectangle);                           
-	      dimension.width += childSize.width; 
-        dimension.width += spacing;       
-
-        if (child instanceof SpacingFigure)
-        {          
-          int availableHorizontalSpace = parent.getClientArea().width - rx;
-          dimension.width += availableHorizontalSpace;
-        }           
-      }
-      else
-      {
-        Rectangle rectangle = new Rectangle(0, dimension.height, childSize.width, childSize.height);
-	      rectangle.translate(parent.getClientArea().getLocation());                                  
-        
-
-        child.setBounds(rectangle);  
-        dimension.height += childSize.height;
-        dimension.height += spacing;
-      }
-	  }	      
-  }                                      
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/FillLayout.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/FillLayout.java
deleted file mode 100644
index 1b2976b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/FillLayout.java
+++ /dev/null
@@ -1,162 +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.xsd.ui.internal.gef.util.figures;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.AbstractLayout;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-
-
-public class FillLayout extends AbstractLayout
-{         
-  protected boolean isHorizontal = false;                    
-  protected int spacing = 0;
-  public Dimension min;
-
-  public FillLayout(){}     
-  
-  public FillLayout(int spacing)
-  { 
-    this.spacing = spacing; 
-  }
-  
-  public void setHorizontal(boolean isHorizontal)
-  {
-   this.isHorizontal = isHorizontal;
-  }
-  
-  /**
-   * Calculates and returns the preferred size of the input container.
-   * This is the size of the largest child of the container, as all
-   * other children fit into this size.
-   *
-   * @param figure  Container figure for which preferred size is required.
-   * @return  The preferred size of the input figure.
-   * @since 2.0
-   */
-
-  protected Dimension calculatePreferredSize(IFigure figure, int width, int height)
-  {	                 
-    Dimension d = calculatePreferredClientAreaSize(figure);
-  	d.expand(figure.getInsets().getWidth(),
-  	         figure.getInsets().getHeight());
-  	d.union(getBorderPreferredSize(figure));
-  	return d;
-  } 
-  
-  protected Dimension calculatePreferredClientAreaSize(IFigure figure)
-  {
-    Dimension d = new Dimension();
-  	List children = figure.getChildren(); 
-  
-  
-  	for (Iterator i = children.iterator(); i.hasNext(); )
-    {
-  		IFigure child = (IFigure)i.next();
-      Dimension childSize = child.getPreferredSize();
-  
-      if (isHorizontal)
-      {
-        d.width += childSize.width;
-        d.height = Math.max(childSize.height, d.height);
-      }
-      else
-      {
-        d.height += childSize.height;
-        d.width = Math.max(childSize.width, d.width);
-      }
-  	}	 
-  
-                     
-    int childrenSize = children.size();       
-    if (childrenSize > 0)
-    {
-      if (isHorizontal)
-      {
-        d.width += spacing * (childrenSize - 1); 
-      }
-      else
-      {
-        d.height += spacing * (childrenSize - 1);  
-      }
-    }       
-      
-    if (min != null)
-    {
-      d.width = Math.max(d.width, min.width);
-      d.height = Math.max(d.height, min.height);
-    }
-    return d;
-  }
-  
-  /*
-   * Returns the minimum size required by the input container.
-   * This is the size of the largest child of the container, as all
-   * other children fit into this size.
-   */
-  public Dimension getMinimumSize(IFigure figure, int width, int height)
-  {
-  	Dimension d = new Dimension();
-  	List children = figure.getChildren();
-  	IFigure child;
-
-  	for (int i=0; i < children.size(); i++)
-    {
-  		child = (IFigure)children.get(i);
-  		d.union(child.getMinimumSize());
-  	}
-  	d.expand(figure.getInsets().getWidth(),
-  	         figure.getInsets().getHeight());
-  	return d;
-  }
-  
-  public Dimension getPreferredSize(IFigure figure, int width, int height)
-  {
-  	return calculatePreferredSize(figure, width, height);
-  }
-  
-  /*
-   * Lays out the children on top of each other with
-   * their sizes equal to that of the available
-   * paintable area of the input container figure.
-   */
-  public void layout(IFigure figure)
-  {                         
-    Dimension	preferredSize = calculatePreferredClientAreaSize(figure);
-  	Rectangle r = figure.getClientArea().getCopy();
-  	List children = figure.getChildren();
-
-    int nChildren = children.size();                                                          
-    int extraHorizontalSpace = r.width - preferredSize.width;
-
-  	for (Iterator i = children.iterator(); i.hasNext(); )
-    {
-  		IFigure child = (IFigure)i.next();
-      Dimension preferredChildSize = child.getPreferredSize();
-         
-      if (isHorizontal)
-      {                       
-        int w = preferredChildSize.width + (extraHorizontalSpace / nChildren);
-  		  child.setBounds(new Rectangle(r.x, r.y, w, Math.max(preferredSize.height, r.height)));
-        r.x += w + spacing;
-      }
-      else
-      {
-  		  child.setBounds(new Rectangle(r.x, r.y, Math.max(preferredSize.width, r.width), preferredChildSize.height));
-        r.y += preferredChildSize.height + spacing;
-      }
-  	}
-  }   
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectedEditPartFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectedEditPartFigure.java
deleted file mode 100644
index 4c778d7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectedEditPartFigure.java
+++ /dev/null
@@ -1,30 +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.xsd.ui.internal.gef.util.figures;
-            
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-
-public interface IConnectedEditPartFigure extends IConnectedFigure
-{                       
-  public static final int UP_CONNECTION = 1; 
-  public static final int DOWN_CONNECTION = 2;
-  public static final int LEFT_CONNECTION = 3;
-  public static final int RIGHT_CONNECTION = 4;
-
-  public IFigure getSelectionFigure();
-  public IFigure getConnectionFigure();
-  public List getConnectedFigures(int type);
-  public int getConnectionType();      
-  public void addConnectedFigure(IConnectedEditPartFigure figure);
-  public void removeConnectedFigure(IConnectedEditPartFigure figure);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectedFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectedFigure.java
deleted file mode 100644
index 4a6d7de..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectedFigure.java
+++ /dev/null
@@ -1,18 +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.xsd.ui.internal.gef.util.figures;
-            
-import org.eclipse.draw2d.IFigure;
-
-public interface IConnectedFigure extends IFigure
-{                       
-  public IFigure getConnectionFigure();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectionRenderingViewer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectionRenderingViewer.java
deleted file mode 100644
index 6ed611d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IConnectionRenderingViewer.java
+++ /dev/null
@@ -1,16 +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.xsd.ui.internal.gef.util.figures;
-
-public interface IConnectionRenderingViewer
-{        
-  public ConnectionRenderingFigure getConnectionRenderingFigure();
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IExpandable.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IExpandable.java
deleted file mode 100644
index 161581b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/IExpandable.java
+++ /dev/null
@@ -1,19 +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.xsd.ui.internal.gef.util.figures;  
-
-import org.eclipse.draw2d.IFigure;
-
-public interface IExpandable extends IFigure
-{
-  boolean isExpanded(); 
-  void setExpanded(boolean isExpanded);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/SpacingFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/SpacingFigure.java
deleted file mode 100644
index e245d69..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/gef/util/figures/SpacingFigure.java
+++ /dev/null
@@ -1,27 +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.xsd.ui.internal.gef.util.figures;
-            
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-              
-public class SpacingFigure extends RectangleFigure
-{  
-  public SpacingFigure()
-  {
-    setFill(false);
-    setPreferredSize(new Dimension(0, 0));
-  }
-  
-  //protected void outlineShape(Graphics graphics)
-  //{ 
-  //}                                              
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/BaseGraphicalViewer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/BaseGraphicalViewer.java
deleted file mode 100644
index 134b5e1..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/BaseGraphicalViewer.java
+++ /dev/null
@@ -1,201 +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.xsd.ui.internal.graph;
-
-import java.util.Iterator;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.StackLayout;
-import org.eclipse.gef.DefaultEditDomain;
-import org.eclipse.gef.EditDomain;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.KeyHandler;
-import org.eclipse.gef.LayerConstants;
-import org.eclipse.gef.editparts.ScalableRootEditPart;
-import org.eclipse.gef.tools.SelectionTool;
-import org.eclipse.gef.ui.parts.ScrollingGraphicalViewer;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-import org.eclipse.wst.xsd.ui.internal.XSDMenuListener;
-import org.eclipse.wst.xsd.ui.internal.gef.util.figures.ConnectionRenderingFigure;
-import org.eclipse.wst.xsd.ui.internal.gef.util.figures.IConnectionRenderingViewer;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.CenterLayout;
-import org.eclipse.xsd.XSDConcreteComponent;
-
-
-/**
- * @author ernest
- *
- * To change this generated comment go to 
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-public abstract class BaseGraphicalViewer extends ScrollingGraphicalViewer implements IConnectionRenderingViewer
-{
-  protected FigureCanvasKeyboardHandler figureCanvasKeyboardHandler;
-
-  protected EditDomain editDomain;
-
-  protected boolean isInputEnabled = true;
-
-  protected boolean isSelectionEnabled = true;
-
-  protected ISelectionProvider menuSelectionProvider;
-
-  protected GraphContextMenuProvider menuProvider;
-
-  protected XSDEditor editor;
-
-  protected XSDConcreteComponent input;
-
-  protected ConnectionRenderingFigure connectionRenderingFigure;
-
-  public BaseGraphicalViewer(XSDEditor editor, ISelectionProvider selectionProvider)
-  {
-    super();
-    this.editor = editor;
-    menuSelectionProvider = selectionProvider;
-  }
-  
-  public ConnectionRenderingFigure getConnectionRenderingFigure()
-  {
-    return connectionRenderingFigure;
-  }
-
-  public void setInputEnabled(boolean enabled)
-  {
-    isInputEnabled = enabled;
-  }
-
-  public void setSelectionEnabled(boolean enabled)
-  {
-    isSelectionEnabled = enabled;
-  }
-
-  public XSDMenuListener getMenuListener()
-  {
-    return menuProvider.getMenuListener();
-  }
-
-  protected static Color white = null;
-  protected void hookControl()
-  {                     
-    super.hookControl();
-  
-    if (white == null)
-    {
-      white = new Color(getControl().getDisplay(), 255, 255, 255);
-    }
-    getControl().setBackground(white); 
-  
-    editDomain = new DefaultEditDomain(null);
-    ((DefaultEditDomain)editDomain).setDefaultTool(new SelectionTool());
-    editDomain.loadDefaultTool();
-    editDomain.addViewer(this);
-  
-    //jvh - gef port - moved this from below so it is available when adding context menu below
-    menuProvider = new GraphContextMenuProvider(this, menuSelectionProvider, editor.getXSDTextEditor());
-    setContextMenu(menuProvider);
-  
-    // add context menu to the graph
-    MenuManager manager = new MenuManager();
-    manager.addMenuListener(getMenuListener());  //jvh - gef port
-    manager.setRemoveAllWhenShown(true);
-    Menu menu = manager.createContextMenu(getControl());
-    getControl().setMenu(menu);
-    
-    // enable popupMenus extension
-    editor.getSite().registerContextMenu("org.eclipse.wst.xsd.ui.popup.graph", manager, menuSelectionProvider);
-    
-    KeyAdapter keyListener = new KeyAdapter()
-    {
-      /**
-       * @see org.eclipse.swt.events.KeyAdapter#keyReleased(KeyEvent)
-       */
-      public void keyReleased(KeyEvent e)
-      {
-        if (e.character == SWT.DEL)
-        {
-          getMenuListener().getDeleteAction().run();
-        }
-      }
-    };
-  
-    setKeyHandler(new XSDGraphicalViewerKeyHandler(this).setParent(new KeyHandler()));
-    
-//    getControl().addKeyListener(keyListener);
-
-    figureCanvasKeyboardHandler = new FigureCanvasKeyboardHandler(this);
-    getFigureCanvas().addKeyListener(figureCanvasKeyboardHandler);
-    
-  	getRootEditPart().activate();		
-                       
-  	ScalableRootEditPart graphicalRootEditPart = (ScalableRootEditPart)getRootEditPart();
-     
-    // set the layout for the primary layer so that the children are always centered
-    //
-    graphicalRootEditPart.getLayer(LayerConstants.PRIMARY_LAYER).setLayoutManager(new CenterLayout());
-  
-    // add the ConnectionRenderingFigure which is responsible for drawing all of the lines in the view
-    //                       
-    IFigure figure = graphicalRootEditPart.getLayer(LayerConstants.HANDLE_LAYER);
-    figure.setLayoutManager(new StackLayout());          
-    connectionRenderingFigure = new ConnectionRenderingFigure(graphicalRootEditPart.getLayer(LayerConstants.PRIMARY_LAYER));      
-    figure.add(connectionRenderingFigure);
-  
-    figure.validate();      
-  }
-
-  public XSDConcreteComponent getInput()
-  {
-    return input;
-  }
-
-  protected EditPart getEditPart(EditPart parent, Object object)
-  {
-    EditPart result = null;
-    for (Iterator i = parent.getChildren().iterator(); i.hasNext(); )
-    {
-      EditPart editPart = (EditPart)i.next();
-      if (editPart.getModel() == object)
-      {  
-        result = editPart;
-        break;
-      }
-    }             
-  
-    if (result == null)
-    { 
-      for (Iterator i = parent.getChildren().iterator(); i.hasNext(); )
-      {
-        EditPart editPart = getEditPart((EditPart)i.next(), object);
-        if (editPart != null)
-        {
-          result = editPart;
-          break;
-        }
-      }            
-    }
-  
-    return result;
-  }
-  
-  public abstract void setInput(XSDConcreteComponent comp);
-  
-  public abstract void setSelection(XSDConcreteComponent comp);
-  
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/FigureCanvasKeyboardHandler.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/FigureCanvasKeyboardHandler.java
deleted file mode 100644
index 012e15e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/FigureCanvasKeyboardHandler.java
+++ /dev/null
@@ -1,125 +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.xsd.ui.internal.graph;
-
-import org.eclipse.draw2d.FigureCanvas;
-import org.eclipse.draw2d.RangeModel;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.CategoryEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.TopLevelComponentEditPart;
-
-public class FigureCanvasKeyboardHandler extends KeyAdapter
-{
-  public static final int H_SCROLL_INCREMENT = 5;
-  public static final int V_SCROLL_INCREMENT = 30;
-
-  BaseGraphicalViewer viewer;
-  
-  /**
-   * Constructor for FigureCanvasKeyboardHandler.
-   */
-  public FigureCanvasKeyboardHandler(BaseGraphicalViewer viewer)
-  {
-    super();
-    this.viewer = viewer;
-  }
-
-  public void keyPressed(KeyEvent e)
-  {
-    Widget w = e.widget;
-    if (w instanceof FigureCanvas)
-    {
-      processKey(e.keyCode, (FigureCanvas)w);
-      update();
-    }
-  }
-
-  private void processKey(int keyCode, FigureCanvas figureCanvas)
-  {
-    switch (keyCode)
-    {
-      case SWT.ARROW_DOWN :
-        scrollVertical(figureCanvas, false);
-        break;
-      case SWT.ARROW_UP :
-        scrollVertical(figureCanvas, true);
-        break;
-      case SWT.ARROW_LEFT :
-        scrollHorizontal(figureCanvas, true);
-        break;
-      case SWT.ARROW_RIGHT :
-        scrollHorizontal(figureCanvas, false);
-        break;
-      case SWT.PAGE_UP :
-        scrollPage(figureCanvas, true);
-        break;
-      case SWT.PAGE_DOWN :
-        scrollPage(figureCanvas, false);
-        break;
-    }
-  }
-
-  private int verifyScrollBarOffset(RangeModel model, int value)
-  {
-    value = Math.max(model.getMinimum(), value);
-    return Math.min(model.getMaximum() - model.getExtent(), value);
-  }
-
-  private void scrollVertical(FigureCanvas figureCanvas, boolean up)
-  {
-    Point location = figureCanvas.getViewport().getViewLocation();
-    int vOffset = up ? -V_SCROLL_INCREMENT : V_SCROLL_INCREMENT;
-    int x = verifyScrollBarOffset(figureCanvas.getViewport().getHorizontalRangeModel(), location.x);
-    int y = verifyScrollBarOffset(figureCanvas.getViewport().getVerticalRangeModel(), location.y + vOffset);
-    figureCanvas.scrollSmoothTo(x, y);
-  }
-
-  private void scrollHorizontal(FigureCanvas figureCanvas, boolean left)
-  {
-    Point location = figureCanvas.getViewport().getViewLocation();
-    int hOffset = left ? -H_SCROLL_INCREMENT : H_SCROLL_INCREMENT;
-    int x = verifyScrollBarOffset(figureCanvas.getViewport().getHorizontalRangeModel(), location.x + hOffset);
-    int y = verifyScrollBarOffset(figureCanvas.getViewport().getVerticalRangeModel(), location.y);
-    figureCanvas.scrollSmoothTo(x, y);
-  }
-
-  private void scrollPage(FigureCanvas figureCanvas, boolean up)
-  {
-    Rectangle clientArea = figureCanvas.getClientArea();
-    int increment = up ? -clientArea.height : clientArea.height;
-    Point location = figureCanvas.getViewport().getViewLocation();
-    int x = verifyScrollBarOffset(figureCanvas.getViewport().getHorizontalRangeModel(), location.x);
-    int y = verifyScrollBarOffset(figureCanvas.getViewport().getVerticalRangeModel(), location.y + increment);
-    figureCanvas.scrollSmoothTo(x, y);
-  }
-  
-  private void update()
-  {
-    StructuredSelection s = (StructuredSelection)viewer.getSelection();
-    Object newSelectedEditPart = s.getFirstElement();
-
-    if (newSelectedEditPart instanceof TopLevelComponentEditPart)
-    {
-      TopLevelComponentEditPart topLevel = (TopLevelComponentEditPart) newSelectedEditPart;
-      CategoryEditPart categoryEP = (CategoryEditPart) topLevel.getParent();
-      categoryEP.scrollTo(topLevel);
-      viewer.reveal((TopLevelComponentEditPart)newSelectedEditPart);
-    }                           
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/GraphContextMenuProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/GraphContextMenuProvider.java
deleted file mode 100644
index 3215418..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/GraphContextMenuProvider.java
+++ /dev/null
@@ -1,58 +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.xsd.ui.internal.graph;
-
-import org.eclipse.gef.ContextMenuProvider;
-import org.eclipse.gef.EditPartViewer;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.XSDMenuListener;
-import org.eclipse.wst.xsd.ui.internal.XSDTextEditor;
-
-
-public class GraphContextMenuProvider extends ContextMenuProvider
-{
-
-  XSDMenuListener xsdMenuListener;
-  
-  /**
-   * Constructor for GraphContextMenuProvider.
-   * @param selectionProvider
-   * @param editor
-   */
-  public GraphContextMenuProvider(
-    EditPartViewer viewer,
-    ISelectionProvider selectionProvider,
-    XSDTextEditor editor)
-  {
-    super(viewer);
-    this.viewer = viewer;
-    xsdMenuListener = new XSDMenuListener(selectionProvider);
-    xsdMenuListener.setSourceContext(viewer);
-  }
-
-  public XSDMenuListener getMenuListener()
-  {
-      return xsdMenuListener;
-  }
-
-  
-  /**
-   * @see org.eclipse.gef.ui.parts.ContextMenuProvider#buildContextMenu(org.eclipse.jface.action.IMenuManager, org.eclipse.gef.EditPartViewer)
-   */
-  public void buildContextMenu(IMenuManager arg0)
-  {
-    xsdMenuListener.menuAboutToShow(arg0);
-  }
-  
-  protected EditPartViewer viewer;
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/GraphicsConstants.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/GraphicsConstants.java
deleted file mode 100644
index 691996d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/GraphicsConstants.java
+++ /dev/null
@@ -1,36 +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.xsd.ui.internal.graph;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * A collection of color-related constants.
- */
-public interface GraphicsConstants 
-{                          
-  public final static Display display = Display.getDefault();
-  public final static Color categoryBorderColor     = new Color(null, 118, 134, 164);
-  public final static Color elementBorderColor      = new Color(null, 138, 154, 184);
-  public final static Color elementBackgroundColor  = new Color(null, 236, 242, 252);  
-  public final static Color elementLabelColor       = new Color(null,  80,  96, 144);
-  public final static Color readOnlyBorderColor     = new Color(null, 164, 164, 164); 
-
-  public final static Color readOnlyBackgroundColor = ColorConstants.white;
-
-  public final static Font  smallFont               = new Font(Display.getCurrent(), "Small Fonts", 6, SWT.NONE); 
-  public final static Font  medium                  = new Font(Display.getCurrent(), "Tahoma", 8, SWT.NONE); 
-  public final static Font  mediumBoldFont          = new Font(Display.getCurrent(), "Tahoma", 8, SWT.BOLD); 
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/LinkedGraphViewer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/LinkedGraphViewer.java
deleted file mode 100644
index 09645a1..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/LinkedGraphViewer.java
+++ /dev/null
@@ -1,163 +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.xsd.ui.internal.graph;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.gef.EditPart;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.w3c.dom.Element;
-
-
-
-public class LinkedGraphViewer
-{
-  
-  protected ISelectionProvider menuSelectionProvider;
-  protected XSDEditor editor;
-  protected BaseGraphicalViewer majorViewer, minorViewer;
-  
-  /**
-   * 
-   */
-  public LinkedGraphViewer(XSDEditor editor, ISelectionProvider selectionProvider)
-  {
-    menuSelectionProvider = selectionProvider;
-    this.editor = editor;
-  }
-
-  public void setMajorViewer(BaseGraphicalViewer majorViewer)
-  {
-    this.majorViewer = majorViewer;
-  }
-
-  public void setMinorViewer(BaseGraphicalViewer minorViewer)
-  {
-    this.minorViewer = minorViewer;
-  }
-  
-  protected Composite control;
-  protected SashForm sashForm;
-  
-  public Control createControl(Composite parent)
-  {
-    //control = new Composite(parent, SWT.DEFAULT);
-   
-    control = sashForm = new SashForm(parent, SWT.VERTICAL | SWT.BORDER);
-    sashForm.setLayoutData(ViewUtility.createFill());
-    
-    majorViewer.createControl(sashForm);
-    minorViewer.createControl(sashForm);
-//    control.setLayout(new GridLayout());
-//    control.setLayoutData(ViewUtility.createFill());
-    return control;
-  }
-  
-  public void addSelectionChangedListener(ISelectionChangedListener selectionListener)
-  {
-    if (majorViewer != null)
-    {
-      majorViewer.addSelectionChangedListener(selectionListener);
-      majorViewer.addSelectionChangedListener(majorViewerListener);
-    }
-    if (minorViewer != null)
-    {
-      minorViewer.addSelectionChangedListener(selectionListener);
-    }
-  }
-  
-  /**
-   * @return Composite
-   */
-  public Composite getControl()
-  {
-    return control;
-  }
-
-  /**
-   * 
-   */
-  protected XSDConcreteComponent getInput()
-  {
-    return majorViewer.getInput();
-  }
-
-  /**
-   * @param schema
-   */
-  protected void setInput(XSDConcreteComponent input)
-  {
-    majorViewer.setInput(input);
-    minorViewer.setInput(input);
-  }
-
-  /**
-   * @param component
-   */
-  public void setSelection(XSDConcreteComponent component)
-  {
-    majorViewer.setSelection(component);
-  }
-
-  protected MajorViewerSelectionChangedListener majorViewerListener = new MajorViewerSelectionChangedListener();
-  
-  private class MajorViewerSelectionChangedListener implements ISelectionChangedListener
-  {
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-     */
-    public void selectionChanged(SelectionChangedEvent event)
-    {
-      ISelection editPartSelection = event.getSelection();
-      List nodeList = new ArrayList();
-      if (editPartSelection instanceof IStructuredSelection)
-      {
-        for (Iterator i = ((IStructuredSelection)editPartSelection).iterator(); i.hasNext(); )
-        {
-          EditPart editPart = (EditPart)i.next();
-          if (editPart != null)
-          {
-            Object model = editPart.getModel();
-            if (model instanceof XSDConcreteComponent)
-            {
-              Element element = ((XSDConcreteComponent)model).getElement();
-
-              // this test ensures that we don't attempt to select an element for an external schema
-              //
-              if (element instanceof XMLNode)
-              {
-                // now update the minor viewer based on the selected component in the major viewer
-                minorViewer.setInput((XSDConcreteComponent)model);
-                minorViewer.setSelection((XSDConcreteComponent)model);
-              }
-            }
-          }
-        }
-      }                
-    }
-
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/PrintGraphAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/PrintGraphAction.java
deleted file mode 100644
index 53df913..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/PrintGraphAction.java
+++ /dev/null
@@ -1,84 +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.xsd.ui.internal.graph;
-             
-import org.eclipse.jface.action.Action;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.printing.PrintDialog;
-import org.eclipse.swt.printing.Printer;
-import org.eclipse.swt.printing.PrinterData;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-
-
-public class PrintGraphAction extends Action
-{ 
-  protected XSDComponentViewer componentViewer;
-
-  public PrintGraphAction(XSDComponentViewer componentViewer)
-  {
-    super("Print");
-    this.componentViewer = componentViewer;
-  } 
-
-  public void run()
-  {
-    try
-    {
-      PrintDialog dialog = new PrintDialog(Display.getCurrent().getActiveShell());
-      PrinterData data = dialog.open();
-      Printer printer = new Printer(data);
-                                                   
-      Control control = componentViewer.getControl();
-      Display display = Display.getCurrent();
-      Image graphImage = new Image(display, control.getSize().x, control.getSize().y);
-      GC graphGC = new GC(control);
-      graphGC.copyArea(graphImage, 0, 0);
-        
-      ImageData graphImageData = graphImage.getImageData();
-      graphImageData.transparentPixel = -1;
-        
-      Point screenDPI = display.getDPI();
-      Point printerDPI = printer.getDPI();
-      int scaleFactor = printerDPI.x / screenDPI.x;
-      Rectangle trim = printer.computeTrim(0, 0, 0, 0);
-      if (printer.startJob("Print XML Schema Graph")) 
-      {
-        GC gc = new GC(printer);
-        if (printer.startPage()) 
-        {
-          gc.drawImage(
-            graphImage,
-            0,
-            0,
-            graphImageData.width,
-            graphImageData.height,
-            -trim.x,
-            -trim.y,
-            scaleFactor * graphImageData.width,
-            scaleFactor * graphImageData.height);
-          printer.endPage();
-        }
-        printer.endJob();
-      }
-      printer.dispose();
-      graphGC.dispose();
-    }    
-    catch (Exception e)
-    {
-      e.printStackTrace();
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDChildUtility.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDChildUtility.java
deleted file mode 100644
index 887889c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDChildUtility.java
+++ /dev/null
@@ -1,285 +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.xsd.ui.internal.graph;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-import org.eclipse.xsd.util.XSDSwitch;
-              
-
-public class XSDChildUtility
-{              
-  static public List getModelChildren(Object model)
-  {                     
-    XSDChildVisitor visitor = new XSDChildVisitor(model);
-    visitor.visitXSDObject(model); 
-    return visitor.list;
-  }    
-   
-  static public List getImmediateDerivedTypes(XSDComplexTypeDefinition complexType)
-  {
-    ArrayList typesDerivedFrom = new ArrayList();
-
-    // A handy convenience method quickly gets all 
-    // typeDefinitions within our schema; note that 
-    // whether or not this returns types in included, 
-    // imported, or redefined schemas is subject to change
-    List typedefs = complexType.getSchema().getTypeDefinitions();
-
-    for (Iterator iter = typedefs.iterator(); iter.hasNext(); )
-    {
-      XSDTypeDefinition typedef = (XSDTypeDefinition)iter.next();
-      // Walk the baseTypes from this typedef seeing if any 
-      // of them match the requested one
-      if (complexType.equals(typedef.getBaseType()))
-      {
-        // We found it, return the original one and continue
-        typesDerivedFrom.add(typedef);
-      }
-    }
-    return typesDerivedFrom;
-  }
-  // TODO... use the XSDVisitor defined in xsdeditor.util instead
-  //          
-  public static class XSDChildVisitor extends XSDVisitor
-  {
-    Object root;
-    List list = new ArrayList();
-
-    public XSDChildVisitor(Object root)
-    {
-      this.root = root;
-    }                  
-
-    public void visitXSDModelGroup(XSDModelGroup xsdModelGroup)
-    {
-      if (xsdModelGroup != root)
-      {
-        list.add(xsdModelGroup);
-      }                         
-      else
-      {
-        super.visitXSDModelGroup(xsdModelGroup);
-      }
-    }
-
-    public void visitXSDModelGroupDefinition(XSDModelGroupDefinition xsdModelGroupDefinition)
-    {
-      if (xsdModelGroupDefinition != root)
-      {
-        list.add(xsdModelGroupDefinition);
-      }                         
-      else
-      {
-        super.visitXSDModelGroupDefinition(xsdModelGroupDefinition);
-      }
-    }
-
-    public void visitXSDElementDeclaration(XSDElementDeclaration xsdElementDeclaration)
-    {
-      if (xsdElementDeclaration != root)
-      {
-        list.add(xsdElementDeclaration);
-      }                         
-      else
-      {
-        super.visitXSDElementDeclaration(xsdElementDeclaration);
-      }
-    }
-
-    public void visitXSDComplexTypeDefinition(XSDComplexTypeDefinition xsdComplexTypeDefinition)
-    {
-      if (xsdComplexTypeDefinition != root)
-      {                                    
-        if (xsdComplexTypeDefinition.getName() != null || getModelChildren(xsdComplexTypeDefinition).size() > 0)
-        {
-          list.add(xsdComplexTypeDefinition);
-        }
-      }                         
-      else
-      {
-        super.visitXSDComplexTypeDefinition(xsdComplexTypeDefinition);
-      }
-    }    
-
-    public void visitXSDWildcard(XSDWildcard xsdWildCard)
-    {
-      if (xsdWildCard != root)
-      {                                    
-        list.add(xsdWildCard);        
-      }                         
-      else
-      {
-        super.visitXSDWildcard(xsdWildCard);
-      }
-    }
-  }
-               
-
-  public static class XSDVisitor
-  { 
-    int indent = 0;
-                 
-    public void visitXSDObject(Object object)
-    {           
-      if (object == null)
-        return;
-
-      XSDSwitch theSwitch = new XSDSwitch()
-      {   
-        public Object caseXSDComplexTypeDefinition(XSDComplexTypeDefinition object)
-        {
-          visitXSDComplexTypeDefinition(object);
-          return null;
-        } 
-
-        public Object caseXSDAttributeUse(XSDAttributeUse object)
-        {
-          visitXSDAttributeUse(object);
-          return null;
-        }
-
-        public Object caseXSDElementDeclaration(XSDElementDeclaration object)
-        {
-          visitXSDElementDeclaration(object);
-          return null;
-        }
-
-        public Object caseXSDModelGroupDefinition(XSDModelGroupDefinition object)
-        {
-          visitXSDModelGroupDefinition(object);
-          return super.caseXSDModelGroupDefinition(object);
-        }
-
-        public Object caseXSDModelGroup(XSDModelGroup object)
-        {
-          visitXSDModelGroup(object);
-          return super.caseXSDModelGroup(object);
-        }
-
-        public Object caseXSDParticle(XSDParticle object)
-        { 
-          visitXSDParticle(object);
-          return null;
-        } 
-
-        public Object caseXSDSchema(XSDSchema object)
-        { 
-          visitXSDSchema(object);
-          return null;
-        } 
-
-        public Object caseXSDWildcard(XSDWildcard object)
-        { 
-          visitXSDWildcard(object);
-          return null;
-        } 
-      };
-      theSwitch.doSwitch((EObject)object);
-    }
-         
-    public void visitXSDAttributeUse(XSDAttributeUse xsdAttributeUse)
-    {  
-//      printIndented("@" + xsdAttributeUse.getAttributeDeclaration().getName());
-    }
-
-    public void visitXSDSchema(XSDSchema xsdSchema)
-    {         
-//      printIndented("XSDSchema");
-      indent += 2;
-      for (Iterator iterator = xsdSchema.getElementDeclarations().iterator(); iterator.hasNext(); )
-      {
-        visitXSDObject(iterator.next());
-      }
-      indent -= 2;
-    }
-
-    public void visitXSDElementDeclaration(XSDElementDeclaration xsdElementDeclaration)
-    {      
-//      printIndented(xsdElementDeclaration.getName());
-      indent += 2;         
-      XSDTypeDefinition td = xsdElementDeclaration.getTypeDefinition();
-      if (td == null)
-      {
-        td = xsdElementDeclaration.getAnonymousTypeDefinition();
-      }                       
-      visitXSDObject(td);
-      indent -= 2;
-    }
-   
-    public void visitXSDComplexTypeDefinition(XSDComplexTypeDefinition xsdComplexTypeDefinition)
-    {
-//      printIndented("XSDComplexTypeDefinition : " + xsdComplexTypeDefinition.getContent());
-      indent += 2;
-      for (Iterator i = xsdComplexTypeDefinition.getAttributeUses().iterator(); i.hasNext(); )
-      {        
-        visitXSDObject((XSDAttributeUse)i.next());
-      }
-      visitXSDObject(xsdComplexTypeDefinition.getContent());
-      indent -= 2;
-    }
-
-    public void visitXSDModelGroup(XSDModelGroup xsdModelGroup)
-    {
-//      printIndented("XSDModelGroup");
-      indent += 2;
-      for (Iterator iterator = xsdModelGroup.getContents().iterator(); iterator.hasNext(); )
-      {
-        visitXSDObject(iterator.next());
-      } 
-      indent -= 2;
-    }     
-
-    public void visitXSDModelGroupDefinition(XSDModelGroupDefinition xsdModelGroupDefinition)
-    {
-//      printIndented("XSDModelGroupDefinition");
-      indent += 2;
-      visitXSDObject(xsdModelGroupDefinition.getResolvedModelGroupDefinition().getModelGroup());
-      indent -= 2;
-    }
-
-    public void visitXSDParticle(XSDParticle xsdParticle)
-    {
-//      printIndented("XSDParticle");
-      indent += 2;                 
-      if (xsdParticle.getContent() != null)
-        visitXSDObject(xsdParticle.getContent());
-      indent -= 2;
-    } 
-
-    public void visitXSDWildcard(XSDWildcard object)
-    { 
-//      printIndented("XSDWildcard");
-    }
-
-    public void printIndented(String string)
-    { 
-      //String spaces = "";
-      //for (int i = 0; i < indent; i++)
-      //{
-      //  spaces += " ";
-      //}               
-      //System.out.println(spaces + string);      
-    }
-  } 
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDComponentViewer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDComponentViewer.java
deleted file mode 100644
index c5aa0b2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDComponentViewer.java
+++ /dev/null
@@ -1,105 +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.xsd.ui.internal.graph;
-             
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ComponentViewerRootEditPart;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDSchema;
-
-
-public class XSDComponentViewer extends BaseGraphicalViewer
-{               
-  protected ComponentViewerRootEditPart componentViewerRootEditPart;
-  public XSDComponentViewer(XSDEditor editor, ISelectionProvider menuSelectionProvider)
-  {
-    super(editor, menuSelectionProvider);       
-  }        
-
-  public void setInput(XSDConcreteComponent component)
-  {               
-    if (isInputEnabled)
-    {
-      input = null;         
-
-      if (component instanceof XSDElementDeclaration || 
-          component instanceof XSDSchema ||
-          component instanceof XSDModelGroup ||   
-          component instanceof XSDModelGroupDefinition ||
-          component instanceof XSDComplexTypeDefinition)
-      {            
-        input = component;
-      }
-      
-      componentViewerRootEditPart.setInput(input);
-      if (!(input instanceof XSDSchema))
-      {
-        editor.getGraphViewer().backButton.setEnabled(true);
-      }
-    }
-  }     
-
-  public void setSelection(XSDConcreteComponent component)
-  {                    
-    if (isSelectionEnabled)
-    {                      
-      //System.out.println("XSDComponentViewer.setSelection(" + component + ")");
-      List editPartList = new ArrayList();    
-      StructuredSelection selection = new StructuredSelection();
-      if (component instanceof XSDElementDeclaration || 
-          component instanceof XSDSchema ||
-          component instanceof XSDModelGroup ||        
-          component instanceof XSDModelGroupDefinition ||
-          component instanceof XSDComplexTypeDefinition)
-      {                     
-        if (component != null)
-        {
-          EditPart editPart = getEditPart(componentViewerRootEditPart, component);    
-          if (editPart != null)
-          { 
-            // TODO ... take a look at this to figure our why a newly added component
-            // seems to have the wrong bounds at this point... is this a layout issue?           
-            // As a temp hack I'm ignoring the selection of component with bounds (x, y) == (0, 0)
-            // Perhaps a delayed selection is required?
-            Rectangle bounds = ((GraphicalEditPart)editPart).getFigure().getBounds();
-            if (bounds.x > 0 || bounds.y > 0)
-            {
-              editPartList.add(editPart); 
-            }
-          } 
-        }    
-      }              
-      setSelection(new StructuredSelection(editPartList));
-    }
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.gef.ui.parts.AbstractEditPartViewer#hookControl()
-   */
-  protected void hookControl()
-  {
-    super.hookControl();
-    componentViewerRootEditPart = new ComponentViewerRootEditPart();
-    setContents(componentViewerRootEditPart);
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphUtil.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphUtil.java
deleted file mode 100644
index a19f20b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphUtil.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.xsd.ui.internal.graph;
-
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.w3c.dom.Element;
-              
-
-public class XSDGraphUtil
-{                        
-  public static boolean isEditable(Object model)
-  {                    
-    boolean result = false;
-    if (model instanceof XSDConcreteComponent)
-    {
-      Element element = ((XSDConcreteComponent)model).getElement();
-      // this test ensures that we don't attempt to select an element for an external schema
-      //
-      if (element instanceof XMLNode)
-      {
-         result = true;
-      }
-    }                      
-    return result;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphViewer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphViewer.java
deleted file mode 100644
index a15cfc7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphViewer.java
+++ /dev/null
@@ -1,598 +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.xsd.ui.internal.graph;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.gef.EditPart;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.custom.ViewForm;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.TraverseEvent;
-import org.eclipse.swt.events.TraverseListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.MenuItem;
-import org.eclipse.swt.widgets.ToolBar;
-import org.eclipse.swt.widgets.ToolItem;
-import org.eclipse.ui.part.PageBook;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.XSDSelectionManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.TopLevelComponentEditPart;
-import org.eclipse.wst.xsd.ui.internal.provider.CategoryAdapter;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDNotationDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-public class XSDGraphViewer implements ISelectionChangedListener
-{
-  protected PageBook pageBook;
-  protected Control componentViewerControl;
-  protected Control inheritanceViewerControl;
-  protected Control subGroupsViewerControl;
-  protected XSDComponentViewer componentViewer;
-  protected XSDInheritanceViewer inheritanceViewer;
-  protected XSDSubstitutionGroupsViewer subGroupsViewer;
-  protected XSDSelectionManager xsdSelectionManager;
-  protected XSDSchema schema;
-  protected InternalSelectionProvider internalSelectionProvider = new InternalSelectionProvider();
-  protected XSDEditor editor;
-  protected PrintGraphAction printGraphAction;
-  protected SashForm sashForm;
-  protected ToolItem backButton;
-
-  public XSDGraphViewer(XSDEditor editor)
-  {
-    super();
-    this.editor = editor;
-  }
-
-  public void setSchema(XSDSchema schema)
-  {
-    this.schema = schema;
-  }
-  ToolBar graphToolBar; // the toolbar at the top of the graph view
-  ToolItem toolItem; // the view tool item
-  ViewForm form; // view form for holding all the views
-  Composite frameBar; // The composite that contains the toolbar
-  Composite c; // temporary blank page. Clean this up when all views completed
-  LinkedGraphViewer linkInheritanceViewer;
-
-  protected void createInheritanceViewer(Composite parent)
-  {
-    linkInheritanceViewer = new LinkedGraphViewer(editor, internalSelectionProvider);
-    BaseGraphicalViewer graphViewer = new XSDInheritanceViewer(editor, internalSelectionProvider);
-    linkInheritanceViewer.setMajorViewer(graphViewer);
-    graphViewer = new XSDComponentViewer(editor, editor.getSelectionManager());
-    linkInheritanceViewer.setMinorViewer(graphViewer);
-    linkInheritanceViewer.createControl(parent);
-  }
-  LinkedGraphViewer linkSubstitutionGroupViewer;
-
-  protected void createSubstitutionGroupViewer(Composite parent)
-  {
-    linkSubstitutionGroupViewer = new LinkedGraphViewer(editor, internalSelectionProvider);
-    BaseGraphicalViewer graphViewer = new XSDSubstitutionGroupsViewer(editor, internalSelectionProvider);
-    linkSubstitutionGroupViewer.setMajorViewer(graphViewer);
-    graphViewer = new XSDComponentViewer(editor, internalSelectionProvider);
-    linkSubstitutionGroupViewer.setMinorViewer(graphViewer);
-    linkSubstitutionGroupViewer.createControl(parent);
-  }
-  static private Color dividerColor;
-
-  public Control createControl(Composite parent)
-  {
-    pageBook = new PageBook(parent, 0);
-    
-    //componentViewer = new XSDComponentViewer(editor, internalSelectionProvider);
-    componentViewer = new XSDComponentViewer(editor, editor.getSelectionManager());
-    ViewUtility util = new ViewUtility();
-    final Composite client;
-    String designLayoutPosition = XSDEditorPlugin.getPlugin().getDesignLayoutPosition();
-    form = new ViewForm(pageBook, SWT.NONE);
-    frameBar = new Composite(form, SWT.NONE);
-    org.eclipse.swt.layout.GridLayout frameLayout = new org.eclipse.swt.layout.GridLayout();
-    frameLayout.marginWidth = 0;
-    frameLayout.marginHeight = 0;
-    frameBar.setLayout(frameLayout);
-    graphToolBar = new ToolBar(frameBar, SWT.FLAT);
-    graphToolBar.addTraverseListener(new TraverseListener()
-    {
-      public void keyTraversed(TraverseEvent e)
-      {
-        if (e.detail == SWT.TRAVERSE_MNEMONIC)
-          e.doit = false;
-      }
-    });
-    backButton = new ToolItem(graphToolBar, SWT.PUSH);
-    backButton.setImage(XSDEditorPlugin.getXSDImage("icons/back.gif")); //$NON-NLS-1$
-    backButton.setToolTipText(XSDEditorPlugin.getXSDString("_UI_HOVER_BACK_TO_SCHEMA_VIEW")); //$NON-NLS-1$
-    backButton.setEnabled(false);
-    backButton.addSelectionListener(new SelectionAdapter()
-    {
-      public void widgetSelected(SelectionEvent e)
-      {
-        editor.getGraphViewer().setInput(editor.getXSDSchema());
-        // internalSelectionProvider.setSelection(new StructuredSelection(editor.getXSDSchema()));
-        editor.getSelectionManager().setSelection(new StructuredSelection(editor.getXSDSchema()));
-      }
-    });
-    // TEMPORARILY REMOVE DIFFERENT VIEWS
-    //    toolItem = new ToolItem(graphToolBar, SWT.DROP_DOWN);
-    //
-    //    // set default to containment
-    //// toolItem.setText(XSDEditorPlugin.getXSDString("_UI_CONTAINMENT"));
-    //    toolItem.addSelectionListener(new SelectionAdapter()
-    //    {
-    //      public void widgetSelected(SelectionEvent e)
-    //      {
-    //        Menu menu = new Menu(graphToolBar);
-    //        if (menu != null)
-    //        {
-    //          if (!showGraphMenu(menu))
-    //          {
-    //            frameBar.setVisible(false);
-    //            return;
-    //          }
-    //          Rectangle b = toolItem.getBounds();
-    //          org.eclipse.swt.graphics.Point p = toolItem.getParent().toDisplay(new
-    // org.eclipse.swt.graphics.Point(b.x, b.y + b.height));
-    //          menu.setLocation(p.x, p.y);
-    //          menu.setVisible(true);
-    //        }
-    //      }
-    //    });
-    form.setTopLeft(frameBar);
-    //    createInheritanceViewer(form);
-    //    createSubstitutionGroupViewer(form);
-    componentViewerControl = componentViewer.createControl(form);
-    //inheritanceViewerControl = inheritanceViewer.createControl(form);
-    //subGroupsViewerControl = subGroupsViewer.createControl(form);
-    c = ViewUtility.createComposite(form, 1);
-    form.setContent(componentViewerControl);
-    // componentViewerControl.setData("layout ratio", new Float(0.65));
-    form.setData("layout ratio", new Float(0.65));
-    if (dividerColor == null)
-    {
-      dividerColor = new Color(componentViewerControl.getDisplay(), 143, 141, 138);
-    }
-    //KCPort
-    //    client.addPaintListener(new PaintListener()
-    //    {
-    //      /**
-    //       * @see org.eclipse.swt.events.PaintListener#paintControl(PaintEvent)
-    //       */
-    //      public void paintControl(PaintEvent e)
-    //      {
-    //        Object source = e.getSource();
-    //        if (source instanceof Composite)
-    //        {
-    //          Composite comp = (Composite)source;
-    //          Rectangle boundary = comp.getClientArea();
-    //          e.gc.setForeground(dividerColor);
-    //          e.gc.drawLine(boundary.x, boundary.y, boundary.x + boundary.width,
-    // boundary.y);
-    //          editor.setDesignWeights(sashForm.getWeights(), true);
-    //        }
-    //      }
-    //    });
-    // KCPort
-    //    designView = new DesignViewer(editor);
-    //    final Control design = designView.createControl(client);
-    //    design.setLayoutData(ViewUtility.createFill());
-    //    client.setData("layout ratio", new Float(0.35));
-    //    enableDesignView(editor.isCombinedDesignAndSourceView());
-    //    pageBook.showPage(sashForm);
-    pageBook.showPage(form);
-    componentViewer.addSelectionChangedListener(internalSelectionProvider);
-    //inheritanceViewer.addSelectionChangedListener(this);
-    // Temporarily remove graph tool bar
-    //    linkInheritanceViewer.addSelectionChangedListener(this);
-    //    linkSubstitutionGroupViewer.addSelectionChangedListener(this);
-    printGraphAction = new PrintGraphAction(componentViewer);
-    return pageBook;
-    //    return form;
-  }
-
-  private boolean showGraphMenu(Menu menu)
-  {
-    MenuItem containmentMenuItem = new MenuItem(menu, SWT.RADIO);
-    containmentMenuItem.setText(XSDEditorPlugin.getXSDString("_UI_CONTAINMENT"));
-    containmentMenuItem.addSelectionListener(new SelectionAdapter()
-    {
-      public void widgetSelected(SelectionEvent e)
-      {
-        toolItem.setText(XSDEditorPlugin.getXSDString("_UI_CONTAINMENT"));
-        frameBar.layout(true);
-        graphToolBar.layout(true);
-        form.setContent(componentViewerControl);
-        // retrieve latest input which could have changed...from designView ??
-        // get it directly?
-        // KCPort
-        //        setInput(designView.getInput());
-      }
-    });
-    MenuItem inheritanceMenuItem = new MenuItem(menu, SWT.RADIO);
-    inheritanceMenuItem.setText(XSDEditorPlugin.getXSDString("_UI_INHERITANCE"));
-    inheritanceMenuItem.addSelectionListener(new SelectionAdapter()
-    {
-      public void widgetSelected(SelectionEvent e)
-      {
-        toolItem.setText(XSDEditorPlugin.getXSDString("_UI_INHERITANCE"));
-        frameBar.layout(true);
-        graphToolBar.layout(true);
-        //        form.setContent(inheritanceViewerControl);
-        form.setContent(linkInheritanceViewer.getControl());
-        if (linkInheritanceViewer.getInput() == null)
-        {
-          linkInheritanceViewer.setInput(schema);
-        }
-      }
-    });
-    MenuItem subGroupsMenuItem = new MenuItem(menu, SWT.RADIO);
-    subGroupsMenuItem.setText(XSDEditorPlugin.getXSDString("_UI_SUBSTITUTION_GROUPS"));
-    subGroupsMenuItem.addSelectionListener(new SelectionAdapter()
-    {
-      public void widgetSelected(SelectionEvent e)
-      {
-        toolItem.setText(XSDEditorPlugin.getXSDString("_UI_SUBSTITUTION_GROUPS"));
-        frameBar.layout(true);
-        graphToolBar.layout(true);
-        form.setContent(linkSubstitutionGroupViewer.getControl());
-        // retrieve latest input which could have changed...from designView ??
-        // get it directly?
-        //        setInput(designView.getInput());
-        if (linkSubstitutionGroupViewer.getInput() == null)
-        {
-          linkSubstitutionGroupViewer.setInput(schema);
-        }
-      }
-    });
-    if (toolItem.getText().equals(XSDEditorPlugin.getXSDString("_UI_CONTAINMENT")))
-    {
-      containmentMenuItem.setSelection(true);
-    }
-    else if (toolItem.getText().equals(XSDEditorPlugin.getXSDString("_UI_INHERITANCE")))
-    {
-      inheritanceMenuItem.setSelection(true);
-    }
-    else if (toolItem.getText().equals(XSDEditorPlugin.getXSDString("_UI_SUBSTITUTION_GROUPS")))
-    {
-      subGroupsMenuItem.setSelection(true);
-    }
-    return true;
-  }
-
-  public Action getPrintGraphAction()
-  {
-    return printGraphAction;
-  }
-
-  public void updateDesignLayout(int newLayout)
-  {
-    sashForm.setOrientation(newLayout);
-    sashForm.layout();
-  }
-
-  public SashForm getSashForm()
-  {
-    return sashForm;
-  }
-
-  public void enableDesignView(boolean enable)
-  {
-  }
-
-  public XSDComponentViewer getComponentViewer()
-  {
-    return componentViewer;
-  }
-  
-  public void setBackButtonEnabled(boolean state)
-  {
-    backButton.setEnabled(state);
-  }
-
-  public void setInput(Object object)
-  {
-    if (object instanceof XSDConcreteComponent)
-    {
-      XSDConcreteComponent xsdComp = (XSDConcreteComponent) object;
-      if (xsdComp instanceof XSDSchema)
-      {
-        setBackButtonEnabled(false);
-      }
-      else
-      {
-        setBackButtonEnabled(true);
-      }
-      componentViewer.setInput(xsdComp);
-      componentViewer.setSelection(xsdComp);
-    }   
-  }
-
-  protected boolean isDeleted(XSDConcreteComponent component)
-  {
-    boolean result = false;
-    if (component != null && component.getElement() != null)
-    {
-      result = component.getElement().getParentNode() == null;
-    }
-    return result;
-  }
-
-  public void setSelectionManager(XSDSelectionManager newSelectionManager)
-  {
-    // disconnect from old one
-    if (xsdSelectionManager != null)
-    {
-      xsdSelectionManager.removeSelectionChangedListener(this);
-      internalSelectionProvider.removeSelectionChangedListener(xsdSelectionManager);
-    }
-    xsdSelectionManager = newSelectionManager;
-    // connect to new one
-    if (xsdSelectionManager != null)
-    {
-      xsdSelectionManager.addSelectionChangedListener(this);
-      internalSelectionProvider.addSelectionChangedListener(xsdSelectionManager);
-    }
-  }
-
-  // this method is called by the SelectionManager to notify the graph view
-  // that the editor selection has changed
-  //
-  public void selectionChanged(SelectionChangedEvent event)
-  {
-    // here we check the selection source to ensure that this selection came
-    // from a different view (not from the graph view)
-    if (event.getSource() != getComponentViewer())
-    { 
-      handleSelection(event, true);
-    }
-  }
-
-  protected XSDConcreteComponent getTopLevelComponent(XSDConcreteComponent component)
-  {
-    XSDConcreteComponent prev = component;
-    XSDConcreteComponent container = component;
-    while ( container != null && !(container instanceof XSDSchema))
-    {
-      prev = container;     
-      container = container.getContainer();
-    }
-    return container != null ? prev : null;
-  }
-  
-  // TODO.. we need to clean this method up and add comments to clarify what's going on
-  //
-  protected void handleSelection(SelectionChangedEvent event, boolean isSelectionRequired)
-  {
-    StructuredSelection s = (StructuredSelection)event.getSelection();
-    Object obj = s.getFirstElement();
-    if (obj instanceof XSDConcreteComponent)
-    {
-      XSDConcreteComponent selectedComponent = (XSDConcreteComponent)obj;
-      Object currentInput = getComponentViewer().getInput();
-      
-      // in this case we're looking at a top level view
-      // so if the selection is a 'non-top-level' component we need to do a set input
-      XSDSchema topLevelSchema = null;
-      if (currentInput instanceof XSDSchema)
-      {
-        if (selectedComponent instanceof XSDSchema || 
-            selectedComponent.getContainer() instanceof XSDSchema)
-        {
-          topLevelSchema = (XSDSchema)currentInput;
-        }
-      }
-      if (selectedComponent instanceof XSDSchemaDirective || 
-          selectedComponent instanceof XSDNotationDeclaration)      
-      {
-        topLevelSchema = selectedComponent.getSchema();
-      }
-      else if (selectedComponent instanceof XSDAttributeGroupContent ||
-               selectedComponent instanceof XSDWildcard)
-      {
-        if (selectedComponent.getContainer() instanceof XSDAttributeGroupDefinition)
-        {
-          topLevelSchema = selectedComponent.getSchema();
-        }
-      }
-      else if (selectedComponent instanceof XSDSimpleTypeDefinition)
-      {
-        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)selectedComponent;
-        EditPart editPart = componentViewer.getEditPart(componentViewer.getRootEditPart(), st);
-        if (editPart == null)
-        {
-          if (st.getContainer() == editor.getXSDSchema())
-          {
-            topLevelSchema = selectedComponent.getSchema();
-          }
-        }
-      }
-      
-      if (topLevelSchema != null)
-      {
-        setInput(topLevelSchema);
-        // TODO... this is not 'quite' right
-        // it should be possible to view in
-      }  
-      else
-      { 
-        EditPart editPart = getComponentViewer().getEditPart(getComponentViewer().getRootEditPart(), obj);
-        if (editPart == null)
-        {  
-          XSDConcreteComponent topLevelComponent = getTopLevelComponent(selectedComponent);
-          if (topLevelComponent != null)
-          {
-            setInput(topLevelComponent);  
-          }
-        }  
-      }  
-      // now we handle the selection
-      //
-      if (isSelectionRequired)
-      {  
-        EditPart editPart = getComponentViewer().getRootEditPart();        
-        EditPart newSelectedEditPart = getComponentViewer().getEditPart(editPart, obj);
-        if (newSelectedEditPart != null)
-        {
-          if (newSelectedEditPart instanceof TopLevelComponentEditPart)
-          {
-            ((TopLevelComponentEditPart)newSelectedEditPart).setScroll(true);
-          }
-          getComponentViewer().setSelection(new StructuredSelection(newSelectedEditPart));
-        }
-      }      
-    }
-    else if (obj instanceof CategoryAdapter)
-    {
-      setInput(((CategoryAdapter)obj).getXSDSchema());  
-    }
-  }
-
-  protected Element getElementNode(Node node)
-  {
-    while (!(node instanceof Element))
-    {
-      if (node instanceof Attr)
-      {
-        node = ((Attr) node).getOwnerElement();
-      }
-      else if (node instanceof Text)
-      {
-        Node sibling = node.getNextSibling();
-        if (sibling == null)
-        {
-          break;
-        }
-        node = sibling;
-      }
-      else
-      {
-        Node parent = node.getParentNode();
-        if (parent == null)
-        {
-          break;
-        }
-        node = node.getParentNode();
-      }
-    }
-    return node instanceof Element ? (Element) node : null;
-  }
-
-
-
-  // This class listens to the graph view and converts edit part selection
-  // events
-  // into XSD component selection events that can be 'fired' to the
-  // selectionManager
-  //
-  class InternalSelectionProvider implements ISelectionProvider, ISelectionChangedListener
-  {
-    protected List listenerList = new ArrayList();
-    protected ISelection selection = new StructuredSelection();
-
-    public void addSelectionChangedListener(ISelectionChangedListener listener)
-    {
-      listenerList.add(listener);
-    }
-
-    public void removeSelectionChangedListener(ISelectionChangedListener listener)
-    {
-      listenerList.remove(listener);
-    }
-
-    public ISelection getSelection()
-    {
-      return selection;
-    }
-
-    protected void notifyListeners(SelectionChangedEvent event)
-    {
-      for (Iterator i = listenerList.iterator(); i.hasNext();)
-      {
-        ISelectionChangedListener listener = (ISelectionChangedListener) i.next();
-        listener.selectionChanged(event);
-      }
-    }
-
-    public StructuredSelection convertSelectionFromEditPartToModel(ISelection editPartSelection)
-    {
-      List selectedModelObjectList = new ArrayList();
-      if (editPartSelection instanceof IStructuredSelection)
-      {
-        for (Iterator i = ((IStructuredSelection) editPartSelection).iterator(); i.hasNext();)
-        {
-          Object obj = i.next();
-          Object model = null;
-          if (obj instanceof EditPart)
-          {
-            EditPart editPart = (EditPart) obj;
-            model = editPart.getModel();
-            // Convert category to XSDSchema
-            // if (editPart instanceof CategoryEditPart)
-            // {
-            //   model = ((Category)((CategoryEditPart)editPart).getModel()).getXSDSchema();
-            // }
-          }
-          else if (obj instanceof XSDConcreteComponent)
-          {
-            //cs .. not sure why would we'd ever hit this case?
-            model = obj;
-          }
-          if (model != null)//&& model instanceof XSDConcreteComponent)
-          {
-            selectedModelObjectList.add(model);
-          }
-        }
-      }
-      return new StructuredSelection(selectedModelObjectList);
-    }
-
-    public void setSelection(ISelection selection)
-    {
-      this.selection = selection;
-    }
-
-    // This method gets called when an edit part in the graph view is selected
-    //
-    public void selectionChanged(SelectionChangedEvent event)
-    {
-      ISelection newSelection = convertSelectionFromEditPartToModel(event.getSelection());
-      this.selection = newSelection;
-      SelectionChangedEvent newEvent = new SelectionChangedEvent(getComponentViewer(), newSelection);
-      notifyListeners(newEvent);
-    }
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphicalViewerKeyHandler.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphicalViewerKeyHandler.java
deleted file mode 100644
index b6c8026..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDGraphicalViewerKeyHandler.java
+++ /dev/null
@@ -1,352 +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.xsd.ui.internal.graph;
-import java.lang.ref.WeakReference;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.PositionConstants;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.ConnectionEditPart;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gef.GraphicalViewer;
-import org.eclipse.gef.KeyHandler;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ExpandableGraphNodeEditPart;
-
-
-public class XSDGraphicalViewerKeyHandler extends KeyHandler
-{
-    public XSDGraphicalViewerKeyHandler(GraphicalViewer viewer)
-    {
-      this.viewer = viewer;
-    }
-    
-    private WeakReference cachedNode;
-    int counter;
-    private GraphicalViewer viewer;
-
-    private boolean acceptConnection(KeyEvent event)
-    {
-      return event.character == '/'
-        || event.character == '?'
-        || event.character == '\\'
-        || event.character == '|';
-    }
-    private boolean acceptIntoContainer(KeyEvent event)
-    {
-      return (((event.stateMask & SWT.ALT) != 0)
-        && (event.keyCode == SWT.ARROW_RIGHT)) || (event.keyCode == SWT.ARROW_RIGHT);
-//      return (event.keyCode == SWT.ARROW_RIGHT);
-    }
-    private boolean acceptLeaveConnection(KeyEvent event)
-    {
-      int key = event.keyCode;
-      if (getFocus() instanceof ConnectionEditPart)
-        if ((key == SWT.ARROW_UP)
-          || (key == SWT.ARROW_RIGHT)
-          || (key == SWT.ARROW_DOWN)
-          || (key == SWT.ARROW_LEFT))
-          return true;
-      return false;
-    }
-    private boolean acceptLeaveContents(KeyEvent event)
-    {
-      int key = event.keyCode;
-      return getFocus() == getViewer().getContents()
-        && ((key == SWT.ARROW_UP)
-          || (key == SWT.ARROW_RIGHT)
-          || (key == SWT.ARROW_DOWN)
-          || (key == SWT.ARROW_LEFT));
-    }
-    private boolean acceptOutOf(KeyEvent event)
-    {
-      return (((event.stateMask & SWT.ALT) != 0) && (event.keyCode == SWT.ARROW_LEFT)) || (event.keyCode == SWT.ARROW_LEFT);
-//      return (event.keyCode == SWT.ARROW_LEFT);
-    }
-    private ConnectionEditPart findConnection(
-      GraphicalEditPart node,
-      ConnectionEditPart current,
-      boolean forward)
-    {
-      List connections = new ArrayList(node.getSourceConnections());
-      connections.addAll(node.getTargetConnections());
-      if (connections.isEmpty())
-        return null;
-      if (forward)
-        counter++;
-      else
-        counter--;
-      while (counter < 0)
-        counter += connections.size();
-      counter %= connections.size();
-      return (ConnectionEditPart) connections.get(counter % connections.size());
-    }
-    /*
-     * pStart is a point in absolute coordinates.
-     */
-    private GraphicalEditPart findSibling(
-      List siblings,
-      Point pStart,
-      int direction,
-      EditPart exclude)
-    {
-      GraphicalEditPart epCurrent;
-      GraphicalEditPart epFinal = null;
-      IFigure figure;
-      Point pCurrent;
-      int distance = Integer.MAX_VALUE;
-      Iterator iter = siblings.iterator();
-      while (iter.hasNext())
-      {
-        epCurrent = (GraphicalEditPart) iter.next();
-        if (epCurrent == exclude)
-          continue;
-        figure = epCurrent.getFigure();
-        pCurrent = getInterestingPoint(figure);
-        figure.translateToAbsolute(pCurrent);
-        if (pStart.getPosition(pCurrent) != direction)
-          continue;
-        int d = pCurrent.getDistanceOrthogonal(pStart);
-        if (d < distance)
-        {
-          distance = d;
-          epFinal = epCurrent;
-        }
-      }
-      return epFinal;
-    }
-    Point getInterestingPoint(IFigure figure)
-    {
-//      return figure.getBounds().getCenter();
-      return figure.getBounds().getTopLeft();
-    }
-    /**
-     * Returns the cached node.  It is possible that the node is not longer in the viewer but has
-     * not been garbage collected yet.
-     */
-    private GraphicalEditPart getCachedNode()
-    {
-      if (cachedNode == null)
-        return null;
-      if (cachedNode.isEnqueued())
-        return null;
-      return (GraphicalEditPart) cachedNode.get();
-    }
-    GraphicalEditPart getFocus()
-    {
-      return (GraphicalEditPart) getViewer().getFocusEditPart();
-    }
-    List getNavigationSiblings()
-    {
-      return getFocus().getParent().getChildren();
-    }
-    protected GraphicalViewer getViewer()
-    {
-      return viewer;
-    }
-    public boolean keyPressed(KeyEvent event)
-    {
-      if (event.character == ' ')
-      {
-        processSelect(event);
-        return true;
-      }
-      else if (acceptIntoContainer(event))
-      {
-        navigateIntoContainer(event);
-        return true;
-      }
-      else if (acceptOutOf(event))
-      {
-        navigateOut(event);
-        return true;
-      }
-      else if (acceptConnection(event))
-      {
-        navigateConnections(event);
-        return true;
-      }
-      else if (acceptLeaveConnection(event))
-      {
-        navigateOutOfConnection(event);
-        return true;
-      }
-      else if (acceptLeaveContents(event))
-      {
-        navigateIntoContainer(event);
-        return true;
-      }
-      switch (event.keyCode)
-      {
-        case SWT.ARROW_LEFT :
-          return navigateNextSibling(event, PositionConstants.WEST);
-        case SWT.ARROW_RIGHT :
-          return navigateNextSibling(event, PositionConstants.EAST);
-        case SWT.ARROW_UP :
-          return navigateNextSibling(event, PositionConstants.NORTH);
-        case SWT.ARROW_DOWN :
-          return navigateNextSibling(event, PositionConstants.SOUTH);
-        case SWT.HOME :
-          return navigateJumpSibling(event, PositionConstants.WEST);
-        case SWT.END :
-          return navigateJumpSibling(event, PositionConstants.EAST);
-        case SWT.PAGE_DOWN :
-          return navigateJumpSibling(event, PositionConstants.SOUTH);
-        case SWT.PAGE_UP :
-          return navigateJumpSibling(event, PositionConstants.NORTH);
-      }
-      return super.keyPressed(event);
-    }
-    private void navigateConnections(KeyEvent event)
-    {
-      GraphicalEditPart focus = getFocus();
-      ConnectionEditPart current = null;
-      GraphicalEditPart node = getCachedNode();
-      if (focus instanceof ConnectionEditPart)
-      {
-        current = (ConnectionEditPart) focus;
-        if (node == null
-          || (node != current.getSource() && node != current.getTarget()))
-        {
-          node = (GraphicalEditPart) current.getSource();
-          counter = 0;
-        }
-      }
-      else
-      {
-        node = focus;
-      }
-      setCachedNode(node);
-      boolean forward = event.character == '/' || event.character == '?';
-      ConnectionEditPart next = findConnection(node, current, forward);
-      navigateTo(next, event);
-    }
-    private void navigateIntoContainer(KeyEvent event)
-    {
-      GraphicalEditPart focus = getFocus();
-      List childList = focus.getChildren();
-
-      if (focus instanceof ExpandableGraphNodeEditPart)
-      {
-        if (!((ExpandableGraphNodeEditPart)focus).isExpanded())
-        {
-          ((ExpandableGraphNodeEditPart)focus).doPerformExpandOrCollapse();
-        }
-      }
-
-      Point tl = focus.getContentPane().getBounds().getTopLeft();
-      int minimum = Integer.MAX_VALUE;
-      int current;
-      GraphicalEditPart closestPart = null;
-      for (int i = 0; i < childList.size(); i++)
-      {
-        GraphicalEditPart ged = (GraphicalEditPart) childList.get(i);
-        Rectangle childBounds = ged.getFigure().getBounds();
-        current = (childBounds.x - tl.x) + (childBounds.y - tl.y);
-        if (current < minimum)
-        {
-          minimum = current;
-          closestPart = ged;
-        }
-      }
-      if (closestPart != null)
-        navigateTo(closestPart, event);
-    }
-    private boolean navigateJumpSibling(KeyEvent event, int direction)
-    {
-      return false;
-    }
-    private boolean navigateNextSibling(KeyEvent event, int direction)
-    {
-      GraphicalEditPart epStart = getFocus();
-      IFigure figure = epStart.getFigure();
-      Point pStart = getInterestingPoint(figure);
-      figure.translateToAbsolute(pStart);
-      EditPart next =
-        findSibling(getNavigationSiblings(), pStart, direction, epStart);
-      if (next == null)
-        return false;
-      navigateTo(next, event);
-      return true;
-    }
-    private void navigateOut(KeyEvent event)
-    {
-      if (getFocus() == null
-        || getFocus() == getViewer().getContents()
-        || getFocus().getParent() == getViewer().getContents())
-        return;
-
-      EditPart parent = getFocus().getParent();
-      if (((event.stateMask & SWT.ALT) != 0) && (event.keyCode == SWT.ARROW_LEFT))
-      {
-        if ((parent != null) && (parent instanceof ExpandableGraphNodeEditPart))
-        {
-          if (((ExpandableGraphNodeEditPart)parent).isExpanded())
-          {
-            ((ExpandableGraphNodeEditPart)parent).doPerformExpandOrCollapse();
-          }
-        }
-      }
-      navigateTo(parent, event);
-//      navigateTo(getFocus().getParent(), event);
-    }
-    private void navigateOutOfConnection(KeyEvent event)
-    {
-      GraphicalEditPart cached = getCachedNode();
-      ConnectionEditPart conn = (ConnectionEditPart) getFocus();
-      if (cached != null
-        && (cached == conn.getSource() || cached == conn.getTarget()))
-        navigateTo(cached, event);
-      else
-        navigateTo(conn.getSource(), event);
-    }
-    void navigateTo(EditPart part, KeyEvent event)
-    {
-      if (part == null)
-        return;
-      if ((event.stateMask & SWT.SHIFT) != 0)
-      {
-        getViewer().appendSelection(part);
-        getViewer().setFocus(part);
-      }
-      else if ((event.stateMask & SWT.CONTROL) != 0)
-        getViewer().setFocus(part);
-      else
-        getViewer().select(part);
-    }
-    private void processSelect(KeyEvent event)
-    {
-      EditPart part = getViewer().getFocusEditPart();
-      if ((event.stateMask & SWT.CONTROL) != 0
-        && part.getSelected() != EditPart.SELECTED_NONE)
-      {
-        getViewer().deselect(part);
-      }
-      else
-      {
-        getViewer().appendSelection(part);
-      }
-      getViewer().setFocus(part);
-    }
-    private void setCachedNode(GraphicalEditPart node)
-    {
-      if (node == null)
-        cachedNode = null;
-      else
-        cachedNode = new WeakReference(node);
-    }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDInheritanceViewer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDInheritanceViewer.java
deleted file mode 100644
index 71a8205..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDInheritanceViewer.java
+++ /dev/null
@@ -1,98 +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.xsd.ui.internal.graph;
-             
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.SubstitutionGroupViewerRootEditPart;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDSchema;
-
-
-public class XSDInheritanceViewer extends BaseGraphicalViewer
-{               
-  protected SubstitutionGroupViewerRootEditPart inheritanceViewerRootEditPart;
-  public XSDInheritanceViewer(XSDEditor editor, ISelectionProvider menuSelectionProvider)
-  {
-    super(editor, menuSelectionProvider);       
-  }        
-
-  public void setInput(XSDConcreteComponent component)
-  {               
-    if (isInputEnabled)
-    {
-      input = null;         
-
-      if (component instanceof XSDSchema ||
-          component instanceof XSDComplexTypeDefinition)
-      {            
-        input = component;
-      }
-      
-      inheritanceViewerRootEditPart.setInput(input);       
-    }
-  }     
-
-  public void setSelection(XSDConcreteComponent component)
-  {                    
-    if (isSelectionEnabled)
-    {                      
-      //System.out.println("XSDComponentViewer.setSelection(" + component + ")");
-      List editPartList = new ArrayList();    
-      StructuredSelection selection = new StructuredSelection();
-      if (component instanceof XSDElementDeclaration || 
-          component instanceof XSDSchema ||
-          component instanceof XSDModelGroup ||        
-          component instanceof XSDModelGroupDefinition ||
-          component instanceof XSDComplexTypeDefinition)
-      {                     
-        if (component != null)
-        {
-          EditPart editPart = getEditPart(inheritanceViewerRootEditPart, component);    
-          if (editPart != null)
-          { 
-            // TODO ... take a look at this to figure our why a newly added component
-            // seems to have the wrong bounds at this point... is this a layout issue?           
-            // As a temp hack I'm ignoring the selection of component with bounds (x, y) == (0, 0)
-            // Perhaps a delayed selection is required?
-            Rectangle bounds = ((GraphicalEditPart)editPart).getFigure().getBounds();
-            if (bounds.x > 0 || bounds.y > 0)
-            {
-              editPartList.add(editPart); 
-            }
-          } 
-        }    
-      }              
-      setSelection(new StructuredSelection(editPartList));
-    }
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.gef.ui.parts.AbstractEditPartViewer#hookControl()
-   */
-  protected void hookControl()
-  {
-    super.hookControl();
-    inheritanceViewerRootEditPart = new SubstitutionGroupViewerRootEditPart();
-    setContents(inheritanceViewerRootEditPart);
-  }
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDSubstitutionGroupChildUtility.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDSubstitutionGroupChildUtility.java
deleted file mode 100644
index 9fa84bd..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDSubstitutionGroupChildUtility.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.xsd.ui.internal.graph;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.xsd.XSDElementDeclaration;
-
-/**
- * @author ernest
- *
- * To change this generated comment go to 
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-public class XSDSubstitutionGroupChildUtility
-{
-
-  /**
-   * @param declaration
-   * @return List
-   */
-  public static List getModelChildren(XSDElementDeclaration declaration)
-  {
-    ArrayList children = new ArrayList();
-    List substitutionGroup = declaration.getSubstitutionGroup();
-    for (int i = 0, size = substitutionGroup.size(); i < size; i++)
-    {
-      XSDElementDeclaration element = (XSDElementDeclaration) substitutionGroup.get(i);
-      if (declaration.equals(element.getSubstitutionGroupAffiliation()))
-      {
-        children.add(element);
-      }
-    }
-    return children;
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDSubstitutionGroupsViewer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDSubstitutionGroupsViewer.java
deleted file mode 100644
index 5598fdf..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/XSDSubstitutionGroupsViewer.java
+++ /dev/null
@@ -1,99 +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.xsd.ui.internal.graph;
-             
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.SubstitutionGroupViewerRootEditPart;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDSchema;
-
-
-public class XSDSubstitutionGroupsViewer extends BaseGraphicalViewer
-{               
-  protected SubstitutionGroupViewerRootEditPart subGroupViewerRootEditPart;
-  public XSDSubstitutionGroupsViewer(XSDEditor editor, ISelectionProvider menuSelectionProvider)
-  {
-    super(editor, menuSelectionProvider);       
-  }        
-
-  public void setInput(XSDConcreteComponent component)
-  {               
-    if (isInputEnabled)
-    {
-      input = null;         
-
-      if (component instanceof XSDElementDeclaration || 
-          component instanceof XSDSchema)
-      {            
-        input = component;
-      }
-      
-      subGroupViewerRootEditPart.setInput(input);       
-    }
-  }     
-
-  public void setSelection(XSDConcreteComponent component)
-  {                    
-    if (isSelectionEnabled)
-    {                      
-      //System.out.println("XSDComponentViewer.setSelection(" + component + ")");
-      List editPartList = new ArrayList();    
-      StructuredSelection selection = new StructuredSelection();
-      if (component instanceof XSDElementDeclaration || 
-          component instanceof XSDSchema ||
-          component instanceof XSDModelGroup ||        
-          component instanceof XSDModelGroupDefinition ||
-          component instanceof XSDComplexTypeDefinition)
-      {                     
-        if (component != null)
-        {
-          EditPart editPart = getEditPart(subGroupViewerRootEditPart, component);    
-          if (editPart != null)
-          { 
-            // TODO ... take a look at this to figure our why a newly added component
-            // seems to have the wrong bounds at this point... is this a layout issue?           
-            // As a temp hack I'm ignoring the selection of component with bounds (x, y) == (0, 0)
-            // Perhaps a delayed selection is required?
-            Rectangle bounds = ((GraphicalEditPart)editPart).getFigure().getBounds();
-            if (bounds.x > 0 || bounds.y > 0)
-            {
-              editPartList.add(editPart); 
-            }
-          } 
-        }    
-      }              
-      setSelection(new StructuredSelection(editPartList));
-    }
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.gef.ui.parts.AbstractEditPartViewer#hookControl()
-   */
-  protected void hookControl()
-  {
-    super.hookControl();
-    subGroupViewerRootEditPart = new SubstitutionGroupViewerRootEditPart();
-    setContents(subGroupViewerRootEditPart);
-  }
-
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/BaseEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/BaseEditPart.java
deleted file mode 100644
index f98da1a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/BaseEditPart.java
+++ /dev/null
@@ -1,86 +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.xsd.ui.internal.graph.editparts;
-                                 
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.editparts.AbstractGraphicalEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.GraphicsConstants;
-import org.eclipse.wst.xsd.ui.internal.graph.model.ModelAdapterListener;
-import org.eclipse.wst.xsd.ui.internal.graph.model.XSDModelAdapterFactory;
-
-
-public abstract class BaseEditPart extends AbstractGraphicalEditPart implements ModelAdapterListener, GraphicsConstants, IFeedbackHandler
-{
-	protected boolean isSelected = false;
-	/**
-	 * Activates the <code>EditPart</code> by setting the
-	 * appropriate flags, and activating its children.
-	 * activation signals to the EditPart that is should start observing
-	 * it's model, and that is should support editing at this time.
-	 * An EditPart will have a parent prior to activiation.
-	 * @see #deactivate()
-	 */
-	public void activate() 
-  {
-		super.activate();         
-    XSDModelAdapterFactory.addModelAdapterListener(getModel(), this);  
-	}
-	/** 
-	 * Apart from the deactivation done in super, the source
-	 * and target connections are deactivated, and the visual
-	 * part of the this is removed.
-	 *
-	 * @see #activate() 
-	 */
-	public void deactivate() 
-  {
-    XSDModelAdapterFactory.removeModelAdapterListener(getModel(), this);  
-		super.deactivate();
-	}   
-    
-  protected void createEditPolicies() 
-  {
-  }  
-
-  protected EditPart createChild(Object model) 
-  {
-    return XSDEditPartFactory.getInstance().createEditPart(this, model);
-  } 
-
-  public void propertyChanged(Object object, String property)
-  {                                                                                                  
-    refresh(); 
-  }    
-
-  //public BaseGraphicalViewer getBaseGraphicalViewer()
-  //{
-  //  return (BaseGraphicalViewer)getViewer();
-  //}
-
-  public IFigure getSelectionFigure()
-  {
-    return getFigure();
-  }
-  
-  
-  public void addFeedback()
-  {
-    isSelected = true;
-    refreshVisuals();
-  }
-
-  public void removeFeedback()
-  {
-    isSelected = false;
-    refreshVisuals();
-  }  
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/CategoryEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/CategoryEditPart.java
deleted file mode 100644
index afffaad..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/CategoryEditPart.java
+++ /dev/null
@@ -1,187 +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.xsd.ui.internal.graph.editparts;
-                           
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.ScrollPane;
-import org.eclipse.draw2d.Viewport;
-import org.eclipse.draw2d.ViewportLayout;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.editparts.AbstractGraphicalEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.GraphicsConstants;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SelectionHandlesEditPolicyImpl;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.FillLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.wst.xsd.ui.internal.graph.model.Category;
-
-
-public class CategoryEditPart extends BaseEditPart
-{
-  protected ScrollPane scrollpane;
-  protected Label label;
-  protected ContainerFigure outerPane, r;
-  protected SelectionHandlesEditPolicyImpl selectionHandlesEditPolicy;
-
-  public int getType()
-  {
-    return ((Category)getModel()).getGroupType();
-  }
-
-  protected IFigure createFigure()
-  {           
-    outerPane = new ContainerFigure();    
-    outerPane.setBorder(new RoundedLineBorder(1, 6));
-    outerPane.setForegroundColor(categoryBorderColor);
-
-    r = new ContainerFigure();  
-    r.setOutline(false);
-    r.setMinimumSize(new Dimension(0, 0));
-    r.setFill(true);
-    r.setBackgroundColor(GraphicsConstants.elementBackgroundColor);
-    outerPane.add(r);
-    
-    int minHeight = 250;
-    switch (getType())
-    {
-    	case Category.DIRECTIVES :
-		case Category.NOTATIONS :
-		{
-			minHeight = 50;
-			break;	
-		}
-		case Category.ATTRIBUTES :
-		case Category.GROUPS :		  
-		{
-			minHeight = 100;
-			break;
-		}
-    }
-    
-	final int theMinHeight = minHeight;
-    FillLayout outerLayout = new FillLayout()
-    {
-      protected Dimension calculatePreferredSize(IFigure parent, int width, int height)
-      {
-        Dimension d = super.calculatePreferredSize(parent, width, height);
-        d.union(new Dimension(100, theMinHeight));
-        return d;
-      }
-    };
-    //outerLayout.setHorizontal(false);
-    outerPane.setLayoutManager(outerLayout);
-    
-   
-    label = new Label();
-    label.setForegroundColor(ColorConstants.black);
-    label.setBorder(new MarginBorder(2, 4, 2, 4));
-    r.add(label); //Holder);
-
-    RectangleFigure line = new RectangleFigure();
-    line.setPreferredSize(20, 1);
-    outerPane.add(line);
-
-
-    scrollpane = new ScrollPane();
-    scrollpane.setForegroundColor(ColorConstants.black);
-    scrollpane.setVerticalScrollBarVisibility(ScrollPane.AUTOMATIC); //ScrollPane.ALWAYS);
-    outerPane.add(scrollpane);
-
-    ContainerFigure pane = new ContainerFigure();
-    pane.setBorder(new MarginBorder(5, 8, 5, 8));
-    ContainerLayout layout = new ContainerLayout();
-    layout.setHorizontal(false);
-    layout.setSpacing(0);
-    pane.setLayoutManager(layout);
-
-    Viewport viewport = new Viewport();
-    viewport.setContentsTracksHeight(true);
-    ViewportLayout viewportLayout = new ViewportLayout()
-    {
-      protected Dimension calculatePreferredSize(IFigure parent, int width, int height)
-      {
-        Dimension d = super.calculatePreferredSize(parent, width, height);
-        d.height = Math.min(d.height, theMinHeight - 25); //getViewer().getControl().getBounds().height);
-        return d;
-      }
-    };
-    viewport.setLayoutManager(viewportLayout);
-
-    scrollpane.setViewport(viewport);
-    scrollpane.setContents(pane);
-
-    return outerPane;
-  }  
-
-  protected List getModelChildren() 
-  {            
-    return ((Category)getModel()).getChildren();
-  }  
-        
-  public void refreshVisuals()
-  {
-    outerPane.setBorder(new RoundedLineBorder(isSelected ? ColorConstants.black : categoryBorderColor, isSelected ? 1 : 1, 6));
-    outerPane.repaint();
-// Uncomment this for coloured titles
-//    r.setBackgroundColor(isSelected ? ColorConstants.blue : GraphicsConstants.elementBackgroundColor);
-//    label.setForegroundColor(isSelected ? ColorConstants.white : ColorConstants.black);
-//    r.repaint();
-//    outerPane.setForegroundColor(isSelected ? ColorConstants.black : elementBorderColor);
-    
-    Category category = (Category)getModel();
-    // temp hack --- added empty space to make the min width of groups bigger  
-    label.setText("  " + category.getName() + "                                                    ");
-  } 
-  
-  public ScrollPane getScrollPane()
-  {
-    return scrollpane;
-  }
-  
-  public IFigure getContentPane()
-  {
-    return scrollpane.getContents();
-  }  
-
-  public void scrollTo(AbstractGraphicalEditPart topLevel)
-  {
-    Rectangle topLevelBounds = topLevel.getFigure().getBounds();
-    Rectangle categoryBounds = getFigure().getBounds();
-    int scrollValue = scrollpane.getVerticalScrollBar().getValue();
-    int location = topLevelBounds.y + scrollValue - categoryBounds.y;
-    scrollpane.scrollVerticalTo(location - categoryBounds.height/2);
-  }
-
-  protected EditPart createChild(Object model)
-  {
-    EditPart editPart = new TopLevelComponentEditPart();
-    editPart.setModel(model);
-    editPart.setParent(this);
-    return editPart;
-  }
-  
-  protected void createEditPolicies()
-  { 
-    selectionHandlesEditPolicy = new SelectionHandlesEditPolicyImpl();
-    installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, selectionHandlesEditPolicy);   
-  }  
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComplexTypeDefinitionEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComplexTypeDefinitionEditPart.java
deleted file mode 100644
index daac88d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComplexTypeDefinitionEditPart.java
+++ /dev/null
@@ -1,215 +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.xsd.ui.internal.graph.editparts;
-                                      
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.RequestConstants;
-import org.eclipse.gef.requests.LocationRequest;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComponentNameDirectEditManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.CenteredIconFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.FillLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-
-              
-
-public class ComplexTypeDefinitionEditPart extends GraphNodeEditPart
-{
-  protected ContainerFigure contentFigure;   
-  protected Label label;     
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();
-  protected CenteredIconFigure centeredIconFigure;  
-  protected RectangleFigure preceedingSpace;  
-  protected ContainerFigure contentPane;
-
-  public XSDComplexTypeDefinition getXSDComplexTypeDefinition()
-  {         
-    return (XSDComplexTypeDefinition)getModel();
-  }  
-
-  protected boolean isConnectedEditPart()
-  {
-    return false;
-  } 
-
-  protected GraphNodeFigure createGraphNodeFigure()  
-  {
-    XSDComplexTypeDefinition ctd = (XSDComplexTypeDefinition)getModel();
-    GraphNodeFigure figure = new GraphNodeFigure();
-
-    figure.getOutlinedArea().setBorder(new RoundedLineBorder(1, 6));
-    figure.getOutlinedArea().setFill(true);
-    figure.getOutlinedArea().setLayoutManager(new FillLayout(true));
-
-    figure.getInnerContentArea().getContainerLayout().setHorizontal(true);
-
-    preceedingSpace = new RectangleFigure();
-    preceedingSpace.setVisible(false);
-    figure.getInnerContentArea().add(preceedingSpace, 0);
-
-    contentPane = new ContainerFigure();
-    contentPane.getContainerLayout().setHorizontal(false); 
-    contentPane.getContainerLayout().setSpacing(5);   
-    contentPane.setBorder(new MarginBorder(5, 5, 5, 5));
-    figure.getInnerContentArea().add(contentPane);
-    
-    label = new Label();    
-    label.setBorder(new MarginBorder(0, 5, 5, 5));
-    figure.getIconArea().add(label);     
-    label.setFont(mediumBoldFont);
- 
-    figure.getInnerContentArea().getContainerLayout().setSpacing(5);   
-    figure.getInnerContentArea().setBorder(new MarginBorder(5, 5, 5, 5));
-    
-    return figure;
-  }      
-                                                                    
-  protected EditPart createChild(Object model) 
-  {   
-    EditPart editPart = null;                                     
-    if (model == getModel())
-    {
-      editPart = new ComplexTypeInheritedContentEditPart();
-      editPart.setModel(model);
-      editPart.setParent(this);
-    }
-    else
-    {
-      editPart = super.createChild(model);
-    }            
-    return editPart;
-  } 
-
-  protected List getModelChildren() 
-  {                           
-    List list = new ArrayList();
-
-    XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)getModel();
-
-    if (ct.getDerivationMethod().getName().equals("extension"))
-    {
-      list.add(getModel());
-    }  
-
-    list.addAll(XSDChildUtility.getModelChildren(getModel()));
-    return list;
-  }
-
-  public IFigure getContentPane()  
-  {
-    return contentPane;
-  }
-                        
-  protected void refreshVisuals()
-  { 
-    XSDComplexTypeDefinition ctd = (XSDComplexTypeDefinition)getModel();                   
-
-    String name = ctd.getName();
-    if (name == null)
-    {
-      try
-      {
-        if (label != null)
-        {
-          graphNodeFigure.getIconArea().remove(label);
-        }
-        label = null;
-      }
-      catch (Exception e)
-      {
-      }
-    }
-    else
-    {
-      if (label == null)
-      {
-        label = new Label();    
-        label.setBorder(new MarginBorder(0, 5, 5, 5));
-        ((GraphNodeFigure)getFigure()).getIconArea().add(label);     
-        label.setFont(mediumBoldFont);
-      }
-      graphNodeFigure.getIconArea().add(label);
-      label.setText(name);
-    }
-
-    // provides some room if we need to draw lines for the inherited
-    boolean includesInheritedContent = getModelChildren().contains(getModel());
-    preceedingSpace.setPreferredSize(includesInheritedContent ? new Dimension(10, 1) : new Dimension(0, 0));
-
-    if (XSDGraphUtil.isEditable(getModel()))
-    { 
-      graphNodeFigure.setForegroundColor(isSelected ? ColorConstants.black : elementBorderColor);
-      if (label != null)
-      label.setForegroundColor(elementBorderColor);
-    }
-    else
-    {
-      graphNodeFigure.setForegroundColor(isSelected ? ColorConstants.black : readOnlyBorderColor);
-      if (label != null)
-      label.setForegroundColor(readOnlyBorderColor);
-    }
-  }
-             
-  protected void performDirectEdit()
-  {  
-    ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, (XSDComplexTypeDefinition)getModel());   
-    simpleDirectEditPolicy.setDelegate(manager);
-    manager.show();
-  }    
-            
-
-  protected void createEditPolicies()
-  {  
-    super.createEditPolicies();
-  	installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, simpleDirectEditPolicy);
-  } 
-       
-
-  public void performRequest(Request request)
-  {
-  	if (request.getType() == RequestConstants.REQ_DIRECT_EDIT ||
-        request.getType() == RequestConstants.REQ_OPEN)
-    {     
-      if (XSDGraphUtil.isEditable(getModel()))
-      {                 
-        LocationRequest locationRequest = (LocationRequest)request;
-        Point p = locationRequest.getLocation();
-        
-        if (label != null && hitTest(label, p))
-        {
-  		    performDirectEdit();
-        }
-      }
-    }
-  }
-  
-  public void doEditName()
-  {
-    performDirectEdit();
-  }
-} 
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComplexTypeInheritedContentEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComplexTypeInheritedContentEditPart.java
deleted file mode 100644
index cfa8811..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComplexTypeInheritedContentEditPart.java
+++ /dev/null
@@ -1,150 +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.xsd.ui.internal.graph.editparts;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.RequestConstants;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComponentNameDirectEditManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-
-// This is a dashed box that displays the inherited content of a complex type
-//
-public class ComplexTypeInheritedContentEditPart extends BaseEditPart
-{
-  protected Label label;     
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();
-  protected boolean isParentExpanded;
-               
-  public ComplexTypeInheritedContentEditPart()
-  {
-    super();
-  }   
-                 
-  public XSDComplexTypeDefinition getXSDComplexTypeDefinition()
-  {         
-    return (XSDComplexTypeDefinition)getModel();
-  }
-                  
-  protected IFigure createFigure()
-  {                            
-    ContainerFigure figure = new ContainerFigure();
-    figure.getContainerLayout().setHorizontal(false);
-    figure.getContainerLayout().setBorder(5);
-    figure.getContainerLayout().setSpacing(5);
-    figure.setBorder(new RoundedLineBorder(ColorConstants.gray, 1, 6, Graphics.LINE_DASH));
-    return figure;
-  }    
-           
-  protected List getModelChildren() 
-  {                                              
-    XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)getModel();
-
-    List list = new ArrayList();
-
-    if (ct.getDerivationMethod().getName().equals("extension") && !isParentExpanded)
-    {
-      XSDTypeDefinition type = ct.getBaseTypeDefinition();
-      Iterator iter = XSDChildUtility.getModelChildren(type).iterator();
-      boolean cont = true;
-      while (cont)
-      {
-        while (iter.hasNext())
-        {
-          list.add(0, iter.next());
-        }
-        
-        if (type instanceof XSDComplexTypeDefinition)
-        {
-          XSDComplexTypeDefinition ctd = (XSDComplexTypeDefinition)type;
-          type = ctd.getBaseTypeDefinition();
-                    
-					// defect 264957 - workbench hangs when modifying complex content
-					// Since we don't filter out the current complexType from
-					// the combobox, we can potentially have an endless loop
-					if (ctd == type)
-					{
-						cont = false;
-						break;
-					}
-
-          if (ctd.getDerivationMethod().getName().equals("extension"))
-          {
-            iter = XSDChildUtility.getModelChildren(type).iterator();
-          }
-          else
-          {
-            cont = false;
-          }
-        }
-        else
-        {
-          cont = false;
-        }
-      }
-    }
-    return list;
-  }
-
-  protected void refreshVisuals()
-  { 
-    XSDComplexTypeDefinition ctd = (XSDComplexTypeDefinition)getModel();
-    List children = getModelChildren();
-    figure.setVisible(children.size() > 0);   
-    // todo set preferredSize to 0 ?
-  }
-
-  protected void performDirectEdit()
-  {
-    // Why are we allowing direct editing when the label is null?
-    // Should remove the policy
-    if (label != null)
-    {
-      ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, (XSDComplexTypeDefinition)getModel());   
-      simpleDirectEditPolicy.setDelegate(manager);
-      manager.show();
-    }
-  }    
-            
-
-  protected void createEditPolicies()
-  {  
-    super.createEditPolicies();
-    installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, simpleDirectEditPolicy);
-  } 
-       
-
-  public void performRequest(Request request)
-  {
-    if (request.getType() == RequestConstants.REQ_DIRECT_EDIT)
-    {     
-      if (XSDGraphUtil.isEditable(getModel()))
-      {
-        performDirectEdit();
-      }
-    }
-  } 
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComponentViewerRootEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComponentViewerRootEditPart.java
deleted file mode 100644
index fa8d191..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ComponentViewerRootEditPart.java
+++ /dev/null
@@ -1,76 +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.xsd.ui.internal.graph.editparts;
-                                      
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Panel;
-import org.eclipse.gef.EditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerLayout;
-
-              
-
-public class ComponentViewerRootEditPart extends BaseEditPart
-{
-  protected final static String MESSAGE_PLACE_HOLDER = "MESSAGE_PLACE_HOLDER";
-  protected Object input;              
-
-  public void setInput(Object input)
-  {
-    this.input = input;
-    refreshChildren();
-  }
-
-  protected IFigure createFigure()
-  {
-    Panel panel = new Panel();
-    ContainerLayout layout = new ContainerLayout();
-    layout.setBorder(60);
-    panel.setLayoutManager(layout);
-    return panel;
-  }   
-           
-
-  protected List getModelChildren() 
-  {               
-    List list = new ArrayList();
-    if (input != null)
-    {
-      list.add(input);
-    }
-    else
-    {
-      list.add(MESSAGE_PLACE_HOLDER);
-    }
-    return list;
-  }         
-
-  protected EditPart createChild(Object model) 
-  { 
-    EditPart editPart = null;
-    if (model == MESSAGE_PLACE_HOLDER)
-    {
-      editPart = new MessageEditPart();
-      editPart.setModel(model);
-    }
-    else
-    {
-      editPart = super.createChild(model);
-    }
-    return editPart;
-  } 
-
-  protected void createEditPolicies()
-  {  
-  }             
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ElementDeclarationEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ElementDeclarationEditPart.java
deleted file mode 100644
index 8646771..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ElementDeclarationEditPart.java
+++ /dev/null
@@ -1,460 +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.xsd.ui.internal.graph.editparts;
-                                   
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.LineBorder;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.RequestConstants;
-import org.eclipse.gef.requests.LocationRequest;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionDialog;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDSetTypeHelper;
-import org.eclipse.wst.xsd.ui.internal.gef.util.figures.SpacingFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDSubstitutionGroupChildUtility;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDSubstitutionGroupsViewer;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComboBoxCellEditorManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComponentNameDirectEditManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ExpandableGraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.FillLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.model.XSDModelAdapterFactory;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.w3c.dom.Element;
-
-              
-
-public class ElementDeclarationEditPart extends ExpandableGraphNodeEditPart
-{
-  public Label label;  
-  protected Label contentIconLabel;
-  protected Label typeValueLabel;
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();
-  protected boolean isContentIconLabelSelected = false;
-
-  protected final static String ELEMENT_TYPE_PLACE_HOLDER = "ELEMENT_TYPE_PLACE_HOLDER";
-
-  public XSDParticle getXSDParticle()
-  {
-    Object o = getXSDElementDeclaration().getContainer(); 
-    return (o instanceof XSDParticle) ? (XSDParticle)o : null;
-  }        
-
-  public XSDElementDeclaration getXSDElementDeclaration()
-  {         
-    return (XSDElementDeclaration)getModel();
-  }
-     
-  protected boolean isDefaultExpanded()
-  {
-    // hack to expand up to its content.  The previous test didn't appear to work
-    int depth = 0;
-    for (EditPart part = this; part != null; part = part.getParent())
-    {
-      depth++;
-    }      
-    return depth <= 3;
-  }
-                     
-  protected GraphNodeFigure createGraphNodeFigure()
-  {
-    ExpandableGraphNodeFigure figure = new ExpandableGraphNodeFigure();
-
-    figure.getOutlinedArea().setFill(true);
-    figure.getOutlinedArea().setLayoutManager(new FillLayout());
-
-    label = new Label();    
-    figure.getIconArea().add(label);     
-    label.setFont(mediumBoldFont);
-    
-    SpacingFigure spacingFigure = new SpacingFigure();
-    figure.getIconArea().add(spacingFigure);
-    
-    contentIconLabel = new Label();
-    //contentIcon.setBorder(new MarginBorder(2, 2, 2, 10));
-    figure.getIconArea().add(contentIconLabel);
-
-    // A sneaky null check.... getViewer() does a getRoot(), but getRoot() might be null
-    // same with getParent()
-    if (getParent() != null && getRoot() != null && getViewer() instanceof XSDSubstitutionGroupsViewer)
-    {
-      figure.getOuterContentArea().getContainerLayout().setSpacing(5);
-    }
-    else
-    {  
-      RectangleFigure line = new RectangleFigure();
-      line.setPreferredSize(20, 1);   
-      figure.getOutlinedArea().add(line, 1);
-
-      figure.getInnerContentArea().setLayoutManager(new FillLayout(2));
-      figure.getInnerContentArea().setBorder(new MarginBorder(2,2,2,1));
-
-      ContainerFigure labelGroup = new ContainerFigure();   
-      Label typeLabel = new Label("type");
-      labelGroup.add(typeLabel);
-      labelGroup.setBorder(new MarginBorder(0, 4, 0, 4));      
-
-      Label equalsLabel = new Label(" = ");
-      labelGroup.add(equalsLabel);
-
-      typeValueLabel = new Label();                         
-      labelGroup.add(typeValueLabel);
-      figure.getOutlinedArea().add(labelGroup, 2);
-    }
-    return figure;
-  }          
-
-  protected ExpandableGraphNodeFigure getExpandableGraphNodeFigure()
-  {
-    return (ExpandableGraphNodeFigure)graphNodeFigure;
-  }                                            
-                    
-  protected List getModelChildren() 
-  {
-    XSDTypeDefinition typeDef = getXSDElementDeclaration().getTypeDefinition();
-    
-    // Special case simple type.   Need to add it to the list as well
-    List list = new ArrayList();
-    if (typeDef instanceof XSDSimpleTypeDefinition)
-    {
-      list.add((XSDSimpleTypeDefinition)typeDef);
-      if (getExpandableGraphNodeFigure().isExpanded())
-      {
-        list.addAll(getModelChildrenHelper());
-      }
-      return list;
-    }
-    return getExpandableGraphNodeFigure().isExpanded() ? getModelChildrenHelper() : Collections.EMPTY_LIST;
-  }  
-                       
-  protected List getModelChildrenHelper()
-  {
-    if (getViewer() instanceof XSDSubstitutionGroupsViewer)
-    {
-      return XSDSubstitutionGroupChildUtility.getModelChildren(getXSDElementDeclaration().getResolvedElementDeclaration());
-    }
-    else
-    {
-      return XSDChildUtility.getModelChildren(getXSDElementDeclaration().getResolvedElementDeclaration());
-    }
-  }           
-                
-  protected void refreshContentIcon()
-  {
-    String iconName = null;
-    XSDTypeDefinition td = getXSDElementDeclaration().getResolvedElementDeclaration().getTypeDefinition();
-
-    if (td instanceof XSDComplexTypeDefinition)
-    {
-      XSDComplexTypeDefinition complexTypeDefinition = (XSDComplexTypeDefinition)td;
-      if (complexTypeDefinition.getAttributeUses().size() > 0)
-      {
-        iconName = "icons/XSDAttribute.gif";  
-      }  
-    }  
-    Image image = iconName != null ? XSDEditorPlugin.getXSDImage(iconName) : null;
-    contentIconLabel.setIcon(image);    
-  }
-
-  protected void refreshVisuals()
-  { 
-    String text = getXSDElementDeclaration().isElementDeclarationReference() ?
-                  getXSDElementDeclaration().getResolvedElementDeclaration().getQName(getXSDElementDeclaration().getSchema()) :
-                  getXSDElementDeclaration().getName();
-
-    label.setText(text);
-    
-    ContainerFigure rectangle = graphNodeFigure.getOutlinedArea();
-    if (XSDGraphUtil.isEditable(getXSDElementDeclaration()))
-    {
-      rectangle.setBorder(new LineBorder(isSelected ? ColorConstants.black : elementBorderColor, 2));
-      rectangle.setBackgroundColor(elementBackgroundColor);
-      rectangle.setForegroundColor(elementBorderColor);
-      
-      graphNodeFigure.getInnerContentArea().setForegroundColor(ColorConstants.black);
-      if (XSDGraphUtil.isEditable(getXSDElementDeclaration().getResolvedElementDeclaration()))
-      { 
-        // give label 'editable' colour
-        graphNodeFigure.getInnerContentArea().setForegroundColor(elementLabelColor);    
-      }
-      else
-      {   
-        // give label 'read only' colour
-        graphNodeFigure.getInnerContentArea().setForegroundColor(elementBorderColor);
-      }
-      label.setBackgroundColor(elementBackgroundColor);
-      label.setForegroundColor(elementLabelColor);
-    }
-    else
-    {
-      rectangle.setBorder(new LineBorder(isSelected ? ColorConstants.black : readOnlyBorderColor, 2));
-      rectangle.setBackgroundColor(readOnlyBackgroundColor);
-      rectangle.setForegroundColor(readOnlyBorderColor);
-      graphNodeFigure.getInnerContentArea().setForegroundColor(readOnlyBorderColor);     
-      label.setBackgroundColor(readOnlyBackgroundColor);
-    }
-                                                                                   
-    if (getXSDElementDeclaration().isElementDeclarationReference())
-    {
-      label.setIcon(XSDEditorPlugin.getXSDImage("icons/GraphViewElementRef.gif"));
-      label.setBorder(new MarginBorder(0, 0, 0, 4)); 
-    }
-    else
-    {                     
-      label.setIcon(null);
-      label.setBorder(new MarginBorder(0, 6, 0, 4));
-    }
-    
-    if (getXSDParticle() != null)
-    { 
-      refreshOccurenceLabel(getXSDParticle().getMinOccurs(), getXSDParticle().getMaxOccurs());
-    }                      
-     
-   
-    if (typeValueLabel != null)
-    {
-      XSDElementDeclaration ed = getXSDElementDeclaration();
-      if (ed.getElement() != null)
-      {
-        String type = ed.getElement().getAttribute("type");
-        if (type == null)
-        {
-          type = "";
-        }
-        if (!getXSDElementDeclaration().isElementDeclarationReference())
-				{   
-          typeValueLabel.setText(type.equals("") ? "<anonymous>" : type);
-				}
-        else // if it is a ref, we show the resolved type
-        {
-        	String resolvedType = "";
-        	if (ed.getResolvedElementDeclaration() != null)
-        	{
-        		if (ed.getResolvedElementDeclaration().getTypeDefinition() != null)
-        	  {
-        	    resolvedType = ed.getResolvedElementDeclaration().getTypeDefinition().getQName(ed.getSchema());
-              
-              // if null, it has an anonymous type that has no resolved type
-              if (resolvedType == null)
-              {
-                resolvedType = "<anonymous>";
-              }
-        	  }
-        	}
-          typeValueLabel.setText(resolvedType);
-				}
-      }
-    }
-    refreshContentIcon();
-  } 
- 
-                                                                        
-  public void performRequest(Request request)
-  {
-  	if (request.getType() == RequestConstants.REQ_DIRECT_EDIT ||
-        request.getType() == RequestConstants.REQ_OPEN)
-    {                                        
-      if (XSDGraphUtil.isEditable(getXSDElementDeclaration()))
-      {
-        if (request instanceof LocationRequest)
-        {
-          LocationRequest locationRequest = (LocationRequest)request;
-          Point p = locationRequest.getLocation();
-          isContentIconLabelSelected = false;
-          
-          if (hitTest(label, p))
-          {
-  		      performDirectEditForLabel();
-          }
-          else if (hitTest(typeValueLabel, p))
-          {                             
-   		      performDirectEditForTypeValueLabel();
-          }
-        }
-      }
-    }
-  } 
-         
-  private void performDirectEditForTypeValueLabel()
-  {
-		if (!getXSDElementDeclaration().isElementDeclarationReference())
-		{    
-//      TypeReferenceDirectEditManager manager = new TypeReferenceDirectEditManager(this, getXSDElementDeclaration(), typeValueLabel);   
-//      simpleDirectEditPolicy.setDelegate(manager);
-//      manager.show();
-//TODO remove TypeReferenceDirectEditManager since it is not used any longer
-            
-            Shell shell = Display.getCurrent().getActiveShell();
-            IWorkbench workbench = XSDEditorPlugin.getPlugin().getWorkbench();
-            IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
-            IEditorPart editorPart = workbenchWindow.getActivePage().getActiveEditor();
-            IFile currentIFile = ((IFileEditorInput)editorPart.getEditorInput()).getFile();
-            
-            XSDSchema schema = getXSDElementDeclaration().getSchema();
-                
-            XSDComponentSelectionProvider provider = new XSDComponentSelectionProvider(currentIFile, schema);
-            XSDComponentSelectionDialog dialog = new XSDComponentSelectionDialog(shell, "Set Type", provider);  // TODO: Externalize This
-            provider.setDialog(dialog);
-            
-            dialog.setBlockOnOpen(true);
-            dialog.create();
-
-            if (dialog.open() == Window.OK) {
-                Element element = getXSDElementDeclaration().getElement();
-                XSDSetTypeHelper helper = new XSDSetTypeHelper(currentIFile, schema);
-                helper.setType(element, "type", dialog.getSelection());
-            }        
-
-            
-		}
-		// just ignore type edit for element ref's
-  }                                                                
-
-                                                       
-  private void performDirectEditForLabel()
-  {    
-    if (getXSDElementDeclaration().isElementDeclarationReference())   
-    {
-      ComboBoxCellEditorManager manager = new ComboBoxCellEditorManager(this, label)
-      {
-         protected List computeComboContent()
-         {             
-           XSDSchema schema = getXSDElementDeclaration().getSchema();
-           List globalElementNameList = new ArrayList();
-           if (schema != null)
-           {
-             TypesHelper typesHelper = new TypesHelper(schema);
-             globalElementNameList = typesHelper.getGlobalElements();
-           }                                           
-           return globalElementNameList;
-         }
-
-         public void performModify(String value)
-         { 
-           getXSDElementDeclaration().getElement().setAttribute("ref", value);
-         }
-      };
-      simpleDirectEditPolicy.setDelegate(manager);
-      manager.show();
-    }
-    else
-    {
-      ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, getXSDElementDeclaration());   
-      simpleDirectEditPolicy.setDelegate(manager);
-      manager.show();
-    }
-  }                                
-  
-
-  protected void createEditPolicies()
-  {  
-    super.createEditPolicies();
-  	installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, simpleDirectEditPolicy);
-  }
-  
-  
-  public void activate() 
-  {
-    super.activate();
-    if (getXSDParticle() != null)
-    {
-      XSDModelAdapterFactory.addModelAdapterListener(getXSDParticle(), this);
-    }
-  }
-  /** 
-   * Apart from the deactivation done in super, the source
-   * and target connections are deactivated, and the visual
-   * part of the this is removed.
-   *
-   * @see #activate() 
-   */
-  public void deactivate() 
-  {
-    if (getXSDParticle() != null)
-    {
-      XSDModelAdapterFactory.removeModelAdapterListener(getXSDParticle(), this);
-    }
-    super.deactivate();
-  }   
-
-  public boolean isContentIconLabelSelected()
-  {
-    return isContentIconLabelSelected;
-  }
-
-  protected void addChildVisual(EditPart childEditPart, int index)
-  {
-    IFigure child = ((GraphicalEditPart)childEditPart).getFigure();
-    if (childEditPart instanceof SimpleTypeDefinitionEditPart)
-    {
-      graphNodeFigure.getIconArea().add(child, index+ 1);
-      SpacingFigure spacingFigure = new SpacingFigure();
-      graphNodeFigure.getIconArea().add(spacingFigure, index+1);
-    }
-    else
-    {
-      getContentPane().add(child, index);
-    }
-  }
-  
-  protected void removeChildVisual(EditPart childEditPart)
-  {
-    IFigure child = ((GraphicalEditPart)childEditPart).getFigure();
-    if (childEditPart instanceof SimpleTypeDefinitionEditPart)
-    {
-      graphNodeFigure.getIconArea().remove(child);
-    }    
-    else
-    {
-      super.removeChildVisual(childEditPart);
-    }
-  }
-
-  public void doEditName()
-  {
-    ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, getXSDElementDeclaration());
-    simpleDirectEditPolicy.setDelegate(manager);
-    manager.show();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ExpandableGraphNodeEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ExpandableGraphNodeEditPart.java
deleted file mode 100644
index 1ad4057..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ExpandableGraphNodeEditPart.java
+++ /dev/null
@@ -1,189 +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.xsd.ui.internal.graph.editparts;
-                                        
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.ActionEvent;
-import org.eclipse.draw2d.ActionListener;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.LayoutManager;
-import org.eclipse.draw2d.MouseEvent;
-import org.eclipse.draw2d.MouseListener;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.editparts.AbstractGraphicalEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ExpandableGraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-
-                  
-
-public abstract class ExpandableGraphNodeEditPart extends RepeatableGraphNodeEditPart implements MouseListener, ActionListener
-{
-  protected boolean needToPerformDefaultExpansion = true;
-   
-  protected GraphNodeFigure createGraphNodeFigure()
-  {
-    return new ExpandableGraphNodeFigure();     
-  }
-
-  protected void addGraphNodeFigureListeners()
-  {                                                                    
-    getExpandableGraphNodeFigure().getInteractor().addMouseListener(this); 
-  }  
-            
-  protected ExpandableGraphNodeFigure getExpandableGraphNodeFigure()
-  {
-    return (ExpandableGraphNodeFigure)graphNodeFigure;
-  } 
-
-  public IFigure getContentPane()  
-  {
-    return getExpandableGraphNodeFigure().getOuterContentArea();
-  }
-    
-  protected boolean isDefaultExpanded()
-  {
-    return false;
-  }
-
-  protected boolean hasChildren()
-  {
-    return getModelChildrenHelper().size() > 0;
-  }         
-
-  protected abstract List getModelChildrenHelper();
-      
-
-  protected List getModelChildren() 
-  {                                                                             
-    return getExpandableGraphNodeFigure().isExpanded() ? getModelChildrenHelper() : Collections.EMPTY_LIST;
-  }  
-
-  protected void refreshChildren()
-  {    
-    if (needToPerformDefaultExpansion && isDefaultExpanded())
-    {
-      needToPerformDefaultExpansion = false;   
-      performExpandOrCollapseHelper();
-
-      super.refreshChildren();
-
-      EditPart root = getRoot();
-      if (root instanceof AbstractGraphicalEditPart)
-      {         
-        getContentPane().setVisible(true); 
-                    
-        IFigure rootFigure = ((AbstractGraphicalEditPart)root).getFigure();
-        invalidateAll(rootFigure);
-        rootFigure.validate();
-        rootFigure.repaint();
-      }     
-      getExpandableGraphNodeFigure().getInteractor().repaint();
-    } 
-    else
-    {
-      super.refreshChildren(); 
-    }   
-    getExpandableGraphNodeFigure().getInteractor().setVisible(hasChildren());
-  }
-
-
-  protected void performExpandOrCollapseHelper()
-  {
-    boolean isButtonExpanded = !getExpandableGraphNodeFigure().isExpanded();
-    getExpandableGraphNodeFigure().setExpanded(isButtonExpanded);
-  }
-
-  public void doPerformExpandOrCollapse()
-  {
-    performExpandOrCollapse();
-  }  
-  
-  public boolean isExpanded()
-  {
-    return getExpandableGraphNodeFigure().isExpanded();
-  }
-
-  protected void performExpandOrCollapse()
-  {
-    performExpandOrCollapseHelper();                              
-
-    boolean isButtonExpanded = getExpandableGraphNodeFigure().isExpanded();
-
-    refreshChildren();
-
-    EditPart root = getRoot();
-    if (root instanceof AbstractGraphicalEditPart)
-    {         
-      getContentPane().setVisible(isButtonExpanded); 
-                       
-      IFigure rootFigure = ((AbstractGraphicalEditPart)root).getFigure();
-      invalidateAll(rootFigure);
-      rootFigure.validate();
-      rootFigure.repaint();
-    }      
-    getExpandableGraphNodeFigure().getInteractor().repaint();
-  }
-
-  
-  protected void refreshOccurenceLabel(int min, int max)
-  {
-    super.refreshOccurenceLabel(min, max);
-
-    // TODO: revisit the 'hack' to understand why we need to do this 
-    // in order to get the view to layout propetly
-    //
-    IFigure thisFigure = getFigure();
-    invalidateAll(thisFigure);
-    thisFigure.validate();
-    thisFigure.repaint();
-  }
-
-  protected void invalidateAll(IFigure figure)
-  {
-    figure.invalidate();   
-    LayoutManager manager = figure.getLayoutManager();
-    if (manager != null)
-    {
-      manager.invalidate();
-    }
-    for (Iterator i = figure.getChildren().iterator(); i.hasNext(); )
-    {
-      IFigure child = (IFigure)i.next();
-      invalidateAll(child);
-    }
-  } 
-
-  
-  // implements MouseListener
-  // 
-  public void mouseDoubleClicked(MouseEvent me) 
-  {
-  }
-
-  public void mousePressed(MouseEvent me) 
-  {                             
-    me.consume();
-    needToPerformDefaultExpansion = false;
-    performExpandOrCollapse();  
-  }
-
-  public void mouseReleased(MouseEvent me) 
-  {
-  } 
-
-  public void actionPerformed(ActionEvent event) 
-  {                      
-    performExpandOrCollapse();
-  }   
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/GraphNodeEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/GraphNodeEditPart.java
deleted file mode 100644
index ce6ad0a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/GraphNodeEditPart.java
+++ /dev/null
@@ -1,144 +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.xsd.ui.internal.graph.editparts;
-                                        
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.DragTracker;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.requests.LocationRequest;
-import org.eclipse.wst.xsd.ui.internal.gef.util.figures.ConnectedEditPartFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.GraphNodeDragTracker;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SelectionHandlesEditPolicyImpl;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-
-              
-
-public abstract class GraphNodeEditPart extends BaseEditPart
-{
-  protected GraphNodeFigure graphNodeFigure;
-  protected SelectionHandlesEditPolicyImpl selectionHandlesEditPolicy;
-                                 
-  protected boolean isConnectedEditPart()
-  {
-    return true;
-  }
-
-  protected IFigure createFigure()
-  {                           
-    IFigure result = graphNodeFigure = createGraphNodeFigure();    
-    addGraphNodeFigureListeners();
-
-    if (isConnectedEditPart())
-    {
-      ConnectedEditPartFigure connectedEditPartFigure = createConnectedEditPartFigure();                                    
-      connectedEditPartFigure.add(graphNodeFigure);
-      result = connectedEditPartFigure;
-    }
-    return result;
-  }       
-           
-  protected ConnectedEditPartFigure createConnectedEditPartFigure()
-  {
-    ConnectedEditPartFigure connectedEditPartFigure = new ConnectedEditPartFigure(this)
-    {
-      public IFigure getSelectionFigure()
-      {
-        return graphNodeFigure.getOutlinedArea();
-      }
-
-      public IFigure getConnectionFigure()
-      {
-        return graphNodeFigure.getConnectionFigure();
-      }
-    };
-    return connectedEditPartFigure;
-  }                                
-
-  protected abstract GraphNodeFigure createGraphNodeFigure();           
-  
-  protected void addGraphNodeFigureListeners()
-  {
-  }
- 
-  public IFigure getSelectionFigure()
-  {
-    return graphNodeFigure.getOutlinedArea();
-  }
-
-  public Rectangle getConnectionRectangle()
-  {
-    return graphNodeFigure.getConnectionRectangle();
-  }
-
-  protected void createEditPolicies()
-  { 
-    //installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, new NonResizableEditPolicy());    
-    selectionHandlesEditPolicy = new SelectionHandlesEditPolicyImpl();
-    installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, selectionHandlesEditPolicy);   
-  }  
-
-  public DragTracker getDragTracker(Request request)
-  {
-    return new GraphNodeDragTracker((EditPart)this);
-  }   
-
- protected EditPart getApplicableEditPart(EditPart editPart, Point p)
-  {        
-    while (true)
-    {    
-      EditPart parent = null;
-      if (editPart instanceof GraphNodeEditPart)
-      {                                  
-        IFigure f = ((GraphNodeEditPart)editPart).getSelectionFigure();
-        if (!hitTest(f, p))
-        {                                 
-          parent = editPart.getParent();        
-        }             
-      }   
-
-      if (parent != null)
-      {
-        editPart = parent;
-      }                   
-      else
-      {
-        break;
-      }
-    }         
-    return editPart;
-  }
-
-  public EditPart getTargetEditPart(Request request)   
-  { 
-    EditPart editPart = null;
-    if (request.getType() == REQ_SELECTION)
-    {                                                                       
-      if (request instanceof LocationRequest)
-      {
-        LocationRequest locationRequest = (LocationRequest)request;
-        Point p = locationRequest.getLocation();
-        editPart = getApplicableEditPart(this, p);
-      }
-    }
-    return (editPart != null) ? editPart : super.getTargetEditPart(request);
-  }   
-
-  public boolean hitTest(IFigure target, Point location)
-  {
-    Rectangle b = target.getBounds().getCopy();
-    target.translateToAbsolute(b);  
-    return b.contains(location);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/IFeedbackHandler.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/IFeedbackHandler.java
deleted file mode 100644
index 24a0537..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/IFeedbackHandler.java
+++ /dev/null
@@ -1,17 +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.xsd.ui.internal.graph.editparts;
-
-public interface IFeedbackHandler
-{
-  public void addFeedback();
-  public void removeFeedback();
-}              
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/MessageEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/MessageEditPart.java
deleted file mode 100644
index bbb7f92..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/MessageEditPart.java
+++ /dev/null
@@ -1,38 +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.xsd.ui.internal.graph.editparts;
-                          
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-
-              
-
-public class MessageEditPart extends BaseEditPart
-{
-  public MessageEditPart()
-  {
-  }   
-  
-  protected IFigure createFigure()
-  {                            
-    Label label = new Label(XSDEditorPlugin.getXSDString("_UI_GRAPH_VIEW_NOT_AVAILABLE"));         
-    return label;
-  }    
-
-  protected List getModelChildren() 
-  {                  
-    return Collections.EMPTY_LIST;
-  }   
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ModelGroupDefinitionEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ModelGroupDefinitionEditPart.java
deleted file mode 100644
index af5804a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ModelGroupDefinitionEditPart.java
+++ /dev/null
@@ -1,204 +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.xsd.ui.internal.graph.editparts;
-                                      
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.RequestConstants;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComboBoxCellEditorManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComponentNameDirectEditManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RepeatableGraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDSchema;
-
-              
-public class ModelGroupDefinitionEditPart extends RepeatableGraphNodeEditPart
-{
-  protected Label label;     
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();
-
-  public XSDModelGroupDefinition getXSDModelGroupDefinition()
-  {
-    return (XSDModelGroupDefinition)getModel();
-  } 
-
-  protected boolean isConnectedEditPart()
-  {
-    return false;
-  }          
-
-  public XSDParticle getXSDParticle()
-  {                    
-    Object o = getXSDModelGroupDefinition().getContainer();
-    return (o instanceof XSDParticle) ? (XSDParticle)o : null;
-  }
-             
-  protected GraphNodeFigure createGraphNodeFigure()
-  {
-    RepeatableGraphNodeFigure figure = new RepeatableGraphNodeFigure();                                                        
-    figure.getOutlinedArea().setBorder(new RoundedLineBorder(1, 6));
-    figure.getInnerContentArea().setBorder(new MarginBorder(10, 0, 10, 0));
-
-    label = new Label();    
-    label.setFont(mediumBoldFont); 
-    figure.getIconArea().add(label);     
-
-
-    return figure;
-  }  
- 
-  public IFigure getContentPane()  
-  {
-    return graphNodeFigure.getInnerContentArea();
-  }
-           
-  protected List getModelChildren() 
-  {                                             
-    return XSDChildUtility.getModelChildren(getModel());  
-  }
-
-  protected void createEditPolicies()
-  {     
-    super.createEditPolicies();
-  	installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, simpleDirectEditPolicy);
-  }             
-             
-  protected void refreshVisuals()
-  { 
-    super.refreshVisuals();                                                                
-  
-    if (getXSDModelGroupDefinition().isModelGroupDefinitionReference())
-    {
-      label.setText(getXSDModelGroupDefinition().getResolvedModelGroupDefinition().getQName());
-      label.setIcon(XSDEditorPlugin.getXSDImage("icons/GraphViewElementRef.gif"));
-      label.setBorder(new MarginBorder(0, 0, 0, 4)); 
-
-      // todo update occurence label
-      //
-    }
-    else
-    {               
-      label.setText(getXSDModelGroupDefinition().getName());      
-      label.setIcon(null);
-      label.setBorder(new MarginBorder(0, 6, 0, 4));
-    }
-                       
-    if (XSDGraphUtil.isEditable(getModel()))
-    { 
-      graphNodeFigure.getOutlinedArea().setForegroundColor(isSelected ? ColorConstants.black : elementBorderColor);
-      label.setForegroundColor(elementLabelColor);
-    }
-    else
-    {
-      graphNodeFigure.getOutlinedArea().setForegroundColor(readOnlyBackgroundColor);
-      label.setForegroundColor(readOnlyBackgroundColor);
-    }   
-
-    refreshOccurenceLabel(getXSDParticle());
-  }
- 
-
-  protected void performDirectEdit()
-  {              
-    if (getXSDModelGroupDefinition().isModelGroupDefinitionReference())
-    {
-      ComboBoxCellEditorManager manager = new ComboBoxCellEditorManager(this, label)
-      {
-         protected List computeComboContent()
-         {             
-           XSDSchema schema = getXSDModelGroupDefinition().getSchema();
-           List nameList = new ArrayList();
-           if (schema != null)
-           {
-             TypesHelper typesHelper = new TypesHelper(schema);
-             nameList = typesHelper.getModelGroups();
-           }                                           
-           return nameList;
-         }
-
-         public void performModify(String value)
-         {  
-           Display.getCurrent().asyncExec(new DelayedModelGroupRenameAction(getXSDModelGroupDefinition(), value));
-         }
-      };                                          
-      simpleDirectEditPolicy.setDelegate(manager);
-      manager.show();
-    }
-    else 
-    {
-      ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, getXSDModelGroupDefinition());           
-      simpleDirectEditPolicy.setDelegate(manager);
-      manager.show();
-    }
-  }  
-       
-
-  protected class DelayedModelGroupRenameAction implements Runnable
-  {
-     XSDModelGroupDefinition modelGroupDefinition;                                     
-     String value;
-
-     DelayedModelGroupRenameAction(XSDModelGroupDefinition modelGroupDefinition, String value)
-     {
-       this.modelGroupDefinition = modelGroupDefinition;
-       this.value = value;
-     }
-
-     public void run()
-     {
-       modelGroupDefinition.getElement().setAttribute("ref", value);
-     }
-  }
-    
-
-  public void performRequest(Request request)
-  {
-  	if (request.getType() == RequestConstants.REQ_DIRECT_EDIT)
-    {     
-      if (XSDGraphUtil.isEditable(getModel()))
-      {
-  		  performDirectEdit();
-      }
-    }
-  }    
- 
-  // TODO... I added this as a quick fix to makesure the title gets redrawn when the groupRef is changed
-  // we should probably fix the ModelListenerUtil to fire both call both 'change' methods for the ref property
-  //public void modelChildrenChanged()
-  //{   
-  //  super.modelChildrenChanged();                                              
-  //  refreshVisuals(); 
-  //} 
-
-  public void doEditName()
-  {
-    ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, getXSDModelGroupDefinition());           
-    simpleDirectEditPolicy.setDelegate(manager);
-    manager.show();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ModelGroupEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ModelGroupEditPart.java
deleted file mode 100644
index b793eba..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/ModelGroupEditPart.java
+++ /dev/null
@@ -1,187 +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.xsd.ui.internal.graph.editparts;
-                          
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.DragAndDropEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.CenteredIconFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ExpandableGraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.wst.xsd.ui.internal.graph.model.XSDModelAdapterFactory;
-import org.eclipse.xsd.XSDCompositor;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDParticle;
-
-              
-
-public class ModelGroupEditPart extends ExpandableGraphNodeEditPart
-{
-  protected CenteredIconFigure centeredIconFigure;
- 
-  protected static Color editableBackgroundColor = null;
-  protected static Color editableForegroundColor = null;
-  protected static Color nonEditableForegroundColor = null;
-
-  public XSDParticle getXSDParticle()
-  {                    
-    Object o = getXSDModelGroup().getContainer();
-    return (o instanceof XSDParticle) ? (XSDParticle)o : null;
-  }
-
-  public XSDModelGroup getXSDModelGroup()
-  {
-    return (XSDModelGroup)getModel();
-  }           
-
-  protected GraphNodeFigure createGraphNodeFigure()
-  {
-    ExpandableGraphNodeFigure figure = new ExpandableGraphNodeFigure();      
-
-    centeredIconFigure = new CenteredIconFigure();
-    centeredIconFigure.setPreferredSize(new Dimension(32, 20)); 
-    //centeredIconFigure.setBackgroundColor(new Color(Display.getCurrent(), 255, 0, 0)); 
-    figure.getIconArea().add(centeredIconFigure);   
-    //figure.getIconArea().setLayout(new CenterLayout());
-
-    ContainerFigure outlinedArea = figure.getOutlinedArea();                        
-    outlinedArea.setBorder(new RoundedLineBorder(1, 10));   
-    //outlinedArea.setPreferredSize(new Dimension(32, 20)); 
-                         
-    // set layout so that children are aligned vertically with some spacing
-    //
-    figure.getOuterContentArea().getContainerLayout().setHorizontal(false);  
-    figure.getOuterContentArea().getContainerLayout().setSpacing(10);
-
-    return figure;
-  }    
-
-  protected List getModelChildrenHelper()
-  {
-    return XSDChildUtility.getModelChildren(getXSDModelGroup());
-  }  
- 
-  protected void refreshVisuals()
-  {         
-    String iconName = "icons/XSDSequence.gif";    
-    switch (getXSDModelGroup().getCompositor().getValue())
-    {
-      case XSDCompositor.ALL   : { iconName = "icons/XSDAll.gif"; break; }
-      case XSDCompositor.CHOICE   : { iconName = "icons/XSDChoice.gif"; break; }
-      case XSDCompositor.SEQUENCE : { iconName = "icons/XSDSequence.gif"; break; }
-    }
-    centeredIconFigure.image = XSDEditorPlugin.getXSDImage(iconName);
-    centeredIconFigure.repaint();
-                                                          
-
-    ContainerFigure outlinedArea = graphNodeFigure.getOutlinedArea() ;    
-    if (XSDGraphUtil.isEditable(getXSDModelGroup()))
-    {
-      if (editableForegroundColor == null) 
-        editableForegroundColor = new Color(Display.getCurrent(), 120, 152, 184);
-
-      if (editableBackgroundColor == null) 
-        editableBackgroundColor = new Color(Display.getCurrent(), 232, 240, 248);
-       
-      outlinedArea.setForegroundColor(isSelected ? ColorConstants.black : editableForegroundColor);
-      outlinedArea.setBackgroundColor(editableBackgroundColor);
-    }
-    else
-    {                                          
-      if (nonEditableForegroundColor == null) 
-        nonEditableForegroundColor = new Color(Display.getCurrent(), 164, 164, 164);    
-        
-      outlinedArea.setForegroundColor(isSelected ? ColorConstants.black : nonEditableForegroundColor);
-      outlinedArea.setBackgroundColor(ColorConstants.white);
-    }  
-
-    refreshOccurenceLabel(getXSDParticle());
-  }        
-
-  protected boolean isChildLayoutHorizontal()
-  {
-    return false;
-  } 
-
-  protected boolean isDefaultExpanded()
-  {        
-    return isPossibleCycle() ? false : true;
-  }  
-                                                                                         
-  // This test ensures that we don't end up with an infinite default expansion (e.g. when a group contains a cyclic group ref)
-  // TODO... we probably need some more extensible 'OO' way of computing this information
-  protected boolean isPossibleCycle()
-  {        
-    boolean result = false;
-    if (getParent() instanceof ModelGroupDefinitionEditPart)
-    {                                                      
-      ModelGroupDefinitionEditPart group = (ModelGroupDefinitionEditPart)getParent();
-      for (EditPart parent = group.getParent(); parent != null; parent = parent.getParent())
-      {
-        if (parent.getModel() instanceof ElementDeclarationEditPart)
-        {
-          break;
-        }       
-        else 
-        {
-          if (parent.getModel() == group.getModel())
-          {
-            result = true;
-            break;
-          }
-        }
-      }      
-    }      
-    return result;
-  } 
-       
-  protected void createEditPolicies()
-  { 
-    super.createEditPolicies();
-    installEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE, new DragAndDropEditPolicy(getViewer(), selectionHandlesEditPolicy));      
-  }
-  
-  public void activate() 
-  {
-    super.activate();
-    if (getXSDParticle() != null)
-    {
-      XSDModelAdapterFactory.addModelAdapterListener(getXSDParticle(), this);
-    }
-  }
-  /** 
-   * Apart from the deactivation done in super, the source
-   * and target connections are deactivated, and the visual
-   * part of the this is removed.
-   *
-   * @see #activate() 
-   */
-  public void deactivate() 
-  {
-    if (getXSDParticle() != null)
-    {
-      XSDModelAdapterFactory.removeModelAdapterListener(getXSDParticle(), this);
-    }
-    super.deactivate();
-  }   
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RepeatableGraphNodeEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RepeatableGraphNodeEditPart.java
deleted file mode 100644
index 6fdf7d6..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RepeatableGraphNodeEditPart.java
+++ /dev/null
@@ -1,72 +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.xsd.ui.internal.graph.editparts;
-                                        
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.DragAndDropEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RepeatableGraphNodeFigure;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDSchema;
-
-                  
-
-public class RepeatableGraphNodeEditPart extends GraphNodeEditPart
-{
-  protected RepeatableGraphNodeFigure getRepeatableGraphNodeFigure()
-  {
-    return (RepeatableGraphNodeFigure)graphNodeFigure;
-  }
-  
-  protected GraphNodeFigure createGraphNodeFigure()
-  {
-    return new RepeatableGraphNodeFigure();                                                        
-  }   
-      
-  protected void refreshOccurenceLabel(XSDParticle particle)
-  {  
-    if (particle != null)
-    { 
-      refreshOccurenceLabel(particle.getMinOccurs(), particle.getMaxOccurs());
-    }
-  }
-
-  protected void refreshOccurenceLabel(int min, int max)
-  {                     
-    if (min == 1 && max == 1)
-    {
-      getRepeatableGraphNodeFigure().getOccurenceLabel().setText("");
-    }
-    else
-    {
-      String maxString = max == -1 ? "*" : "" + max;
-      getRepeatableGraphNodeFigure().getOccurenceLabel().setText(min + ".." + maxString);
-    }
-    getRepeatableGraphNodeFigure().getOccurenceLabel().repaint();
-  }
-
-  protected void createEditPolicies()
-  { 
-    super.createEditPolicies();
-    
-    if (getModel() instanceof XSDElementDeclaration) {
-    	Object parent = ((XSDElementDeclaration) getModel()).eContainer();
-    	
-    	if (!(parent instanceof XSDSchema)) {
-    		installEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE, new DragAndDropEditPolicy(getViewer(), selectionHandlesEditPolicy));      
-    	}
-    }
-    else {
-    	installEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE, new DragAndDropEditPolicy(getViewer(), selectionHandlesEditPolicy));
-    }
-  }  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RootComplexTypeDefinitionEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RootComplexTypeDefinitionEditPart.java
deleted file mode 100644
index 853a2df..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RootComplexTypeDefinitionEditPart.java
+++ /dev/null
@@ -1,121 +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.xsd.ui.internal.graph.editparts;
-                                   
-import java.util.List;
-
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.RequestConstants;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDInheritanceViewer;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComponentNameDirectEditManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SelectionHandlesEditPolicyImpl;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ExpandableGraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.FillLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-
-              
-
-public class RootComplexTypeDefinitionEditPart extends ExpandableGraphNodeEditPart
-{                      
-  public Label label;  
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();                              
-        
-
-  protected GraphNodeFigure createGraphNodeFigure()
-  {
-    ExpandableGraphNodeFigure figure = new ExpandableGraphNodeFigure();
-    figure.getOutlinedArea().setBorder(new RoundedLineBorder(1, 6));
-    figure.getOutlinedArea().setLayoutManager(new FillLayout());
-    figure.getOutlinedArea().setFill(true);
-    
-    if (getViewer() instanceof XSDInheritanceViewer)
-    {
-      figure.getOuterContentArea().getContainerLayout().setSpacing(10);
-    }
-
-    label = new Label();       
-    label.setFont(mediumBoldFont);
-    label.setBorder(new MarginBorder(5, 8, 5, 8));  
-    figure.getIconArea().add(label);  
-
-    return figure;
-  }          
-   
-                                                                                   
-  protected void refreshVisuals()
-  { 
-    super.refreshVisuals();                                                                
-
-    XSDComplexTypeDefinition ctd = (XSDComplexTypeDefinition)getModel();                   
-    label.setText(ctd.getName() != null ? ctd.getName(): "");
-
-    if (XSDGraphUtil.isEditable(ctd))
-    { 
-      figure.setForegroundColor(elementBorderColor);
-      label.setForegroundColor(elementBorderColor);
-    }
-    else
-    {
-      figure.setForegroundColor(readOnlyBorderColor);
-      label.setForegroundColor(readOnlyBorderColor);
-    }
-  }
-
-
-  protected List getModelChildrenHelper()
-  {
-    XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)getModel();
-    if (getViewer() instanceof XSDInheritanceViewer)
-    {
-      return XSDChildUtility.getImmediateDerivedTypes(ct);
-    }
-    else
-    {
-      return XSDChildUtility.getModelChildren(getModel());
-    }
-  }     
-
-
-  protected void createEditPolicies()
-  {  
-    SelectionHandlesEditPolicyImpl policy = new SelectionHandlesEditPolicyImpl();
-    installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, policy);     
-  	installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, simpleDirectEditPolicy);
-  }  
-        
-
-  protected void performDirectEdit()
-  {                                  
-    ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, (XSDComplexTypeDefinition)getModel());     
-    simpleDirectEditPolicy.setDelegate(manager);
-    manager.show();
-  }    
-
-
-  public void performRequest(Request request)
-  {
-  	if (request.getType() == RequestConstants.REQ_DIRECT_EDIT)
-    {
-      if (XSDGraphUtil.isEditable(getModel()))
-      {
-  		  performDirectEdit();
-      }
-    }
-  } 
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RootModelGroupDefinitionEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RootModelGroupDefinitionEditPart.java
deleted file mode 100644
index 35f4486..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/RootModelGroupDefinitionEditPart.java
+++ /dev/null
@@ -1,105 +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.xsd.ui.internal.graph.editparts;
-                                   
-import java.util.List;
-
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.RequestConstants;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComponentNameDirectEditManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SelectionHandlesEditPolicyImpl;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ExpandableGraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.FillLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-
-              
-public class RootModelGroupDefinitionEditPart extends ExpandableGraphNodeEditPart
-{                      
-  public Label label;  
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();                              
-                     
-
-  protected GraphNodeFigure createGraphNodeFigure()
-  {
-    ExpandableGraphNodeFigure figure = new ExpandableGraphNodeFigure();
-    figure.getOutlinedArea().setBorder(new RoundedLineBorder(1, 6));
-    figure.getOutlinedArea().setLayoutManager(new FillLayout());
-    figure.getOutlinedArea().setFill(true);
-
-    label = new Label();       
-    label.setFont(mediumBoldFont);
-    label.setBorder(new MarginBorder(5, 8, 5, 8));  
-    figure.getIconArea().add(label);  
-
-    return figure;
-  }  
-                                                                          
-  protected void refreshVisuals()
-  { 
-    super.refreshVisuals();                                                                
-
-    XSDModelGroupDefinition mgd = (XSDModelGroupDefinition)getModel();                      
-    String name = mgd.getResolvedModelGroupDefinition().getName();                  
-    label.setText(name);
-
-    if (XSDGraphUtil.isEditable(getModel()))
-    { 
-      figure.setForegroundColor(elementBorderColor);
-      label.setForegroundColor(elementBorderColor);
-    }
-    else
-    {
-      figure.setForegroundColor(readOnlyBorderColor);
-      label.setForegroundColor(readOnlyBorderColor);
-    }
-  }  
-
-  protected List getModelChildrenHelper()
-  {
-    return XSDChildUtility.getModelChildren(getModel());
-  }   
-
-
-  protected void createEditPolicies()
-  {  
-    SelectionHandlesEditPolicyImpl policy = new SelectionHandlesEditPolicyImpl();
-    installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, policy);     
-  	installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, simpleDirectEditPolicy);
-  }  
-        
-
-  protected void performDirectEdit()
-  {                                  
-    ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, ((XSDModelGroupDefinition)getModel()).getResolvedModelGroupDefinition());           
-    simpleDirectEditPolicy.setDelegate(manager);
-    manager.show();
-  }    
-
-
-  public void performRequest(Request request)
-  {
-  	if (request.getType() == RequestConstants.REQ_DIRECT_EDIT)
-    {
-      if (XSDGraphUtil.isEditable(getModel()))
-      {
-  		  performDirectEdit();
-      }
-    }
-  } 
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SchemaDirectiveEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SchemaDirectiveEditPart.java
deleted file mode 100644
index c0697d5..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SchemaDirectiveEditPart.java
+++ /dev/null
@@ -1,60 +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.xsd.ui.internal.graph.editparts;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.CenteredIconFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.FillLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.xsd.XSDSchemaDirective;
-
-
-public class SchemaDirectiveEditPart extends BaseEditPart
-{
-  protected CenteredIconFigure centeredIconFigure;
-  protected Label label;
-  /**
-   * @see org.eclipse.gef.editparts.AbstractGraphicalEditPart#createFigure()
-   */
-  protected IFigure createFigure()
-  {
- 
-    ContainerFigure figure = new ContainerFigure();
-
-    figure.setLayoutManager(new FillLayout());
-    figure.setBorder(new RoundedLineBorder(1, 8));
-
-    ContainerFigure fig = new ContainerFigure();
-    fig.setLayoutManager(new FillLayout());
-    fig.setBorder(new MarginBorder(10, 0, 10, 0));
-    figure.add(fig);
-
-
-    label = new Label();    
-    label.setBorder(new MarginBorder(4, 2, 2, 10));
-    fig.add(label);        
-
-    return figure;
-  }  
- 
-  public void refreshVisuals()
-  {
-    XSDSchemaDirective directive = (XSDSchemaDirective)getModel();
-    String schemaLocation = directive.getSchemaLocation();
-    if (schemaLocation == null) schemaLocation = "(" + XSDEditorPlugin.getXSDString("_UI_LABEL_NO_LOCATION_SPECIFIED") + ")";
-    if (schemaLocation.equals("")) schemaLocation = "(" + XSDEditorPlugin.getXSDString("_UI_LABEL_NO_LOCATION_SPECIFIED") + ")";
-    label.setText("  " + directive.getElement().getLocalName() + " " + schemaLocation);
-  } 
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SchemaEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SchemaEditPart.java
deleted file mode 100644
index b23821c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SchemaEditPart.java
+++ /dev/null
@@ -1,207 +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.xsd.ui.internal.graph.editparts;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.Figure;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.gef.EditPart;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.GraphicsConstants;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.FillLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RoundedLineBorder;
-import org.eclipse.wst.xsd.ui.internal.graph.model.Category;
-import org.eclipse.wst.xsd.ui.internal.graph.model.XSDModelAdapterFactory;
-import org.eclipse.xsd.XSDSchema;
-
-public class SchemaEditPart extends BaseEditPart
-{
-  protected ContainerFigure containerFigure;
-  protected Label label;
-
-  //protected ContainerFigure childExpansionContainer;
-  public IFigure getContentPane()
-  {
-    return containerFigure;
-  }
-
-  protected IFigure createFigure()
-  {
-    ContainerFigure outer = new ContainerFigure();
-    outer.setBorder(new RoundedLineBorder(1, 6));
-    outer.setForegroundColor(categoryBorderColor);
-    FillLayout fillLayout = new FillLayout(4);
-    outer.setLayoutManager(fillLayout); 
-    //outer.getContainerLayout().setHorizontal(false);
-    
-    ContainerFigure r = new ContainerFigure();  
-    r.setOutline(false);
-    r.setMinimumSize(new Dimension(0, 0));
-    r.setFill(true);
-    r.setBackgroundColor(GraphicsConstants.elementBackgroundColor);
-    outer.add(r);
-    
-	final int theMinHeight = 200;
-    FillLayout outerLayout = new FillLayout()
-    {
-      protected Dimension calculatePreferredSize(IFigure parent, int width, int height)
-      {
-        Dimension d = super.calculatePreferredSize(parent, width, height);
-        d.union(new Dimension(100, theMinHeight));
-        return d;
-      }
-    };
-    outerLayout.setHorizontal(false);
-    outer.setLayoutManager(outerLayout);
-    
-    label = new Label();
-    label.setForegroundColor(ColorConstants.black);
-    label.setBorder(new MarginBorder(2, 4, 2, 4));    
-    r.add(label);
-    
-    RectangleFigure line = new RectangleFigure();
-    line.setPreferredSize(20, 1);
-    outer.add(line);
-    
-    containerFigure = new ContainerFigure();
-    //containerFigure.setBackgroundColor(ColorConstants.red);
-    containerFigure.setBorder(new MarginBorder(4, 4, 4, 4));
-    fillLayout = new FillLayout(4);
-    containerFigure.setLayoutManager(fillLayout);
-    //containerFigure.setLayoutManager(new FillLayout(false));
-    /*
-     * FlowLayout layout1 = new FlowLayout(false); layout1.setMajorSpacing(0);
-     * layout1.setMinorSpacing(0); layout1.setStretchMinorAxis(true);
-     * containerFigure.setLayoutManager(layout1);
-     */
-    outer.add(containerFigure);
-    //childExpansionContainer = new ContainerFigure();
-    //childExpansionContainer.getContainerLayout().setHorizontal(false);
-    //childExpansionContainer.setOutlined(true);
-    return outer;
-  }
-
-  protected List getModelChildren()
-  {
-    XSDSchema schema = (XSDSchema) getModel();
-    List list = new ArrayList();
-    list.add(CategoryRowEditPart.DIRECTIVES_AND_NOTATIONS);
-    list.add(CategoryRowEditPart.ELEMENTS_AND_TYPES);
-    list.add(CategoryRowEditPart.MODEL_GROUPS_AND_ATTRIBUTES);      
-    return list;
-  }
-
-  protected EditPart createChild(Object model)
-  {
-    CategoryRowEditPart result = new CategoryRowEditPart();
-    result.setModel(model);
-    result.setParent(this);
-    result.setSchema((XSDSchema)getModel());
-    return result;
-  }
-  
-
-  protected void refreshVisuals()
-  {
-    super.refreshVisuals();
-    String targetNamespaceValue = ((XSDSchema)getModel()).getTargetNamespace();
-    if (targetNamespaceValue == null || targetNamespaceValue.length() == 0)
-    {
-      targetNamespaceValue = XSDEditorPlugin.getXSDString("_UI_GRAPH_XSDSCHEMA_NO_NAMESPACE");
-    }     
-    label.setText(XSDEditorPlugin.getXSDString("_UI_GRAPH_XSDSCHEMA") + " : " + targetNamespaceValue);
-  }
-}
-
-class CategoryRowEditPart extends BaseEditPart
-{  
-  public static final int[] ELEMENTS_AND_TYPES = {Category.ELEMENTS, Category.TYPES };
-  public static final int[] DIRECTIVES_AND_NOTATIONS =  {Category.DIRECTIVES, Category.NOTATIONS };
-  public static final int[] MODEL_GROUPS_AND_ATTRIBUTES = {Category.GROUPS, Category.ATTRIBUTES};//, Category.COMPLEX_TYPES };
-  
-  protected XSDSchema schema;
-  protected Figure contentPane;
-  
-  protected IFigure createFigure()
-  {
-    ContainerFigure containerFigure = new ContainerFigure();
-    //containerFigure.setBackgroundColor(ColorConstants.red);
-    containerFigure.setFill(true);
-    containerFigure.setBorder(new MarginBorder(4, 4, 4, 4));
-    org.eclipse.wst.xsd.ui.internal.gef.util.figures.FillLayout fillLayout = new org.eclipse.wst.xsd.ui.internal.gef.util.figures.FillLayout(4);
-    fillLayout.setHorizontal(true);
-    containerFigure.setLayoutManager(fillLayout);
-    //containerFigure.setLayoutManager(new FillLayout(4));
-    return containerFigure;
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.gef.editparts.AbstractGraphicalEditPart#getContentPane()
-   */
-  public IFigure getContentPane()
-  {
-    return super.getContentPane();
-  }
-
-  public XSDSchema getSchema()
-  {
-    return schema;
-  }
-
-  public void setSchema(XSDSchema schema)
-  {
-    this.schema = schema;
-  }
-  
-
-  protected List getModelChildren()
-  {
-    List categoryList = (List) XSDModelAdapterFactory.getAdapter(schema).getProperty(schema, "groups");
-    return filterCategoryList(categoryList);
-  }
-  
-  protected List filterCategoryList(List list)
-  {
-    List result = new ArrayList();
-    int[] categoryTypes = (int[])getModel();
-    for (Iterator i = list.iterator(); i.hasNext(); )
-    {
-      Category category = (Category)i.next();
-      if (isMatching(categoryTypes, category))
-      {
-        result.add(category);
-      }
-    }
-    return result;
-  }
-  
-  private boolean isMatching(int[] categoryTypes, Category category)
-  {
-    boolean result = false;
-    for (int i = 0; i < categoryTypes.length; i++)
-    {
-      if (categoryTypes[i] == category.getGroupType())
-      {
-        result = true;
-        break;
-      }
-    }
-    return result;
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SimpleTypeDefinitionEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SimpleTypeDefinitionEditPart.java
deleted file mode 100644
index df1afad..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SimpleTypeDefinitionEditPart.java
+++ /dev/null
@@ -1,69 +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.xsd.ui.internal.graph.editparts;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.ImageFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SelectionHandlesEditPolicyImpl;
-
-public class SimpleTypeDefinitionEditPart extends BaseEditPart
-{
-  protected Label label;
-  protected SelectionHandlesEditPolicyImpl selectionHandlesEditPolicy;
-
-  ImageFigure figure;
-  Image image;
-  
-  protected IFigure createFigure()
-  {
-    String iconName = "icons/XSDSimpleTypeForEditPart.gif";
-    image = XSDEditorPlugin.getXSDImage(iconName);
-  
-    figure = new ImageFigure(image);
-    return figure;
-  }
-
-  protected void refreshVisuals()
-  {
-    if (isSelected)
-    {
-      image = XSDEditorPlugin.getXSDImage("icons/XSDSimpleTypeForEditPart.gif");
-    }
-    else
-    {
-      image = XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif");
-    }
-    figure.setImage(image);
-    figure.repaint();
-  }
-  
-  protected boolean isConnectedEditPart()
-  {
-    return false;
-  }
-  
-  public void deactivate()
-  {
-    super.deactivate();
-    image = null;  // where do we dispose the image?
-  }
-  
-
-  protected void createEditPolicies()
-  { 
-    selectionHandlesEditPolicy = new SelectionHandlesEditPolicyImpl();
-    installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, selectionHandlesEditPolicy);   
-  }  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SubstitutionGroupViewerRootEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SubstitutionGroupViewerRootEditPart.java
deleted file mode 100644
index 3899e8e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/SubstitutionGroupViewerRootEditPart.java
+++ /dev/null
@@ -1,76 +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.xsd.ui.internal.graph.editparts;
-                                      
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Panel;
-import org.eclipse.gef.EditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerLayout;
-
-              
-
-public class SubstitutionGroupViewerRootEditPart extends BaseEditPart
-{
-  protected final static String MESSAGE_PLACE_HOLDER = "MESSAGE_PLACE_HOLDER";
-  protected Object input;              
-
-  public void setInput(Object input)
-  {
-    this.input = input;
-    refreshChildren();
-  }
-
-  protected IFigure createFigure()
-  {
-    Panel panel = new Panel();
-    ContainerLayout layout = new ContainerLayout();
-    layout.setBorder(60);
-    panel.setLayoutManager(layout);
-    return panel;
-  }   
-           
-
-  protected List getModelChildren() 
-  {               
-    List list = new ArrayList();
-    if (input != null)
-    {
-      list.add(input);
-    }
-    else
-    {
-      list.add(MESSAGE_PLACE_HOLDER);
-    }
-    return list;
-  }         
-
-  protected EditPart createChild(Object model) 
-  { 
-    EditPart editPart = null;
-    if (model == MESSAGE_PLACE_HOLDER)
-    {
-      editPart = new MessageEditPart();
-      editPart.setModel(model);
-    }
-    else
-    {
-      editPart = super.createChild(model);
-    }
-    return editPart;
-  } 
-
-  protected void createEditPolicies()
-  {  
-  }             
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/TopLevelComponentEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/TopLevelComponentEditPart.java
deleted file mode 100644
index 2d96719..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/TopLevelComponentEditPart.java
+++ /dev/null
@@ -1,316 +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.xsd.ui.internal.graph.editparts;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.RequestConstants;
-import org.eclipse.gef.editpolicies.SelectionEditPolicy;
-import org.eclipse.gef.requests.LocationRequest;
-import org.eclipse.gef.ui.parts.AbstractEditPartViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.xsd.ui.internal.gef.util.editparts.AbstractComponentViewerRootEditPart;
-import org.eclipse.wst.xsd.ui.internal.gef.util.figures.FillLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.GraphicsConstants;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDComponentViewer;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.ComponentNameDirectEditManager;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SelectionHandlesEditPolicyImpl;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.model.ModelAdapter;
-import org.eclipse.wst.xsd.ui.internal.graph.model.XSDModelAdapterFactory;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-
-
-public class TopLevelComponentEditPart extends BaseEditPart implements IFeedbackHandler
-{
-  protected Label label;
-  //protected Label arrowLabel;
-  protected ContainerFigure labelHolder = new ContainerFigure();
-  protected SelectionHandlesEditPolicyImpl selectionHandlesEditPolicy;
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();
-  protected boolean isReadOnly;
-  protected boolean isSelected;
-  
-  protected IFigure createFigure()
-  {
-    ContainerFigure typeGroup = new ContainerFigure();
-    typeGroup.getContainerLayout().setHorizontal(true);
-
-    //arrowLabel = new Label();
-    //arrowLabel.setIcon(XSDEditorPlugin.getPlugin().getImage("icons/forward.gif"));
-    //typeGroup.add(arrowLabel);
-
-    labelHolder = new ContainerFigure();
-    FillLayout fillLayout = new FillLayout();
-    labelHolder.setLayoutManager(fillLayout);
-    labelHolder.setFill(true);
-    typeGroup.add(labelHolder);
-
-    label = new Label();
-    label.setBorder(new MarginBorder(0, 2, 2, 1));
-    label.setForegroundColor(ColorConstants.black);
-    labelHolder.add(label);
-    
-    try
-	  {
-      // evil hack to provide underlines
-      Object model = getModel();
-      
-      boolean isLinux = java.io.File.separator.equals("/");
-      if (model instanceof XSDComplexTypeDefinition ||
-          model instanceof XSDElementDeclaration ||
-          model instanceof XSDModelGroupDefinition)
-      {
-        if (!isLinux)
-        {
-          FontData oldData = GraphicsConstants.medium.getFontData()[0];
-          FontData fontData = new FontData(oldData.getName(), oldData.getHeight(), SWT.NONE);
-
-            // TODO... clean this awful code up... we seem to be leaking here too
-            // we can't call this directly since the methods are OS dependant
-            // fontData.data.lfUnderline = 1
-            // so instead we use reflection
-            Object data = fontData.getClass().getField("data").get(fontData);
-//            System.out.println("data" + data.getClass());
-            data.getClass().getField("lfUnderline").setByte(data, (byte)1);
-            Font font = new Font(Display.getCurrent(), fontData);
-            label.setFont(font);        
-
-        }
-      }
-	  }
-    catch (Exception e)
-	  {
-
-	  }
-    //FontData data = label.getFont().getFontData()[0];
-    //data.data.lfUnderline = 1;
-    
-    //RectangleFigure line = new RectangleFigure();    
-    //line.setPreferredSize(2, 1);   
-    //labelHolder.add(line, 1);    
-    
-    //label.getFont().getFontData()[0].setStyle()
-    
-    return typeGroup;
-  }
-  
-  public void refreshVisuals()
-  {
-    ModelAdapter adapter = XSDModelAdapterFactory.getAdapter(getModel());
-    if (adapter != null)
-    {
-      // isReadOnly = Boolean.TRUE.equals(adapter.getProperty(getModel(), "isReadOnly"));
-      isReadOnly = !XSDGraphUtil.isEditable(getModel());
-      label.setForegroundColor(computeLabelColor());
-      label.setText((String)adapter.getProperty(getModel(), ModelAdapter.LABEL_PROPERTY));
-      Image image = (Image)adapter.getProperty(getModel(), ModelAdapter.IMAGE_PROPERTY);
-      if (image != null) label.setIcon(image);
-      //arrowLabel.setVisible(Boolean.TRUE.equals(adapter.getProperty(getModel(), "drillDown")));
-    }
-    else
-    {
-      label.setText("unknown object" + getModel().getClass().getName());
-      //arrowLabel.setVisible(false);
-    }
-
-    if (reselect)
-    {
-      getViewer().select(this);
-      setReselect(false);
-    }
-  }
-
-
-  public XSDNamedComponent getXSDNamedComponent()
-  {
-    return (XSDNamedComponent) getModel();
-  }
-
-  public List getModelChildren()
-  {
-    return Collections.EMPTY_LIST;
-  }
-  
-  protected void createEditPolicies()
-  { 
-    //installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, new NonResizableEditPolicy());    
-    //selectionHandlesEditPolicy = new SelectionHandlesEditPolicyImpl();
-    //installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, selectionHandlesEditPolicy);  
-  	
-    SelectionHandlesEditPolicyImpl policy = new SelectionHandlesEditPolicyImpl();
-    installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, policy);
-
-    SelectionEditPolicy feedBackSelectionEditPolicy = new SelectionEditPolicy()
-    {
-      protected void hideSelection()
-      {
-        EditPart editPart = getHost();
-        if (editPart instanceof IFeedbackHandler)
-        {
-          ((IFeedbackHandler)editPart).removeFeedback();
-        }
-      }
-
-      protected void showSelection()
-      {
-        EditPart editPart = getHost();
-        if (editPart instanceof IFeedbackHandler)
-        {
-          ((IFeedbackHandler)editPart).addFeedback();
-        }
-      }
-    };
-    installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, feedBackSelectionEditPolicy);
-
-    installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE, simpleDirectEditPolicy);
-  }  
-  
-  public Color computeLabelColor()
-  {
-    Color color = ColorConstants.black;
-    if (isSelected)
-    {
-      color = ColorConstants.white;
-    }
-    else if (isReadOnly)
-    {
-      color = ColorConstants.gray;
-    }
-    return color;
-  }
-
-
-  public void addFeedback()
-  {
-    isSelected = true;
-
-    labelHolder.setBackgroundColor(ColorConstants.black);
-    label.setForegroundColor(computeLabelColor());
-    labelHolder.setFill(true);
-    
-    if (doScroll)
-    {
-      CategoryEditPart categoryEP = (CategoryEditPart)getParent();
-      categoryEP.scrollTo(this);
-      setScroll(false);
-    }
-  }
-  
-  private boolean doScroll = false;
-  public void setScroll(boolean doScroll)
-  {
-    this.doScroll = doScroll;
-  }
-
-  public void removeFeedback()
-  {
-    isSelected = false;
-    labelHolder.setBackgroundColor(null);
-    label.setForegroundColor(computeLabelColor());
-    labelHolder.setFill(false);
-  }
-
-  public void performRequest(Request request)
-  {  
-    if (request.getType() == RequestConstants.REQ_DIRECT_EDIT ||
-        request.getType() == RequestConstants.REQ_OPEN)
-    {
-      
-      Object model = getModel();
-      if (model instanceof XSDComplexTypeDefinition ||
-          model instanceof XSDElementDeclaration ||
-          model instanceof XSDModelGroupDefinition)
-      {
-        if (request instanceof LocationRequest)
-        {
-          LocationRequest locationRequest = (LocationRequest)request;
-          Point p = locationRequest.getLocation();
-        
-          if (hitTest(labelHolder, p))
-          {
-            performDrillDownAction();
-          }              
-        }
-      }
-    }
-  }  
-
-  public boolean hitTest(IFigure target, Point location)
-  {
-    Rectangle b = target.getBounds().getCopy();
-    target.translateToAbsolute(b);  
-    return b.contains(location);
-  }  
-
-  protected void performDrillDownAction()
-  {                                                                                    
-    Runnable runnable = new Runnable()
-    {
-      public void run()
-      {
-        //((XSDComponentViewer)getViewer()).setInput((XSDConcreteComponent)getModel());
-        
-        EditPart editPart = ((AbstractEditPartViewer)getViewer()).getRootEditPart().getContents();
-        if (editPart instanceof AbstractComponentViewerRootEditPart)
-        {
-          AbstractComponentViewerRootEditPart rootEditPart = (AbstractComponentViewerRootEditPart)editPart;
-          rootEditPart.setInput((XSDConcreteComponent)getModel());
-        }
-        else if (editPart instanceof BaseEditPart)
-        {
-          ((XSDComponentViewer)getViewer()).setInput((XSDConcreteComponent)getModel());
-        }
-      }
-    };
-    Display.getCurrent().asyncExec(runnable);
-  }
-  
-  public void doEditName()
-  {
-    removeFeedback();
-    Object object = getModel();
-    if (object instanceof XSDNamedComponent)
-    {
-      ComponentNameDirectEditManager manager = new ComponentNameDirectEditManager(this, label, (XSDNamedComponent)object);
-      simpleDirectEditPolicy.setDelegate(manager);
-      manager.show();
-    }
-  }
-
-  
-  static boolean reselect = false;
-  
-  public void setReselect(boolean state)
-  {
-    reselect = state;
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/TypeEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/TypeEditPart.java
deleted file mode 100644
index 37a83e1..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/TypeEditPart.java
+++ /dev/null
@@ -1,72 +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.xsd.ui.internal.graph.editparts;
-
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.gef.EditPolicy;
-import org.eclipse.gef.Request;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SelectionHandlesEditPolicyImpl;
-import org.eclipse.wst.xsd.ui.internal.graph.editpolicies.SimpleDirectEditPolicy;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-
-public class TypeEditPart extends BaseEditPart
-{
-  protected SimpleDirectEditPolicy simpleDirectEditPolicy = new SimpleDirectEditPolicy();
-
-  protected IFigure createFigure()
-  {
-    ContainerFigure typeGroup = new ContainerFigure();
-//    typeGroup.setBorder(new SimpleRaisedBorder(1));
-//    typeGroup.setBorder(new LineBorder(1));
-//    typeGroup.setBorder(new RoundedLineBorder(1,5));
-
-    Label typeLabel = new Label("type");
-    typeLabel.setBorder(new MarginBorder(0,2,2,1));
-    typeGroup.add(typeLabel);
-
-    return typeGroup;
-  }    
-
-  protected void refreshVisuals()
-  {                 
-    super.refreshVisuals();
-  }
-
-  public XSDTypeDefinition getXSDTypeDefinition()
-  {         
-    return (XSDTypeDefinition)getModel();
-  }
-
-                    
-  public List getModelChildren() 
-  {                   
-    return Collections.EMPTY_LIST;
-  }  
-
-  protected void createEditPolicies()
-  {        
-    SelectionHandlesEditPolicyImpl policy = new SelectionHandlesEditPolicyImpl();
-    installEditPolicy(EditPolicy.SELECTION_FEEDBACK_ROLE, policy);      
-  } 
-  
-               
-  public void performRequest(Request request)
-  {
-    super.performRequest(request);
-  }  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/WildcardEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/WildcardEditPart.java
deleted file mode 100644
index 53a86a1..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/WildcardEditPart.java
+++ /dev/null
@@ -1,85 +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.xsd.ui.internal.graph.editparts;
-                          
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.LineBorder;
-import org.eclipse.draw2d.MarginBorder;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDGraphUtil;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.GraphNodeFigure;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.RepeatableGraphNodeFigure;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDWildcard;
-              
-
-public class WildcardEditPart extends RepeatableGraphNodeEditPart
-{
-  protected Label label;
-
-                             
-  public XSDParticle getXSDParticle()
-  {                    
-    Object o = getXSDWildcard().getContainer();
-    return (o instanceof XSDParticle) ? (XSDParticle)o : null;
-  }
-
-
-  public XSDWildcard getXSDWildcard()
-  {
-    return (XSDWildcard)getModel();
-  }
-
-   
-  protected GraphNodeFigure createGraphNodeFigure()
-  {
-    RepeatableGraphNodeFigure figure = new RepeatableGraphNodeFigure();                                                        
-    figure.setConnected(true);
-    figure.getOutlinedArea().setFill(true);
-
-    label = new Label();    
-    label.setText(XSDEditorPlugin.getXSDString("_UI_ANY_ELEMENT")); 
-    label.setBorder(new MarginBorder(0, 6, 0, 4));
-    label.setFont(mediumBoldFont);        
-
-    figure.getIconArea().add(label);     
-
-    return figure;
-  }  
- 
-      
-  protected void refreshVisuals()
-  {     
-    ContainerFigure rectangle = graphNodeFigure.getOutlinedArea();
-    if (XSDGraphUtil.isEditable(getModel()))
-    {
-      rectangle.setBorder(new LineBorder(2));
-      rectangle.setBackgroundColor(elementBackgroundColor);
-      rectangle.setForegroundColor(isSelected ? ColorConstants.black : elementBorderColor);
-
-      label.setBackgroundColor(elementBackgroundColor);
-      label.setForegroundColor(elementLabelColor);
-    }
-    else
-    {            
-      rectangle.setBorder(new LineBorder(readOnlyBorderColor, 2));
-      rectangle.setBackgroundColor(readOnlyBackgroundColor);
-      rectangle.setForegroundColor(isSelected ? ColorConstants.black : readOnlyBorderColor);
-   
-      label.setBackgroundColor(readOnlyBackgroundColor);
-      label.setForegroundColor(readOnlyBorderColor);
-    } 
-
-    refreshOccurenceLabel(getXSDParticle());
-  }      
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/XSDEditPartFactory.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/XSDEditPartFactory.java
deleted file mode 100644
index 5d6ed1e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editparts/XSDEditPartFactory.java
+++ /dev/null
@@ -1,102 +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.xsd.ui.internal.graph.editparts;
-                              
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPartFactory;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDInheritanceViewer;
-import org.eclipse.wst.xsd.ui.internal.graph.model.Category;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-
-
-
-public class XSDEditPartFactory implements EditPartFactory
-{   
-  protected static XSDEditPartFactory instance;
-                      
-  public static XSDEditPartFactory getInstance()
-  {
-    if (instance == null)
-    {               
-      instance = new XSDEditPartFactory();
-    }
-    return instance;
-  }
-  
-  public EditPart createEditPart(EditPart parent, Object model)
-  {
-    EditPart editPart = null;
-           
-    if (model instanceof Category)
-    {                                  
-      editPart = new CategoryEditPart();
-    }
-    else if (model instanceof XSDElementDeclaration)
-    {       
-      editPart = new ElementDeclarationEditPart();
-    }    
-    else if (model instanceof XSDComplexTypeDefinition)
-    {
-      if (parent.getViewer() instanceof XSDInheritanceViewer)
-      {
-        editPart = new RootComplexTypeDefinitionEditPart();
-      }
-      else
-      {
-        if (parent instanceof CategoryEditPart)
-          editPart = new RootComplexTypeDefinitionEditPart();
-        else
-          editPart = new ComplexTypeDefinitionEditPart();             
-      }
-    }      
-    else if (model instanceof XSDModelGroup)
-    {       
-      editPart = new ModelGroupEditPart();
-    }      
-    else if (model instanceof XSDModelGroupDefinition)
-    {       
-      if (parent instanceof CategoryEditPart)
-        editPart = new RootModelGroupDefinitionEditPart();
-      else
-        editPart = new ModelGroupDefinitionEditPart();
-    }  
-    else if (model instanceof XSDSchema)
-    {                                  
-      editPart = new SchemaEditPart();
-    }
-    else if (model instanceof XSDWildcard)
-    {                                  
-      editPart = new WildcardEditPart();
-    }
-    else if (model instanceof XSDSimpleTypeDefinition)
-    {
-      editPart = new SimpleTypeDefinitionEditPart();
-    }
-
-    if (editPart != null)   
-    {
-      editPart.setModel(model);
-      editPart.setParent(parent);
-    }
-    else
-    {      
-//      System.out.println("can't create editPart for " + model);
-//      Thread.dumpStack();
-    }
-    return editPart;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/ComboBoxCellEditorManager.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/ComboBoxCellEditorManager.java
deleted file mode 100644
index bf58f17..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/ComboBoxCellEditorManager.java
+++ /dev/null
@@ -1,205 +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.xsd.ui.internal.graph.editpolicies;
-                                                  
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gef.tools.CellEditorLocator;
-import org.eclipse.gef.tools.DirectEditManager;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ComboBoxCellEditor;
-import org.eclipse.jface.viewers.ICellEditorListener;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-
-public abstract class ComboBoxCellEditorManager extends DirectEditManager implements DirectEditPolicyDelegate
-{
-  protected Label label;                                 
-
-  public ComboBoxCellEditorManager(GraphicalEditPart source,	Label label)
-  {
-	  super(source, ComboBoxCellEditor.class, new InternalCellEditorLocator(label));
-    this.label = label;                        
-  }
-
-  protected void initCellEditor() 
-  {                                             
-  	String initialLabelText = label.getText();   
-
-    CCombo combo = (CCombo)getCellEditor().getControl();
-   	combo.setFont(label.getFont());
-    combo.setForeground(label.getForegroundColor());
-    combo.setBackground(label.getBackgroundColor());
-    /*
-	combo.addKeyListener(new KeyAdapter() {
-			// hook key pressed - see PR 14201  
-			public void keyPressed(KeyEvent keyEvent) {
-				if (keyEvent.character == 'z') { 
-					getCellEditor().applyEditorValue();
-				}
-			}
-		});
-*/
-  ICellEditorListener cellEditorListener = new ICellEditorListener()
-  {
-    public void cancelEditor()
-    {
-//      System.out.println("cancelEditor");
-    }
-    public void applyEditorValue()
-    {
-//      System.out.println("applyEditorValue");
-    }
-    public void editorValueChanged(boolean old, boolean newState)
-    {
-//      System.out.println("editorValueChanged");
-    }
-  };
-  getCellEditor().addListener(cellEditorListener);
-
-    String[] item = combo.getItems();
-    int index = 0;
-    for (int i = 0; i < item.length; i++)
-    {
-      if (item[i].equals(initialLabelText))
-      {
-	      getCellEditor().setValue(new Integer(i));
-        break;
-      }
-    } 	
-  }	 
-         
-  // hack... for some reason the ComboBoxCellEditor does't fire an editorValueChanged to set the dirty flag
-  // unless we overide this method to return true, the manager is not notified of changes made in the cell editor
-  protected boolean isDirty()
-  {
-	  return true;
-  }
-
-  protected CellEditor createCellEditorOn(Composite composite)
-  { 
-    boolean isLabelTextInList = false;                                       
-    List list = computeComboContent();
-    for (Iterator i = list.iterator(); i.hasNext(); )
-    {
-      String string = (String)i.next();
-      if (string.equals(label.getText()))
-      {                               
-         isLabelTextInList = true;
-         break;
-      }
-    } 
-         
-    if (!isLabelTextInList)
-    {
-      list.add(label.getText());
-    }
-                                               
-    List sortedList = computeSortedList(list);
-    String[] stringArray = new String[sortedList.size()];
-    for (int i = 0; i < stringArray.length; i++)
-    {
-      stringArray[i] = (String)sortedList.get(i);
-    }
-    return new ComboBoxCellEditor(composite, stringArray);
-	}                                                                 
-
-  protected List computeSortedList(List list)
-  {
-    return list;
-  }
-
-  protected abstract List computeComboContent(); 
-
-  protected abstract void performModify(String value);
-
-  public static class InternalCellEditorLocator implements CellEditorLocator
-  {
-    protected Label label;
-
-    public InternalCellEditorLocator(Label label)
-    {
-      this.label = label;
-    }                   
-
-    public void relocate(CellEditor celleditor) 
-    {
-      CCombo combo = (CCombo)celleditor.getControl();  
-	    Point pref = combo.computeSize(-1, -1);
-	    Rectangle rect = label.getTextBounds().getCopy();
-	    label.translateToAbsolute(rect);
-	    combo.setBounds(rect.x-4, rect.y-1, pref.x+1, pref.y+1);
-    }
-  } 
-   
-  // implements DirectEditPolicyDelegate
-  // 
-  public void performEdit(CellEditor cellEditor)
-  {   
-    CCombo combo = (CCombo)getCellEditor().getControl();
-    int index = combo.getSelectionIndex();              
-    if (index != -1)
-    {      
-      String value = combo.getItem(index);
-      performModify(combo.getItem(index));
-    }  
-    else
-    {
-      String typedValue = combo.getText();	
-      if (combo.indexOf(typedValue) != -1)
-      {	      
-	    performModify(typedValue);
-      }      	
-      else
-      {
-      	String closeMatch = getCloseMatch(typedValue, combo.getItems());
-      	if (closeMatch != null)
-      	{
-		  performModify(closeMatch);      	
-      	}
-      	else
-      	{      	
-      	  Display.getCurrent().beep();
-      	}
-      }
-    }    	                                                
-  }
-  
-  protected String getCloseMatch(String value, String[] items)
-  {
-    int matchIndex = -1;
-
-    for (int i = 0; i < items.length; i++)
-    {
-    	String item = items[i];
-    	String a = getLocalName(value);
-    	String b = getLocalName(item);
-		  if (a.equalsIgnoreCase(b))
-		  { 
-			  matchIndex = i;
-			  break;				
-		  }	    	     
-    }  
-    return matchIndex != -1 ? items[matchIndex] : null;
-  }
-  
-  protected String getLocalName(String string)
-  {
-		int index = string.indexOf(":");
-	  return (index != -1) ? string.substring(index + 1) : string;  
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/ComponentNameDirectEditManager.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/ComponentNameDirectEditManager.java
deleted file mode 100644
index 5f25abc..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/ComponentNameDirectEditManager.java
+++ /dev/null
@@ -1,105 +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.xsd.ui.internal.graph.editpolicies;
-                                                  
-import org.eclipse.draw2d.Label;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.TopLevelComponentEditPart;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalElementRenamer;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalGroupRenamer;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalSimpleOrComplexTypeRenamer;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDSwitch;
-
-
-
-public class ComponentNameDirectEditManager extends TextCellEditorManager
-{
-  protected XSDNamedComponent component;
-  protected static GraphicalEditPart mySource;
-
-  public ComponentNameDirectEditManager(GraphicalEditPart source,	Label label, XSDNamedComponent component)
-  {
-    super(source, label);  
-    this.component = component;
-    mySource = source;
-  }
-
-  public void performModify(final String value)
-  {
-    if (value.length() > 0)
-    {
-      DelayedRenameRunnable runnable = new DelayedRenameRunnable(component, value);
-      Display.getCurrent().asyncExec(runnable);
-    }
-  }      
-
-  protected static class DelayedRenameRunnable implements Runnable
-  {
-    protected XSDNamedComponent component;
-    protected String name;
-
-    public DelayedRenameRunnable(XSDNamedComponent component, String name)
-    {                                                               
-      this.component = component;
-      this.name = name;
-    }                                                              
-
-    public void run()
-    {                             
-      XSDSwitch xsdSwitch = new XSDSwitch()
-      {                   
-        public Object caseXSDTypeDefinition(XSDTypeDefinition object)
-        {
-          new GlobalSimpleOrComplexTypeRenamer(object, name).visitSchema(object.getSchema());
-          return null;
-        } 
-      
-        public Object caseXSDElementDeclaration(XSDElementDeclaration object)
-        {           
-          if (object.isGlobal())
-          {
-            new GlobalElementRenamer(object, name).visitSchema(object.getSchema());
-          }
-          return null;
-        }
-      
-        public Object caseXSDModelGroupDefinition(XSDModelGroupDefinition object)
-        {
-          new GlobalGroupRenamer(object, name).visitSchema(object.getSchema());
-          return null;
-        }
-      };
-      xsdSwitch.doSwitch(component); 
-      component.setName(name);
-      if (mySource instanceof TopLevelComponentEditPart)
-      {
-        ((TopLevelComponentEditPart)mySource).setReselect(true);        
-      }
-    }
-  }
-  
-  protected void bringDown()
-  {
-    super.bringDown();
-    if (mySource != null)
-    {
-      if (mySource instanceof TopLevelComponentEditPart)
-      {
-        ((TopLevelComponentEditPart)mySource).setReselect(true);        
-      }
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DirectEditPolicyDelegate.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DirectEditPolicyDelegate.java
deleted file mode 100644
index b5cce8b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DirectEditPolicyDelegate.java
+++ /dev/null
@@ -1,18 +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.xsd.ui.internal.graph.editpolicies;
-   
-import org.eclipse.jface.viewers.CellEditor;
-
-public interface DirectEditPolicyDelegate
-{       
-  public void performEdit(CellEditor cellEditor);  
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DragAndDropCommand.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DragAndDropCommand.java
deleted file mode 100644
index aa7a60d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DragAndDropCommand.java
+++ /dev/null
@@ -1,161 +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.xsd.ui.internal.graph.editpolicies;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.FigureCanvas;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.PointList;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPartViewer;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gef.requests.ChangeBoundsRequest;
-import org.eclipse.gef.ui.parts.ScrollingGraphicalViewer;
-import org.eclipse.wst.xsd.ui.internal.actions.MoveAction;
-import org.eclipse.wst.xsd.ui.internal.gef.util.figures.IConnectionRenderingViewer;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ComplexTypeDefinitionEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.GraphNodeEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ModelGroupDefinitionEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.ModelGroupEditPart;
-import org.eclipse.xsd.XSDConcreteComponent;
-
-
-public class DragAndDropCommand extends Command //AbstractCommand
-{ 
-  protected EditPartViewer viewer;    
-  protected ChangeBoundsRequest request;
-  protected GraphNodeEditPart childRefEditPart;    
-  public GraphNodeEditPart parentEditPart; 
-  public Point location;
-  protected MoveAction action;    
-  protected boolean canExecute;
-
-  public DragAndDropCommand(EditPartViewer viewer, ChangeBoundsRequest request)
-  {
-    this.viewer = viewer;                    
-    this.request = request;
-
-    location = request.getLocation();   
-    EditPart target = viewer.findObjectAt(location); 
-    if (viewer instanceof ScrollingGraphicalViewer)
-    {  
-      ScrollingGraphicalViewer sgv = (ScrollingGraphicalViewer)viewer;
-      Point p = ((FigureCanvas)sgv.getControl()).getViewport().getViewLocation();
-      location.y += p.y;
-      location.x += p.x;
-    }
-     
-    List list = request.getEditParts();
-    if (list.size() > 0)
-    {           
-      parentEditPart = getParentEditPart(target);
-      if (parentEditPart != null)
-      {                                          
-        for (Iterator i = parentEditPart.getChildren().iterator(); i.hasNext(); )
-        {
-          EditPart child = (EditPart)i.next();
-          if (child instanceof GraphNodeEditPart)
-          {
-            GraphNodeEditPart childGraphNodeEditPart = (GraphNodeEditPart)child;
-            Rectangle rectangle = childGraphNodeEditPart.getSelectionFigure().getBounds();
-     
-            if (location.y < rectangle.getCenter().y)
-            {                                    
-              childRefEditPart = childGraphNodeEditPart;   
-              break;
-            }
-          }
-        } 
-            
-        List editPartsList = request.getEditParts();
-        List concreteComponentList = new ArrayList(editPartsList.size());
-        for (Iterator i = editPartsList.iterator(); i.hasNext(); )
-        {                                                       
-          EditPart editPart = (EditPart)i.next();
-          concreteComponentList.add((XSDConcreteComponent)editPart.getModel());
-        } 
-        XSDConcreteComponent refComponent = childRefEditPart != null ? (XSDConcreteComponent)childRefEditPart.getModel() : null;
-
-        action = new MoveAction((XSDConcreteComponent)parentEditPart.getModel(), concreteComponentList, refComponent);
-        canExecute = action.canMove();                                            
-      }            
-    }     
-  }
-             
-  protected GraphNodeEditPart getParentEditPart(EditPart target)
-  {
-    GraphNodeEditPart result = null;    
-    while (target != null)
-    {                     
-      if (target instanceof ModelGroupEditPart)
-      {
-        result = (GraphNodeEditPart)target;
-        break;
-      }
-      else if (target instanceof ComplexTypeDefinitionEditPart ||
-               target instanceof ModelGroupDefinitionEditPart)
-      {
-        List list = target.getChildren();
-        for (Iterator i = list.iterator(); i.hasNext(); )
-        {
-          Object child = i.next();
-          if (child instanceof ModelGroupEditPart)
-          {
-            result = (GraphNodeEditPart)child;
-            break;
-          }
-        }   
-        if (result != null)
-        {
-          break;
-        }
-      }
-      target = target.getParent();
-    }
-    return result;
-  }
-
-  public void execute()
-  {           
-    if (canExecute)
-    { 
-      action.run(); 
-    }
-  }     
-  
-  public void redo()
-  {
-
-  }  
-  
-  public void undo()
-  {
-  }     
-  
-  public boolean canExecute()
-  { 
-    return canExecute;
-  } 
-
-  public PointList getConnectionPoints(Rectangle draggedFigureBounds)
-  {             
-    PointList pointList = null;      
-    if (parentEditPart != null && childRefEditPart != null && viewer instanceof IConnectionRenderingViewer)
-    {                                
-      pointList = ((IConnectionRenderingViewer)viewer).getConnectionRenderingFigure().getConnectionPoints(parentEditPart, childRefEditPart, draggedFigureBounds);      
-    }               
-    return pointList != null ? pointList : new PointList();
-  }                                                                  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DragAndDropEditPolicy.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DragAndDropEditPolicy.java
deleted file mode 100644
index 18468c8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/DragAndDropEditPolicy.java
+++ /dev/null
@@ -1,47 +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.xsd.ui.internal.graph.editpolicies;
-
-import org.eclipse.gef.EditPartViewer;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.requests.ChangeBoundsRequest;
-
-public class DragAndDropEditPolicy extends org.eclipse.gef.editpolicies.GraphicalEditPolicy
-{ 
-  protected EditPartViewer viewer;    
-  protected SelectionHandlesEditPolicyImpl selectionHandlesEditPolicy;
-
-  public DragAndDropEditPolicy(EditPartViewer viewer, SelectionHandlesEditPolicyImpl selectionHandlesEditPolicy)
-  {
-    this.viewer = viewer;
-    this.selectionHandlesEditPolicy = selectionHandlesEditPolicy;
-  }
-
-  public boolean understandsRequest(Request req)
-  {
-	  return true;
-  }                           
-    
-  static int count2 = 0;
-  boolean theCommandResult = true;   
-  
-  public org.eclipse.gef.commands.Command getCommand(Request request)
-  {             
-    // this block is commented out to disable move for now
-    DragAndDropCommand command = null;                            
-    if (request instanceof ChangeBoundsRequest)
-    {
-      command = new DragAndDropCommand(viewer, (ChangeBoundsRequest)request);  
-      selectionHandlesEditPolicy.setDragAndDropCommand(command);
-    } 
-    return command;             
-  }                                                     
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/GraphNodeDragTracker.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/GraphNodeDragTracker.java
deleted file mode 100644
index 58fbaac..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/GraphNodeDragTracker.java
+++ /dev/null
@@ -1,34 +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.xsd.ui.internal.graph.editpolicies;
-
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gef.tools.DragEditPartsTracker;
-
-                                   
-public class GraphNodeDragTracker extends DragEditPartsTracker 
-{                                     
-  protected EditPart editPart; 
-           
-  public GraphNodeDragTracker(EditPart editPart)
-  {
-    super(editPart);
-    this.editPart = editPart;
-  } 
-                                              
-  protected Command getCommand() 
-  { 
-	  Request request = getTargetRequest();
-    return editPart.getCommand(request); 
-  }
-} 
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/SelectionHandlesEditPolicyImpl.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/SelectionHandlesEditPolicyImpl.java
deleted file mode 100644
index d09b53a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/SelectionHandlesEditPolicyImpl.java
+++ /dev/null
@@ -1,257 +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.xsd.ui.internal.graph.editpolicies;
-                                 
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.FigureUtilities;
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.Polyline;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.PointList;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.editpolicies.SelectionHandlesEditPolicy;
-import org.eclipse.gef.handles.MoveHandle;
-import org.eclipse.gef.handles.MoveHandleLocator;
-import org.eclipse.gef.requests.ChangeBoundsRequest;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.BaseEditPart;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.IFeedbackHandler;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.BogusLayout;
-import org.eclipse.wst.xsd.ui.internal.graph.figures.ContainerFigure;
-
-
-
-
-
-public class SelectionHandlesEditPolicyImpl	extends SelectionHandlesEditPolicy
-{
-  protected IFigure feedback;
-  protected Rectangle originalLocation;
-  protected DragAndDropCommand dragAndDropCommand;
-
-  protected List createSelectionHandles()
-  {              
-    List list = new ArrayList();
-    EditPart editPart = getHost();
-     
-    if (editPart instanceof GraphicalEditPart)
-    {
-      GraphicalEditPart graphicalEditPart = (GraphicalEditPart)editPart;
-      IFigure figure = (graphicalEditPart instanceof BaseEditPart) ? 
-                          ((BaseEditPart)graphicalEditPart).getSelectionFigure() :
-                          graphicalEditPart.getFigure();
-   
-      Cursor cursorFigure = figure.getCursor();
-      MoveHandleLocator loc = new MoveHandleLocator(figure);    
-      MoveHandle moveHandle = new MoveHandle(graphicalEditPart, loc);     
-      moveHandle.setCursor(cursorFigure);
-      list.add(moveHandle);
-    }
-
-    return list;
-  }   
-  
-
-  public boolean understandsRequest(Request request)
-  {    
-    boolean result = false;
-
-	  if (REQ_MOVE.equals(request.getType()))
-    {  
-		  result = false; // return false to disable move for now 
-    }
-    else
-    {
-	    result = super.understandsRequest(request);
-    }
-    return result;
-  }
-  
-
-  public org.eclipse.gef.commands.Command getCommand(Request request) 
-  {                                          
-    return null;  
-  }   
-
-  public void setDragAndDropCommand(DragAndDropCommand dragAndDropCommand)
-  {
-    this.dragAndDropCommand = dragAndDropCommand;
-  }
-
-  protected org.eclipse.gef.commands.Command getMoveCommand(ChangeBoundsRequest request) 
-  {
-	  ChangeBoundsRequest req = new ChangeBoundsRequest(REQ_MOVE_CHILDREN);
-	  req.setEditParts(getHost());
-	
-	  req.setMoveDelta(request.getMoveDelta());
-	  req.setSizeDelta(request.getSizeDelta());
-	  req.setLocation(request.getLocation());
-
-	  return getHost().getParent().getCommand(req);
-  } 
-
-  public void showSourceFeedback(Request request)
-  {  	
-	  if (REQ_MOVE.equals(request.getType()) ||
-		  REQ_ADD.equals(request.getType()))
-		  showChangeBoundsFeedback((ChangeBoundsRequest)request);
-  }
-
-  protected void showChangeBoundsFeedback(ChangeBoundsRequest request)
-  {
-  	IFigure p = getDragSourceFeedbackFigure();
-  	Rectangle r = originalLocation.getTranslated(request.getMoveDelta());
-  	Dimension resize = request.getSizeDelta();
-  	r.width += resize.width;
-  	r.height+= resize.height;
-  
-  	((GraphicalEditPart)getHost()).getFigure().translateToAbsolute(r);
-  	p.translateToRelative(r);
-                
-    Rectangle pBounds = r.getCopy();                            
-
-    if (dragAndDropCommand != null && dragAndDropCommand.canExecute())
-    {                     
-      int size = request.getEditParts().size();
-      if (size > 0 && request.getEditParts().get(size - 1) == getHost())
-      {         
-        PointList pointList = dragAndDropCommand.getConnectionPoints(r);
-        if (pointList != null && pointList.size() > 0)
-        {
-          polyLine.setPoints(pointList);
-          
-          Point firstPoint = pointList.getFirstPoint();
-          if (firstPoint != null)
-          {
-            pBounds = pBounds.getUnion(new Rectangle(firstPoint.x, firstPoint.y, 1, 1));
-          }
-        }
-      }
-    }
-    p.setBounds(pBounds);
-    ghostShape.setBounds(r);
-  	p.validate();
-  }        
-
-
-
-
-  protected IFigure getDragSourceFeedbackFigure() 
-  {
-    EditPart editPart = getHost(); 
-    if (feedback == null && editPart instanceof BaseEditPart)
-    {                                       
-      BaseEditPart baseEditPart = (BaseEditPart)editPart;
-		  originalLocation = new Rectangle(baseEditPart.getSelectionFigure().getBounds());
-		  feedback = createDragSourceFeedbackFigure(baseEditPart.getSelectionFigure());
-	  }
-	  return feedback;
-  }  
-    
-  Polyline polyLine;
-  RectangleFigure ghostShape;
-
-  protected IFigure createDragSourceFeedbackFigure(IFigure draggedFigure)
-  {
-		// Use a ghost rectangle for feedback  
-    ContainerFigure panel = new ContainerFigure(); 
-    panel.setLayoutManager(new BogusLayout());//new FreeformLayout());
-
-		ghostShape = new RectangleFigure();
-		FigureUtilities.makeGhostShape(ghostShape);
-		ghostShape.setLineStyle(Graphics.LINE_DASHDOT);
-		ghostShape.setForegroundColor(ColorConstants.white);
-    
-    Rectangle r = draggedFigure.getBounds();
-    panel.setOpaque(false);
-    panel.add(ghostShape);                 
-
-    polyLine = new Polyline();                         
-    //polyLine.setLineStyle(Graphics.LINE_DASHDOT);      
-    polyLine.setLineWidth(3);
-    panel.add(polyLine);
-
-    panel.setBounds(r);
-		ghostShape.setBounds(r);
-
-		addFeedback(panel);
-
-		return panel;
-	} 
-
-  public void deactivate()
-  {
-	  if (feedback != null)
-    {
-		  removeFeedback(feedback);
-		  feedback = null;
-	  }
-	  hideFocus();
-	  super.deactivate();
-  }
-
-  /**
-   * Erase feedback indicating that the receiver object is 
-   * being dragged.  This method is called when a drag is
-   * completed or cancelled on the receiver object.
-   * @param dragTracker org.eclipse.gef.tools.DragTracker The drag tracker of the tool performing the drag.
-   */
-  protected void eraseChangeBoundsFeedback(ChangeBoundsRequest request) 
-  {
-	  if (feedback != null) 
-    {		      
-		  removeFeedback(feedback);
-	  }
-	  feedback = null;
-	  originalLocation = null;
-  }
-
-  /**
-   * Erase feedback indicating that the receiver object is 
-   * being dragged.  This method is called when a drag is
-   * completed or cancelled on the receiver object.
-   * @param dragTracker org.eclipse.gef.tools.DragTracker The drag tracker of the tool performing the drag.
-   */
-  public void eraseSourceFeedback(Request request) 
-  {
-    if (REQ_MOVE.equals(request.getType()) ||  REQ_ADD.equals(request.getType()))
-    {
-		  eraseChangeBoundsFeedback((ChangeBoundsRequest)request);
-    }
-  }
-  
-  protected void hideSelection()
-  {
-    EditPart editPart = getHost();
-    if (editPart instanceof IFeedbackHandler)
-    {
-      ((IFeedbackHandler)editPart).removeFeedback();
-    }
-  }
-
-  protected void showSelection()
-  {
-    EditPart editPart = getHost();
-    if (editPart instanceof IFeedbackHandler)
-    {
-      ((IFeedbackHandler)editPart).addFeedback();
-    }
-  }  
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/SimpleDirectEditPolicy.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/SimpleDirectEditPolicy.java
deleted file mode 100644
index 531eef2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/SimpleDirectEditPolicy.java
+++ /dev/null
@@ -1,58 +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.xsd.ui.internal.graph.editpolicies;
-
-import org.eclipse.gef.commands.Command;
-import org.eclipse.gef.editpolicies.DirectEditPolicy;
-import org.eclipse.gef.requests.DirectEditRequest;
-                                   
-public class SimpleDirectEditPolicy extends DirectEditPolicy 
-{
-  protected DirectEditPolicyDelegate delegate;
-
-  public void setDelegate(DirectEditPolicyDelegate delegate)
-  {                                           
-    this.delegate = delegate;
-  }
-
-  protected org.eclipse.gef.commands.Command getDirectEditCommand(final DirectEditRequest request) 
-  { 
-  	return new Command() //AbstractCommand()
-    {
-      public void execute()
-      {                       
-        if (delegate != null)
-        {
-          delegate.performEdit(request.getCellEditor());
-        }  
-      }     
-  
-      public void redo()
-      {
-      }  
-  
-      public void undo()
-      {
-      }     
-  
-      public boolean canExecute()
-      {
-        return true;
-      }
-    };
-  }
-  
-  protected void showCurrentEditValue(DirectEditRequest request) 
-  {      
-  	//hack to prevent async layout from placing the cell editor twice.
-  	getHostFigure().getUpdateManager().performUpdate();
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/TextCellEditorManager.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/TextCellEditorManager.java
deleted file mode 100644
index 6409937..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/TextCellEditorManager.java
+++ /dev/null
@@ -1,74 +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.xsd.ui.internal.graph.editpolicies;
-                                                  
-import org.eclipse.draw2d.Label;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.gef.GraphicalEditPart;
-import org.eclipse.gef.tools.CellEditorLocator;
-import org.eclipse.gef.tools.DirectEditManager;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.TextCellEditor;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Text;
-
-public abstract class TextCellEditorManager extends DirectEditManager implements DirectEditPolicyDelegate
-{
-  protected Label label;                                 
-
-  public TextCellEditorManager(GraphicalEditPart source,	Label label)
-  {
-	  super(source, TextCellEditor.class, new InternalCellEditorLocator(label));
-    this.label = label;     
-  }
-
-  protected void initCellEditor() 
-  {                                             
-  	String initialLabelText = label.getText();
-  	getCellEditor().setValue(initialLabelText);
-  	Text text = (Text)getCellEditor().getControl();
-  	text.setFont(label.getFont());
-    text.setForeground(label.getForegroundColor());
-    text.setBackground(label.getBackgroundColor());
-  	text.selectAll();
-  }	          
-
-  protected abstract void performModify(String value);
-    
-  public static class InternalCellEditorLocator implements CellEditorLocator
-  {
-    protected Label label;
-
-    public InternalCellEditorLocator(Label label)
-    {
-      this.label = label;
-    }                   
-
-    public void relocate(CellEditor celleditor) 
-    {
-      Text text = (Text)celleditor.getControl();  
-	    Point sel = text.getSelection();
-	    Point pref = text.computeSize(-1, -1);
-	    Rectangle rect = label.getTextBounds().getCopy();
-	    label.translateToAbsolute(rect);
-	    text.setBounds(rect.x-4, rect.y-1, pref.x+1, pref.y+1);	
-	    text.setSelection(0);
-	    text.setSelection(sel); 
-    }
-  }    
-
-  // implements DirectEditPolicyDelegate
-  // 
-  public void performEdit(CellEditor cellEditor)
-  {
-    performModify((String)cellEditor.getValue());
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/TypeReferenceDirectEditManager.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/TypeReferenceDirectEditManager.java
deleted file mode 100644
index c62d1e9..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/editpolicies/TypeReferenceDirectEditManager.java
+++ /dev/null
@@ -1,118 +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.xsd.ui.internal.graph.editpolicies;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.Label;
-import org.eclipse.gef.EditPart;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.BaseEditPart;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSchema;
-
-
-
-public class TypeReferenceDirectEditManager extends ComboBoxCellEditorManager
-{
-  protected BaseEditPart editPart;                                                
-  protected XSDElementDeclaration ed;
-
-  
-  public TypeReferenceDirectEditManager(BaseEditPart source,	XSDElementDeclaration ed, Label label)
-  {
-    super(source, label);  
-    editPart = source;               
-    this.ed = ed;
-  }
-
-  protected List computeComboContent()
-  {             
-    XSDSchema schema = ed.getSchema();
-    List typeNameList = new ArrayList();
-    if (schema != null)
-    {         
-      TypesHelper typesHelper = new TypesHelper(schema);
-      typeNameList.addAll(typesHelper.getUserSimpleTypeNamesList());
-      typeNameList.addAll(typesHelper.getUserComplexTypeNamesList());               
-      typeNameList.addAll(typesHelper.getBuiltInTypeNamesList());
-    }                        
-    return typeNameList;
-  }
-    
-  public void performModify(String value)
-  {                                               
-    // we need to perform an asyncExec here since the 'host' editpart may be removed
-    // as a side effect of performing the action
-    DelayedRenameRunnable runnable = new DelayedRenameRunnable(editPart, ed, value);
-    Display.getCurrent().asyncExec(runnable);   
-  }  
-   
-
-  protected List computeSortedList(List list)
-  {
-    return TypesHelper.sortList(list);
-  }
-
-  protected static class DelayedRenameRunnable implements Runnable
-  {
-    protected BaseEditPart editPart;                                                
-    protected EditPart editPartParent;
-    protected XSDElementDeclaration ed;
-    protected String name;
-
-    public DelayedRenameRunnable(BaseEditPart editPart, XSDElementDeclaration ed, String name)
-    {                                                               
-      this.editPart = editPart;
-      editPartParent = editPart.getParent();
-      this.ed = ed;
-      this.name = name;
-    }                                                              
-
-    public void run()
-    {                             
-      //BaseGraphicalViewer viewer = editPart.getBaseGraphicalViewer();
-      //viewer.setInputEnabled(false);
-      //viewer.setSelectionEnabled(false);      
-      if (name.equals("<anonymous>"))
-      {          
-        try
-        {
-          ed.getResolvedElementDeclaration().getElement().removeAttribute("type");
-        }
-        catch (Exception e)
-        {
-        }
-      }
-      else
-      {
-        if (ed.getResolvedElementDeclaration().getAnonymousTypeDefinition() != null) // isSetAnonymousTypeDefinition())
-        {
-          if (!(name.equals("<anonymous>")))
-          {
-            ed.getResolvedElementDeclaration().getElement().setAttribute("type", name);
-            XSDDOMHelper.updateElementToNotAnonymous(ed.getResolvedElementDeclaration().getElement());
-//            ed.getResolvedElementDeclaration().setAnonymousTypeDefinition(null);
-            return;
-          }
-        }
-        ed.getResolvedElementDeclaration().getElement().setAttribute("type", name);
-      }
-      //viewer.setInputEnabled(true);
-      //viewer.setSelectionEnabled(true);
-      //viewer.setSelection(new StructuredSelection(editPartParent));
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/BogusLayout.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/BogusLayout.java
deleted file mode 100644
index cfa8c75..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/BogusLayout.java
+++ /dev/null
@@ -1,61 +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.xsd.ui.internal.graph.figures;
-
-import org.eclipse.draw2d.AbstractLayout;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-
-
-/**
- * Figures using the StackLayout as their layout manager have
- * their children placed on top of one another. Order of 
- * placement is determined by the order in which the children
- * were added, first child added placed on the bottom.
- */
-public class BogusLayout
-	extends AbstractLayout
-{
-                             
-protected int spacing;
-
-public BogusLayout(){}
-
-protected Dimension calculatePreferredSize(IFigure figure, int w, int h)
-{	                 
-  Dimension d = new Dimension();
-  return d;
-} 
-
-/*
- * Returns the minimum size required by the input container.
- * This is the size of the largest child of the container, as all
- * other children fit into this size.
- */
-/*jvh - final
-public Dimension getMinimumSize(IFigure figure){
-	return new Dimension();
-}
-
-public Dimension getPreferredSize(IFigure figure){
-	return new Dimension();
-}            */
-
-/*
- * Lays out the children on top of each other with
- * their sizes equal to that of the available
- * paintable area of the input container figure.
- */
-public void layout(IFigure figure){   
- 
-} 
- 
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/CenterLayout.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/CenterLayout.java
deleted file mode 100644
index 2932e6d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/CenterLayout.java
+++ /dev/null
@@ -1,118 +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.xsd.ui.internal.graph.figures;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.AbstractLayout;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-
-
-/**
- * Figures using the StackLayout as their layout manager have
- * their children placed on top of one another. Order of 
- * placement is determined by the order in which the children
- * were added, first child added placed on the bottom.
- */
-public class CenterLayout
-	extends AbstractLayout
-{
-                             
-protected int spacing;
-
-public CenterLayout(){}
-public CenterLayout(int spacing){ this.spacing = spacing; }
-
-/**
- * Calculates and returns the preferred size of the input container.
- * This is the size of the largest child of the container, as all
- * other children fit into this size.
- *
- * @param figure  Container figure for which preferred size is required.
- * @return  The preferred size of the input figure.
- * @since 2.0
- */
-protected Dimension calculatePreferredSize(IFigure figure, int w, int h){
-	Dimension d = calculatePreferredClientAreaSize(figure);
-	/*d.expand(figure.getInsets().getWidth(),
-	         figure.getInsets().getHeight()); */
-        d.expand(w,
-	         h);
-	d.union(getBorderPreferredSize(figure));
-	return d;
-}
-
-protected Dimension calculatePreferredClientAreaSize(IFigure figure){
-	Dimension d = new Dimension();
-	List children = figure.getChildren();
-	for (Iterator i = children.iterator(); i.hasNext(); )
-  {
-		IFigure child = (IFigure)i.next();
-    Dimension childSize = child.getPreferredSize();
-    d.height += childSize.height;
-    d.width = Math.max(childSize.width, d.width);
-	}	                    
-  int childrenSize = children.size();       
-  if (childrenSize > 0)
-  {
-    d.height += spacing * children.size() - 1;
-  }
-	return d;
-}
-
-/*
- * Returns the minimum size required by the input container.
- * This is the size of the largest child of the container, as all
- * other children fit into this size.
- */
-public Dimension getMinimumSize(IFigure figure, int wHint, int hHint){
-	Dimension d = new Dimension();
-	List children = figure.getChildren();
-	IFigure child;
-	for (int i=0; i < children.size(); i++){
-		child = (IFigure)children.get(i);
-		d.union(child.getMinimumSize());
-	}
-	d.expand(figure.getInsets().getWidth(),
-	         figure.getInsets().getHeight());
-	return d;
-}
-
-public Dimension getPreferredSize(IFigure figure, int wHint, int hHint){
-	return calculatePreferredSize(figure, wHint, hHint);
-}
-
-
-/*
- * Lays out the children on top of each other with
- * their sizes equal to that of the available
- * paintable area of the input container figure.
- */
-public void layout(IFigure figure){
-	Rectangle r = figure.getClientArea();
-	List children = figure.getChildren();
-  
-  Dimension preferredClientAreaSize = calculatePreferredClientAreaSize(figure);
-  int x = r.x + (r.width - preferredClientAreaSize.width) / 2;
-  int y = r.y + (r.height - preferredClientAreaSize.height) / 2;
-
-	for (Iterator i = children.iterator(); i.hasNext(); )
-  {
-		IFigure child = (IFigure)i.next();
-    Dimension childSize = child.getPreferredSize();
-		child.setBounds(new Rectangle(x, y, childSize.width, childSize.height));
-    y += childSize.height + spacing;
-	}
-}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/CenteredIconFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/CenteredIconFigure.java
deleted file mode 100644
index 3426bb0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/CenteredIconFigure.java
+++ /dev/null
@@ -1,39 +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.xsd.ui.internal.graph.figures;
-            
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.swt.graphics.Image;
-              
-
-public class CenteredIconFigure extends ContainerFigure
-{                                                
-  public Image image;  
-                               
-  public CenteredIconFigure()
-  {
-    super();
-    setFill(true);   
-  }
-
-  protected void fillShape(Graphics g)
-  {    
-    super.fillShape(g);    
-    if (image != null)
-    {                         
-      Rectangle r = getBounds();                                                         
-      Dimension imageSize = new Dimension(16, 16);
-      g.drawImage(image, r.x + (r.width - imageSize.width)/2, r.y + (r.height - imageSize.height)/2);
-    }
-  }          
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ConnectionFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ConnectionFigure.java
deleted file mode 100644
index aaa05f1..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ConnectionFigure.java
+++ /dev/null
@@ -1,210 +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.xsd.ui.internal.graph.figures;
-       
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.draw2d.geometry.PointList;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.wst.xsd.ui.internal.graph.editparts.GraphNodeEditPart;
-
-              
-
-public class ConnectionFigure extends RectangleFigure
-{               
-  protected boolean isOutlined = true;
-  protected IFigure xsdFigure;
-
-  public ConnectionFigure(IFigure xsdFigure)
-  {
-    setOpaque(false);                   
-    this.xsdFigure = xsdFigure;
-    //setFocusTraversable(false); 
-    //setEnabled(false); 
-  }
-           
-  protected boolean isMouseEventTarget()
-  {
-    return false;
-  }        
-
-  public boolean containsPoint(int x, int y){return false;}
-
-  protected void fillShape(Graphics graphics)
-  { 
-    graphics.setForegroundColor(ColorConstants.black);
-    drawLines(graphics, xsdFigure);
-  }
-
-  protected void drawLines(Graphics graphics, IFigure figure)
-  {
-    if (figure instanceof GraphNodeFigure)
-    {
-      GraphNodeFigure graphNodeFigure = (GraphNodeFigure)figure;         
-      if (graphNodeFigure.isConnected() && graphNodeFigure.isExpanded())
-      {
-        List childList = graphNodeFigure.getChildGraphNodeFigures();
-        if (childList.size() > 0)
-        {                                         
-          Rectangle r = graphNodeFigure.getConnectionRectangle();    
-          
-          int x1 = r.x + r.width;
-          int y1 = r.y + r.height/2;
-          
-          int startOfChildBox = ((GraphNodeFigure)childList.get(0)).getConnectionRectangle().x;
-
-          int x2 = x1 + (startOfChildBox - x1) / 3;
-          int y2 = y1;
-                    
-          if (childList.size() > 1)
-          {                                 
-            graphics.drawLine(x1, y1, x2, y2);
-          
-            int minY = Integer.MAX_VALUE;
-            int maxY = -1;
-          
-            for (Iterator i = childList.iterator(); i.hasNext(); )
-            {
-              GraphNodeFigure childGraphNodeFigure = (GraphNodeFigure)i.next();
-              Rectangle childConnectionRectangle = childGraphNodeFigure.getConnectionRectangle();
-              int y = childConnectionRectangle.y + childConnectionRectangle.height / 2;
-             
-              minY = Math.min(minY, y);
-              maxY = Math.max(maxY, y);             
-              graphics.drawLine(x2, y, childConnectionRectangle.x, y);            
-            }                   
-            graphics.drawLine(x2, minY, x2, maxY);
-          }
-          else
-          {
-            graphics.drawLine(x1, y1, startOfChildBox, y2);
-          }
-        }                            
-      }                             
-    }
-
-    //boolean visitChildren = true;
-    List children = figure.getChildren();
-    for (Iterator i = children.iterator(); i.hasNext(); )
-    {
-      IFigure child = (IFigure)i.next();
-      drawLines(graphics, child);
-    }
-  }    
-
-
-  // This method supports the preview connection line function related to drag and drop
-  //     
-  public PointList getConnectionPoints(GraphNodeEditPart parentEditPart, GraphNodeEditPart childRefEditPart, Rectangle draggedFigureBounds)
-  {           
-    PointList pointList = new PointList();                         
-    int[] data = new int[1];
-    Point a = getConnectionPoint(parentEditPart, childRefEditPart, data);
-    if (a != null)
-    {   
-      int draggedFigureBoundsY = draggedFigureBounds.y + draggedFigureBounds.height/2;
-
-      pointList.addPoint(a); 
-      //pointList.addPoint(new Point(draggedFigureBounds.x, draggedFigureBoundsY));
-      
-      if (data[0] == 0) // insert between 2 items
-      {                                         
-        int x = a.x + (draggedFigureBounds.x - a.x)/2;
-        pointList.addPoint(new Point(x, a.y));
-        pointList.addPoint(new Point(x, draggedFigureBoundsY));        
-        pointList.addPoint(new Point(draggedFigureBounds.x, draggedFigureBoundsY));
-      }
-      else // insert at first or last position
-      {
-        pointList.addPoint(new Point(a.x, draggedFigureBoundsY));   
-        pointList.addPoint(new Point(draggedFigureBounds.x, draggedFigureBoundsY));
-      }
-    }       
-    return pointList;
-  }
-
-         
-  // This method supports the preview connection line function related to drag and drop
-  //     
-  protected Point getConnectionPoint(GraphNodeEditPart parentEditPart, GraphNodeEditPart childRefEditPart, int[] data)
-  {                      
-    Point point = null;     
-    List childList = parentEditPart.getChildren();         
-
-    //TreeNodeIconFigure icon = ((TreeNodeFigure)parent.getFigure()).treeNodeIconFigure;
-                                                                                                                                               
-    if (childList.size() > 0)
-    {   
-      point = new Point();
-
-      GraphNodeEditPart prev = null;    
-      GraphNodeEditPart next = null;
-                               
-      for (Iterator i = childList.iterator(); i.hasNext(); )
-      {             
-        Object o = i.next();    
-        if (o instanceof GraphNodeEditPart)
-        {
-          GraphNodeEditPart childEditPart = (GraphNodeEditPart)o;        
-          if (childEditPart == childRefEditPart)
-          {
-            next = childEditPart;
-            break;
-          }                                           
-          prev = childEditPart;
-        }
-      }                            
-
-      if (next != null && prev != null)
-      { 
-        int ya = prev.getConnectionRectangle().getCenter().y;
-        int yb = next.getConnectionRectangle().getCenter().y;
-        point.y = ya + (yb - ya)/2;   
-        data[0] = 0;
-      }                               
-      else if (prev != null) // add it last
-      {
-        point.y = prev.getConnectionRectangle().getCenter().y;
-        data[0] = 1;
-      }
-      else if (next != null) // add it first!
-      {                           
-        point.y = next.getConnectionRectangle().getCenter().y;
-        data[0] = -1;
-      }
-          
-      if (next != null || prev != null)
-      {
-        GraphNodeEditPart child = prev != null ? prev : next;
-        int startOfChildBox = child.getConnectionRectangle().x;
-        Rectangle r = parentEditPart.getConnectionRectangle();  
-        int x1 = r.x + r.width;
-        point.x = x1 + (startOfChildBox - x1) / 3;
-      }
-    }    
-    return point;
-  }
-         
-
-  protected void outlineShape(Graphics graphics)
-  { 
-    if (isOutlined)
-    {
-      super.outlineShape(graphics);
-    }
-  } 
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ContainerFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ContainerFigure.java
deleted file mode 100644
index 8594005..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ContainerFigure.java
+++ /dev/null
@@ -1,71 +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.xsd.ui.internal.graph.figures;
-            
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.LayoutManager;
-import org.eclipse.draw2d.RectangleFigure;
-              
-public class ContainerFigure extends RectangleFigure
-{               
-  protected boolean isOutlined = false;
-
-  public ContainerFigure()
-  {
-    setLayoutManager(new ContainerLayout());
-    setFill(false);
-  }
-
-  public void doLayout()
-  {
-	  layout();
-	  setValid(true);
-  }  
-          
-  public ContainerLayout getContainerLayout()
-  {
-    return (ContainerLayout)getLayoutManager();
-  }           
-
-  public void setOutlined(boolean isOutlined)
-  {
-    this.isOutlined = isOutlined;
-  }     
-
-  protected void outlineShape(Graphics graphics)
-  { 
-    if (isOutlined)
-    {
-      super.outlineShape(graphics);
-    }
-  }
-  
-  
-  public void validate() 
-  {
-    if (isValid())
-    {
-      return;
-    }
-    super.validate();	
-    postLayout();
-  }
-
-
-  protected void postLayout()
-  {
-    LayoutManager layoutManager = getLayoutManager();
-    if (layoutManager instanceof PostLayoutManager)
-    {
-      ((PostLayoutManager)layoutManager).postLayout(this);    
-    }  
-  }  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ContainerLayout.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ContainerLayout.java
deleted file mode 100644
index 0a13f10..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ContainerLayout.java
+++ /dev/null
@@ -1,249 +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.xsd.ui.internal.graph.figures;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.AbstractLayout;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-import org.eclipse.wst.xsd.ui.internal.gef.util.figures.SpacingFigure;
-
-public class ContainerLayout extends AbstractLayout implements PostLayoutManager
-{                                         
-  protected boolean isHorizontal;
-  protected int spacing = 0;
-  protected int border = 0;
- 
-  public ContainerLayout()
-  { 
-    this(true, 0); 
-  }             
-
-  public ContainerLayout(boolean isHorizontal, int spacing)
-  {
-    this.isHorizontal = isHorizontal;   
-    this.spacing = spacing;
-  }  
-
-  public void setHorizontal(boolean isHorizontal)
-  {
-    this.isHorizontal = isHorizontal;
-  }  
-
-  public void setSpacing(int spacing)
-  {
-    this.spacing = spacing;
-  }  
-
-  public void setBorder(int border)
-  {
-    this.border = border;
-  }   
-
-  /**
-   * Calculates and returns the preferred size of the container 
-   * given as input.
-   * 
-   * @param figure  Figure whose preferred size is required.
-   * @return  The preferred size of the passed Figure.
-   * @since 2.0
-   */
-  protected Dimension calculatePreferredSize(IFigure parent, int w, int h)
-  { 
-    Dimension preferred = null;                                              
-                                  
-    // Here we ensure that an unexpanded container is given a size of (0,0)
-    //
-    if (parent instanceof GraphNodeContainerFigure)
-    {
-      GraphNodeContainerFigure graphNodeContainerFigure = (GraphNodeContainerFigure)parent;
-      if (!graphNodeContainerFigure.isExpanded())
-      {
-        preferred = new Dimension(); 
-      }
-    }   
-    
-    if (preferred == null)
-    {
-      preferred = new Dimension();
-      List children = parent.getChildren();
-                                            
-      for (int i=0; i < children.size(); i++)
-      {
-        IFigure child = (IFigure)children.get(i);      
-    
-        Dimension childSize = child.getPreferredSize();
-        /*
-        if (child instanceof Interactor)
-        {          
-          childSize.width = 9;
-          childSize.height = 9;
-        }*/  
-    
-        if (isHorizontal)
-        {
-          preferred.width += childSize.width;
-          preferred.height = Math.max(preferred.height, childSize.height);
-        }
-        else
-        {  
-          preferred.height += childSize.height;
-          preferred.width = Math.max(preferred.width, childSize.width);
-        }
-      }                                                 
-
-      int childrenSize = children.size();
-      if (childrenSize > 1)
-      {                      
-        if (isHorizontal)    
-        {
-          preferred.width += spacing * (childrenSize - 1);
-        }
-        else
-        {
-          preferred.height += spacing * (childrenSize - 1);
-        } 
-      }
-                            
-      preferred.width += border * 2;
-      preferred.height += border * 2;
-      preferred.width += parent.getInsets().getWidth();
-      preferred.height += parent.getInsets().getHeight();      
-    }
-    return preferred;
-  }
-
-                
-  protected int alignFigure(IFigure parent, IFigure child)
-  {         
-    int y = -1;                                                            
-    return y;
-  }
-
-  public void layout(IFigure parent)
-  {                        
-    List children = parent.getChildren();
-    Dimension preferred = new Dimension();
-
-    int rx = 0;
-    for (int i=0; i < children.size(); i++)
-    {
-      IFigure child = (IFigure)children.get(i);
-      Dimension childSize = child.getPreferredSize();
-      if (isHorizontal)
-      {   
-        preferred.height = Math.max(preferred.height, childSize.height);
-        rx += childSize.width;
-      }
-      else
-      {
-        preferred.width = Math.max(preferred.width, childSize.width);
-      }
-    }
-
-    if (isHorizontal)
-    {
-      preferred.height += border*2;
-      preferred.width += border;
-    }
-    else
-    {
-      preferred.width += border*2;
-      preferred.height += border;
-    }
-
-    int childrenSize = children.size(); 
-    for (int i=0; i < childrenSize; i++)
-    {
-      IFigure child = (IFigure)children.get(i);
-      Dimension childSize = child.getPreferredSize();
-      
-      if (isHorizontal)
-      {   
-        int y = alignFigure(parent, child);             
-
-      
-        if (y == -1)
-        {
-           y = (preferred.height - childSize.height) / 2;                                      
-        }      
-
-        Rectangle rectangle = new Rectangle(preferred.width, y, childSize.width, childSize.height);   
-        rectangle.translate(parent.getClientArea().getLocation());
-
-        child.setBounds(rectangle);         
-        preferred.width += childSize.width; 
-        preferred.width += spacing;   
-        
-        if (child instanceof SpacingFigure)
-        {          
-          int availableHorizontalSpace = parent.getClientArea().width - rx;
-          preferred.width += availableHorizontalSpace;
-        } 
-      }
-      else
-      {
-        Rectangle rectangle = new Rectangle(0, preferred.height, childSize.width, childSize.height);
-        rectangle.translate(parent.getClientArea().getLocation());
-        child.setBounds(rectangle);  
-        preferred.height += childSize.height;
-        preferred.height += spacing;
-      }
-    }     
-  }      
-  
-  public void postLayout(IFigure figure)
-  {       
-    // This method attempts to align a 'FloatableFigure' (e.g. an Element node) 
-    // with any content that it is connected to.  This way a chain of connected figures
-    // will be vertically aligned (e.g. element -> modelgroup -> element).  Any visible clipping of the
-    // figures in the graph is probably a result of a bug in this code that results in a 'FloatableFigure' being
-    // repositioned beyond the bounds of its parent.
-    //     
-    for (Iterator i = figure.getChildren().iterator(); i.hasNext();)
-    {
-      IFigure child = (IFigure)i.next();
-      if (child instanceof FloatableFigure)       
-      {        
-        FloatableFigure floatableFigure = (FloatableFigure)child;
-        GraphNodeFigure graphNodeFigure = floatableFigure.getGraphNodeFigure(); 
-        if (graphNodeFigure.isExpanded() && graphNodeFigure.getChildGraphNodeFigures().size() == 1)
-        {
-          GraphNodeFigure alignedChild = (GraphNodeFigure)graphNodeFigure.getChildGraphNodeFigures().get(0);      
-          Rectangle alignedChildBounds = alignedChild.getConnectionRectangle();                            
-          Rectangle childBounds = child.getBounds();
-        
-          int l = childBounds.y + childBounds.height/2;
-          int r = alignedChildBounds.y + alignedChildBounds.height/2;       
-          int delta = r - l;
-
-          fixUp(child, delta);
-        }          
-      }
-    }      
-  }      
-  
-  protected void fixUp(IFigure figure, int delta)
-  { 
-    Rectangle bounds = figure.getBounds();
-    bounds.y += delta;
-    figure.setBounds(bounds);
-      
-    for (Iterator i = figure.getChildren().iterator(); i.hasNext(); )
-    {
-      IFigure child = (IFigure)i.next();
-      fixUp(child, delta);
-    }                       
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ExpandableGraphNodeFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ExpandableGraphNodeFigure.java
deleted file mode 100644
index e339103..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/ExpandableGraphNodeFigure.java
+++ /dev/null
@@ -1,133 +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.xsd.ui.internal.graph.figures;
-            
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-              
-
-//  ------------------------------------------------------------
-//  | ExpandableGraphNodeFigure                                |
-//  |                                                          |
-//  |   ----------------------------------   ---------------   |
-//  |   | verticalGroup                  |   |             |   |
-//  |   |                                |   |             |   |
-//  |   | -----------------------------  |   |             |   |
-//  |   | | horizontalGroup           |  |   |             |   |
-//  |   | |                           |  |   |             |   |
-//  |   | | ---------------------     |  |   |             |   |
-//  |   | | | outlinedArea      |     |  |   |             |   |
-//  |   | | | ----------------- |     |  |   |  outer      |   |
-//  |   | | | | iconArea      | |     |  |   |  Content    |   |
-//  |   | | | ----------------- | [+] |  |   |  Area       |   |
-//  |   | | | ----------------- |     |  |   |             |   |
-//  |   | | | | innerContent  | |     |  |   |             |   |
-//  |   | | | ----------------- |     |  |   |             |   |
-//  |   | | ---------------------     |  |   |             |   |
-//  |   | -----------------------------  |   |             |   |
-//  |   |                                |   |             |   |
-//  |   |   ------------------           |   |             |   |
-//  |   |   | occurenceArea  |           |   |             |   |
-//  |   |   ------------------           |   |             |   |
-//  |   ----------------------------------   ---------------   |
-//  ------------------------------------------------------------
-
-public class ExpandableGraphNodeFigure extends RepeatableGraphNodeFigure
-{                        
-  protected ContainerFigure horizontalGroup;
-  protected Interactor interactor; 
-  protected ContainerFigure outerContentArea;
-
-  public boolean isExpanded()
-  {
-    return interactor.isExpanded();
-  }   
-
-  public void setExpanded(boolean isExpanded)
-  {
-    interactor.setExpanded(isExpanded);
-  }
-  
-  public ExpandableGraphNodeFigure()
-  {
-    super();    
-    isConnected = true;
-  }      
-
-  protected void createFigure()
-  {   
-    createPreceedingSpace(this);           
-    createVerticalGroup(this);
-    createHorizontalGroup(verticalGroup);
-    createOutlinedArea(horizontalGroup);   
-    createInteractor(horizontalGroup);
-    createOccurenceArea(verticalGroup);   
-    createOuterContentArea(this);
-  }
-  
-  protected void createVerticalGroup(IFigure parent)
-  {
-    verticalGroup = new FloatableFigure(this);
-    verticalGroup.getContainerLayout().setHorizontal(false);
-    parent.add(verticalGroup);
-  }
-
-  protected void createHorizontalGroup(IFigure parent)
-  {
-    horizontalGroup = new ContainerFigure();
-    parent.add(horizontalGroup);
-  }                 
-
-  protected void createInteractor(IFigure parent)
-  {
-    interactor = new Interactor();
-    interactor.setForegroundColor(ColorConstants.black);
-    interactor.setBackgroundColor(ColorConstants.white); 
-    parent.add(interactor);
-  } 
-
-  protected void createOuterContentArea(IFigure parent)
-  {
-    // create a small space between the interactor and the contentArea
-    //
-    RectangleFigure space = new RectangleFigure();
-    space.setVisible(false);
-    space.setPreferredSize(new Dimension(5, 10));
-    parent.add(space);   
-      
-    outerContentArea = new GraphNodeContainerFigure(this);
-    outerContentArea.getContainerLayout().setHorizontal(false);
-    parent.add(outerContentArea);
-  }
-
-  public Interactor getInteractor()
-  {
-    return interactor;
-  } 
-
-  public ContainerFigure getOuterContentArea()
-  {
-    return outerContentArea;
-  }
-     
-  public IFigure getConnectionFigure()
-  {
-    return horizontalGroup;
-  }
-
-  public Rectangle getConnectionRectangle()
-  {
-    return horizontalGroup.getBounds();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/FillLayout.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/FillLayout.java
deleted file mode 100644
index e358c0c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/FillLayout.java
+++ /dev/null
@@ -1,161 +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.xsd.ui.internal.graph.figures;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.draw2d.AbstractLayout;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-
-
-/**
- * Figures using the StackLayout as their layout manager have
- * their children placed on top of one another. Order of 
- * placement is determined by the order in which the children
- * were added, first child added placed on the bottom.
- */
-public class FillLayout extends AbstractLayout
-{
-         
-protected boolean isHorizontal = false;                    
-protected int spacing = 0;
-public Dimension min;  
-
-public FillLayout(){}     
-public FillLayout(boolean dummy){} 
-
-public FillLayout(int spacing)
-{ 
-  this.spacing = spacing; 
-}
-
-public void setHorizontal(boolean isHorizontal)
-{
- this.isHorizontal = isHorizontal;
-}
-
-/**
- * Calculates and returns the preferred size of the input container.
- * This is the size of the largest child of the container, as all
- * other children fit into this size.
- *
- * @param figure  Container figure for which preferred size is required.
- * @return  The preferred size of the input figure.
- * @since 2.0
- */
-protected Dimension calculatePreferredSize(IFigure figure, int w, int h)
-{	                 
-  Dimension d = calculatePreferredClientAreaSize(figure);
-	d.expand(figure.getInsets().getWidth(),
-	         figure.getInsets().getHeight());
-	//d.union(getBorderPreferredSize(figure));
-	return d;
-} 
-
-protected Dimension calculatePreferredClientAreaSize(IFigure figure)
-{
-  Dimension d = new Dimension();
-	List children = figure.getChildren(); 
-
-
-	for (Iterator i = children.iterator(); i.hasNext(); )
-  {
-		IFigure child = (IFigure)i.next();
-    Dimension childSize = child.getPreferredSize();
-
-    if (isHorizontal)
-    {
-      d.width += childSize.width;
-      d.height = Math.max(childSize.height, d.height);
-    }
-    else
-    {
-      d.height += childSize.height;
-      d.width = Math.max(childSize.width, d.width);
-    }
-	}	 
-
-                   
-  int childrenSize = children.size();       
-  if (childrenSize > 0)
-  {
-    if (isHorizontal)
-      d.width += spacing * (childrenSize - 1); 
-    else
-      d.height += spacing * (childrenSize - 1);
-  }       
-    
-  if (min != null)
-  {
-    d.width = Math.max(d.width, min.width);
-    d.height = Math.max(d.height, min.height);
-  }
-  return d;
-}
-
-/*
- * Returns the minimum size required by the input container.
- * This is the size of the largest child of the container, as all
- * other children fit into this size.
- */
-public Dimension getMinimumSize(IFigure figure, int w, int h)
-{
-	Dimension d = new Dimension();
-	List children = figure.getChildren();
-	IFigure child;
-	for (int i=0; i < children.size(); i++){
-		child = (IFigure)children.get(i);
-		d.union(child.getMinimumSize());
-	}
-	d.expand(figure.getInsets().getWidth(),
-	         figure.getInsets().getHeight());
-	return d;
-}
-
-public Dimension getPreferredSize(IFigure figure, int w, int h)
-{
-	return calculatePreferredSize(figure, w, h);
-}
-
-/*
- * Lays out the children on top of each other with
- * their sizes equal to that of the available
- * paintable area of the input container figure.
- */
-public void layout(IFigure figure){   
-                     
-  Dimension	preferredSize = calculatePreferredClientAreaSize(figure);
-	Rectangle r = figure.getClientArea().getCopy(); 
-
-	List children = figure.getChildren();
-                                        
-	for (Iterator i = children.iterator(); i.hasNext(); )
-  {
-		IFigure child = (IFigure)i.next();
-    Dimension childSize = child.getPreferredSize();
-
-    if (isHorizontal)
-    {
-		  child.setBounds(new Rectangle(r.x, r.y, childSize.width, Math.max(preferredSize.height, r.height)));
-      r.x += childSize.width + spacing;
-    }
-    else
-    {            
-		  child.setBounds(new Rectangle(r.x, r.y, Math.max(preferredSize.width, r.width), childSize.height));
-      r.y += childSize.height + spacing;
-    }
-	}
-}
-} 
- 
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/FloatableFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/FloatableFigure.java
deleted file mode 100644
index c224145..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/FloatableFigure.java
+++ /dev/null
@@ -1,29 +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.xsd.ui.internal.graph.figures;
-            
-              
-
-public class FloatableFigure extends ContainerFigure
-{               
-  public GraphNodeFigure graphNodeFigure;  
-
-  public FloatableFigure(GraphNodeFigure graphNodeFigure)
-  {                  
-    super();
-    this.graphNodeFigure = graphNodeFigure;
-  }   
-
-  public GraphNodeFigure getGraphNodeFigure()
-  {
-    return graphNodeFigure;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/GraphNodeContainerFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/GraphNodeContainerFigure.java
deleted file mode 100644
index c06a655..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/GraphNodeContainerFigure.java
+++ /dev/null
@@ -1,29 +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.xsd.ui.internal.graph.figures;
-            
-              
-
-public class GraphNodeContainerFigure extends ContainerFigure
-{               
-  public ExpandableGraphNodeFigure expandableGraphNodeFigure;  
-
-  public GraphNodeContainerFigure(ExpandableGraphNodeFigure expandableGraphNodeFigure)
-  {                  
-    super();
-    this.expandableGraphNodeFigure = expandableGraphNodeFigure;
-  }     
-
-  public boolean isExpanded()
-  {
-    return expandableGraphNodeFigure.isExpanded();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/GraphNodeFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/GraphNodeFigure.java
deleted file mode 100644
index 3d9706d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/GraphNodeFigure.java
+++ /dev/null
@@ -1,184 +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.xsd.ui.internal.graph.figures;
-            
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.geometry.Rectangle;
-              
-
-//  ------------------------------
-//  | GraphNodeFigure            |
-//  |                            |
-//  | -------------------------  |
-//  | | vertical group        |  |
-//  | | --------------------- |  |
-//  | | | outlined area     | |  |
-//  | | | ----------------- | |  |
-//  | | | | icon area     | | |  |
-//  | | | ----------------- | |  |
-//  | | | ----------------- | |  |
-//  | | | | inner content | | |  |
-//  | | | ----------------- | |  |
-//  | | --------------------- |  |
-//  | -------------------------  |
-//  ------------------------------
-
-public class GraphNodeFigure extends ContainerFigure
-{                        
-  protected ContainerFigure verticalGroup; 
-  protected ContainerFigure outlinedArea;
-  protected ContainerFigure iconArea;
-  protected ContainerFigure innerContentArea; 
-         
-  protected boolean isConnected;
-  protected boolean isIsolated;
-
-  protected List childGraphNodeFigures = new ArrayList();
-  protected GraphNodeFigure parentGraphNodeFigure; 
-
-  public GraphNodeFigure()
-  { 
-    isIsolated = false;
-    createFigure();
-  }      
-
-  public boolean isExpanded()
-  {
-    return true;
-  }    
-
-  public boolean isConnected()
-  {
-    return isConnected;
-  }                    
-
-  public void setConnected(boolean isConnected)
-  {
-    this.isConnected = isConnected;
-  }
-
-  public void setIsIsolated(boolean isIsolated)
-  {
-    this.isIsolated = isIsolated; 
-  }
-
-  public boolean getIsIsolated()
-  {
-    return isIsolated; 
-  }
-
-  protected void createFigure()
-  {
-    createVerticalGroup(this);
-    createOutlinedArea(verticalGroup); 
-  }
-
-  protected void createVerticalGroup(IFigure parent)
-  {
-    verticalGroup = new ContainerFigure();
-    verticalGroup.getContainerLayout().setHorizontal(false);
-    parent.add(verticalGroup);
-  }
-
-  protected void createOutlinedArea(IFigure parent)
-  { 
-    outlinedArea = new ContainerFigure();
-    outlinedArea.getContainerLayout().setHorizontal(false);
-    parent.add(outlinedArea);      
-     
-    iconArea = new ContainerFigure();
-    outlinedArea.add(iconArea);
-
-    innerContentArea = new ContainerFigure();
-    innerContentArea.getContainerLayout().setHorizontal(false);
-    outlinedArea.add(innerContentArea);  
-  }   
-
-  public ContainerFigure getIconArea()
-  {
-    return iconArea;
-  }
-
-  public ContainerFigure getOutlinedArea()
-  {
-    return outlinedArea;
-  }
-
-  public ContainerFigure getInnerContentArea()
-  {
-    return innerContentArea;
-  } 
-
-  public IFigure getConnectionFigure()
-  {
-    return outlinedArea;
-  }
-
-  public Rectangle getConnectionRectangle()
-  {
-    return outlinedArea.getBounds();
-  }
-
-  public List getChildGraphNodeFigures()
-  {
-    return childGraphNodeFigures;
-  }
-
-  public void addNotify()                     
-  {
-    super.addNotify();                 
-    if (isConnected())
-    {
-      parentGraphNodeFigure = computeParentGraphNodeFigure(this);
-      if (parentGraphNodeFigure != null)
-      {   
-        parentGraphNodeFigure.getChildGraphNodeFigures().add(this);
-      }   
-    }
-  } 
-
-  public void removeNotify()
-  {     
-    super.removeNotify();
-    if (parentGraphNodeFigure != null)
-    {   
-      parentGraphNodeFigure.getChildGraphNodeFigures().remove(this);
-    }  
-  }
-
-  public GraphNodeFigure getParentGraphNodeFigure()
-  {
-    return parentGraphNodeFigure;
-  }  
-
-  public GraphNodeFigure computeParentGraphNodeFigure(IFigure figure)
-  {                   
-    GraphNodeFigure result = null;
-    IFigure parent = figure != null ? figure.getParent() : null;
-    while (parent != null)
-    {
-      if (parent instanceof GraphNodeFigure)
-      {    
-        GraphNodeFigure parentGraphNodeFigure = (GraphNodeFigure)parent;
-        if (parentGraphNodeFigure.isConnected())
-        {
-          result = (GraphNodeFigure)parent;
-          break;
-        }
-      }
-      parent = parent.getParent();
-    }   
-    return result;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/Interactor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/Interactor.java
deleted file mode 100644
index 7a64b8f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/Interactor.java
+++ /dev/null
@@ -1,54 +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.xsd.ui.internal.graph.figures;
-            
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-
-/**
- * Interactor the +/- control commonly found in trees
- */
-public class Interactor extends RectangleFigure
-{
-  protected boolean isExpanded;
-
-  public Interactor()
-  {
-    super(); 
-    setPreferredSize(new Dimension(9, 9));               
-  }  
-
-  public void setExpanded(boolean isExpanded)
-  {                                         
-    this.isExpanded = isExpanded;
-  }
-
-  public boolean isExpanded()
-  {
-    return isExpanded;
-  }
-    
-  protected void fillShape(Graphics g)
-  {
-    super.fillShape(g);
-    Rectangle r = getBounds();                          
-    int mx = r.x + r.width / 2;
-    int my = r.y + r.height / 2;    
-    int s = 2;       
-    g.drawLine(r.x + s, my, r.x + r.width - s - 1, my); 
-    if (!isExpanded)
-    {
-      g.drawLine(mx, r.y + s, mx, r.y + r.height - s -1);
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/LabelFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/LabelFigure.java
deleted file mode 100644
index 04c82b8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/LabelFigure.java
+++ /dev/null
@@ -1,88 +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.xsd.ui.internal.graph.figures;
-            
-import org.eclipse.draw2d.Figure;
-import org.eclipse.draw2d.FigureUtilities;
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.draw2d.geometry.Rectangle;
-              
-
-public class LabelFigure extends Figure
-{                                                
-  protected String text = "";  
-  protected boolean isShowEmptyLabel = true;
-  protected int left = 4; 
-  protected int right = 4; 
-  protected int textHeight;
-  protected int textWidth;
-                       
-  public LabelFigure()
-  {
-    setPreferredSize(new Dimension());
-  }  
-
-  protected void setLeft(int left)
-  {
-    this.left = left;
-  }
-
-  protected void setRight(int right)
-  {
-    this.right = right;
-  }
-
-  public void setShowEmptyLabel(boolean isShowEmptyLabel)
-  {
-    this.isShowEmptyLabel = isShowEmptyLabel;
-  }     
-       
-
-  public void setText(String s)
-  { 
-	  if (s == null)
-		  s = "";
-
-    if (!text.equals(s))
-    {
-	    text = s;
-      if (text.length() > 0 || isShowEmptyLabel)
-      {
-        textHeight = FigureUtilities.getFontMetrics(getFont()).getHeight();
-        textWidth = FigureUtilities.getTextWidth(text, getFont());
-        textWidth = Math.max(textWidth, FigureUtilities.getTextWidth("abcdefg", getFont()));
-        setPreferredSize(new Dimension(textWidth + left + right, textHeight));
-      } 
-      else
-      {
-        setPreferredSize(new Dimension());
-      } 
-    }   
-    //revalidate(); 
-    //repaint();
-  }
-
-
-  
-  protected void paintFigure(Graphics graphics)
-  //protected void fillShape(Graphics graphics)
-  {  
-    super.paintFigure(graphics);
-    //super.fillShape(graphics);
-    if (text.length() > 0)
-    {
-      Rectangle r = getBounds();
-		  graphics.setForegroundColor(getForegroundColor());
-      graphics.drawString(text, left + r.x, r.y);// + (r.width - textWidth)/2, r.y + (r.height - textHeight)/2);           
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/PostLayoutManager.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/PostLayoutManager.java
deleted file mode 100644
index 21a1f54..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/PostLayoutManager.java
+++ /dev/null
@@ -1,19 +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.xsd.ui.internal.graph.figures;
-
-import org.eclipse.draw2d.IFigure;
-
-
-public interface PostLayoutManager
-{
-  public void postLayout(IFigure figure);                    
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/RepeatableGraphNodeFigure.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/RepeatableGraphNodeFigure.java
deleted file mode 100644
index fd8d249..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/RepeatableGraphNodeFigure.java
+++ /dev/null
@@ -1,85 +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.xsd.ui.internal.graph.figures;
-
-import org.eclipse.draw2d.ColorConstants;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.RectangleFigure;
-import org.eclipse.draw2d.geometry.Dimension;
-import org.eclipse.wst.xsd.ui.internal.graph.GraphicsConstants;
-
-
-              
-
-//  ------------------------------
-//  | RepeatableGraphNodeFigure  |
-//  |                            |
-//  | -------------------------  |
-//  | | vertical group        |  |
-//  | | --------------------- |  |
-//  | | | outlined area     | |  |
-//  | | | ----------------- | |  |
-//  | | | | icon area     | | |  |
-//  | | | ----------------- | |  |
-//  | | | ----------------- | |  |
-//  | | | | inner content | | |  |
-//  | | | ----------------- | |  |
-//  | | --------------------- |  |
-//  | |                       |  |
-//  | | ------------------    |  |
-//  | | | occurence area |    |  |
-//  | | ------------------    |  |
-//  | -------------------------  |
-//  ------------------------------
-
-public class RepeatableGraphNodeFigure extends GraphNodeFigure
-{                            
-  protected ContainerFigure occurenceArea;  
-  protected LabelFigure occurenceLabel; 
-
-  public RepeatableGraphNodeFigure()
-  {    
-    super();          
-  }     
-
-  protected void createFigure()
-  {                  
-    createPreceedingSpace(this);
-    createVerticalGroup(this);
-    createOutlinedArea(verticalGroup); 
-    createOccurenceArea(verticalGroup);
-  }
-
-  protected void createOccurenceArea(IFigure parent)
-  {
-    occurenceArea = new ContainerFigure();   
-    occurenceLabel = new LabelFigure();
-    occurenceLabel.setForegroundColor(ColorConstants.black);
-    occurenceLabel.setShowEmptyLabel(false);
-    occurenceLabel.setFont(GraphicsConstants.medium); 
-    occurenceArea.add(occurenceLabel);               
-    parent.add(occurenceArea);
-  }
-                                 
-  protected void createPreceedingSpace(IFigure parent)
-  {
-    // create a small space
-    RectangleFigure space = new RectangleFigure();
-    space.setVisible(false);
-    space.setPreferredSize(new Dimension(10, 10));
-    parent.add(space);  
-  } 
-
-  public LabelFigure getOccurenceLabel()
-  {
-    return occurenceLabel;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/RoundedLineBorder.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/RoundedLineBorder.java
deleted file mode 100644
index 75dbff7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/figures/RoundedLineBorder.java
+++ /dev/null
@@ -1,67 +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.xsd.ui.internal.graph.figures;
-            
-import org.eclipse.draw2d.Graphics;
-import org.eclipse.draw2d.IFigure;
-import org.eclipse.draw2d.LineBorder;
-import org.eclipse.draw2d.geometry.Insets;
-import org.eclipse.swt.graphics.Color;
-              
-
-public class RoundedLineBorder extends LineBorder
-{               
-  protected int arcLength;   
-  protected int lineStyle = Graphics.LINE_SOLID;
-
-  public RoundedLineBorder(Color c, int width, int arcLength)
-  {
-	  super(c, width);     
-    this.arcLength = arcLength;
-  }
-
-  public RoundedLineBorder(int width, int arcLength)
-  {
-	  super(width);     
-    this.arcLength = arcLength;
-  }
-  
-  public RoundedLineBorder(Color c, int width, int arcLength, int lineStyle)
-  {
-    super(c, width);
-    this.arcLength = arcLength;
-    this.lineStyle = lineStyle;
-  }
-
-  public RoundedLineBorder(int width, int arcLength, int lineStyle)
-  {
-    super(width);
-    this.arcLength = arcLength;
-    this.lineStyle = lineStyle;
-  }
-
-  public void paint(IFigure figure, Graphics graphics, Insets insets)
-  {
-      int rlbWidth = getWidth();
-	  tempRect.setBounds(getPaintRectangle(figure, insets));
-  	if (rlbWidth%2 == 1)
-    {
-		  tempRect.width--;
-		  tempRect.height--;
-	  }
-	  tempRect.shrink(rlbWidth/2,rlbWidth/2);
-	  graphics.setLineWidth(rlbWidth);
-    graphics.setLineStyle(lineStyle);
-	  if (getColor() != null)
-		  graphics.setForegroundColor(getColor());
-	  graphics.drawRoundRectangle(tempRect, arcLength, arcLength);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/Category.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/Category.java
deleted file mode 100644
index bd99148..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/Category.java
+++ /dev/null
@@ -1,266 +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.xsd.ui.internal.graph.model;
-                                   
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNotationDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-
-public class Category implements ModelAdapter
-{
-  public final static int ATTRIBUTES = 1;
-  public final static int ELEMENTS = 2;
-  public final static int TYPES = 3;
-  public final static int GROUPS = 5;
-  public final static int DIRECTIVES = 6;
-  public final static int NOTATIONS = 7;
-  public final static int ATTRIBUTE_GROUPS = 8;
-  public final static int IDENTITY_CONSTRAINTS = 9;
-  public final static int ANNOTATIONS = 10;
-
-  
-  protected XSDSchema schema;
-  protected int groupType;
-
-  //public void modelNameChanged();
-  public Category(XSDSchema schema, int groupType)
-  {
-    this.schema = schema;
-    this.groupType = groupType;
-  }       
-
-  public int getGroupType()
-  {
-    return groupType;
-  }   
-
-  public XSDSchema getXSDSchema()
-  {
-    return schema;
-  }
-
-  public String getName()
-  {
-    String name = "";
-    switch (groupType)
-    {
-      case ATTRIBUTES       : { name = XSDEditorPlugin.getXSDString("_UI_GRAPH_ATTRIBUTES"); break; }
-      case NOTATIONS        : { name = XSDEditorPlugin.getXSDString("_UI_GRAPH_NOTATIONS"); break; }
-      case ELEMENTS         : { name = XSDEditorPlugin.getXSDString("_UI_GRAPH_ELEMENTS"); break; }
-      case TYPES             : { name = XSDEditorPlugin.getXSDString("_UI_GRAPH_TYPES"); break; }    
-      case GROUPS           : { name = XSDEditorPlugin.getXSDString("_UI_GRAPH_GROUPS"); break; }      
-      case DIRECTIVES       : { name = XSDEditorPlugin.getXSDString("_UI_GRAPH_DIRECTIVES"); break; }
-    }      
-    return name;
-  }
-              
-  public List getChildren()
-  {                      
-    List list = Collections.EMPTY_LIST;
-    switch (groupType)
-    {
-      case ATTRIBUTES       : { list = getAttributeList(); break; }
-      case NOTATIONS        : { list = getNotations(); break; }
-      case ELEMENTS         : { list = getGlobalElements(); break; }
-      case TYPES            : { list = getTypes();  break; }
-      case GROUPS           : { list = getGroups(); break; }
-      case DIRECTIVES       : { list = getDirectives(); break; }
-    }      
-    return list;
-  }
-  
-  private boolean isSameNamespace(String ns1, String ns2)
-  {
-    if (ns1 == null) ns1 = "";
-    if (ns2 == null) ns2 = "";
-    
-    if (ns1.equals(ns2))
-    {
-      return true;
-    }
-    return false;
-  }
-  
-  protected List getGlobalElements()
-  {
-    List elements = schema.getElementDeclarations();
-    List list = new ArrayList();
-    for (Iterator i = elements.iterator(); i.hasNext(); )
-    {
-      XSDElementDeclaration elem = (XSDElementDeclaration)i.next();
-      String targetNamespace = elem.getTargetNamespace();
-      if (isSameNamespace(elem.getTargetNamespace(),schema.getTargetNamespace()))
-      {
-        list.add(elem);
-      }
-    }                
-    return list;
-  }
-
-  protected List getTypes()
-  {
-    List allTypes = schema.getTypeDefinitions();
-    List list = new ArrayList();
-    for (Iterator i = allTypes.iterator(); i.hasNext(); )
-    {
-      XSDTypeDefinition td = (XSDTypeDefinition)i.next();
-      if (td instanceof XSDComplexTypeDefinition)
-      {
-        XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)td;
-        if (isSameNamespace(ct.getTargetNamespace(),schema.getTargetNamespace()))
-        {
-          list.add(ct);
-        }
-      }
-    }                
-
-//    List simpleTypes = schema.getTypeDefinitions();
-    for (Iterator i = allTypes.iterator(); i.hasNext(); )
-    {
-      XSDTypeDefinition td = (XSDTypeDefinition)i.next();
-      if (td instanceof XSDSimpleTypeDefinition)
-      {
-        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)td;
-        if (isSameNamespace(st.getTargetNamespace(),schema.getTargetNamespace()))
-        {
-          list.add(st);
-        }
-      }
-    }                
-    return list;
-  }
-  
-  protected List getGroups()
-  {
-    List groups = schema.getModelGroupDefinitions();
-    List list = new ArrayList();
-    for (Iterator i = groups.iterator(); i.hasNext(); )
-    {
-      XSDModelGroupDefinition group = (XSDModelGroupDefinition)i.next();
-      if (isSameNamespace(group.getTargetNamespace(),schema.getTargetNamespace()))
-      {
-        list.add(group);
-      }
-    }                
-    return list;
-  }
-  
-  protected List getDirectives()
-  {                 
-    List list = new ArrayList();
-    for (Iterator i = schema.getContents().iterator(); i.hasNext(); )
-    {
-      Object o = i.next();
-      if (o instanceof XSDSchemaDirective)
-      {
-        list.add(o);
-      }
-    } 
-    return list;
-  }
-
-  protected List getAttributeList()
-  {
-    List attributesList = new ArrayList();
-    for (Iterator iter = schema.getAttributeDeclarations().iterator(); iter.hasNext(); )
-    {
-      Object o = iter.next();
-      if (o instanceof XSDAttributeDeclaration)
-      {
-        XSDAttributeDeclaration attr = (XSDAttributeDeclaration)o;
-        if (attr != null)
-        {
-          if (attr.getTargetNamespace() != null)
-          {
-            if (!(attr.getTargetNamespace().equals("http://www.w3.org/2001/XMLSchema-instance")))
-            {
-              if (isSameNamespace(attr.getTargetNamespace(), schema.getTargetNamespace()))
-              {
-                attributesList.add(attr);
-              }
-            }
-          }
-          else
-          {
-            if (isSameNamespace(attr.getTargetNamespace(),schema.getTargetNamespace()))
-            {
-              attributesList.add(attr);
-            }
-          }
-        }
-      }
-    }
-    return attributesList;
-  }
-
-  protected List getNotations()
-  {
-    List notations = schema.getNotationDeclarations();
-    List list = new ArrayList();
-    for (Iterator i = notations.iterator(); i.hasNext(); )
-    {
-      XSDNotationDeclaration notation = (XSDNotationDeclaration)i.next();
-      if (isSameNamespace(notation.getTargetNamespace(),schema.getTargetNamespace()))
-      {
-        list.add(notation);
-      }
-    }                
-    return list;
-  }
-  
-  //
-  protected List listenerList = new ArrayList();
-                                                                                           
-  public void addListener(ModelAdapterListener l)
-  {
-    listenerList.add(l);
-  }  
-
-  public void removeListener(ModelAdapterListener l)
-  {
-    listenerList.remove(l);
-  } 
-
-  public Object getProperty(Object modelObject, String propertyName)
-  {
-    return null;
-  }
-
-  public void firePropertyChanged(Object modelObject, String propertyName)
-  {
-    List newList = new ArrayList();
-    newList.addAll(listenerList);
-    for (Iterator i = newList.iterator(); i.hasNext(); )
-    {
-      ModelAdapterListener l = (ModelAdapterListener)i.next();                  
-      try
-      {
-        l.propertyChanged(modelObject, propertyName);
-      }
-      catch (Exception e)
-      {
-      }
-    }
-  }  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/ModelAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/ModelAdapter.java
deleted file mode 100644
index 3066987..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/ModelAdapter.java
+++ /dev/null
@@ -1,27 +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.xsd.ui.internal.graph.model;
-
-
-
-public interface ModelAdapter
-{               
-  public static final String CHILDREN_PROPERTY = "CHILDREN_PROPERTY";
-  public static final String LABEL_PROPERTY = "LABEL_PROPERTY";
-  public static final String IMAGE_PROPERTY = "IMAGE_PROPERTY";
-  public static final String DETAIL_PROPERTY = "DETAIL_PROPERTY";
-                                       
-  public void addListener(ModelAdapterListener l);
-  public void removeListener(ModelAdapterListener l);
-  public Object getProperty(Object modelObject, String propertyName); 
-  public void firePropertyChanged(Object modelObject, String propertyName);
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/ModelAdapterListener.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/ModelAdapterListener.java
deleted file mode 100644
index ff6e4db..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/ModelAdapterListener.java
+++ /dev/null
@@ -1,18 +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.xsd.ui.internal.graph.model;
-
-
-
-public interface ModelAdapterListener
-{                             
-  public void propertyChanged(Object object, String property);
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/XSDModelAdapterFactory.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/XSDModelAdapterFactory.java
deleted file mode 100644
index 98f051a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/graph/model/XSDModelAdapterFactory.java
+++ /dev/null
@@ -1,559 +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.xsd.ui.internal.graph.model;
-
-import java.util.ArrayList;
-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.AdapterFactoryImpl;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDAbstractAdapter;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDModelAdapterFactoryImpl;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDParticleContent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-import org.eclipse.xsd.util.XSDSwitch;
-
-
-
-
-public class XSDModelAdapterFactory
-{  
-  protected static XSDModelAdapterFactory instance;
-  protected static XSDAdapterFactoryImpl xsdAdapterFactoryImpl = new XSDAdapterFactoryImpl();
-                                              
-  public static XSDModelAdapterFactory getInstance()
-  {
-    if (instance == null)
-    {
-      instance = new XSDModelAdapterFactory();
-    }                                         
-    return instance;
-  }
-
-
-  public static ModelAdapter getAdapter(Object o)
-  {                             
-    ModelAdapter result = null;
-    if (o instanceof Notifier)
-    {                                
-      Notifier target = (Notifier)o;
-		  Adapter adapter = xsdAdapterFactoryImpl.adapt(target);
-      if (adapter instanceof XSDObjectAdapter)
-      {
-        result = (XSDObjectAdapter)adapter;
-      }
-    }                              
-    else if (o instanceof ModelAdapter)
-    {
-      result = (ModelAdapter)o;
-    }
-    return result;
-  }             
-    
-
-  public static XSDObjectAdapter getExisitingAdapter(Object xsdObject)
-  {  
-    XSDObjectAdapter result = null;
-    if (xsdObject instanceof Notifier)
-    {                                
-      Notifier target = (Notifier)xsdObject;
-		  Adapter adapter = EcoreUtil.getExistingAdapter(target,xsdAdapterFactoryImpl);
-      if (adapter instanceof XSDObjectAdapter)
-      {
-        result = (XSDObjectAdapter)adapter;
-      }
-    }
-    return result;
-  }
-   
-  //
-  //
-  //
-  public static class XSDAdapterFactoryImpl extends AdapterFactoryImpl
-  {
-    public Adapter createAdapter(Notifier target)
-    {
-      XSDSwitch xsdSwitch = new XSDSwitch()
-      {                   
-        public Object caseXSDElementDeclaration(XSDElementDeclaration object)
-        {
-          return new XSDElementDeclarationAdapter(object);
-        }
-        
-        public Object caseXSDParticle(XSDParticle object)
-        {
-          return new XSDParticleAdapter(object);
-        }
-
-        public Object caseXSDSchema(XSDSchema object) 
-        {
-          return new XSDSchemaAdapter(object);
-        }
-
-        public Object defaultCase(EObject object) 
-        {
-          return new XSDObjectAdapter();
-        }         
-      };
-      Object o = xsdSwitch.doSwitch((EObject)target);
-
-      Adapter result = null;
-      if (o instanceof Adapter)
-      {
-        result  = (Adapter)o;
-      }
-      else
-      {          
-//        System.out.println("did not create adapter for target : " + target);
-//        Thread.dumpStack();
-      }
-      return result;
-    }      
-                               
-
-    public Adapter adapt(Notifier target)
-    {
-      return adapt(target, this);
-    }
-  }
-    
-
- 
-  //
-  //
-  //
-  protected static class XSDObjectAdapter extends AdapterImpl implements ModelAdapter
-  {   
-    protected List listenerList = new ArrayList();
-    protected boolean isUpdating = false;
-                                  
-    public boolean isAdapterForType(Object type)
-    {
-      return type == xsdAdapterFactoryImpl;
-    }                                             
-                
-    public void addListener(ModelAdapterListener l)
-    {
-      listenerList.add(l);
-    }  
-
-    public void removeListener(ModelAdapterListener l)
-    {
-      listenerList.remove(l);
-    } 
-                
-    public Object getProperty(Object modelObject, String propertyName)
-    {
-      Object result = null;
-      if (ModelAdapter.LABEL_PROPERTY.equals(propertyName))
-      {
-      	result = "";
-      	// TODO... move this logic into each adapter
-      	//
-        if (modelObject instanceof XSDNamedComponent)
-        {
-      	  result = ((XSDNamedComponent)modelObject).getName();
-        }
-        else if (modelObject instanceof XSDSchemaDirective)
-        {
-       	  result = ((XSDSchemaDirective)modelObject).getSchemaLocation();
-          if (result == null) result = "(" + XSDEditorPlugin.getXSDString("_UI_LABEL_NO_LOCATION_SPECIFIED") + ")";
-          if (result.equals("")) result = "(" + XSDEditorPlugin.getXSDString("_UI_LABEL_NO_LOCATION_SPECIFIED") + ")";
-          return result;
-        }
-      }
-      else if ("drillDown".equals(propertyName))
-      {
-      	// TODO... move this logic into each adapter
-      	//   
-      	List list = XSDChildUtility.getModelChildren(modelObject);	
-      	result = list.size() > 0 ? Boolean.TRUE : Boolean.FALSE;      	   
-      }      
-      else if (ModelAdapter.IMAGE_PROPERTY.equals(propertyName))
-      {
-      	// result = XSDEditorPlugin.getDefault().getImage("icons/XSDElement.gif");
-        XSDModelAdapterFactoryImpl factory = XSDModelAdapterFactoryImpl.getInstance();
-        Adapter adapter = factory.createAdapter((Notifier)modelObject);
-        result = ((XSDAbstractAdapter)adapter).getImage(modelObject);
-      }	
-      return result;
-    }
-
-    public void firePropertyChanged(Object modelObject, String propertyName)
-    {
-      List newList = new ArrayList();
-      newList.addAll(listenerList);
-      for (Iterator i = newList.iterator(); i.hasNext(); )
-      {
-        ModelAdapterListener l = (ModelAdapterListener)i.next();                  
-        try
-        {
-          l.propertyChanged(modelObject, propertyName);
-        }
-        catch (Exception e)
-        {
-        }
-      }
-    }  
-
-    public void notifyChanged(Notification msg)
-    {        
-      firePropertyChanged(msg.getNotifier(), null);
-    }     
-  }
-       
-  protected static class XSDParticleAdapter extends XSDObjectAdapter implements ModelAdapterListener
-  {
-    protected XSDParticle particle;
-
-    public XSDParticleAdapter(XSDParticle particle)
-    {
-      this.particle = particle;
-    } 
-
-    public void notifyChanged(Notification msg)
-    {
-      XSDParticle xsdParticle = (XSDParticle)msg.getNotifier();
-      XSDParticleContent xsdParticleContent = xsdParticle.getContent();
-      XSDModelAdapterFactoryImpl factory = XSDModelAdapterFactoryImpl.getInstance();
-      if (xsdParticleContent != null)
-      {
-        if (xsdParticleContent instanceof XSDElementDeclaration)
-        {
-          firePropertyChanged((XSDElementDeclaration)xsdParticleContent, null);
-          factory.fireNotifyChanged(msg);
-        }
-        else if (xsdParticleContent instanceof XSDModelGroup)
-        {
-          firePropertyChanged((XSDModelGroup)xsdParticleContent, null);
-          factory.fireNotifyChanged(msg);
-        }
-        else if (xsdParticleContent instanceof XSDWildcard)
-        {
-          firePropertyChanged((XSDWildcard)xsdParticleContent, null);
-          factory.fireNotifyChanged(msg);
-        }
-      }
-    } 
-
-
-    public void propertyChanged(Object object, String property)
-    {
-      firePropertyChanged(object, property);
-    }
-  }                         
-     
-  //
-  //
-  //
-  protected static class XSDElementDeclarationAdapter extends XSDObjectAdapter implements ModelAdapterListener
-  {
-    protected XSDElementDeclaration ed;
-    protected XSDTypeDefinition typeDefinition;          
-
-    public XSDElementDeclarationAdapter(XSDElementDeclaration ed)
-    {
-      this.ed = ed;
-      updateTypeDefinition();
-    } 
-    
-    protected void updateTypeDefinition()
-    {
-      XSDTypeDefinition td = ed.getTypeDefinition();
-      td = (td instanceof XSDComplexTypeDefinition) ? td : null;
-      if (td != typeDefinition)
-      {                     
-        if (typeDefinition != null)
-        {
-          XSDObjectAdapter adapter = (XSDObjectAdapter)xsdAdapterFactoryImpl.adapt(typeDefinition);
-          adapter.removeListener(this);
-        }
-        typeDefinition = td;
-        if (typeDefinition != null)
-        {
-          XSDObjectAdapter adapter = (XSDObjectAdapter)xsdAdapterFactoryImpl.adapt(typeDefinition);
-          adapter.addListener(this);
-        }
-      }
-    } 
-
-
-    public void notifyChanged(Notification msg)
-    {
-      updateTypeDefinition();    
-      firePropertyChanged(msg.getNotifier(), null);                                                                          
-    } 
-
-
-    public void propertyChanged(Object object, String property)
-    {                         
-      // here we propagate typeDefinition changes to our listeners
-      firePropertyChanged(object, property);
-    }
-  }                         
-  
-
-  //
-  //
-  protected static class XSDSchemaAdapter extends XSDObjectAdapter
-  { 
-    protected XSDSchema schema;
-    protected List groups;            
-
-    public XSDSchemaAdapter(XSDSchema schema)
-    {
-      this.schema = schema;                         
-      groups = new ArrayList();                                       
-      groups.add(new Category(schema, Category.DIRECTIVES));
-      groups.add(new Category(schema, Category.ATTRIBUTES)); 
-      //groups.add(new Category(schema, Category.ATTRIBUTE_GROUPS));
-      groups.add(new Category(schema, Category.ELEMENTS));
-      groups.add(new Category(schema, Category.TYPES));
-      //groups.add(new Category(schema, Category.SIMPLE_TYPES));
-      groups.add(new Category(schema, Category.GROUPS));
-    }
-
-    public void notifyChanged(Notification msg)
-    {
-      super.notifyChanged(msg);
-      for (Iterator i = groups.iterator(); i.hasNext(); )
-      {
-        ModelAdapter group = (ModelAdapter)i.next();
-        group.firePropertyChanged(group, null);
-      }
-    }
-
-    public Object getProperty(Object modelObject, String propertyName)
-    {
-      Object result = null;
-      if ("groups".equals(propertyName))
-      { 
-        /*
-        List list = new ArrayList();
-        for (Iterator i = groups.iterator(); i.hasNext(); )
-        {
-          Category group = (Category)i.next();
-          if (group.getChildren().size() > 0)
-          {
-            list.add(group);
-          }
-        }
-        result = list;*/
-        result = groups;
-      }      
-      if (result == null)
-      {
-        result = super.getProperty(modelObject, propertyName);
-      }
-      return result;
-    }
-  }
-
-
-  public static void addModelAdapterListener(Object modelObject, ModelAdapterListener listener)
-  {                                                            
-    ModelAdapter modelAdapter = getModelAdapter(modelObject);
-    if (modelAdapter != null)
-    {
-      modelAdapter.addListener(listener);
-    }
-  }    
-
-
-  public static void removeModelAdapterListener(Object modelObject, ModelAdapterListener listener)
-  {                               
-    ModelAdapter modelAdapter = getModelAdapter(modelObject);
-    if (modelAdapter != null)
-    {
-      modelAdapter.removeListener(listener);
-    }
-  }   
-
-  protected static ModelAdapter getModelAdapter(Object modelObject)
-  {
-    ModelAdapter modelAdapter = null;                         
-    if (modelObject instanceof Notifier)
-    {
-      modelAdapter = (ModelAdapter)xsdAdapterFactoryImpl.adapt((Notifier)modelObject);
-    } 
-    else if (modelObject instanceof ModelAdapter)
-    {
-      modelAdapter = (ModelAdapter)modelObject;
-    } 
-    return modelAdapter;
-  }      
-}
-    
-
-
-// --------------------------------------------------------------------------------------------
-// todo... revist this stuff
-// --------------------------------------------------------------------------------------------
-
-  /*                   
-  public static void handleTypeChange(XSDTypeDefinition td, XSDSchema schema, int change)
-  {                                    
-    try
-    {
-      TypeFindingSchemaVisitor visitor = new TypeFindingSchemaVisitor(schema, td, change == Notification.ADD);
-      List list = visitor.findElementsUsingType(schema);          
-      
-      if (change == Notification.REMOVE)          
-      {
-        visitor.removeMatchingReferences();
-      }
-      else if (change == Notification.ADD)          
-      {
-        visitor.setMatchingReferences();
-      }
-      else
-      {
-        visitor.cleanUpTypeMismatches();        
-      }
-      
-      for (Iterator i = list.iterator(); i.hasNext(); )
-      {
-        Object o = i.next();  
-        XSDObjectAdapter adapter = getExisitingAdapter(o);
-        if (adapter != null)
-        { 
-          adapter.fireChildrenChangedNotification();
-        }
-      }          
-    }
-    catch (Exception e)
-    {
-      e.printStackTrace();
-    }
-  }
-          
-
-  protected static class TypeFindingSchemaVisitor extends org.eclipse.wst.xsd.utility.XSDVisitor
-  {                           
-    protected XSDTypeDefinition td;
-    protected List list = new ArrayList();   
-    protected XSDSchema schema;                            
-    protected boolean matchByName;
-
-    public TypeFindingSchemaVisitor(XSDSchema schema, XSDTypeDefinition td, boolean matchByName)
-    {
-      this.td = td;                                 
-      this.schema = schema;
-      this.matchByName = matchByName;
-    }
-
-    public void visitElementDeclaration(XSDElementDeclaration ed)
-    {                                  
-      if (ed.getTypeDefinition() == td)
-      {                
-        list.add(ed);        
-      }  
-      else if (matchByName)
-      {          
-        String[] name = getDOMName(ed);
-        if (name[0].equals(td.getTargetNamespace()) && name[1].equals(td.getName()))
-        {
-          list.add(ed);
-        }
-      }
-    } 
-
-    public List findElementsUsingType(XSDSchema schema)
-    {
-      if (td != null)
-      {
-        visitSchema(schema);
-      }    
-      return list;
-    }   
-
-    public List getMatchingTypeList()
-    {
-      return list;
-    } 
-
-    public String[] getDOMName(XSDElementDeclaration ed)
-    {      
-      String[] result = new String[2];
-      org.w3c.dom.Element domElement = ed.getElement();
-      String typeName = domElement.getAttribute("type");
-      if (typeName != null && !typeName.endsWith(td.getName()))
-      {             
-        int index = typeName.indexOf(":");                                      
-        String prefix = index == -1 ? "" : typeName.substring(0, index);   
-        result[0] = (String)schema.getQNamePrefixToNamespaceMap().get(prefix);
-        if (result[0] == null) result[0] = "";
-        if (result[1] == null) result[1] = "";
-        result[1] = index == -1 ? typeName : typeName.substring(index + 1);
-      }  
-      else
-      {
-        result[0] = "";
-        result[1] = "";
-      }
-      return result;
-    }
-    
-    
-    public void cleanUpTypeMismatches()
-    {
-      for (Iterator i = list.iterator(); i.hasNext(); )
-      {
-        XSDElementDeclaration ed = (XSDElementDeclaration)i.next();
-        XSDTypeDefinition candidateTd = ed.getTypeDefinition();
-        if (candidateTd != null && candidateTd.getName() != null)
-        {
-          String[] result = getDOMName(ed);
-          ed.setTypeDefinition((XSDTypeDefinition)schema.resolveComplexTypeDefinition(result[0], result[1]));         
-        }
-      }
-    }
-    
-    public void removeMatchingReferences()
-    {
-      for (Iterator i = list.iterator(); i.hasNext(); )
-      {
-        XSDElementDeclaration ed = (XSDElementDeclaration)i.next();
-        String[] result = getDOMName(ed);          
-        if (ed.getElement() != null)
-        {
-          // NOTE ... this forces the model to reset the ed's XSDTypeDefinition without causing the
-          // DOM element's 'type' attribute to be set to null
-          ed.elementAttributesChanged(ed.getElement());
-        }
-      }
-    }
-    
-    public void setMatchingReferences()
-    {
-      for (Iterator i = list.iterator(); i.hasNext(); )
-      {
-        XSDElementDeclaration ed = (XSDElementDeclaration)i.next();
-        ed.setTypeDefinition(td);
-      }
-    }    
-  } */   
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GenerateDtd.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GenerateDtd.gif
deleted file mode 100644
index ac58c1e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GenerateDtd.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GenerateJava.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GenerateJava.gif
deleted file mode 100644
index 2375c65..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GenerateJava.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GraphViewElementRef.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GraphViewElementRef.gif
deleted file mode 100644
index d535dac..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/GraphViewElementRef.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/NewXSD.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/NewXSD.gif
deleted file mode 100644
index 47f6730..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/NewXSD.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/RegexWizardArrow.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/RegexWizardArrow.gif
deleted file mode 100644
index 3d550a3..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/RegexWizardArrow.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/ValidateXSD.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/ValidateXSD.gif
deleted file mode 100644
index 2b347ac..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/ValidateXSD.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAll.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAll.gif
deleted file mode 100644
index 6d74e80..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAll.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAnnotate.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAnnotate.gif
deleted file mode 100644
index d2108c0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAnnotate.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAny.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAny.gif
deleted file mode 100644
index a39f93c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAny.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAnyAttribute.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAnyAttribute.gif
deleted file mode 100644
index 5280cc2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAnyAttribute.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAppInfo.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAppInfo.gif
deleted file mode 100644
index 2da001e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAppInfo.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttribute.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttribute.gif
deleted file mode 100644
index 79d49d0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttribute.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeGroup.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeGroup.gif
deleted file mode 100644
index 648462f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeGroup.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeGroupRef.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeGroupRef.gif
deleted file mode 100644
index a89fa8f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeGroupRef.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeRef.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeRef.gif
deleted file mode 100644
index 8365af2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDAttributeRef.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDChoice.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDChoice.gif
deleted file mode 100644
index 89ba825..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDChoice.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDComplexContent.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDComplexContent.gif
deleted file mode 100644
index 41c68dd..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDComplexContent.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDComplexType.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDComplexType.gif
deleted file mode 100644
index 007f852..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDComplexType.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDDoc.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDDoc.gif
deleted file mode 100644
index d349a05..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDDoc.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDElement.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDElement.gif
deleted file mode 100644
index dd45f08..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDElement.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDElementRef.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDElementRef.gif
deleted file mode 100644
index 749acfc..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDElementRef.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDExtension.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDExtension.gif
deleted file mode 100644
index 0cfb807..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDExtension.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDField.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDField.gif
deleted file mode 100644
index 378e43e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDField.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDFile.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDFile.gif
deleted file mode 100644
index 3900f1b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDFile.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGlobalAttribute.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGlobalAttribute.gif
deleted file mode 100644
index 79d49d0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGlobalAttribute.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGlobalElement.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGlobalElement.gif
deleted file mode 100644
index dd45f08..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGlobalElement.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGroup.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGroup.gif
deleted file mode 100644
index 555ef53..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGroup.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGroupRef.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGroupRef.gif
deleted file mode 100644
index 3621342..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDGroupRef.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDImport.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDImport.gif
deleted file mode 100644
index 9e44ce5..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDImport.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDInclude.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDInclude.gif
deleted file mode 100644
index b26c527..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDInclude.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDKey.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDKey.gif
deleted file mode 100644
index 04032a9..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDKey.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDKeyRef.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDKeyRef.gif
deleted file mode 100644
index ee5829d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDKeyRef.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDNotation.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDNotation.gif
deleted file mode 100644
index ce9df98..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDNotation.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDRedefine.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDRedefine.gif
deleted file mode 100644
index 56964c1..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDRedefine.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSelector.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSelector.gif
deleted file mode 100644
index 2399a58..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSelector.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSequence.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSequence.gif
deleted file mode 100644
index 8bf3f97..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSequence.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleContent.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleContent.gif
deleted file mode 100644
index 7ef38df..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleContent.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleEnum.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleEnum.gif
deleted file mode 100644
index 11d7958..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleEnum.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleList.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleList.gif
deleted file mode 100644
index d08e78f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleList.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimplePattern.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimplePattern.gif
deleted file mode 100644
index a113cf4..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimplePattern.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleRestrict.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleRestrict.gif
deleted file mode 100644
index 38bc12e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleRestrict.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleType.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleType.gif
deleted file mode 100644
index 75f33c2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleType.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleTypeForEditPart.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleTypeForEditPart.gif
deleted file mode 100644
index 9aefeb2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleTypeForEditPart.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleUnion.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleUnion.gif
deleted file mode 100644
index 292adaf..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDSimpleUnion.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDUnique.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDUnique.gif
deleted file mode 100644
index 5a8a650..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/XSDUnique.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/back.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/back.gif
deleted file mode 100644
index 24d1a27..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/back.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/browsebutton.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/browsebutton.gif
deleted file mode 100644
index 13dae59..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/browsebutton.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/forward.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/forward.gif
deleted file mode 100644
index eab699e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/forward.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/generate_xml.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/generate_xml.gif
deleted file mode 100644
index f2e3635..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/generate_xml.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/regx_wiz.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/regx_wiz.gif
deleted file mode 100644
index 789d137..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/regx_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/reloadgrammar.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/reloadgrammar.gif
deleted file mode 100644
index c705db0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/reloadgrammar.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/sort.gif b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/sort.gif
deleted file mode 100644
index 3c65dc4..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/icons/sort.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/preferences/XSDPreferencePage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/preferences/XSDPreferencePage.java
deleted file mode 100644
index 0506798..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/preferences/XSDPreferencePage.java
+++ /dev/null
@@ -1,256 +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.xsd.ui.internal.preferences;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorContextIds;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-
-public class XSDPreferencePage extends PreferencePage implements IWorkbenchPreferencePage, Listener 
-{
-  Text indentTextField;
-  String indentString;
-  Text schemaNsPrefixField;
-  Text defaultTargetNamespaceText;
-  Button qualifyXSDLanguage;
-
-  /**
-   * Creates preference page controls on demand.
-   *   @param parent  the parent for the preference page
-   */
-  protected Control createContents(Composite parent)
-  {
-    WorkbenchHelp.setHelp(parent, XSDEditorContextIds.XSDP_PREFERENCE_PAGE);
-
-    Group group = createGroup(parent, 2);   
-    group.setText(XSDEditorPlugin.getXSDString("_UI_TEXT_XSD_NAMESPACE_PREFIX"));
-
-    qualifyXSDLanguage = ViewUtility.createCheckBox(group, XSDEditorPlugin.getXSDString("_UI_QUALIFY_XSD"));
-    ViewUtility.createLabel(group, " ");
-
-    createLabel(group, XSDEditorPlugin.getXSDString("_UI_TEXT_XSD_DEFAULT_PREFIX"));
-    schemaNsPrefixField = createTextField(group);
-    schemaNsPrefixField.addKeyListener(new KeyAdapter()
-    {
-      public void keyPressed(KeyEvent e)
-      {
-        setValid(true);
-      }      
-    });
-    
-    createLabel(group, XSDEditorPlugin.getXSDString("_UI_TEXT_XSD_DEFAULT_TARGET_NAMESPACE"));
-    defaultTargetNamespaceText = createTextField(group);
-
-    initializeValues();
-
-    return new Composite(parent, SWT.NULL);
-  }
-
-  private Group createGroup(Composite parent, int numColumns) 
-  {
-    Group group = new Group(parent, SWT.NULL);
-
-    GridLayout layout = new GridLayout();
-    layout.numColumns = numColumns;
-    group.setLayout(layout);
-
-    GridData data = new GridData();
-    data.verticalAlignment = GridData.FILL;
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    group.setLayoutData(data);
-    
-    return group;
-  }
-
-  private Text createTextField(Composite parent) 
-  {
-     Text text = new Text(parent, SWT.SINGLE | SWT.BORDER);
-     GridData data = new GridData();
-     data.verticalAlignment = GridData.FILL;
-     data.horizontalAlignment = GridData.FILL;
-     data.grabExcessHorizontalSpace = true;
-     text.setLayoutData(data);
-
-     return text;
-  }
-
-  private Label createLabel(Composite parent, String text) 
-  {
-    Label label = new Label(parent, SWT.LEFT);
-    label.setText(text);
-    
-    GridData data = new GridData();
-    data.verticalAlignment = GridData.CENTER;
-    data.horizontalAlignment = GridData.FILL;
-    label.setLayoutData(data);
-    
-    return label;
-  }
-  
-  /**
-   * Does anything necessary because the default button has been pressed.
-   */
-  protected void performDefaults() 
-  {
-    super.performDefaults();
-    initializeDefaults();
-    checkValues();
-  }
-
-  /**
-   * Do anything necessary because the OK button has been pressed.
-   *  @return whether it is okay to close the preference page
-   */
-  public boolean performOk() 
-  {
-    if (checkValues())
-    {
-      storeValues();    
-      return true;
-    }
-    return false;
-  }
-
-  protected void performApply()
-  {
-    if (checkValues())
-    {
-      storeValues();    
-    }
-  }
-
-  /**
-   * Handles events generated by controls on this page.
-   *   @param e  the event to handle
-   */
-  public void handleEvent(Event e) 
-  {
-    Widget source = e.widget;
-  }
-
-  /**
-   * @see IWorkbenchPreferencePage
-   */
-  public void init(IWorkbench workbench)
-  { 
-  }
-
-  /** 
-   * The indent is stored in the preference store associated with the XML Schema Model
-   */
-  public IPreferenceStore getPreferenceStore()
-  {
-    return XSDEditorPlugin.getPlugin().getPreferenceStore();
-  }
-
-  /**
-   * Initializes states of the controls using default values
-   * in the preference store.
-   */
-  private void initializeDefaults() 
-  {
-    schemaNsPrefixField.setText(getPreferenceStore().getDefaultString(XSDEditorPlugin.CONST_XSD_DEFAULT_PREFIX_TEXT));
-    qualifyXSDLanguage.setSelection(getPreferenceStore().getDefaultBoolean(XSDEditorPlugin.CONST_XSD_LANGUAGE_QUALIFY));
-    defaultTargetNamespaceText.setText(getPreferenceStore().getString(XSDEditorPlugin.CONST_DEFAULT_TARGET_NAMESPACE));
-  }
-
-  /**
-   * Initializes states of the controls from the preference store.
-   */
-  private void initializeValues() 
-  {
-    IPreferenceStore store = getPreferenceStore();
-    schemaNsPrefixField.setText(store.getString(XSDEditorPlugin.CONST_XSD_DEFAULT_PREFIX_TEXT));
-    qualifyXSDLanguage.setSelection(store.getBoolean(XSDEditorPlugin.CONST_XSD_LANGUAGE_QUALIFY));
-    defaultTargetNamespaceText.setText(store.getString(XSDEditorPlugin.CONST_DEFAULT_TARGET_NAMESPACE));
-  }
-
-  /**
-   * Stores the values of the controls back to the preference store.
-   */
-  private void storeValues() 
-  {
-    IPreferenceStore store = getPreferenceStore();
-
-    store.setValue(XSDEditorPlugin.CONST_XSD_DEFAULT_PREFIX_TEXT, getXMLSchemaPrefix());
-    store.setValue(XSDEditorPlugin.CONST_XSD_LANGUAGE_QUALIFY, getQualify());
-    store.setValue(XSDEditorPlugin.CONST_DEFAULT_TARGET_NAMESPACE, getXMLSchemaTargetNamespace());
-
-    XSDEditorPlugin.getPlugin().savePluginPreferences();
-  }
-
-  public String getXMLSchemaPrefix()
-  {
-    String prefix = schemaNsPrefixField.getText();
-    if (prefix == null || prefix.equals("")) 
-    {
-      return "xsd";
-    }
-    return prefix;
-  }
-
-  public boolean getQualify()
-  {
-    return qualifyXSDLanguage.getSelection();
-  }
-  
-  /**
-   * Get the xml schema default target namespace
-   */
-  public String getXMLSchemaTargetNamespace()
-  {
-  	String targetNamespace = defaultTargetNamespaceText.getText();
-    if (targetNamespace == null || targetNamespace.equals("")) 
-    {
-      return XSDEditorPlugin.DEFAULT_TARGET_NAMESPACE;
-    }
-    return targetNamespace;
-  }
-  
-  public boolean checkValues()
-  {
-// KCPort TODO    String errorMessage = ValidateHelper.checkXMLName(schemaNsPrefixField.getText());
-	 String errorMessage = null;
-
-    if (errorMessage == null || errorMessage.length() == 0)
-    {
-      setErrorMessage(null);
-      setValid(true);
-      return true;
-    }
-    else
-    {
-      setErrorMessage(XSDEditorPlugin.getXSDString("_ERROR_LABEL_INVALID_PREFIX"));
-      setValid(false);
-      return false;
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyAttributePropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyAttributePropertySource.java
deleted file mode 100644
index 0f4e7e7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyAttributePropertySource.java
+++ /dev/null
@@ -1,173 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-public class AnyAttributePropertySource extends BasePropertySource implements IPropertySource
-{
-  private String[] namespaceComboValues = {
-              "",
-              "##any",
-              "##other",
-              "##targetNamespace",
-              "##local"
-  };
-  
-  private String[] processContentsComboValues = {
-              "",
-              XSDEditorPlugin.getXSDString("_UI_COMBO_LAX"),
-              XSDEditorPlugin.getXSDString("_UI_COMBO_SKIP"),
-              XSDEditorPlugin.getXSDString("_UI_COMBO_STRICT")
-  };
-  public AnyAttributePropertySource()
-  {
-  }
-
-  public AnyAttributePropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-    
-  public AnyAttributePropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-
-    XSDComboBoxPropertyDescriptor namespaceDescriptor = new XSDComboBoxPropertyDescriptor(
-        XSDConstants.NAMESPACE_ATTRIBUTE,
-        XSDConstants.NAMESPACE_ATTRIBUTE,
-        namespaceComboValues);
-    list.add(namespaceDescriptor);
-    
-    XSDComboBoxPropertyDescriptor processContentsDescriptor = new XSDComboBoxPropertyDescriptor(
-        XSDConstants.PROCESSCONTENTS_ATTRIBUTE,
-        XSDConstants.PROCESSCONTENTS_ATTRIBUTE,
-        processContentsComboValues);
-    list.add(processContentsDescriptor);
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      if (result == null)
-      {
-        result = "";
-      }
-      return result;
-    }
-    return "";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      if (((String) id).equals(XSDConstants.NAMESPACE_ATTRIBUTE))
-      {
-        String namespace = (String)value;
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_NAMESPACE_CHANGE"), element);
-        if (namespace != null && namespace.length() > 0)
-        {
-          element.setAttribute(XSDConstants.NAMESPACE_ATTRIBUTE, namespace);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.NAMESPACE_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.PROCESSCONTENTS_ATTRIBUTE))
-      {
-        String processContents = (String)value;
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_PROCESSCONTENTS_CHANGE"), element);
-        if (processContents != null && processContents.length() > 0)
-        {
-          element.setAttribute(XSDConstants.PROCESSCONTENTS_ATTRIBUTE, processContents);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.PROCESSCONTENTS_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-
-  }
-
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyContentPropertyDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyContentPropertyDescriptor.java
deleted file mode 100644
index b11ef1e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyContentPropertyDescriptor.java
+++ /dev/null
@@ -1,155 +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.xsd.ui.internal.properties;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.DialogCellEditor;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorContextIds;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.w3c.dom.CharacterData;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class AnyContentPropertyDescriptor extends PropertyDescriptor
-{
-  Element element;
-  /**
-   * @param id
-   * @param displayName
-   */
-  public AnyContentPropertyDescriptor(Object id, String displayName, Element element)
-  {
-    super(id, displayName);
-    this.element = element;
-  }
-  
-  public CellEditor createPropertyEditor(Composite parent)
-  {
-    CellEditor editor = new AnyContentDialogCellEditor(parent);
-    if (getValidator() != null)
-      editor.setValidator(getValidator());
-    return editor;
-  }
-
-  public class AnyContentDialogCellEditor extends DialogCellEditor {
-
-    /**
-     * Creates a new Font dialog cell editor parented under the given control.
-     * The cell editor value is <code>null</code> initially, and has no 
-     * validator.
-     *
-     * @param parent the parent control
-     */
-    protected AnyContentDialogCellEditor(Composite parent) {
-      super(parent);
-    }
-
-    /**
-     * @see org.eclipse.jface.viewers.DialogCellEditor#openDialogBox(Control)
-     */
-    protected Object openDialogBox(Control cellEditorWindow)
-    {
-      Shell shell = Display.getCurrent().getActiveShell();
-      
-      AnyContentDialog dialog = new AnyContentDialog(shell);
-      dialog.setBlockOnOpen(true);
-      dialog.create();
-      
-      String value = (String)getValue();
-
-      int result = dialog.open();
-
-      if (result == Window.OK)
-      {
-        return dialog.getComment();
-      }
-      return value;
-    }
-
-  }
-
-  public class AnyContentDialog extends org.eclipse.jface.dialogs.Dialog
-  {
-    protected Text commentField;
-    protected Button okButton, cancelButton;
-    private String comment;
-    
-    public AnyContentDialog(Shell shell)
-    {
-      super(shell);
-    }
-
-    protected void configureShell(Shell shell)
-    {
-      super.configureShell(shell);
-    }
-
-    protected void buttonPressed(int buttonId)
-    {
-      if (buttonId == Dialog.OK)
-      {
-        comment = commentField.getText();
-      }
-      super.buttonPressed(buttonId);
-    }
-
-    public String getComment() { return comment; }
-
-    //
-    // Create the controls
-    //
-    public Control createDialogArea(Composite parent)
-    {
-      int tabIndex = 0;
-      Composite client = (Composite)super.createDialogArea(parent);
-      getShell().setText("Content for " + element.getLocalName());
-      
-      commentField = ViewUtility.createMultiTextField(client, 400, 200, true);
-      
-      WorkbenchHelp.setHelp(commentField, XSDEditorContextIds.XSDE_ANNOTATION_COMMENT);
-      commentField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_COMMENT"));
-
-      String initialString = (String)getInitialContent();
-      commentField.setText(initialString);
-      return client;
-    }
-
-    private Object getInitialContent()
-    {
-      Object result = null;
-      if (element.hasChildNodes())
-       {
-        // if the element is Text
-        Node node = element.getFirstChild();
-        if (node instanceof CharacterData)
-         {
-          result = ((CharacterData)node).getData();
-        }
-      }
-      else
-       {
-        result = "";
-      }
-      return result;
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyElementPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyElementPropertySource.java
deleted file mode 100644
index df43637..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AnyElementPropertySource.java
+++ /dev/null
@@ -1,228 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-public class AnyElementPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-
-  private String[] namespaceComboValues = {
-        "",
-        "##any",
-        "##other",
-        "##targetNamespace",
-        "##local"
-  };
-  
-  private String[] processContentsComboValues = {
-     "",
-     XSDEditorPlugin.getXSDString("_UI_COMBO_LAX"),
-     XSDEditorPlugin.getXSDString("_UI_COMBO_SKIP"),
-     XSDEditorPlugin.getXSDString("_UI_COMBO_STRICT")
-  };
-  
-  /**
-   * 
-   */
-  public AnyElementPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public AnyElementPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public AnyElementPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-
-    XSDComboBoxPropertyDescriptor namespaceDescriptor = new XSDComboBoxPropertyDescriptor(
-        XSDConstants.NAMESPACE_ATTRIBUTE,
-        XSDConstants.NAMESPACE_ATTRIBUTE,
-        namespaceComboValues);
-    list.add(namespaceDescriptor);
-    
-    XSDComboBoxPropertyDescriptor processContentsDescriptor = new XSDComboBoxPropertyDescriptor(
-        XSDConstants.PROCESSCONTENTS_ATTRIBUTE,
-        XSDConstants.PROCESSCONTENTS_ATTRIBUTE,
-        processContentsComboValues);
-    list.add(processContentsDescriptor);
-
-// These are moved to the tabbed properties general section     
-//    PropertyDescriptor minOccursDescriptor =
-//    new TextPropertyDescriptor(
-//        XSDConstants.MINOCCURS_ATTRIBUTE,
-//        XSDConstants.MINOCCURS_ATTRIBUTE);
-//    list.add(minOccursDescriptor);
-//    PropertyDescriptor maxOccursDescriptor =
-//    new TextPropertyDescriptor(
-//        XSDConstants.MAXOCCURS_ATTRIBUTE,
-//        XSDConstants.MAXOCCURS_ATTRIBUTE);
-//    list.add(maxOccursDescriptor);
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      if (result == null)
-      {
-        result = "";
-      }
-      return result;
-
-//      if (((String) id).equals(XSDConstants.NAMESPACE_ATTRIBUTE))
-//       {
-//      }
-//      else if (((String) id).equals(XSDConstants.PROCESSCONTENTS_ATTRIBUTE))
-//       {
-//      }      
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-     {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      if (((String) id).equals(XSDConstants.MAXOCCURS_ATTRIBUTE))
-      {
-        String max = (String)value;
-        String min = element.getAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_MAXOCCURS_CHANGE"), element);
-        if (max.length() > 0)
-        {
-          element.setAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE, max);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.MINOCCURS_ATTRIBUTE))
-      {
-        String min = (String)value;
-        String max = element.getAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_MINOCCURS_CHANGE"), element);
-        if (min.length() > 0)
-        {
-          element.setAttribute(XSDConstants.MINOCCURS_ATTRIBUTE, min);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.NAMESPACE_ATTRIBUTE))
-      {
-        String namespace = (String)value;
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_NAMESPACE_CHANGE"), element);
-        if (namespace.length() > 0)
-        {
-          element.setAttribute(XSDConstants.NAMESPACE_ATTRIBUTE, namespace);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.NAMESPACE_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.PROCESSCONTENTS_ATTRIBUTE))
-      {
-        String processContents = (String)value;
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_PROCESSCONTENTS_CHANGE"), element);
-        if (processContents.length() > 0)
-        {
-          element.setAttribute(XSDConstants.PROCESSCONTENTS_ATTRIBUTE, processContents);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.PROCESSCONTENTS_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AppInfoPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AppInfoPropertySource.java
deleted file mode 100644
index b99c768..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AppInfoPropertySource.java
+++ /dev/null
@@ -1,216 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.CharacterData;
-import org.w3c.dom.Node;
-
-public class AppInfoPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  public static String CONTENT = "Content";
-
-  /**
-   * 
-   */
-  public AppInfoPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public AppInfoPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public AppInfoPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    PropertyDescriptor sourceDescriptor =
-      new TextPropertyDescriptor(
-        XSDConstants.SOURCE_ATTRIBUTE,
-        XSDConstants.SOURCE_ATTRIBUTE);
-    list.add(sourceDescriptor);
-    AnyContentPropertyDescriptor contentDescriptor =
-      new AnyContentPropertyDescriptor(
-        CONTENT,
-        CONTENT,
-        element);
-    list.add(contentDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      if (((String) id).equals(CONTENT))
-      {
-        try
-        {
-          if (element.hasChildNodes())
-          {
-            // if the element is Text
-            Node node = element.getFirstChild();
-            if (node instanceof CharacterData)
-            {
-              return ((CharacterData)node).getData();
-            }
-          }
-          else
-          {
-            return "";
-          }
-        }
-        catch (Exception e)
-        {
-            
-        }
-
-      }
-      else
-      {
-        result = element.getAttribute((String) id);
-      }
-    }
-    if (result == null)
-    {
-      result = "";
-    }
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value != null)
-    {
-      if (value instanceof String)
-      {
-        if (((String)id).equals(XSDConstants.SOURCE_ATTRIBUTE))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_SOURCE_ATTRIBUTE_CHANGE"), element);
-          if (((String)value).length() > 0)
-          {
-            element.setAttribute(XSDConstants.SOURCE_ATTRIBUTE, (String)value);
-          }
-          else
-          {
-            element.removeAttribute(XSDConstants.SOURCE_ATTRIBUTE);
-          }
-          endRecording(element);
-        }
-        else if (((String)id).equals(CONTENT))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_COMMENT_CHANGE"), element);
-          try
-          {
-            if (element.hasChildNodes())
-            {
-              // if the element is Text
-              Node node = element.getFirstChild();
-              if (node instanceof CharacterData)
-              {
-                ((CharacterData)node).setData((String)value);
-              }
-            }
-            else
-            {
-              if (((String)value).length() > 0)
-              {
-                Node childNode = element.getOwnerDocument().createTextNode((String)value);
-                element.appendChild(childNode);
-              }
-            }
-            endRecording(element);
-          }
-          catch (Exception e)
-          {
-            
-          }
-        }
-        else  // shouldn't be here
-        {
-          element.setAttribute((String) id, (String) value);
-        }
-      }
-      else if (value instanceof Integer)
-      {
-      }
-    }
-    else
-    {
-      element.removeAttribute((String) id);
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributeGroupRefPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributeGroupRefPropertySource.java
deleted file mode 100644
index 74ca702..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributeGroupRefPropertySource.java
+++ /dev/null
@@ -1,172 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class AttributeGroupRefPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String[] refComboValues = { "" };
-  /**
-   * 
-   */
-  public AttributeGroupRefPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public AttributeGroupRefPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public AttributeGroupRefPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  
-  public void setInput(Element element)
-  {
-    this.element = element;
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    java.util.List items = helper.getGlobalAttributes();
-      
-    if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true))
-    {
-      items = helper.getGlobalAttributes();
-//      WorkbenchHelp.setHelp(client, XSDEditorContextIds.XSDE_ATTRIBUTE_REF_DESIGN_VIEW);
-//      WorkbenchHelp.setHelp(refCombo, XSDEditorContextIds.XSDE_ATTRIBUTE_REF_NAME);      
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, true))
-    {
-      items = helper.getGlobalAttributeGroups();
-//      WorkbenchHelp.setHelp(client, XSDEditorContextIds.XSDE_ATTRIBUTE_GROUP_REF_DESIGN_VIEW);
-//      WorkbenchHelp.setHelp(refCombo, XSDEditorContextIds.XSDE_ATTRIBUTE_GROUP_REF_NAME);
-    }
-    int size = items.size() + 1;
-    refComboValues = new String[size];
-    refComboValues[0] = "";
-    if (items != null)
-    {
-      for (int i = 0; i < items.size(); i++)
-      {
-        refComboValues[i + 1] = (String) items.get(i);
-      }
-    }
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    XSDComboBoxPropertyDescriptor refDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.REF_ATTRIBUTE,
-        XSDConstants.REF_ATTRIBUTE,
-        refComboValues);
-    list.add(refDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      if (result == null)
-      {
-        result = "";
-      }
-//      if (((String) id).equals(XSDConstants.REF_ATTRIBUTE))
-//      {
-//      }
-      return result;
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-     {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      if (((String) id).equals(XSDConstants.REF_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTEGROUP_REF_CHANGE"), element);
-        element.setAttribute(XSDConstants.REF_ATTRIBUTE, (String) value);
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributePropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributePropertySource.java
deleted file mode 100644
index f89b2f0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributePropertySource.java
+++ /dev/null
@@ -1,294 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalAttributeRenamer;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-public class AttributePropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String[] useComboValues =
-  {
-        "",
-        "prohibited",   // XSDEditorPlugin.getXSDString("_UI_COMBO_BOX_PROHIBITED"),
-        "optional",   // XSDEditorPlugin.getXSDString("_UI_COMBO_BOX_OPTIONAL"),
-        "required"  // XSDEditorPlugin.getXSDString("_UI_COMBO_BOX_REQUIRED")
-  };
-
-  protected String formComboValues[] =
-  {
-        "",
-        XSDEditorPlugin.getXSDString("_UI_COMBO_UNQUALIFIED"),
-        XSDEditorPlugin.getXSDString("_UI_COMBO_QUALIFIED")
-  };
-  
-  
-  /**
-   * 
-   */
-  public AttributePropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public AttributePropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public AttributePropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    PropertyDescriptor nameDescriptor = new TextPropertyDescriptor(XSDConstants.NAME_ATTRIBUTE, XSDConstants.NAME_ATTRIBUTE);
-    list.add(nameDescriptor);
-//    nameDescriptor.setCategory(XSDEditorPlugin.getXSDString("_UI_LABEL_GENERAL"));
-    TypesPropertyDescriptor typeDescriptor = new TypesPropertyDescriptor(
-      XSDConstants.TYPE_ATTRIBUTE,
-      XSDConstants.TYPE_ATTRIBUTE,
-      element, xsdSchema);
-    list.add(typeDescriptor);
-//    typeDescriptor.setCategory(XSDEditorPlugin.getXSDString("_UI_LABEL_GENERAL"));
-
-    Attr fixedAttr = element.getAttributeNode(XSDConstants.FIXED_ATTRIBUTE);
-    Attr defaultAttr = element.getAttributeNode(XSDConstants.DEFAULT_ATTRIBUTE);
-    String str;
-    if (fixedAttr != null)
-     {
-      str = XSDConstants.FIXED_ATTRIBUTE;
-    }
-    else if (defaultAttr != null)
-     {
-      str = XSDConstants.DEFAULT_ATTRIBUTE;
-    }
-    else
-     {
-      str = XSDConstants.FIXED_ATTRIBUTE + "/" + XSDConstants.DEFAULT_ATTRIBUTE;
-    }
-    
-    FixedOrDefaultTextPropertyDescriptor fixedOrDefaultDescriptor =
-    new FixedOrDefaultTextPropertyDescriptor(
-        str, 
-        str,
-        element);
-    list.add(fixedOrDefaultDescriptor);
-//    fixedOrDefaultDescriptor.setCategory(XSDEditorPlugin.getXSDString("_UI_LABEL_OTHER"));
-    
-    Object parentNode = element.getParentNode();
-    if (XSDDOMHelper.inputEquals(parentNode, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-    {
-    }
-    else
-    {
-      XSDComboBoxPropertyDescriptor useDescriptor =
-      new XSDComboBoxPropertyDescriptor(
-          XSDConstants.USE_ATTRIBUTE,
-          XSDConstants.USE_ATTRIBUTE,
-          useComboValues);
-      list.add(useDescriptor);
-//      useDescriptor.setCategory(XSDEditorPlugin.getXSDString("_UI_LABEL_OTHER"));
-      XSDComboBoxPropertyDescriptor formDescriptor =
-      new XSDComboBoxPropertyDescriptor(
-          XSDConstants.FORM_ATTRIBUTE,
-          XSDConstants.FORM_ATTRIBUTE,
-          formComboValues);
-      list.add(formDescriptor);
-//      formDescriptor.setCategory(XSDEditorPlugin.getXSDString("_UI_LABEL_OTHER"));
-    }
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      if (result == null)
-      {
-        result = "";
-      }
-      if (((String) id).equals(XSDConstants.TYPE_ATTRIBUTE))
-      {
-        if (result.equals(""))
-        {
-          if (checkForAnonymousType(element))
-          {
-            return "**anonymous**";
-          }
-          else
-          {
-            return XSDEditorPlugin.getXSDString("_UI_NO_TYPE"); 
-          }
-        }
-        else
-         {
-          return result;
-        }
-      }
-      return result;
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      if (((String) id).equals(XSDConstants.TYPE_ATTRIBUTE))
-      {
-//        beginRecording(XSDEditorPlugin.getXSDString("_UI_TYPE_CHANGE"), element);
-//        element.setAttribute(XSDConstants.TYPE_ATTRIBUTE, (String)value);
-//        updateElementToNotAnonymous(element);
-//        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.NAME_ATTRIBUTE))
-      { 
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTE_NAME_CHANGE"), element);
-        // now rename any references to this element
-        if (xsdSchema != null)
-         {
-          XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-          if (comp != null && comp instanceof XSDAttributeDeclaration && comp.getRootContainer().equals(xsdSchema))
-          {
-            XSDAttributeDeclaration xsdAttributeDeclaration = (XSDAttributeDeclaration)comp;
-            xsdAttributeDeclaration.setName((String)value);
-            GlobalAttributeRenamer renamer = new GlobalAttributeRenamer(xsdAttributeDeclaration, (String)value);
-            renamer.visitSchema(xsdSchema);
-          }
-        }
-        element.setAttribute(XSDConstants.NAME_ATTRIBUTE, (String)value);
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.FIXED_ATTRIBUTE) || ((String) id).equals(XSDConstants.DEFAULT_ATTRIBUTE))
-      {            
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTE_VALUE_CHANGE"), element);
-        if (((String)value).equals(""))
-         {
-          element.removeAttribute((String)id);
-        }
-        else
-        {  
-          element.setAttribute((String) id, (String) value);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.USE_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTE_USE_CHANGE"), element);
-        if (((String)value).equals(""))
-        {
-          element.removeAttribute(XSDConstants.USE_ATTRIBUTE);
-        }
-        else
-        {  
-          element.setAttribute((String) id, (String)value);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.FORM_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTE_FORM_CHANGE"), element);
-        if (((String)value).equals(""))
-        {
-          element.removeAttribute(XSDConstants.FORM_ATTRIBUTE);
-        }
-        else
-        {
-          element.setAttribute(XSDConstants.FORM_ATTRIBUTE, (String)value);
-        }
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-  
-  boolean checkForAnonymousType(Element element)
-  {
-    NodeList list = element.getElementsByTagNameNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-    if (list.getLength() > 0)
-     {
-      return true;
-    }
-    return false;
-  }  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributesTable.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributesTable.java
deleted file mode 100644
index f80e72e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/AttributesTable.java
+++ /dev/null
@@ -1,331 +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.xsd.ui.internal.properties;
-
-//import java.text.Collator;
-//import java.util.Comparator;
-//import java.util.List;
-//
-//import org.eclipse.jface.viewers.CellEditor;
-//import org.eclipse.jface.viewers.ColumnPixelData;
-//import org.eclipse.jface.viewers.ICellModifier;
-//import org.eclipse.jface.viewers.ILabelProvider;
-//import org.eclipse.jface.viewers.IStructuredContentProvider;
-//import org.eclipse.jface.viewers.ITableLabelProvider;
-//import org.eclipse.jface.viewers.LabelProvider;
-//import org.eclipse.jface.viewers.TableLayout;
-//import org.eclipse.jface.viewers.TableViewer;
-//import org.eclipse.jface.viewers.TextCellEditor;
-//import org.eclipse.jface.viewers.Viewer;
-//import org.eclipse.swt.SWT;
-//import org.eclipse.swt.events.MouseAdapter;
-//import org.eclipse.swt.events.MouseEvent;
-//import org.eclipse.swt.graphics.Image;
-//import org.eclipse.swt.widgets.Composite;
-//import org.eclipse.swt.widgets.Control;
-//import org.eclipse.swt.widgets.Table;
-//import org.eclipse.swt.widgets.TableColumn;
-//import org.eclipse.swt.widgets.TableItem;
-//import org.eclipse.ui.IEditorPart;
-//import org.eclipse.ui.views.properties.ComboBoxPropertyDescriptor;
-//import org.eclipse.ui.views.properties.IPropertyDescriptor;
-//import org.eclipse.ui.views.properties.IPropertySource;
-//import org.w3c.dom.Element;
-
-public class AttributesTable // extends TableViewer implements ICellModifier
-{
-//	protected static final String PROPERTY = "property"; //$NON-NLS-1$
-//	protected static final String VALUE = "value"; //$NON-NLS-1$
-//
-//	protected IEditorPart editorPart;
-//	protected String[] columnProperties = {PROPERTY, VALUE};
-//	protected PropertyTableProvider tableProvider = new PropertyTableProvider(this);
-//	protected CellEditor cellEditor;
-//	//protected StringComboBoxCellEditor comboCellEditor;
-//	protected IPropertySource propertySource;
-//
-//	public AttributesTable(IEditorPart editorPart, Composite parent)
-//	{
-//		super(new Table(parent, SWT.FULL_SELECTION | SWT.MULTI | SWT.FLAT | SWT.H_SCROLL | SWT.V_SCROLL));   
-//				 this.editorPart = editorPart;               
-//		getTable().setLinesVisible(true);
-//		getTable().setHeaderVisible(true);  
-//    
-//		setContentProvider(tableProvider);
-//		setLabelProvider(tableProvider);
-//		setColumnProperties(columnProperties);
-//
-//		for (int i = 0; i < columnProperties.length; i++)
-//		{
-//			TableColumn column = new TableColumn(getTable(), SWT.NONE, i);
-//			column.setText(columnProperties[i]);
-//			column.setAlignment(SWT.LEFT);
-//		}      
-//
-////		TableLayout layout = new TableLayout(); 
-////		ColumnWeightData data = new ColumnWeightData(40, 40, true);
-////		layout.addColumnData(data);
-////    
-////		ColumnWeightData data2 = new ColumnWeightData(80, 80, true);
-////		layout.addColumnData(data2);                       
-//
-//		TableLayout layout = new TableLayout();
-//		layout.addColumnData(new ColumnPixelData(130,true));
-//		layout.addColumnData(new ColumnPixelData(130,true));
-//		getTable().setLayout(layout);
-//		
-//         
-//		cellEditor = new TextCellEditor(getTable());                            
-//		resetCellEditors();           
-//
-//		setCellModifier(this);    
-//	}  
-//
-//	public void setPropertySource(IPropertySource propertySource)
-//	{
-//		this.propertySource = propertySource;
-//	}
-//
-//  /* (non-Javadoc)
-//   * @see org.eclipse.jface.viewers.ICellModifier#canModify(java.lang.Object, java.lang.String)
-//   */
-//  public boolean canModify(Object element, String property)
-//  {
-//		return property.equals(VALUE);
-//  }
-//  
-//  /* (non-Javadoc)
-//   * @see org.eclipse.jface.viewers.ICellModifier#getValue(java.lang.Object, java.lang.String)
-//   */
-//  public Object getValue(Object element, String property)
-//  {
-//		int column = 0;
-//		if (property.equals(columnProperties[0]))
-//		{
-//			column = 0;
-//		}
-//		else if (property.equals(columnProperties[1]))
-//		{
-//			column = 1;
-//		}    
-//		return tableProvider.getColumnValue(element, column);
-// }
-//
-//  /* (non-Javadoc)
-//   * @see org.eclipse.jface.viewers.ICellModifier#modify(java.lang.Object, java.lang.String, java.lang.Object)
-//   */
-//  public void modify(Object element, String property, Object value)
-//  {
-//		TableItem item = (TableItem)element;
-//  	IPropertyDescriptor propertyDescriptor = (IPropertyDescriptor)item.getData();
-//              
-//	// if the new value is the same as the old value, the user has only clicked
-//	// on the cell in the course of 'browsing' ... so don't edit the value
-//	  Object oldValue = getValue(propertyDescriptor, property);       
-//	  if (value != null && !value.equals(oldValue)) 
-//	  {      
-//				 // we assume the value is empty that the attribute should be removed
-//				 // todo... we probably need to look at this in more detail
-//				 if (value instanceof String && ((String)value).length() == 0)
-//				 {
-//								value = null;
-//				 }
-//				 propertySource.setPropertyValue(propertyDescriptor.getId(), value);    
-//	  }                       
-//  }
-//
-//      
-//	protected void hookControl(Control control) {
-//	  // we need to hook up our own mouse listener first
-//				 // so that we can update the cellEditors before
-//				 // the 'internal' listener tries to get hold of them
-//			 Table tableControl = (Table)control;
-//				 tableControl.addMouseListener(new MouseAdapter() {
-//								public void mouseDown(MouseEvent e) {
-//								  System.out.println("Mouse down");
-//										   updateCellEditors();
-//								}
-//				 });
-//		  super.hookControl(control);
-//	}                                
-//
-//	protected void updateCellEditors()
-//	{
-//		CellEditor[] cellEditors = new CellEditor[2];
-//		cellEditors[0] = cellEditor;
-//		cellEditors[1] = cellEditor;
-//
-//		Element element = (Element)getInput();
-//              
-//		IPropertyDescriptor[] propertyDescriptors = propertySource.getPropertyDescriptors();
-//		int index = getTable().getSelectionIndex();
-//		if (index >= 0 && index < propertyDescriptors.length)
-//		{
-//			CellEditor[] oldCellEditors = getCellEditors();
-//			CellEditor oldCellEditor = (oldCellEditors.length > 1) ? oldCellEditors[1] : null;
-//			if (oldCellEditor != null && oldCellEditor != cellEditor)
-//			{
-//			 oldCellEditor.deactivate();
-//			 oldCellEditor.dispose();
-//			}
-//			cellEditors[1] = propertyDescriptors[index].createPropertyEditor(getTable());     
-//		}  
-//		setCellEditors(cellEditors);     
-//
-////		IPropertyDescriptor[] propertyDescriptors = propertySource.getPropertyDescriptors();
-////
-//// 		int index = getTable().getSelectionIndex();
-//// 		//cellEditor.dispose();
-////
-////		if (index >= 0 && index < propertyDescriptors.length)
-////		{
-////      cellEditor = propertyDescriptors[index].createPropertyEditor(getTable());
-////			Control control = cellEditor.getControl();
-////			if (control == null) {
-////				cellEditor.deactivate();
-////				cellEditor = null;
-////				return;
-////			}
-////			setCellEditors(new CellEditor[] {null, cellEditor});
-////			cellEditor.activate();
-////			cellEditor.setFocus();
-////		}
-//	}
-//                 
-//
-//	public String[] getStringArray(List list)
-//	{
-//		String[] result = new String[list.size()];
-//		for (int i = 0; i < result.length; i++)
-//		{
-//			result[i] = (String)list.get(i);
-//		}
-//		return result;
-//	}
-//                                   
-//	protected void resetCellEditors()
-//	{
-//			 CellEditor[] cellEditors = new CellEditor[2];
-//			 cellEditors[0] = null;
-//			 cellEditors[1] = cellEditor;
-//			 setCellEditors(cellEditors);  
-//	}
-//
-//
-//	class PropertyTableProvider extends LabelProvider implements ITableLabelProvider, IStructuredContentProvider
-//	{                  
-//		protected TableViewer viewer;
-//
-//		PropertyTableProvider(TableViewer viewer)
-//		{
-//			this.viewer = viewer;
-//		}
-//		
-//		public void inputChanged(Viewer viewer, Object oldInput, Object newInput)  
-//		{
-////		 resetCellEditors();                         
-////			if (newInput instanceof XMLElement)
-////			{      
-////					 propertySource = new ExtensiblePropertySource(editorPart, (XMLElement)newInput);
-////			} 
-////			if (newInput instanceof Element)
-////			{
-////				if (XSDDOMHelper.inputEquals(newInput, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-////				{  
-////				  propertySource = new ElementPropertySource((Element)newInput, viewer);
-////				}
-////				else
-////				{  
-////  				 propertySource = new ReadOnlyPropertySource(editorPart, (Element)newInput);
-////				}
-////			}
-////			else
-////			{
-////						 propertySource = null;
-////			}          
-//		}
-//
-//		public Image getColumnImage(Object element, int columnIndex)
-//		{  
-//			return null;
-//		}      
-//
-//		public Object getColumnValue(Object o, int columnIndex)  
-//		{ 
-//			IPropertyDescriptor propertyDescriptor = (IPropertyDescriptor)o;
-//			if (columnIndex == 0)
-//			{
-//			  return propertyDescriptor.getId();
-//			}
-//			else
-//			{  
-//			  return propertySource.getPropertyValue(propertyDescriptor.getId());
-//			}
-//		}
-//		  
-//		public String getColumnText(Object o, int columnIndex)  
-//		{ 
-//			IPropertyDescriptor propertyDescriptor = (IPropertyDescriptor)o;
-//			// (columnIndex == 1 && propertyDescriptor instanceof XSDComboBoxPropertyDescriptor)
-//			if ((columnIndex == 1 && propertyDescriptor instanceof OptionsComboBoxPropertyDescriptor) ||
-//			   (columnIndex == 1 && propertyDescriptor instanceof ComboBoxPropertyDescriptor))
-//			{
-//			  ILabelProvider lp = propertyDescriptor.getLabelProvider();
-//			  if (lp != null)
-//		  	{
-//			    return lp.getText(propertyDescriptor.getId());
-//		  	}
-//			}
-//			
-//			Object id = propertyDescriptor.getId();
-//      String attribute = "";
-//		  if (id != null && attribute instanceof String)
-//      {
-//        attribute = (String)id;
-//      }
-//      Object value = propertySource.getPropertyValue(attribute);
-//      String attributeValue = "";
-//      if (value != null)
-//      {
-//        attributeValue = (String)value;
-//      }
-//
-//      return (columnIndex == 0) ? attribute : attributeValue;
-//			
-////			  return (columnIndex == 0) ? propertyDescriptor.getId().toString() : propertySource.getPropertyValue(propertyDescriptor.getId()).toString();
-//		}  
-//
-//		public Object[] getElements(Object o)
-//		{         
-//						Object[] result = propertySource.getPropertyDescriptors();
-//						// For some strange reson the ViewerSorter doesn't seem to be working for this table
-//						// As a workaround we sort them in this method before returning them to the viewer
-////						if (result.length > 0)
-////						{
-////									 Arrays.sort(result, new InternalComparator());
-////						}
-//						return result;
-//		}
-//	}
-//
-//	class InternalComparator implements Comparator
-//	{
-//			 public int compare(Object e1, Object e2) 
-//			 {
-//							IPropertyDescriptor p1 = (IPropertyDescriptor)e1;
-//							IPropertyDescriptor p2 = (IPropertyDescriptor)e2;
-//							String p1Name = p1.getDisplayName();
-//							String p2Name = p2.getDisplayName();
-//							return Collator.getInstance().compare(p1.getDisplayName(), p2.getDisplayName());
-//			 }         
-//	}
-//
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/BasePropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/BasePropertySource.java
deleted file mode 100644
index 9d92d18..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/BasePropertySource.java
+++ /dev/null
@@ -1,126 +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.xsd.ui.internal.properties;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.xml.core.NameValidator;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public abstract class BasePropertySource implements IPropertySource
-{
-	protected Element element;
-	protected Viewer viewer;
-	protected IPropertyDescriptor[] propertyDescriptors;
-	protected XSDSchema xsdSchema;
-	protected String [] trueFalseComboValues = {
-		"",
-		"false",
-		"true"
-	};
-
-  public BasePropertySource()
-  {
-    
-  }
-
-  public DocumentImpl getDocument(Element element)
-  {
-    return (DocumentImpl) element.getOwnerDocument();
-  }
-  
-  public void beginRecording(String description, Element element)
-  {
-    getDocument(element).getModel().beginRecording(this, description);
-  }
-  
-  public void endRecording(Element element)
-  {
-    DocumentImpl doc = (DocumentImpl) getDocument(element);
-    
-    doc.getModel().endRecording(this);    
-  }
-  
-  
-  public BasePropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    this.viewer = viewer;
-    this.xsdSchema = xsdSchema;
-  }
-  
-  public BasePropertySource(XSDSchema xsdSchema)
-  {
-    this.xsdSchema = xsdSchema;
-  }
-  
-  public void setViewer(Viewer viewer)
-  {
-    this.viewer = viewer;
-  }
-
-  public void setInput(Element element)
-  {
-    this.element = element;
-  }
-
-  protected XSDDOMHelper domHelper = new XSDDOMHelper();
-  /**
-   * Gets the domHelper.
-   * @return Returns a XSDDomHelper
-   */
-  public XSDDOMHelper getDomHelper()
-  {
-    return domHelper;
-  }
-  
-	protected boolean hasElementChildren(Node parentNode)
-	{
-		boolean hasChildrenElements = false;
-		if (parentNode != null && parentNode.hasChildNodes())
-		{
-			NodeList nodes = parentNode.getChildNodes();
-			for (int i = 0; i < nodes.getLength(); i++)
-			{
-				if (nodes.item(i) instanceof Element)
-				{
-					hasChildrenElements = true;
-					break;
-				}
-			}
-		}
-		return hasChildrenElements;
-	}
-  
-  protected boolean validateName(String name)
-  {
-    return NameValidator.isValid(name);
-  }
-
-  // TODO
-  protected boolean validateLanguage(String lang)
-  {
-    return true;
-  }
-  
-  // TODO  
-  protected boolean validatePrefix(String prefix)
-  {
-    return true;
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ComplexTypePropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ComplexTypePropertySource.java
deleted file mode 100644
index 7cb09e9..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ComplexTypePropertySource.java
+++ /dev/null
@@ -1,380 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.SetBaseTypeAction;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalSimpleOrComplexTypeRenamer;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class ComplexTypePropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String DERIVED_BY_ID = "derived by"; // XSDEditorPlugin.getXSDString("_UI_LABEL_DERIVED_BY"); 
-  private String BASE_TYPE_ID = "base type"; //  XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE");
-  
-  private String[] blockOrFinalComboValues = 
-  {
-    "",
-    "#all",
-    "extension",
-    "restriction"
-  };
-  
-  private String derivedByChoicesComboValues[] =
-  {
-        "",
-        XSDConstants.RESTRICTION_ELEMENT_TAG,
-        XSDConstants.EXTENSION_ELEMENT_TAG
-  };
-  
-  /**
-   * 
-   */
-  public ComplexTypePropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public ComplexTypePropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public ComplexTypePropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    boolean isAnonymousType = checkForAnonymousType(element);
-// The three properties name, base type and derived by have been moved to the general tab
-//    if (isAnonymousType)
-//    {
-//      PropertyDescriptor nameDescriptor =
-//      new PropertyDescriptor(
-//          XSDConstants.NAME_ATTRIBUTE,
-//          XSDConstants.NAME_ATTRIBUTE);
-//      list.add(nameDescriptor);
-//    }
-//    else
-//    {
-//      PropertyDescriptor nameDescriptor =
-//      new TextPropertyDescriptor(
-//          XSDConstants.NAME_ATTRIBUTE,
-//          XSDConstants.NAME_ATTRIBUTE);
-//      list.add(nameDescriptor);
-//    }
-
-    Element contentModelElement = getDomHelper().getContentModelFromParent(element);
-//    SimpleContentPropertyDescriptor typeDescriptor = new SimpleContentPropertyDescriptor(
-//        BASE_TYPE_ID,
-//        BASE_TYPE_ID,
-//        contentModelElement, xsdSchema);
-//    list.add(typeDescriptor);
-//    XSDComboBoxPropertyDescriptor derivedByDescriptor =
-//    new XSDComboBoxPropertyDescriptor(
-//        DERIVED_BY_ID,
-//        DERIVED_BY_ID,
-//        derivedByChoicesComboValues);
-//    list.add(derivedByDescriptor);
-    
-    XSDComboBoxPropertyDescriptor abstractDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.ABSTRACT_ATTRIBUTE,
-        XSDConstants.ABSTRACT_ATTRIBUTE,
-        trueFalseComboValues);
-    list.add(abstractDescriptor);
-
-    XSDComboBoxPropertyDescriptor mixedDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.MIXED_ATTRIBUTE,
-        XSDConstants.MIXED_ATTRIBUTE,
-        trueFalseComboValues);
-    list.add(mixedDescriptor);
-        
-    XSDComboBoxPropertyDescriptor blockDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.BLOCK_ATTRIBUTE,
-        XSDConstants.BLOCK_ATTRIBUTE,
-        blockOrFinalComboValues);
-    list.add(blockDescriptor);
-    XSDComboBoxPropertyDescriptor finalDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.FINAL_ATTRIBUTE,
-        XSDConstants.FINAL_ATTRIBUTE,
-        blockOrFinalComboValues);
-    list.add(finalDescriptor);
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-
-  public void setInput(Element element)
-  {
-    this.element = element;
-    
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      String attributeName = (String)id;
-      result = element.getAttribute((String) id);
-      Element contentModelElement = getDomHelper().getContentModelFromParent(element);    
-      String baseType = getDomHelper().getBaseType(contentModelElement);
-      
-      if (result == null)
-      {
-        result = "";
-      }
-      
-      if (attributeName.equals(DERIVED_BY_ID))
-      {
-        return getDomHelper().getDerivedByName(contentModelElement);
-      }
-      else if (attributeName.equals(BASE_TYPE_ID))
-      {
-        if (baseType != null)
-        {
-          return baseType;
-        }
-        else
-        {
-          return "";
-        }
-      }
-      else if (attributeName.equals(XSDConstants.NAME_ATTRIBUTE))
-      {
-        String name = element.getAttribute(XSDConstants.NAME_ATTRIBUTE);
-        
-        boolean isAnonymousType = checkForAnonymousType(element);
-        if (isAnonymousType)
-        {
-          return "**anonymous**";
-        }
-        else
-        {
-          return name;
-        }
-      }
-        
-      return result;
-//      if (((String) id).equals(XSDConstants.ABSTRACT_ATTRIBUTE)
-//          || ((String) id).equals(XSDConstants.MIXED_ATTRIBUTE))
-//      {
-//      }
-//      else if (((String) id).equals(XSDConstants.BLOCK_ATTRIBUTE))
-//       {
-//      }
-//      else if (((String) id).equals(XSDConstants.FINAL_ATTRIBUTE))
-//      {
-//      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      String attributeName = (String)id;
-      
-      if (attributeName.equals(XSDConstants.NAME_ATTRIBUTE))
-      {
-        if (validateName(newValue))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_COMPLEXTYPE_NAME_CHANGE"), element);
-          if (newValue.length() > 0)
-          {
-            // now rename any references to this type
-            if (xsdSchema != null)
-            {
-              XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-              if (comp != null && comp instanceof XSDComplexTypeDefinition && comp.getContainer().equals(xsdSchema))
-              {
-//                XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)comp;
-//                ct.setName(newValue);
-                GlobalSimpleOrComplexTypeRenamer renamer = new GlobalSimpleOrComplexTypeRenamer((XSDNamedComponent)comp, newValue);
-                renamer.visitSchema(xsdSchema);
-              }
-            }
-            element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-          }
-          else
-          {
-            element.removeAttribute(XSDConstants.NAME_ATTRIBUTE);
-          }
-          endRecording(element);
-        }
-      }
-      else if (attributeName.equals(DERIVED_BY_ID))
-      {
-        Element contentModelElement = getDomHelper().getContentModelFromParent(element);
-        String baseType = getDomHelper().getBaseType(contentModelElement);
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_DERIVEDBY_CHANGE"), element);
-        Element derivedByElem = getDomHelper().getDerivedByElement(element);
-        getDomHelper().changeDerivedByType(contentModelElement, newValue, baseType);
-        endRecording(element);
-      }
-      else if (attributeName.equals(BASE_TYPE_ID))
-      {
-        String derivedBy = getDomHelper().getDerivedByName(element);
-        
-        SetBaseTypeAction setBaseTypeAction = new SetBaseTypeAction(XSDEditorPlugin.getXSDString("_UI_LABEL_SET_BASE_TYPE"));
-        setBaseTypeAction.setXSDSchema(xsdSchema);
-        setBaseTypeAction.setComplexTypeElement(element);
-        setBaseTypeAction.setType(newValue);
-        setBaseTypeAction.setDerivedBy(derivedBy);
-        setBaseTypeAction.performAction();
-
-//        handleBaseTypeComboChange(newValue);
-        
-      }
-      else
-      {
-        if (attributeName.equals(XSDConstants.ABSTRACT_ATTRIBUTE))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_COMPLEXTYPE_ABSTRACT_CHANGE"), element);
-        }
-        else if (attributeName.equals(XSDConstants.MIXED_ATTRIBUTE))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_COMPLEXTYPE_MIXED_CHANGE"), element);
-        }
-        else if (attributeName.equals(XSDConstants.BLOCK_ATTRIBUTE))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_COMPLEXTYPE_BLOCK_CHANGE"), element);
-        }
-        else if (attributeName.equals(XSDConstants.FINAL_ATTRIBUTE))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_COMPLEXTYPE_FINAL_CHANGE"), element);
-        }
-        
-        if (newValue.length() > 0)
-        {
-          element.setAttribute((String) id,  (String)value);
-        }
-        else
-        {
-          element.removeAttribute((String) id);
-        }
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-
-  boolean checkForAnonymousType(Element element)
-  {
-    Object parentElement = (Object)element.getParentNode();
-    boolean isAnonymous = false;
-    if (parentElement != null)
-    {
-      if (XSDDOMHelper.inputEquals(parentElement, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-      {
-        isAnonymous = true; 
-      }
-    }
-    return isAnonymous;
-  }
-  
-  
-//  private void handleBaseTypeComboChange(String newType)
-//  {
-//    String tempChoice = newType;
-//    TypesHelper helper = new TypesHelper(xsdSchema);
-//    if (helper.getBuiltInTypeNamesList().contains(tempChoice) ||
-//        helper.getUserSimpleTypeNamesList().contains(tempChoice))
-//    {
-//      derivedByCombo.setText(XSDConstants.EXTENSION_ELEMENT_TAG);
-//      derivedByCombo.setEnabled(false);
-//    }
-//    else if (helper.getUserComplexTypeNamesList().contains(tempChoice))
-//     {
-//      Element contentModelElement = getDomHelper().getContentModelFromParent(element);    
-//      String derivedByString = getDomHelper().getDerivedByName(contentModelElement);
-//      derivedByCombo.setText(derivedByString);
-//      derivedByCombo.setEnabled(true); 
-//    }
-//    else
-//     {
-//      derivedByCombo.setText("");
-//      derivedByCombo.setEnabled(false); 
-//    }
-//  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/DocumentationPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/DocumentationPropertySource.java
deleted file mode 100644
index 06e9ef7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/DocumentationPropertySource.java
+++ /dev/null
@@ -1,243 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.CharacterData;
-import org.w3c.dom.Node;
-
-
-public class DocumentationPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  public static String CONTENT = "Content";
-  
-  /**
-   * 
-   */
-  public DocumentationPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public DocumentationPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-
-  }
-  /**
-   * @param xsdSchema
-   */
-  public DocumentationPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    PropertyDescriptor languageDescriptor =
-    new TextPropertyDescriptor(
-        "xml:lang",
-        "xml:lang"
-        );
-    list.add(languageDescriptor);
-    PropertyDescriptor sourceDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.SOURCE_ATTRIBUTE,
-        XSDConstants.SOURCE_ATTRIBUTE);
-    list.add(sourceDescriptor);
-    AnyContentPropertyDescriptor contentDescriptor =
-    new AnyContentPropertyDescriptor(
-        CONTENT,
-        CONTENT,
-        element);
-    list.add(contentDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-     {
-      if (((String) id).equals(CONTENT))
-       {
-        try
-        {
-          if (element.hasChildNodes())
-           {
-            // if the element is Text
-            Node node = element.getFirstChild();
-            if (node instanceof CharacterData)
-             {
-              return ((CharacterData)node).getData();
-            }
-          }
-          else
-           {
-            return "";
-          }
-        }
-        catch (Exception e)
-        {
-          
-        }
-
-      }
-      else
-       {
-        result = element.getAttribute((String) id);
-      }
-    }
-    if (result == null)
-     {
-      result = "";
-    }
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value != null)
-    {
-      if (value instanceof String)
-      {
-        String newValue = (String)value;
-        if (((String)id).equals("xml:lang"))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_DOCUMENTATION_LANG_CHANGE"), element);
-          if (newValue.length() > 0)
-          {
-            if (validateLanguage(newValue))
-            {
-              element.setAttribute("xml:lang", newValue);
-            }
-          }
-          else
-          {
-            // clearErrorMessage();
-            element.removeAttribute("xml:lang");
-          }
-          endRecording(element);
-        }
-        else if (((String)id).equals(XSDConstants.SOURCE_ATTRIBUTE))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_DOCUMENTATION_SOURCE_CHANGE"), element);
-          if (newValue.length() > 0)
-          {
-            element.setAttribute(XSDConstants.SOURCE_ATTRIBUTE, newValue);
-          }
-          else
-          {
-            element.removeAttribute(XSDConstants.SOURCE_ATTRIBUTE);
-          }
-          endRecording(element);
-        }
-        else if (((String)id).equals(CONTENT))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_DOCUMENTATION_COMMENT_CHANGE"), element);
-          try
-          {
-            if (element.hasChildNodes())
-            {
-              // if the element is Text
-              Node node = element.getFirstChild();
-              if (node instanceof CharacterData)
-              {
-                ((CharacterData)node).setData(newValue);
-              }
-            }
-            else
-            {
-              if (newValue.length() > 0)
-              {
-                Node childNode = element.getOwnerDocument().createTextNode(newValue);
-                element.appendChild(childNode);
-              }
-            }
-            endRecording(element);
-          }
-          catch (Exception e)
-          {
-            
-          }
-        }
-        else  // shouldn't be here
-        {
-          element.setAttribute((String) id, newValue);
-        }
-      }
-      else if (value instanceof Integer)
-      {
-      }
-    }
-    else
-    {
-      element.removeAttribute((String) id);
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
- 
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/DynamicCellEditor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/DynamicCellEditor.java
deleted file mode 100644
index b09526a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/DynamicCellEditor.java
+++ /dev/null
@@ -1,1174 +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.xsd.ui.internal.properties;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.accessibility.ACC;
-import org.eclipse.swt.accessibility.AccessibleAdapter;
-import org.eclipse.swt.accessibility.AccessibleControlAdapter;
-import org.eclipse.swt.accessibility.AccessibleControlEvent;
-import org.eclipse.swt.accessibility.AccessibleEvent;
-import org.eclipse.swt.accessibility.AccessibleTextAdapter;
-import org.eclipse.swt.accessibility.AccessibleTextEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.List;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.TypedListener;
-
-public class DynamicCellEditor extends Composite
-{
-	Text text;
-	List list;
-	int maxItemCount = 5;
-	Shell popup;
-	Button arrow;
-	boolean hasFocus;
-	
-  public DynamicCellEditor(Composite parent, int style) {
-	super (parent, checkStyle (style));
-	
-	style = getStyle();
-	
-	int textStyle = SWT.SINGLE;
-	if ((style & SWT.READ_ONLY) != 0) textStyle |= SWT.READ_ONLY;
-	if ((style & SWT.FLAT) != 0) textStyle |= SWT.FLAT;
-	text = new Text (this, textStyle);
-	
-	popup = new Shell (getShell (), SWT.NO_TRIM);
-	
-	int listStyle = SWT.SINGLE | SWT.V_SCROLL;
-	if ((style & SWT.FLAT) != 0) listStyle |= SWT.FLAT;
-	if ((style & SWT.RIGHT_TO_LEFT) != 0) listStyle |= SWT.RIGHT_TO_LEFT;
-	if ((style & SWT.LEFT_TO_RIGHT) != 0) listStyle |= SWT.LEFT_TO_RIGHT;
-	list = new List (popup, listStyle);
-	
-	int arrowStyle = SWT.ARROW | SWT.DOWN;
-	if ((style & SWT.FLAT) != 0) arrowStyle |= SWT.FLAT;
-	arrow = new Button (this, arrowStyle);
-
-	Listener listener = new Listener () {
-		public void handleEvent (Event event) {
-			if (popup == event.widget) {
-				popupEvent (event);
-				return;
-			}
-			if (text == event.widget) {
-				textEvent (event);
-				return;
-			}
-			if (list == event.widget) {
-				listEvent (event);
-				return;
-			}
-			if (arrow == event.widget) {
-				arrowEvent (event);
-				return;
-			}
-			if (DynamicCellEditor.this == event.widget) {
-				comboEvent (event);
-				return;
-			}
-
-		}
-	};
-	
-	int [] comboEvents = {SWT.Dispose, SWT.Move, SWT.Resize};
-	for (int i=0; i<comboEvents.length; i++) this.addListener (comboEvents [i], listener);
-	
-	int [] popupEvents = {SWT.Close, SWT.Paint, SWT.Deactivate};
-	for (int i=0; i<popupEvents.length; i++) popup.addListener (popupEvents [i], listener);
-	
-	int [] textEvents = {SWT.KeyDown, SWT.KeyUp, SWT.Modify, SWT.MouseDown, SWT.MouseUp, SWT.Traverse, SWT.FocusIn, SWT.FocusOut};
-	for (int i=0; i<textEvents.length; i++) text.addListener (textEvents [i], listener);
-	
-	int [] listEvents = {SWT.MouseUp, SWT.Selection, SWT.Traverse, SWT.KeyDown, SWT.KeyUp, SWT.FocusIn, SWT.FocusOut};
-	for (int i=0; i<listEvents.length; i++) list.addListener (listEvents [i], listener);
-	
-	int [] arrowEvents = {SWT.Selection, SWT.FocusIn, SWT.FocusOut};
-	for (int i=0; i<arrowEvents.length; i++) arrow.addListener (arrowEvents [i], listener);
-	
-	initAccessible();
-}
-static int checkStyle (int style) {
-	int mask = SWT.BORDER | SWT.READ_ONLY | SWT.FLAT | SWT.LEFT_TO_RIGHT | SWT.RIGHT_TO_LEFT;
-	return style & mask;
-}
-/**
-* Adds an item.
-* <p>
-* The item is placed at the end of the list.
-* Indexing is zero based.
-*
-* @param string the new item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when the string is null
-* @exception org.eclipse.swt.SWTError(ERROR_ITEM_NOT_ADDED)
-*	when the item cannot be added
-*/
-public void add (String string) {
-	checkWidget();
-	if (string == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	list.add (string);
-}
-/**
-* Adds an item at an index.
-* <p>
-* The item is placed at an index in the list.
-* Indexing is zero based.
-*
-* This operation will fail when the index is
-* out of range.
-*
-* @param string the new item
-* @param index the index for the item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when the string is null
-* @exception org.eclipse.swt.SWTError(ERROR_ITEM_NOT_ADDED)
-*	when the item cannot be added
-*/
-public void add (String string, int index) {
-	checkWidget();
-	if (string == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	list.add (string, index);
-}
-/**	 
-* Adds the listener to receive events.
-* <p>
-*
-* @param listener the listener
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when listener is null
-*/
-public void addModifyListener (ModifyListener listener) {;
-	checkWidget();
-	if (listener == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	TypedListener typedListener = new TypedListener (listener);
-	addListener (SWT.Modify, typedListener);
-}
-/**	 
-* Adds the listener to receive events.
-* <p>
-*
-* @param listener the listener
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when listener is null
-*/
-public void addSelectionListener(SelectionListener listener) {
-	checkWidget();
-	if (listener == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	TypedListener typedListener = new TypedListener (listener);
-	addListener (SWT.Selection,typedListener);
-	addListener (SWT.DefaultSelection,typedListener);
-}
-void arrowEvent (Event event) {
-	switch (event.type) {
-		case SWT.FocusIn: {
-			if (hasFocus) return;
-			hasFocus = true;
-			if (getEditable ()) text.selectAll ();
-			Event e = new Event();
-			e.time = event.time;
-			notifyListeners(SWT.FocusIn, e);
-			break;
-		}
-		case SWT.FocusOut: {
-			event.display.asyncExec(new Runnable() {
-				public void run() {
-					if (DynamicCellEditor.this.isDisposed()) return;
-					Control focusControl = getDisplay().getFocusControl();
-					if (focusControl == list || focusControl == text) return;
-					hasFocus = false;
-					Event e = new Event();
-					notifyListeners(SWT.FocusOut, e);
-				}
-			});
-			break;
-		}
-		case SWT.Selection: {
-			dropDown (!isDropped ());
-			break;
-		}
-	}
-}
-/**
-* Clears the current selection.
-* <p>
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public void clearSelection () {
-	checkWidget();
-	text.clearSelection ();
-	list.deselectAll ();
-}
-void comboEvent (Event event) {
-	switch (event.type) {
-		case SWT.Dispose:
-			if (popup != null && !popup.isDisposed ()) popup.dispose ();
-			popup = null;  
-			text = null;  
-			list = null;  
-			arrow = null;
-			break;
-		case SWT.Move:
-			dropDown(false);
-			break;
-		case SWT.Resize:
-			internalLayout();
-			break;
-	}
-}
-
-public Point computeSize (int wHint, int hHint, boolean changed) {
-	checkWidget();
-	int width = 0, height = 0;
-	Point textSize = text.computeSize (wHint, SWT.DEFAULT, changed);
-	Point arrowSize = arrow.computeSize(SWT.DEFAULT, SWT.DEFAULT, changed);
-	Point listSize = list.computeSize (wHint, SWT.DEFAULT, changed);
-	int borderWidth = getBorderWidth();
-	
-	height = Math.max (hHint, Math.max(textSize.y, arrowSize.y)  + 2*borderWidth);
-	width = Math.max (wHint, Math.max(textSize.x + arrowSize.x + 2*borderWidth, listSize.x + 2)  );
-	return new Point (width, height);
-}
-/**
-* Deselects an item.
-* <p>
-* If the item at an index is selected, it is
-* deselected.  If the item at an index is not
-* selected, it remains deselected.  Indices
-* that are out of range are ignored.  Indexing
-* is zero based.
-*
-* @param index the index of the item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public void deselect (int index) {
-	checkWidget();
-	list.deselect (index);
-}
-/**
-* Deselects all items.
-* <p>
-*
-* If an item is selected, it is deselected.
-* If an item is not selected, it remains unselected.
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public void deselectAll () {
-	checkWidget();
-	list.deselectAll ();
-}
-void dropDown (boolean drop) {
-	if (drop == isDropped ()) return;
-	if (!drop) {
-		popup.setVisible (false);
-		text.setFocus();
-		return;
-	}
-
-	int index = list.getSelectionIndex ();
-	if (index != -1) list.setTopIndex (index);
-	Display display = getDisplay ();
-	Rectangle listRect = list.getBounds ();
-	Rectangle parentRect = display.map (getParent (), null, getBounds());
-	Point comboSize = getSize ();
-	Rectangle displayRect = getMonitor().getClientArea();
-	int width = Math.max (comboSize.x, listRect.width + 2);
-	int height = listRect.height + 2;
-	int x = parentRect.x;
-	int y = parentRect.y + comboSize.y;
-	if (y + height > displayRect.y + displayRect.height) y = parentRect.y - height;
-	popup.setBounds (x, y, width, height);
-	popup.setVisible (true);
-	list.setFocus();
-}
-public Control [] getChildren () {
-	checkWidget();
-	return new Control [0];
-}
-boolean getEditable () {
-	return text.getEditable ();
-}
-/**
-* Gets an item at an index.
-* <p>
-* Indexing is zero based.
-*
-* This operation will fail when the index is out
-* of range or an item could not be queried from
-* the OS.
-*
-* @param index the index of the item
-* @return the item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_CANNOT_GET_ITEM)
-*	when the operation fails
-*/
-public String getItem (int index) {
-	checkWidget();
-	return list.getItem (index);
-}
-/**
-* Gets the number of items.
-* <p>
-* This operation will fail if the number of
-* items could not be queried from the OS.
-*
-* @return the number of items in the widget
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_CANNOT_GET_COUNT)
-*	when the operation fails
-*/
-public int getItemCount () {
-	checkWidget();
-	return list.getItemCount ();
-}
-/**
-* Gets the height of one item.
-* <p>
-* This operation will fail if the height of
-* one item could not be queried from the OS.
-*
-* @return the height of one item in the widget
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_CANNOT_GET_ITEM_HEIGHT)
-*	when the operation fails
-*/
-public int getItemHeight () {
-	checkWidget();
-	return list.getItemHeight ();
-}
-/**
-* Gets the items.
-* <p>
-* This operation will fail if the items cannot
-* be queried from the OS.
-*
-* @return the items in the widget
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_CANNOT_GET_ITEM)
-*	when the operation fails
-*/
-public String [] getItems () {
-	checkWidget();
-	return list.getItems ();
-}
-/**
-* Gets the selection.
-* <p>
-* @return a point representing the selection start and end
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public Point getSelection () {
-	checkWidget();
-	return text.getSelection ();
-}
-/**
-* Gets the index of the selected item.
-* <p>
-* Indexing is zero based.
-* If no item is selected -1 is returned.
-*
-* @return the index of the selected item.
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public int getSelectionIndex () {
-	checkWidget();
-	return list.getSelectionIndex ();
-}
-/**
-* Gets the widget text.
-* <p>
-* If the widget has no text, an empty string is returned.
-*
-* @return the widget text
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public String getText () {
-	checkWidget();
-	return text.getText ();
-}
-/**
-* Gets the height of the combo's text field.
-* <p>
-* The operation will fail if the height cannot 
-* be queried from the OS.
-
-* @return the height of the combo's text field.
-* 
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_ERROR_CANNOT_GET_ITEM_HEIGHT)
-*	when the operation fails
-*/
-public int getTextHeight () {
-	checkWidget();
-	return text.getLineHeight();
-}
-/**
-* Gets the text limit.
-* <p>
-* @return the text limit
-* 
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public int getTextLimit () {
-	checkWidget();
-	return text.getTextLimit ();
-}
-/**
-* Gets the index of an item.
-* <p>
-* The list is searched starting at 0 until an
-* item is found that is equal to the search item.
-* If no item is found, -1 is returned.  Indexing
-* is zero based.
-*
-* @param string the search item
-* @return the index of the item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when string is null
-*/
-public int indexOf (String string) {
-	checkWidget();
-	if (string == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	return list.indexOf (string);
-}
-/**
-* Gets the index of an item.
-* <p>
-* The widget is searched starting at start including
-* the end position until an item is found that
-* is equal to the search itenm.  If no item is
-* found, -1 is returned.  Indexing is zero based.
-*
-* @param string the search item
-* @param index the starting position
-* @return the index of the item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when string is null
-*/
-public int indexOf (String string, int start) {
-	checkWidget();
-	if (string == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	return list.indexOf (string, start);
-}
-
-void initAccessible() {
-	getAccessible().addAccessibleListener(new AccessibleAdapter() {
-		public void getHelp(AccessibleEvent e) {
-			e.result = getToolTipText();
-		}
-	});
-	
-	getAccessible().addAccessibleTextListener(new AccessibleTextAdapter() {
-		public void getCaretOffset(AccessibleTextEvent e) {
-			e.offset = text.getCaretPosition();
-		}
-	});
-	
-	getAccessible().addAccessibleControlListener(new AccessibleControlAdapter() {
-		public void getChildAtPoint(AccessibleControlEvent e) {
-			Point testPoint = toControl(new Point(e.x, e.y));
-			if (getBounds().contains(testPoint)) {
-				e.childID = ACC.CHILDID_SELF;
-			}
-		}
-		
-		public void getLocation(AccessibleControlEvent e) {
-			Rectangle location = getBounds();
-			Point pt = toDisplay(new Point(location.x, location.y));
-			e.x = pt.x;
-			e.y = pt.y;
-			e.width = location.width;
-			e.height = location.height;
-		}
-		
-		public void getChildCount(AccessibleControlEvent e) {
-			e.detail = 0;
-		}
-		
-		public void getRole(AccessibleControlEvent e) {
-			e.detail = ACC.ROLE_COMBOBOX;
-		}
-		
-		public void getState(AccessibleControlEvent e) {
-			e.detail = ACC.STATE_NORMAL;
-		}
-
-		public void getValue(AccessibleControlEvent e) {
-			e.result = getText();
-		}
-	});
-}
-boolean isDropped () {
-	return popup.getVisible ();
-}
-public boolean isFocusControl () {
-	checkWidget();
-	if (text.isFocusControl() || arrow.isFocusControl() || list.isFocusControl() || popup.isFocusControl()) {
-		return true;
-	} else {
-		return super.isFocusControl();
-	}
-}
-
-//public boolean isListVisible()
-//{
-//  checkWidget();
-//  return list.isVisible();
-//}
-
-void internalLayout () {
-	if (isDropped ()) dropDown (false);
-	
-	Rectangle rect = getClientArea();
-	int width = rect.width;
-	int height = rect.height;
-	Point arrowSize = arrow.computeSize(SWT.DEFAULT, height);
-	text.setBounds (0, 0, width - arrowSize.x, height);
-	arrow.setBounds (width - arrowSize.x, 0, arrowSize.x, arrowSize.y);
-	
-	Point size = getSize();
-	int itemCount = list.getItemCount();
-	itemCount = (itemCount == 0) ? maxItemCount : Math.min(maxItemCount, itemCount);
-	int itemHeight = list.getItemHeight () * itemCount;
-	Point listSize = list.computeSize (SWT.DEFAULT, itemHeight);
-	list.setBounds (1, 1, Math.max (size.x - 2, listSize.x), listSize.y);
-}
-void listEvent (Event event) {
-	switch (event.type) {
-		case SWT.FocusIn: {
-			if (hasFocus) return;
-			hasFocus = true;
-			if (getEditable ()) text.selectAll ();
-			Event e = new Event();
-			e.time = event.time;
-			notifyListeners(SWT.FocusIn, e);
-			break;
-		}
-		case SWT.FocusOut: {
-			event.display.asyncExec(new Runnable() {
-				public void run() {
-					if (DynamicCellEditor.this.isDisposed()) return;
-					Control focusControl = getDisplay().getFocusControl();
-					if (focusControl == text || focusControl == arrow || focusControl == list) return;
-					hasFocus = false;
-					Event e = new Event();
-					notifyListeners(SWT.FocusOut, e);
-				}
-			});
-			break;
-		}
-		case SWT.MouseUp: {
-			if (event.button != 1) return;
-			dropDown (false);
-			break;
-		}
-		case SWT.Selection: {
-			int index = list.getSelectionIndex ();
-			if (index == -1) return;
-			text.setText (list.getItem (index));
-			text.selectAll ();
-			list.setSelection(index);
-			Event e = new Event();
-			e.time = event.time;
-			e.stateMask = event.stateMask;
-			e.doit = event.doit;
-			notifyListeners(SWT.Selection, e);
-			event.doit = e.doit;
-			break;
-		}
-		case SWT.Traverse: {
-			switch (event.detail) {
-				case SWT.TRAVERSE_TAB_NEXT:
-				case SWT.TRAVERSE_RETURN:
-				case SWT.TRAVERSE_ESCAPE:
-				case SWT.TRAVERSE_ARROW_PREVIOUS:
-				case SWT.TRAVERSE_ARROW_NEXT:
-					event.doit = false;
-					break;
-			}
-			Event e = new Event();
-			e.time = event.time;
-			e.detail = event.detail;
-			e.doit = event.doit;
-			e.keyCode = event.keyCode;
-			notifyListeners(SWT.Traverse, e);
-			event.doit = e.doit;
-			break;
-		}
-		case SWT.KeyUp: {		
-			Event e = new Event();
-			e.time = event.time;
-			e.character = event.character;
-			e.keyCode = event.keyCode;
-			e.stateMask = event.stateMask;
-			notifyListeners(SWT.KeyUp, e);
-			break;
-		}
-		case SWT.KeyDown: {
-			if (event.character == SWT.ESC) { 
-				// escape key cancels popup list
-				dropDown (false);
-			}
-			if (event.character == SWT.CR || event.character == '\t') {
-				// Enter and Tab cause default selection
-				dropDown (false);
-				Event e = new Event();
-				e.time = event.time;
-				e.stateMask = event.stateMask;
-				notifyListeners(SWT.DefaultSelection, e);
-			}
-			//At this point the widget may have been disposed.
-			// If so, do not continue.
-			if (isDisposed()) break;
-			Event e = new Event();
-			e.time = event.time;
-			e.character = event.character;
-			e.keyCode = event.keyCode;
-			e.stateMask = event.stateMask;
-			notifyListeners(SWT.KeyDown, e);
-			break;
-			
-		}
-	}
-}
-void popupEvent(Event event) {
-	switch (event.type) {
-		case SWT.Paint:
-			// draw black rectangle around list
-			Rectangle listRect = list.getBounds();
-			Color black = getDisplay().getSystemColor(SWT.COLOR_BLACK);
-			event.gc.setForeground(black);
-			event.gc.drawRectangle(0, 0, listRect.width + 1, listRect.height + 1);
-			break;
-		case SWT.Close:
-			event.doit = false;
-			dropDown (false);
-			break;
-		case SWT.Deactivate:
-			dropDown (false);
-			break;
-	}
-}
-public void redraw () {
-	super.redraw();
-	text.redraw();
-	arrow.redraw();
-	if (popup.isVisible()) list.redraw();
-}
-public void redraw (int x, int y, int width, int height, boolean all) {
-	super.redraw(x, y, width, height, true);
-}
-
-/**
-* Removes an item at an index.
-* <p>
-* Indexing is zero based.
-*
-* This operation will fail when the index is out
-* of range or an item could not be removed from
-* the OS.
-*
-* @param index the index of the item
-* @return the selection state
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_ITEM_NOT_REMOVED)
-*	when the operation fails
-*/
-public void remove (int index) {
-	checkWidget();
-	list.remove (index);
-}
-/**
-* Removes a range of items.
-* <p>
-* Indexing is zero based.  The range of items
-* is from the start index up to and including
-* the end index.
-*
-* This operation will fail when the index is out
-* of range or an item could not be removed from
-* the OS.
-*
-* @param start the start of the range
-* @param end the end of the range
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_ITEM_NOT_REMOVED)
-*	when the operation fails
-*/
-public void remove (int start, int end) {
-	checkWidget();
-	list.remove (start, end);
-}
-/**
-* Removes an item.
-* <p>
-* This operation will fail when the item
-* could not be removed from the OS.
-*
-* @param string the search item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when string is null
-* @exception org.eclipse.swt.SWTError(ERROR_ITEM_NOT_REMOVED)
-*	when the operation fails
-*/
-public void remove (String string) {
-	checkWidget();
-	if (string == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	list.remove (string);
-}
-/**
-* Removes all items.
-* <p>
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public void removeAll () {
-	checkWidget();
-	text.setText (""); //$NON-NLS-1$
-	list.removeAll ();
-}
-/**	 
-* Removes the listener.
-* <p>
-*
-* @param listener the listener
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when listener is null
-*/
-public void removeModifyListener (ModifyListener listener) {
-	checkWidget();
-	if (listener == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	removeListener(SWT.Modify, listener);	
-}
-/**	 
-* Removes the listener.
-* <p>
-*
-* @param listener the listener
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when listener is null
-*/
-public void removeSelectionListener (SelectionListener listener) {
-	checkWidget();
-	if (listener == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	removeListener(SWT.Selection, listener);
-	removeListener(SWT.DefaultSelection,listener);	
-}
-/**
-* Selects an item.
-* <p>
-* If the item at an index is not selected, it is
-* selected. Indices that are out of
-* range are ignored.  Indexing is zero based.
-*
-* @param index the index of the item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-*/
-public void select (int index) {
-	checkWidget();
-	if (index == -1) {
-		list.deselectAll ();
-		text.setText (""); //$NON-NLS-1$
-		return;
-	}
-	if (0 <= index && index < list.getItemCount()) {
-		if (index != getSelectionIndex()) {
-			text.setText (list.getItem (index));
-			text.selectAll ();
-			list.select (index);
-			list.showSelection ();
-		}
-	}
-}
-public void setBackground (Color color) {
-	super.setBackground(color);
-	if (text != null) text.setBackground(color);
-	if (list != null) list.setBackground(color);
-	if (arrow != null) arrow.setBackground(color);
-}
-public boolean setFocus () {
-	checkWidget();
-	return text.setFocus ();
-}
-public void setFont (Font font) {
-	super.setFont (font);
-	text.setFont (font);
-	list.setFont (font);
-	internalLayout ();
-}
-public void setForeground (Color color) {
-	super.setForeground(color);
-	if (text != null) text.setForeground(color);
-	if (list != null) list.setForeground(color);
-	if (arrow != null) arrow.setForeground(color);
-}
-/**
-* Sets the text of an item; indexing is zero based.
-*
-* This operation will fail when the index is out
-* of range or an item could not be changed in
-* the OS.
-*
-* @param index the index for the item
-* @param string the item
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when items is null
-* @exception org.eclipse.swt.SWTError(ERROR_ITEM_NOT_MODIFIED)
-*	when the operation fails
-*/
-public void setItem (int index, String string) {
-	checkWidget();
-	if (string == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	list.setItem (index, string);
-}
-/**
-* Sets all items.
-*
-* @param items the array of items
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when items is null
-* @exception org.eclipse.swt.SWTError(ERROR_ITEM_NOT_ADDED)
-*	when the operation fails
-*/
-public void setItems (String [] items) {
-	checkWidget();
-	if (items == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	int style = getStyle();
-	if ((style & SWT.READ_ONLY) != 0) text.setText (""); //$NON-NLS-1$
-	list.setItems (items);
-}
-/**
-* Sets the new selection.
-*
-* @param selection point representing the start and the end of the new selection
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when selection is null
-*/
-public void setSelection (Point selection) {
-	checkWidget();
-	if (selection == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	text.setSelection (selection.x, selection.y);
-}
-
-/**
-* Sets the widget text.
-*
-* @param string the widget text
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_NULL_ARGUMENT)
-*	when string is null
-*/
-public void setText (String string) {
-	checkWidget();
-	if (string == null) SWT.error (SWT.ERROR_NULL_ARGUMENT);
-	int index = list.indexOf (string);
-	if (index == -1) {
-		list.deselectAll ();
-		text.setText (string);
-		return;
-	}
-	text.setText (string);
-	text.selectAll ();
-	list.setSelection (index);
-	list.showSelection ();
-}
-/**
-* Sets the text limit.
-* 
-* @param limit new text limit
-*
-* @exception org.eclipse.swt.SWTError(ERROR_THREAD_INVALID_ACCESS)
-*	when called from the wrong thread
-* @exception org.eclipse.swt.SWTError(ERROR_WIDGET_DISPOSED)
-*	when the widget has been disposed
-* @exception org.eclipse.swt.SWTError(ERROR_CANNOT_BE_ZERO)
-*	when limit is 0
-*/
-public void setTextLimit (int limit) {
-	checkWidget();
-	text.setTextLimit (limit);
-}
-
-public void setToolTipText (String string) {
-	checkWidget();
-	super.setToolTipText(string);
-	arrow.setToolTipText (string);
-	text.setToolTipText (string);		
-}
-
-public void setVisible (boolean visible) {
-	super.setVisible(visible);
-	if (!visible) popup.setVisible(false);
-}
-
-void textEvent (Event event) {
-	switch (event.type) {
-		case SWT.FocusIn: {
-			if (hasFocus) return;
-			hasFocus = true;
-			if (getEditable ()) text.selectAll ();
-			Event e = new Event();
-			e.time = event.time;
-			notifyListeners(SWT.FocusIn, e);
-			break;
-		}
-		case SWT.FocusOut: {
-			event.display.asyncExec(new Runnable() {
-				public void run() {
-					if (DynamicCellEditor.this.isDisposed()) return;
-					Control focusControl = getDisplay().getFocusControl();
-					if (focusControl == list || focusControl == arrow) return;
-					hasFocus = false;
-					Event e = new Event();
-					notifyListeners(SWT.FocusOut, e);
-				}
-			});
-			break;
-		}
-		case SWT.KeyDown: {
-			
-			if (event.character == SWT.ESC) { // escape key cancels popup list
-				dropDown (false);
-			}
-			if (event.character == SWT.CR) {
-				dropDown (false);
-				Event e = new Event();
-				e.time = event.time;
-				e.stateMask = event.stateMask;
-				notifyListeners(SWT.DefaultSelection, e);
-			}
-			//At this point the widget may have been disposed.
-			// If so, do not continue.
-			if (isDisposed()) break;
-			
-			if (event.keyCode == SWT.ARROW_UP || event.keyCode == SWT.ARROW_DOWN) {
-				int oldIndex = getSelectionIndex ();
-				if (event.keyCode == SWT.ARROW_UP) {
-					select (Math.max (oldIndex - 1, 0));
-				} else {
-					select (Math.min (oldIndex + 1, getItemCount () - 1));
-				}
-		
-				if (oldIndex != getSelectionIndex ()) {
-					Event e = new Event();
-					e.time = event.time;
-					e.stateMask = event.stateMask;
-					notifyListeners(SWT.Selection, e);
-				}
-				//At this point the widget may have been disposed.
-				// If so, do not continue.
-				if (isDisposed()) break;
-			}
-			
-			// Further work : Need to add support for incremental search in 
-			// pop up list as characters typed in text widget
-						
-			Event e = new Event();
-			e.time = event.time;
-			e.character = event.character;
-			e.keyCode = event.keyCode;
-			e.stateMask = event.stateMask;
-			notifyListeners(SWT.KeyDown, e);
-			break;
-		}
-		case SWT.KeyUp: {
-			Event e = new Event();
-			e.time = event.time;
-			e.character = event.character;
-			e.keyCode = event.keyCode;
-			e.stateMask = event.stateMask;
-			notifyListeners(SWT.KeyUp, e);
-			break;
-		}
-		case SWT.Modify: {
-			list.deselectAll ();
-			Event e = new Event();
-			e.time = event.time;
-			notifyListeners(SWT.Modify, e);
-			break;
-		}
-		case SWT.MouseDown: {
-			if (event.button != 1) return;
-			if (text.getEditable ()) return;
-			boolean dropped = isDropped ();
-			text.selectAll ();
-			if (!dropped) setFocus ();
-			dropDown (!dropped);
-			break;
-		}
-		case SWT.MouseUp: {
-			if (event.button != 1) return;
-			if (text.getEditable ()) return;
-			text.selectAll ();
-			break;
-		}
-		case SWT.Traverse: {		
-			switch (event.detail) {
-				case SWT.TRAVERSE_RETURN:
-				case SWT.TRAVERSE_ARROW_PREVIOUS:
-				case SWT.TRAVERSE_ARROW_NEXT:
-					// The enter causes default selection and
-					// the arrow keys are used to manipulate the list contents so
-					// do not use them for traversal.
-					event.doit = false;
-					break;
-			}
-			
-			Event e = new Event();
-			e.time = event.time;
-			e.detail = event.detail;
-			e.doit = event.doit;
-			e.keyCode = event.keyCode;
-			notifyListeners(SWT.Traverse, e);
-			event.doit = e.doit;
-			break;
-		}
-	}
-}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ElementPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ElementPropertySource.java
deleted file mode 100644
index 1eba5d9..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ElementPropertySource.java
+++ /dev/null
@@ -1,546 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalElementRenamer;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class ElementPropertySource extends BasePropertySource implements IPropertySource
-{
-  private static final String PROPERTY_NAME = "org.eclipse.wst.xsd.ui.internal.name";
-  private String[] blockComboValues =
-    { "", "#all", "extension", "restriction", "substitution" };
-  private String[] finalComboValues =
-    { "", "#all", "extension", "restriction" };
-  private String[] substitutionGroupComboValues = { "" };
-  private String[] formComboValues =
-  {
-      "",
-      XSDEditorPlugin.getXSDString("_UI_COMBO_UNQUALIFIED"),
-      XSDEditorPlugin.getXSDString("_UI_COMBO_QUALIFIED")
-  };
-
-  public ElementPropertySource()
-  {
-    super();
-  }
-
-  public ElementPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  
-  public ElementPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-
-  public void setInput(Element element)
-  {
-    this.element = element;
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    List globals = helper.getGlobalElements();
-    int size = globals.size() + 1;
-    substitutionGroupComboValues = new String[size];
-    substitutionGroupComboValues[0] = "";
-    if (globals != null)
-    {
-      for (int k = 0; k < globals.size(); k++)
-      {
-        substitutionGroupComboValues[k + 1] = (String) globals.get(k);
-      }
-    }
-  }
-
-  /*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-	 */
-  public Object getEditableValue()
-  {
-//    return element.getNodeName();
-    return null;
-  }
-
-  /*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-	 */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    Object parentNode = element.getParentNode();
-    boolean isGlobalElement = XSDDOMHelper.inputEquals(parentNode, XSDConstants.SCHEMA_ELEMENT_TAG, false);
-    
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-//  These have been moved to the general tab
-//    PropertyDescriptor nameDescriptor =
-//      new TextPropertyDescriptor(
-//        XSDConstants.NAME_ATTRIBUTE,
-//        XSDConstants.NAME_ATTRIBUTE);
-//    list.add(nameDescriptor);
-//    TypesPropertyDescriptor typeDescriptor = new TypesPropertyDescriptor(
-//        XSDConstants.TYPE_ATTRIBUTE,
-//        XSDConstants.TYPE_ATTRIBUTE,
-//        element, xsdSchema);
-//    list.add(typeDescriptor);
-    if (isGlobalElement)
-    {
-      XSDComboBoxPropertyDescriptor abstractDescriptor =
-        new XSDComboBoxPropertyDescriptor(
-          XSDConstants.ABSTRACT_ATTRIBUTE,
-          XSDConstants.ABSTRACT_ATTRIBUTE,
-          trueFalseComboValues);
-      list.add(abstractDescriptor);
-    }
-    if (!isGlobalElement)
-    {
-      PropertyDescriptor minOccursDescriptor =
-        new TextPropertyDescriptor(
-          XSDConstants.MINOCCURS_ATTRIBUTE,
-          XSDConstants.MINOCCURS_ATTRIBUTE);
-      list.add(minOccursDescriptor);
-    
-      PropertyDescriptor maxOccursDescriptor =
-        new TextPropertyDescriptor(
-          XSDConstants.MAXOCCURS_ATTRIBUTE,
-          XSDConstants.MAXOCCURS_ATTRIBUTE);
-      list.add(maxOccursDescriptor);
-    }
-    XSDComboBoxPropertyDescriptor nillableDescriptor =
-      new XSDComboBoxPropertyDescriptor(
-        XSDConstants.NILLABLE_ATTRIBUTE,
-        XSDConstants.NILLABLE_ATTRIBUTE,
-        trueFalseComboValues);
-    list.add(nillableDescriptor);
-    XSDComboBoxPropertyDescriptor blockDescriptor =
-      new XSDComboBoxPropertyDescriptor(
-        XSDConstants.BLOCK_ATTRIBUTE,
-        XSDConstants.BLOCK_ATTRIBUTE,
-        blockComboValues);
-    list.add(blockDescriptor);
-    if (isGlobalElement)
-    {      
-      XSDComboBoxPropertyDescriptor finalDescriptor =
-        new XSDComboBoxPropertyDescriptor(
-          XSDConstants.FINAL_ATTRIBUTE,
-          XSDConstants.FINAL_ATTRIBUTE,
-          finalComboValues);
-      list.add(finalDescriptor);
-      XSDComboBoxPropertyDescriptor substitutionGroupDescriptor =
-        new XSDComboBoxPropertyDescriptor(
-          XSDConstants.SUBSTITUTIONGROUP_ATTRIBUTE,
-          XSDConstants.SUBSTITUTIONGROUP_ATTRIBUTE,
-          substitutionGroupComboValues);
-      list.add(substitutionGroupDescriptor);
-    }
-    if (!isGlobalElement)
-    {
-      XSDComboBoxPropertyDescriptor formDescriptor =
-        new XSDComboBoxPropertyDescriptor(
-          XSDConstants.FORM_ATTRIBUTE,
-          XSDConstants.FORM_ATTRIBUTE,
-          formComboValues);
-      list.add(formDescriptor);
-    }
-
-    Attr fixedAttr = element.getAttributeNode(XSDConstants.FIXED_ATTRIBUTE);
-    Attr defaultAttr = element.getAttributeNode(XSDConstants.DEFAULT_ATTRIBUTE);
-    String str;
-    if (fixedAttr != null)
-    {
-      str = XSDConstants.FIXED_ATTRIBUTE;
-    }
-    else if (defaultAttr != null)
-    {
-      str = XSDConstants.DEFAULT_ATTRIBUTE;
-    }
-    else
-    {
-      str = XSDConstants.FIXED_ATTRIBUTE + "/" + XSDConstants.DEFAULT_ATTRIBUTE;
-    }
-    
-    FixedOrDefaultTextPropertyDescriptor fixedOrDefaultDescriptor =
-      new FixedOrDefaultTextPropertyDescriptor(
-        str, 
-        str,
-        element);
-    list.add(fixedOrDefaultDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-    //    return propertyDescriptors;
-  }
-
-  /*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-	 */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      String attributeName = (String)id;
-      result = element.getAttribute(attributeName);
-      if (result == null)
-      {
-        result = "";
-      }
-      if (attributeName.equals(XSDConstants.TYPE_ATTRIBUTE))
-      {
-        boolean isAnonymous = checkForAnonymousType(element);
-        if (isAnonymous)
-        {
-          return "**anonymous**";
-        }
-        if (result.equals(""))
-        {
-          result = XSDEditorPlugin.getXSDString("_UI_NO_TYPE");
-        }
-        return result;
-      }
-      else if (attributeName.equals(XSDConstants.MAXOCCURS_ATTRIBUTE) 
-        || attributeName.equals(XSDConstants.MINOCCURS_ATTRIBUTE)
-        || attributeName.equals(XSDConstants.SUBSTITUTIONGROUP_ATTRIBUTE)
-        || attributeName.equals(XSDConstants.FORM_ATTRIBUTE)
-        || attributeName.equals(XSDConstants.ABSTRACT_ATTRIBUTE)
-        || attributeName.equals(XSDConstants.NILLABLE_ATTRIBUTE)
-        || attributeName.equals(XSDConstants.BLOCK_ATTRIBUTE)
-        || attributeName.equals(XSDConstants.FINAL_ATTRIBUTE)
-        || attributeName.equals(XSDConstants.FIXED_ATTRIBUTE) 
-        || attributeName.equals(XSDConstants.DEFAULT_ATTRIBUTE)
-        || attributeName.equals(XSDConstants.NAME_ATTRIBUTE))
-      {
-        return result;
-      }
-    }
-    return "";
-  }
-
-  /*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-	 */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-
-  /*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-	 */
-  public void resetPropertyValue(Object id)
-  {
-  }
-
-  /*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object,
-	 *      java.lang.Object)
-	 */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      String attributeName = (String)id;
-      
-      if (attributeName.equals(XSDConstants.MAXOCCURS_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_MAXOCCURS_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.MINOCCURS_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_MINOCCURS_CHANGE"), element);      
-      }
-      else if (attributeName.equals(XSDConstants.SUBSTITUTIONGROUP_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_SUBSTITUTIONGROUP_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.FORM_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_FORM_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.ABSTRACT_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_ABSTRACT_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.NILLABLE_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_NILLABLE_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.BLOCK_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_BLOCK_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.FINAL_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_FINAL_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.FIXED_ATTRIBUTE) || attributeName.equals(XSDConstants.DEFAULT_ATTRIBUTE))
-      {  
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_VALUE_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.NAME_ATTRIBUTE))
-      {
-        if (validateName(newValue))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_NAME_CHANGE"), element);
-          // now rename any references to this element
-          if (xsdSchema != null)
-          {
-            XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-            if (comp != null && comp instanceof XSDElementDeclaration && comp.getContainer().equals(xsdSchema))
-            {
-              GlobalElementRenamer renamer = new GlobalElementRenamer((XSDNamedComponent)comp, newValue);
-              renamer.visitSchema(xsdSchema);
-            }
-          }
-        }
-      }
-      else if (attributeName.equals(XSDConstants.TYPE_ATTRIBUTE))
-      {
-        // put logic in descriptor/cell editor
-//          beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_TYPE_CHANGE"), element);
-      }
-    
-      if (newValue.length() > 0)
-      {
-        element.setAttribute((String) id, (String) value);
-      }
-      else
-      {
-        if (!attributeName.equals(XSDConstants.NAME_ATTRIBUTE))
-        {
-          element.removeAttribute((String) id);
-        }
-      }
-      endRecording(element);
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-
-  }
-
-  boolean checkForAnonymousType(Element element)
-  {
-    /* Using Ed's model to check
-     boolean isAnonymous = false;
-
-     XSDConcreteComponent component = getXSDSchema().getCorrespondingComponent(element);
-     if (component instanceof XSDElementDeclaration)
-     {
-     XSDElementDeclaration xsdElem = (XSDElementDeclaration)component;
-     isAnonymous = xsdElem.isSetAnonymousTypeDefinition();
-     }
-     return isAnonymous;
-     */
-
-    boolean isAnonymous = false;
-
-    Node aNode = getDomHelper().getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-    if (aNode != null)
-     {
-      return true;
-    }
-    aNode = getDomHelper().getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-    if (aNode != null)
-     {
-      isAnonymous = true;
-    }
-    return isAnonymous;
-  }
-  
-  
-//  void updateElementToAnonymous(Element element, String xsdType)
-//  {
-//    String prefix = element.getPrefix();
-//    prefix = (prefix == null) ? "" : (prefix + ":");
-//
-//    updateElementToNotAnonymous(element);
-//    boolean hasChildrenElements = hasElementChildren(element);
-//
-//    Element childNode = null;
-//    if (xsdType.equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-//     {
-//      childNode = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-//    }
-//    else if (xsdType.equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG))
-//     {
-//      childNode = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-//    }
-//
-//    element.appendChild(childNode);
-//    formatChild(childNode, hasChildrenElements);    
-//
-//
-//    /* Using Ed's model to do the above
-//     XSDConcreteComponent component = getXSDSchema().getCorrespondingComponent(element);
-//     if (component instanceof XSDElementDeclaration)
-//     {
-//     XSDElementDeclaration xsdElem = (XSDElementDeclaration)component;
-//     XSDFactoryImpl factory = new XSDFactoryImpl();
-//     XSDComplexTypeDefinition complex = factory.createXSDComplexTypeDefinition();
-//     XSDSimpleTypeDefinition simple = factory.createXSDSimpleTypeDefinition();
-//
-//     Node child = element.getFirstChild();
-//     if (XSDDOMHelper.inputEquals(child, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false) ||
-//     XSDDOMHelper.inputEquals(child, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-//     {
-//     element.removeChild(child);
-//     }
-//     
-//     FormatProcessor formatProcessor = new FormatProcessor();
-//     if (xsdType.equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-//     {
-//     xsdElem.setAnonymousTypeDefinition(complex);
-//     Element elem = complex.getElement();
-//     formatProcessor.formatWithSiblingIndent((XMLNode)elem);
-//     }
-//     else if (xsdType.equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG))
-//     {
-//     xsdElem.setAnonymousTypeDefinition(simple);
-//     Element elem = simple.getElement();  
-//     formatProcessor.formatWithSiblingIndent((XMLNode)elem);
-//     }
-//     }
-//     component.updateElement();
-//     */
-//  }
-//
-//  boolean isSTAnonymous(Element element)
-//  {
-//    Node aNode = getDomHelper().getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-//    if (aNode != null)
-//     {
-//      if (XSDDOMHelper.inputEquals(aNode, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-//       {
-//        return true;
-//      }
-//    }
-//    return false;
-//  }  
-//
-//  boolean isCTAnonymous(Element element)
-//  {
-//    Node aNode = getDomHelper().getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-//    if (aNode != null)
-//     {
-//      if (XSDDOMHelper.inputEquals(aNode, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-//       {
-//        return true;
-//      }
-//    }
-//    return false;
-//  }  
-//
-//  XSDTypeDefinition getAnonymousTypeDefinition(Element element)
-//  {
-//    Node typeDefinitionNode = getDomHelper().getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-//    if (typeDefinitionNode == null)
-//     {
-//      typeDefinitionNode = getDomHelper().getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-//    }
-//    if (typeDefinitionNode != null)
-//     {
-//      XSDConcreteComponent component = getXSDSchema().getCorrespondingComponent(typeDefinitionNode);
-//      if (component instanceof XSDTypeDefinition)
-//       {
-//        return (XSDTypeDefinition)component;
-//      }
-//    }
-//    return null;    
-//
-//    /*    XSDConcreteComponent component = getXSDSchema().getCorrespondingComponent(element);
-//     if (component instanceof XSDElementDeclaration)
-//     {
-//     XSDElementDeclaration xsdElem = (XSDElementDeclaration)component;
-//
-//     return xsdElem.getAnonymousTypeDefinition();
-//     }
-//     return null;
-//     */
-//  }
-//
-//  void updateElementToNotAnonymous(Element element)
-//  {
-//    NodeList children = element.getChildNodes();
-//    if (children != null)
-//     {
-//      for (int i = 0; i < children.getLength(); i++)
-//       {
-//        Node node = (Node)children.item(i);
-//        if (node instanceof Element)
-//         {
-//          if (node.getLocalName().equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG) ||
-//              node.getLocalName().equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-//           {
-//            XSDDOMHelper.removeNodeAndWhitespace(node);
-//            i=0;
-//          }
-//        }
-//      }
-//    }
-//    /*    XSDConcreteComponent component = getXSDSchema().getCorrespondingComponent(element);
-//     if (component instanceof XSDElementDeclaration)
-//     {
-//     XSDElementDeclaration xsdElem = (XSDElementDeclaration)component;
-//     if (xsdElem.isSetAnonymousTypeDefinition())
-//     {
-//     xsdElem.unsetAnonymousTypeDefinition();
-//     xsdElem.setAnonymousTypeDefinition(null);
-//     }
-//     }
-//     component.updateElement();
-//     */
-//  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/EnumerationPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/EnumerationPropertySource.java
deleted file mode 100644
index 65124f7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/EnumerationPropertySource.java
+++ /dev/null
@@ -1,131 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-public class EnumerationPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  /**
-   * 
-   */
-  public EnumerationPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public EnumerationPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public EnumerationPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    PropertyDescriptor nameDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.VALUE_ATTRIBUTE,
-        XSDConstants.VALUE_ATTRIBUTE);
-    list.add(nameDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-     {
-      result = element.getAttribute((String) id);
-    }
-    if (result == null)
-     {
-      result = "";
-    }
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value != null)
-    {
-      if (value instanceof String)
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ENUM_VALUE_CHANGE"), element);
-        element.setAttribute(XSDConstants.VALUE_ATTRIBUTE, (String)value);
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/FixedOrDefaultTextPropertyDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/FixedOrDefaultTextPropertyDescriptor.java
deleted file mode 100644
index 21e09aa..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/FixedOrDefaultTextPropertyDescriptor.java
+++ /dev/null
@@ -1,307 +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.xsd.ui.internal.properties;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.DialogCellEditor;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorContextIds;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-
-
-public class FixedOrDefaultTextPropertyDescriptor extends PropertyDescriptor
-{
-  protected static String choice = "";
-  Element element;
-  /**
-   * @param id
-   * @param displayName
-   */
-  public FixedOrDefaultTextPropertyDescriptor(Object id, String displayName, Element element)
-  {
-    super(id, displayName);
-    this.element = element;
-  }
-  
-  public CellEditor createPropertyEditor(Composite parent)
-  {
-    CellEditor editor = new FixedOrDefaultTextCellEditor(parent);
-    if (getValidator() != null)
-      editor.setValidator(getValidator());
-    return editor;
-  }
-
-//    public void setChoice(String newChoice)
-//    {
-//      choice = newChoice;
-//    }
-
-  public Object getId()
-  {
-    Attr fixedAttr = element.getAttributeNode(XSDConstants.FIXED_ATTRIBUTE);
-    Attr defaultAttr = element.getAttributeNode(XSDConstants.DEFAULT_ATTRIBUTE);
-    if (fixedAttr != null)
-    {
-      choice = "fixed";
-    }
-    else if (defaultAttr != null) // what if both attributes were specified?  Use default...
-    {
-      choice = "default";
-    }
-    else
-    {
-      choice = "";
-    }
-
-    if (choice.equals("fixed"))
-     {
-      return "fixed";
-    }
-    else if (choice.equals("default"))
-     {
-      return "default";
-    }
-    else
-     {
-      return super.getId();
-    }
-  }
-  
-  public String getDisplayName()
-  {
-    Attr fixedAttr = element.getAttributeNode(XSDConstants.FIXED_ATTRIBUTE);
-    Attr defaultAttr = element.getAttributeNode(XSDConstants.DEFAULT_ATTRIBUTE);
-    if (fixedAttr != null)
-    {
-      choice = "fixed";
-    }
-    else if (defaultAttr != null) // what if both attributes were specified?  Use default...
-     {
-      choice = "default";
-    }
-    else
-    {
-      choice = "fixed/default";
-    }
-
-    if (choice.equals("fixed"))
-     {
-      return "fixed";
-    }
-    else if (choice.equals("default"))
-     {
-      return "default";
-    }
-    else
-     {
-      return super.getDisplayName();
-    }
-  }
-
-  class FixedOrDefaultTextCellEditor extends DialogCellEditor
-  {
-    public FixedOrDefaultTextCellEditor(Composite parent)
-    {
-      super(parent);
-    }
-
-    protected Object openDialogBox(Control cellEditorWindow)
-    {
-	    Shell shell = Display.getCurrent().getActiveShell();
-	    
-	    FixedOrDefaultDialog dialog = new FixedOrDefaultDialog(shell);
-
-	    dialog.setBlockOnOpen(true);
-	    dialog.create();
-	    
-	    String value = (String)getValue();
-	
-	    int result = dialog.open();
-	    
-	    if (result == Window.OK)
-	    {
-	      String newValue = dialog.getValue();
-        fireApplyEditorValue();
-	    }
-	    deactivate();
-      return null;
-	  }
-  }
-  
-  class FixedOrDefaultDialog extends Dialog implements SelectionListener
-  {
-    private int FIXED = 0;
-    private int DEFAULT = 1;
-    private int type;
-    private int value;
-    protected Button fixedButton, defaultButton;
-    protected Text valueField;
-    protected String valueString = "";
-    
-    public FixedOrDefaultDialog(Shell shell)
-    {
-      super(shell);
-    }
-
-    protected void configureShell(Shell shell)
-    {
-      super.configureShell(shell);
-    }
-
-    protected void buttonPressed(int buttonId)
-    {
-      if (buttonId == Dialog.OK)
-      {
-        valueString = valueField.getText();
-        applyEditorValueAndDeactivate();
-      }
-      super.buttonPressed(buttonId);
-    }
-
-    public String getValue() { return valueString; }
-    public String getType() { return type == FIXED? "fixed" : "default"; }
-
-    //
-    // Create the controls
-    //
-    public Control createDialogArea(Composite parent)
-    {
-      Composite client = (Composite)super.createDialogArea(parent);
-      getShell().setText("Fixed/Default Value");
-
-      GridLayout gl = new GridLayout(1, true);
-//      gl.marginHeight = 0;
-//      gl.marginWidth = 0;
-//      gl.horizontalSpacing = 0;
-//      gl.verticalSpacing = 0;
-      client.setLayout(gl);
-
-      GridData gd = new GridData();
-      gd.grabExcessHorizontalSpace = true;
-      gd.grabExcessVerticalSpace = true;
-      gd.horizontalAlignment = GridData.FILL;
-      gd.verticalAlignment = GridData.FILL;
-      gd.horizontalIndent = 0;
-      client.setLayoutData(gd);
-      
-//      isTextReadOnly = false;
-
-      fixedButton = ViewUtility.createRadioButton(client, XSDEditorPlugin.getXSDString("_UI_FIXED"));
-//    WorkbenchHelp.setHelp(fixedButton, XSDEditorContextIds.XSDE_ELEMENT_FIXED);
-      
-      defaultButton = ViewUtility.createRadioButton(client, XSDEditorPlugin.getXSDString("_UI_DEFAULT"));
-//    WorkbenchHelp.setHelp(defaultButton, XSDEditorContextIds.XSDE_ELEMENT_DEFAULT);
-
-      valueField = ViewUtility.createTextField(client, 30);
-      
-//    WorkbenchHelp.setHelp(valueField, XSDEditorContextIds.XSDE_ELEMENT_VALUE);
-//    valueField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_VALUE"));
-
-      WorkbenchHelp.setHelp(fixedButton, XSDEditorContextIds.XSDE_ATTRIBUTE_FIXED);
-      WorkbenchHelp.setHelp(defaultButton, XSDEditorContextIds.XSDE_ATTRIBUTE_DEFAULT);
-      // WorkbenchHelp.setHelp(valueField, XSDEditorContextIds.XSDE_ATTRIBUTE_VALUE);
-      
-      Attr fixedAttr = element.getAttributeNode(XSDConstants.FIXED_ATTRIBUTE);
-      Attr defaultAttr = element.getAttributeNode(XSDConstants.DEFAULT_ATTRIBUTE);
-
-      if (fixedAttr != null)
-      {
-        fixedButton.setSelection(true);
-        defaultButton.setSelection(false);
-        choice = "fixed";
-        type = FIXED;
-        valueField.setText(element.getAttribute("fixed"));
-        valueField.setFocus();
-        valueField.selectAll();
-      }
-      if (defaultAttr != null) // what if both attributes were specified?  Use default...
-       {
-        fixedButton.setSelection(false);
-        defaultButton.setSelection(true);
-        choice = "default";
-        type = DEFAULT;
-        valueField.setText(element.getAttribute("default"));
-        valueField.setFocus();
-        valueField.selectAll();
-      }
-
-      fixedButton.addSelectionListener(this);
-      defaultButton.addSelectionListener(this);
-      return client;
-    }
-
-    void applyEditorValueAndDeactivate()
-    {
-      String value = valueField.getText();
-      if (value != null && value.length() > 0)
-      {
-        choice = type == FIXED? "fixed" : "default";
-      }
-      if (value != null && value.length() > 0)
-      {
-        if (choice.equals("fixed"))
-        {
-          element.removeAttribute(XSDConstants.DEFAULT_ATTRIBUTE);
-          element.setAttribute(XSDConstants.FIXED_ATTRIBUTE, value);
-        }
-        else if (choice.equals("default"))
-        {
-          element.removeAttribute(XSDConstants.FIXED_ATTRIBUTE);
-          element.setAttribute(XSDConstants.DEFAULT_ATTRIBUTE, value);
-        }
-      }
-      if (value.equals(""))
-      {
-        choice = "";
-        element.removeAttribute(XSDConstants.DEFAULT_ATTRIBUTE);
-        element.removeAttribute(XSDConstants.FIXED_ATTRIBUTE);
-      }
-    }
-
-    public void widgetSelected(SelectionEvent e)
-    {
-      if (e.widget == fixedButton && fixedButton.getSelection())
-      {
-        type = FIXED;
-        choice = "fixed";
-      }
-      else if (e.widget == defaultButton && defaultButton.getSelection())
-      {
-        type = DEFAULT;
-        choice = "default";
-      }
-    }
-
-  	public void widgetDefaultSelected(SelectionEvent e)
-    {
-    }
-
-  }
-  
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/GroupRefPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/GroupRefPropertySource.java
deleted file mode 100644
index 7f10f66..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/GroupRefPropertySource.java
+++ /dev/null
@@ -1,229 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class GroupRefPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String[] refComboValues = { "" };
-  /**
-   * 
-   */
-  public GroupRefPropertySource()
-  {
-    super();
-  }
-  
-//  public void setReferenceComboContextHelp(String contextId)
-//  {
-//    WorkbenchHelp.setHelp(refCombo, contextId);
-//  }
-  
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public GroupRefPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public GroupRefPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  
-  public void setInput(Element element)
-  {
-    this.element = element;
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    java.util.List items = helper.getGlobalElements();
-    if (XSDDOMHelper.inputEquals(element, XSDConstants.GROUP_ELEMENT_TAG, true))
-    {
-      items = helper.getModelGroups();
-      // Need tooltip for Group Ref
-//        minimumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MINIMUM"));
-//        WorkbenchHelp.setHelp(minimumField, XSDEditorContextIds.XSDE_GROUP_REF_MINIMUM);
-//        maximumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MAXIMUM"));
-//        WorkbenchHelp.setHelp(maximumField, XSDEditorContextIds.XSDE_GROUP_REF_MAXIMUM);
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, true))
-    {
-      items = helper.getGlobalElements();
-//        minimumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MINIMUM"));
-//        WorkbenchHelp.setHelp(minimumField, XSDEditorContextIds.XSDE_ELEMENT_REF_MINIMUM);
-//        maximumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MAXIMUM"));
-//        WorkbenchHelp.setHelp(maximumField, XSDEditorContextIds.XSDE_ELEMENT_REF_MAXIMUM);
-    }
-    
-    int size = items.size() + 1;
-    refComboValues = new String[size];
-    refComboValues[0] = "";
-    if (items != null)
-     {
-      for (int i = 0; i < items.size(); i++)
-       {
-        refComboValues[i + 1] = (String) items.get(i);
-      }
-    }
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    XSDComboBoxPropertyDescriptor refDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.REF_ATTRIBUTE,
-        XSDConstants.REF_ATTRIBUTE,
-        refComboValues);
-    list.add(refDescriptor);
-    
-    PropertyDescriptor minOccursDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.MINOCCURS_ATTRIBUTE,
-        XSDConstants.MINOCCURS_ATTRIBUTE);
-    list.add(minOccursDescriptor);
-    PropertyDescriptor maxOccursDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.MAXOCCURS_ATTRIBUTE,
-        XSDConstants.MAXOCCURS_ATTRIBUTE);
-    list.add(maxOccursDescriptor);
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      if (result == null)
-      {
-        result = "";
-      }
-      return result;
-      
-//      if (((String) id).equals(XSDConstants.REF_ATTRIBUTE))
-//      {
-//        return result;
-//      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      String attributeName = (String)id;
-      if (((String) id).equals(XSDConstants.MAXOCCURS_ATTRIBUTE))
-      {
-        String max = (String)value;
-        String min = element.getAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_MAXOCCURS_CHANGE"), element);
-        if (max.length() > 0)
-        {
-          element.setAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE, max);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.MINOCCURS_ATTRIBUTE))
-      {
-        String min = (String)value;
-        String max = element.getAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_MINOCCURS_CHANGE"), element);
-        if (min.length() > 0)
-        {
-          element.setAttribute(XSDConstants.MINOCCURS_ATTRIBUTE, min);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.REF_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_GROUP_REF_CHANGE"), element);
-        element.setAttribute((String) id, newValue);
-        endRecording(element);
-      }
-    }
-//    Runnable delayedUpdate = new Runnable()
-//    {
-//      public void run()
-//      {
-        if (viewer != null)
-          viewer.refresh();
-//      }
-//    };
-//    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ImportPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ImportPropertySource.java
deleted file mode 100644
index 896c922..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ImportPropertySource.java
+++ /dev/null
@@ -1,335 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorContextIds;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.XSDExternalFileCleanup;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDSchemaHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class ImportPropertySource
-  extends SchemaDirectiveHelperPropertySource
-  implements IPropertySource
-{
-  boolean isSetNamespace = false;
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public ImportPropertySource(Viewer viewer, XSDSchema xsdSchema, IFile currentIFile)
-  {
-    super(viewer, xsdSchema, false);
-    this.currentIFile = currentIFile;
-//     WorkbenchHelp.setHelp(controlsContainer, XSDEditorContextIds.XSDE_IMPORT_DESIGN_VIEW);
-//WorkbenchHelp.setHelp(selectButton, XSDEditorContextIds.XSDE_INCLUDE_HELPER_SELECT);
-//WorkbenchHelp.setHelp(prefixField, XSDEditorContextIds.XSDE_IMPORT_PREFIX);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public ImportPropertySource(XSDSchema xsdSchema, IFile currentIFile)
-  {
-    super(xsdSchema, false);
-    this.currentIFile = currentIFile;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    
-    SchemaLocationPropertyDescriptor schemaLocationDescriptor =
-    new SchemaLocationPropertyDescriptor(
-      XSDConstants.SCHEMALOCATION_ATTRIBUTE,
-      XSDConstants.SCHEMALOCATION_ATTRIBUTE
-      );
-    schemaLocationDescriptor.setHelpContextIds(XSDEditorContextIds.XSDE_INCLUDE_HELPER_SELECT);
-    list.add(schemaLocationDescriptor);
-    
-    if (isSetNamespace)
-    {
-      PropertyDescriptor prefixDescriptor = 
-      new TextPropertyDescriptor(
-        "Prefix",
-        "Prefix");
-      prefixDescriptor.setHelpContextIds(XSDEditorContextIds.XSDE_IMPORT_PREFIX);
-      list.add(prefixDescriptor);
-    }
-    else
-    {
-      PropertyDescriptor prefixDescriptor = 
-      new PropertyDescriptor(
-        "Prefix",
-        "Prefix");
-      prefixDescriptor.setHelpContextIds(XSDEditorContextIds.XSDE_IMPORT_PREFIX);
-      list.add(prefixDescriptor);
-    }
-
-    PropertyDescriptor namespaceDescriptor = 
-    new PropertyDescriptor(
-        XSDConstants.NAMESPACE_ATTRIBUTE,
-        XSDConstants.NAMESPACE_ATTRIBUTE);
-    list.add(namespaceDescriptor);  
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      String attributeName = (String)id;
-      if (result == null)
-       {
-        result = "";
-      }
-
-      if (attributeName.equals("Prefix"))
-       {
-        TypesHelper helper = new TypesHelper(xsdSchema);
-        String aPrefix = helper.getPrefix(element.getAttribute(XSDConstants.NAMESPACE_ATTRIBUTE), false);
-        if (aPrefix != null && aPrefix.length() > 0)
-        {
-          return aPrefix;
-        }
-        return "";        
-      }
-      else
-       {
-        return result;
-      }
-    }
-    return "";
-    
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-     {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      TypesHelper typesHelper = new TypesHelper(xsdSchema);
-      String namespace = element.getAttribute(XSDConstants.NAMESPACE_ATTRIBUTE);
-      String oldPrefixValue = typesHelper.getPrefix(namespace, false);
-      
-      String schemaLocation = element.getAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE);
-      if (((String) id).equals("Prefix"))
-      {
-        if (validatePrefix(newValue) &&  schemaLocation.length() > 0)
-        {
-          Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-
-          if (map.containsKey(newValue))
-          {
-//          setErrorMessage(XSDEditorPlugin.getXSDString("_ERROR_LABEL_PREFIX_EXISTS"));
-          }
-          else
-          {
-            beginRecording(XSDEditorPlugin.getXSDString("_UI_PREFIX_CHANGE"), element);
-            
-            Element schemaElement = xsdSchema.getElement();
-            map.remove(oldPrefixValue);
-            map.put(newValue, namespace);
-            XSDSchemaHelper.updateElement(xsdSchema);
-
-            endRecording(element);  
-          }
-        }
-      }
-      else if (((String) id).equals(XSDConstants.SCHEMALOCATION_ATTRIBUTE))
-      { 
-        updateExternalModel((String)value, selectedIFile, selectedNamespace, selectedXSDSchema);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-  
-  public void setInput(Element element)
-  {
-    this.element = element;
-    String namespace = element.getAttribute(XSDConstants.NAMESPACE_ATTRIBUTE);
-    if (namespace != null && namespace.trim().length() > 0)
-    {
-      isSetNamespace = true;
-    }    
-    
-  }
-
-  protected void updateExternalModel(String newLocation, IFile newFile, String namespace, XSDSchema externalSchema)
-  {
-    if (xsdSchema == null) // in case we have a bad schema
-     {
-      return;
-    }
-    Element importElement = element;
-    if (namespace == null)
-    {
-      namespace = "";
-    }        
-    
-    XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-    if (comp instanceof XSDImport)
-    {
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_IMPORT_CHANGE"), importElement);
-      java.util.Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-      
-      // Referential integrity on old import
-      // How can we be sure that if the newlocation is the same as the oldlocation
-      // the file hasn't changed
-      
-      XSDSchema referencedSchema = ((XSDSchemaDirective)comp).getResolvedSchema();
-      if (referencedSchema != null)
-      {
-        XSDExternalFileCleanup cleanHelper = new XSDExternalFileCleanup(referencedSchema);
-        cleanHelper.visitSchema(xsdSchema);
-      }
-
-      Element schemaElement = xsdSchema.getElement();
-     
-//      String oldPrefix = prefixField.getText();
-//
-//      // Use the existing xmlns if available
-//      if (!map.containsValue(namespace))
-//      {
-//        if (oldPrefix.length() > 0)
-//        {
-//          schemaElement.removeAttribute("xmlns:"+oldPrefix);
-//          map.remove(oldPrefix);
-//        }
-//      }
-
-      XSDImport xsdImport = (XSDImport)comp;
-//      xsdImport.setSchemaLocation(null);
-//      xsdImport.setResolvedSchema(externalSchema);
-
-      // update the xmlns in the schema element first, and then update the import element next
-      // so that the last change will be in the import element.  This keeps the selection
-      // on the import element
-      TypesHelper helper = new TypesHelper(externalSchema);
-      String prefix = helper.getPrefix(namespace, false);
-      
-      boolean prefixAlreadyExists = false;
-      if (map.containsKey(prefix))
-      {
-        prefixAlreadyExists = true;
-      }
-      
-      if (prefix == null || (prefix !=null && prefix.length() == 0) || prefixAlreadyExists)
-      {
-        prefix = "pref";
-
-        int prefixExtension = 1;
-        while (map.containsKey(prefix) && prefixExtension < 100)
-         {
-          prefix = prefix + String.valueOf(prefixExtension);
-          prefixExtension++;
-        }
-      }
-
-      if (namespace.length() > 0)
-       {
-        // if ns already in map, use its corresponding prefix
-        if (map.containsValue(namespace))
-         {
-          TypesHelper typesHelper = new TypesHelper(xsdSchema);
-          prefix = typesHelper.getPrefix(namespace, false);
-        }
-        else // otherwise add to the map
-        {
-//          prefixMap.put(prefix, newLocation);
-          schemaElement.setAttribute("xmlns:"+prefix, namespace);
-        }
-      }
-
-      // Now update the import element's attributes
-      importElement.setAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, newLocation);
-      
-      if (!namespace.equals(""))
-       {
-        importElement.setAttribute(XSDConstants.NAMESPACE_ATTRIBUTE, namespace);
-      }
-      else
-       {
-        importElement.removeAttribute(XSDConstants.NAMESPACE_ATTRIBUTE);
-      }
-      
-//      if (getEditor() != null)
-//       {
-//        getEditor().reparseSchema();
-//        getEditor().getGraphViewer().setSchema(getXSDSchema());
-//      }
-
-      endRecording(importElement);
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/IncludePropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/IncludePropertySource.java
deleted file mode 100644
index bbc15e8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/IncludePropertySource.java
+++ /dev/null
@@ -1,238 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.XSDExternalFileCleanup;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class IncludePropertySource
-  extends SchemaDirectiveHelperPropertySource
-  implements IPropertySource
-{
-  /**
-   * 
-   */
-  public IncludePropertySource(IFile currentIFile)
-  {
-    super(true);
-    this.currentIFile = currentIFile;
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public IncludePropertySource(Viewer viewer, XSDSchema xsdSchema, IFile currentIFile)
-  {
-    super(viewer, xsdSchema, true);
-    this.currentIFile = currentIFile;
-  }
-  /**
-   * @param xsdSchema
-   */
-  public IncludePropertySource(XSDSchema xsdSchema, IFile currentIFile)
-  {
-    super(xsdSchema, true);
-    this.currentIFile = currentIFile;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    
-    SchemaLocationPropertyDescriptor schemaLocationDescriptor =
-    new SchemaLocationPropertyDescriptor(
-        XSDConstants.SCHEMALOCATION_ATTRIBUTE,
-        XSDConstants.SCHEMALOCATION_ATTRIBUTE);
-  
-    list.add(schemaLocationDescriptor);
-    
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-     {
-      result = element.getAttribute((String) id);
-      String attributeName = (String)id;
-      if (result == null)
-       {
-        result = "";
-      }
-      return result;
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      if (((String) id).equals(XSDConstants.SCHEMALOCATION_ATTRIBUTE))
-      { 
-        //element.setAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, (String)value);
-        updateExternalModel((String)value, selectedIFile, selectedNamespace, selectedXSDSchema);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-  }
-
-  protected void updateExternalModel(String newLocation, IFile newFile, String namespace, XSDSchema externalSchema)
-  {
-    Element includeElement = element;
-
-    String existingSchemaLocation = includeElement.getAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE);
-
-//  beginRecording(XSDEditorPlugin.getXSDString("_UI_INCLUDE_CHANGE"), includeElement);
-    beginRecording("Include Change", includeElement);
-    includeElement.setAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, newLocation);
-    
-    // If there is no existing schemaLocation, then just set it
-    if (existingSchemaLocation == null)
-    {
-      return;
-    }
-
-    XSDConcreteComponent includeComponent = xsdSchema.getCorrespondingComponent(includeElement);
-    if (includeComponent instanceof XSDInclude)
-     {
-      XSDInclude include = (XSDInclude) includeComponent;
-
-      XSDSchema referencedSchema = include.getResolvedSchema();
-      if (referencedSchema != null)
-      {
-        XSDExternalFileCleanup cleanHelper = new XSDExternalFileCleanup(referencedSchema);
-        cleanHelper.visitSchema(xsdSchema);
-        
-        xsdSchema.update();
-        include.updateElement();
-      }
-      
-    }
-    endRecording(includeElement);    
-  }
-
-  
-// Redefine's version
-//  protected void updateExternalModel(IFile newFile, String namespace, XSDSchema externalSchema)
-//  {
-//    Element redefineElement = (Element) getNode();
-//
-//    redefineElement.setAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, locationField.getText());
-//
-//    String existingSchemaLocation = redefineElement.getAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE);
-//
-//    // If there is no existing schemaLocation, then just set it and return
-//    if (existingSchemaLocation == null)
-//     {
-//      return;
-//    }
-//
-//    XSDConcreteComponent redefineComponent = getXSDSchema().getCorrespondingComponent(redefineElement);
-//    if (redefineComponent instanceof XSDRedefine)
-//     {
-//      XSDRedefine redefine = (XSDRedefine) redefineComponent;
-//      XSDExternalFileCleanup cleanup = new XSDExternalFileCleanup(redefine.getIncorporatedSchema());
-//      
-//      cleanup.visitSchema(getXSDSchema());
-//      if (getEditor() != null)
-//       {
-//// DisplayErrorInTaskList task = new DisplayErrorInTaskList(getEditor().getEditorIDocument(), getEditor().getFileResource(), cleanup.getMessages());
-//// task.run();
-//        
-//        // Workaround to reset included elements in XSD model
-//        getEditor().reparseSchema();
-//        getEditor().getGraphViewer().setSchema(getXSDSchema());
-//      }
-//    }
-//
-//    /* since we are reparsing, we don't need this
-//
-//     Iterator contents = getXSDSchema().getContents().iterator();
-//     while (contents.hasNext())
-//     {
-//     XSDSchemaContent content = (XSDSchemaContent)contents.next();
-//     if (content instanceof XSDSchemaDirective)
-//     {
-//     XSDSchemaDirective directive = (XSDSchemaDirective)content;
-//
-//     if (directive.getSchemaLocation().equals(oldSchemaLocation) && directive instanceof XSDRedefine)
-//     {
-//     directive.unsetSchemaLocation();
-//     directive.setSchemaLocation(locationField.getText());
-//     directive.unsetResolvedSchema();
-//     redefineElement.setAttribute(XSDConstants.SCHEMALOCATION_ATTRIBUTE, locationField.getText());
-//     getXSDSchema().updateDocument();
-//     XSDSchemaHelper.updateElement(directive);
-////          directive.updateElement();
-//     break;
-//     }
-//     }
-//     }
-//     */
-//  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/KeyrefPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/KeyrefPropertySource.java
deleted file mode 100644
index c3b4a4f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/KeyrefPropertySource.java
+++ /dev/null
@@ -1,210 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDIdentityConstraintDefinition;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class KeyrefPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String[] refComboValues = { "" };
-  /**
-   * 
-   */
-  public KeyrefPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public KeyrefPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public KeyrefPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  
-  public void setInput(Element element)
-  {
-    this.element = element;
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    java.util.List items = new ArrayList();
-
-    
-    if (xsdSchema != null)
-    {
-      Iterator iter = xsdSchema.getIdentityConstraintDefinitions().iterator();
-      String name = element.getAttribute(XSDConstants.NAME_ATTRIBUTE);
-      while (iter.hasNext())
-      {
-        XSDIdentityConstraintDefinition constraint = (XSDIdentityConstraintDefinition)iter.next();
-        if (name != null && !name.equals(""))
-         {
-          if (constraint.getName() != null)
-           {
-            if (!name.equals(constraint.getQName(xsdSchema)))
-            {
-              items.add(constraint.getQName(xsdSchema));
-            }
-          }
-        }
-        else
-         {
-          if (constraint.getName() != null)
-          {
-            items.add(constraint.getQName(xsdSchema));
-          }
-        }
-      }
-    }   
-    
-    int size = items.size() + 1;
-    refComboValues = new String[size];
-    refComboValues[0] = "";
-    if (items != null)
-     {
-      for (int i = 0; i < items.size(); i++)
-       {
-        refComboValues[i + 1] = (String) items.get(i);
-      }
-    }
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-// This property is moved to the General Tab
-//    PropertyDescriptor nameDescriptor =
-//    new TextPropertyDescriptor(
-//        XSDConstants.NAME_ATTRIBUTE,
-//        XSDConstants.NAME_ATTRIBUTE);
-//    list.add(nameDescriptor);
-    
-    XSDComboBoxPropertyDescriptor refDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.REFER_ATTRIBUTE,
-        XSDConstants.REFER_ATTRIBUTE,
-        refComboValues);
-    list.add(refDescriptor);
-    
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-
-    if (id instanceof String)
-     {
-      result = element.getAttribute((String) id);
-      if (result == null)
-       {
-        result = "";
-      }
-      return result;
-//      if (((String) id).equals(XSDConstants.REFER_ATTRIBUTE))
-//      {
-//        return result;
-//      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      if (((String) id).equals(XSDConstants.NAME_ATTRIBUTE))
-      {  
-        if (validateName(newValue))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_KEYREF_NAME_CHANGE"), element);
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-          endRecording(element);
-        }         
-      }
-      else if (((String) id).equals(XSDConstants.REFER_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_KEYREF_REFER_CHANGE"), element);
-        element.setAttribute((String) id, newValue);
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ModelGroupPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ModelGroupPropertySource.java
deleted file mode 100644
index 750b81d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ModelGroupPropertySource.java
+++ /dev/null
@@ -1,266 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class ModelGroupPropertySource  // all or sequence or choice
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String[] modelGroupComboValues = { "sequence", "choice", "all" };
-  /**
-   * 
-   */
-  public ModelGroupPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public ModelGroupPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public ModelGroupPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-
-    XSDComboBoxPropertyDescriptor modelGroupDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        "model group",
-        "model group",
-        modelGroupComboValues);
-    list.add(modelGroupDescriptor);
-    
-    PropertyDescriptor minOccursDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.MINOCCURS_ATTRIBUTE,
-        XSDConstants.MINOCCURS_ATTRIBUTE);
-    list.add(minOccursDescriptor);
-    PropertyDescriptor maxOccursDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.MAXOCCURS_ATTRIBUTE,
-        XSDConstants.MAXOCCURS_ATTRIBUTE);
-    list.add(maxOccursDescriptor);
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      String attributeName = (String)id;
-      if (result == null)
-       {
-        result = "";
-      }
-      if (attributeName.equals("model group"))
-      {
-        result = element.getLocalName();
-        return result;
-      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    String property = (String)id;
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      if (property.equals("model group"))
-       {
-        Document doc = element.getOwnerDocument();
-        Element parent = (Element)element.getParentNode();
-        String prefix = element.getPrefix();
-        prefix = prefix == null ? "" : prefix + ":";
-        Element newNode = null;
-        // int compositor = XSDCompositor.SEQUENCE;
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_GROUP_SCOPE_CHANGE"), parent);
-        changeContentModel(parent, newValue);
-        endRecording(parent);
-        XSDDOMHelper domHelper = new XSDDOMHelper();
-        setInput(domHelper.getContentModelFromParent(parent));
-      }
-      else if (property.equals(XSDConstants.MAXOCCURS_ATTRIBUTE))
-      {
-        String max = (String)value;
-        String min = element.getAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_MAXOCCURS_CHANGE"), element);
-        if (max.length() > 0)
-        {
-          element.setAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE, max);
-        }
-        else
-         {
-          element.removeAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-      else if (((String) id).equals(XSDConstants.MINOCCURS_ATTRIBUTE))
-       {
-        String min = (String)value;
-        String max = element.getAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_MINOCCURS_CHANGE"), element);
-        if (min.length() > 0)
-        {
-          element.setAttribute(XSDConstants.MINOCCURS_ATTRIBUTE, min);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-    }
-
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-
-  public void setInput(Element element)
-  {
-    super.setInput(element);
-    
-    if (element != null)
-    {
-      boolean parentIsSequence = false;
-      boolean parentIsChoice = false;
-     
-      Object parent = element.getParentNode();
-      
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SEQUENCE_ELEMENT_TAG, false))
-       {
-        parentIsSequence = true;
-      }
-      else if (XSDDOMHelper.inputEquals(parent, XSDConstants.CHOICE_ELEMENT_TAG, false))
-       {
-        parentIsChoice = true;
-      }
-      
-      if (parentIsChoice || parentIsSequence)
-      {
-        modelGroupComboValues = new String[2];
-        modelGroupComboValues[0] = XSDConstants.SEQUENCE_ELEMENT_TAG;
-        modelGroupComboValues[1] = XSDConstants.CHOICE_ELEMENT_TAG;
-      }
-      else
-      {
-        modelGroupComboValues = new String[3];
-        modelGroupComboValues[0] = XSDConstants.SEQUENCE_ELEMENT_TAG;
-        modelGroupComboValues[1] = XSDConstants.CHOICE_ELEMENT_TAG;
-        modelGroupComboValues[2] = XSDConstants.ALL_ELEMENT_TAG;
-      }
-    }      
-  }
-  
-  private void changeContentModel(Element parent, String contentModel)
-  {
-    Document doc = parent.getOwnerDocument();
-    XSDDOMHelper domHelper = new XSDDOMHelper();
-  
-    String prefix = parent.getPrefix();
-    prefix = prefix == null ? "" : prefix + ":";
-    
-    Element contentModelElement = domHelper.getContentModelFromParent(parent);
-  
-    if (contentModelElement.getLocalName().equals(contentModel))
-    {
-      return; // it's already the content model 
-    }
-  
-    Element newNode = doc.createElementNS(XSDDOMHelper.XMLSchemaURI, prefix + contentModel);
-  
-    if (contentModelElement.hasChildNodes())
-    {        
-      NodeList nodes = contentModelElement.getChildNodes();
-      // use clones so we don't have a refresh problem
-      for (int i = 0; i < nodes.getLength(); i++)
-      {
-        Node node = nodes.item(i);
-        newNode.appendChild(node.cloneNode(true)); 
-      }
-    }
-    parent.replaceChild(newNode, contentModelElement);
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/NamePropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/NamePropertySource.java
deleted file mode 100644
index bbfb786..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/NamePropertySource.java
+++ /dev/null
@@ -1,219 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalAttributeGroupRenamer;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalGroupRenamer;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class NamePropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  /**
-   * 
-   */
-  public NamePropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public NamePropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public NamePropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-
-// From attribute group    
-//    WorkbenchHelp.setHelp(client, XSDEditorContextIds.XSDE_ATTRIBUTE_GROUP_DESIGN_VIEW);
-//    WorkbenchHelp.setHelp(nameField, XSDEditorContextIds.XSDE_ATTRIBUTE_GROUP_NAME);
-
-// From unique
-//    WorkbenchHelp.setHelp(nameField, XSDEditorContextIds.XSDE_UNIQUE_BASE_NAME);
-
-// From key
-//    WorkbenchHelp.setHelp(nameField, XSDEditorContextIds.XSDE_UNIQUE_BASE_NAME);
-    
-// From group
-//     WorkbenchHelp.setHelp(controlsContainer, XSDEditorContextIds.XSDE_GROUP_DESIGN_VIEW);
-//     WorkbenchHelp.setHelp(nameField, XSDEditorContextIds.XSDE_GROUP_NAME);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    PropertyDescriptor nameDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.NAME_ATTRIBUTE,
-        XSDConstants.NAME_ATTRIBUTE);
-    list.add(nameDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-    }
-    if (result == null)
-    {
-      result = "";
-    }
-    return result;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value != null)
-    {
-      if (value instanceof String)
-      {
-        String newValue = (String)value;
-        if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, false))
-        {  
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTEGROUP_NAME_CHANGE"), element);
-
-          // now rename any references to this element
-          if (xsdSchema != null)
-          {
-            XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-            if (comp != null && comp instanceof XSDAttributeGroupDefinition && comp.getContainer().equals(xsdSchema))
-            {
-              GlobalAttributeGroupRenamer renamer = new GlobalAttributeGroupRenamer((XSDNamedComponent)comp, (String)value);
-              renamer.visitSchema(xsdSchema);
-            }
-          }
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, (String)value);
-          endRecording(element);
-        }
-        else if (XSDDOMHelper.inputEquals(element, XSDConstants.UNIQUE_ELEMENT_TAG, false))
-        {
-          if (validateName(newValue))
-           {
-            beginRecording(XSDEditorPlugin.getXSDString("_UI_UNIQUE_NAME_CHANGE"), element);
-            if (newValue.length() > 0)
-            {
-              element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-            }
-            else
-            {
-              element.setAttribute(XSDConstants.NAME_ATTRIBUTE, "");
-            }
-            endRecording(element);
-          }
-        }
-        else if (XSDDOMHelper.inputEquals(element, XSDConstants.KEY_ELEMENT_TAG, false))
-        {
-          if (validateName(newValue))
-          {
-            beginRecording(XSDEditorPlugin.getXSDString("_UI_KEY_NAME_CHANGE"), element);
-            if (newValue.length() > 0)
-            {
-              element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-            }
-            else
-            {
-              element.setAttribute(XSDConstants.NAME_ATTRIBUTE, "");
-            }
-            endRecording(element);
-          }
-        }
-        else if (XSDDOMHelper.inputEquals(element, XSDConstants.GROUP_ELEMENT_TAG, false))
-        {
-          if (validateName(newValue))
-           {
-            beginRecording(XSDEditorPlugin.getXSDString("_UI_GROUP_NAME_CHANGE"), element);
-            // now rename any references to this element
-            if (xsdSchema != null)
-             {
-              XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-              if (comp != null && comp instanceof XSDModelGroupDefinition && comp.getContainer().equals(xsdSchema))
-              {
-                GlobalGroupRenamer renamer = new GlobalGroupRenamer((XSDNamedComponent)comp, newValue);
-                renamer.visitSchema(xsdSchema);
-              }
-            }
-            element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-            endRecording(element);
-          }
-          
-        }
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/NotationPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/NotationPropertySource.java
deleted file mode 100644
index 573d83d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/NotationPropertySource.java
+++ /dev/null
@@ -1,186 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-public class NotationPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  /**
-   * 
-   */
-  public NotationPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public NotationPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public NotationPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-// Removed for tabbed properties
-//    PropertyDescriptor nameDescriptor =
-//    new TextPropertyDescriptor(
-//        XSDConstants.NAME_ATTRIBUTE,
-//        XSDConstants.NAME_ATTRIBUTE);
-//    list.add(nameDescriptor);
-
-    PropertyDescriptor publicDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.PUBLIC_ATTRIBUTE,
-        XSDConstants.PUBLIC_ATTRIBUTE);
-    list.add(publicDescriptor);
-    
-    PropertyDescriptor systemDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.SYSTEM_ATTRIBUTE,
-        XSDConstants.SYSTEM_ATTRIBUTE);
-    list.add(systemDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-    
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-    }
-    if (result == null)
-    {
-      result = "";
-    }
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      if (((String)id).equals(XSDConstants.NAME_ATTRIBUTE))
-      {
-        if (validateName(newValue))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_NOTATION_NAME_CHANGE"), element);
-          if (newValue.length() > 0)
-          {
-            element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-          }
-          else
-          {
-            element.setAttribute(XSDConstants.NAME_ATTRIBUTE, "");
-          }
-          endRecording(element);
-        }
-      }
-      else if (((String)id).equals(XSDConstants.PUBLIC_ATTRIBUTE))
-       {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_NOTATION_PUBLIC_CHANGE"), element);
-        if (newValue.length() > 0)
-        {
-          element.setAttribute(XSDConstants.PUBLIC_ATTRIBUTE, newValue);
-        }
-        else
-        {
-          element.setAttribute(XSDConstants.PUBLIC_ATTRIBUTE, "");
-        }
-        endRecording(element);
-      }
-      else if (((String)id).equals(XSDConstants.SYSTEM_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_NOTATION_SYSTEM_CHANGE"), element);
-        if (newValue.length() > 0)
-        {
-          element.setAttribute(XSDConstants.SYSTEM_ATTRIBUTE, newValue);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.SYSTEM_ATTRIBUTE);
-        }
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/OptionsTextCellEditor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/OptionsTextCellEditor.java
deleted file mode 100644
index 3f0e591..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/OptionsTextCellEditor.java
+++ /dev/null
@@ -1,241 +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.xsd.ui.internal.properties;
-
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Layout;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-
-
-public abstract class OptionsTextCellEditor extends CellEditor implements SelectionListener, KeyListener
-{
-	private Composite fEditor;
-	protected Text fText;
-  protected boolean isTextReadOnly;
-	Button moreButton;
-	Shell dialog;
-
-	private String fSelection;
-	protected Object fValue;
-	int selection;
-	Object typeObject;
-		
-	private class ComboCellLayout extends Layout 
-	{
-		public void layout(Composite editor, boolean force)
-		{
-			Rectangle bounds= editor.getClientArea();
-			Point size= moreButton.computeSize(SWT.DEFAULT, bounds.height, force);
-			fText.setBounds(0, 0, bounds.width - size.x, bounds.height);
-			moreButton.setBounds(bounds.width - size.x, 0, size.x, size.y);
-		}
-		
-		public Point computeSize(Composite editor, int wHint, int hHint, boolean force)
-		{
-			if (wHint != SWT.DEFAULT && hHint != SWT.DEFAULT)
-			{
-				return new Point(wHint, hHint);
-			}
-			Point size= fText.computeSize(SWT.DEFAULT, SWT.DEFAULT, force);
-//			size.x += moreButton.computeSize(SWT.DEFAULT, SWT.DEFAULT, force).x;
-			return size;
-		}
-	}
-
-/**
- * Creates a new combo box cell editor with the given choices.
- */
-	 public OptionsTextCellEditor(Composite parent)
-	 {
-		 super(parent);
-		 fSelection = "";
-	 }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.CellEditor#createControl(org.eclipse.swt.widgets.Composite)
-   */
-	protected Control createControl(Composite parent)
-	{
-		fEditor = ViewUtility.createComposite(parent, 2);
-		fEditor.setLayout(new ComboCellLayout());
- 
-    if (isTextReadOnly)
-    {
-		  fText = new Text(fEditor, SWT.LEFT | SWT.READ_ONLY);
-    }
-    else
-    {
-      fText = new Text(fEditor, SWT.LEFT);
-    }
-//    fText.setEnabled(false);
-
-		fText.setBackground(parent.getBackground());
-		fText.setText("");
-    fText.addKeyListener(this);
-		fText.addFocusListener(new FocusAdapter()
-    {
-			public void focusLost(FocusEvent e)
-      {
-				if (!moreButton.isFocusControl())
-				{
-					OptionsTextCellEditor.this.focusLost();
-				}
-			}
-		});
-			
-		moreButton = ViewUtility.createPushButton(fEditor, "...");
-		moreButton.addSelectionListener(new SelectionAdapter()
-		{
-			public void widgetSelected(SelectionEvent e)
-			{
-				// System.out.println("More Button Clicked");
-				openDialog();
-			}
-		});
-    moreButton.addKeyListener(this);
-		moreButton.addFocusListener(new FocusAdapter() {
-			public void focusLost(FocusEvent e) {
-				if (!fText.isFocusControl() && (dialog==null || 
-								dialog.isDisposed() || 
-								(dialog!=null && !dialog.isFocusControl())))
-				{
-          // System.out.println("MoreButton focusLost");
-					OptionsTextCellEditor.this.focusLost();
-				}
-			}
-		});
-
-
-		setValueValid(true);
-
-		return fEditor;
-	}
-  
-  public void activate()
-  {
-    // System.out.println("Cell editor activated");
-    fText.setText(fValue == null ? "" : fValue.toString());
-  }
-
-	protected void focusLost() {
-		// System.out.println("CELLEDITOR FOCUS LOST");
-		if (isActivated()) {
-			applyEditorValueAndDeactivate();
-		}
-	}
-
-	void applyEditorValueAndDeactivate() {
-		//	must set the selection before getting value
-//		if (dialog != null  && !dialog.isDisposed())
-//		{
-//			dialog.close();
-//			dialog.dispose();
-//		}
-		fireApplyEditorValue();
-		deactivate();
-	}
-
-  public void keyPressed(KeyEvent e)
-  {
-    if (e.character == SWT.ESC)
-     { // Escape character
-      fireCancelEditor();
-    }
-    else if ((e.character == SWT.CR) || (e.character == SWT.LF))
-     { // Return key
-      applyEditorValueAndDeactivate();
-    }
-  }
-  
-  public void keyReleased(KeyEvent e)
-  {
-    
-  }
-  
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.CellEditor#doGetValue()
-   * Returns the cell editor's value.
-	 */
-	protected Object doGetValue() 
-	{
-		return fValue;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.CellEditor#doSetFocus()
-   * Set the focus to the cell editor's UI representation.
-   */
-	protected void doSetFocus()
-	{
-//		fButton.setFocus();
-//		System.out.println("doSetFocus() " + moreButton.setFocus());
-		fText.setFocus();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.CellEditor#doSetValue(java.lang.Object)
-	 * Sets the value of the cell editor to the given value.
-   */
-	protected void doSetValue(Object value)
-	{
-		fValue = value;
-	}
-
-  protected Point getButtonAbsoluteLocation()
-  {
-    Rectangle buttonBounds = moreButton.getBounds();
-    int x = buttonBounds.x;
-    int y = buttonBounds.y;
-    Control c = moreButton;
-    while (c != null)
-     {
-      c = c.getParent();
-      if (c == null)
-        break;
-      x += c.getBounds().x;
-      y += c.getBounds().y;
-    }
-    x += buttonBounds.width + 5;
-    y += buttonBounds.height;
-    Point p = new Point(x,y);
-    return p;
-  }
-  
-  protected void cancel()
-  {
-    dialog.close();
-    dialog.dispose();
-  }
-
-	protected abstract void openDialog();	
-  
-	public void widgetSelected(SelectionEvent e)
-	{
-	}
-	public void widgetDefaultSelected(SelectionEvent e)
-  {
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/PatternPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/PatternPropertySource.java
deleted file mode 100644
index 38f166a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/PatternPropertySource.java
+++ /dev/null
@@ -1,272 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.DialogCellEditor;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.wizards.RegexWizard;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-public class PatternPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  /**
-   * 
-   */
-  public PatternPropertySource()
-  {
-    super();
-//    expressionField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_PATTERN"));    
-//    WorkbenchHelp.setHelp(expressionField, XSDEditorContextIds.XSDE_PATTERN_VALUE);
-//    WorkbenchHelp.setHelp(activateWizardButton, XSDEditorContextIds.XSDE_PATTERN_REGULAR);
-//    activateWizardButton.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_BUTTON"));
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public PatternPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public PatternPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-
-    PatternTextPropertyDescriptor patternDescriptor =
-    new PatternTextPropertyDescriptor(
-        XSDConstants.VALUE_ATTRIBUTE, 
-        XSDConstants.VALUE_ATTRIBUTE);
-    list.add(patternDescriptor);
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-    }
-    if (result == null)
-    {
-      result = "";
-    }
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      if (((String) id).equals(XSDConstants.VALUE_ATTRIBUTE))
-      { 
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_PATTERN_VALUE_CHANGE"), element);
-        element.setAttribute(XSDConstants.VALUE_ATTRIBUTE, (String)value);
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-
-  public class PatternTextPropertyDescriptor extends PropertyDescriptor
-  {
-    /**
-     * @param id
-     * @param displayName
-     */
-    public PatternTextPropertyDescriptor(Object id, String displayName)
-    {
-      super(id, displayName);
-    }
-    
-    public CellEditor createPropertyEditor(Composite parent)
-    {
-      // CellEditor editor = new PatternTextCellEditor(parent);
-      CellEditor editor = new PatternDialogCellEditor(parent);
-      if (getValidator() != null)
-        editor.setValidator(getValidator());
-      return editor;
-    }
-  }   
-
-  public class PatternDialogCellEditor extends DialogCellEditor {
-
-    /**
-     * Creates a new Font dialog cell editor parented under the given control.
-     * The cell editor value is <code>null</code> initially, and has no 
-     * validator.
-     *
-     * @param parent the parent control
-     */
-    protected PatternDialogCellEditor(Composite parent) {
-      super(parent);
-    }
-
-    /**
-     * @see org.eclipse.jface.viewers.DialogCellEditor#openDialogBox(Control)
-     */
-    protected Object openDialogBox(Control cellEditorWindow)
-    {
-      String initialValue = element.getAttribute(XSDConstants.VALUE_ATTRIBUTE);
-      if (initialValue == null)
-      {
-        initialValue = "";
-      }
-      RegexWizard wizard = new RegexWizard(initialValue);
-      Shell shell = Display.getCurrent().getActiveShell();
-      WizardDialog wizardDialog = new WizardDialog(shell, wizard);
-      wizardDialog.create();
-      
-      String value = (String)getValue();
-
-      int result = wizardDialog.open();
-
-      if (result == Window.OK)
-      {
-        return wizard.getPattern();
-      }
-      return value;
-    }
-
-  }
-  
-//  class PatternTextCellEditor extends OptionsTextCellEditor
-//  {
-//    protected Button fixedButton, defaultButton;
-//    
-//    public PatternTextCellEditor(Composite parent)
-//    {
-//      super(parent);
-//    }
-//
-//    protected Control createControl(Composite parent)
-//    {
-//      isTextReadOnly = false;
-//      return super.createControl(parent);
-//    }
-//
-//    protected void openDialog()
-//    {
-//      RegexWizard wizard = new RegexWizard(element.getAttribute(XSDConstants.VALUE_ATTRIBUTE));
-//      Shell shell = Display.getCurrent().getActiveShell();
-//      WizardDialog wizardDialog = new WizardDialog(shell, wizard);
-//      wizardDialog.create();
-//      
-//      dialog = wizardDialog.getShell();
-//      Display display = dialog.getDisplay();
-//      dialog.addShellListener(new ShellAdapter()
-//      {
-//        public void shellDeactivated(ShellEvent e)
-//        {
-//          cancel();
-//        }
-//      });
-//
-//      int result = wizardDialog.open();
-//
-//      if (result == Window.OK)
-//      {
-//        fText.setText(wizard.getPattern());
-//        applyEditorValueAndDeactivate();
-//      }
-//      
-//    }
-//
-//    protected void cancel()
-//    {
-//      super.cancel();
-//    }
-//
-//    void applyEditorValueAndDeactivate()
-//    {
-//      String value = fText.getText();
-//      doSetValue(value);
-//      fireApplyEditorValue();
-//      deactivate();
-//    }
-//    
-//    protected Object doGetValue()
-//    { 
-//      fValue = fText.getText();
-//      return fText.getText();
-//    }
-//
-//  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ReadOnlyPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ReadOnlyPropertySource.java
deleted file mode 100644
index 0f5cb7f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/ReadOnlyPropertySource.java
+++ /dev/null
@@ -1,76 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-
-public class ReadOnlyPropertySource implements IPropertySource
-{
-	protected Element element;
-
-	public ReadOnlyPropertySource(IEditorPart editPart, Element element)
-	{
-			this.element = element;
-	}
-
-	public Object getEditableValue()
-	{
-			return null;
-	}
-
-	public IPropertyDescriptor[] getPropertyDescriptors()
-	{
-			List list = new ArrayList();
-			NamedNodeMap map = element.getAttributes();
-			int mapLength = map.getLength();
-			for (int i = 0; i < mapLength; i++)
-			{
-					Attr attr = (Attr) map.item(i);
-					list.add(new PropertyDescriptor(attr.getName(), attr.getName()));
-			}
-			IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-			list.toArray(result);
-			return result;
-	}
-
-	public Object getPropertyValue(Object id)
-	{
-			Object result = null;
-			if (id instanceof String)
-			{
-					result = element.getAttribute((String) id);
-			}
-			return result != null ? result : "";
-	}
-
-	public boolean isPropertySet(Object id)
-	{
-			return false;
-	}
-
-	public void resetPropertyValue(Object id)
-	{
-	}
-
-	public void setPropertyValue(Object id, Object value)
-	{
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SchemaDirectiveHelperPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SchemaDirectiveHelperPropertySource.java
deleted file mode 100644
index b8e1ed2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SchemaDirectiveHelperPropertySource.java
+++ /dev/null
@@ -1,191 +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.xsd.ui.internal.properties;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.DialogCellEditor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.views.navigator.ResourceNavigator;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.wst.common.ui.viewers.ResourceFilter;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.wizards.XSDSelectIncludeFileWizard;
-import org.eclipse.xsd.XSDSchema;
-
-public abstract class SchemaDirectiveHelperPropertySource
-  extends BasePropertySource
-{
-  protected IFile currentIFile;
-
-  IFile selectedIFile;
-  String selectedNamespace;
-  XSDSchema selectedXSDSchema;
-  boolean isInclude;
-  /**
-   * 
-   */
-  public SchemaDirectiveHelperPropertySource(boolean isInclude)
-  {
-    super();
-    this.isInclude = isInclude;
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public SchemaDirectiveHelperPropertySource(
-    Viewer viewer,
-    XSDSchema xsdSchema,
-    boolean isInclude)
-  {
-    super(viewer, xsdSchema);
-    this.isInclude = isInclude;
-  }
-  /**
-   * @param xsdSchema
-   */
-  public SchemaDirectiveHelperPropertySource(XSDSchema xsdSchema, boolean isInclude)
-  {
-    super(xsdSchema);
-    this.isInclude = isInclude;
-  }
-
-  
-  public class SchemaLocationPropertyDescriptor extends PropertyDescriptor
-  {
-    /**
-     * @param id
-     * @param displayName
-     */
-    public SchemaLocationPropertyDescriptor(Object id, String displayName)
-    {
-      super(id, displayName);
-    }
-    
-    public CellEditor createPropertyEditor(Composite parent)
-    {
-      CellEditor editor = new SchemaLocationDialogCellEditor(parent);
-      if (getValidator() != null)
-        editor.setValidator(getValidator());
-      return editor;
-    }
-  }
-
-  public class SchemaLocationDialogCellEditor extends DialogCellEditor {
-
-    /**
-     * Creates a new Font dialog cell editor parented under the given control.
-     * The cell editor value is <code>null</code> initially, and has no 
-     * validator.
-     *
-     * @param parent the parent control
-     */
-    protected SchemaLocationDialogCellEditor(Composite parent) {
-      super(parent);
-    }
-
-    /**
-     * @see org.eclipse.jface.viewers.DialogCellEditor#openDialogBox(Control)
-     */
-    protected Object openDialogBox(Control cellEditorWindow)
-    {
-      Shell shell = Display.getCurrent().getActiveShell();
-      
-//      oldSchemaLocation = locationField.getText().trim();
-//      IFile currentIFile = ((IFileEditorInput)getIEditorPart().getEditorInput()).getFile();
-      ViewerFilter filter = new ResourceFilter(new String[] { ".xsd" }, 
-      new IFile[] { currentIFile },
-      null);
-//
-
-      IViewPart viewParts[] = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getViews();
-      ResourceNavigator resourceNav = null;
-      for (int i = 0; i < viewParts.length; i++) 
-       {
-        if (viewParts[i] instanceof ResourceNavigator) 
-         {
-          resourceNav = (ResourceNavigator) viewParts[i];
-          break;
-        }
-      }
-      IStructuredSelection selection = StructuredSelection.EMPTY;
-      if (resourceNav != null)
-       {
-        selection = (IStructuredSelection)resourceNav.getViewSite().getSelectionProvider().getSelection();
-      }
-      
-      XSDSelectIncludeFileWizard fileSelectWizard = 
-      new XSDSelectIncludeFileWizard(xsdSchema, isInclude,
-          XSDEditorPlugin.getXSDString("_UI_FILEDIALOG_SELECT_XML_SCHEMA"),
-          XSDEditorPlugin.getXSDString("_UI_FILEDIALOG_SELECT_XML_DESC"),
-          filter,
-          selection);
-
-      WizardDialog wizardDialog = new WizardDialog(shell, fileSelectWizard);
-      wizardDialog.create();
-      wizardDialog.setBlockOnOpen(true);
-      int result = wizardDialog.open();
-
-      
-      String value = (String)getValue();
-      // System.out.println("VALUE IS *** = " + value);
-      if (result == Window.OK)
-      {
-        selectedIFile = fileSelectWizard.getResultFile();
-        String schemaFileString = value;
-        if (selectedIFile != null) 
-         {
-          schemaFileString = URIHelper.getRelativeURI(selectedIFile.getLocation(), currentIFile.getLocation());
-        }
-        else
-         {
-          schemaFileString = fileSelectWizard.getURL();
-        }
-
-//        updateExternalModel(selectedIFile, fileSelectWizard.getNamespace(), fileSelectWizard.getExternalSchema());
-        selectedNamespace = fileSelectWizard.getNamespace();
-        selectedXSDSchema = fileSelectWizard.getExternalSchema();
-        
-        return schemaFileString;
-      }
-      return value;
-    }
-  }
-
-  public IFile getSelectedIFile()
-  {
-    return selectedIFile;
-  }
-  
-  public String getSelectedNamespace()
-  {
-    return selectedNamespace;
-  }
-  
-  public XSDSchema getSelectedXSDSchema()
-  {
-    return selectedXSDSchema;
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SchemaPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SchemaPropertySource.java
deleted file mode 100644
index 051c3c8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SchemaPropertySource.java
+++ /dev/null
@@ -1,530 +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.xsd.ui.internal.properties;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.TargetNamespaceChangeHandler;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDSchemaHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class SchemaPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String oldPrefix = "";
-  private String oldNamespace = "";
-  
-  private String[] attributeFormDefaultComboValues =
-  { 
-    "",
-    XSDEditorPlugin.getXSDString("_UI_COMBO_UNQUALIFIED"),
-    XSDEditorPlugin.getXSDString("_UI_COMBO_QUALIFIED")
-  };
-  
-  private String[] elementFormDefaultComboValues =
-  {
-    "",
-    XSDEditorPlugin.getXSDString("_UI_COMBO_UNQUALIFIED"),
-    XSDEditorPlugin.getXSDString("_UI_COMBO_QUALIFIED")
-  };
-
-  private String[] blockDefaultComboValues =
-  {
-    "",
-    "#all",
-    "extension",
-    "restriction",
-    "substitution"
-  };
-
-  private String[] finalDefaultComboValues =
-  {
-    "",
-    "#all",
-    "extension",
-    "restriction"
-  };
-  
-  /**
-   * 
-   */
-  public SchemaPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public SchemaPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public SchemaPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-// These have been moved to the General tab    
-//    PropertyDescriptor prefixDescriptor = 
-//    new TextPropertyDescriptor(
-//        "prefix",
-//        "prefix");
-//    list.add(prefixDescriptor);
-//    prefixDescriptor.setCategory("Namespace");
-//
-//    PropertyDescriptor targetNamespaceDescriptor = 
-//    new TextPropertyDescriptor(
-//        XSDConstants.TARGETNAMESPACE_ATTRIBUTE,
-//        XSDConstants.TARGETNAMESPACE_ATTRIBUTE);
-//    list.add(targetNamespaceDescriptor);
-//    targetNamespaceDescriptor.setCategory("Namespace");
-    
-    PropertyDescriptor versionDescriptor = 
-    new TextPropertyDescriptor(
-        XSDConstants.VERSION_ATTRIBUTE,
-        XSDConstants.VERSION_ATTRIBUTE);
-//    versionDescriptor.setDescription("Version attribute"); // XSDEditorPlugin.getXSDString("_UI_TOOLTIP_VERSION"));
-    list.add(versionDescriptor);
-    PropertyDescriptor xmlLangDescriptor = 
-    new TextPropertyDescriptor(
-        "xml:lang",
-        "xml:lang");
-    list.add(xmlLangDescriptor);
-    
-    XSDComboBoxPropertyDescriptor attributeFormDefaultDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.ATTRIBUTEFORMDEFAULT_ATTRIBUTE,
-        XSDConstants.ATTRIBUTEFORMDEFAULT_ATTRIBUTE,
-        attributeFormDefaultComboValues);
-    list.add(attributeFormDefaultDescriptor);
-    
-    
-    XSDComboBoxPropertyDescriptor elementFormDefaultDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.ELEMENTFORMDEFAULT_ATTRIBUTE,
-        XSDConstants.ELEMENTFORMDEFAULT_ATTRIBUTE,
-        elementFormDefaultComboValues);
-    list.add(elementFormDefaultDescriptor);
-    
-    XSDComboBoxPropertyDescriptor blockDefaultDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.BLOCKDEFAULT_ATTRIBUTE,
-        XSDConstants.BLOCKDEFAULT_ATTRIBUTE,
-        blockDefaultComboValues);
-    list.add(blockDefaultDescriptor);
-    XSDComboBoxPropertyDescriptor finalDefaultDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        XSDConstants.FINALDEFAULT_ATTRIBUTE,
-        XSDConstants.FINALDEFAULT_ATTRIBUTE,
-        finalDefaultComboValues);
-    list.add(finalDefaultDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-    //    return propertyDescriptors;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      String attributeName = (String)id;
-      if (result == null)
-      {
-        result = "";
-      }
-
-      if (attributeName.equals("prefix"))
-      {
-        TypesHelper helper = new TypesHelper(xsdSchema);
-        String aPrefix = helper.getPrefix(element.getAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE), false);
-        // System.out.println("schema targetNS is " + xsdSchema.getTargetNamespace());
-        if (aPrefix != null && aPrefix.length() > 0)
-        {
-          return aPrefix;
-        }
-        return "";        
-      }
-      else
-      {
-        return result;
-      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      String attributeName = (String)id;
-      if (attributeName.equals("prefix"))
-      {
-        updatePrefix(newValue); 
-      }
-      else if (attributeName.equals(XSDConstants.TARGETNAMESPACE_ATTRIBUTE))
-      {
-        updateTargetNamespace(newValue);
-      }
-      else if (attributeName.equals("xml:lang"))
-      {
-        validateLanguage(newValue);
-        // return;  // we will accept the value even though it does not conform
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_SCHEMA_LANG_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.VERSION_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_SCHEMA_VERSION_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.ATTRIBUTEFORMDEFAULT_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_SCHEMA_ATTRIBUTEFORMDEFAULT_CHANGE"), element);
-      }
-      else if (attributeName.equals(XSDConstants.ELEMENTFORMDEFAULT_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_SCHEMA_ELEMENTFORMDEFAULT_CHANGE"), element); 
-      }
-      else if (attributeName.equals(XSDConstants.BLOCKDEFAULT_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_SCHEMA_BLOCKDEFAULT_CHANGE"), element); 
-      }
-      else if (attributeName.equals(XSDConstants.FINALDEFAULT_ATTRIBUTE))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_SCHEMA_FINALDEFAULT_CHANGE"), element);
-      }
-
-      if (!attributeName.equals("prefix") && !attributeName.equals(XSDConstants.TARGETNAMESPACE_ATTRIBUTE))
-      {        
-        if (newValue.equals(""))
-        {
-          element.removeAttribute(attributeName); 
-        }
-        else
-        {
-          element.setAttribute(attributeName, newValue);
-        }
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-        viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-
-  public void setInput(Element element)
-  {
-    super.setInput(element);
-    
-    oldNamespace = "";
-    oldPrefix = "";
-    
-    if (element!= null)
-    {
-      String targetNamespace = element.getAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE);
-      oldNamespace = targetNamespace;
-
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      String aPrefix = helper.getPrefix(targetNamespace, false);
-      if (aPrefix != null && aPrefix.length() > 0)
-      {
-        oldPrefix = aPrefix;
-      }
-    }
-
-//  For debugging
-//    System.out.println("old Prefix is " + oldPrefix);
-//    System.out.println("old NS is " + oldNamespace);
-    if (xsdSchema != null)
-    {
-      Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-//      System.out.println("SetInput: Prefixes: " + map.values());
-//      System.out.println("SetInput: NS:" + map.keySet());
-    }
-    
-  }
-  
-  
-  private void updatePrefix(String newPrefix)
-  {
-    updateNamespaceInfo(newPrefix, oldNamespace);  
-  }
-  
-  private void updateTargetNamespace(String newTargetNamespace)
-  {
-    updateNamespaceInfo(oldPrefix, newTargetNamespace);
-  }
-  
-  private void updateNamespaceInfo(String newPrefix, String newTargetNamespace)
-  {
-//    System.out.println("\nold Prefix is " + oldPrefix);
-//    System.out.println("old NS is " + oldNamespace);
-//    System.out.println("new Prefix is " + newPrefix);
-//    System.out.println("new NS is " + newTargetNamespace);
-    
-    DocumentImpl doc = (DocumentImpl)element.getOwnerDocument();
-
-    String modelTargetNamespace = xsdSchema.getTargetNamespace();
-//    System.out.println("Model TargetNS is " + modelTargetNamespace);
-    if (modelTargetNamespace == null)
-    {
-      modelTargetNamespace = "";
-    }
-        
-    String targetNamespace = newTargetNamespace.trim(); 
-    String prefix = newPrefix.trim();
-
-    if (!validatePrefix(prefix) || !validateTargetNamespace(targetNamespace))
-    {
-      return;
-    }
-        
-    if (prefix.length() > 0 && targetNamespace.length() == 0)
-    {
-       // can't have blank targetnamespace and yet specify a prefix
-       return;
-    }
-
-    doc.getModel().beginRecording(this, "Target Namespace Change");
-    String xsdForXSDPrefix = xsdSchema.getSchemaForSchemaQNamePrefix();
-    Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-
-// For debugging
-//        System.out.println("1. SW Map is " + map.values());
-//        System.out.println("1. SW Map keys are " + map.keySet());
-
-    // Check if prefix is blank
-    // if it is, then make sure we have a prefix 
-    // for schema for schema
-    if (prefix.length() == 0)
-    {
-      // if prefix for schema for schema is blank
-      // then set it to value specified in preference
-      // and update ALL nodes with this prefix
-      if (xsdForXSDPrefix == null || (xsdForXSDPrefix != null && xsdForXSDPrefix.trim().length() == 0))
-      {
-        // get preference prefix
-        xsdForXSDPrefix = XSDEditorPlugin.getPlugin().getXMLSchemaPrefix();
-        // get a unique prefix by checking what's in the map
-
-        xsdForXSDPrefix = getUniqueSchemaForSchemaPrefix(xsdForXSDPrefix, map);
-        element.setAttribute("xmlns:" + xsdForXSDPrefix, XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001);
-
-        updateAllNodes(element, xsdForXSDPrefix);
-            
-        // remove the old xmlns attribute for the schema for schema
-        if (element.getAttribute("xmlns") != null &&
-            element.getAttribute("xmlns").equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001))
-        {
-          element.removeAttribute("xmlns");
-        }
-      }
-    }
-
-    if (targetNamespace.length() > 0 ||
-       (targetNamespace.length() == 0 && prefix.length() == 0))
-    {
-      // clean up the old prefix for this schema
-      if (oldPrefix != null && oldPrefix.length() > 0)
-      {
-        element.removeAttribute("xmlns:"+oldPrefix);
-//            element.setAttribute("xmlns:" + prefix, targetNamespace);
-//            java.util.Map prefixToNameSpaceMap = xsdSchema.getQNamePrefixToNamespaceMap();
-//            prefixToNameSpaceMap.remove(oldPrefix);
-      }
-      else // if no prefix
-      {
-        if (element.getAttribute("xmlns") != null)
-        {
-          if (!element.getAttribute("xmlns").equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001))
-           {
-            element.removeAttribute("xmlns");
-          }
-        }
-      }
-    }
-
-    if (targetNamespace.length() > 0)
-    {
-      if (!modelTargetNamespace.equals(targetNamespace))
-      {
-        element.setAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE, targetNamespace);
-      }
-      // now set the new xmlns:prefix attribute
-      if (prefix.length() > 0)
-      {
-        element.setAttribute("xmlns:" + prefix, targetNamespace);
-      }
-      else
-      {
-        element.setAttribute("xmlns", targetNamespace);
-      }
-      // set the targetNamespace attribute
-    }
-    else // else targetNamespace is blank
-    {
-      if (prefix.length() == 0)
-      {
-        element.removeAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE);
-      }
-    }
-
-//    System.out.println("1.5 SW Map is " + map.values());
-//    System.out.println("1.5 SW Map keys are " + map.keySet());
-    
-    // do our own referential integrity
-    TargetNamespaceChangeHandler targetNamespaceChangeHandler = new TargetNamespaceChangeHandler(xsdSchema, oldNamespace, targetNamespace);
-    targetNamespaceChangeHandler.resolve();
-
-    oldPrefix = prefix;
-    oldNamespace = targetNamespace;
-    
-    XSDSchemaHelper.updateElement(xsdSchema);
-    
-    doc.getModel().endRecording(this);
-
-// For debugging
-        map = xsdSchema.getQNamePrefixToNamespaceMap();
-//        System.out.println("2. SW Map is " + map.values());
-//        System.out.println("2. SW Map keys are " + map.keySet());
-  }
-
-
-  private String getUniqueSchemaForSchemaPrefix(String xsdForXSDPrefix, Map map)
-  {
-    if (xsdForXSDPrefix == null || (xsdForXSDPrefix != null && xsdForXSDPrefix.trim().length() == 0))
-     {       
-      xsdForXSDPrefix = "xsd";
-    }
-    // ensure prefix is unique
-    int prefixExtension = 1;
-    while (map.containsKey(xsdForXSDPrefix) && prefixExtension < 100)
-     {
-      xsdForXSDPrefix = xsdForXSDPrefix + String.valueOf(prefixExtension);
-      prefixExtension++;
-    }
-    return xsdForXSDPrefix;
-  }
-
-  private void updateAllNodes(Element element, String prefix)
-  {
-    element.setPrefix(prefix);
-    NodeList list = element.getChildNodes();
-    if (list != null)
-    {
-      for (int i=0; i < list.getLength(); i++)
-      {
-        Node child = list.item(i);
-        if (child != null && child instanceof Element)
-        {
-          child.setPrefix(prefix);
-          if (child.hasChildNodes())
-          {
-            updateAllNodes((Element)child, prefix);
-          }
-        }
-      }
-    }   
-  }
-
-  protected boolean validateTargetNamespace(String ns)
-  {
-    // will allow blank namespace !!
-    if (ns.equals(""))
-     {
-      return true;
-    }
-    
-    String errorMessage = null;
-    try
-    {
-      URI testURI = new URI(ns);
-    }
-    catch (URISyntaxException e)
-    {
-      errorMessage = XSDEditorPlugin.getXSDString("_WARN_INVALID_TARGET_NAMESPACE");
-    }
-    
-    if (errorMessage == null || errorMessage.length() == 0)
-     {
-      return true;
-    }
-    return false;
-  }
-  
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleContentPropertyDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleContentPropertyDescriptor.java
deleted file mode 100644
index 1948146..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleContentPropertyDescriptor.java
+++ /dev/null
@@ -1,209 +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.xsd.ui.internal.properties;
-
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xsd.ui.internal.properties.section.SimpleContentBaseTypeOptionsDialog;
-import org.eclipse.xsd.XSDSchema;
-import org.w3c.dom.Element;
-
-public class SimpleContentPropertyDescriptor extends TypesPropertyDescriptor
-{
-  public SimpleContentPropertyDescriptor(Object id, String displayName, Element element, XSDSchema xsdSchema)
-  {
-    super(id, displayName, element, xsdSchema);
-  }
-  
-  public CellEditor createPropertyEditor(Composite parent)
-  {
-    // CellEditor editor = new SimpleContentBaseTypeOptionsTextCellEditor(parent);
-    CellEditor editor = new SimpleContentBaseTypeDialogCellEditor(parent);
-    if (getValidator() != null)
-      editor.setValidator(getValidator());
-    return editor;
-  }
-  
-  public class SimpleContentBaseTypeDialogCellEditor extends TypesDialogCellEditor
-  {
-
-    /**
-     * Creates a new Font dialog cell editor parented under the given control.
-     * The cell editor value is <code>null</code> initially, and has no 
-     * validator.
-     *
-     * @param parent the parent control
-     */
-    protected SimpleContentBaseTypeDialogCellEditor(Composite parent)
-    {
-      super(parent);
-    }
-
-    protected Object openDialogBox(Control cellEditorWindow)
-    {
-	    Shell shell = Display.getCurrent().getActiveShell();
-	    
-	    // SimpleContentBaseTypeOptionsDialog dialog = new SimpleContentBaseTypeOptionsDialog(shell);
-	    SimpleContentBaseTypeOptionsDialog dialog = new SimpleContentBaseTypeOptionsDialog(shell, element, property, xsdSchema);
-
-	    dialog.setBlockOnOpen(true);
-	    dialog.create();
-	    
-	    String value = (String)getValue();
-	
-	    int result = dialog.open();
-	
-	    if (result == Window.OK)
-	    {
-	      value = dialog.getType();
-	      return value;
-	    }
-	    deactivate();
-	    return value;
-	  }
-  }
-
-//  class SimpleContentBaseTypeOptionsDialog extends TypesDialog
-//  {
-//    public SimpleContentBaseTypeOptionsDialog(Shell shell)
-//    {
-//      super(shell);
-//      showAnonymous = false;
-//    }
-//
-////    protected void ok()
-////    {
-////      TableItem[] items = table.getItems();
-////      selection = table.getSelectionIndex();
-////      if (items != null && items.length > 0 && selection >= 0)
-////       {
-////        typeObject = items[selection].getData();
-////      }
-////      System.out.println("typeObject is " + typeObject);
-////
-////      doSetValue(typeObject);
-////      applyEditorValueAndDeactivate();
-////      dialog.close();
-////    }
-//    
-//    public void handleSetInput()
-//    {
-//      XSDDOMHelper domHelper = new XSDDOMHelper();
-//      typeSection.getSimpleType().setSelection(false);
-//      typeSection.getUserSimpleType().setSelection(false);
-//      typeSection.getUserComplexType().setSelection(false);
-//      showAnonymous = false;
-//      if (element != null)
-//      {
-//        String derivedBy = domHelper.getDerivedByName(element);
-//        String baseType = domHelper.getBaseType(element);
-//        boolean derivedByRestriction = true;
-//        
-//        if (XSDDOMHelper.inputEquals(element, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-//        {
-//          typeSection.getSimpleType().setEnabled(false);
-//          typeSection.getUserSimpleType().setEnabled(false);
-//          typeSection.getUserComplexType().setSelection(true);
-//
-//          previousType = 3;
-//        }
-//        else if (XSDDOMHelper.inputEquals(element, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-//        {
-//          typeSection.getSimpleType().setEnabled(false);
-//          typeSection.getUserSimpleType().setEnabled(false);
-//
-//          if (derivedBy.equals("restriction"))
-//          {
-//            typeSection.getSimpleType().setEnabled(false);
-//            typeSection.getUserSimpleType().setEnabled(false);
-//            typeSection.getUserComplexType().setEnabled(true);
-//          }
-//          else if (derivedBy.equals("extension"))
-//          {
-//            derivedByRestriction = false;
-//            typeSection.getSimpleType().setEnabled(true);
-//            typeSection.getUserSimpleType().setEnabled(true);
-//            typeSection.getUserComplexType().setEnabled(true);
-//          }
-//        }
-//          
-//        if (derivedBy != null)
-//        {
-//            if (baseType != null && !baseType.equals(""))
-//            {
-//              Element parent = (Element)element.getParentNode();
-//              XSDConcreteComponent component = null;
-//              if (parent != null)
-//              {
-//                component = xsdSchema.getCorrespondingComponent(parent);
-//              }
-//              XSDTypeDefinition baseTypeDefinition = null;
-//              if (component instanceof XSDComplexTypeDefinition)
-//              {
-//                XSDComplexTypeDefinition complexType = (XSDComplexTypeDefinition)component;
-//                baseTypeDefinition = complexType.getBaseTypeDefinition();
-//              }               
-//
-//              if (typeSection.getBuiltInTypeNamesList(xsdSchema).contains(baseType) && !derivedByRestriction)
-//              {
-//                typeSection.getSimpleType().setSelection(true);
-//                populateBuiltInType();
-//                int i = typeSection.getBuiltInTypeNamesList(xsdSchema).indexOf(baseType);
-//                table.setSelection(i);
-//                previousType = 1;
-//              }
-//              else if (baseTypeDefinition instanceof XSDSimpleTypeDefinition && !derivedByRestriction)
-//              {
-//                typeSection.getUserSimpleType().setSelection(true);
-//                populateUserSimpleType();
-//                int i = typeSection.getUserSimpleTypeNamesList(xsdSchema).indexOf(baseType);
-//                if (showAnonymous)
-//                 {
-//                  table.setSelection(i + 1);
-//                }
-//                else
-//                 {
-//                  table.setSelection(i);
-//                }
-//                previousType = 2;
-//              }
-//              else if (baseTypeDefinition instanceof XSDComplexTypeDefinition)
-//              {
-//                typeSection.getUserComplexType().setSelection(true);
-//                populateUserComplexType();
-//                int i = typeSection.getUserComplexTypeNamesList(xsdSchema).indexOf(baseType);
-//                if (showAnonymous)
-//                 {
-//                  table.setSelection(i + 1);
-//                }
-//                else
-//                 {
-//                  table.setSelection(i);
-//                }
-//                previousType = 3;
-//              }
-//            }
-//            else
-//            {
-//              typeSection.getUserComplexType().setSelection(true);
-//              populateUserComplexType();
-//              table.setSelection(0);
-//            }
-//          }
-//
-//      }
-//    }
-//  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleContentPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleContentPropertySource.java
deleted file mode 100644
index f0233cd..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleContentPropertySource.java
+++ /dev/null
@@ -1,230 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class SimpleContentPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String DERIVED_BY_ID = "derived by";  // XSDEditorPlugin.getXSDString("_UI_LABEL_DERIVED_BY"); 
-  private String BASE_TYPE_ID = "base";  // XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE");
-  
-  private String derivedByChoicesComboValues[] =
-  {
-     "",
-     XSDConstants.RESTRICTION_ELEMENT_TAG,
-     XSDConstants.EXTENSION_ELEMENT_TAG
-  };
-  
-  /**
-   * 
-   */
-  public SimpleContentPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public SimpleContentPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public SimpleContentPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    
-    SimpleContentPropertyDescriptor typeDescriptor = new SimpleContentPropertyDescriptor(
-        BASE_TYPE_ID,
-        BASE_TYPE_ID,
-        element, xsdSchema);
-    list.add(typeDescriptor);
-    XSDComboBoxPropertyDescriptor derivedByDescriptor =
-    new XSDComboBoxPropertyDescriptor(
-        DERIVED_BY_ID,
-        DERIVED_BY_ID,
-        derivedByChoicesComboValues);
-    list.add(derivedByDescriptor);
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-     {
-      if (((String) id).equals(DERIVED_BY_ID))
-      {
-        String derivedBy = getDomHelper().getDerivedByName(element);
-        if (derivedBy == null)
-         {
-          derivedBy = "";
-        }
-        return derivedBy;
-      }
-      else if (((String) id).equals(BASE_TYPE_ID))
-      {
-        String baseType = getDomHelper().getBaseType(element);
-        if (baseType == null)
-        {
-          baseType = "";
-        }
-        return baseType;
-      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value != null)
-    {
-      if (value instanceof String)
-      {
-        String origBaseType = getDomHelper().getBaseType(element);
-        String derivedBy = getDomHelper().getDerivedByName(element);
-        
-        if (((String) id).equals(BASE_TYPE_ID))
-        {            
-          Document doc = element.getOwnerDocument();
-          Element childElement = null;
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_TYPE_CHANGE"), element);        
-          getDomHelper().setDerivedByBaseType(element, derivedBy, (String)value);
-          endRecording(element);
-        }
-        else if (((String) id).equals(DERIVED_BY_ID))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_DERIVEDBY_CHANGE"), element);
-          String newDerivedBy = (String)value;
-          if (newDerivedBy.equals(XSDConstants.RESTRICTION_ELEMENT_TAG))
-          {
-            String prefix = element.getPrefix();
-            String anyType = prefix == null? "anyType" : prefix + ":anyType"; 
-            getDomHelper().changeDerivedByType(element, (String)value, anyType);
-          }
-          else
-          {
-            Element derivedByElem = getDomHelper().getDerivedByElement(element);
-            if (checkForAnonymousType(derivedByElem))
-            {            
-// KCPort
-//            ArrayList message = new ArrayList();
-//            ErrorMessage aTask = new ErrorMessage();
-//            Node aNode = getDomHelper().getChildNode(derivedByElem, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-////////////// shall we remove the node and its children??
-////            getDomHelper().removeNodeAndWhitespace(aNode);
-//////////////
-////            if (aNode instanceof Element)
-////            {
-////              Element st = (Element)aNode;
-////             if (st instanceof NodeImpl)
-////              {
-////                aTask.setNode((NodeImpl)st);
-////              }
-////            }
-//            if (derivedByElem instanceof NodeImpl)
-//            {
-//              aTask.setModelObject(derivedByElem);
-//            }
-//            aTask.setLocalizedMessage(XSDEditorPlugin.getXSDString("_ERROR_REMOVE_LOCAL_SIMPLETYPE"));
-//            message.add(aTask);
-//            if (getEditor() != null)
-//            {
-//              getEditor().createTasksInTaskList(message);
-//            }
-            }   
-            getDomHelper().changeDerivedByType(element, (String)value, origBaseType);
-          }
-
-          
-          endRecording(element);
-//        setInput(element);
-        }
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-  }
-
-  boolean checkForAnonymousType(Element element)
-  {
-    boolean isAnonymous = false;
-
-    Node aNode = getDomHelper().getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-    if (aNode != null)
-     {
-      return true;
-    }
-    return isAnonymous;
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleRestrictPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleRestrictPropertySource.java
deleted file mode 100644
index 38a8819..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleRestrictPropertySource.java
+++ /dev/null
@@ -1,362 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.DOMAttribute;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDSchemaHelper;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDFacet;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.impl.XSDFactoryImpl;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class SimpleRestrictPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private String BASE_TYPE_ID = XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE");
-  private String [] whiteSpaceComboChoices = { "", "preserve", "replace", "collapse" };
-  /**
-   * 
-   */
-  public SimpleRestrictPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public SimpleRestrictPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public SimpleRestrictPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    
-    SimpleContentPropertyDescriptor typeDescriptor = new SimpleContentPropertyDescriptor(
-        XSDConstants.BASE_ATTRIBUTE,
-        XSDConstants.BASE_ATTRIBUTE,
-        (Element)element.getParentNode(), xsdSchema);  // get the parent node!
-    list.add(typeDescriptor);
-    
-    Iterator facets = xsdSimpleType.getValidFacets().iterator();
-    
-    while(facets.hasNext())
-    {
-      String aValidFacet = (String)facets.next();
-      if (!(aValidFacet.equals(XSDConstants.PATTERN_ELEMENT_TAG) || aValidFacet.equals(XSDConstants.ENUMERATION_ELEMENT_TAG)))
-      {
-        if (aValidFacet.equals(XSDConstants.WHITESPACE_ELEMENT_TAG))
-        {
-          XSDComboBoxPropertyDescriptor whitespaceDescriptor = new XSDComboBoxPropertyDescriptor(
-              aValidFacet, aValidFacet, whiteSpaceComboChoices);
-          list.add(whitespaceDescriptor);
-        }
-        else
-        {  
-          list.add(new TextPropertyDescriptor(aValidFacet, aValidFacet));
-        }
-      }
-    }
-    
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      if (((String) id).equals(XSDConstants.BASE_ATTRIBUTE))
-      {
-        String baseType = element.getAttribute(XSDConstants.BASE_ATTRIBUTE);
-        if (baseType == null)
-        {
-          baseType = "";
-        }
-        return baseType;
-      }
-      else
-      {
-        String aFacet = (String)id;
-        Iterator facets = xsdSimpleType.getFacets().iterator();
-        
-        while(facets.hasNext())
-        {
-          XSDFacet aValidFacet = (XSDFacet)facets.next();
-          if (aValidFacet.getFacetName().equals(aFacet))
-          {
-            result = aValidFacet.getLexicalValue();
-            if (result == null)
-            {
-              result = "";
-            }
-            return result;
-          }
-        }
-      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value != null)
-     {
-      if (value instanceof String)
-      {
-        String newValue = (String)value;
-        String origBaseType = getDomHelper().getBaseType(element);
-        
-        if (((String) id).equals(XSDConstants.BASE_ATTRIBUTE))
-        {            
-          Document doc = element.getOwnerDocument();
-          Element childElement = null;
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_TYPE_CHANGE"), element);        
-
-          Element parent = (Element)element.getParentNode();
-          if (XSDDOMHelper.inputEquals(parent, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-          {
-//            updateElementToNotAnonymous(element);
-          }
-          getDomHelper().setSimpleContentType(element, newValue);
-          endRecording(element);
-        }
-        else
-        {
-          Element simpleTypeElement = xsdSimpleType.getElement();
-          XSDDOMHelper xsdDOMHelper = new XSDDOMHelper();
-          Element derivedByElement = xsdDOMHelper.getDerivedByElement(simpleTypeElement);
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_FACET_CHANGE"), simpleTypeElement);
-          String prefix = simpleTypeElement.getPrefix();
-          prefix = (prefix == null) ? "" : (prefix + ":");
-
-          String aFacet = (String)id;
-          XSDFactoryImpl factory = new XSDFactoryImpl();
-
-          Element childNodeElement = null;
-          DOMAttribute valueAttr = null;
-          XSDFacet facet = null;
-          if (aFacet.equals(XSDConstants.TOTALDIGITS_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getTotalDigitsFacet();
-          }
-          else if (aFacet.equals(XSDConstants.FRACTIONDIGITS_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getFractionDigitsFacet();
-          }
-          else if (aFacet.equals(XSDConstants.WHITESPACE_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getWhiteSpaceFacet();
-          }
-          else if (aFacet.equals(XSDConstants.MAXEXCLUSIVE_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getMaxExclusiveFacet();
-          }
-          else if (aFacet.equals(XSDConstants.MAXINCLUSIVE_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getMaxInclusiveFacet();
-          }
-          else if (aFacet.equals(XSDConstants.MINEXCLUSIVE_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getMinExclusiveFacet();
-          }
-          else if (aFacet.equals(XSDConstants.MININCLUSIVE_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getMinInclusiveFacet();
-          }
-          else if (aFacet.equals(XSDConstants.LENGTH_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getLengthFacet();
-          }
-          else if (aFacet.equals(XSDConstants.MAXLENGTH_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getMaxLengthFacet();
-          }
-          else if (aFacet.equals(XSDConstants.MINLENGTH_ELEMENT_TAG))
-          {
-            facet = xsdSimpleType.getMinLengthFacet();
-          }
-          
-          if (facet != null)
-          {
-            facet.setLexicalValue(newValue);
-          }
-          else
-          {
-            facet = (XSDFacet)factory.createXSDTotalDigitsFacet();
-            childNodeElement = (derivedByElement.getOwnerDocument()).createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + aFacet);
-            valueAttr = new DOMAttribute(XSDConstants.VALUE_ATTRIBUTE, "");
-            childNodeElement.setAttribute(valueAttr.getName(), valueAttr.getValue());
-            valueAttr.setValue(newValue);
-            childNodeElement.setAttribute(valueAttr.getName(), valueAttr.getValue());  
-            boolean hasChildrenElements = hasElementChildren(derivedByElement);
-            element.appendChild(childNodeElement);
-          //formatChild(childNodeElement, hasChildrenElements);    
-          }
-          XSDSchemaHelper.updateElement(xsdSimpleType);
-          if (facet != null)
-          {
-            XSDSchemaHelper.updateElement(facet);
-          }
-        }
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-
-  }
-
-  protected boolean isAnonymous;
-  protected XSDSimpleTypeDefinition xsdSimpleType;
-  public void setInput(Element element)
-  {
-    this.element = element;
-    if (xsdSchema == null)
-    {
-      return;
-    }
-    String type = element.getLocalName();
-
-    isAnonymous = checkForAnonymousType(element);
-    
-    int restrictionType = 0;  // 0 = SimpleType restriction
-    // 1 = SimpleContent restriction
-    // ComplexContent restriction different window
-    
-    if (XSDDOMHelper.inputEquals(element, XSDConstants.RESTRICTION_ELEMENT_TAG, false))
-    {
-      String baseType = element.getAttribute(XSDConstants.BASE_ATTRIBUTE);
-
-      XSDTypeDefinition baseTypeDefinition = null;
-
-      Element parent = (Element)element.getParentNode();
-      if (XSDDOMHelper.inputEquals(parent, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-      {
-        restrictionType = 1;
-        Element grandparent = (Element)parent.getParentNode();
-        XSDConcreteComponent component = null;
-        if (grandparent != null)
-        {
-          component = xsdSchema.getCorrespondingComponent(grandparent);
-        }
-        if (component instanceof XSDComplexTypeDefinition)
-        {
-          XSDComplexTypeDefinition complexType = (XSDComplexTypeDefinition)component;
-          baseTypeDefinition = complexType.getBaseTypeDefinition();
-        }               
-      }
-      else if (XSDDOMHelper.inputEquals(parent, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-      {
-        restrictionType = 0;
-        XSDConcreteComponent component = null;
-        if (parent != null)
-         {
-          component = xsdSchema.getCorrespondingComponent(parent);
-        }
-        if (component instanceof XSDSimpleTypeDefinition)
-         {
-          XSDSimpleTypeDefinition simpleType = (XSDSimpleTypeDefinition)component;
-          baseTypeDefinition = simpleType.getBaseTypeDefinition();
-        }
-      }
-
-      XSDConcreteComponent xsdConcreteComponent = null;
-      if (element.getParentNode() != null)
-      {
-        xsdConcreteComponent = xsdSchema.getCorrespondingComponent(element.getParentNode());
-      }
-
-      if (xsdConcreteComponent instanceof XSDSimpleTypeDefinition)
-      {
-        xsdSimpleType = (XSDSimpleTypeDefinition)xsdConcreteComponent;
-      }
-      //facetViewer.setInput(xsdSimpleType);
-    }
-  }
-
-  boolean checkForAnonymousType(Element element)
-  {
-    boolean isAnonymous = false;
-
-    Node aNode = getDomHelper().getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-    if (aNode != null)
-    {
-      return true;
-    }
-    return isAnonymous;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypeListPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypeListPropertySource.java
deleted file mode 100644
index fc104c0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypeListPropertySource.java
+++ /dev/null
@@ -1,143 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class SimpleTypeListPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  /**
-   * 
-   */
-  public SimpleTypeListPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public SimpleTypeListPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public SimpleTypeListPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    TypesPropertyDescriptor typeDescriptor = new TypesPropertyDescriptor(
-          XSDConstants.ITEMTYPE_ATTRIBUTE,
-          XSDConstants.ITEMTYPE_ATTRIBUTE,
-          element, xsdSchema);
-        
-    typeDescriptor.setLabelProvider(new LabelProvider()
-    {
-      public String getText(Object element)
-      {
-        return (String) element;
-      }
-    });
-    list.add(typeDescriptor);
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      if (((String) id).equals(XSDConstants.ITEMTYPE_ATTRIBUTE))
-      {
-        result = element.getAttribute((String) id);
-        if (result == null)
-        {
-          result = "**anonymous**";
-        }
-        return result;
-      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value != null)
-     {
-      if (value instanceof String)
-      {
-        if (((String) id).equals(XSDConstants.ITEMTYPE_ATTRIBUTE))
-        { 
-          beginRecording("ItemType Change", element);
-          element.setAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE, (String)value);
-          endRecording(element);
-        }
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypePropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypePropertySource.java
deleted file mode 100644
index 99885fa..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypePropertySource.java
+++ /dev/null
@@ -1,183 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalSimpleOrComplexTypeRenamer;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Node;
-
-public class SimpleTypePropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  private boolean isAnonymous = false;
-  /**
-   * 
-   */
-  public SimpleTypePropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public SimpleTypePropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public SimpleTypePropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    Node parent = element.getParentNode();
-    if (XSDDOMHelper.inputEquals(parent, XSDConstants.RESTRICTION_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(parent, XSDConstants.ELEMENT_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(parent, XSDConstants.UNION_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(parent, XSDConstants.LIST_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-    {
-      isAnonymous = true;
-    }
-
-    List list = new ArrayList();
-    if (!isAnonymous)
-    {
-      // Create a descriptor and set a category
-      PropertyDescriptor nameDescriptor =
-      new TextPropertyDescriptor(
-          XSDConstants.NAME_ATTRIBUTE,
-          XSDConstants.NAME_ATTRIBUTE);
-      list.add(nameDescriptor);
-    }
-    else
-    {
-      PropertyDescriptor readOnly = new PropertyDescriptor(XSDConstants.NAME_ATTRIBUTE, XSDConstants.NAME_ATTRIBUTE);
-      list.add(readOnly);
-    }
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-    {
-      result = element.getAttribute((String) id);
-      if (isAnonymous)
-      {
-        result = "**anonymous**";
-      }
-    }
-    if (result == null)
-     {
-      result = "";
-    }
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    if (value instanceof String)
-    {
-      String name = (String)value;
-      if (validateName(name))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_SIMPLETYPE_NAME_CHANGE"), element);
-        if (name != null && name.length() > 0)
-        {
-          // now rename any references to this type
-          if (xsdSchema != null)
-          {
-            XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-            if (comp != null && comp instanceof XSDSimpleTypeDefinition && comp.getContainer().equals(xsdSchema))
-            {
-//                ((XSDNamedComponent)comp).setName(name);
-              GlobalSimpleOrComplexTypeRenamer renamer = new GlobalSimpleOrComplexTypeRenamer((XSDNamedComponent)comp, name);
-              renamer.visitSchema(xsdSchema);
-            }
-          }
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, name);
-        }
-        else
-        {
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, "");
-        }
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypeUnionPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypeUnionPropertySource.java
deleted file mode 100644
index ec0adf7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/SimpleTypeUnionPropertySource.java
+++ /dev/null
@@ -1,494 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.DialogCellEditor;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.wst.xsd.ui.internal.widgets.TypeSection;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-public class SimpleTypeUnionPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  /**
-   * 
-   */
-  public SimpleTypeUnionPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public SimpleTypeUnionPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-  }
-  /**
-   * @param xsdSchema
-   */
-  public SimpleTypeUnionPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    SimpleUnionMemberTypesPropertyDescriptor typeDescriptor = new SimpleUnionMemberTypesPropertyDescriptor(
-        XSDConstants.MEMBERTYPES_ATTRIBUTE,
-        XSDConstants.MEMBERTYPES_ATTRIBUTE);
-    
-    typeDescriptor.setLabelProvider(new LabelProvider()
-        {
-      public String getText(Object element)
-      {
-        return (String) element;
-      }
-    });
-    list.add(typeDescriptor);
-    
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-     {
-      if (((String) id).equals(XSDConstants.MEMBERTYPES_ATTRIBUTE))
-       {
-        result = element.getAttribute((String) id);
-        if (result == null)
-        { 
-          result = "";
-        }
-        return result;
-      }
-    }
-    return "";
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value == null)
-    {
-      value = "";
-    }
-    
-    if (value instanceof String)
-    {
-      String newValue = (String)value;
-      if (((String) id).equals(XSDConstants.MEMBERTYPES_ATTRIBUTE))
-      { 
-        beginRecording("MemberTypes Change", element);
-        if (newValue.length() > 0)
-        {
-          element.setAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, (String)value);
-        }
-        else
-        {
-          element.removeAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);  
-        }
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-
-  
-  public class SimpleUnionMemberTypesPropertyDescriptor extends PropertyDescriptor
-  {
-    /**
-     * @param id
-     * @param displayName
-     */
-    public SimpleUnionMemberTypesPropertyDescriptor(Object id, String displayName)
-    {
-      super(id, displayName);
-    }
-    
-    public CellEditor createPropertyEditor(Composite parent)
-    {
-      CellEditor editor = new SimpleTypeUnionMemberTypesDialogCellEditor(parent);
-      if (getValidator() != null)
-        editor.setValidator(getValidator());
-      return editor;
-    }
-  }
-  
-  public class SimpleTypeUnionMemberTypesDialogCellEditor extends DialogCellEditor {
-
-    /**
-     * Creates a new Font dialog cell editor parented under the given control.
-     * The cell editor value is <code>null</code> initially, and has no 
-     * validator.
-     *
-     * @param parent the parent control
-     */
-    protected SimpleTypeUnionMemberTypesDialogCellEditor(Composite parent) {
-      super(parent);
-    }
-
-    /**
-     * @see org.eclipse.jface.viewers.DialogCellEditor#openDialogBox(Control)
-     */
-    protected Object openDialogBox(Control cellEditorWindow)
-    {
-      Shell shell = Display.getCurrent().getActiveShell();
-      
-      SimpleContentUniontMemberTypesDialog dialog = new SimpleContentUniontMemberTypesDialog(shell);
-      dialog.setBlockOnOpen(true);
-      dialog.create();
-      
-      String value = (String)getValue();
-
-      int result = dialog.open();
-
-      if (result == Window.OK)
-       {
-        return dialog.getResult();
-      }
-      return value;
-    }
-
-  }
-
-  public class SimpleContentUniontMemberTypesDialog extends org.eclipse.jface.dialogs.Dialog implements SelectionListener
-  {
-    Table table;
-    TypeSection typeSection;
-    Button addButton, removeButton;
-    org.eclipse.swt.widgets.List memberTypesList;
-    
-    private String result;
-    
-    public SimpleContentUniontMemberTypesDialog(Shell shell)
-    {
-      super(shell);
-    }
-
-    protected void configureShell(Shell shell)
-    {
-      super.configureShell(shell);
-    }
-
-    protected void buttonPressed(int buttonId)
-    {
-      if (buttonId == Dialog.OK)
-      {
-        StringBuffer sb = new StringBuffer();
-        int length = memberTypesList.getItemCount();
-        for (int i=0 ; i < length; i++)
-        {
-          sb.append(memberTypesList.getItem(i));
-          if (i < length - 1)
-          {
-            sb.append(" ");
-          }
-        }
-        result = sb.toString();
-      }
-      super.buttonPressed(buttonId);
-    }
-
-    public String getResult() { return result; }
-
-    //
-    // Create the controls
-    //
-    public Control createDialogArea(Composite parent)
-    {
-      int tabIndex = 0;
-      Composite client = (Composite)super.createDialogArea(parent);
-      getShell().setText("Union " + XSDConstants.MEMBERTYPES_ATTRIBUTE); 
-      
-      Label instructions = new Label(client, SWT.LEFT | SWT.WRAP);
-      instructions.setText("Select from the available types and add to the memberTypes list");
-      
-      Composite columnsComposite = new Composite(client, SWT.NONE);
-      GridLayout ccGL = new GridLayout();
-      ccGL.verticalSpacing = 0;
-      ccGL.horizontalSpacing = 0;
-      ccGL.marginHeight = 0;
-      ccGL.marginWidth = 0;
-      ccGL.makeColumnsEqualWidth = true;
-      ccGL.numColumns = 3;
-      columnsComposite.setLayout(ccGL);
-      
-      GridData ccGD = new GridData();
-      ccGD.grabExcessHorizontalSpace = true;
-      ccGD.horizontalAlignment = GridData.FILL;
-      columnsComposite.setLayoutData(ccGD);     
-                             
-      typeSection = new TypeSection(columnsComposite);
-      typeSection.setShowUserComplexType(false);
-
-      typeSection.createClient(columnsComposite);
-      typeSection.getSimpleType().setSelection(false);
-      typeSection.getSimpleType().addSelectionListener(this);
-      typeSection.getUserSimpleType().addSelectionListener(this);
-      
-      ViewUtility.createHorizontalFiller(columnsComposite, 1);
-      
-      Label memberListLabel = new Label(columnsComposite, SWT.LEFT);
-      memberListLabel.setText("memberTypes value:");
-      
-      Composite dataComposite = new Composite(client, SWT.NONE);
-      GridLayout dcGL = new GridLayout();
-      dcGL.verticalSpacing = 0;
-      dcGL.marginHeight = 0;
-      dcGL.marginWidth = 0;
-      dcGL.numColumns = 3;
-      dataComposite.setLayout(dcGL);
-      
-      GridData dcGD = new GridData();
-      dcGD.grabExcessHorizontalSpace = true;
-      dcGD.grabExcessVerticalSpace = true;
-      dataComposite.setLayoutData(dcGD);
-      
-      table = new Table(dataComposite,
-          SWT.SINGLE | SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); 
-      table.setHeaderVisible(false);
-      table.setLinesVisible(true);
-      GridData gd2 = new GridData();
-      gd2.grabExcessHorizontalSpace = true;
-      gd2.grabExcessVerticalSpace = true;
-      gd2.horizontalAlignment = GridData.FILL;
-      gd2.verticalAlignment = GridData.FILL;
-      gd2.heightHint = 200;
-      gd2.widthHint = 200;
-      table.setLayoutData(gd2);
-
-      // Fill table
-      handleSetInput();
-      int tableItemCount = table.getItemCount();
-
-      TableColumn tc = new TableColumn(table, SWT.LEFT);
-//      tc.setImage(XSDEditorPlugin.getXSDImage("icons/XSDElement.gif"));
-      //tc.setText("Available types:");
-      tc.setWidth(200);
-      tc.setResizable(true);
-      
-      Composite buttonComposite = new Composite(dataComposite, SWT.NONE);
-      GridLayout bcGL = new GridLayout();
-      bcGL.numColumns = 1;
-      buttonComposite.setLayout(bcGL);
-      addButton = new Button(buttonComposite, SWT.PUSH);
-      addButton.setText(">");
-      addButton.addSelectionListener(this);
-      removeButton = new Button(buttonComposite, SWT.PUSH);
-      removeButton.setText("<");
-      removeButton.addSelectionListener(this);
-      
-      Composite listComposite = new Composite(dataComposite, SWT.NONE);
-      GridLayout mtGL = new GridLayout();
-      mtGL.numColumns = 1;
-      mtGL.marginHeight = 0;
-      mtGL.marginWidth = 0;
-      mtGL.horizontalSpacing = 0;
-      mtGL.verticalSpacing = 0;
-      listComposite.setLayout(mtGL);
-
-      GridData mtGD = new GridData();
-      mtGD.grabExcessHorizontalSpace = true;
-      mtGD.grabExcessVerticalSpace = true;
-      mtGD.verticalAlignment = GridData.FILL;
-      mtGD.horizontalAlignment = GridData.FILL;
-      listComposite.setLayoutData(mtGD);
-      
-      memberTypesList = new org.eclipse.swt.widgets.List(listComposite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
-      GridData mtlGD = new GridData();
-      mtlGD.grabExcessHorizontalSpace = true;
-      mtlGD.grabExcessVerticalSpace = true;
-      mtlGD.verticalAlignment = GridData.FILL;
-      mtlGD.horizontalAlignment = GridData.FILL;
-      mtlGD.heightHint = 200;
-      mtlGD.widthHint = 200;
-      memberTypesList.setLayoutData(mtlGD);
-      
-      initializeMemberListContent();
-      return client;
-    }
-
-    private void initializeMemberListContent()
-    {
-      String result = element.getAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-      if (result == null)
-      {
-        return;
-      }
-      StringTokenizer token = new StringTokenizer(result);
-      while (token.hasMoreTokens())
-      {
-        memberTypesList.add(token.nextToken());
-      }
-    }
-  
-    public void widgetSelected(SelectionEvent e)
-    {
-      if (e.widget == typeSection.getSimpleType() && typeSection.getSimpleType().getSelection())
-       {
-        populateBuiltInType();
-      }
-      else if (e.widget == typeSection.getUserSimpleType() && typeSection.getUserSimpleType().getSelection())
-       {
-        populateUserSimpleType(false);
-      }
-      else if (e.widget == addButton)
-      {
-        TableItem[] items = table.getItems();
-        int selection = table.getSelectionIndex();
-        if (items != null && items.length > 0 && selection >= 0)
-        {
-          String typeToAdd = items[selection].getData().toString();
-          if (memberTypesList.indexOf(typeToAdd) < 0)
-          {
-            memberTypesList.add(items[selection].getData().toString());
-          }
-        }
-      }
-      else if (e.widget == removeButton)
-      {
-        String[] typesToRemove = memberTypesList.getSelection();
-        for (int i=0; i < typesToRemove.length; i++)
-        {
-          memberTypesList.remove(typesToRemove[i]);
-        }
-      }
-    }
-    
-    public void widgetDefaultSelected(SelectionEvent e)
-    {
-    }
-    
-    public void handleSetInput()
-    {
-      populateBuiltInType();
-    }
-    
-    public void populateBuiltInType()
-    {
-      table.removeAll();
-      List items = getBuiltInTypeNamesList();
-      for (int i = 0; i < items.size(); i++)
-       {
-        TableItem item = new TableItem(table, SWT.NONE);
-        item.setText(items.get(i).toString());
-        item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-        item.setData(items.get(i));
-      }
-    }
-
-    public void populateUserSimpleType(boolean showAnonymous)
-    {
-      table.removeAll();
-      if (showAnonymous)
-       {
-        TableItem anonymousItem = new TableItem(table, SWT.NONE);
-        anonymousItem.setText("**anonymous**");
-        anonymousItem.setData("**anonymous**");
-      }
-      List items = getUserSimpleTypeNamesList();
-      for (int i = 0; i < items.size(); i++)
-       {
-        TableItem item = new TableItem(table, SWT.NONE);
-        item.setText(items.get(i).toString());
-        item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-        item.setData(items.get(i));
-      }
-    }
-    
-    public java.util.List getBuiltInTypeNamesList()
-    {
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      return helper.getBuiltInTypeNamesList();
-    }
-
-    public java.util.List getUserSimpleTypeNamesList()
-    {
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      return helper.getUserSimpleTypeNamesList();
-    }
-  }
-  
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/TypesPropertyDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/TypesPropertyDescriptor.java
deleted file mode 100644
index 207e53a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/TypesPropertyDescriptor.java
+++ /dev/null
@@ -1,1160 +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.xsd.ui.internal.properties;
-
-import java.util.List;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.DialogCellEditor;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.events.ShellAdapter;
-import org.eclipse.swt.events.ShellEvent;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.wst.xsd.ui.internal.widgets.TypeSection;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class TypesPropertyDescriptor extends PropertyDescriptor
-{
-  Element element;
-  XSDSchema xsdSchema;
-  String property;
-  /**
-   * @param id
-   * @param displayName
-   */
-  public TypesPropertyDescriptor(Object id, String displayName, Element element, XSDSchema xsdSchema)
-  {
-    super(id, displayName);
-    this.property = (String)id;
-    this.element = element;
-    this.xsdSchema = xsdSchema;
-  }
-  
-  boolean showComplexTypes = true;
-
-  public CellEditor createPropertyEditor(Composite parent)
-  {
-    if (XSDDOMHelper.inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-    {
-      showComplexTypes = true;
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false) ||
-      XSDDOMHelper.inputEquals(element, XSDConstants.LIST_ELEMENT_TAG, false) ||
-      XSDDOMHelper.inputEquals(element, XSDConstants.UNION_ELEMENT_TAG, false))
-    {
-      showComplexTypes = false;
-    }
-    // CellEditor editor = new TypesOptionsTextCellEditor(parent);
-    CellEditor editor = new TypesDialogCellEditor(parent);
-    if (getValidator() != null)
-      editor.setValidator(getValidator());
-    return editor;
-  }
-
-  
-  public class TypesDialogCellEditor extends DialogCellEditor
-  {
-
-    /**
-     * Creates a new Font dialog cell editor parented under the given control.
-     * The cell editor value is <code>null</code> initially, and has no 
-     * validator.
-     *
-     * @param parent the parent control
-     */
-    protected TypesDialogCellEditor(Composite parent)
-    {
-      super(parent);
-    }
-
-    protected Object openDialogBox(Control cellEditorWindow)
-    {
-	    Shell shell = Display.getCurrent().getActiveShell();
-	    
-	    TypesDialog dialog = new TypesDialog(shell);
-
-	    dialog.setBlockOnOpen(true);
-	    dialog.create();
-	    
-	    String value = (String)getValue();
-	
-	    int result = dialog.open();
-	    
-	    if (result == Window.OK)
-	    {
-	      value = dialog.getType();
-        doSetValue(value);
-        fireApplyEditorValue();
-	    }
-	    deactivate();
-	    return null;
-	  }
-  }
-
-  public class TypesDialog extends org.eclipse.jface.dialogs.Dialog implements SelectionListener
-  {
-    String type;
-    Object typeObject;
-    Table table;
-
-    TypeSection typeSection;
-    boolean showAnonymous = true;
-    String previousStringType = "";
-    boolean isAnonymous;
-    int previousType;
-
-    
-    public TypesDialog(Shell shell)
-    {
-      super(shell);
-    }
-
-    protected void configureShell(Shell shell)
-    {
-      super.configureShell(shell);
-    }
-
-    protected void buttonPressed(int buttonId)
-    {
-      if (buttonId == Dialog.OK)
-      {
-        type = table.getItem(table.getSelectionIndex()).getText();
-        ok();
-      }
-      super.buttonPressed(buttonId);
-    }
-
-    public Object getTypeObject() { return typeObject; }
-    public String getType() { return type; }
-
-    //
-    // Create the controls
-    //
-    public Control createDialogArea(Composite parent)
-    {
-      int tabIndex = 0;
-      Composite client = (Composite)super.createDialogArea(parent);
-      getShell().setText("Available Types");
-
-      typeObject = null;
-      
-      GridLayout gl = new GridLayout(1, true);
-//      gl.marginHeight = 0;
-//      gl.marginWidth = 0;
-//      gl.horizontalSpacing = 0;
-//      gl.verticalSpacing = 0;
-      client.setLayout(gl);
-
-      GridData gd = new GridData();
-      gd.grabExcessHorizontalSpace = true;
-      gd.grabExcessVerticalSpace = true;
-      gd.horizontalAlignment = GridData.FILL;
-      gd.verticalAlignment = GridData.FILL;
-      gd.horizontalIndent = 0;
-      client.setLayoutData(gd);
-      
-      typeSection = new TypeSection(client);
-      typeSection.setShowUserComplexType(showComplexTypes);
-
-      typeSection.createClient(client);
-      typeSection.getSimpleType().setSelection(false);
-      typeSection.getSimpleType().addSelectionListener(this);
-      typeSection.getUserSimpleType().addSelectionListener(this);
-      if (showComplexTypes)
-      {
-        typeSection.getUserComplexType().addSelectionListener(this);
-      }
-
-      table = new Table(client,
-                        SWT.SINGLE | SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL); 
-      table.setHeaderVisible(false);
-      table.setLinesVisible(true);
-      
-      GridData gd2 = new GridData();
-      gd2.grabExcessHorizontalSpace = true;
-      gd2.grabExcessVerticalSpace = true;
-      gd2.horizontalAlignment = GridData.FILL;
-      gd2.heightHint = 200;
-      table.setLayoutData(gd2);
-
-      TableColumn tableColumn = new TableColumn(table, SWT.LEFT);
-//      tableColumn.setImage(XSDEditorPlugin.getXSDImage("icons/XSDElement.gif"));
-      tableColumn.setResizable(true);
-      tableColumn.setWidth(200);
-      
-
-      // Fill table and select input type
-      handleSetInput();
-
-      return client;
-    }
-    
-    public void widgetSelected(SelectionEvent e)
-    {
-      if (e.widget == typeSection.getSimpleType() && typeSection.getSimpleType().getSelection())
-      {
-        populateBuiltInType();
-      }
-      else if (e.widget == typeSection.getUserComplexType() && typeSection.getUserComplexType().getSelection())
-      {
-        populateUserComplexType();
-      }
-      else if (e.widget == typeSection.getUserSimpleType() && typeSection.getUserSimpleType().getSelection())
-      {
-        populateUserSimpleType();
-      }
-
-    }
-    
-  	public void widgetDefaultSelected(SelectionEvent e)
-    {
-    }
-
-    protected void ok()
-    {
-      TableItem[] items = table.getItems();
-      int selection = table.getSelectionIndex();
-      if (items != null && items.length > 0 && selection >= 0)
-      {
-        typeObject = items[selection].getData();
-      }
-//      System.out.println("typeObject is " + typeObject);
-
-//      beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_TYPE_CHANGE"), element);
-//      beginRecording(XSDEditorPlugin.getXSDString("_UI_TYPE_CHANGE"), element);
-//      doSetValue(typeObject);
-//      applyEditorValueAndDeactivate();
-//      dialog.close();
-
-      if (!XSDDOMHelper.inputEquals(element, XSDConstants.UNION_ELEMENT_TAG, false))
-      {
-      if (typeObject.equals("**anonymous**"))
-      {
-        if (typeSection.getUserSimpleType().getSelection())
-        {
-          if (!previousStringType.equals("**anonymous**"))
-          {
-            updateElementToAnonymous(
-              element,
-              XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-          }
-        }
-        else
-        {
-          if (!previousStringType.equals("**anonymous**"))
-          {
-            updateElementToAnonymous(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-          }
-        }
-        // element.removeAttribute(XSDConstants.TYPE_ATTRIBUTE);
-        element.removeAttribute(property);
-      }
-      else
-      {
-        updateElementToNotAnonymous(element);
-        //element.setAttribute(XSDConstants.TYPE_ATTRIBUTE, typeObject.toString());
-        element.setAttribute(property, typeObject.toString());
-      }
-      }
-//      endRecording(element);
-
-      //implement dispose();
-//      table.removeAll();
-//      table.dispose();
-    }
-
-  	
-    public void handleSetInput()
-    {
-      table.removeAll();
-      isAnonymous = checkForAnonymousType(element);
-      // Attr attr = element.getAttributeNode(XSDConstants.TYPE_ATTRIBUTE);
-      Attr attr = element.getAttributeNode(property);
-      if (attr != null)
-      {
-        String value = attr.getValue();
-        if (typeSection.getBuiltInTypeNamesList(xsdSchema).contains(value))
-        {
-          typeSection.getSimpleType().setSelection(true);
-          populateBuiltInType();
-          int i = typeSection.getBuiltInTypeNamesList(xsdSchema).indexOf(value);
-          table.setSelection(i);
-          previousType = 1;
-        }
-        else if (typeSection.getUserSimpleTypeNamesList(xsdSchema).contains(value))
-        {
-          typeSection.getUserSimpleType().setSelection(true);
-          populateUserSimpleType();
-          int i = typeSection.getUserSimpleTypeNamesList(xsdSchema).indexOf(value);
-          if (showAnonymous)
-          {
-            table.setSelection(i + 1);
-          }
-          else
-          {
-            table.setSelection(i);
-          }
-          previousType = 2;
-        }
-        else if (typeSection.getUserComplexTypeNamesList(xsdSchema).contains(value))
-        {
-          typeSection.getUserComplexType().setSelection(true);
-          populateUserComplexType();
-          int i = typeSection.getUserComplexTypeNamesList(xsdSchema).indexOf(value);
-          if (showAnonymous)
-           {
-            table.setSelection(i + 1);
-          }
-          else
-           {
-            table.setSelection(i);
-          }
-          previousType = 3;
-        }
-        else // if it is type="" for an empty list of simple types
-          {
-          typeSection.getUserSimpleType().setSelection(true);
-          populateUserSimpleType();
-          previousType = 2;
-        }
-      }
-      else
-      {
-        if (isAnonymous)
-        {
-          if (isSTAnonymous(element))
-          {
-            typeSection.getUserSimpleType().setSelection(true);
-            populateUserSimpleType();
-            previousType = 2;
-          }
-          else
-          {
-            typeSection.getUserComplexType().setSelection(true);
-            populateUserComplexType();
-            previousType = 3;
-          }
-          table.setSelection(0); // anonymous
-          //        typeSection.getTypeList().setText("**anonymous**");
-        }
-        else
-        {
-          typeSection.getSimpleType().setSelection(true);
-          populateBuiltInType();
-          table.setSelection(0);
-          
-          //        typeSection.getTypeList().setEnabled(true);
-          //        typeSection.getSimpleType().setSelection(true);
-          //        typeSection.populateBuiltInType(xsdSchema);
-          //        typeSection.getTypeList().setText(XSDEditorPlugin.getXSDString("_UI_NO_TYPE"));
-          previousType = 1;
-        }
-      }
-      if (table.getSelection() != null && table.getSelection().length > 0)
-      {
-        previousStringType = (table.getSelection()[0]).getText();
-      }
-    }
-    
-    public void populateBuiltInType()
-    {
-      table.removeAll();
-      List items = getBuiltInTypeNamesList();
-      for (int i = 0; i < items.size(); i++)
-      {
-        TableItem item = new TableItem(table, SWT.NONE);
-        item.setText(items.get(i).toString());
-        item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-        item.setData(items.get(i));
-      }
-    }
-
-    public void populateUserComplexType()
-    {
-      table.removeAll();
-      if (showAnonymous)
-      {
-        TableItem anonymousItem = new TableItem(table, SWT.NONE);
-        anonymousItem.setText("**anonymous**");
-        anonymousItem.setData("**anonymous**");
-      }
-      List items = getUserComplexTypeNamesList();
-      for (int i = 0; i < items.size(); i++)
-      {
-        TableItem item = new TableItem(table, SWT.NONE);
-//        System.out.println("item " + i + " is " + item);
-        item.setText(items.get(i).toString());
-        item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDComplexType.gif"));
-        item.setData(items.get(i));
-      }
-    }
-
-    public void populateUserSimpleType()
-    {
-      table.removeAll();
-      if (showAnonymous)
-       {
-        TableItem anonymousItem = new TableItem(table, SWT.NONE);
-        anonymousItem.setText("**anonymous**");
-        anonymousItem.setData("**anonymous**");
-      }
-      List items = getUserSimpleTypeNamesList();
-      for (int i = 0; i < items.size(); i++)
-       {
-        TableItem item = new TableItem(table, SWT.NONE);
-        item.setText(items.get(i).toString());
-        item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-        item.setData(items.get(i));
-      }
-    }
-
-    boolean checkForAnonymousType(Element element)
-    {
-      /*
-       * Using Ed's model to check boolean isAnonymous = false;
-       * 
-       * XSDConcreteComponent component =
-       * getXSDSchema().getCorrespondingComponent(element); if (component
-       * instanceof XSDElementDeclaration) { XSDElementDeclaration xsdElem =
-       * (XSDElementDeclaration)component; isAnonymous =
-       * xsdElem.isSetAnonymousTypeDefinition(); } return isAnonymous;
-       */
-      XSDDOMHelper helper = new XSDDOMHelper();
-      boolean isAnonymous = false;
-      Node aNode =
-      helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      if (aNode != null)
-       {
-        return true;
-      }
-      aNode = helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      if (aNode != null)
-       {
-        isAnonymous = true;
-      }
-      return isAnonymous;
-    }
-
-    void updateElementToAnonymous(Element element, String xsdType)
-    {
-      String prefix = element.getPrefix();
-      prefix = (prefix == null) ? "" : (prefix + ":");
-      updateElementToNotAnonymous(element);
-      boolean hasChildrenElements = hasElementChildren(element);
-      Element childNode = null;
-      if (xsdType.equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-       {
-        childNode = element.getOwnerDocument().createElementNS(
-            XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-            prefix + XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      }
-      else if (xsdType.equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG))
-       {
-        childNode =
-        element.getOwnerDocument().createElementNS(
-            XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-            prefix + XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      }
-      element.appendChild(childNode);
-      //formatChild(childNode, hasChildrenElements);
-    }
-
-    boolean isSTAnonymous(Element element)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Node aNode =
-      helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      if (aNode != null)
-       {
-        if (XSDDOMHelper
-            .inputEquals(aNode, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-         {
-          return true;
-        }
-      }
-      return false;
-    }
-
-    boolean isCTAnonymous(Element element)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Node aNode = helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      if (aNode != null)
-       {
-        if (XSDDOMHelper.inputEquals(aNode, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-         {
-          return true;
-        }
-      }
-      return false;
-    }
-
-    XSDTypeDefinition getAnonymousTypeDefinition(Element element)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Node typeDefinitionNode =
-      helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      if (typeDefinitionNode == null)
-       {
-        typeDefinitionNode =
-        helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      }
-      if (typeDefinitionNode != null)
-       {
-        XSDConcreteComponent component =
-        xsdSchema.getCorrespondingComponent(typeDefinitionNode);
-        if (component instanceof XSDTypeDefinition)
-         {
-          return (XSDTypeDefinition) component;
-        }
-      }
-      return null;
-    }
-
-    void updateElementToNotAnonymous(Element element)
-    {
-      if (element != null)
-      {
-	      NodeList children = element.getChildNodes();
-	      if (children != null)
-	       {
-	        for (int i = 0; i < children.getLength(); i++)
-	         {
-	          Node node = (Node) children.item(i);
-	          if (node instanceof Element)
-	           {
-	            if (node.getLocalName().equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG)
-	                || node.getLocalName().equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-	             {
-	              XSDDOMHelper.removeNodeAndWhitespace(node);
-	              i = 0;
-	            }
-	          }
-	        }
-	      }
-      }
-    }
-
-    public java.util.List getBuiltInTypeNamesList()
-    {
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      return helper.getBuiltInTypeNamesList();
-    }
-
-    public java.util.List getUserSimpleTypeNamesList()
-    {
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      return helper.getUserSimpleTypeNamesList();
-    }
-    
-    public java.util.List getUserComplexTypeNamesList()
-    {
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      return helper.getUserComplexTypeNamesList();
-    }
-    
-	  protected boolean hasElementChildren(Node parentNode)
-	  {
-	    boolean hasChildrenElements = false;
-	    if (parentNode != null && parentNode.hasChildNodes())
-	    {
-	      NodeList nodes = parentNode.getChildNodes();
-	      for (int i = 0; i < nodes.getLength(); i++)
-	      {
-	        if (nodes.item(i) instanceof Element)
-	        {
-	          hasChildrenElements = true;
-	          break;
-	        }
-	      }
-	    }
-	    return hasChildrenElements;
-	  }
-
-  }
-
-  
-  
-  
-  
-  
-  
-  
-  class TypesOptionsTextCellEditor extends OptionsTextCellEditor
-  {
-    boolean showAnonymous = true;
-    
-    public TypesOptionsTextCellEditor(Composite parent)
-    {
-      super(parent);
-    }
-
-    protected Control createControl(Composite parent)
-    {
-      isTextReadOnly = true;
-      return super.createControl(parent);
-    }
-
-    Table table;
-    TypeSection typeSection;
-
-    protected void openDialog()
-    {
-      typeObject = null;
-      dialog = new Shell(XSDEditorPlugin.getPlugin().getWorkbench().getActiveWorkbenchWindow().getShell(), SWT.MODELESS);
-      Display display = dialog.getDisplay();
-      GridLayout gl = new GridLayout(1, true);
-      gl.marginHeight = 0;
-      gl.marginWidth = 0;
-      gl.horizontalSpacing = 0;
-      gl.verticalSpacing = 0;
-      dialog.setLayout(gl);
-      GridData gd = new GridData();
-      gd.grabExcessHorizontalSpace = true;
-      gd.grabExcessVerticalSpace = true;
-      gd.horizontalAlignment = GridData.FILL;
-      gd.verticalAlignment = GridData.FILL;
-      gd.horizontalIndent = 0;
-      dialog.setLayoutData(gd);
-
-      
-      
-      typeSection = new TypeSection(dialog);
-      typeSection.setShowUserComplexType(showComplexTypes);
-
-      typeSection.createClient(dialog);
-      typeSection.getSimpleType().setSelection(false);
-      typeSection.getSimpleType().addSelectionListener(this);
-      typeSection.getUserSimpleType().addSelectionListener(this);
-      if (showComplexTypes)
-      {
-        typeSection.getUserComplexType().addSelectionListener(this);
-      }
-
-      table = new Table(dialog,
-                        SWT.SINGLE | SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL); 
-      table.setHeaderVisible(false);
-      table.setLinesVisible(true);
-      GridData gd2 = new GridData();
-      gd2.grabExcessHorizontalSpace = true;
-      gd2.grabExcessVerticalSpace = true;
-      gd2.horizontalAlignment = GridData.FILL;
-      gd2.verticalAlignment = GridData.FILL;
-      table.setLayoutData(gd2);
-
-      // Fill table and select input type
-      handleSetInput();
-      int tableItemCount = table.getItemCount();
-
-      TableColumn tc = new TableColumn(table, SWT.LEFT);
-      tc.setImage(XSDEditorPlugin.getXSDImage("icons/XSDElement.gif"));
-      //tc.setText("Available types:");
-      tc.setResizable(false);
-
-      int MAX_ITEMS = 23;
-//      tc.pack();
-//      table.pack();
-      Rectangle tableBounds = table.getBounds();
-      tableBounds.height = Math.min(tableBounds.height, table.getItemHeight()*MAX_ITEMS);
-      table.setBounds(tableBounds);
-      dialog.pack();
-      
-      dialog.addShellListener(new ShellAdapter()
-      {
-        public void shellDeactivated(ShellEvent e)
-        {
-          cancel();
-        }
-      });
-
-      Rectangle dialogBounds = dialog.getBounds();
-      Point buttonLocation = getButtonAbsoluteLocation();
-      dialogBounds.x = buttonLocation.x;
-      dialogBounds.y = buttonLocation.y;
-
-      if (dialogBounds.height > 200)
-      {        
-        dialogBounds.height = 200;
-      }
-      if (dialogBounds.height < 100)
-      {
-        dialogBounds.height = 200;
-      }
-      if (dialogBounds.width > 200)
-      {
-        dialogBounds.width = typeSection.getUserComplexType().getBounds().width + 30;
-      }
-      dialog.setBounds(dialogBounds);
-      tc.setWidth(dialogBounds.width);
-
-      table.addKeyListener(new KeyAdapter()
-      {
-        public void keyPressed(KeyEvent e)
-        {
-          int keyCode = e.keyCode;
-          int stateMask = e.stateMask;
-          char character = e.character;
-          if (character == SWT.CR || character == SWT.LF)
-            ok();
-          else if (character == SWT.ESC)
-            cancel();
-        }
-      });
-
-      table.addMouseListener(new MouseAdapter()
-      {
-        public void mouseDoubleClick(MouseEvent e)
-        {
-          ok();
-        }
-        public void mouseDown(MouseEvent e)
-        {
-          ok();
-        }
-      });
-
-      try
-      {
-        dialog.open();
-        table.setFocus();
-        table.showSelection();
-        
-        while (!dialog.isDisposed())
-        {
-          if (!display.readAndDispatch())
-          {
-            display.sleep();
-          }
-        }
-      }
-      finally
-      {
-        if (!dialog.isDisposed())
-          cancel();
-      }
-    }
-    
-    public void widgetSelected(SelectionEvent e)
-    {
-      if (e.widget == typeSection.getSimpleType() && typeSection.getSimpleType().getSelection())
-      {
-        populateBuiltInType();
-      }
-      else if (e.widget == typeSection.getUserComplexType() && typeSection.getUserComplexType().getSelection())
-      {
-        populateUserComplexType();
-      }
-      else if (e.widget == typeSection.getUserSimpleType() && typeSection.getUserSimpleType().getSelection())
-      {
-        populateUserSimpleType();
-      }
-    }
-    
-    protected void cancel()
-    {
-      super.cancel();
-      table.dispose();
-    }
-
-    protected void ok()
-    {
-      TableItem[] items = table.getItems();
-      selection = table.getSelectionIndex();
-      if (items != null && items.length > 0 && selection >= 0)
-      {
-        typeObject = items[selection].getData();
-      }
-//      System.out.println("typeObject is " + typeObject);
-
-//      beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_TYPE_CHANGE"), element);
-//      beginRecording(XSDEditorPlugin.getXSDString("_UI_TYPE_CHANGE"), element);
-      doSetValue(typeObject);
-      applyEditorValueAndDeactivate();
-      dialog.close();
-
-      if (!XSDDOMHelper.inputEquals(element, XSDConstants.UNION_ELEMENT_TAG, false))
-      {
-      if (typeObject.equals("**anonymous**"))
-      {
-        if (typeSection.getUserSimpleType().getSelection())
-        {
-          if (!previousStringType.equals("**anonymous**"))
-          {
-            updateElementToAnonymous(
-              element,
-              XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-          }
-        }
-        else
-        {
-          if (!previousStringType.equals("**anonymous**"))
-          {
-            updateElementToAnonymous(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-          }
-        }
-        // element.removeAttribute(XSDConstants.TYPE_ATTRIBUTE);
-        element.removeAttribute(property);
-      }
-      else
-      {
-        updateElementToNotAnonymous(element);
-        //element.setAttribute(XSDConstants.TYPE_ATTRIBUTE, typeObject.toString());
-        element.setAttribute(property, typeObject.toString());
-      }
-      }
-//      endRecording(element);
-
-      //implement dispose();
-      table.removeAll();
-      table.dispose();
-    }
-
-    String previousStringType = "";
-    boolean isAnonymous;
-    int previousType;
-
-    public void handleSetInput()
-    {
-      table.removeAll();
-      isAnonymous = checkForAnonymousType(element);
-      // Attr attr = element.getAttributeNode(XSDConstants.TYPE_ATTRIBUTE);
-      Attr attr = element.getAttributeNode(property);
-      if (attr != null)
-      {
-        String value = attr.getValue();
-        if (typeSection.getBuiltInTypeNamesList(xsdSchema).contains(value))
-        {
-          typeSection.getSimpleType().setSelection(true);
-          populateBuiltInType();
-          int i = typeSection.getBuiltInTypeNamesList(xsdSchema).indexOf(value);
-          table.setSelection(i);
-          previousType = 1;
-        }
-        else if (typeSection.getUserSimpleTypeNamesList(xsdSchema).contains(value))
-        {
-          typeSection.getUserSimpleType().setSelection(true);
-          populateUserSimpleType();
-          int i = typeSection.getUserSimpleTypeNamesList(xsdSchema).indexOf(value);
-          if (showAnonymous)
-          {
-            table.setSelection(i + 1);
-          }
-          else
-          {
-            table.setSelection(i);
-          }
-          previousType = 2;
-        }
-        else if (typeSection.getUserComplexTypeNamesList(xsdSchema).contains(value))
-        {
-          typeSection.getUserComplexType().setSelection(true);
-          populateUserComplexType();
-          int i = typeSection.getUserComplexTypeNamesList(xsdSchema).indexOf(value);
-          if (showAnonymous)
-           {
-            table.setSelection(i + 1);
-          }
-          else
-           {
-            table.setSelection(i);
-          }
-          previousType = 3;
-        }
-        else // if it is type="" for an empty list of simple types
-          {
-          typeSection.getUserSimpleType().setSelection(true);
-          populateUserSimpleType();
-          previousType = 2;
-        }
-      }
-      else
-      {
-        if (isAnonymous)
-        {
-          if (isSTAnonymous(element))
-          {
-            typeSection.getUserSimpleType().setSelection(true);
-            populateUserSimpleType();
-            previousType = 2;
-          }
-          else
-          {
-            typeSection.getUserComplexType().setSelection(true);
-            populateUserComplexType();
-            previousType = 3;
-          }
-          table.setSelection(0); // anonymous
-          //        typeSection.getTypeList().setText("**anonymous**");
-        }
-        else
-        {
-          typeSection.getSimpleType().setSelection(true);
-          populateBuiltInType();
-          table.setSelection(0);
-          
-          //        typeSection.getTypeList().setEnabled(true);
-          //        typeSection.getSimpleType().setSelection(true);
-          //        typeSection.populateBuiltInType(xsdSchema);
-          //        typeSection.getTypeList().setText(XSDEditorPlugin.getXSDString("_UI_NO_TYPE"));
-          previousType = 1;
-        }
-      }
-      if (table.getSelection() != null && table.getSelection().length > 0)
-      {
-        previousStringType = (table.getSelection()[0]).getText();
-      }
-    }
-    
-    public void populateBuiltInType()
-    {
-      table.removeAll();
-      List items = getBuiltInTypeNamesList();
-      for (int i = 0; i < items.size(); i++)
-      {
-        TableItem item = new TableItem(table, SWT.NONE);
-        item.setText(items.get(i).toString());
-        item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-        item.setData(items.get(i));
-      }
-    }
-
-    public void populateUserComplexType()
-    {
-      table.removeAll();
-      if (showAnonymous)
-      {
-        TableItem anonymousItem = new TableItem(table, SWT.NONE);
-        anonymousItem.setText("**anonymous**");
-        anonymousItem.setData("**anonymous**");
-      }
-      List items = getUserComplexTypeNamesList();
-      for (int i = 0; i < items.size(); i++)
-      {
-        TableItem item = new TableItem(table, SWT.NONE);
-//        System.out.println("item " + i + " is " + item);
-        item.setText(items.get(i).toString());
-        item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDComplexType.gif"));
-        item.setData(items.get(i));
-      }
-    }
-
-    public void populateUserSimpleType()
-    {
-      table.removeAll();
-      if (showAnonymous)
-       {
-        TableItem anonymousItem = new TableItem(table, SWT.NONE);
-        anonymousItem.setText("**anonymous**");
-        anonymousItem.setData("**anonymous**");
-      }
-      List items = getUserSimpleTypeNamesList();
-      for (int i = 0; i < items.size(); i++)
-       {
-        TableItem item = new TableItem(table, SWT.NONE);
-        item.setText(items.get(i).toString());
-        item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-        item.setData(items.get(i));
-      }
-    }
-
-    boolean checkForAnonymousType(Element element)
-    {
-      /*
-       * Using Ed's model to check boolean isAnonymous = false;
-       * 
-       * XSDConcreteComponent component =
-       * getXSDSchema().getCorrespondingComponent(element); if (component
-       * instanceof XSDElementDeclaration) { XSDElementDeclaration xsdElem =
-       * (XSDElementDeclaration)component; isAnonymous =
-       * xsdElem.isSetAnonymousTypeDefinition(); } return isAnonymous;
-       */
-      XSDDOMHelper helper = new XSDDOMHelper();
-      boolean isAnonymous = false;
-      Node aNode =
-      helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      if (aNode != null)
-       {
-        return true;
-      }
-      aNode = helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      if (aNode != null)
-       {
-        isAnonymous = true;
-      }
-      return isAnonymous;
-    }
-
-    void updateElementToAnonymous(Element element, String xsdType)
-    {
-      String prefix = element.getPrefix();
-      prefix = (prefix == null) ? "" : (prefix + ":");
-      updateElementToNotAnonymous(element);
-      boolean hasChildrenElements = hasElementChildren(element);
-      Element childNode = null;
-      if (xsdType.equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-       {
-        childNode = element.getOwnerDocument().createElementNS(
-            XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-            prefix + XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      }
-      else if (xsdType.equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG))
-       {
-        childNode =
-        element.getOwnerDocument().createElementNS(
-            XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-            prefix + XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      }
-      element.appendChild(childNode);
-      //formatChild(childNode, hasChildrenElements);
-    }
-
-    boolean isSTAnonymous(Element element)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Node aNode =
-      helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      if (aNode != null)
-       {
-        if (XSDDOMHelper
-            .inputEquals(aNode, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-         {
-          return true;
-        }
-      }
-      return false;
-    }
-
-    boolean isCTAnonymous(Element element)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Node aNode = helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      if (aNode != null)
-       {
-        if (XSDDOMHelper.inputEquals(aNode, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-         {
-          return true;
-        }
-      }
-      return false;
-    }
-
-    XSDTypeDefinition getAnonymousTypeDefinition(Element element)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Node typeDefinitionNode =
-      helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      if (typeDefinitionNode == null)
-       {
-        typeDefinitionNode =
-        helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-      }
-      if (typeDefinitionNode != null)
-       {
-        XSDConcreteComponent component =
-        xsdSchema.getCorrespondingComponent(typeDefinitionNode);
-        if (component instanceof XSDTypeDefinition)
-         {
-          return (XSDTypeDefinition) component;
-        }
-      }
-      return null;
-    }
-
-    void updateElementToNotAnonymous(Element element)
-    {
-      NodeList children = element.getChildNodes();
-      if (children != null)
-       {
-        for (int i = 0; i < children.getLength(); i++)
-         {
-          Node node = (Node) children.item(i);
-          if (node instanceof Element)
-           {
-            if (node.getLocalName().equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG)
-                || node.getLocalName().equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-             {
-              XSDDOMHelper.removeNodeAndWhitespace(node);
-              i = 0;
-            }
-          }
-        }
-      }
-    }
-
-    public java.util.List getBuiltInTypeNamesList()
-    {
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      return helper.getBuiltInTypeNamesList();
-    }
-
-    public java.util.List getUserSimpleTypeNamesList()
-    {
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      return helper.getUserSimpleTypeNamesList();
-    }
-    
-    public java.util.List getUserComplexTypeNamesList()
-    {
-      TypesHelper helper = new TypesHelper(xsdSchema);
-      return helper.getUserComplexTypeNamesList();
-    }
-    
-	  protected boolean hasElementChildren(Node parentNode)
-	  {
-	    boolean hasChildrenElements = false;
-	    if (parentNode != null && parentNode.hasChildNodes())
-	    {
-	      NodeList nodes = parentNode.getChildNodes();
-	      for (int i = 0; i < nodes.getLength(); i++)
-	      {
-	        if (nodes.item(i) instanceof Element)
-	        {
-	          hasChildrenElements = true;
-	          break;
-	        }
-	      }
-	    }
-	    return hasChildrenElements;
-	  }
-
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XPathPropertySource.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XPathPropertySource.java
deleted file mode 100644
index 9a5d893..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XPathPropertySource.java
+++ /dev/null
@@ -1,150 +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.xsd.ui.internal.properties;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.views.properties.IPropertyDescriptor;
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-public class XPathPropertySource
-  extends BasePropertySource
-  implements IPropertySource
-{
-  /**
-   * 
-   */
-  public XPathPropertySource()
-  {
-    super();
-  }
-  /**
-   * @param viewer
-   * @param xsdSchema
-   */
-  public XPathPropertySource(Viewer viewer, XSDSchema xsdSchema)
-  {
-    super(viewer, xsdSchema);
-// From Field     
-// WorkbenchHelp.setHelp(comp, XSDEditorContextIds.XSDE_UNIQUE_BASE_FIELDS_GROUP);
-//    fieldField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_FIELD_TEXT"));
-//    WorkbenchHelp.setHelp(fieldField, XSDEditorContextIds.XSDE_UNIQUE_BASE_SOURCE);
-
-// From Selector
-// WorkbenchHelp.setHelp(comp, XSDEditorContextIds.XSDE_UNIQUE_BASE_SELECTOR_GROUP);
-// WorkbenchHelp.setHelp(selectorField, XSDEditorContextIds.XSDE_UNIQUE_BASE_SELECTOR);
-// selectorField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_SELECTOR_TEXT"));
-    
-  }
-  /**
-   * @param xsdSchema
-   */
-  public XPathPropertySource(XSDSchema xsdSchema)
-  {
-    super(xsdSchema);
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()
-   */
-  public Object getEditableValue()
-  {
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()
-   */
-  public IPropertyDescriptor[] getPropertyDescriptors()
-  {
-    List list = new ArrayList();
-    // Create a descriptor and set a category
-    PropertyDescriptor xpathDescriptor =
-    new TextPropertyDescriptor(
-        XSDConstants.XPATH_ATTRIBUTE,
-        XSDConstants.XPATH_ATTRIBUTE);
-    list.add(xpathDescriptor);
-
-    IPropertyDescriptor[] result = new IPropertyDescriptor[list.size()];
-    list.toArray(result);
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)
-   */
-  public Object getPropertyValue(Object id)
-  {
-    Object result = null;
-    if (id instanceof String)
-     {
-      result = element.getAttribute((String) id);
-    }
-    if (result == null)
-     {
-      result = "";
-    }
-    return result;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)
-   */
-  public boolean isPropertySet(Object id)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)
-   */
-  public void resetPropertyValue(Object id)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)
-   */
-  public void setPropertyValue(Object id, Object value)
-  {
-    if (value != null)
-     {
-      if (value instanceof String)
-      {
-        if (XSDDOMHelper.inputEquals(element, XSDConstants.FIELD_ELEMENT_TAG, false))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_FIELD_XPATH_CHANGE"), element);
-        }
-        else if (XSDDOMHelper.inputEquals(element, XSDConstants.SELECTOR_ELEMENT_TAG, false))
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_SELECTOR_XPATH_CHANGE"), element);
-        }
-        
-        element.setAttribute(XSDConstants.XPATH_ATTRIBUTE, (String)value);
-        endRecording(element);
-      }
-    }
-    Runnable delayedUpdate = new Runnable()
-    {
-      public void run()
-      {
-        if (viewer != null)
-          viewer.refresh();
-      }
-    };
-    Display.getCurrent().asyncExec(delayedUpdate);
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDComboBoxPropertyDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDComboBoxPropertyDescriptor.java
deleted file mode 100644
index b4d9cc2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDComboBoxPropertyDescriptor.java
+++ /dev/null
@@ -1,304 +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.xsd.ui.internal.properties;
-
-import java.text.MessageFormat;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.custom.PopupList;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.TraverseEvent;
-import org.eclipse.swt.events.TraverseListener;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.views.properties.PropertyDescriptor;
-
-public class XSDComboBoxPropertyDescriptor extends PropertyDescriptor
-{
-	private String[] values;
-	
-	public XSDComboBoxPropertyDescriptor(Object id, String displayName, String[] valuesArray) {
-		super(id, displayName);
-		values = valuesArray;
-	}
-	/**
-	 * The <code>ComboBoxPropertyDescriptor</code> implementation of this 
-	 * <code>IPropertyDescriptor</code> method creates and returns a new
-	 * <code>ComboBoxCellEditor</code>.
-	 * <p>
-	 * The editor is configured with the current validator if there is one.
-	 * </p>
-	 */
-	public CellEditor createPropertyEditor(Composite parent) {
-    CellEditor editor = new XSDComboBoxCellEditor(parent, values);
-    //CellEditor editor = new StringComboBoxCellEditor(parent, values);
-		if (getValidator() != null)
-			editor.setValidator(getValidator());
-		return editor;
-	}
-	
-	public class XSDComboBoxCellEditor extends CellEditor
-	{
-		DynamicCellEditor comboBox;
-
-		private String fSelection;
-		protected String[] fItems;
-		protected Object fValue;
-		int selection;
-		Object typeObject;
-		
-		public void createItems(String[] items)
-		{
-			fItems = items;
-		}
-
-		public String[] getComboBoxItems()
-		{
-			return fItems;
-		}
-
-	/**
-	 * Creates a new combo box cell editor with the given choices.
-	 */
-		 public XSDComboBoxCellEditor(Composite parent, String[] items)
-		 {
-			 super(parent);
-			 fSelection = "";
-			 setItems(items);
-//			 fText.setText("");
-		 }
-
-		public void activate() {
-      if (doGetValue() != null)
-      {
-//			  int i = ((Integer)doGetValue()).intValue();
-//			  if (i >= 0)
-//		  	{
-//		  	  comboBox.setText(fItems[i]);
-//		  	}
-        comboBox.setText((String)fValue);
-			}
-		}
-
-		public void deactivate() {
-		  super.deactivate();
-		}
-
-		public void setItems(String[] items) {
-			Assert.isNotNull(items);
-			this.fItems = items;
-			populateComboBoxItems();
-		}
-
-		private void populateComboBoxItems() {
-			if (comboBox != null && fItems != null) {
-				comboBox.removeAll();
-				for (int i = 0; i < fItems.length; i++)
-					comboBox.add(fItems[i], i);
-
-				setValueValid(true);
-				selection = 0;
-			}
-		}
-
-	/**
-	 * Creates the actual UI representation.
-	 */
-
-		protected Control createControl(Composite parent)
-		{
-			comboBox = new DynamicCellEditor(parent, SWT.READ_ONLY |SWT.NONE | SWT.NO_TRIM);
-			comboBox.addKeyListener(new KeyAdapter() {
-				// hook key pressed - see PR 14201  
-				public void keyPressed(KeyEvent e) {
-//					System.out.println("Key e " + e);
-					keyReleaseOccured(e);
-				}
-			});
-
-			comboBox.addSelectionListener(new SelectionAdapter() {
-				public void widgetDefaultSelected(SelectionEvent event) {
-				}
-		
-				public void widgetSelected(SelectionEvent event) {
-//				  System.out.println("combo selected");
-					selection = comboBox.getSelectionIndex();
-					if (!comboBox.isDropped()) // allows user to traverse list using keyboard without applying value
-					applyEditorValueAndDeactivate();
-				}
-			});
-
-			comboBox.addTraverseListener(new TraverseListener() {
-				public void keyTraversed(TraverseEvent e) {
-//				  System.out.println("TRAVERSE e " + e);
-					if (e.detail == SWT.TRAVERSE_ESCAPE || e.detail == SWT.TRAVERSE_RETURN) {
-						e.doit = false;
-					}
-				}
-			});
-			
-      
-			comboBox.addFocusListener(new FocusAdapter() {
-				public void focusLost(FocusEvent e) {
-					XSDComboBoxCellEditor.this.focusLost();
-				}
-				public void focusGained(FocusEvent e) {
-//				  System.out.println("focusGained");
-				}
-			});
-		  setValueValid(true);
-			return comboBox;
-		}
-
-		protected void focusLost() {
-//		  System.out.println("CELLEDITOR FOCUS LOST");
-			if (isActivated()) {
-				applyEditorValueAndDeactivate();
-			}
-		}
-		
-		protected void keyReleaseOccured(KeyEvent keyEvent) {
-			if (keyEvent.character == '\u001b') { // Escape character
-			  comboBox.setText(""); // clear text
-				fireCancelEditor();
-			} else if (keyEvent.character == '\r') { // Return key
-				//fireApplyEditorValue();
-				applyEditorValueAndDeactivate();
-				deactivate();
-			}
-		}
-
-		void applyEditorValueAndDeactivate() {
-			//	must set the selection before getting value
-			selection = comboBox.getSelectionIndex();
-			if (selection < 0)
-			{
-			  deactivate();
-			  return;
-			}
-			// Object newValue = new Integer(selection);
-      Object newValue = fItems[selection];
-			markDirty();
-			boolean isValid = isCorrect(newValue);
-			setValueValid(isValid);
-			if (!isValid) {
-				// try to insert the current value into the error message.
-				setErrorMessage(
-					MessageFormat.format(getErrorMessage(), new Object[] {fItems[selection]})); 
-			}
-			doSetValue(newValue);
-			fireApplyEditorValue();
-			deactivate();
-		}
-
-    protected Object doGetValue() {
-      return fValue;
-      // otherwise limits to set of valid values
-//      Object index = super.doGetValue();
-//      int selection = -1;
-//      if (index instanceof Integer)
-//        selection = ((Integer) index).intValue();
-//      if (selection >= 0)
-//        return fItems[selection];
-//      else if (getControl() instanceof CCombo) {
-//        // retrieve the actual text as the list of valid items doesn't contain the value
-//        return ((CCombo) getControl()).getText();
-//      }
-//      return null;
-    }
-    private boolean fSettingValue = false;
-    protected void doSetValue(Object value) {
-      if (fSettingValue)
-        return;
-      fSettingValue = true;
-      if (value instanceof Integer) {
-        //super.doSetValue(value);
-        fValue = value;
-      }
-      else {
-        String stringValue = value.toString();
-        int selection = -1;
-        for (int i = 0; i < fItems.length; i++)
-          if (fItems[i].equals(stringValue))
-            selection = i;
-        if (selection >= 0)
-          //super.doSetValue(new Integer(selection));
-          fValue = stringValue;
-        else {
-          // super.doSetValue(new Integer(-1));
-          // fValue = new Integer(-1);
-          fValue = stringValue;
-          if (getControl() instanceof CCombo && !stringValue.equals(((CCombo) getControl()).getText())) {
-            // update the Text widget
-            ((CCombo) getControl()).setText(stringValue);
-          }
-        }
-      }
-      fSettingValue = false;
-    }		
-		
-	/**
-		* Returns the cell editor's value.
-		*/
-//		protected Object doGetValue() 
-//		{
-//			return fValue;
-//		}
-
-	/**
-	 * Set the focus to the cell editor's UI representation.
-	 */
-		protected void doSetFocus()
-		{
-//			fButton.setFocus();
-//      System.out.println("doSetFocus() " + moreButton.setFocus());
-      comboBox.setFocus();
-		}
-
-	/**
-	 * Sets the value of the cell editor to the given value.
-	 */
-//		protected void doSetValue(Object value)
-//		{
-//			fValue = value;
-//		}
-
-		protected void fillPopupList(PopupList list) 
-		{
-			String[] labels= new String[fItems.length];
-			for (int i= 0; i < labels.length; i++)
-			{
-				String item= fItems[i];
-				labels[i]= item;
-//				System.out.println(fItems[i]);
-				if (fSelection == null && fValue != null && fValue.equals(item)) 
-				{
-					fSelection = item;
-				}
-			}
-
-			list.setItems(labels);
-			if (fSelection != null) 
-			{
-//				fText.setText(fSelection);
-				list.select(fSelection);
-			}	
-		}
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDPropertySheetPage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDPropertySheetPage.java
deleted file mode 100644
index 6e3c2ba..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDPropertySheetPage.java
+++ /dev/null
@@ -1,119 +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.xsd.ui.internal.properties;
-
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.custom.ViewForm;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.views.properties.PropertySheet;
-import org.eclipse.ui.views.properties.PropertySheetPage;
-import org.eclipse.wst.sse.core.IStructuredModel;
-import org.eclipse.wst.sse.ui.internal.ViewerSelectionManager;
-import org.eclipse.wst.sse.ui.internal.properties.RemoveAction;
-import org.eclipse.wst.sse.ui.view.events.INodeSelectionListener;
-import org.eclipse.wst.sse.ui.view.events.NodeSelectionChangedEvent;
-import org.w3c.dom.Node;
-import org.w3c.dom.Text;
-
-public class XSDPropertySheetPage extends PropertySheetPage implements ISelectionChangedListener, INodeSelectionListener
-{
-  /**
-   * @param model
-   */
-
-  IEditorPart editorPart;
-	private ViewerSelectionManager fViewerSelectionManager;
-  IStructuredModel model;
-  protected RemoveAction fRemoveAction;
-  Control designControl;
-
-  public XSDPropertySheetPage(IStructuredModel model, IEditorPart editorPart)
-  {
-    super();
-    this.model = model;
-    this.editorPart = editorPart;
-  }
-
-  public void selectionChanged(SelectionChangedEvent event)
-  {
-		super.selectionChanged(null, event.getSelection());
-  }
-  
-	public void setViewerSelectionManager(ViewerSelectionManager viewerSelectionManager) {
-		// disconnect from old one
-		if (fViewerSelectionManager != null) {
-			fViewerSelectionManager.removeNodeSelectionListener(this);
-		}
-
-		fViewerSelectionManager = viewerSelectionManager;
-
-		// connect to new one
-		if (fViewerSelectionManager != null) {
-			fViewerSelectionManager.addNodeSelectionListener(this);
-		}
-	}
-
-	public void dispose() {
-		// disconnect from the ViewerSelectionManager
-		if (fViewerSelectionManager != null) {
-			fViewerSelectionManager.removeNodeSelectionListener(this);
-		}
-		super.dispose();
-	}
-
-	public void nodeSelectionChanged(NodeSelectionChangedEvent event) {
-		// multiple selection is unsupported
-		if (event.getSelectedNodes().size() > 1)
-		{
-			selectionChanged(null, StructuredSelection.EMPTY);
-		}
-		else if (event.getSelectedNodes().size() == 0)
-		{
-		  
-		}
-		else
-		{
-      Object item = event.getSelectedNodes().get(0);
-      if (item instanceof Text)
-      {
-        Node parent = ((Text)item).getParentNode();
-        selectionChanged(null, new StructuredSelection(parent));
-      }
-      else
-      {
-  			selectionChanged(null, new StructuredSelection(event.getSelectedNodes()));
-      }
-		}
-	}
-
-  private void setPropertiesTitle(PropertySheet thePart, String title)
-	{
-		Control control = thePart.getDefaultPage().getControl();
-		for (Composite parent = control.getParent(); parent != null; parent = parent.getParent())
-		{
-			if (parent instanceof ViewForm)
-			{
-				Control[] children = parent.getChildren();
-				if (children.length > 0 && children[0] instanceof CLabel)
-				{
-					CLabel clabel = (CLabel)children[0];
-  				clabel.setText(title);
-				}
-			}
-		}
-	}
-  
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDPropertySourceProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDPropertySourceProvider.java
deleted file mode 100644
index 78e790b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/XSDPropertySourceProvider.java
+++ /dev/null
@@ -1,285 +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.xsd.ui.internal.properties;
-
-import org.eclipse.ui.views.properties.IPropertySource;
-import org.eclipse.ui.views.properties.IPropertySourceProvider;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class XSDPropertySourceProvider implements IPropertySourceProvider
-{
-  XSDSchema xsdSchema;
-  /**
-   * 
-   * @todo Generated comment
-   */
-  public XSDPropertySourceProvider()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.ui.views.properties.IPropertySourceProvider#getPropertySource(java.lang.Object)
-   */
-  public IPropertySource getPropertySource(Object object)
-  {
-    if (object == null) return null;
-    
-    if (object instanceof XSDConcreteComponent)
-    {
-      XSDConcreteComponent component = (XSDConcreteComponent)object;
-      
-      xsdSchema = component.getSchema();
-      
-      if (component instanceof XSDElementDeclaration)
-      {
-        XSDElementDeclaration elementDeclaration = (XSDElementDeclaration)component;
-        if (elementDeclaration.isElementDeclarationReference())
-        {
-          component = elementDeclaration.getResolvedElementDeclaration();
-        }
-      }
-      
-      Element input = component.getElement(); 
-      
-      BasePropertySource bps = (BasePropertySource)getXSDPropertySource(input);
-      if (bps == null) return null;
-      
-      bps.setInput(input);
-      return bps;
-    }
-    return null;
-  }
-  
-  boolean showParent = false;
-  
-  public IPropertySource getXSDPropertySource(Object object)
-  {
-    Element input = (Element)object;
-
-    showParent = false;
-  
-    if (inputEquals(input, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-    {
-      return new ElementPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.ELEMENT_ELEMENT_TAG, true))
-    {
-      return new GroupRefPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.SEQUENCE_ELEMENT_TAG, false) ||
-              inputEquals(input, XSDConstants.CHOICE_ELEMENT_TAG, false) ||
-              inputEquals(input, XSDConstants.ALL_ELEMENT_TAG, false))
-    {
-      return new ModelGroupPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-    {
-      return new AttributePropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true))
-    {
-      return new AttributeGroupRefPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, false))
-    {
-      return new NamePropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, true))
-    {
-      return new AttributeGroupRefPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.NOTATION_ELEMENT_TAG, false))
-    {
-      return new NotationPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-    {
-      return new SimpleTypePropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.GROUP_ELEMENT_TAG, false))
-    {
-      return new NamePropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.GROUP_ELEMENT_TAG, true))
-    {
-      return new GroupRefPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.SCHEMA_ELEMENT_TAG, false))
-    {
-      return new SchemaPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-    {
-      return new ComplexTypePropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.DOCUMENTATION_ELEMENT_TAG, false))
-    {
-      return new DocumentationPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.APPINFO_ELEMENT_TAG, false))
-    {
-      return new AppInfoPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-    {
-      if (input != null && input instanceof Element)
-      {
-        Element parent = (Element)input;
-        XSDDOMHelper xsdDOMHelper = new XSDDOMHelper();
-        Element derivedByNode = xsdDOMHelper.getDerivedByElement(parent);
-        if (derivedByNode != null)
-        {
-          if (inputEquals(derivedByNode, XSDConstants.RESTRICTION_ELEMENT_TAG, false) || 
-              inputEquals(derivedByNode, XSDConstants.EXTENSION_ELEMENT_TAG, false))
-          {
-            return new SimpleContentPropertySource(xsdSchema);
-          }
-        }
-        else
-        {
-          return null;
-        }
-      }
-    }
-    else if (inputEquals(input, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-    {
-      if (input != null && input instanceof Element)
-      {
-        Element parent = (Element)input;
-        XSDDOMHelper xsdDOMHelper = new XSDDOMHelper();
-        Element derivedByNode = xsdDOMHelper.getDerivedByElement(parent);
-        if (derivedByNode != null)
-        {
-          return new SimpleContentPropertySource(xsdSchema);
-        }
-        else
-        {
-          return null;
-        }
-      }
-    }
-    else if (inputEquals(input, XSDConstants.LIST_ELEMENT_TAG, false))
-    {
-      return new SimpleTypeListPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.UNION_ELEMENT_TAG, false))
-    {
-      return new SimpleTypeUnionPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.RESTRICTION_ELEMENT_TAG, false))
-    {
-      return createRestrictWindow(input, xsdSchema);
-    }
-    else if (XSDDOMHelper.isFacet(input))
-    {
-      if (input != null && input instanceof Element)
-      {
-        Node parent = ((Element)input).getParentNode();
-        if (inputEquals(parent, XSDConstants.RESTRICTION_ELEMENT_TAG, false))
-        {
-          return createRestrictWindow(input, xsdSchema);
-        } 
-      }
-    }
-    else if (inputEquals(input, XSDConstants.EXTENSION_ELEMENT_TAG, false))
-    {
-      if (input != null && input instanceof Element)
-      {
-        Node parent = ((Element)input).getParentNode();
-        if (inputEquals(parent, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false)
-            || inputEquals(parent, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-        {
-          showParent = true;
-          return new SimpleContentPropertySource(xsdSchema);
-        }
-      }
-    }
-    else if (inputEquals(input, XSDConstants.PATTERN_ELEMENT_TAG, false))
-    {
-      return new PatternPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.ENUMERATION_ELEMENT_TAG, false))
-    {
-      return new EnumerationPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.ANY_ELEMENT_TAG, false))
-    {
-      return new AnyElementPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false))
-    {
-      return new AnyAttributePropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.UNIQUE_ELEMENT_TAG, false))
-    {
-      return new NamePropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.KEYREF_ELEMENT_TAG, false))
-    {
-      return new KeyrefPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.SELECTOR_ELEMENT_TAG, false))
-    {
-      return new XPathPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.FIELD_ELEMENT_TAG, false))
-    {
-      return new XPathPropertySource(xsdSchema);
-    }
-    else if (inputEquals(input, XSDConstants.KEY_ELEMENT_TAG, false))
-    {
-      return new NamePropertySource(xsdSchema);
-    }
-    else
-    {
-      return null;
-    }
-    return null;
-  }
-
-  protected IPropertySource createRestrictWindow(Object input, XSDSchema xsdSchema)
-  {
-    // special case where SimpleType restriction is different than SimpleContent restriction
-
-    if (input != null && input instanceof Element)
-    {
-      Node parent = ((Element)input).getParentNode();
-      if (inputEquals(parent, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-      {
-        return new SimpleRestrictPropertySource(xsdSchema);
-      }
-      else if (inputEquals(parent, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-      {
-        return new SimpleRestrictPropertySource(xsdSchema);
-      }
-      else if (inputEquals(parent, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-      {
-        showParent = true;
-        return new SimpleContentPropertySource(xsdSchema);
-      }
-    }
-    return null;
-  }
-
-
-  protected boolean inputEquals(Object input, String tagname, boolean isRef)
-  {
-    return XSDDOMHelper.inputEquals(input, tagname, isRef);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AbstractSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AbstractSection.java
deleted file mode 100644
index 010bf73..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AbstractSection.java
+++ /dev/null
@@ -1,495 +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.xsd.ui.internal.properties.section;
-
-import java.util.List;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.part.EditorActionBarContributor;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetPage;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xml.core.NameValidator;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateElementAction;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class AbstractSection implements ISection, IPropertyChangeListener, Listener, SelectionListener
-{
-	private TabbedPropertySheetWidgetFactory factory;
-	protected IWorkbenchPart part;
-	protected ISelection selection;
-	protected Object input;
-  protected boolean doRefresh = true;
-	XSDSchema xsdSchema;
-  protected boolean isReadOnly = false;
-  private IStatusLineManager statusLine;
-  protected Composite composite;
-  protected int rightMarginSpace;
-  protected int tableMinimumWidth = 50;
- 
-  /**
-   * 
-   */
-  public AbstractSection()
-  {
-    super();
-  }
-  
-  public void createControls(Composite parent,	TabbedPropertySheetPage tabbedPropertySheetPage)
-  {
-    createControls(parent, tabbedPropertySheetPage.getWidgetFactory());
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-   */
-  public void createControls(Composite parent, TabbedPropertySheetWidgetFactory aFactory)
-  {
-		this.factory = aFactory;
-    GC gc = new GC(parent);
-    Point extent = gc.textExtent("  ...  ");
-    rightMarginSpace = extent.x;
-    gc.dispose();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#setInput(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public void setInput(IWorkbenchPart part, ISelection selection)
-  {
-		Assert.isTrue(selection instanceof IStructuredSelection);
-		this.part = part;
-		this.selection = selection;
-		Object input = ((IStructuredSelection)selection).getFirstElement();
-    this.input = input;
-    
-    if (input instanceof XSDConcreteComponent)
-    {
-      xsdSchema = ((XSDConcreteComponent)input).getSchema();
-      
-      Element element = ((XSDConcreteComponent)input).getElement();
-      if (element instanceof XMLNode)
-      {
-        isReadOnly = false;
-      }
-      else
-      {
-        isReadOnly = true;
-      }
-    }
-    statusLine = getStatusLine();
-    clearErrorMessage();
-
-//		refresh();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#aboutToBeShown()
-   */
-  public void aboutToBeShown()
-  {
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#aboutToBeHidden()
-   */
-  public void aboutToBeHidden()
-  {
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#dispose()
-   */
-  public void dispose()
-  {
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#getMinimumHeight()
-   */
-  public int getMinimumHeight()
-  {
-    return SWT.DEFAULT;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-   */
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#refresh()
-   */
-  public void refresh()
-  {
-  }
-
-  public Object getInput()
-  {
-    if (input instanceof Element)
-    {
-      input = xsdSchema.getCorrespondingComponent((Element)input);
-    }
-    return input;
-  }
-  
-  public XSDSchema getSchema()
-  {
-    return xsdSchema;
-  }
-  
-	/**
-	 * Get the widget factory.
-	 * @return the widget factory.
-	 */
-	public TabbedPropertySheetWidgetFactory getWidgetFactory() {
-		return factory;
-	}
-
-	public void propertyChange(PropertyChangeEvent event)
-	{
-    refresh();
-	}
-
-	
-  public void doWidgetDefaultSelected(SelectionEvent e)
-  {}
-  
-  public void doWidgetSelected(SelectionEvent e)
-  {}
-  
-  /**
-   * @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(SelectionEvent)
-   */
-  public void widgetDefaultSelected(SelectionEvent e)
-  {
-    if (isListenerEnabled() &&
-        getInput() != null &&
-        !isInDoHandle &&
-        !isReadOnly) 
-    {
-      isInDoHandle = true;
-      doWidgetDefaultSelected(e);
-      isInDoHandle = false;
-    }
-    
-  }
-
-  /**
-   * @see org.eclipse.swt.events.SelectionListener#widgetSelected(SelectionEvent)
-   */
-  public void widgetSelected(SelectionEvent e)
-  {
-    if (isListenerEnabled() &&
-        getInput() != null &&
-        !isInDoHandle &&
-        !isReadOnly) 
-    {
-      isInDoHandle = true;
-      doWidgetSelected(e);
-      isInDoHandle = false;
-    }
-    
-  }
-  
-  boolean listenerEnabled = true;
-  /**
-   * Get the value of listenerEnabled.
-   * @return value of listenerEnabled.
-   */
-  public boolean isListenerEnabled() 
-  {
-    return listenerEnabled;
-  }
-  
-  /**
-   * Set the value of listenerEnabled.
-   * @param v  Value to assign to listenerEnabled.
-   */
-  public void setListenerEnabled(boolean  v) 
-  {
-    this.listenerEnabled = v;
-  }
-
-  public void handleEvent(Event event)
-  {
-    if (isListenerEnabled() && !isInDoHandle && !isReadOnly) 
-    {
-      isInDoHandle = true;
-      startDelayedEvent(event);
-      isInDoHandle = false;
-    } // end of if ()
-  }
-  
-  public void doHandleEvent(Event event)
-  {
-    
-  }
-  
-  protected DelayedEvent delayedTask;
-  
-  protected void startDelayedEvent(Event e)
-  {
-    if (delayedTask == null ||
-      delayedTask.getEvent() == null)
-    {
-      delayedTask = new DelayedEvent();
-      delayedTask.setEvent(e);
-      Display.getDefault().timerExec(500,delayedTask);
-    }
-    else
-    {
-      Event delayedEvent = delayedTask.getEvent();
-      
-      if (e.widget == delayedEvent.widget &&
-        e.type == delayedEvent.type)
-      {
-        // same event, just different data, delay new event
-        delayedTask.setEvent(null);
-      }
-      delayedTask = new DelayedEvent();
-      delayedTask.setEvent(e);
-      Display.getDefault().timerExec(500,delayedTask);
-    }
-  }
-  
-  class DelayedEvent implements Runnable
-  {
-    protected Event event;
-    
-    /*
-     * @see Runnable#run()
-     */
-    public void run()
-    {
-      if (event != null)
-      {
-        isInDoHandle = true;
-        doHandleEvent(event);
-        isInDoHandle = false;
-        event = null;
-      }
-    }
-    
-    /**
-     * Gets the event.
-     * @return Returns a Event
-     */
-    public Event getEvent()
-    {
-      return event;
-    }
-
-    /**
-     * Sets the event.
-     * @param event The event to set
-     */
-    public void setEvent(Event event)
-    {
-      this.event = event;
-    }
-
-  }
-
-  boolean isInDoHandle;
-  /**
-   * Get the value of isInDoHandle.
-   * @return value of isInDoHandle.
-   */
-  public boolean isInDoHandle() 
-  {
-    return isInDoHandle;
-  }
-
-  
-  protected IEditorPart getActiveEditor()
-  {
-    IWorkbench workbench = XSDEditorPlugin.getPlugin().getWorkbench();
-    IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
-    IEditorPart editorPart = workbenchWindow.getActivePage().getActiveEditor();
-//    IEditorPart editorPart = part.getSite().getWorkbenchWindow().getActivePage().getActiveEditor();
-
-    return editorPart;
-  }
-
-  static protected IStatusLineManager getStatusLineManager(IEditorPart editorPart)
-  { 
-    IStatusLineManager result = null;
-    try
-    {                       
-      EditorActionBarContributor contributor = (EditorActionBarContributor)editorPart.getEditorSite().getActionBarContributor();
-      result = contributor.getActionBars().getStatusLineManager();
-    }
-    catch (Exception e)
-    {
-    }  
-    return result;
-  }
-
-  protected XSDDOMHelper domHelper = new XSDDOMHelper();
-  /**
-   * Gets the domHelper.
-   * @return Returns a XSDDomHelper
-   */
-  public XSDDOMHelper getDomHelper()
-  {
-    return domHelper;
-  }
-  
-  public DocumentImpl getDocument(Element element)
-  {
-    return (DocumentImpl) element.getOwnerDocument();
-  }
-
-  public void beginRecording(String description, Element element)
-  {
-    getDocument(element).getModel().beginRecording(this, description);
-  }
-  
-  public void endRecording(Element element)
-  {
-    DocumentImpl doc = (DocumentImpl) getDocument(element);
-    
-    doc.getModel().endRecording(this);    
-  }
-
-  protected boolean validateName(String name)
-  {
-    try
-    {
-      return NameValidator.isValid(name);
-    }
-    catch (Exception e)
-    {
-      return false;
-    }
-  }
-
-  // TODO
-  protected boolean validateLanguage(String lang)
-  {
-    return true;
-  }
-
-  // TODO
-  protected boolean validatePrefix(String prefix)
-  {
-    return true;
-  }
-
-  
-  protected Action getNewElementAction(String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateElementAction action = new CreateElementAction(label);
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    action.setXSDSchema(getSchema());
-    action.setSelectionProvider(null);
-    return action;
-  }
-
-  public void setErrorMessage(String message)
-  {
-    if (statusLine != null)
-    {
-      statusLine.setErrorMessage(message);
-      statusLine.update(true);
-    }
-  }
-
-  public void clearErrorMessage()
-  {
-    if (statusLine != null)
-    {
-      statusLine.setErrorMessage(null);
-      statusLine.update(false);
-    }
-  }
-
-  EditorActionBarContributor contributor;
-  protected IStatusLineManager getStatusLine()
-  {
-//    IWorkbench workbench = XSDEditorPlugin.getPlugin().getWorkbench();
-//    IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
-    IEditorPart editorPart = part.getSite().getWorkbenchWindow().getActivePage().getActiveEditor();
-    
-    if (statusLine == null)
-    {
-      try
-      {                       
-        contributor = (EditorActionBarContributor)editorPart.getEditorSite().getActionBarContributor();
-        statusLine = contributor.getActionBars().getStatusLineManager();
-      }
-      catch (Exception e)
-      {
-      }  
-    }
-    return statusLine;
-  }
-  
-  /**
-   * Get the standard label width when labels for sections line up on the left
-   * hand side of the composite. We line up to a fixed position, but if a
-   * string is wider than the fixed position, then we use that widest string.
-   * 
-   * @param parent
-   *            The parent composite used to create a GC.
-   * @param labels
-   *            The list of labels.
-   * @return the standard label width.
-   */
-  protected int getStandardLabelWidth(Composite parent, String[] labels) {
-    int standardLabelWidth = 100;   // STANDARD_LABEL_WIDTH;
-    GC gc = new GC(parent);
-    int indent = gc.textExtent("XXX").x; //$NON-NLS-1$
-    for (int i = 0; i < labels.length; i++) {
-      int width = gc.textExtent(labels[i]).x;
-      if (width + indent > standardLabelWidth) {
-        standardLabelWidth = width + indent;
-      }
-    }
-    gc.dispose();
-    return standardLabelWidth;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AbstractSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AbstractSectionDescriptor.java
deleted file mode 100644
index 68bc6f7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AbstractSectionDescriptor.java
+++ /dev/null
@@ -1,108 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.wst.common.ui.properties.ISectionDescriptor;
-import org.eclipse.wst.common.ui.properties.ITypeMapper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.w3c.dom.Element;
-
-public class AbstractSectionDescriptor implements ISectionDescriptor
-{
-  /**
-   * 
-   */
-  public AbstractSectionDescriptor()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getFilter()
-   */
-  public ITypeMapper getFilter()
-  {
-    return null;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDConcreteComponent.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return null;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return null;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDConcreteComponent || object instanceof Element)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getAfterSection()
-   */
-  public String getAfterSection()
-  {
-    return "";
-  }
-
-  protected boolean inputEquals(Object input, String tagname, boolean isRef)
-  {
-    return XSDDOMHelper.inputEquals(input, tagname, isRef);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AnnotationSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AnnotationSection.java
deleted file mode 100644
index 75da720..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AnnotationSection.java
+++ /dev/null
@@ -1,595 +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.xsd.ui.internal.properties.section;
-
-import java.util.List;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAnnotation;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFacet;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDIdentityConstraintDefinition;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNotationDeclaration;
-import org.eclipse.xsd.XSDRedefine;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-import org.eclipse.xsd.XSDXPathDefinition;
-import org.eclipse.xsd.impl.XSDFactoryImpl;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.CharacterData;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class AnnotationSection extends AbstractSection
-{
-  DocumentationWorkbookPage documentationPage;
-  AppInfoWorkbookPage appInfoPage;
-  XSDWorkbook workbook;
-  XSDFactory factory;
-  
-  /**
-   * 
-   */
-  public AnnotationSection()
-  {
-    super();
-    factory = new XSDFactoryImpl();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-//		Composite composite = getWidgetFactory().createFlatFormComposite(parent);
-//    Composite composite = new Composite(parent, SWT.NONE);
-		FormData data;
-
-    workbook = new XSDWorkbook(parent, SWT.BOTTOM | SWT.FLAT);
-    
-    documentationPage = new DocumentationWorkbookPage(workbook);
-    appInfoPage = new AppInfoWorkbookPage(workbook);
-
-    documentationPage.activate();
-    appInfoPage.activate();
-    workbook.setSelectedPage(documentationPage);
-  }
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-    if (doRefresh)
-    {
-      if (documentationPage.getDocumentationText().isFocusControl() || appInfoPage.getAppInfoText().isFocusControl())
-      {
-        return;
-      }
-      
-      if (isReadOnly)
-      {
-        documentationPage.setEnabled(false);
-        appInfoPage.setEnabled(false);
-      }
-      else
-      {
-        documentationPage.setEnabled(true);
-        appInfoPage.setEnabled(true);
-      }
-      setListenerEnabled(false);
-	    Object input = getInput();
-	    if (input != null)
-	    {
-	      XSDAnnotation xsdAnnotation = getInputXSDAnnotation(false);
-        setInitialText(xsdAnnotation);
-      }
-      setListenerEnabled(true);
-	  }
-	}
-
-  
-  public void doHandleEvent(Event event)
-  {
-    Object input = getInput();
-    if (input != null)
-    {
-      XSDAnnotation xsdAnnotation = getInputXSDAnnotation(true);
-  
-      if (event.widget == documentationPage.getDocumentationText())
-      {
-        documentationPage.doHandleEvent(xsdAnnotation);
-      }
-      else if (event.widget == appInfoPage.getAppInfoText())
-      {
-        appInfoPage.doHandleEvent(xsdAnnotation);
-      }
-    }
-    
-  }
-  
-  protected XSDAnnotation getInputXSDAnnotation(boolean createIfNotExist)
-  {
-    XSDAnnotation xsdAnnotation = null;
-    
-    if (input instanceof XSDAttributeDeclaration)
-    {
-      XSDAttributeDeclaration xsdComp = (XSDAttributeDeclaration)input; 
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDAttributeGroupDefinition)
-    {
-      XSDAttributeGroupDefinition xsdComp = (XSDAttributeGroupDefinition)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDElementDeclaration)
-    {
-      XSDElementDeclaration xsdComp = (XSDElementDeclaration)input; 
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDNotationDeclaration)
-    {
-      XSDNotationDeclaration xsdComp =(XSDNotationDeclaration)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDXPathDefinition)
-    {
-      XSDXPathDefinition xsdComp = (XSDXPathDefinition)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDModelGroup)
-    {
-      XSDModelGroup xsdComp = (XSDModelGroup)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDModelGroupDefinition)
-    {
-      XSDModelGroupDefinition xsdComp = (XSDModelGroupDefinition)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDIdentityConstraintDefinition)
-    {
-      XSDIdentityConstraintDefinition xsdComp = (XSDIdentityConstraintDefinition)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDWildcard)
-    {
-      XSDWildcard xsdComp = (XSDWildcard)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDSchema)
-    {
-      XSDSchema xsdComp = (XSDSchema)input;
-      List list = xsdComp.getAnnotations();
-      if (list.size() > 0)
-      {
-        xsdAnnotation = (XSDAnnotation)list.get(0);
-      }
-      else
-      {
-        if (createIfNotExist && xsdAnnotation == null)
-        {
-          xsdAnnotation = factory.createXSDAnnotation();
-          if (xsdComp.getContents() != null)
-          {
-            xsdComp.getContents().add(0, xsdAnnotation);
-          }
-        }
-      }
-      return xsdAnnotation;
-    }
-    else if (input instanceof XSDFacet)
-    {
-      XSDFacet xsdComp = (XSDFacet)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDTypeDefinition)
-    {
-      XSDTypeDefinition xsdComp = (XSDTypeDefinition)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDInclude)
-    {
-      XSDInclude xsdComp = (XSDInclude)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDImport)
-    {
-      XSDImport xsdComp = (XSDImport)input;
-      xsdAnnotation = xsdComp.getAnnotation();
-      if (createIfNotExist && xsdAnnotation == null)
-      {
-        xsdAnnotation = factory.createXSDAnnotation();
-        xsdComp.setAnnotation(xsdAnnotation);
-      }
-    }
-    else if (input instanceof XSDRedefine)
-    {
-      XSDRedefine xsdComp = (XSDRedefine)input;
-      List list = xsdComp.getAnnotations();
-      if (list.size() > 0)
-      {
-        xsdAnnotation = (XSDAnnotation)list.get(0);
-      }
-      else
-      {
-        if (createIfNotExist && xsdAnnotation == null)
-        {
-// ?
-        }
-      }
-      return xsdAnnotation;
-    }
-    else if (input instanceof XSDAnnotation)
-    {
-      xsdAnnotation = (XSDAnnotation)input;
-    }
-    
-    if (createIfNotExist)
-    {
-      formatAnnotation(xsdAnnotation);
-    }
-
-    return xsdAnnotation;
-  }
-  
-  private void formatAnnotation(XSDAnnotation annotation)
-  {
-    Element element = annotation.getElement();
-    XSDDOMHelper.formatChild(element);
-  }
-  
-
-  public boolean shouldUseExtraSpace()
-  {
-    return true;
-  }
-
-  public void dispose()
-  {
-    factory = null;
-  }
-  
-  private void setInitialText(XSDAnnotation an)
-  {
-    if (documentationPage != null)
-    {
-      documentationPage.setText("");
-    }
-    if (appInfoPage != null)
-    {
-      appInfoPage.setText("");
-    }
-
-    if (an != null)
-    {
-      Element element = an.getElement();
-      try
-      {
-        if (element.hasChildNodes())
-         {
-          // if the element is Text
-          Element docElement = (Element)domHelper.getChildNode(element, XSDConstants.DOCUMENTATION_ELEMENT_TAG);
-          if (docElement != null)
-          {
-            Node node = docElement.getFirstChild();
-            if (node instanceof CharacterData)
-            {
-              documentationPage.setText( ((CharacterData)node).getData());
-            }
-          }
-          
-          Element appInfoElement = (Element)domHelper.getChildNode(element, XSDConstants.APPINFO_ELEMENT_TAG);
-          if (appInfoElement != null)
-          {
-            Node node = appInfoElement.getFirstChild();
-            if (node instanceof CharacterData)
-            {
-              appInfoPage.setText( ((CharacterData)node).getData());
-            }
-          }
-
-        }
-      }
-      catch (Exception e)
-      {
-        
-      }
-    }
-  }
-  
- 
-  class DocumentationWorkbookPage extends XSDWorkbookPage
-  {
-    Text documentationText;
-    Composite page1;
-    
-    public DocumentationWorkbookPage(XSDWorkbook workbook)
-    {
-      super(workbook);
-      this.getTabItem().setText("Documentation");
-    }
-
-    public void setText(String value)
-    {
-      documentationText.setText(value);
-    }
-    
-    public void setEnabled(boolean state)
-    {
-      page1.setEnabled(state);
-    }
-    
-    public String getText()
-    {
-      return documentationText.getText();
-    }
-    
-    public Text getDocumentationText()
-    {
-      return documentationText;
-    }
-    
-    public Control createControl (Composite parent)
-    {
-      page1 = getWidgetFactory().createFlatFormComposite(parent);
-      documentationText = getWidgetFactory().createText(page1, "", SWT.V_SCROLL | SWT.H_SCROLL);
-      documentationText.addListener(SWT.Modify, AnnotationSection.this);
-
-      FormData data = new FormData();
-      data.left = new FormAttachment(0, 0);
-      data.right = new FormAttachment(100, 0);
-      data.top = new FormAttachment(0, 0);
-      data.bottom = new FormAttachment(100, 0);
-      documentationText.setLayoutData(data);
-                  
-      return page1;
-    }
-    
-    public void doHandleEvent(XSDAnnotation xsdAnnotation)
-    {
-      if (xsdAnnotation != null)
-      {
-        Element element = xsdAnnotation.getElement();
-        List documentationList = xsdAnnotation.getUserInformation();
-        Element documentationElement = null;
-        if (documentationList.size() > 0)
-        {
-          documentationElement = (Element)documentationList.get(0);
-        }
-        
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_DOCUMENTATION_COMMENT_CHANGE"), element);
-        
-        if (documentationElement == null)
-        {
-          documentationElement = xsdAnnotation.createUserInformation(null);
-          element.appendChild(documentationElement);
-          XSDDOMHelper.formatChild(documentationElement);
-          // Defect in model....I create it but the model object doesn't appear to be updated
-          // Notice that it is fine for appinfo
-          xsdAnnotation.updateElement();
-          xsdAnnotation.setElement(element);
-        }
-        
-        String newValue = documentationText.getText();
-        if (documentationElement != null)
-        {
-          try
-          {
-            if (documentationElement.hasChildNodes())
-            {
-            // if the element is Text
-              Node node = documentationElement.getFirstChild();
-              if (node instanceof CharacterData)
-              {
-                ((CharacterData)node).setData(newValue);
-              }
-            }
-            else
-            {
-              if (newValue.length() > 0)
-              {
-                Node childNode = documentationElement.getOwnerDocument().createTextNode(newValue);
-                documentationElement.appendChild(childNode);
-              }
-            }
-          }
-          catch (Exception e)
-          {
-          
-          }
-        }
-        endRecording(element);
-      }    
-    }
-  }
-  
-  class AppInfoWorkbookPage extends XSDWorkbookPage
-  {
-    Text appInfoText;
-    Composite page2;
-    
-    public AppInfoWorkbookPage(XSDWorkbook workbook)
-    {
-      super(workbook);
-      this.getTabItem().setText("App Info");
-    }
-    
-    public void setText(String value)
-    {
-      appInfoText.setText(value);
-    }
-
-    public String getText()
-    {
-      return appInfoText.getText();
-    }
-
-    public Text getAppInfoText()
-    {
-      return appInfoText;
-    }
-
-    public void setEnabled(boolean state)
-    {
-      page2.setEnabled(state);
-    }
-
-    public Control createControl (Composite parent)
-    {
-      page2 = getWidgetFactory().createFlatFormComposite(parent);
-      appInfoText = getWidgetFactory().createText(page2, "", SWT.V_SCROLL | SWT.H_SCROLL);
-      appInfoText.addListener(SWT.Modify, AnnotationSection.this);
-      
-      FormData data = new FormData();
-      data.left = new FormAttachment(0, 0);
-      data.right = new FormAttachment(100, 0);
-      //data.top = new FormAttachment(documentationText, +ITabbedPropertyConstants.HSPACE);
-      data.top = new FormAttachment(0, 0);
-      data.bottom = new FormAttachment(100, 0);
-      appInfoText.setLayoutData(data);
-
-      return page2;
-    }
-    
-    public void doHandleEvent(XSDAnnotation xsdAnnotation)
-    {
-      if (xsdAnnotation != null)
-      {
-        Element element = xsdAnnotation.getElement();
-        List appInfoList = xsdAnnotation.getApplicationInformation();
-        
-        Element appInfoElement = null;
-        if (appInfoList.size() > 0)
-        {
-          appInfoElement = (Element)appInfoList.get(0);
-        }
-
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_COMMENT_CHANGE"), element);
-        if (appInfoElement == null)
-        {
-          appInfoElement = xsdAnnotation.createApplicationInformation(null);
-          element.appendChild(appInfoElement);
-          XSDDOMHelper.formatChild(appInfoElement);
-        }
-        
-        String newValue = appInfoText.getText();
-        if (appInfoElement != null)
-        {
-          try
-          {
-            if (appInfoElement.hasChildNodes())
-            {
-              // if the element is Text
-              Node node = appInfoElement.getFirstChild();
-              if (node instanceof CharacterData)
-              {
-                ((CharacterData)node).setData(newValue);
-              }
-            }
-            else
-            {
-              if (newValue.length() > 0)
-              {
-                Node childNode = appInfoElement.getOwnerDocument().createTextNode(newValue);
-                appInfoElement.appendChild(childNode);
-              }
-            }
-          }
-          catch (Exception e)
-          {
-
-          }
-          endRecording(element);          
-        }
-      }    
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AnnotationSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AnnotationSectionDescriptor.java
deleted file mode 100644
index e6bf7b8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AnnotationSectionDescriptor.java
+++ /dev/null
@@ -1,109 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDAnnotation;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFacet;
-import org.eclipse.xsd.XSDIdentityConstraintDefinition;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNotationDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-import org.eclipse.xsd.XSDXPathDefinition;
-
-public class AnnotationSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public AnnotationSectionDescriptor()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.annotation";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDAnnotation.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new AnnotationSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.documentation";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDAttributeDeclaration ||
-          object instanceof XSDAttributeGroupDefinition ||
-          object instanceof XSDElementDeclaration ||
-          object instanceof XSDNotationDeclaration ||
-          object instanceof XSDXPathDefinition ||
-          object instanceof XSDModelGroup ||
-          object instanceof XSDModelGroupDefinition ||
-          object instanceof XSDIdentityConstraintDefinition ||
-          object instanceof XSDWildcard ||
-          object instanceof XSDSchema ||
-          object instanceof XSDFacet || 
-          object instanceof XSDTypeDefinition ||
-          object instanceof XSDAnnotation ||
-          object instanceof XSDSchemaDirective)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewContentProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewContentProvider.java
deleted file mode 100644
index b5ffe41..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewContentProvider.java
+++ /dev/null
@@ -1,289 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDAbstractAdapter;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDAdapterFactoryLabelProvider;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDModelAdapterFactoryImpl;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-
-
-public class AttributesViewContentProvider implements ITreeContentProvider, ITableLabelProvider, ILabelProvider, INotifyChangedListener
-{
-  IEditorPart editorPart;
-
-  static XSDModelAdapterFactoryImpl xsdModelAdapterFactory = XSDModelAdapterFactoryImpl.getInstance();
-  static XSDAdapterFactoryLabelProvider adapterFactoryLabelProvider = new XSDAdapterFactoryLabelProvider(xsdModelAdapterFactory);  // XSDTextEditor.getLabelProvider();
-  
-  XSDAbstractAdapter elementAdapter;
-  XSDAbstractAdapter ctAdapter;
-  XSDComplexTypeDefinition ct;
-  
-  /**
-   * 
-   */
-  public AttributesViewContentProvider()
-  {
-    super();
-//    if (xsdModelAdapterFactory instanceof IChangeNotifier)
-//    {
-//      ((IChangeNotifier)xsdModelAdapterFactory).addListener(this);
-//    }
-
-  }
-  
-  Viewer attributesViewer;
-  public AttributesViewContentProvider(IEditorPart editorPart, Viewer viewer)
-  {
-    super();
-    this.editorPart = editorPart;
-    this.attributesViewer = viewer;
-  }
-  
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
-   */
-  public Object[] getChildren(Object inputElement)
-  {
-    List list = new ArrayList();
-    ct = null;
-    if (inputElement instanceof XSDElementDeclaration)
-    {
-      XSDElementDeclaration xsdElement = (XSDElementDeclaration)inputElement;
-      
-      if (elementAdapter != null)
-      {
-        elementAdapter.removeListener((INotifyChangedListener)this);
-      }
-      elementAdapter = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt(xsdElement, xsdModelAdapterFactory);
-      elementAdapter.addListener((INotifyChangedListener)this);
-
-      if (xsdElement.getAnonymousTypeDefinition() instanceof XSDComplexTypeDefinition)
-      {
-        ct = (XSDComplexTypeDefinition)xsdElement.getAnonymousTypeDefinition();
-      }
-      else
-      {
-        XSDTypeDefinition xsdType = xsdElement.getTypeDefinition();
-        if (xsdType instanceof XSDComplexTypeDefinition)
-        {
-          ct = (XSDComplexTypeDefinition)xsdType;
-        }
-      }
-    }
-    else if (inputElement instanceof XSDComplexTypeDefinition)
-    {
-      ct = (XSDComplexTypeDefinition)inputElement;
-    }
-
-    if (ct != null)
-    {
-      if (ctAdapter != null)
-      {
-        ctAdapter.removeListener((INotifyChangedListener)this);
-      }
-      ctAdapter = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt(ct, xsdModelAdapterFactory);
-      ctAdapter.addListener((INotifyChangedListener)this);
-      
-      XSDWildcard wildcard = ct.getAttributeWildcardContent();
-      if (wildcard != null)
-      {
-        list.add(wildcard);
-      }
-      
-      Iterator i = ct.getAttributeContents().iterator();
-      while (i.hasNext())
-      {
-        XSDAttributeGroupContent attributeGroupContent = (XSDAttributeGroupContent)i.next();
-        if (attributeGroupContent instanceof XSDAttributeGroupDefinition)
-        {
-          XSDAttributeGroupDefinition attributeGroupDefinition = (XSDAttributeGroupDefinition)attributeGroupContent;
-          XSDAbstractAdapter a = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt(attributeGroupDefinition, xsdModelAdapterFactory);
-          a.removeListener((INotifyChangedListener)this);
- 	        a.addListener((INotifyChangedListener)this);
- 	        list.add(attributeGroupDefinition);
-        }
-        else if (attributeGroupContent instanceof XSDAttributeUse)
-        {
-          XSDAttributeUse attributeUse = (XSDAttributeUse)attributeGroupContent;
-          
-          XSDAttributeDeclaration attribute = attributeUse.getAttributeDeclaration();
-          
-          boolean isRef = XSDDOMHelper.isAttributeRef(ct.getElement(), attribute.getQName(), attribute.getTargetNamespace());
-         
-          if (isRef)
-          {
-            XSDAbstractAdapter a = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt(attributeUse, xsdModelAdapterFactory);            
-            a.removeListener((INotifyChangedListener)this);
-   	        a.addListener((INotifyChangedListener)this);
-            list.add(attributeUse);
-          }
-          else
-          {
-            XSDAbstractAdapter a = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt(attribute, xsdModelAdapterFactory);            
-            a.removeListener((INotifyChangedListener)this);
-   	        a.addListener((INotifyChangedListener)this);
-            list.add(attribute);
-          }
-        }
-      }
-    }
-    return list.toArray();
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
-   */
-  public Object getParent(Object element)
-  {
-    return null;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
-   */
-  public boolean hasChildren(Object element)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
-   */
-  public Image getColumnImage(Object element, int columnIndex)
-  {
-    if (element instanceof XSDConcreteComponent)
-    {
-	    return adapterFactoryLabelProvider.getImage((XSDConcreteComponent)element);
-    }
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
-   */
-  public String getColumnText(Object element, int columnIndex)
-  {
-    if (element instanceof XSDConcreteComponent)
-    {
-	    XSDAbstractAdapter a = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt((XSDConcreteComponent)element, xsdModelAdapterFactory);
-	    return a.getText((XSDConcreteComponent)element);
-    }
-    return ""; 
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-   */
-  public Image getImage(Object element)
-  {
-    if (element instanceof XSDConcreteComponent)
-    {
-	    return adapterFactoryLabelProvider.getImage((XSDConcreteComponent)element);
-    }
-    return null;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-   */
-  public String getText(Object element)
-  {
-    if (element instanceof XSDConcreteComponent)
-    {
-	    XSDAbstractAdapter a = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt((XSDConcreteComponent)element, xsdModelAdapterFactory);
-	    return a.getText((XSDConcreteComponent)element);
-    }
-    return ""; 
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-   */
-  public Object[] getElements(Object inputElement)
-  {
-    return getChildren(inputElement);
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-   */
-  public void dispose()
-  {
-    if (elementAdapter != null)
-    {
-      elementAdapter.removeListener(this);
-    }
-    if (ctAdapter != null)
-    {
-      ctAdapter.removeListener((INotifyChangedListener)this);
-    }
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-   */
-  Viewer viewer;
-  public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
-  {
-//    System.out.println("input changed " + oldInput + "\n" + newInput);
-    this.viewer = viewer;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
-   */
-  public void addListener(ILabelProviderListener listener)
-  {
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
-   */
-  public boolean isLabelProperty(Object element, String property)
-  {
-    return false;
-  }
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
-   */
-  public void removeListener(ILabelProviderListener listener)
-  {
-  }
-
-  public void notifyChanged(Notification notification)
-  {
-    if (attributesViewer != null && !attributesViewer.getControl().isDisposed())
-    {
-      if (attributesViewer instanceof StructuredViewer)
-      {
-        attributesViewer.refresh();
-      }
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewSection.java
deleted file mode 100644
index 8b79242..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewSection.java
+++ /dev/null
@@ -1,460 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.views.properties.PropertySheetPage;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.XSDMenuListener;
-import org.eclipse.wst.xsd.ui.internal.actions.AddAttributeAction;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateAttributeAndRequired;
-import org.eclipse.wst.xsd.ui.internal.actions.DOMAttribute;
-import org.eclipse.wst.xsd.ui.internal.actions.DeleteAction;
-import org.eclipse.wst.xsd.ui.internal.properties.XSDPropertySourceProvider;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDFactory;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class AttributesViewSection extends AbstractSection implements ISelectionChangedListener
-{
-  AttributeTableTreeViewer viewer;
-  AttributesPropertySheetPage propertySheetPage;
-
-  /**
-   * 
-   */
-  public AttributesViewSection()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent,	TabbedPropertySheetWidgetFactory factory) {
-		super.createControls(parent, factory);
-		
-		composite =	getWidgetFactory().createFlatFormComposite(parent);
-    SashForm sashForm = new SashForm(composite, SWT.HORIZONTAL);
-
-    FormData data = new FormData();
-    data.top = new FormAttachment(0, 0);
-    data.left = new FormAttachment(0, 0);
-    data.right = new FormAttachment(100, 0);
-    data.bottom = new FormAttachment(100, 0);
-    sashForm.setLayoutData(data);
-    
-    viewer = new AttributeTableTreeViewer(sashForm);
-    propertySheetPage = new AttributesPropertySheetPage();
-    propertySheetPage.createControl(sashForm);
-
-		AttributesViewContentProvider provider = new AttributesViewContentProvider(getActiveEditor(), viewer); 
-		viewer.setContentProvider(provider);
-
-		viewer.setLabelProvider(provider);
-		viewer.addSelectionChangedListener(this);
-
-    propertySheetPage.setPropertySourceProvider(new XSDPropertySourceProvider());
-	}
-
-  public void setInput(IWorkbenchPart part, ISelection selection)
-  {
-    super.setInput(part, selection);
-    if (input instanceof XSDElementDeclaration)
-    {
-      XSDElementDeclaration elementDeclaration = (XSDElementDeclaration)input;
-      if (elementDeclaration.isElementDeclarationReference())
-      {
-        input = elementDeclaration.getResolvedElementDeclaration();
-        
-        isReadOnly = (!(elementDeclaration.getResolvedElementDeclaration().getRootContainer() == xsdSchema));
-      }
-    }
-  }
-  
-	public void selectionChanged(SelectionChangedEvent event)
-	{
-	  propertySheetPage.selectionChanged(part, event.getSelection());
-	}
-	
-	public void selectionChanged(IWorkbenchPart part, ISelection selection)
-	{
-	}
-
-  public void aboutToBeShown()
-  {
-		refresh();
-  }
-	
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-    if (isReadOnly)
-    {
-      composite.setEnabled(false);
-    }
-    else
-    {
-      composite.setEnabled(true);
-    }
-    setListenerEnabled(false);
-	  if (viewer != null)
-	  {
-      viewer.setInput(getInput());
-      viewer.refresh();
-	  }
-    setListenerEnabled(true);
-	}
-	
-  public void dispose()
-  {
-//    if (propertySheetPage != null)
-//    {
-//      propertySheetPage.dispose();
-//      propertySheetPage = null;
-//    }
-//    if (viewer != null)
-//    {
-//      viewer = null;
-//    }
-  }
-
-  public boolean shouldUseExtraSpace()
-  {
-    return true;
-  }
-
-	
-	class AttributeTableTreeViewer extends TreeViewer // ExtendedTableTreeViewer
-	{
-	  public AttributeTableTreeViewer(Composite c)
-	  {
-	    super(c);
-	    
-	    MenuManager menuManager = new MenuManager("#popup");//$NON-NLS-1$
-	    menuManager.setRemoveAllWhenShown(true);
-	    Menu menu = menuManager.createContextMenu(getTree());
-	    getTree().setMenu(menu);
-
-	    XSDAttributeMenuListener menuListener = new XSDAttributeMenuListener(this);
-	    menuManager.addMenuListener(menuListener);
-
-	  }
-	  
-	  public class XSDAttributeMenuListener extends XSDMenuListener
-	  {
-	    public XSDAttributeMenuListener(TreeViewer viewer)
-	    {
-	      super(viewer);
-        selectionProvider = viewer;
-       
-	      deleteAction = new DeleteAction(XSDEditorPlugin.getXSDString("_UI_ACTION_DELETE"), AttributesViewSection.this.getActiveEditor(), getXSDSchema());
-        deleteAction.setSelectionProvider(selectionProvider);
-        selectionProvider.addSelectionChangedListener(deleteAction);
-	    }
-	    
-	    protected XSDSchema getXSDSchema()
-	    {
-        return xsdSchema;
-//        return getSchema();
-//	      XSDConcreteComponent xsdInput = (XSDConcreteComponent)AttributesViewSection.this.getInput();
-//	      return xsdInput.getSchema();
-	    }
-	    
-	    protected Object getSelectedElement()
-	    {
-        XSDComponent xsdInput = (XSDComponent)AttributesViewSection.this.getInput();
-        
-        if (xsdInput instanceof XSDElementDeclaration)
-        {
-          XSDElementDeclaration xsdElement = (XSDElementDeclaration)xsdInput;
-          XSDTypeDefinition xsdType = xsdElement.getType();
-          if (xsdType instanceof XSDComplexTypeDefinition)
-          {
-            XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)xsdType;
-            return ct;
-          }
-          return xsdElement;
-        }
-        else if (xsdInput instanceof XSDComplexTypeDefinition)
-        {
-          return xsdInput;
-        }
-
-        return null;
-	    }
-      
-      public void menuAboutToShow(IMenuManager manager)
-      {
-        updateXSDSchema();
-        if (xsdSchema == null)
-        {
-          return;
-        }
-
-        Object selectedElementObj = getSelectedElement();
-        
-        Element selectedElement = null;
-
-        if (selectedElementObj instanceof XSDComplexTypeDefinition)
-        {
-          selectedElement = ((XSDComplexTypeDefinition)selectedElementObj).getElement();
-        }
-        
-        addContextItems(manager, selectedElement, null);
-
-        if (!selectionProvider.getSelection().isEmpty())
-        {
-          // Add context menu items for selected element
-//          addContextItems(manager, selectedElement, null);
-          
-          manager.add(new Separator());
-          if (deleteAction != null)
-          {
-            deleteAction.setXSDSchema(getXSDSchema());
-            manager.add(deleteAction);
-          }
-        }
-      }
-	    
-	    protected void addContextItems(IMenuManager manager, Element parent, Node relativeNode)
-	    {
-	      ArrayList attributes = null;
-	      if (XSDDOMHelper.inputEquals(parent, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-	      { //
-	        boolean annotationExists = false;
-	        boolean contentExists = false;
-	        boolean complexOrSimpleContentExists = false;
-	        boolean anyAttributeExists = false;
-	        Node annotationNode = null;
-	        Element contentNode = null;
-	        Node anyAttributeNode = null;
-	        NodeList children = parent.getChildNodes();
-	        
-	        for (int i=0; i < children.getLength(); i++)
-	        {
-	          Node child = children.item(i);
-	          if (child != null && child instanceof Element)
-	          {
-	            if (XSDDOMHelper.inputEquals((Element)child, XSDConstants.ANNOTATION_ELEMENT_TAG, false))
-	            {
-	              annotationNode = child;
-	              annotationExists = true;
-	            }
-	            else if (XSDDOMHelper.inputEquals((Element)child, XSDConstants.SEQUENCE_ELEMENT_TAG, false) ||
-	                     XSDDOMHelper.inputEquals((Element)child, XSDConstants.ALL_ELEMENT_TAG, false) ||
-	                     XSDDOMHelper.inputEquals((Element)child, XSDConstants.CHOICE_ELEMENT_TAG, false) ||
-	                     XSDDOMHelper.inputEquals((Element)child, XSDConstants.GROUP_ELEMENT_TAG, true) ||
-	                     XSDDOMHelper.inputEquals((Element)child, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false) ||
-	                     XSDDOMHelper.inputEquals((Element)child, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-	            {
-	              contentExists = true;
-	              contentNode = (Element)child;
-
-	              if (XSDDOMHelper.inputEquals((Element)child, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false) ||
-	                  XSDDOMHelper.inputEquals((Element)child, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-	              {
-	                complexOrSimpleContentExists = true;
-	              }
-	            } 
-	            else if (XSDDOMHelper.inputEquals((Element)child, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false))
-	            {
-	              anyAttributeExists = true;
-	              anyAttributeNode = child;
-	            }
-	          }
-	        }
-//	        addCreateAnnotationActionIfNotExist(manager, XSDConstants.ANNOTATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANNOTATION"), attributes, parent, parent.getFirstChild());
-//	        manager.add(new Separator());
-//	        addSetBaseTypeAction(manager, parent);
-//	        if (annotationExists)
-//	        {
-//	          if (!contentExists)
-//	          {
-//	            addCreateElementAction(manager, XSDConstants.SEQUENCE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"), attributes, parent, annotationNode.getNextSibling());
-//	            addCreateSimpleContentAction(manager, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SIMPLE_CONTENT"), attributes, parent, annotationNode.getNextSibling());
-//	            addCreateSimpleContentAction(manager, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_COMPLEX_CONTENT"), attributes, parent, annotationNode.getNextSibling());
-//	            addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, annotationNode.getNextSibling());
-//	            attributes = null;
-//	          }
-//	        }
-//	        else
-//	        {
-//	          if (!contentExists)
-//	          {
-//	            addCreateElementAction(manager, XSDConstants.SEQUENCE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_CONTENT_MODEL"), attributes, parent, parent.getFirstChild());
-//	            addCreateSimpleContentAction(manager, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_SIMPLE_CONTENT"), attributes, parent, parent.getFirstChild());
-//	            addCreateSimpleContentAction(manager, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_COMPLEX_CONTENT"), attributes, parent, parent.getFirstChild());
-//	            addCreateElementRefAction(manager, XSDConstants.GROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ADD_GROUP_REF"), parent, parent.getFirstChild());
-//	            attributes = null;
-//	          }
-//	        }
-//
-//	        manager.add(new Separator());
-
-	        if (anyAttributeExists)
-	        {
-	          if (!complexOrSimpleContentExists)
-	          {
-	            attributes = new ArrayList();
-	            attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE,
-	                                            getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-	            attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-	            addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, anyAttributeNode);
-	            attributes = null;
-//	   ARE ATTRIBUTE GROUPS ALLOWED ?
-//	            addCreateElementAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, "_UI_ACTION_ADD_ATTRIBUTE_GROUP", attributes, parent, anyAttributeNode);
-	            addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, anyAttributeNode);
-	            addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, anyAttributeNode);
-	          }
-	        }
-	        else
-	        {
-	          if (!complexOrSimpleContentExists)
-	          {
-	            attributes = new ArrayList();
-	            attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE,
-	                                            getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-	            attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-	            addCreateElementAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-	            attributes = null;
-	            addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), parent, parent.getLastChild());
-	            addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), parent, parent.getLastChild());
-	            attributes = null;
-	            addCreateElementActionIfNotExist(manager, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"), attributes, parent, parent.getLastChild());
-	          }
-            else
-            {
-              // new model based add attribute action
-              XSDComplexTypeDefinition xsdCT = (XSDComplexTypeDefinition)getXSDSchema().getCorrespondingComponent(parent);
-              manager.add(new AddAttributeAction(XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"), xsdCT));
-
-              Element derivedByElement = domHelper.getDerivedByElement(contentNode);
-              if (derivedByElement != null)
-              {
-                attributes = null;
-                addCreateElementRefAction(manager, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"), derivedByElement, derivedByElement.getLastChild());
-                addCreateElementRefAction(manager, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"), derivedByElement, derivedByElement.getLastChild());
-                attributes = null;
-                addCreateElementActionIfNotExist(manager, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"), attributes, derivedByElement, derivedByElement.getLastChild());
-              }
-            }
-	        }
-	      }
-	      else if (parent == null) {	      
-	      	XSDElementDeclaration ed = (XSDElementDeclaration)input;      
-	      	if (ed.getTypeDefinition() != null) 
-	      	{
-	      		XSDComplexTypeDefinition td = XSDFactory.eINSTANCE.createXSDComplexTypeDefinition();
-	      	}
-	      
-	      	// Add Attribute
-	      	attributes = new ArrayList();
-	      	attributes.add(new DOMAttribute(XSDConstants.NAME_ATTRIBUTE,
-                                          getNewName(parent, XSDConstants.ATTRIBUTE_ELEMENT_TAG, "Attribute", false)));
-	      	attributes.add(new DOMAttribute(XSDConstants.TYPE_ATTRIBUTE, getBuiltInStringQName()));
-	      	manager.add(new CreateAttributeAndRequired(XSDConstants.ATTRIBUTE_ELEMENT_TAG,
-					   XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE"),
-					   attributes,
-					   getXSDSchema(),
-					   selectionProvider,
-					   ed));
-	      	
-	      	// Add Attribute Reference
-	      	attributes = null;
-	      	attributes = new ArrayList();
-	        String ref = getFirstGlobalElementTagName(XSDConstants.ATTRIBUTE_ELEMENT_TAG);
-	        attributes.add(new DOMAttribute(XSDConstants.REF_ATTRIBUTE, ref));
-	      
-	        Action action = new CreateAttributeAndRequired(XSDConstants.ATTRIBUTE_ELEMENT_TAG,
-					   XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_REFERENCE"),
-					   attributes,
-					   getXSDSchema(),
-					   selectionProvider,
-					   ed);
-	        manager.add(action);
-	        action.setEnabled(ref != null);
-
-	        // Add Attribute Group Reference
-	        attributes = null;
-	      	attributes = new ArrayList();
-	        ref = getFirstGlobalElementTagName(XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG);
-	        attributes.add(new DOMAttribute(XSDConstants.REF_ATTRIBUTE, ref));
-	        
-	        action = new CreateAttributeAndRequired(XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG,
-					   XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ATTRIBUTE_GROUP_REF"),
-					   attributes,
-					   getXSDSchema(),
-					   selectionProvider,
-					   ed);
-
-	      	manager.add(action);
-	      	action.setEnabled(ref != null);
-	      	
-	      	// Add Any Attribute
-	      	attributes = null;
-	      	if (getFirstChildNodeIfExists(parent, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false) == null)
-	        {
-	      		action = new CreateAttributeAndRequired(XSDConstants.ANYATTRIBUTE_ELEMENT_TAG,
-						   XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ANY_ATTRIBUTE"),
-						   attributes,
-						   getXSDSchema(),
-						   selectionProvider,
-						   ed);
-	      		manager.add(action);
-	         }
-	      }
-	    }
-	  }
-	}
-	
-	class AttributesPropertySheetPage extends PropertySheetPage implements INotifyChangedListener
-	{
-	  public AttributesPropertySheetPage()
-	  {
-	    super();
-	  }
-	  
-	  public void notifyChanged(Notification notification)
-	  {
-	    System.out.println("Notification");
-	  }
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewSectionDescriptor.java
deleted file mode 100644
index 51f233c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/AttributesViewSectionDescriptor.java
+++ /dev/null
@@ -1,101 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-
-public class AttributesViewSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public AttributesViewSectionDescriptor()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.attributes";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDElementDeclaration.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new AttributesViewSection();
-  }
-
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDElementDeclaration)
-      {
-// Remove this to fix bug 3870 Element references should have the same properties as elements 
-//        XSDElementDeclaration elementDeclaration = (XSDElementDeclaration)object;
-//        if (elementDeclaration.isElementDeclarationReference())
-//        {
-//          return false;
-//        }
-        return true;
-      }
-      else if (object instanceof XSDComplexTypeDefinition)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.attributes";
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getAfterSection()
-   */
-  public String getAfterSection()
-  {
-    return "";
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/CommonDirectivesSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/CommonDirectivesSection.java
deleted file mode 100644
index 1611d4f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/CommonDirectivesSection.java
+++ /dev/null
@@ -1,157 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDRedefine;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDParser;
-
-public class CommonDirectivesSection extends AbstractSection
-{
-  Text schemaLocationText;
-  Button wizardButton;
-  StyledText errorText;
-  Color red;
-
-  // TODO: common up code with XSDSelectIncludeFileWizard
-  public void doHandleEvent(Event event)
-  {
-    errorText.setText("");
-    if (event.type == SWT.Modify)
-    {
-      if (event.widget == schemaLocationText)
-      {
-        String errorMessage = "";
-        boolean isValidSchemaLocation = true;
-        String xsdModelFile = schemaLocationText.getText();
-        String namespace = "";
-        XSDSchema externalSchema = null;
-        
-        if (xsdModelFile.length() == 0)
-        {
-          handleSchemaLocationChange(xsdModelFile, "", null);
-          return;
-        }
-
-        try
-        {
-          IFile currentIFile = ((IFileEditorInput)getActiveEditor().getEditorInput()).getFile();
-
-          URI newURI = URI.createURI(xsdModelFile);
-          String xsdFile = URIHelper.getRelativeURI(newURI.toString(), currentIFile.getFullPath().toString());
-          final String normalizedXSDFile = URIHelper.normalize(xsdFile, currentIFile.getLocation().toString(), "");
-          
-          XSDParser parser = new XSDParser();
-          parser.parse(normalizedXSDFile);
-          
-          externalSchema = parser.getSchema();
-
-          if (externalSchema != null)
-          {
-            String extNamespace = externalSchema.getTargetNamespace();
-            if (extNamespace == null) extNamespace = "";
-            namespace = extNamespace;
-            
-            if (externalSchema.getDiagnostics() != null &&
-                externalSchema.getDiagnostics().size() > 0)
-            {
-              isValidSchemaLocation = false;
-              errorMessage = XSDEditorPlugin.getPlugin().getString("_UI_INCORRECT_XML_SCHEMA", xsdModelFile);
-            }  
-            else
-            {
-              String currentNameSpace = getSchema().getTargetNamespace();
-              if (input instanceof XSDInclude || input instanceof XSDRedefine)
-              {  
-                // Check the namespace to make sure they are the same as current file
-                if (extNamespace != null)
-                {
-                  if (currentNameSpace != null && !extNamespace.equals(currentNameSpace))
-                  {
-                    errorMessage = XSDEditorPlugin.getPlugin().getString("_UI_DIFFERENT_NAME_SPACE", xsdModelFile);
-                    isValidSchemaLocation = false;
-                  }
-                }
-              }
-              else
-              {  
-                // Check the namespace to make sure they are different from the current file
-                if (extNamespace != null)
-                {
-                  if (currentNameSpace != null && extNamespace.equals(currentNameSpace))
-                  {
-                    errorMessage = XSDEditorPlugin.getPlugin().getString("_UI_SAME_NAME_SPACE", xsdModelFile);
-                    isValidSchemaLocation = false;
-                  }
-                }
-              }
-            }
-          }
-          else
-          {
-            errorMessage = "Invalid file";
-            isValidSchemaLocation = false;
-          }
-        }
-        catch(Exception e)
-        {
-          errorMessage = "Invalid file";
-          isValidSchemaLocation = false;
-        }
-        finally
-        {
-          if (!isValidSchemaLocation)
-          {
-            errorText.setText(errorMessage);
-            int length = errorText.getText().length();
-            red = new Color(null, 255, 0, 0);
-            StyleRange style = new StyleRange(0, length, red, schemaLocationText.getBackground());
-            errorText.setStyleRange(style);
-          }
-          else
-          {
-            handleSchemaLocationChange(xsdModelFile, namespace, externalSchema);          
-          }
-        }
-      }
-    }
-  }
-  
-  protected void handleSchemaLocationChange(String schemaFileString, String namespace, XSDSchema externalSchema)
-  {
-    
-  }
-
-  
-  public void dispose()
-  {
-    super.dispose();
-    if (red != null)
-    {
-      red.dispose();
-      red = null;
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ComplexTypeSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ComplexTypeSection.java
deleted file mode 100644
index 866f983..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ComplexTypeSection.java
+++ /dev/null
@@ -1,245 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.SetBaseTypeAction;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xml.XMLComponentSpecification;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionDialog;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDSetTypeHelper;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class ComplexTypeSection extends AbstractSection
-{
-  private String DERIVED_BY_ID = "derived by"; // XSDEditorPlugin.getXSDString("_UI_LABEL_DERIVED_BY"); //$NON-NLS-1$ 
-  private String BASE_TYPE_ID = "base type"; //  XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE"); //$NON-NLS-1$
-  private String derivedByChoicesComboValues[] =
-  {
-        "",
-        XSDConstants.RESTRICTION_ELEMENT_TAG,
-        XSDConstants.EXTENSION_ELEMENT_TAG
-  };
-
-  /**
-   * 
-   */
-  public ComplexTypeSection()
-  {
-    super();
-  }
-
-	Text baseTypeCombo;
-	CCombo derivedByCombo;
-	Button button;
-
-	/**
-	 * A helper to listen for events that indicate that a text
-	 * field has been changed.
-	 */
-	private TextChangeHelper listener = new TextChangeHelper()
-	{
-		public void textChanged(Control control)
-		{
-			Object input = getInput();
-			refresh();
-		}
-	};
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite =	getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-		baseTypeCombo = getWidgetFactory().createText(composite, ""); //$NON-NLS-1$
-		CLabel baseTypeLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE_WITH_COLON")); //$NON-NLS-1$ 
-
-    button = getWidgetFactory().createButton(composite, "", SWT.PUSH);
-    button.setImage(XSDEditorPlugin.getXSDImage("icons/browsebutton.gif")); //$NON-NLS-1$
-    baseTypeCombo.setEditable(false);
-    baseTypeCombo.addListener(SWT.Modify, this);
-
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-    data.right = new FormAttachment(button, 0);
-		baseTypeCombo.setLayoutData(data);
-
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(baseTypeCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(button, 0, SWT.CENTER);
-		baseTypeLabel.setLayoutData(data);
-
-    button.addSelectionListener(this);
-		data = new FormData();
-    data.left = new FormAttachment(100, -rightMarginSpace + 2);
-		data.right = new FormAttachment(100,0);
-    data.top = new FormAttachment(baseTypeCombo, 0, SWT.CENTER);
-		button.setLayoutData(data);
-		
-		derivedByCombo = getWidgetFactory().createCCombo(composite, SWT.FLAT);
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(baseTypeCombo, +ITabbedPropertyConstants.VSPACE);
-		derivedByCombo.setLayoutData(data);
-		derivedByCombo.setItems(derivedByChoicesComboValues);
-		derivedByCombo.addSelectionListener(this);
-
-		CLabel derivedByLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_DERIVED_BY")); //$NON-NLS-1$
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(derivedByCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(derivedByCombo, 0, SWT.CENTER);
-		derivedByLabel.setLayoutData(data);
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-	  setListenerEnabled(false);
-    
-    if (isReadOnly)
-    {
-      composite.setEnabled(false);
-    }
-    else
-    {
-      composite.setEnabled(true);
-    }
-
-	  Object input = getInput();
-	  baseTypeCombo.setText(""); //$NON-NLS-1$
-	  
-    if (input instanceof XSDComplexTypeDefinition)
-    {
-      XSDComplexTypeDefinition complexType = (XSDComplexTypeDefinition)input;
-      Element element = complexType.getElement();
-      Element contentModelElement = getDomHelper().getContentModelFromParent(element);    
-      String baseType = getDomHelper().getBaseType(contentModelElement);
-    
-      derivedByCombo.setText(getDomHelper().getDerivedByName(contentModelElement));
-
-      if (baseType != null)
-      {
-        baseTypeCombo.setText(baseType);
-      }
-    }	  
-	  
-	  setListenerEnabled(true);
-	}
-	
-  /**
-   * @see org.eclipse.swt.events.SelectionListener#widgetSelected(SelectionEvent)
-   */
-  public void widgetSelected(SelectionEvent e)
-  {
-    XSDComplexTypeDefinition xsdComplexType = (XSDComplexTypeDefinition)getInput();
-    Element ctElement = xsdComplexType.getElement();
-    if (e.widget == button)
-    {
-	    Shell shell = Display.getCurrent().getActiveShell();
-	    Element element = null;
-	    if (xsdComplexType.getContent() != null)
-	    {
-  	    element = ((XSDComplexTypeDefinition)getInput()).getContent().getElement();
-	    }
-	    
-//	    SimpleContentBaseTypeOptionsDialog dialog = new SimpleContentBaseTypeOptionsDialog(shell, element, BASE_TYPE_ID, ((XSDConcreteComponent)getInput()).getSchema());
-//	    dialog.setBlockOnOpen(true);
-//	    dialog.create();
-//	    int result = dialog.open();
-        
-        IFile currentIFile = ((IFileEditorInput)getActiveEditor().getEditorInput()).getFile();
-        
-        Object input = getInput();
-        XSDSchema schema = null;
-        if (input instanceof XSDConcreteComponent) {
-            schema = ((XSDConcreteComponent) input).getSchema();
-        }
-        
-        XSDComponentSelectionProvider provider = new XSDComponentSelectionProvider(currentIFile, schema);
-        XSDComponentSelectionDialog dialog = new XSDComponentSelectionDialog(shell, "Set Type", provider);  // TODO: Externalize This
-        provider.setDialog(dialog);
-        dialog.setBlockOnOpen(true);
-        dialog.create();
-        int result = dialog.open();
-   
-	    if (result == Window.OK)
-	    {
-            XMLComponentSpecification spec = dialog.getSelection();            
-            XSDSetTypeHelper helper = new XSDSetTypeHelper(currentIFile, schema);
-            helper.addImportIfNecessary(element, spec);
-            
-            String typeString = helper.getPrefixedTypeName(spec);
-            String derivedBy = getDomHelper().getDerivedByName(element);
-            SetBaseTypeAction setBaseTypeAction = new SetBaseTypeAction(XSDEditorPlugin.getXSDString("_UI_LABEL_SET_BASE_TYPE")); //$NON-NLS-1$
-            setBaseTypeAction.setXSDSchema(xsdSchema);
-            setBaseTypeAction.setComplexTypeElement(ctElement);
-            setBaseTypeAction.setType(typeString);
-            setBaseTypeAction.setDerivedBy(derivedBy);
-            setBaseTypeAction.performAction();
-
-	    }
-
-//      refresh();
-    }
-    else if (e.widget == derivedByCombo)
-    {
-      Element contentModelElement = getDomHelper().getContentModelFromParent(ctElement);
-      String baseType = getDomHelper().getBaseType(contentModelElement);
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_DERIVEDBY_CHANGE"), ctElement); //$NON-NLS-1$
-      Element derivedByElem = getDomHelper().getDerivedByElement(ctElement);
-      if (contentModelElement != null)
-      {
-        getDomHelper().changeDerivedByType(contentModelElement, derivedByCombo.getText(), baseType);
-      }
-      endRecording(ctElement);
-    }
-  }
-
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-   */
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ComplexTypeSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ComplexTypeSectionDescriptor.java
deleted file mode 100644
index c71d770..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ComplexTypeSectionDescriptor.java
+++ /dev/null
@@ -1,82 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-
-public class ComplexTypeSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public ComplexTypeSectionDescriptor()
-  {
-    super();
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDComplexTypeDefinition.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new ComplexTypeSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDComplexTypeDefinition)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-  
-  public String getAfterSection()
-  {
-    return "com.ibm.xsdeditor.section.name";
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/EnumerationsSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/EnumerationsSection.java
deleted file mode 100644
index d2dd2db..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/EnumerationsSection.java
+++ /dev/null
@@ -1,434 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.ICellModifier;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TextCellEditor;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.common.ui.viewers.NavigableTableViewer;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.AddEnumsAction;
-import org.eclipse.wst.xsd.ui.internal.actions.DOMAttribute;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDEnumerationFacet;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDVariety;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class EnumerationsSection extends AbstractSection
-{
-  private EnumerationsTableViewer enumerationsTable;
-  private Button addButton;
-  private Button addManyButton;
-  private Button deleteButton;
-  
-  /**
-   * 
-   */
-  public EnumerationsSection()
-  {
-    super();
-  }
-  
-  public void widgetSelected(SelectionEvent e)
-  {
-    XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)getInput();
-    Element element = st.getElement();
-    if (e.widget == addButton || e.widget == addManyButton)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      
-      int variety = st.getVariety().getValue();
-      Node varietyElement = null;
-      if (variety == XSDVariety.ATOMIC)
-      {
-        varietyElement = helper.getChildNode(element, XSDConstants.RESTRICTION_ELEMENT_TAG);
-      }
-      else if (variety == XSDVariety.UNION)
-      {
-        varietyElement = helper.getChildNode(element, XSDConstants.UNION_ELEMENT_TAG);
-      }
-      else if (variety == XSDVariety.LIST)
-      {
-        varietyElement = helper.getChildNode(element, XSDConstants.LIST_ELEMENT_TAG);
-      }
-            
-      if (varietyElement != null)
-      {
-        if (e.widget == addButton)
-        {
-          java.util.List attributes = new ArrayList();
-          
-          List enumList = st.getEnumerationFacets();
-          StringBuffer newName = new StringBuffer("value1"); //$NON-NLS-1$
-          int suffix = 1;
-          for (Iterator i = enumList.iterator(); i.hasNext(); )
-          {
-            XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)i.next();
-            String value = enumFacet.getLexicalValue();
-            if (value != null)
-            {
-              if (value.equals(newName.toString()))
-              {
-                suffix++;
-                newName = new StringBuffer("value" + String.valueOf(suffix)); //$NON-NLS-1$
-              }
-            }
-          }
-          attributes.add(new DOMAttribute(XSDConstants.VALUE_ATTRIBUTE, newName.toString()));
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ENUM"), element); //$NON-NLS-1$
-          Action action = getNewElementAction(XSDConstants.ENUMERATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ENUM"), attributes, (Element)varietyElement, null);
-          action.run();
-          st.setElement(element);
-
-          endRecording(element);
-          enumerationsTable.refresh();
-          int newItemIndex = enumerationsTable.getTable().getItemCount() - 1;
-          enumerationsTable.editElement(enumerationsTable.getElementAt(newItemIndex), 0);
-          attributes = null;
-        }
-        else if (e.widget == addManyButton)
-        {
-          AddEnumsAction action = new AddEnumsAction(XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ENUMS")); //$NON-NLS-1$
-          action.setElementTag(XSDConstants.ENUMERATION_ELEMENT_TAG);
-          action.setAttributes(null);
-          action.setParentNode((Element)varietyElement);
-          action.setRelativeNode(null);
-          action.setDescription(XSDEditorPlugin.getXSDString("_UI_ENUMERATIONS_DIALOG_TITLE")); //$NON-NLS-1$
-          action.run();
-          st.setElement(element);
-          enumerationsTable.refresh();
-        }
-      }
-    }
-    else if (e.widget == deleteButton)
-    {
-      StructuredSelection selection = (StructuredSelection)enumerationsTable.getSelection();
-      if (selection != null)
-      {
-        Iterator i = selection.iterator();
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ACTION_DELETE_ENUMERATION"), element); //$NON-NLS-1$
-        while (i.hasNext())
-        {
-          Object obj = i.next();
-          if (obj != null)
-          {
-            if (obj instanceof XSDEnumerationFacet)
-            {
-              XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)obj;
-    
-              // I have to update using DOM
-              XSDDOMHelper.removeNodeAndWhitespace(enumFacet.getElement());            
-              
-            }
-          }
-        }
-        enumerationsTable.refresh();
-        st.setElement(element);
-        endRecording(element);
-      }
-    }
-    else if (e.widget == enumerationsTable.getTable())
-    {
-      StructuredSelection selection = (StructuredSelection)enumerationsTable.getSelection();
-      if (selection.getFirstElement() != null)
-      {
-        deleteButton.setEnabled(true);
-      }
-      else
-      {
-        deleteButton.setEnabled(false);
-      }
-    }
-
-  }
-
-  public void widgetDefaultSelected(SelectionEvent e)
-  {
-    
-  }
-  
-  /**
-   * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-   */
-  public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-  {
-    super.createControls(parent, factory);
-
-    composite = getWidgetFactory().createFlatFormComposite(parent);
-    FormData data;
-    
-    GC gc = new GC(parent);
-    Point extent = gc.textExtent("  " + XSDEditorPlugin.getXSDString("_UI_ACTION_DELETE_INCLUDE") + "  "); //$NON-NLS-1$
-    gc.dispose();
-
-    enumerationsTable = new EnumerationsTableViewer(getWidgetFactory().createTable(composite, SWT.MULTI | SWT.FULL_SELECTION));
-    enumerationsTable.setInput(getInput());
-    Table table = enumerationsTable.getTable();
-    table.addSelectionListener(this);
-    
-    addButton = getWidgetFactory().createButton(composite, XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_ADD_BUTTON_LABEL"), SWT.PUSH); //$NON-NLS-1$
-    addManyButton = getWidgetFactory().createButton(composite, XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_ADD_BUTTON_LABEL") + "...", SWT.PUSH); //$NON-NLS-1$
-    deleteButton = getWidgetFactory().createButton(composite, XSDEditorPlugin.getXSDString("_UI_ACTION_DELETE_INCLUDE"), SWT.PUSH); //$NON-NLS-1$
-
-    FormData data2 = new FormData();
-    data2.top = new FormAttachment(0, 0);
-    data2.left = new FormAttachment(100, -100);
-    data2.right = new FormAttachment(100, 0);
-//    data2.width = 50;
-    addButton.setLayoutData(data2);
-    addButton.addSelectionListener(this);
-
-    data = new FormData();
-    data.left = new FormAttachment(addButton, 0, SWT.LEFT);
-    data.right = new FormAttachment(100, 0);
-    data.top = new FormAttachment(addButton, 0);
-    addManyButton.setLayoutData(data);
-    addManyButton.addSelectionListener(this);
-
-    data = new FormData();
-    data.left = new FormAttachment(addButton, 0, SWT.LEFT);
-    data.right = new FormAttachment(100, 0);
-    data.top = new FormAttachment(addManyButton, 0);
-    deleteButton.setLayoutData(data);
-    deleteButton.setEnabled(false);
-    deleteButton.addSelectionListener(this);
-
-    data = new FormData();
-    data.top = new FormAttachment(0, 0);
-    data.left = new FormAttachment(0, 0);
-    data.right = new FormAttachment(addButton, 0);
-    data.bottom = new FormAttachment(100, 0);
-    data.width = tableMinimumWidth;
-    table.setLayoutData(data);
-    table.addListener(SWT.Resize, this);
-  }
-  
-  /*
-   * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-   */
-  public void refresh()
-  {
-    Object input = getInput();
-    if (isReadOnly)
-    {
-      composite.setEnabled(false);
-    }
-    else
-    {
-      composite.setEnabled(true);
-    }
-    XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)input;
-    Element element = st.getElement();
-    XSDDOMHelper helper = new XSDDOMHelper();
-    Node restrictionElement = helper.getChildNode(element, XSDConstants.RESTRICTION_ELEMENT_TAG);
-    
-    Iterator validFacets = st.getValidFacets().iterator();
-    
-    boolean isApplicable = false;
-    while (validFacets.hasNext())
-    {
-      String aValidFacet = (String)validFacets.next();
-      if (aValidFacet.equals(XSDConstants.ENUMERATION_ELEMENT_TAG))
-      {
-        isApplicable = true;
-      }
-    }
-    
-    if (isApplicable)  
-//    if (restrictionElement != null)
-    {
-      addButton.setEnabled(true);
-      addManyButton.setEnabled(true);
-    }
-    else
-    {
-      addButton.setEnabled(false);
-      addManyButton.setEnabled(false);
-    }
-    enumerationsTable.setInput(input);
-  }
-
-  public void handleEvent(Event event)
-  {
-    Table table = enumerationsTable.getTable();
-    if (event.type == SWT.Resize && event.widget == table)
-    {
-      TableColumn tableColumn = table.getColumn(0);
-      tableColumn.setWidth(table.getSize().x);
-    }
-  }
-  
-  public void dispose()
-  {
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-   */
-  public boolean shouldUseExtraSpace()
-  {
-    return true;
-  }
-
-  
-  class EnumerationsTableViewer extends NavigableTableViewer implements ICellModifier
-  {
-    protected String[] columnProperties = {XSDConstants.ENUMERATION_ELEMENT_TAG};
-
-    protected CellEditor[] cellEditors;
-
-    Table table;
-    
-    public EnumerationsTableViewer(Table table)
-    {
-      super(table);
-      table = getTable();
-
-      table.setLinesVisible(true);
-      
-      setContentProvider(new EnumerationsTableContentProvider());
-      setLabelProvider(new EnumerationsTableLabelProvider());
-      setColumnProperties(columnProperties);
-
-      setCellModifier(this);
-
-      TableColumn column = new TableColumn(table, SWT.NONE, 0);
-      column.setText(columnProperties[0]);
-      column.setAlignment(SWT.LEFT);
-      column.setResizable(true);
- 
-      cellEditors = new CellEditor[1];
-
-      TableLayout layout = new TableLayout();
-      ColumnWeightData data = new ColumnWeightData(100);
-
-      layout.addColumnData(data);
-      cellEditors[0] = new TextCellEditor(table);
-
-      getTable().setLayout(layout);
-      setCellEditors(cellEditors);
-    }
-    
-    public boolean canModify(Object element, String property)
-    {
-      return true;
-    }
-
-    public void modify(Object element, String property, Object value)
-    {
-      if (element instanceof TableItem && (value != null))
-      {
-        TableItem item = (TableItem)element;
-        
-        Element simpleTypeElement = ((XSDSimpleTypeDefinition)getInput()).getElement();
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ENUM_VALUE_CHANGE"), simpleTypeElement); //$NON-NLS-1$
-        
-        XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)item.getData();
-        enumFacet.setLexicalValue((String)value);
-        item.setData(enumFacet);
-        item.setText((String)value);
-        endRecording(simpleTypeElement);
-      }
-    }    
-
-    public Object getValue(Object element, String property)
-    {
-      if (element instanceof XSDEnumerationFacet)
-      {
-        XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)element;
-        String value = enumFacet.getLexicalValue();
-        if (value == null) value = ""; //$NON-NLS-1$
-        return value;
-      }
-      return ""; //$NON-NLS-1$
-    }
-
-  }
-    
-  class EnumerationsTableContentProvider implements IStructuredContentProvider
-  {
-    public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
-    {
-    }
-
-    public java.lang.Object[] getElements(java.lang.Object inputElement)
-    {
-      java.util.List list = new ArrayList();
-      if (inputElement instanceof XSDSimpleTypeDefinition)
-      {
-        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)inputElement;
-        return st.getEnumerationFacets().toArray();
-      }
-      return list.toArray();
-    }
-
-    public void dispose()
-    {
-    }
-  }
-
-  class EnumerationsTableLabelProvider extends LabelProvider implements ITableLabelProvider
-  {
-    public EnumerationsTableLabelProvider()
-    {
-      
-    }
-    
-    public Image getColumnImage(Object element, int columnIndex)
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDSimpleEnum.gif");
-    }
-    
-    public String getColumnText(Object element, int columnIndex)
-    {
-      if (element instanceof XSDEnumerationFacet)
-      {
-        XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)element;
-        String value = enumFacet.getLexicalValue();
-        if (value == null) value = "";
-        return value;
-      }
-      return "";
-    }
-
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/EnumerationsSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/EnumerationsSectionDescriptor.java
deleted file mode 100644
index 2f8aa67..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/EnumerationsSectionDescriptor.java
+++ /dev/null
@@ -1,87 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-
-
-public class EnumerationsSectionDescriptor extends AbstractSectionDescriptor
-{
-
-  /**
-   * 
-   */
-  public EnumerationsSectionDescriptor()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.enumerations";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDSimpleTypeDefinition.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new EnumerationsSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.enumerations";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDSimpleTypeDefinition)
-      {
-        return true;
-        // return false;  // turn off this tab
-      }
-    }
-    return false;
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetViewer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetViewer.java
deleted file mode 100644
index 0ec654e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetViewer.java
+++ /dev/null
@@ -1,498 +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.xsd.ui.internal.properties.section;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.ICellModifier;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TextCellEditor;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseTrackAdapter;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.wst.common.ui.WindowUtility;
-import org.eclipse.wst.common.ui.viewers.NavigableTableViewer;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.DOMAttribute;
-import org.eclipse.wst.xsd.ui.internal.properties.XSDComboBoxPropertyDescriptor;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConstrainingFacet;
-import org.eclipse.xsd.XSDMaxExclusiveFacet;
-import org.eclipse.xsd.XSDMaxFacet;
-import org.eclipse.xsd.XSDMaxInclusiveFacet;
-import org.eclipse.xsd.XSDMinExclusiveFacet;
-import org.eclipse.xsd.XSDMinFacet;
-import org.eclipse.xsd.XSDMinInclusiveFacet;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.impl.XSDFactoryImpl;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class FacetViewer extends NavigableTableViewer implements ICellModifier
-{
-  public static final String FACET_NAME = XSDEditorPlugin.getXSDString("_UI_FACET_NAME");  // "Name";
-  public static final String FACET_VALUE = XSDEditorPlugin.getXSDString("_UI_FACET_VALUE"); // "Value";
-  public static final String FACET_OTHER = XSDEditorPlugin.getXSDString("_UI_FACET_FIXED"); // "Fixed";
-
-  protected FacetsTableLabelProvider facetsTableLabelProvider = new FacetsTableLabelProvider();
-  protected FacetsTableContentProvider facetsTableContentProvider = new FacetsTableContentProvider();
-  protected String[] columnProperties = {FACET_NAME, FACET_VALUE, FACET_OTHER};
-  protected CellEditor[] cellEditors;    // these cellEditors are used when non-whitespace facet is selected
-  protected CellEditor[] altCellEditors; // these cellEditors are used when whitespace facet is selected
-  
-  protected String [] whiteSpaceValues = new String[] {"", "preserve", "replace", "collapse" };
-  protected String [] trueFalseValues = new String [] {"", "false", "true" }; 
-  protected FacetsSection facetsSection;
-  /**
-   * @param parent
-   */
-  public FacetViewer(Composite parent, FacetsSection facetsSection)
-  {
-    super(new Table(parent, SWT.FULL_SELECTION | SWT.SINGLE));
-    this.facetsSection = facetsSection;
-    
-    getTable().setLinesVisible(true);
-    getTable().setHeaderVisible(true);
-
-    addSelectionChangedListener(new SelectionChangedListener());
-    getTable().addMouseTrackListener(new MyMouseTrackListener());
-    
-    setContentProvider(facetsTableContentProvider);
-    setLabelProvider(facetsTableLabelProvider);
-    setColumnProperties(columnProperties);
-
-    setCellModifier(this);
-
-    for (int i = 0; i < 3; i++)
-    {
-      TableColumn column = new TableColumn(getTable(), SWT.NONE, i);
-      column.setText(columnProperties[i]);
-      column.setAlignment(SWT.LEFT);
-      column.setResizable(true);
-    }
-    
-    cellEditors = new CellEditor[3];
-    altCellEditors = new CellEditor[3];
-
-    TableLayout layout = new TableLayout();
-    ColumnWeightData data = new ColumnWeightData(60, 120, true);
-    layout.addColumnData(data);
-    cellEditors[0] = null;
-
-    ColumnWeightData data2 = new ColumnWeightData(120, 100, true);
-    layout.addColumnData(data2);
-
-    cellEditors[1] = new TextCellEditor(getTable());
-    XSDComboBoxPropertyDescriptor pd = new XSDComboBoxPropertyDescriptor("combo", "whitespace", whiteSpaceValues);
-    altCellEditors[1] = pd.createPropertyEditor(getTable());
-
-    ColumnWeightData data3 = new ColumnWeightData(60, 80, true);
-    layout.addColumnData(data3);
-
-    XSDComboBoxPropertyDescriptor pd2 = new XSDComboBoxPropertyDescriptor("combo", "other", trueFalseValues);
-    cellEditors[2] = pd2.createPropertyEditor(getTable());
-    altCellEditors[2] = pd2.createPropertyEditor(getTable());
-
-    getTable().setLayout(layout);
-    setCellEditors(cellEditors);
-
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ICellModifier#canModify(java.lang.Object, java.lang.String)
-   */
-  public boolean canModify(Object element, String property)
-  {
-    return property.equals(FACET_VALUE) || property.equals(FACET_OTHER);
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ICellModifier#getValue(java.lang.Object, java.lang.String)
-   */
-  public Object getValue(Object element, String property)
-  {
-    int column = 0;
-    if (property.equals(columnProperties[0]))
-    {
-      column = 0;
-    }
-    else if (property.equals(columnProperties[1]))
-    {
-      column = 1;
-    }
-    else if (property.equals(columnProperties[2]))
-    {
-      column = 2;
-    }
-
-    return facetsTableLabelProvider.getColumnText(element, column);
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ICellModifier#modify(java.lang.Object, java.lang.String, java.lang.Object)
-   */
-  public void modify(Object element, String property, Object value)
-  {
-    XSDSimpleTypeDefinition xsdSimpleType = (XSDSimpleTypeDefinition)getInput();
-    TableItem item = (TableItem)element;
-    if (item != null)
-    {
-      Object o = item.getData();
-      if (o != null)
-      {
-        if (o instanceof String)
-        {
-          String facet = (String)o;
-         
-          Element simpleTypeElement = xsdSimpleType.getElement();
-          XSDDOMHelper xsdDOMHelper = new XSDDOMHelper();
-          Element derivedByElement = xsdDOMHelper.getDerivedByElement(simpleTypeElement);
-
-          facetsSection.beginRecording(XSDEditorPlugin.getXSDString("_UI_FACET_CHANGE"), simpleTypeElement);
-
-          String prefix = simpleTypeElement.getPrefix();
-          prefix = (prefix == null) ? "" : (prefix + ":");
-          
-          Element childNodeElement = null;
-          DOMAttribute valueAttr = null;
-
-          XSDConstrainingFacet targetFacet = getXSDConstrainingFacet(facet);
-
-          String newValue = "";
-          if (value != null && value instanceof String)
-          {
-            newValue = (String)value;
-          }
-          
-          if (property.equals(columnProperties[1]))
-          {
-            if (targetFacet == null && newValue.length() > 0)
-            {
-              targetFacet = createFacet(facet);
-              childNodeElement = (derivedByElement.getOwnerDocument()).createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + facet);
-              valueAttr = new DOMAttribute(XSDConstants.VALUE_ATTRIBUTE, newValue);
-              childNodeElement.setAttribute(valueAttr.getName(), valueAttr.getValue());
-              // add and format child
-              derivedByElement.appendChild(childNodeElement);
-              targetFacet.setElement(childNodeElement);
-              XSDDOMHelper.formatChild(childNodeElement);
-
-//              XSDSchemaHelper.updateElement(xsdSimpleType);
-            }
-            if (targetFacet == null)
-            {
-              facetsSection.endRecording(simpleTypeElement);
-              return;
-            }
-
-            if (newValue.length() > 0)
-            {            
-              targetFacet.setLexicalValue(newValue);
-              
-              if (targetFacet instanceof XSDMaxFacet || targetFacet instanceof XSDMinFacet)
-              {
-                Element elementFacet = targetFacet.getElement();
-
-                if (targetFacet instanceof XSDMaxFacet)
-                {
-                  if (targetFacet instanceof XSDMaxExclusiveFacet)
-                  {
-                    XSDMaxInclusiveFacet xsdMaxInclusiveFacet = xsdSimpleType.getMaxInclusiveFacet();
-                    if (xsdMaxInclusiveFacet != null)
-                    {
-                      Element xsdMaxInclusiveFacetElement = xsdMaxInclusiveFacet.getElement();
-                      XSDDOMHelper.removeNodeAndWhitespace(xsdMaxInclusiveFacetElement);
-                    }
-                  }
-                  else if (targetFacet instanceof XSDMaxInclusiveFacet)
-                  {
-                    XSDMaxExclusiveFacet xsdMaxExclusiveFacet = xsdSimpleType.getMaxExclusiveFacet();
-                    if (xsdMaxExclusiveFacet != null)
-                    {
-                      Element xsdMaxExclusiveFacetElement = xsdMaxExclusiveFacet.getElement();
-                      XSDDOMHelper.removeNodeAndWhitespace(xsdMaxExclusiveFacetElement);
-                    }
-                  }
-                }
-                else if (targetFacet instanceof XSDMinFacet)
-                {
-                  if (targetFacet instanceof XSDMinExclusiveFacet)
-                  {
-                    XSDMinInclusiveFacet xsdMinInclusiveFacet = xsdSimpleType.getMinInclusiveFacet();
-                    if (xsdMinInclusiveFacet != null)
-                    {
-                      Element xsdMinInclusiveFacetElement = xsdMinInclusiveFacet.getElement();
-                      XSDDOMHelper.removeNodeAndWhitespace(xsdMinInclusiveFacetElement);
-                    }
-                  }
-                  else if (targetFacet instanceof XSDMinInclusiveFacet)
-                  {
-                    XSDMinExclusiveFacet xsdMinExclusiveFacet = xsdSimpleType.getMinExclusiveFacet();
-                    if (xsdMinExclusiveFacet != null)
-                    {
-                      Element xsdMinExclusiveFacetElement = xsdMinExclusiveFacet.getElement();
-                      XSDDOMHelper.removeNodeAndWhitespace(xsdMinExclusiveFacetElement);
-                    }
-                  }
-                }
-              }
-            }
-            else // newValue.length == 0
-            {
-              Element targetFacetElement = targetFacet.getElement();
-              XSDDOMHelper.removeNodeAndWhitespace(targetFacetElement);
-            }
-          }
-          else if (property.equals(columnProperties[2]))
-          {
-            if (targetFacet != null)
-            {
-              if (newValue.length() > 0)
-              {            
-                targetFacet.getElement().setAttribute(XSDConstants.FIXED_ATTRIBUTE, newValue);
-              }
-              else
-              {
-                targetFacet.getElement().removeAttribute(XSDConstants.FIXED_ATTRIBUTE);
-              }
-            }
-          }
-          xsdSimpleType.setElement(simpleTypeElement);
-          //xsdSimpleType.updateElement();
-          facetsSection.endRecording(simpleTypeElement);
-          refresh();
-        }
-      }
-    }
-  }
-
-  
-  private XSDConstrainingFacet getXSDConstrainingFacet(String facetString)
-  {
-    XSDSimpleTypeDefinition xsdSimpleType = (XSDSimpleTypeDefinition)getInput();
-    List list = xsdSimpleType.getFacetContents();
-    if (list == null)
-    {
-      return null;
-    }
-    Iterator iter = list.iterator();
-    XSDConstrainingFacet targetFacet = null;
-    
-    while (iter.hasNext())
-    {
-      XSDConstrainingFacet xsdConstrainingFacet = (XSDConstrainingFacet)iter.next();
-      if (xsdConstrainingFacet.getFacetName().equals(facetString))
-      {
-        targetFacet = xsdConstrainingFacet;
-        break;
-      }
-    }
-    return targetFacet;
-  }
-
-  private XSDConstrainingFacet createFacet(String facet)
-  {
-    XSDFactoryImpl factory = new XSDFactoryImpl();
-    XSDConstrainingFacet xsdFacet = null;
-    if (facet.equals("length")) { xsdFacet = factory.createXSDLengthFacet(); }
-    else if (facet.equals("minLength")) { xsdFacet = factory.createXSDMinLengthFacet(); }
-    else if (facet.equals("maxLength")) { xsdFacet = factory.createXSDMaxLengthFacet(); }
-
-    else if (facet.equals("minInclusive")) { xsdFacet = factory.createXSDMinInclusiveFacet(); }
-    else if (facet.equals("minExclusive")) { xsdFacet = factory.createXSDMinExclusiveFacet(); }
-
-    else if (facet.equals("maxInclusive")) { xsdFacet = factory.createXSDMaxInclusiveFacet(); }
-    else if (facet.equals("maxExclusive")) { xsdFacet = factory.createXSDMaxExclusiveFacet(); }
-
-    else if (facet.equals("totalDigits")) { xsdFacet = factory.createXSDTotalDigitsFacet(); }
-    else if (facet.equals("fractionDigits")) { xsdFacet = factory.createXSDFractionDigitsFacet(); }
-
-    else if (facet.equals("whiteSpace"))   { xsdFacet = factory.createXSDWhiteSpaceFacet(); }
-
-    return xsdFacet;
-  }
-
- /**
-  * Get the tooltip for the facet
-  */
-  public String getToolTip(String facet)
-  {
-    String key = "";
-    if (facet.equals("length")) { key = "_UI_TOOLTIP_LENGTH"; }
-    else if (facet.equals("minLength")) { key = "_UI_TOOLTIP_MIN_LEN"; }
-    else if (facet.equals("maxLength")) { key = "_UI_TOOLTIP_MAX_LEN"; }
-
-    else if (facet.equals("minInclusive")) { key = "_UI_TOOLTIP_MIN_INCLUSIVE"; }
-    else if (facet.equals("minExclusive")) { key = "_UI_TOOLTIP_MIN_EXCLUSIVE"; }
-
-    else if (facet.equals("maxInclusive")) { key = "_UI_TOOLTIP_MAX_INCLUSIVE"; }
-    else if (facet.equals("maxExclusive")) { key = "_UI_TOOLTIP_MAX_EXCLUSIVE"; }
-
-    else if (facet.equals("totalDigits"))   { key = "_UI_TOOLTIP_TOTAL_DIGITS"; }
-    else if (facet.equals("fractionDigits")) { key = "_UI_TOOLTIP_FRACTION_DIGITS"; }
-
-    else if (facet.equals("whiteSpace"))   { key = "_UI_TOOLTIP_WHITE_SPACE"; }
-
-    return (key != null) ? XSDEditorPlugin.getXSDString(key) : "";
-  }
-  
-  /**
-   * This listener detects which row is selected and add a tool tip for that row
-   */
-  public class MyMouseTrackListener extends MouseTrackAdapter
-  {
-    public void mouseHover(MouseEvent e)
-    {
-      TableItem item = getTable().getItem(new Point(e.x, e.y));
-      if (item != null)
-      {
-        Object o = item.getData();
-        if (o != null)
-        {
-          String facetName = (String)o;
-          getTable().setToolTipText(getToolTip(facetName));
-        }
-      }
-    }
-  }
-
-  /**
-   * Based on the selection, detects if it is a white space or not, and add the
-   * corresponding cell editors
-   */
-  public class SelectionChangedListener implements ISelectionChangedListener
-  {
-    public void selectionChanged(SelectionChangedEvent event)
-    {
-      Object o = WindowUtility.getSelection(event.getSelection());
-      if (o != null)
-      {
-        String facet = (String)o;
-        if (facet.equals("whiteSpace"))
-        {
-          setCellEditors(altCellEditors);
-        }
-        else
-        {
-          setCellEditors(cellEditors);
-        }
-      }
-    }
-  }
-
-  
-  class FacetsTableContentProvider implements IStructuredContentProvider
-  {
-    protected String facet;
-    
-    public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
-    {
-    }
-
-    public java.lang.Object[] getElements(java.lang.Object inputElement)
-    {
-      XSDDOMHelper xsdDomHelper = new XSDDOMHelper();
-
-      String facet = "";
-      Vector v = new Vector();
-      XSDSimpleTypeDefinition inputXSDSimpleType = (XSDSimpleTypeDefinition)inputElement;
-      XSDSimpleTypeDefinition base = inputXSDSimpleType.getBaseTypeDefinition();
-      
-      if (base != null)
-      {
-        Iterator validFacets = base.getValidFacets().iterator();
-        while (validFacets.hasNext())
-        {
-          String aValidFacet = (String)validFacets.next();
-          if (!(aValidFacet.equals("pattern") || aValidFacet.equals("enumeration")))
-          {
-            v.add(aValidFacet);
-          }
-        }
-      }
-      return v.toArray();
-    }
-
-    public void dispose()
-    {
-    }
-  }
-
-  class FacetsTableLabelProvider extends LabelProvider implements ITableLabelProvider
-  {
-    public Image getColumnImage(Object element, int columnIndex)
-    {
-      return null;
-    }
-    
-    public String getColumnText(Object element, int columnIndex)
-    {
-      if (element instanceof String)
-      {
-        String value = null;
-        XSDConstrainingFacet targetFacet = getXSDConstrainingFacet((String)element);
-        switch (columnIndex)
-        {
-          case 0:
-          {
-            value = (String)element;
-            break;
-          }
-          case 1:
-          {
-            if (targetFacet == null)
-            {
-              value = "";
-            }
-            else
-            {
-              value = targetFacet.getLexicalValue();
-            }
-
-            break;
-          }
-          case 2:
-          {
-            if (targetFacet == null)
-            {
-              value = "";
-            }
-            else
-            {
-              Element elem = targetFacet.getElement();
-              value = elem.getAttribute(XSDConstants.FIXED_ATTRIBUTE);
-              if (value == null) value = "";
-            }
-          }
-        }
-        return value; 
-      }
-      return "";
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetsSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetsSection.java
deleted file mode 100644
index e6a80ba..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetsSection.java
+++ /dev/null
@@ -1,802 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.ICellModifier;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TextCellEditor;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.common.ui.viewers.NavigableTableViewer;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.DOMAttribute;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.wst.xsd.ui.internal.wizards.RegexWizard;
-import org.eclipse.xsd.XSDPatternFacet;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDVariety;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class FacetsSection extends AbstractSection
-{
-  IWorkbenchPart part;
-  ISelection selection;
-  FacetViewer facetViewer;
-  
-  XSDWorkbook workbook;
-  FacetsWorkbookPage facetsWorkbookPage;
-// If you want to add the enumerations tab to this facets tab
-//  EnumsWorkbookPage enumsWorkbookPage;
-  PatternsWorkbookPage patternsWorkbookPage;
-
-  /**
-   * 
-   */
-  public FacetsSection()
-  {
-    super();
-  }
-  
-  /**
-   * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-   */
-  public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-  {
-    super.createControls(parent, factory);
-
-    workbook = new XSDWorkbook(parent, SWT.BOTTOM | SWT.FLAT);
-    
-    facetsWorkbookPage = new FacetsWorkbookPage(workbook, this);
-//    enumsWorkbookPage = new EnumsWorkbookPage(workbook);
-    patternsWorkbookPage = new PatternsWorkbookPage(workbook);
-    facetsWorkbookPage.activate();
-//    enumsWorkbookPage.activate();
-    patternsWorkbookPage.activate();
-    workbook.setSelectedPage(facetsWorkbookPage);
-  }
-  
-  public void selectionChanged(IWorkbenchPart part, ISelection selection)
-  {
-    this.part = part;
-    this.selection = selection;
-  }
-  
-
-  /*
-   * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-   */
-  public void refresh()
-  {
-    Object input = getInput();
-    
-    if (isReadOnly)
-    {
-      facetViewer.getControl().getParent().setEnabled(false);      
-    }
-    else
-    {
-      facetViewer.getControl().getParent().setEnabled(true);
-    }
-
-    if (facetViewer != null)
-    {
-      facetViewer.setInput(input);
-    }
-    
-//    if (enumsWorkbookPage != null)
-//    {
-//      enumsWorkbookPage.setInput(input);
-//    }
-    
-    if (patternsWorkbookPage != null)
-    {
-      patternsWorkbookPage.setInput(input);
-    }
-  }
-
-  public void dispose()
-  {
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-   */
-  public boolean shouldUseExtraSpace()
-  {
-    return true;
-  }
-  
-
-  /* General Facets Page */
-  
-  class FacetsWorkbookPage extends XSDWorkbookPage
-  {
-    FacetsSection facetsSection;
-    Composite page1;
-    
-    public FacetsWorkbookPage(XSDWorkbook workbook, FacetsSection facetsSection)
-    {
-      super(workbook);
-      this.getTabItem().setText(XSDEditorPlugin.getXSDString("_UI_LABEL_FACETS")); //$NON-NLS-1$
-      this.facetsSection = facetsSection;
-    }
-
-    public Control createControl (Composite parent)
-    {
-      page1 = getWidgetFactory().createFlatFormComposite(parent);
-
-      FormData data = new FormData();
-      data.left = new FormAttachment(0, 0);
-      data.right = new FormAttachment(100, 0);
-      data.top = new FormAttachment(0, 0);
-      data.bottom = new FormAttachment(100, 0);
-      
-      facetViewer = new FacetViewer(page1, facetsSection);
-      facetViewer.setInput(getInput());
-      facetViewer.getControl().setLayoutData(data);
-                  
-      return page1;
-    }
-  }
-
-  /* Enumerations Page */
-  
-//  class EnumsWorkbookPage extends XSDWorkbookPage implements SelectionListener
-//  {
-//    EnumerationsTableViewer enumerationsTable;
-//    Button addButton;
-//    Button deleteButton;
-//    
-//    public EnumsWorkbookPage(XSDWorkbook workbook)
-//    {
-//      super(workbook);
-//      this.getTabItem().setText("Enumerations");
-//    }
-//
-//    public Control createControl (Composite parent)
-//    {
-//      Composite composite = getWidgetFactory().createFlatFormComposite(parent);
-//      FormData data;
-//      
-//      addButton = getWidgetFactory().createButton(composite, "Add", SWT.PUSH);
-//      deleteButton = getWidgetFactory().createButton(composite, "Delete", SWT.PUSH);
-//      enumerationsTable = new EnumerationsTableViewer(getWidgetFactory().createTable(composite, SWT.MULTI | SWT.FULL_SELECTION));
-//      
-//      enumerationsTable.setInput(getInput());
-//      Table table = enumerationsTable.getTable();
-//      table.addSelectionListener(this);
-//
-//      data = new FormData();
-//      data.left = new FormAttachment(deleteButton, 0, SWT.LEFT);
-//      data.right = new FormAttachment(100, 0);
-//      data.top = new FormAttachment(0, 0);
-//      data.bottom = new FormAttachment(deleteButton, 0); //-ITabbedPropertyConstants.VSPACE);
-//      addButton.setLayoutData(data);
-//      addButton.addSelectionListener(this);
-//      
-//      data = new FormData();
-//      data.left = new FormAttachment(table, +ITabbedPropertyConstants.HSPACE);
-//      data.right = new FormAttachment(100, 0);
-//      data.top = new FormAttachment(addButton, 0);
-////      data.bottom = new FormAttachment(deleteButton, +ITabbedPropertyConstants.VSPACE);
-//      deleteButton.setLayoutData(data);
-//      deleteButton.setEnabled(false);
-//      deleteButton.addSelectionListener(this);
-//      
-//      data = new FormData();
-//      data.left = new FormAttachment(0, 0);
-//      data.right = new FormAttachment(85, 0);
-//      data.top = new FormAttachment(0, 0);
-//      data.bottom = new FormAttachment(100, 0);
-//      table.setLayoutData(data);
-//      
-//      return composite;
-//    }
-//    
-//    public void setInput(Object input)
-//    {
-//      enumerationsTable.setInput(input);
-//    }
-//    
-//    public void widgetSelected(SelectionEvent e)
-//    {
-//      XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)getInput();
-//      Element element = st.getElement();
-//      if (e.widget == addButton)
-//      {
-//        XSDDOMHelper helper = new XSDDOMHelper();
-//
-//        int variety = st.getVariety().getValue();
-//        Node varietyElement = null;
-//        if (variety == XSDVariety.ATOMIC)
-//        {
-//          varietyElement = helper.getChildNode(element, XSDConstants.RESTRICTION_ELEMENT_TAG);
-//        }
-//        else if (variety == XSDVariety.UNION)
-//        {
-//          varietyElement = helper.getChildNode(element, XSDConstants.UNION_ELEMENT_TAG);
-//        }
-//        else if (variety == XSDVariety.LIST)
-//        {
-//          varietyElement = helper.getChildNode(element, XSDConstants.LIST_ELEMENT_TAG);
-//        }
-//              
-//        if (varietyElement != null)
-//        {
-//          java.util.List attributes = new ArrayList();
-//          attributes.add(new DOMAttribute(XSDConstants.VALUE_ATTRIBUTE, ""));
-//          beginRecording("Add Enumeration", element);
-//          Action action = getNewElementAction(XSDConstants.ENUMERATION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_ENUM"), attributes, (Element)varietyElement, null);
-//          action.run();
-//          st.setElement(element);
-//
-//          endRecording(element);
-//          enumerationsTable.refresh();
-//          attributes = null;
-//        }
-//      }
-//      else if (e.widget == deleteButton)
-//      {
-//        StructuredSelection selection = (StructuredSelection)enumerationsTable.getSelection();
-//        if (selection != null)
-//        {
-//          Iterator i = selection.iterator();
-//          beginRecording("Delete Enumeration", element);
-//          while (i.hasNext())
-//          {
-//            Object obj = i.next();
-//            if (obj != null)
-//            {
-//              if (obj instanceof XSDEnumerationFacet)
-//              {
-//                XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)obj;
-//      
-//                // I have to update using DOM
-//                XSDDOMHelper.removeNodeAndWhitespace(enumFacet.getElement());            
-//                
-//              }
-//            }
-//          }
-//          enumerationsTable.refresh();
-//          st.setElement(element);
-//          endRecording(element);
-//        }
-//      }
-//      else if (e.widget == enumerationsTable.getTable())
-//      {
-//        StructuredSelection selection = (StructuredSelection)enumerationsTable.getSelection();
-//        if (selection.getFirstElement() != null)
-//        {
-//          deleteButton.setEnabled(true);
-//        }
-//        else
-//        {
-//          deleteButton.setEnabled(false);
-//        }
-//      }
-//      
-//    }
-//
-//    public void widgetDefaultSelected(SelectionEvent e)
-//    {
-//      
-//    }
-//  }
-//  
-//  class EnumerationsTableViewer extends NavigableTableViewer implements ICellModifier
-//  {
-//    protected String[] columnProperties = {"Enumeration"};
-//
-//    protected CellEditor[] cellEditors;
-//
-//    Table table;
-//    
-//    public EnumerationsTableViewer(Table table)
-//    {
-//      super(table);
-//      table = getTable();
-//      
-//      table.setLinesVisible(true);
-//      
-//      setContentProvider(new EnumerationsTableContentProvider());
-//      setLabelProvider(new EnumerationsTableLabelProvider());
-//      setColumnProperties(columnProperties);
-//
-//      setCellModifier(this);
-//
-//      TableColumn column = new TableColumn(table, SWT.NONE, 0);
-//      column.setText(columnProperties[0]);
-//      column.setAlignment(SWT.LEFT);
-// 
-//      cellEditors = new CellEditor[1];
-//
-//      TableLayout layout = new TableLayout();
-//      ColumnWeightData data = new ColumnWeightData(100);
-//      layout.addColumnData(data);
-//      cellEditors[0] = new TextCellEditor(table);
-//
-//      getTable().setLayout(layout);
-//      setCellEditors(cellEditors);
-//    }
-//    
-//    public boolean canModify(Object element, String property)
-//    {
-//      return true;
-//    }
-//
-//    public void modify(Object element, String property, Object value)
-//    {
-//      if (element instanceof TableItem && (value != null))
-//      {
-//        TableItem item = (TableItem)element;
-//        
-//        Element simpleTypeElement = ((XSDSimpleTypeDefinition)getInput()).getElement();
-//        FacetsSection.this.beginRecording(XSDEditorPlugin.getXSDString("_UI_ENUM_VALUE_CHANGE"), simpleTypeElement);
-//        
-//        XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)item.getData();
-//        enumFacet.setLexicalValue((String)value);
-//        item.setData(enumFacet);
-//        item.setText((String)value);
-//        FacetsSection.this.endRecording(simpleTypeElement);
-//      }
-//    }    
-//
-//    public Object getValue(Object element, String property)
-//    {
-//      if (element instanceof XSDEnumerationFacet)
-//      {
-//        XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)element;
-//        String value = enumFacet.getLexicalValue();
-//        if (value == null) value = "";
-//        return value;
-//      }
-//      return "";
-//    }
-//
-//  }
-//    
-//  class EnumerationsTableContentProvider implements IStructuredContentProvider
-//  {
-//    public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
-//    {
-//    }
-//
-//    public java.lang.Object[] getElements(java.lang.Object inputElement)
-//    {
-//      java.util.List list = new ArrayList();
-//      if (inputElement instanceof XSDSimpleTypeDefinition)
-//      {
-//        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)inputElement;
-//        return st.getEnumerationFacets().toArray();
-//      }
-//      return list.toArray();
-//    }
-//
-//    public void dispose()
-//    {
-//    }
-//  }
-//
-//  class EnumerationsTableLabelProvider extends LabelProvider implements ITableLabelProvider
-//  {
-//    public EnumerationsTableLabelProvider()
-//    {
-//      
-//    }
-//    
-//    public Image getColumnImage(Object element, int columnIndex)
-//    {
-//      return XSDEditorPlugin.getXSDImage("icons/XSDSimpleEnum.gif");
-//    }
-//    
-//    public String getColumnText(Object element, int columnIndex)
-//    {
-//      if (element instanceof XSDEnumerationFacet)
-//      {
-//        XSDEnumerationFacet enum = (XSDEnumerationFacet)element;
-//        String value = enum.getLexicalValue();
-//        if (value == null) value = "";
-//        return value;
-//      }
-//      return "";
-//    }
-//
-//  }
-
-  /* Patterns Page */
-  
-  class PatternsWorkbookPage extends XSDWorkbookPage implements SelectionListener, Listener
-  {
-    PatternsTableViewer patternsTable;
-    Button addButton;
-    Button deleteButton;
-    Button editButton;
-    Composite composite;
-    
-    public PatternsWorkbookPage(XSDWorkbook workbook)
-    {
-      super(workbook);
-      this.getTabItem().setText(XSDEditorPlugin.getXSDString("_UI_LABEL_PATTERNS")); //$NON-NLS-1$
-    }
-
-    public Control createControl (Composite parent)
-    {
-      composite = getWidgetFactory().createFlatFormComposite(parent);
-      FormData data;
-
-      patternsTable = new PatternsTableViewer(getWidgetFactory().createTable(composite, SWT.MULTI | SWT.FULL_SELECTION));
-      patternsTable.setInput(getInput());
-      Table table = patternsTable.getTable();
-      table.addSelectionListener(this);
-
-      addButton = getWidgetFactory().createButton(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_ADD"), SWT.PUSH); //$NON-NLS-1$
-      editButton = getWidgetFactory().createButton(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_EDIT"), SWT.PUSH); //$NON-NLS-1$
-      deleteButton = getWidgetFactory().createButton(composite, XSDEditorPlugin.getXSDString("_UI_ACTION_DELETE_INCLUDE"), SWT.PUSH); //$NON-NLS-1$
-
-      data = new FormData();
-      data.left = new FormAttachment(100, -100);
-      data.right = new FormAttachment(100, 0);
-      data.top = new FormAttachment(0, 0);
-      addButton.setLayoutData(data);
-      addButton.addSelectionListener(this);
-
-      data = new FormData();
-      data.left = new FormAttachment(addButton, 0, SWT.LEFT);
-      data.right = new FormAttachment(100, 0);
-      data.top = new FormAttachment(addButton, 0);
-      editButton.setLayoutData(data);
-      editButton.setEnabled(false);
-      editButton.addSelectionListener(this);
-      
-      data = new FormData();
-      data.left = new FormAttachment(addButton, 0, SWT.LEFT);
-      data.right = new FormAttachment(100, 0);
-      data.top = new FormAttachment(editButton, 0);
-      deleteButton.setLayoutData(data);
-      deleteButton.setEnabled(false);
-      deleteButton.addSelectionListener(this);
-      
-      data = new FormData();
-      data.top = new FormAttachment(0, 0);
-      data.left = new FormAttachment(0, 0);
-      data.right = new FormAttachment(addButton, 0);
-      data.bottom = new FormAttachment(100, 0);
-      data.width = tableMinimumWidth;
-      table.setLayoutData(data);
-      table.addListener(SWT.Resize, this);
-      
-      return composite;
-    }
-    
-    public void handleEvent(Event event)
-    {
-      Table table = patternsTable.getTable();
-      if (event.type == SWT.Resize && event.widget == table)
-      {
-        TableColumn tableColumn = table.getColumn(0);
-        tableColumn.setWidth(table.getSize().x);
-      }
-    }
-
-    
-    public void setInput(Object input)
-    {
-      patternsTable.setInput(input);
-      if (isReadOnly)
-      {
-        composite.setEnabled(false);
-      }
-      else
-      {
-        composite.setEnabled(true);
-      }
-    }
-    
-    public void widgetSelected(SelectionEvent e)
-    {
-      XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)getInput();
-      Element element = st.getElement();
-
-      if (e.widget == addButton)
-      {
-        XSDDOMHelper helper = new XSDDOMHelper();
-        
-        int variety = st.getVariety().getValue();
-        Node varietyElement = null;
-        if (variety == XSDVariety.ATOMIC)
-        {
-          varietyElement = helper.getChildNode(element, XSDConstants.RESTRICTION_ELEMENT_TAG);
-        }
-        else if (variety == XSDVariety.UNION)
-        {
-          varietyElement = helper.getChildNode(element, XSDConstants.UNION_ELEMENT_TAG);
-        }
-        else if (variety == XSDVariety.LIST)
-        {
-          varietyElement = helper.getChildNode(element, XSDConstants.LIST_ELEMENT_TAG);
-        }
-              
-        if (varietyElement != null)
-        {
-          Shell shell = Display.getCurrent().getActiveShell();
-
-          String initialValue = ""; //$NON-NLS-1$
-          RegexWizard wizard = new RegexWizard(initialValue);
-
-          WizardDialog wizardDialog = new WizardDialog(shell, wizard);
-          wizardDialog.setBlockOnOpen(true);
-          wizardDialog.create();
-          
-          int result = wizardDialog.open();
-
-          if (result == Window.OK)
-          {
-            String newPattern = wizard.getPattern();
-            
-            java.util.List attributes = new ArrayList();
-            attributes.add(new DOMAttribute(XSDConstants.VALUE_ATTRIBUTE, newPattern));
-            beginRecording(XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_PATTERN"), element); //$NON-NLS-1$
-            Action action = getNewElementAction(XSDConstants.PATTERN_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_PATTERN"), attributes, (Element)varietyElement, null); //$NON-NLS-1$
-            action.run();
-            st.setElement(element);
-            endRecording(element);
-            patternsTable.refresh();
-            attributes = null;
-          }
-        }
-      }
-      else if (e.widget == deleteButton)
-      {
-        StructuredSelection selection = (StructuredSelection)patternsTable.getSelection();
-        if (selection != null)
-        {
-          Iterator i = selection.iterator();
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_ACTION_DELETE_INCLUDE"), element); // Reword ?
-          while (i.hasNext())
-          {
-            Object obj = i.next();
-            if (obj != null)
-            {
-              if (obj instanceof XSDPatternFacet)
-              {
-                XSDPatternFacet patternFacet = (XSDPatternFacet)obj;
-      
-                // I have to update using DOM
-                XSDDOMHelper.removeNodeAndWhitespace(patternFacet.getElement());            
-              }
-            }
-          }
-          st.setElement(element);
-          endRecording(element);
-          patternsTable.refresh();
-          if (patternsTable.getTable().getItemCount() == 0)
-          {
-            editButton.setEnabled(false);
-            deleteButton.setEnabled(false);
-          }
-        }
-      }
-      else if (e.widget == editButton)
-      {
-        StructuredSelection selection = (StructuredSelection)patternsTable.getSelection();
-        if (selection != null)
-        {
-          Object obj = selection.getFirstElement();
-          if (obj instanceof XSDPatternFacet)
-          {
-            XSDPatternFacet pattern = (XSDPatternFacet)obj;
-            String initialValue = pattern.getLexicalValue();
-            if (initialValue == null)
-            {
-              initialValue = ""; //$NON-NLS-1$
-            }
-
-            Shell shell = Display.getCurrent().getActiveShell();
-
-            RegexWizard wizard = new RegexWizard(initialValue);
-
-            WizardDialog wizardDialog = new WizardDialog(shell, wizard);
-            wizardDialog.setBlockOnOpen(true);
-            wizardDialog.create();
-            
-            int result = wizardDialog.open();
-
-            if (result == Window.OK)
-            {
-              String newPattern = wizard.getPattern();
-              beginRecording(XSDEditorPlugin.getXSDString("_UI_PATTERN_VALUE_CHANGE"), element); //$NON-NLS-1$
-              element.setAttribute(XSDConstants.VALUE_ATTRIBUTE, newPattern);
-              pattern.setLexicalValue(newPattern);
-              endRecording(element);
-              patternsTable.refresh();
-            }
-          }
-        }
-      }
-      else if (e.widget == patternsTable.getTable())
-      {
-        StructuredSelection selection = (StructuredSelection)patternsTable.getSelection();
-        if (selection.getFirstElement() != null)
-        {
-          editButton.setEnabled(true);
-          deleteButton.setEnabled(true);
-        }
-        else
-        {
-          editButton.setEnabled(false);
-          deleteButton.setEnabled(false);
-        }
-      }
-      
-    }
-
-    public void widgetDefaultSelected(SelectionEvent e)
-    {
-      
-    }
-  }
-
-  
-  class PatternsTableViewer extends NavigableTableViewer implements ICellModifier
-  {
-    protected String[] columnProperties = {"Pattern"};
-
-    protected CellEditor[] cellEditors;
-
-    Table table;
-    
-    public PatternsTableViewer(Table table)
-    {
-      super(table);
-      table = getTable();
-      
-      table.setLinesVisible(true);
-      
-      setContentProvider(new PatternsTableContentProvider());
-      setLabelProvider(new PatternsTableLabelProvider());
-      setColumnProperties(columnProperties);
-
-      setCellModifier(this);
-
-      TableColumn column = new TableColumn(table, SWT.NONE, 0);
-      column.setText(columnProperties[0]);
-      column.setAlignment(SWT.LEFT);
-      column.setResizable(true);
- 
-      cellEditors = new CellEditor[1];
-
-      TableLayout layout = new TableLayout();
-      ColumnWeightData data = new ColumnWeightData(100);
-      layout.addColumnData(data);
-      cellEditors[0] = new TextCellEditor(table);
-
-      getTable().setLayout(layout);
-      setCellEditors(cellEditors);
-    }
-    
-    public boolean canModify(Object element, String property)
-    {
-      return true;
-    }
-
-    public void modify(Object element, String property, Object value)
-    {
-      if (element instanceof TableItem && (value != null))
-      {
-        TableItem item = (TableItem)element;
-        
-        Element simpleTypeElement = ((XSDSimpleTypeDefinition)getInput()).getElement();
-        FacetsSection.this.beginRecording(XSDEditorPlugin.getXSDString("_UI_PATTERN_VALUE_CHANGE"), simpleTypeElement); //$NON-NLS-1$
-        
-        XSDPatternFacet patternFacet = (XSDPatternFacet)item.getData();
-        patternFacet.setLexicalValue((String)value);
-
-        item.setData(patternFacet);
-        item.setText((String)value);
-        FacetsSection.this.endRecording(simpleTypeElement);
-      }
-    }    
-
-    public Object getValue(Object element, String property)
-    {
-      if (element instanceof XSDPatternFacet)
-      {
-        XSDPatternFacet patternFacet = (XSDPatternFacet)element;
-        String value = patternFacet.getLexicalValue();
-        if (value == null) value = ""; //$NON-NLS-1$
-        return value;
-      }
-      return ""; //$NON-NLS-1$
-    }
-
-  }
-    
-  class PatternsTableContentProvider implements IStructuredContentProvider
-  {
-    public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
-    {
-    }
-
-    public java.lang.Object[] getElements(java.lang.Object inputElement)
-    {
-      java.util.List list = new ArrayList();
-      if (inputElement instanceof XSDSimpleTypeDefinition)
-      {
-        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)inputElement;
-        return st.getPatternFacets().toArray();
-      }
-      return list.toArray();
-    }
-
-    public void dispose()
-    {
-    }
-  }
-
-  class PatternsTableLabelProvider extends LabelProvider implements ITableLabelProvider
-  {
-    public PatternsTableLabelProvider()
-    {
-      
-    }
-    
-    public Image getColumnImage(Object element, int columnIndex)
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDSimplePattern.gif"); //$NON-NLS-1$
-    }
-    
-    public String getColumnText(Object element, int columnIndex)
-    {
-      if (element instanceof XSDPatternFacet)
-      {
-        XSDPatternFacet pattern = (XSDPatternFacet)element;
-        String value = pattern.getLexicalValue();
-        if (value == null) value = ""; //$NON-NLS-1$
-        return value;
-      }
-      return ""; //$NON-NLS-1$
-    }
-
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetsSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetsSectionDescriptor.java
deleted file mode 100644
index c5f9d1f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/FacetsSectionDescriptor.java
+++ /dev/null
@@ -1,87 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-
-
-public class FacetsSectionDescriptor extends AbstractSectionDescriptor
-{
-
-  /**
-   * 
-   */
-  public FacetsSectionDescriptor()
-  {
-    super();
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.facets";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDSimpleTypeDefinition.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new FacetsSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.facets";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDSimpleTypeDefinition)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/MinMaxSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/MinMaxSection.java
deleted file mode 100644
index 4596281..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/MinMaxSection.java
+++ /dev/null
@@ -1,286 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDParticleContent;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class MinMaxSection extends AbstractSection
-{
-  CCombo minCombo;
-  CCombo maxCombo;
-
-  /**
-   * 
-   */
-  public MinMaxSection()
-  {
-    super();
-  }
-
-
-  public void doHandleEvent(Event event)
-	{
-    if (event.widget == minCombo)
-    {
-      updateMinAttribute();
-	  }
-	  else if (event.widget == maxCombo)
-	  {
-      updateMaxAttribute();
-	  }
-	}
-  
-  public void doWidgetSelected(SelectionEvent e)
-  {
-    if (e.widget == minCombo)
-    {
-      updateMinAttribute();
-    }
-    else if (e.widget == maxCombo)
-    {
-      updateMaxAttribute();
-    }
-  }
-
-  private void updateMinAttribute()
-  {
-    XSDParticle particle = null;
-    Object input = getInput();
-
-    if (input instanceof XSDParticleContent)
-    {
-      particle = getAssociatedParticle((XSDParticleContent)input);
-    }
-    if (particle != null)
-    {
-      Element element = particle.getElement();
-      String newValue = ""; //$NON-NLS-1$
-      String id = ""; //$NON-NLS-1$
-
-      newValue = minCombo.getText();
-      id = XSDConstants.MINOCCURS_ATTRIBUTE;
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_MINOCCURS_CHANGE"), element); //$NON-NLS-1$        
-      if (newValue.length()==0)
-      {
-        particle.unsetMinOccurs();
-      }
-      try
-      {
-        if (newValue.equals("unbounded") || newValue.equals("*")) //$NON-NLS-1$
-        {
-          particle.setMinOccurs(XSDParticle.UNBOUNDED);
-        }
-        else
-        {
-          int val = Integer.parseInt(newValue);
-          particle.setMinOccurs(val);
-        }
-      }
-      catch (NumberFormatException e)
-      {
-      
-      }
-      finally
-      { 
-        endRecording(element);
-      }
-    }
-  }
-  
-  private void updateMaxAttribute()
-  {
-    XSDParticle particle = null;
-    Object input = getInput();
-
-    if (input instanceof XSDParticleContent)
-    {
-      particle = getAssociatedParticle((XSDParticleContent)input);
-    }
-    if (particle != null)
-    {
-      Element element = particle.getElement();
-      String newValue = "";
-      String id = "";
-      newValue = maxCombo.getText();
-      id = XSDConstants.MAXOCCURS_ATTRIBUTE;
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_MAXOCCURS_CHANGE"), element); //$NON-NLS-1$
-      if (newValue.length()==0)
-      {
-        particle.unsetMaxOccurs();
-      }
-      try
-      {
-        if (newValue.equals("unbounded") || newValue.equals("*")) //$NON-NLS-1$
-        {
-          particle.setMaxOccurs(XSDParticle.UNBOUNDED);
-        }
-        else
-        {
-          int val = Integer.parseInt(newValue);
-            particle.setMaxOccurs(val);
-        }
-      }
-      catch (NumberFormatException e)
-      {
-        
-      }
-      finally
-      {
-        endRecording(element);
-      }
-    }    
-  }
-  
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-
-	public void createControls(Composite parent,TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite =	getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-    minCombo = getWidgetFactory().createCCombo(composite, SWT.FLAT);
-    data = new FormData();
-    data.left = new FormAttachment(0, 100);
-    data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-    data.top = new FormAttachment(0, 0);
-    minCombo.setLayoutData(data);
-    minCombo.add("0"); //$NON-NLS-1$
-    minCombo.add("1"); //$NON-NLS-1$
-    minCombo.addListener(SWT.Modify, this);
-    minCombo.addSelectionListener(this);
-    
-		CLabel minLabel = getWidgetFactory().createCLabel(composite, XSDConstants.MINOCCURS_ATTRIBUTE + ":");
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(minCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(minCombo, 0, SWT.CENTER);
-		minLabel.setLayoutData(data);
-
-    maxCombo = getWidgetFactory().createCCombo(composite, SWT.FLAT);
-    data = new FormData();
-    data.left = new FormAttachment(0, 100);
-    data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-    data.top = new FormAttachment(minCombo, +ITabbedPropertyConstants.VSPACE);
-    maxCombo.setLayoutData(data);
-    maxCombo.add("0"); //$NON-NLS-1$
-    maxCombo.add("1"); //$NON-NLS-1$
-    maxCombo.add("unbounded"); //$NON-NLS-1$
-    maxCombo.addListener(SWT.Modify, this);
-    maxCombo.addSelectionListener(this);
-    
-		CLabel maxLabel = getWidgetFactory().createCLabel(composite, XSDConstants.MAXOCCURS_ATTRIBUTE + ":");
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(maxCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(maxCombo, 0, SWT.CENTER);
-		maxLabel.setLayoutData(data);
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-    if (doRefresh)
-    {
-      if (isReadOnly)
-      {
-        composite.setEnabled(false);
-      }
-      else
-      {
-        composite.setEnabled(true);
-      }
-
-  	  setListenerEnabled(false);
-      boolean refreshMinText = true;
-      boolean refreshMaxText = true;
-      if (minCombo.isFocusControl())
-      {
-        refreshMinText = false;
-      }
-      if (maxCombo.isFocusControl())
-      {
-        refreshMaxText = false;
-      }
-      if (refreshMinText)
-      {
-        minCombo.setText(""); //$NON-NLS-1$
-      }
-      if (refreshMaxText)
-      {
-        maxCombo.setText(""); //$NON-NLS-1$
-      }
-  	  Object input = getInput();
-  	  if (input != null)
-  	  {
-  	    if (input instanceof XSDParticleContent)
-  	    {
-  		    XSDParticle particle = getAssociatedParticle((XSDParticleContent)input);
-  		    if (particle != null)
-  		    {
-  //  	      minText.setText(String.valueOf(particle.getMinOccurs()));
-  //	        maxText.setText(String.valueOf(particle.getMaxOccurs()));
-            Element element = particle.getElement();
-  		      if (element != null)
-  		      {
-  		        String min = element.getAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-  		        String max = element.getAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-  		        if (min != null && refreshMinText)
-  		        {
-  		          minCombo.setText(min);
-  		        }
-  		        if (max != null && refreshMaxText)
-  		        {
-  		          maxCombo.setText(max);
-  		        }
-  		      }
-  		    }
-  	    }
-  	  }
-  	  setListenerEnabled(true);
-    }
-	}
-	
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-  private XSDParticle getAssociatedParticle(XSDParticleContent particleContent)
-  {
-    XSDConcreteComponent xsdComp = particleContent.getContainer();
-    if (xsdComp instanceof XSDParticle)
-    {
-      return (XSDParticle)xsdComp;
-    }
-    return null;
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/MinMaxSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/MinMaxSectionDescriptor.java
deleted file mode 100644
index 80b5f42..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/MinMaxSectionDescriptor.java
+++ /dev/null
@@ -1,145 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDWildcard;
-
-public class MinMaxSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public MinMaxSectionDescriptor()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.minmax";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDElementDeclaration.class);
-    list.add(XSDModelGroup.class);
-    list.add(XSDWildcard.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new MinMaxSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-//      if (object instanceof XSDElementDeclaration)
-//      {
-//        Element element = ((XSDElementDeclaration)object).getElement();
-//        Object parentNode = element.getParentNode();
-//        // minOccurs and maxOccurs apply to non-global elements
-//        boolean isGlobalElement = XSDDOMHelper.inputEquals(parentNode, XSDConstants.SCHEMA_ELEMENT_TAG, false);
-//        return !isGlobalElement;
-//      }
-//      if (object instanceof XSDParticle)
-//      {
-//        XSDParticle particle = (XSDParticle)object;
-//        Element element = particle.getElement();
-//        if (inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-//        {
-//          return true;
-//        }
-//        else if (inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, true))
-//        {
-//          return false;
-//        }
-//        else
-//        {
-//          return true;
-//        }
-//      }
-      if (object instanceof XSDModelGroup)
-      {
-        return true;
-      }
-      else if (object instanceof XSDElementDeclaration)
-      {
-        XSDElementDeclaration xsdElementDeclaration = (XSDElementDeclaration)object;
-        if (xsdElementDeclaration.isGlobal())
-        {
-          return false;
-        }
-        else
-        {
-          return true;
-        }
-      }
-      else if (object instanceof XSDWildcard)
-      {
-        XSDWildcard wildcard = (XSDWildcard)object;
-        if (wildcard.getContainer() instanceof XSDComplexTypeDefinition ||
-            wildcard.getContainer() instanceof XSDAttributeGroupDefinition)
-        {
-          return false;
-        }
-        else
-        {
-          return true;
-        }
-      }
-    }
-    return false;
-  }
-  
-  public String getAfterSection()
-  {
-    return "org.eclipse.wst.wsdleditor.section.reference";
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ModelGroupSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ModelGroupSection.java
deleted file mode 100644
index c5e62d8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ModelGroupSection.java
+++ /dev/null
@@ -1,144 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDCompositor;
-import org.eclipse.xsd.XSDModelGroup;
-import org.w3c.dom.Element;
-
-public class ModelGroupSection extends AbstractSection
-{
-  CCombo modelGroupCombo;
-  private String[] modelGroupComboValues = { "sequence", "choice", "all" }; //$NON-NLS-1$
-  
-  /**
-   * 
-   */
-  public ModelGroupSection()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite = getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-		modelGroupCombo = getWidgetFactory().createCCombo(composite, SWT.FLAT);
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(0, 0);
-		modelGroupCombo.setLayoutData(data);
-		modelGroupCombo.addSelectionListener(this);
-		modelGroupCombo.setItems(modelGroupComboValues);
-
-		CLabel cLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_KIND")); //$NON-NLS-1$
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(modelGroupCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(modelGroupCombo, 0, SWT.CENTER);
-		cLabel.setLayoutData(data);
-
-	}
- 	
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-	  setListenerEnabled(false);
-    if (isReadOnly)
-    {
-      composite.setEnabled(false);
-    }
-    else
-    {
-      composite.setEnabled(true);
-    }
-	  Object input = getInput();
-	  if (input != null)
-	  {
-      if (input instanceof XSDModelGroup)
-	    {
-	      XSDModelGroup particle = (XSDModelGroup)input;
-	      String modelType = particle.getCompositor().getName();
-	      modelGroupCombo.setText(modelType);
-	    }
-	  }
-	  setListenerEnabled(true);
-	}
-
-  public void widgetSelected(SelectionEvent e)
-  {
-    if (e.widget == modelGroupCombo)
-    {
-      Object input = getInput();
-	    if (input instanceof XSDModelGroup)
-	    {
-	      XSDModelGroup particle = (XSDModelGroup)input;
-
-        Element element = particle.getElement();
-        Element parent = (Element)element.getParentNode();
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_GROUP_SCOPE_CHANGE"), parent); //$NON-NLS-1$
-//        changeContentModel(parent, modelGroupCombo.getText());
-        particle.setCompositor(XSDCompositor.get(modelGroupCombo.getText()));      
-        endRecording(parent);
-        refresh();
-	    }
-    }
-  }
-
-//  private void changeContentModel(Element parent, String contentModel)
-//  {
-//    Document doc = parent.getOwnerDocument();
-//    XSDDOMHelper domHelper = getDomHelper();
-//  
-//    String prefix = parent.getPrefix();
-//    prefix = prefix == null ? "" : prefix + ":";
-//    
-//    Element contentModelElement = domHelper.getContentModelFromParent(parent);
-//  
-//    if (contentModelElement.getLocalName().equals(contentModel))
-//    {
-//      return; // it's already the content model 
-//    }
-//  
-//    Element newNode = doc.createElementNS(XSDDOMHelper.XMLSchemaURI, prefix + contentModel);
-//  
-//    if (contentModelElement.hasChildNodes())
-//    {        
-//      NodeList nodes = contentModelElement.getChildNodes();
-//      // use clones so we don't have a refresh problem
-//      for (int i = 0; i < nodes.getLength(); i++)
-//      {
-//        Node node = nodes.item(i);
-//        newNode.appendChild(node.cloneNode(true)); 
-//      }
-//    }
-//    parent.replaceChild(newNode, contentModelElement);
-//  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ModelGroupSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ModelGroupSectionDescriptor.java
deleted file mode 100644
index 4f1a091..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ModelGroupSectionDescriptor.java
+++ /dev/null
@@ -1,102 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDModelGroup;
-
-public class ModelGroupSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public ModelGroupSectionDescriptor()
-  {
-    super();
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.modelgroup";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDModelGroup.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new ModelGroupSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-//      if (object instanceof XSDParticle)
-//      {
-//        XSDParticle particle = (XSDParticle)object;
-//        Element element = particle.getElement();
-//        if (inputEquals(element, XSDConstants.SEQUENCE_ELEMENT_TAG, false) ||
-//            inputEquals(element, XSDConstants.CHOICE_ELEMENT_TAG, false) ||
-//            inputEquals(element, XSDConstants.ALL_ELEMENT_TAG, false))
-//        {
-//          return true;
-//        }
-//      }
-      if (object instanceof XSDModelGroup)
-      {
-        XSDModelGroup particle = (XSDModelGroup)object;
-//        Element element = particle.getElement();
-//        if (inputEquals(element, XSDConstants.SEQUENCE_ELEMENT_TAG, false) ||
-//            inputEquals(element, XSDConstants.CHOICE_ELEMENT_TAG, false) ||
-//            inputEquals(element, XSDConstants.ALL_ELEMENT_TAG, false))
-//        {
-          return true;
-//        }
-      }
-    }
-    return false;
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NameSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NameSection.java
deleted file mode 100644
index bdfc606..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NameSection.java
+++ /dev/null
@@ -1,444 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalAttributeGroupRenamer;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalAttributeRenamer;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalElementRenamer;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalGroupRenamer;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.GlobalSimpleOrComplexTypeRenamer;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDComponent;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class NameSection extends AbstractSection
-{
-  /**
-   * 
-   */
-  public NameSection()
-  {
-    super();
-  }
-  
-	Text nameText;
-
-	
-  public void doHandleEvent(Event event) 
-  {
-    if (event.widget == nameText)
-	  {
-			Object input = getInput();
-      String newValue = nameText.getText();
-	    if (input instanceof XSDNamedComponent)
-	    {
-	      XSDNamedComponent namedComponent = (XSDNamedComponent)input;
-	      if (newValue.length() > 0)
-	      {
-	        namedComponent.setName(newValue);
-          doReferentialIntegrityCheck(namedComponent, newValue);
-	      }
-	      else
-	      {
-          // TODO: Show error message
-	      }
-	    }
-//	    else if (input instanceof XSDParticle)
-//	    {
-//	      XSDParticle xsdParticle = (XSDParticle)input;
-//	      if (newValue.length() > 0)
-//	      {
-//	        doReferentialIntegrityCheck(xsdParticle, newValue);
-//	      }
-//	      else
-//	      {
-//	        // TODO: Show error message
-//	      }
-//	    }
-      else if (input instanceof XSDAttributeDeclaration)
-      {
-        XSDAttributeDeclaration attribute = (XSDAttributeDeclaration)input;
-	      if (newValue.length() > 0)
-	      {
-	        doReferentialIntegrityCheck(attribute, newValue);
-	        attribute.setName(newValue);
-	      }
-	      else
-	      {
-	        // TODO: Show error message
-	      }
-      }
-	    else if (input instanceof XSDAttributeUse)
-      {
-        XSDAttributeUse attributeUse = (XSDAttributeUse)input;
-        XSDAttributeDeclaration attribute = attributeUse.getAttributeDeclaration();
-	      if (newValue.length() > 0)
-	      {
-	        doReferentialIntegrityCheck(attribute, newValue);
-	        attribute.setName(newValue);
-	        attributeUse.setAttributeDeclaration(attribute);
-	      }
-	      else
-	      {
-          // TODO: Show error message
-	      }
-      }
-	  }
-	}
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite =	getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-		nameText = getWidgetFactory().createText(composite, ""); //$NON-NLS-1$
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		// data.right = new FormAttachment(95, 0);
-    data.right = new FormAttachment(100, -rightMarginSpace -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(0, 0);
-		nameText.setLayoutData(data);
-		nameText.addListener(SWT.Modify, this);
-
-		CLabel nameLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_NAME")); //$NON-NLS-1$
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(nameText, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(nameText, 0, SWT.CENTER);
-		nameLabel.setLayoutData(data);
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-    if (nameText.isFocusControl())
-    {
-      return;
-    }
-    setListenerEnabled(false);
-    nameText.setEditable(true);
-    if (isReadOnly)
-    {
-      composite.setEnabled(false);
-    }
-    else
-    {
-      composite.setEnabled(true);
-    }
-	  Object input = getInput();
-	  nameText.setText(""); //$NON-NLS-1$
-	  if (input != null)
-	  {
-	    if (input instanceof XSDComplexTypeDefinition || input instanceof XSDSimpleTypeDefinition)
-	    {
-	      XSDTypeDefinition type = (XSDTypeDefinition)input;
-	      
-	      Element element = type.getElement();
-        String name = element.getAttribute(XSDConstants.NAME_ATTRIBUTE);
-        if (name == null) name = "";
-        
-        boolean isAnonymousType = checkForAnonymousType(element);
-        if (isAnonymousType)
-        {
-          nameText.setText("**anonymous**"); //$NON-NLS-1$
-          nameText.setEditable(false);
-        }
-        else
-        {
-          nameText.setText(name);
-          nameText.setEditable(true);
-        }
-	    }
-	    else if (input instanceof XSDNamedComponent)
-	    {
-	      XSDNamedComponent namedComponent = (XSDNamedComponent)input;
-	      Element element = namedComponent.getElement();
-        String name = namedComponent.getName();
-	      if (name != null)
-	      {
-	        nameText.setText(name);
-	      }
-	    }
-//	    else if (input instanceof XSDParticle)
-//	    {
-//	      XSDParticle xsdParticle = (XSDParticle)input;
-//	      String name = xsdParticle.getElement().getAttribute(XSDConstants.NAME_ATTRIBUTE);
-//	      if (name != null)
-//	      {
-//	        nameText.setText(name);
-//	      }
-//	    }
-      else if (input instanceof XSDAttributeDeclaration)
-      {
-        XSDAttributeDeclaration attribute = (XSDAttributeDeclaration)input;
-        //String name = attribute.getName();
-        Element element = attribute.getElement();
-        String name = element.getAttribute(XSDConstants.NAME_ATTRIBUTE);
-        if (name != null)
-	      {
-	        nameText.setText(name);
-	      }
-      }
-	    else if (input instanceof XSDAttributeUse)
-      {
-        XSDAttributeUse attributeUse = (XSDAttributeUse)input;
-        XSDAttributeDeclaration attribute = attributeUse.getAttributeDeclaration();
-        String name = attribute.getName();
-        if (name != null)
-	      {
-	        nameText.setText(name);
-	      }
-      }
-//	    else if (input instanceof Element)
-//	    {
-//	      String name = ((Element)input).getAttribute(XSDConstants.NAME_ATTRIBUTE);
-//	      if (name == null) name = "";
-//	      nameText.setText(name);
-//	    }
-	  }
-	  setListenerEnabled(true);
-	}
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-   */
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-	private void doReferentialIntegrityCheck(XSDComponent xsdComponent, String newValue)
-	{
-    Element element = xsdComponent.getElement();
-    if (XSDDOMHelper.inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-    {
-      if (validateName(newValue))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_NAME_CHANGE"), element); //$NON-NLS-1$
-        element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-        if (xsdComponent instanceof XSDNamedComponent)
-        {
-          ((XSDNamedComponent)xsdComponent).setName(newValue);
-        }
-        
-        // now rename any references to this element
-       
-        if (xsdSchema != null)
-        {
-          XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-          if (comp != null && comp instanceof XSDElementDeclaration && comp.getContainer().equals(xsdSchema))
-          {
-            GlobalElementRenamer renamer = new GlobalElementRenamer((XSDNamedComponent)comp, newValue);
-            renamer.visitSchema(xsdSchema);
-          }
-        }        
-        endRecording(element);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-    {
-      if (validateName(newValue))
-      {
-	      beginRecording(XSDEditorPlugin.getXSDString("_UI_COMPLEXTYPE_NAME_CHANGE"), element); //$NON-NLS-1$
-	      if (newValue.length() > 0)
-	      {
-	        // now rename any references to this type
-	        if (xsdSchema != null)
-	        {
-	          XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-	          if (comp != null && comp instanceof XSDComplexTypeDefinition && comp.getContainer().equals(xsdSchema))
-	          {
-	            GlobalSimpleOrComplexTypeRenamer renamer = new GlobalSimpleOrComplexTypeRenamer((XSDNamedComponent)comp, newValue);
-	            renamer.visitSchema(xsdSchema);
-	          }
-	        }
-	        element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-	        ((XSDNamedComponent)xsdComponent).setName(newValue);
-	      }
-	      else
-	      {
-	        element.removeAttribute(XSDConstants.NAME_ATTRIBUTE);
-	      }
-      endRecording(element);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-    {
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_SIMPLETYPE_NAME_CHANGE"), element);
-      if (validateName(newValue))
-      {
-        // now rename any references to this type
-        if (newValue.length() > 0)
-        {
-          if (xsdSchema != null)
-          {
-            XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-            if (comp != null && comp instanceof XSDSimpleTypeDefinition && comp.getContainer().equals(xsdSchema))
-            {
-              GlobalSimpleOrComplexTypeRenamer renamer = new GlobalSimpleOrComplexTypeRenamer((XSDNamedComponent)comp, newValue);
-              renamer.visitSchema(xsdSchema);
-            }
-          }
-//          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-        }
-        else
-        {
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, "");
-        }
-      }
-      endRecording(element);
-
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-    {  
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTE_NAME_CHANGE"), element); //$NON-NLS-1$
-      // now rename any references to this element
-      if (xsdSchema != null)
-       {
-        XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-        if (comp != null && comp instanceof XSDAttributeDeclaration && comp.getContainer().equals(xsdSchema))
-        {
-          GlobalAttributeRenamer renamer = new GlobalAttributeRenamer((XSDNamedComponent)comp, newValue);
-          renamer.visitSchema(xsdSchema);
-        }
-      }
-      // element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-      endRecording(element);
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, false))
-    {  
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTEGROUP_NAME_CHANGE"), element); //$NON-NLS-1$
-      ((XSDNamedComponent)xsdComponent).setName(newValue);
-      // now rename any references to this element
-      if (xsdSchema != null)
-      {
-        XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-        if (comp != null && comp instanceof XSDAttributeGroupDefinition && comp.getContainer().equals(xsdSchema))
-        {
-          GlobalAttributeGroupRenamer renamer = new GlobalAttributeGroupRenamer((XSDNamedComponent)comp, newValue);
-          renamer.visitSchema(xsdSchema);
-        }
-      }
-      endRecording(element);
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.UNIQUE_ELEMENT_TAG, false))
-    {
-      if (validateName(newValue))
-       {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_UNIQUE_NAME_CHANGE"), element); //$NON-NLS-1$
-        if (newValue.length() > 0)
-        {
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-        }
-        else
-        {
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, ""); //$NON-NLS-1$
-        }
-        endRecording(element);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.KEY_ELEMENT_TAG, false))
-    {
-      if (validateName(newValue))
-      {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_KEY_NAME_CHANGE"), element); //$NON-NLS-1$
-        if (newValue.length() > 0)
-        {
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-        }
-        else
-        {
-          element.setAttribute(XSDConstants.NAME_ATTRIBUTE, ""); //$NON-NLS-1$
-        }
-        endRecording(element);
-      }
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.GROUP_ELEMENT_TAG, false))
-    {
-      if (validateName(newValue))
-       {
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_GROUP_NAME_CHANGE"), element); //$NON-NLS-1$
-        // now rename any references to this element
-        if (xsdSchema != null)
-         {
-          XSDConcreteComponent comp = xsdSchema.getCorrespondingComponent(element);
-          if (comp != null && comp instanceof XSDModelGroupDefinition && comp.getContainer().equals(xsdSchema))
-          {
-            GlobalGroupRenamer renamer = new GlobalGroupRenamer((XSDNamedComponent)comp, newValue);
-            renamer.visitSchema(xsdSchema);
-          }
-        }
-        element.setAttribute(XSDConstants.NAME_ATTRIBUTE, newValue);
-        endRecording(element);
-      }
-      
-    }
-    
-
-
-	}
-
-  boolean checkForAnonymousType(Element element)
-  {
-    Object parentElement = (Object)element.getParentNode();
-    boolean isAnonymous = false;
-    if (parentElement != null)
-    {
-      if (XSDDOMHelper.inputEquals(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-      {
-        if (XSDDOMHelper.inputEquals(parentElement, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-        {
-          isAnonymous = true; 
-        }
-      }
-      else if (XSDDOMHelper.inputEquals(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-      {
-        if (XSDDOMHelper.inputEquals(parentElement, XSDConstants.RESTRICTION_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals(parentElement, XSDConstants.ELEMENT_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals(parentElement, XSDConstants.UNION_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals(parentElement, XSDConstants.LIST_ELEMENT_TAG, false) ||
-            XSDDOMHelper.inputEquals(parentElement, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-        {
-          isAnonymous = true;
-        }
-      }
-    }
-    return isAnonymous;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NameSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NameSectionDescriptor.java
deleted file mode 100644
index f2f7144..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NameSectionDescriptor.java
+++ /dev/null
@@ -1,169 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.wst.common.ui.properties.ISectionDescriptor;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class NameSectionDescriptor extends AbstractSectionDescriptor implements ISectionDescriptor
-{
-  /**
-   * 
-   */
-  public NameSectionDescriptor()
-  {
-    super();
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.name";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDNamedComponent.class);
-    list.add(XSDAttributeUse.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new NameSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDNamedComponent)
-      {
-        XSDNamedComponent namedComponent = (XSDNamedComponent)object;
-        Element element = namedComponent.getElement();
-        
-        if (inputEquals(element, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false) ||
-            inputEquals(element, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-        {
-          return false;
-        }
-        
-        // don't want to show editable name section for ref's
-        // need to show ref section with a combobox
-        
-        if (namedComponent instanceof XSDElementDeclaration)
-        {
-          if (((XSDElementDeclaration)namedComponent).isElementDeclarationReference())
-          {
-            return false;
-          }
-          else
-          {
-            return true;
-          }
-        }
-        else if (namedComponent instanceof XSDAttributeDeclaration)
-        {
-          if (((XSDAttributeDeclaration)namedComponent).isAttributeDeclarationReference())
-          {
-            return false;
-          }
-          else
-          {
-            return true;
-          }
-        }
-
-        if (element != null)
-        {
-          if (inputEquals(element, element.getLocalName(), true))
-          {
-            return false;
-          }
-          else
-          {
-            return true;
-          }
-        }
-      }
-//      else if (object instanceof XSDParticle)
-//      {
-//        XSDParticle particle = (XSDParticle)object;
-//        Element element = particle.getElement();
-//        if (inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-//        {
-//          return true;
-//        }
-//        else if (inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, true))
-//        {
-//          return false;
-//        }
-//        else
-//        {
-//          return false;
-//        }
-//      }
-      else if (object instanceof XSDAttributeUse)
-      {
-        XSDAttributeUse attributeUse = (XSDAttributeUse)object;
-        XSDAttributeDeclaration attribute = attributeUse.getAttributeDeclaration();
-        Element element = attributeUse.getElement();
-        if (inputEquals(element, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-        {
-          return true;
-        }
-        else
-        {
-          return false;
-        }
-      }
-
-    }
-
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceAndSchemaLocationDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceAndSchemaLocationDescriptor.java
deleted file mode 100644
index 5a47fa8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceAndSchemaLocationDescriptor.java
+++ /dev/null
@@ -1,87 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDImport;
-
-public class NamespaceAndSchemaLocationDescriptor extends AbstractSectionDescriptor
-{
-	  NamespaceAndSchemaLocationSection namespaceAndSchemaLocationSection;
-	  /**
-	   * 
-	   */
-	  public NamespaceAndSchemaLocationDescriptor()
-	  {
-	    super();
-	    namespaceAndSchemaLocationSection = new NamespaceAndSchemaLocationSection();
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-	   */
-	  public String getId()
-	  {
-	    return "com.ibm.xsdeditor.section.namespaceAndSchemaLocationSection";
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-	   */
-	  public List getInputTypes()
-	  {
-	    List list = new ArrayList();
-	    list.add(XSDConcreteComponent.class);
-	    return list;
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-	   */
-	  public ISection getSectionClass()
-	  {
-	    return namespaceAndSchemaLocationSection;
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-	   */
-	  public String getTargetTab()
-	  {
-	    return "com.ibm.xmlwebservices.general";
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	   */
-	  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-	  {
-	    Object object = null;	    
-	    
-	    if (selection instanceof StructuredSelection)
-	    {
-	      StructuredSelection structuredSelection = (StructuredSelection)selection;
-	      object = structuredSelection.getFirstElement();
-	      if (object instanceof XSDImport) {
-		    return true;
-	      }
-	    }
-	    
-	    return false;
-	  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceAndSchemaLocationSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceAndSchemaLocationSection.java
deleted file mode 100644
index e069de4..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceAndSchemaLocationSection.java
+++ /dev/null
@@ -1,361 +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.xsd.ui.internal.properties.section;
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.common.ui.viewers.ResourceFilter;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.delete.XSDExternalFileCleanup;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDSchemaHelper;
-import org.eclipse.wst.xsd.ui.internal.wizards.XSDSelectIncludeFileWizard;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.impl.XSDImportImpl;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class NamespaceAndSchemaLocationSection extends CommonDirectivesSection
-{
-	Text namespaceText, prefixText;
-  protected String oldPrefixValue;
-	  
-	public NamespaceAndSchemaLocationSection()
-  {
-		super();
-	}
-	
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		Composite composite = getWidgetFactory().createFlatFormComposite(parent);
-
-		CLabel namespaceLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_NAMESPACE")); //$NON-NLS-1$
-    namespaceText = getWidgetFactory().createText(composite, "", SWT.NONE); //$NON-NLS-1$
-		namespaceText.setEditable(false);
-
-    FormData data = new FormData();
-    data.left = new FormAttachment(0, 0);
-    data.right = new FormAttachment(namespaceText, +ITabbedPropertyConstants.HSPACE);
-    data.top = new FormAttachment(namespaceText, 0, SWT.CENTER);
-    namespaceLabel.setLayoutData(data);
-    
-    data = new FormData();
-    data.left = new FormAttachment(0, 110);
-    data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-    data.top = new FormAttachment(0, 0);
-    namespaceText.setLayoutData(data);
-    
-		CLabel prefixLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_PREFIX")); //$NON-NLS-1$				
-		prefixText = getWidgetFactory().createText(composite, "", SWT.NONE); //$NON-NLS-1$
-		prefixText.setEditable(true);
-    prefixText.addListener(SWT.Modify, this);
-
-    data = new FormData();
-    data.left = new FormAttachment(0, 0);
-    data.right = new FormAttachment(prefixText, 0);
-    data.top = new FormAttachment(prefixText, 0, SWT.CENTER);
-    prefixLabel.setLayoutData(data);  
-    
-		data = new FormData();
-		data.left = new FormAttachment(0, 110);
-		data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(namespaceText, +ITabbedPropertyConstants.VSPACE);
-		prefixText.setLayoutData(data);
-   
-		// Create Schema Location Label
-		CLabel schemaLocationLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_SCHEMA_LOCATION")); //$NON-NLS-1$
-    schemaLocationText = getWidgetFactory().createText(composite, "", SWT.NONE); //$NON-NLS-1$
-
-		// Create Wizard Button
-		wizardButton = getWidgetFactory().createButton(composite, "", SWT.NONE); //$NON-NLS-1$
-    wizardButton.setImage(XSDEditorPlugin.getXSDImage("icons/browsebutton.gif")); //$NON-NLS-1$
-		FormData buttonFormData = new FormData();
-		buttonFormData.left = new FormAttachment(100, -rightMarginSpace + 2);
-		buttonFormData.right = new FormAttachment(100, 0);
-		buttonFormData.top = new FormAttachment(schemaLocationText, 0, SWT.CENTER);
-		wizardButton.setLayoutData(buttonFormData);
-		wizardButton.addSelectionListener(this);
-		
-		// Create Schema Location Text
-		schemaLocationText.setEditable(true);
-		FormData schemaLocationData = new FormData();
-		schemaLocationData.left = new FormAttachment(0, 110);
-		schemaLocationData.right = new FormAttachment(wizardButton, 0);
-		schemaLocationData.top = new FormAttachment(prefixText, +ITabbedPropertyConstants.VSPACE);
-		schemaLocationText.setLayoutData(schemaLocationData);
-		schemaLocationText.addListener(SWT.Modify, this);
-    
-    data = new FormData();
-    data.left = new FormAttachment(0, 0);
-    data.right = new FormAttachment(schemaLocationText, 0);
-    data.top = new FormAttachment(schemaLocationText, 0, SWT.CENTER);
-    schemaLocationLabel.setLayoutData(data);
-    
-    // error text
-    errorText = new StyledText(composite, SWT.FLAT);
-    errorText.setEditable(false);
-    errorText.setEnabled(false);
-    errorText.setText("");
-    
-    data = new FormData();
-    data.left = new FormAttachment(schemaLocationText, 0, SWT.LEFT);
-    data.right = new FormAttachment(100, 0);
-    data.top = new FormAttachment(schemaLocationText, 0);
-    errorText.setLayoutData(data);
-  }
-	
-	public void widgetSelected(SelectionEvent event)
-  {
-		if (event.widget == wizardButton)
-    {
-      setListenerEnabled(false);
-			Shell shell = Display.getCurrent().getActiveShell();
-		    
-			IFile currentIFile = ((IFileEditorInput)getActiveEditor().getEditorInput()).getFile();
-			ViewerFilter filter = new ResourceFilter(new String[] { ".xsd" }, //$NON-NLS-1$ 
-		            new IFile[] { currentIFile },
-		            null);
-		      
-			XSDSelectIncludeFileWizard fileSelectWizard = 
-			   new XSDSelectIncludeFileWizard(xsdSchema, 
-                                        false,
-			                                  XSDEditorPlugin.getXSDString("_UI_FILEDIALOG_SELECT_XML_SCHEMA"), //$NON-NLS-1$
-			                                  XSDEditorPlugin.getXSDString("_UI_FILEDIALOG_SELECT_XML_DESC"), //$NON-NLS-1$
-			                                  filter,
-			                                  (IStructuredSelection) selection);
-
-			WizardDialog wizardDialog = new WizardDialog(shell, fileSelectWizard);
-			wizardDialog.create();
-			wizardDialog.setBlockOnOpen(true);
-			int result = wizardDialog.open();
-			  
-		  String value = schemaLocationText.getText();
-      prefixText.removeListener(SWT.Modify, this);
-		  if (result == Window.OK)
-		  {
-        errorText.setText("");
-        IFile selectedIFile = fileSelectWizard.getResultFile();
-        String schemaFileString = value;
-        if (selectedIFile != null) 
-        {
-          schemaFileString = URIHelper.getRelativeURI(selectedIFile.getLocation(), currentIFile.getLocation());
-        }
-        else
-        {
-          schemaFileString = fileSelectWizard.getURL();
-        }
-
-        String namespace = fileSelectWizard.getNamespace();
-        if (namespace == null) namespace = "";
-
-        XSDSchema externalSchema = fileSelectWizard.getExternalSchema();
-        handleSchemaLocationChange(schemaFileString, namespace, externalSchema);
-		  }
-      setListenerEnabled(true);
-      prefixText.addListener(SWT.Modify, this);
-		}
-	}
-
-  protected void handleSchemaLocationChange(String schemaFileString, String namespace, XSDSchema externalSchema)
-  {
-    XSDConcreteComponent comp = (XSDConcreteComponent)getInput();
-    if (comp instanceof XSDImport)
-    {
-      XSDImport xsdImport = (XSDImport)comp;
-      Element importElement = comp.getElement();
-      
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_IMPORT_CHANGE"), importElement);
-
-      xsdImport.setNamespace(namespace);
-      xsdImport.setSchemaLocation(schemaFileString);
-      xsdImport.setResolvedSchema(externalSchema);
-      
-      java.util.Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-      
-//      System.out.println("changed Import Map is " + map.values());
-//      System.out.println("changed import Map keys are " + map.keySet());
-
-      // Referential integrity on old import
-      // How can we be sure that if the newlocation is the same as the oldlocation
-      // the file hasn't changed
-      
-      XSDSchema referencedSchema = xsdImport.getResolvedSchema();
-      if (referencedSchema != null)
-      {
-        XSDExternalFileCleanup cleanHelper = new XSDExternalFileCleanup(referencedSchema);
-        cleanHelper.visitSchema(xsdSchema);
-      }
-
-      Element schemaElement = getSchema().getElement();
-
-      // update the xmlns in the schema element first, and then update the import element next
-      // so that the last change will be in the import element.  This keeps the selection
-      // on the import element
-      TypesHelper helper = new TypesHelper(externalSchema);
-      String prefix = helper.getPrefix(namespace, false);
-      
-      if (map.containsKey(prefix))
-      {
-        prefix = null;
-      }
-
-      if (prefix == null || (prefix !=null && prefix.length() == 0))
-      {
-        StringBuffer newPrefix = new StringBuffer("pref");  //$NON-NLS-1$
-        int prefixExtension = 1;
-        while (map.containsKey(newPrefix.toString()) && prefixExtension < 100)
-        {
-          newPrefix = new StringBuffer("pref" + String.valueOf(prefixExtension));
-          prefixExtension++;
-        }
-        prefix = newPrefix.toString();
-      }
-
-      if (namespace.length() > 0)
-      {
-        // if ns already in map, use its corresponding prefix
-        if (map.containsValue(namespace))
-        {
-          TypesHelper typesHelper = new TypesHelper(xsdSchema);
-          prefix = typesHelper.getPrefix(namespace, false);
-        }
-        else // otherwise add to the map
-        {
-          schemaElement.setAttribute("xmlns:"+prefix, namespace);
-        }
-        prefixText.setText(prefix);
-      }
-      else
-      {
-        prefixText.setText("");
-        namespaceText.setText("");
-      }
-        
-      endRecording(importElement);
-      
-//      System.out.println("changed Import Map is " + map.values());
-//      System.out.println("changed import Map keys are " + map.keySet());
-
-    }        
-    refresh();
-  }
-  
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-		if (doRefresh)
-		{
-      errorText.setText("");
-			setListenerEnabled(false);
-
-			Element element = null;
-			if (input instanceof XSDImport) { 
-				element = ((XSDImportImpl) input).getElement();
-				
-				String namespace = element.getAttribute("namespace"); //$NON-NLS-1$
-				String schemaLocation = element.getAttribute("schemaLocation"); //$NON-NLS-1$
-				
-				TypesHelper helper = new TypesHelper(xsdSchema);
-		        String prefix = helper.getPrefix(element.getAttribute(XSDConstants.NAMESPACE_ATTRIBUTE), false);
-
-				if (namespace == null) {
-					namespace = ""; //$NON-NLS-1$
-				}
-				if (prefix == null) {
-					prefix = ""; //$NON-NLS-1$
-				}
-				if (schemaLocation == null) {
-					schemaLocation = ""; //$NON-NLS-1$
-				}
-				
-				namespaceText.setText(namespace);
-				prefixText.setText(prefix);
-				schemaLocationText.setText(schemaLocation);
-        oldPrefixValue = prefixText.getText();
-			}
-
-			setListenerEnabled(true);
-		}
-	}
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-   */
-  public boolean shouldUseExtraSpace()
-  {
-    return true;
-  }
-
-  public void doHandleEvent(Event event)
-  {
-    super.doHandleEvent(event);
-    if (event.type == SWT.Modify)
-    {
-      if (event.widget == prefixText)
-      {
-        if (validatePrefix(prefixText.getText()) && schemaLocationText.getText().trim().length() > 0)
-        {
-          Element element = ((XSDConcreteComponent)getInput()).getElement();
-          Map map = getSchema().getQNamePrefixToNamespaceMap();
-
-          if (map.containsKey(prefixText.getText()))
-          {
-            setErrorMessage(XSDEditorPlugin.getXSDString("_ERROR_LABEL_PREFIX_EXISTS"));
-          }
-          else
-          {
-            beginRecording(XSDEditorPlugin.getXSDString("_UI_PREFIX_CHANGE"), element);
-            
-            Element schemaElement = getSchema().getElement();
-            schemaElement.removeAttribute("xmlns:"+oldPrefixValue);
-            schemaElement.setAttribute("xmlns:" + prefixText.getText(), namespaceText.getText());
-            XSDSchemaHelper.updateElement(getSchema());
-
-            clearErrorMessage();
-            oldPrefixValue = prefixText.getText();
-            endRecording(element);  
-
-//            System.out.println("Map is " + map.values());
-//            System.out.println("Map keys are " + map.keySet());
-          }
-        }
-      }
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceProcessContentsSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceProcessContentsSection.java
deleted file mode 100644
index 6deaca9..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceProcessContentsSection.java
+++ /dev/null
@@ -1,196 +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.xsd.ui.internal.properties.section;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDProcessContents;
-import org.eclipse.xsd.XSDWildcard;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class NamespaceProcessContentsSection extends AbstractSection
-{
-  CCombo namespaceCombo;
-  CCombo processContentsCombo;
-  
-  private String[] namespaceComboValues = {
-      "",               //$NON-NLS-1$
-      "##any",          //$NON-NLS-1$
-      "##other",        //$NON-NLS-1$
-      "##targetNamespace", //$NON-NLS-1$
-      "##local" //$NON-NLS-1$
-  };
-
-  /**
-   * 
-   */
-  public NamespaceProcessContentsSection()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent,TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		Composite composite =	getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-		
-
-		namespaceCombo = getWidgetFactory().createCCombo(composite, SWT.FLAT);
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(0, 0);
-		namespaceCombo.setLayoutData(data);
-//		Iterator list = XSDNamespaceConstraintCategory.VALUES.iterator();
-//		while (list.hasNext())
-//		{
-//		  namespaceCombo.add(((XSDNamespaceConstraintCategory)list.next()).getName());
-//		}
-		namespaceCombo.setItems(namespaceComboValues);
-		namespaceCombo.addSelectionListener(this);
-
-		CLabel namespaceLabel = getWidgetFactory().createCLabel(composite, XSDConstants.NAMESPACE_ATTRIBUTE);
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(namespaceCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(namespaceCombo, 0, SWT.CENTER);
-		namespaceLabel.setLayoutData(data);
-
-		processContentsCombo = getWidgetFactory().createCCombo(composite, SWT.FLAT);
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(namespaceCombo, +ITabbedPropertyConstants.VSPACE);
-		processContentsCombo.setLayoutData(data);
-		Iterator list = XSDProcessContents.VALUES.iterator();
-		processContentsCombo.add(""); //$NON-NLS-1$
-		while (list.hasNext())
-		{
-		  processContentsCombo.add(((XSDProcessContents)list.next()).getName());
-		}
-		processContentsCombo.addSelectionListener(this);
-
-		CLabel processContentsLabel = getWidgetFactory().createCLabel(composite, XSDConstants.PROCESSCONTENTS_ATTRIBUTE);
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(processContentsCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(processContentsCombo, 0, SWT.CENTER);
-		processContentsLabel.setLayoutData(data);
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-//	  namespaceCombo.removeSelectionListener(this);
-//	  processContentsCombo.removeSelectionListener(this);
-	  namespaceCombo.setText(""); //$NON-NLS-1$
-	  processContentsCombo.setText(""); //$NON-NLS-1$
-	  Object input = getInput();
-	  if (input != null)
-	  {
-	    if (input instanceof XSDWildcard)
-	    {
-	      XSDWildcard wildcard = (XSDWildcard)input;
-	      List listNS = wildcard.getNamespaceConstraint();
-	      if (wildcard.isSetLexicalNamespaceConstraint())
-	      {
-	        namespaceCombo.setText(wildcard.getStringLexicalNamespaceConstraint());
-	      }
-	      else
-	      {
-	        namespaceCombo.setText("");
-	      }
-	      if (wildcard.isSetProcessContents())
-	      {
-	        XSDProcessContents pc = wildcard.getProcessContents();
-	        processContentsCombo.setText(pc.getName());
-	      }
-	    }
-	  }
-//	  namespaceCombo.addSelectionListener(this);
-//	  processContentsCombo.addSelectionListener(this);
-	}
-	
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-  public void widgetSelected(SelectionEvent e)
-  {
-    XSDConcreteComponent concreteComponent = (XSDConcreteComponent)getInput();
-    Element element = concreteComponent.getElement();
-    if (concreteComponent instanceof XSDWildcard)
-    {
-      XSDWildcard wildcard =  (XSDWildcard)concreteComponent;
-      if (e.widget == namespaceCombo)
-      {
-        String newValue = namespaceCombo.getText();
-        boolean removeAttribute = false;
-        if (newValue.length() == 0)
-        {
-          removeAttribute = true;
-        }
-
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_NAMESPACE_CHANGE"), element); //$NON-NLS-1$
-        if (removeAttribute)
-        {
-          wildcard.unsetLexicalNamespaceConstraint();
-        }
-        else
-        {
-          wildcard.setStringLexicalNamespaceConstraint(newValue);
-        }
-        endRecording(element);
-      }
-      else if (e.widget == processContentsCombo)
-      {
-        String newValue = processContentsCombo.getText();
-        boolean removeAttribute = false;
-        if (newValue.length() == 0)
-        {
-          removeAttribute = true;
-        }
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_PROCESSCONTENTS_CHANGE"), element); //$NON-NLS-1$
-        if (removeAttribute)
-        {
-          wildcard.unsetProcessContents();
-        }
-        else
-        {
-          wildcard.setProcessContents(XSDProcessContents.get(processContentsCombo.getItem(processContentsCombo.getSelectionIndex())));
-        }
-        endRecording(element);
-      }
-    }
-    refresh();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceProcessContentsSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceProcessContentsSectionDescriptor.java
deleted file mode 100644
index 2198f2e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceProcessContentsSectionDescriptor.java
+++ /dev/null
@@ -1,84 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDWildcard;
-
-public class NamespaceProcessContentsSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public NamespaceProcessContentsSectionDescriptor()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.namespaceprocesscontents";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDWildcard.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new NamespaceProcessContentsSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDWildcard)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceSection.java
deleted file mode 100644
index d53d02b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceSection.java
+++ /dev/null
@@ -1,432 +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.xsd.ui.internal.properties.section;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.Map;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.XSDEditNamespacesAction;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.TargetNamespaceChangeHandler;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDSchemaHelper;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class NamespaceSection extends AbstractSection
-{
-	  IWorkbenchPart part;
-	  Text prefixText;
-	  Text targetNamespaceText;
-    Button editButton;
-    StyledText errorText;
-    Color red;
-	  
-	  /**
-	   * 
-	   */
-	  public NamespaceSection()
-	  {
-	    super();
-	  }
-
-		/**
-		 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-		 */
-		public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-		{
-			super.createControls(parent, factory);
-			Composite composite = getWidgetFactory().createFlatFormComposite(parent);
-      
-			// Create Prefix Label
-			CLabel prefixLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_SCHEMA_PREFIX")); //$NON-NLS-1$
-
-      int leftCoordinate = getStandardLabelWidth(composite, 
-          new String[] {XSDEditorPlugin.getXSDString("_UI_LABEL_TARGET_NAME_SPACE"), XSDEditorPlugin.getXSDString("_UI_LABEL_SCHEMA_PREFIX")});
-      
-			// Create Prefix Text
-			prefixText = getWidgetFactory().createText(composite, "", SWT.NONE); //$NON-NLS-1$
-			FormData prefixTextData = new FormData();
-			// prefixTextData.left = new FormAttachment(0, 115);
-      prefixTextData.left = new FormAttachment(0, leftCoordinate);
-			prefixTextData.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-			prefixText.setLayoutData(prefixTextData);
-			prefixText.addListener(SWT.Modify, this);		    
-		    
-			FormData data = new FormData();
-			data.left = new FormAttachment(0, 0);
-			data.right = new FormAttachment(prefixText, -ITabbedPropertyConstants.HSPACE);
-      data.top = new FormAttachment(prefixText, 0, SWT.CENTER);
-			prefixLabel.setLayoutData(data);
-
-			// Create TargetNamespace Label
-			CLabel targetNamespaceLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_TARGET_NAME_SPACE")); //$NON-NLS-1$
-      
-      // Create TargetNamespace Text
-      targetNamespaceText = getWidgetFactory().createText(composite, "", SWT.NONE); //$NON-NLS-1$
-      
-			FormData tnsLabelData = new FormData();
-			tnsLabelData.left = new FormAttachment(0, 0);
-      tnsLabelData.right = new FormAttachment(targetNamespaceText, -ITabbedPropertyConstants.HSPACE); 
-			tnsLabelData.top = new FormAttachment(targetNamespaceText, 0, SWT.CENTER);
-			targetNamespaceLabel.setLayoutData(tnsLabelData);
-
-      FormData tnsTextData = new FormData();
-      // tnsTextData.left = new FormAttachment(0, 115);
-      tnsTextData.left = new FormAttachment(0, leftCoordinate);
-      tnsTextData.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-      tnsTextData.top = new FormAttachment(prefixText, +ITabbedPropertyConstants.VSPACE);
-      targetNamespaceText.setLayoutData(tnsTextData);
-      targetNamespaceText.addListener(SWT.Modify, this);
-      
-      // Advanced Button
-      editButton = getWidgetFactory().createButton(composite, XSDEditorPlugin.getXSDString("_UI_SECTION_ADVANCED_ATTRIBUTES") + "...", SWT.PUSH);
-
-      FormData buttonFormData = new FormData();
-      buttonFormData.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-      buttonFormData.top = new FormAttachment(targetNamespaceText, +ITabbedPropertyConstants.VSPACE);
-      editButton.setLayoutData(buttonFormData);
-      editButton.addSelectionListener(this);
-
-      // error text
-      errorText = new StyledText(composite, SWT.FLAT);
-      errorText.setEditable(false);
-      errorText.setEnabled(false);
-      errorText.setText("");
-      
-      data = new FormData();
-      data.left = new FormAttachment(targetNamespaceText, 0, SWT.LEFT);
-      data.right = new FormAttachment(100, 0);
-      data.top = new FormAttachment(editButton, 0);
-      errorText.setLayoutData(data);
-    }
-
-		/*
-		 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-		 */
-		public void refresh()
-		{
-      if (doRefresh)
-      {
-        // hack...open bug against properties
-        if (prefixText.isDisposed() || targetNamespaceText.isDisposed())
-        {
-          return;
-        }
-        if (prefixText.isFocusControl() || targetNamespaceText.isFocusControl())
-        {
-          return;
-        }
-
-        setListenerEnabled(false);
-	    	 
-			  Element element = xsdSchema.getElement();
-	    	
-        if (element != null)
-        {
-  		    // Handle prefixText
-  			  TypesHelper helper = new TypesHelper(xsdSchema);
-    		  String aPrefix = helper.getPrefix(element.getAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE), false);
-        
-          if (aPrefix != null && aPrefix.length() > 0)
-  	      {
-  	  	  	prefixText.setText(aPrefix);
-  	  	  }
-  	  	  else
-          {
-  			  	prefixText.setText(""); //$NON-NLS-1$
-  			  }
-  	    	 
-  				// Handle TargetNamespaceText
-  				String tns = element.getAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE);
-  			  if (tns != null && tns.length() > 0)
-          {
-   	        targetNamespaceText.setText(tns);
-   	      }
-  			  else
-          {
-  				  targetNamespaceText.setText(""); //$NON-NLS-1$
-  			  }
-          errorText.setText("");
-        }
-				setListenerEnabled(true);
-			}
-		}
-		
-		public void doHandleEvent(Event event)
-		{
-      errorText.setText("");
-      String prefixValue = prefixText.getText();
-      String tnsValue = targetNamespaceText.getText();
-      if (tnsValue.trim().length() == 0)
-      {
-        if (prefixValue.trim().length() > 0)
-        {
-          errorText.setText(XSDEditorPlugin.getXSDString("_ERROR_TARGET_NAMESPACE_AND_PREFIX"));
-          int length = errorText.getText().length();
-          red = new Color(null, 255, 0, 0);
-          StyleRange style = new StyleRange(0, length, red, targetNamespaceText.getBackground());
-          errorText.setStyleRange(style);
-          return;
-        }
-      }
-
-		  if (event.widget == prefixText)
-		  {
-        updateNamespaceInfo(prefixValue, tnsValue);
-		  }
-		  else if (event.widget == targetNamespaceText)
-      {
-		  	TypesHelper helper = new TypesHelper(xsdSchema);
-			  String aPrefix = helper.getPrefix(xsdSchema.getElement().getAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE), false);
-		  	// updateNamespaceInfo(aPrefix, tnsValue);
-        updateNamespaceInfo(prefixValue, tnsValue);
-		  }
-		}
-		
-		public void doWidgetSelected(SelectionEvent e) {
-			if (e.widget == editButton) {
-				XSDEditNamespacesAction nsAction = new XSDEditNamespacesAction(XSDEditorPlugin.getXSDString("_UI_ACTION_EDIT_NAMESPACES"), xsdSchema.getElement(), null, xsdSchema); //$NON-NLS-1$ 
-				nsAction.run();
-				refresh();				
-			}			
-		}
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-	   */
-	  public boolean shouldUseExtraSpace()
-	  {
-	    return true;
-	  }
-
-	  private void updateNamespaceInfo(String newPrefix, String newTargetNamespace)
-	  {
-	    Element element = xsdSchema.getElement();
-	    DocumentImpl doc = (DocumentImpl)element.getOwnerDocument();
-
-	    String modelTargetNamespace = xsdSchema.getTargetNamespace();
-	    String oldNamespace = xsdSchema.getTargetNamespace();
-	    
-	    TypesHelper helper = new TypesHelper(xsdSchema);
-   		String oldPrefix = helper.getPrefix(element.getAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE), false);
-	    
-	    if (modelTargetNamespace == null)
-	    {
-	      modelTargetNamespace = ""; //$NON-NLS-1$
-	    }
-	        
-	    String targetNamespace = newTargetNamespace.trim(); 
-	    String prefix = newPrefix.trim();
-
-	    if (!validatePrefix(prefix) || !validateTargetNamespace(targetNamespace))
-	    {
-	      return;
-	    }
-	        
-	    if (prefix.length() > 0 && targetNamespace.length() == 0)
-	    {
-	       // can't have blank targetnamespace and yet specify a prefix
-	       return;
-	    }
-
-	    doc.getModel().beginRecording(this, XSDEditorPlugin.getXSDString("_UI_TARGETNAMESPACE_CHANGE")); //$NON-NLS-1$
-	    String xsdForXSDPrefix = xsdSchema.getSchemaForSchemaQNamePrefix();
-	    Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-
-//	 For debugging
-//	        System.out.println("1. SW Map is " + map.values());
-//	        System.out.println("1. SW Map keys are " + map.keySet());
-
-	    // Check if prefix is blank
-	    // if it is, then make sure we have a prefix 
-	    // for schema for schema
-	    if (prefix.length() == 0)
-	    {
-	      // if prefix for schema for schema is blank
-	      // then set it to value specified in preference
-	      // and update ALL nodes with this prefix
-	      if (xsdForXSDPrefix == null || (xsdForXSDPrefix != null && xsdForXSDPrefix.trim().length() == 0))
-	      {
-	        // get preference prefix
-	        xsdForXSDPrefix = XSDEditorPlugin.getPlugin().getXMLSchemaPrefix();
-	        // get a unique prefix by checking what's in the map
-
-	        xsdForXSDPrefix = getUniqueSchemaForSchemaPrefix(xsdForXSDPrefix, map);
-	        element.setAttribute("xmlns:" + xsdForXSDPrefix, XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001); //$NON-NLS-1$
-
-	        updateAllNodes(element, xsdForXSDPrefix);
-	            
-	        // remove the old xmlns attribute for the schema for schema
-	        if (element.getAttribute("xmlns") != null && //$NON-NLS-1$
-	            element.getAttribute("xmlns").equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001)) //$NON-NLS-1$
-	        {
-	          element.removeAttribute("xmlns"); //$NON-NLS-1$
-	        }
-	      }
-	    }
-
-	    if (targetNamespace.length() > 0 ||
-	       (targetNamespace.length() == 0 && prefix.length() == 0))
-	    {
-	      // clean up the old prefix for this schema
-	      if (oldPrefix != null && oldPrefix.length() > 0)
-	      {
-	        element.removeAttribute("xmlns:"+oldPrefix); //$NON-NLS-1$
-//	            element.setAttribute("xmlns:" + prefix, targetNamespace);
-//	            java.util.Map prefixToNameSpaceMap = xsdSchema.getQNamePrefixToNamespaceMap();
-//	            prefixToNameSpaceMap.remove(oldPrefix);
-	      }
-	      else // if no prefix
-	      {
-	        if (element.getAttribute("xmlns") != null) //$NON-NLS-1$
-	        {
-	          if (!element.getAttribute("xmlns").equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001)) //$NON-NLS-1$
-	           {
-	            element.removeAttribute("xmlns"); //$NON-NLS-1$
-	          }
-	        }
-	      }
-	    }
-
-	    if (targetNamespace.length() > 0)
-	    {
-	      if (!modelTargetNamespace.equals(targetNamespace))
-	      {
-	        element.setAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE, targetNamespace);
-	      }
-	      // now set the new xmlns:prefix attribute
-	      if (prefix.length() > 0)
-	      {
-	        element.setAttribute("xmlns:" + prefix, targetNamespace); //$NON-NLS-1$
-	      }
-	      else
-	      {
-	        element.setAttribute("xmlns", targetNamespace); //$NON-NLS-1$
-	      }
-	      // set the targetNamespace attribute
-	    }
-	    else // else targetNamespace is blank
-	    {
-	      if (prefix.length() == 0)
-	      {
-	        element.removeAttribute(XSDConstants.TARGETNAMESPACE_ATTRIBUTE);
-	      }
-	    }
-
-//	    System.out.println("1.5 SW Map is " + map.values());
-//	    System.out.println("1.5 SW Map keys are " + map.keySet());
-	    
-	    // do our own referential integrity
-	    TargetNamespaceChangeHandler targetNamespaceChangeHandler = new TargetNamespaceChangeHandler(xsdSchema, oldNamespace, targetNamespace);
-	    targetNamespaceChangeHandler.resolve();
-	    
-	    XSDSchemaHelper.updateElement(xsdSchema);
-	    
-	    doc.getModel().endRecording(this);
-
-//	 For debugging
-//	        map = xsdSchema.getQNamePrefixToNamespaceMap();
-//	        System.out.println("2. SW Map is " + map.values());
-//	        System.out.println("2. SW Map keys are " + map.keySet());
-	  }
-
-	  private String getUniqueSchemaForSchemaPrefix(String xsdForXSDPrefix, Map map)
-	  {
-	    if (xsdForXSDPrefix == null || (xsdForXSDPrefix != null && xsdForXSDPrefix.trim().length() == 0))
-	     {       
-	      xsdForXSDPrefix = "xsd"; //$NON-NLS-1$
-	    }
-	    // ensure prefix is unique
-	    int prefixExtension = 1;
-	    while (map.containsKey(xsdForXSDPrefix) && prefixExtension < 100)
-	     {
-	      xsdForXSDPrefix = xsdForXSDPrefix + String.valueOf(prefixExtension);
-	      prefixExtension++;
-	    }
-	    return xsdForXSDPrefix;
-	  }
-	  
-	  private void updateAllNodes(Element element, String prefix)
-	  {
-	    element.setPrefix(prefix);
-	    NodeList list = element.getChildNodes();
-	    if (list != null)
-	    {
-	      for (int i=0; i < list.getLength(); i++)
-	      {
-	        Node child = list.item(i);
-	        if (child != null && child instanceof Element)
-	        {
-	          child.setPrefix(prefix);
-	          if (child.hasChildNodes())
-	          {
-	            updateAllNodes((Element)child, prefix);
-	          }
-	        }
-	      }
-	    }   
-	  }
-	  
-	  private boolean validateTargetNamespace(String ns)
-	  {
-	    // will allow blank namespace !!
-	    if (ns.equals(""))
-	     {
-	      return true;
-	    }
-	    
-	    String errorMessage = null;
-      try
-      {
-        URI testURI = new URI(ns);
-      }
-      catch (URISyntaxException e)
-      {
-	      errorMessage = XSDEditorPlugin.getXSDString("_WARN_INVALID_TARGET_NAMESPACE"); //$NON-NLS-1$
-	    }
-	    
-	    if (errorMessage == null || errorMessage.length() == 0)
-	     {
-	      return true;
-	    }
-	    return false;
-	  }
-    
-    public void dispose()
-    {
-      super.dispose();
-      if (red != null)
-      {
-        red.dispose();
-        red = null;
-      }
-    }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceSectionDescriptor.java
deleted file mode 100644
index c156eaa..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/NamespaceSectionDescriptor.java
+++ /dev/null
@@ -1,86 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.impl.XSDSchemaImpl;
-
-public class NamespaceSectionDescriptor extends AbstractSectionDescriptor
-{
-	  NamespaceSection namespaceSection;
-	  /**
-	   * 
-	   */
-	  public NamespaceSectionDescriptor()
-	  {
-	    super();
-	    namespaceSection = new NamespaceSection();
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-	   */
-	  public String getId()
-	  {
-	    return "com.ibm.xsdeditor.section.namespaceSection";
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-	   */
-	  public List getInputTypes()
-	  {
-	    List list = new ArrayList();
-	    list.add(XSDConcreteComponent.class);
-	    return list;
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-	   */
-	  public ISection getSectionClass()
-	  {
-	    return namespaceSection;
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-	   */
-	  public String getTargetTab()
-	  {
-	    return "com.ibm.xmlwebservices.general";
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	   */
-	  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-	  {
-	    Object object = null;
-	    if (selection instanceof StructuredSelection)
-	    {
-	      StructuredSelection structuredSelection = (StructuredSelection)selection;
-	      object = structuredSelection.getFirstElement();
-	      if (object instanceof XSDSchemaImpl) {
-	      	return true;
-	      }
-	    }
-	    
-	    return false;
-	  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/OtherAttributesSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/OtherAttributesSection.java
deleted file mode 100644
index 7309ced..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/OtherAttributesSection.java
+++ /dev/null
@@ -1,125 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.views.properties.PropertySheetPage;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.properties.XSDPropertySourceProvider;
-import org.eclipse.xsd.XSDElementDeclaration;
-
-public class OtherAttributesSection extends AbstractSection
-{
-  PropertySheetPage propertySheetPage;
-  IWorkbenchPart part;
-  
-  /**
-   * 
-   */
-  public OtherAttributesSection()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite = getWidgetFactory().createFlatFormComposite(parent);
-		FormData data = new FormData();
-		data.left = new FormAttachment(0, 0);
-    data.right = new FormAttachment(100, 0);
-		data.top = new FormAttachment(0, 0);
-		data.bottom = new FormAttachment(100, 0);
-    
-//    composite = new Composite(parent, SWT.FLAT);
-//    GridLayout gl = new GridLayout(1, true);
-//    composite.setLayout(gl);
-//    GridData data = new GridData();
-//    data.grabExcessHorizontalSpace = true;
-//    data.grabExcessVerticalSpace = true; 
-//    composite.setLayoutData(data);
-    
-    propertySheetPage = new PropertySheetPage();
-		propertySheetPage.createControl(composite);
-    propertySheetPage.setPropertySourceProvider(new XSDPropertySourceProvider());
-    propertySheetPage.getControl().setLayoutData(data);
-	}
-	
-	public void selectionChanged(IWorkbenchPart part, ISelection selection)
-	{
-	  this.part = part;
-	  this.selection = selection;
-	  if (propertySheetPage == null)
-	  {
-	    propertySheetPage = new PropertySheetPage();
-	  }
-	  propertySheetPage.selectionChanged(part, selection);
-	}
-  
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-    if (doRefresh)
-    {
-      if (isReadOnly)
-      {
-        composite.setEnabled(false);
-      }
-      else
-      {
-        composite.setEnabled(true);
-      }
-
-	    Object input = getInput();
-      if (!propertySheetPage.getControl().isDisposed())
-  	    propertySheetPage.selectionChanged(part, selection);
-    }
-	}
-
-  public void dispose()
-  {
-//    propertySheetPage.dispose();
-//    propertySheetPage = null;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-   */
-  public boolean shouldUseExtraSpace()
-  {
-    return true;
-  }
-  
-  public void setInput(IWorkbenchPart part, ISelection selection)
-  {
-    super.setInput(part, selection);
-    if (input instanceof XSDElementDeclaration)
-    {
-      XSDElementDeclaration elementDeclaration = (XSDElementDeclaration)input;
-      if (elementDeclaration.isElementDeclarationReference())
-      {
-        input = elementDeclaration.getResolvedElementDeclaration();
-        
-        isReadOnly = (!(elementDeclaration.getResolvedElementDeclaration().getRootContainer() == xsdSchema));
-      }
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/OtherAttributesSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/OtherAttributesSectionDescriptor.java
deleted file mode 100644
index 714d6c2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/OtherAttributesSectionDescriptor.java
+++ /dev/null
@@ -1,145 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDAnnotation;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDEnumerationFacet;
-import org.eclipse.xsd.XSDIdentityConstraintCategory;
-import org.eclipse.xsd.XSDIdentityConstraintDefinition;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDPatternFacet;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-
-public class OtherAttributesSectionDescriptor extends AbstractSectionDescriptor
-{
-  OtherAttributesSection otherAttributesSection;
-  /**
-   * 
-   */
-  public OtherAttributesSectionDescriptor()
-  {
-    super();
-    otherAttributesSection = new OtherAttributesSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.otherattributes";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDConcreteComponent.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return otherAttributesSection;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.other";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDConcreteComponent)
-      {
-      	if (object instanceof XSDAttributeGroupDefinition ||
-      	    object instanceof XSDAttributeUse ||
-      	    object instanceof XSDAttributeDeclaration ||
-      	    object instanceof XSDEnumerationFacet ||
-      	    object instanceof XSDPatternFacet ||
-      	    object instanceof XSDSimpleTypeDefinition ||
-      	    object instanceof XSDAnnotation ||
-            object instanceof XSDWildcard ||
-            object instanceof XSDSchemaDirective)
-      	{
-     	    return false;
-      	}
-        else if (object instanceof XSDModelGroup)
-        {
-          return false;
-        }
-        else if (object instanceof XSDElementDeclaration)
-        {
-//        Remove this to fix bug 3870 Element references should have the same properties as elements 
-//          if (((XSDElementDeclaration)object).isElementDeclarationReference())
-//          {
-//            return false;
-//          }
-          return true;
-        }
-        else if (object instanceof XSDModelGroupDefinition)
-        {
-          if (((XSDModelGroupDefinition)object).isModelGroupDefinitionReference())
-          {
-            return false;
-          }
-          return false;
-        }
-        else if (object instanceof XSDIdentityConstraintDefinition)
-        {
-          XSDIdentityConstraintDefinition constraint = (XSDIdentityConstraintDefinition)object;
-          XSDIdentityConstraintCategory category = constraint.getIdentityConstraintCategory();
-          if (category.getValue() == XSDIdentityConstraintCategory.KEYREF)
-          {
-            return true;
-          }
-          else
-          {
-            return false;
-          }
-        }
-        return true;
-      }
-    }
-    return false;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/PatternSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/PatternSection.java
deleted file mode 100644
index b0fc34f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/PatternSection.java
+++ /dev/null
@@ -1,165 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.jface.window.Window;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.wizards.RegexWizard;
-import org.eclipse.xsd.XSDPatternFacet;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class PatternSection extends AbstractSection
-{
-  /**
-   * 
-   */
-  public PatternSection()
-  {
-    super();
-  }
-  
-  Text patternText;
-  Button button;
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-
-		super.createControls(parent, factory);
-		Composite composite = getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-		patternText = getWidgetFactory().createText(composite, ""); //$NON-NLS-1$
-		CLabel nameLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_VALUE") + ":"); //$NON-NLS-1$
-    button = getWidgetFactory().createButton(composite, "", SWT.PUSH); //$NON-NLS-1$
-    button.setImage(XSDEditorPlugin.getXSDImage("icons/browsebutton.gif")); //$NON-NLS-1$
-    
-    patternText.addListener(SWT.Modify, this);
-
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(patternText, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(button, 0, SWT.CENTER);
-		nameLabel.setLayoutData(data);
-
-    button.addSelectionListener(this);
-		data = new FormData();
-		data.left = new FormAttachment(100, -rightMarginSpace + 2);
-		data.right = new FormAttachment(100,0);
-		data.top = new FormAttachment(patternText, 0, SWT.CENTER);
-		button.setLayoutData(data);
-
-    data = new FormData();
-    data.left = new FormAttachment(0, 100);
-    data.right = new FormAttachment(button, 0);
-    patternText.setLayoutData(data);
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-	  setListenerEnabled(false);
-	  Object input = getInput();
-	  patternText.setText(""); //$NON-NLS-1$
-	  if (input != null)
-	  {
-	    Element element = null;
-	    if (input instanceof XSDPatternFacet)
-	    {
-	      element = ((XSDPatternFacet)input).getElement();
-	    }
-	    if (element != null)
-	    {
-        String result = element.getAttribute(XSDConstants.VALUE_ATTRIBUTE);
-        if (result != null)
-        {
-          patternText.setText(result);
-        }
-	    }
-	  }
-	  setListenerEnabled(true);
-	}
-
-  /**
-   * @see org.eclipse.swt.events.SelectionListener#widgetSelected(SelectionEvent)
-   */
-  public void widgetSelected(SelectionEvent e)
-  {
-    if (e.widget == button)
-    {
-	    Shell shell = Display.getCurrent().getActiveShell();
-	    Element element = ((XSDPatternFacet)getInput()).getElement();
-
-      String initialValue = element.getAttribute(XSDConstants.VALUE_ATTRIBUTE);
-      if (initialValue == null)
-      {
-        initialValue = ""; //$NON-NLS-1$
-      }
-      RegexWizard wizard = new RegexWizard(initialValue);
-
-      WizardDialog wizardDialog = new WizardDialog(shell, wizard);
-      wizardDialog.setBlockOnOpen(true);
-      wizardDialog.create();
-      
-      int result = wizardDialog.open();
-
-      if (result == Window.OK)
-      {
-        String newPattern = wizard.getPattern();
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_PATTERN_VALUE_CHANGE"), element); //$NON-NLS-1$
-        element.setAttribute(XSDConstants.VALUE_ATTRIBUTE, newPattern);
-        ((XSDPatternFacet)getInput()).setLexicalValue(newPattern);
-        endRecording(element);
-      }
-
-      refresh();
-    }
-  }
-  
-  public void doHandleEvent(Event event)
-  {
-	  if (event.widget == patternText)
-	  {
-		  XSDPatternFacet pattern = (XSDPatternFacet)getInput();
-		  
-      String newValue = patternText.getText();
-      if (newValue.length() > 0)
-      {
-        pattern.setLexicalValue(newValue);
-      }
-	  }
-
-  }
-
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/PatternSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/PatternSectionDescriptor.java
deleted file mode 100644
index e7432e8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/PatternSectionDescriptor.java
+++ /dev/null
@@ -1,85 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDPatternFacet;
-
-public class PatternSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public PatternSectionDescriptor()
-  {
-    super();
-  }
-  
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.pattern";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDPatternFacet.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new PatternSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDPatternFacet)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ReferenceSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ReferenceSection.java
deleted file mode 100644
index 472bd0b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ReferenceSection.java
+++ /dev/null
@@ -1,290 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDParticleContent;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class ReferenceSection extends AbstractSection
-{
-  protected CCombo componentNameCombo; 
-  Button button;
-  IEditorPart editorPart;
-  CLabel refLabel;
-  
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite = getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-    componentNameCombo = getWidgetFactory().createCCombo(composite, SWT.FLAT);
-    componentNameCombo.addSelectionListener(this);
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(0, 1);
-		componentNameCombo.setLayoutData(data);
-
-		refLabel = getWidgetFactory().createCLabel(composite, XSDConstants.REF_ATTRIBUTE + ":");  //$NON-NLS-1$
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(componentNameCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(componentNameCombo, 0, SWT.CENTER);
-		refLabel.setLayoutData(data);
-	}
-
-  public void setInput(IWorkbenchPart part, ISelection selection)
-  {
-    super.setInput(part, selection);
-    
-    Object obj = getInput();
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    List items = new ArrayList();
-    if (obj instanceof XSDElementDeclaration)
-    {
-      XSDElementDeclaration elementDeclaration = (XSDElementDeclaration)obj;
-      if (elementDeclaration.isElementDeclarationReference())
-      {
-        items = helper.getGlobalElements();
-//            minimumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MINIMUM"));
-//            WorkbenchHelp.setHelp(minimumField, XSDEditorContextIds.XSDE_ELEMENT_REF_MINIMUM);
-//            maximumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MAXIMUM"));
-//            WorkbenchHelp.setHelp(maximumField, XSDEditorContextIds.XSDE_ELEMENT_REF_MAXIMUM);
-      }
-    }
-    else if (obj instanceof XSDAttributeDeclaration)
-    {
-      items = helper.getGlobalAttributes();
-    }
-    else if (obj instanceof XSDModelGroupDefinition)
-    {
-      XSDModelGroupDefinition group = (XSDModelGroupDefinition)obj;
-      if (group.isModelGroupDefinitionReference())
-      {
-        items = helper.getModelGroups();
-          // Need tooltip for Group Ref
-//            minimumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MINIMUM"));
-//            WorkbenchHelp.setHelp(minimumField, XSDEditorContextIds.XSDE_GROUP_REF_MINIMUM);
-//            maximumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MAXIMUM"));
-//            WorkbenchHelp.setHelp(maximumField, XSDEditorContextIds.XSDE_GROUP_REF_MAXIMUM);
-      }
-    }
-    else if (obj instanceof XSDNamedComponent)
-    {
-      XSDNamedComponent namedComponent = (XSDNamedComponent)obj;
-      Element element = namedComponent.getElement();
-      if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, true))
-      {
-        items = helper.getGlobalAttributeGroups();
-//      WorkbenchHelp.setHelp(client, XSDEditorContextIds.XSDE_ATTRIBUTE_GROUP_REF_DESIGN_VIEW);
-//      WorkbenchHelp.setHelp(refCombo, XSDEditorContextIds.XSDE_ATTRIBUTE_GROUP_REF_NAME);
-      }
-      else if (XSDDOMHelper.inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, true))
-      {
-        items = helper.getGlobalElements();
-//          minimumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MINIMUM"));
-//          WorkbenchHelp.setHelp(minimumField, XSDEditorContextIds.XSDE_ELEMENT_REF_MINIMUM);
-//          maximumField.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_ELEMENT_MAXIMUM"));
-//          WorkbenchHelp.setHelp(maximumField, XSDEditorContextIds.XSDE_ELEMENT_REF_MAXIMUM);
-      }
-    }
-    else if (obj instanceof XSDAttributeUse)
-    {
-      XSDAttributeUse attributeUse = (XSDAttributeUse)obj;
-      Element element = attributeUse.getElement();
-      if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true))
-      {
-        items = helper.getGlobalAttributes();
-//      WorkbenchHelp.setHelp(client, XSDEditorContextIds.XSDE_ATTRIBUTE_REF_DESIGN_VIEW);
-//      WorkbenchHelp.setHelp(refCombo, XSDEditorContextIds.XSDE_ATTRIBUTE_REF_NAME);      
-      }
-    }      
-    items.add(0, "");
-    int size = items.size();
-    String [] st = new String[size];
-    System.arraycopy(items.toArray(), 0, st, 0, size);
-    componentNameCombo.setItems(st);
-      
-    st = null;
-  }
-	
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-    if (doRefresh)
-    {
-  	  setListenerEnabled(false);  
-  //	  componentNameCombo.removeListener(SWT.Modify, this);
-  	  Object input = getInput();
-      if (isReadOnly)
-      {
-        composite.setEnabled(false);
-      }
-      else
-      {
-        composite.setEnabled(true);
-      }
-
-  	  if (input instanceof XSDNamedComponent)
-  	  {
-        XSDNamedComponent namedComponent = (XSDNamedComponent)getInput();
-        Element element = namedComponent.getElement();
-        if (element != null)
-        {
-          String attrValue = element.getAttribute(XSDConstants.REF_ATTRIBUTE);
-          if (attrValue == null)
-          {
-            attrValue = "";
-          }
-          componentNameCombo.setText(attrValue);
-        }
-  	  }
-      else if (input instanceof XSDParticleContent)
-      {
-        XSDParticleContent particle = (XSDParticleContent)input;
-        Element element = particle.getElement();
-        String attrValue = element.getAttribute(XSDConstants.REF_ATTRIBUTE);
-        if (attrValue == null)
-        {
-          attrValue = "";
-        }
-        componentNameCombo.setText(attrValue);
-      }
-  	  else if (input instanceof XSDAttributeUse)
-  	  {
-  	    XSDAttributeUse attributeUse = (XSDAttributeUse)getInput();
-  	    Element element = attributeUse.getElement();
-        String attrValue = element.getAttribute(XSDConstants.REF_ATTRIBUTE);
-        if (attrValue == null)
-        {
-          attrValue = "";
-        }
-        componentNameCombo.setText(attrValue);
-  	  }
-  	  
-      setListenerEnabled(true);
-  //    componentNameCombo.addListener(SWT.Modify, this);
-    }
-	}
-
-	
-  public void widgetSelected(SelectionEvent e)
-  {
-	  Object input = getInput();
-    if (e.widget == componentNameCombo)
-    {
-      String newValue = componentNameCombo.getText();
-		  if (input instanceof XSDNamedComponent)
-		  {
-	      XSDNamedComponent namedComponent = (XSDNamedComponent)getInput();
-	      Element element = namedComponent.getElement();
-	      
-	      if (namedComponent instanceof XSDElementDeclaration)
-	      {
-	        beginRecording(XSDEditorPlugin.getXSDString("_UI_GROUP_REF_CHANGE"), element); //$NON-NLS-1$
-	        element.setAttribute(XSDConstants.REF_ATTRIBUTE, newValue);
-	        endRecording(element);
-	      }
-			  else if (namedComponent instanceof XSDAttributeDeclaration)
-			  {
-			    XSDAttributeDeclaration attr = (XSDAttributeDeclaration)namedComponent;
-	        beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTEGROUP_REF_CHANGE"), element); //$NON-NLS-1$
-	        element.setAttribute(XSDConstants.REF_ATTRIBUTE, newValue);
-	        endRecording(element);
-
-			  }
-	  	  else if (namedComponent instanceof XSDAttributeGroupDefinition)
-	  	  {
-	        beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTEGROUP_REF_CHANGE"), element); //$NON-NLS-1$
-	        // element.setAttribute(XSDConstants.REF_ATTRIBUTE, (String) value);
-	        XSDAttributeGroupDefinition attrGroup = (XSDAttributeGroupDefinition)namedComponent;
-	        Iterator iter = xsdSchema.getAttributeGroupDefinitions().iterator();
-	        while (iter.hasNext())
-	        {
-	          XSDAttributeGroupDefinition def = (XSDAttributeGroupDefinition)iter.next();
-	          if (def.getQName(xsdSchema).equals(componentNameCombo.getText()))
-	          {
-	            attrGroup.setResolvedAttributeGroupDefinition(def);
-	            attrGroup.setName(componentNameCombo.getText());
-	            break;
-	          }
-	        }  
-	        endRecording(element);
-	  	  }
-        else if (namedComponent instanceof XSDModelGroupDefinition)
-        {
-          beginRecording(XSDEditorPlugin.getXSDString("_UI_GROUP_REF_CHANGE"), element); //$NON-NLS-1$
-          XSDModelGroupDefinition modelGroup = (XSDModelGroupDefinition)namedComponent;
-          element.setAttribute(XSDConstants.REF_ATTRIBUTE, newValue);
-          endRecording(element);
-        }
-		  }
-		  else if (input instanceof XSDAttributeUse)
-		  {
-		    XSDAttributeUse attributeUse = (XSDAttributeUse)getInput();
-		    Element element = attributeUse.getElement();
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ATTRIBUTE_USE_CHANGE"), element); //$NON-NLS-1$
-        Iterator iter = xsdSchema.getAttributeDeclarations().iterator();
-        while (iter.hasNext())
-        {
-          XSDAttributeDeclaration attr = (XSDAttributeDeclaration)iter.next();
-          if (attr.getQName(xsdSchema).equals(newValue))
-          {
-            attributeUse.setAttributeDeclaration(attr);
-            element.setAttribute(XSDConstants.REF_ATTRIBUTE, newValue);
-            break;
-          }
-        }  
-
-        endRecording(element);
-		  }
-    }
-  }
-  
-  public void setEditorPart(IEditorPart editorPart)
-  {
-    this.editorPart = editorPart;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ReferenceSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ReferenceSectionDescriptor.java
deleted file mode 100644
index 26885b6..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ReferenceSectionDescriptor.java
+++ /dev/null
@@ -1,174 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.wst.common.ui.properties.ISectionDescriptor;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class ReferenceSectionDescriptor extends AbstractSectionDescriptor implements ISectionDescriptor
-{
-  ReferenceSection referenceSection;
-  
-  /**
-   * 
-   */
-  public ReferenceSectionDescriptor()
-  {
-    super();
-    this.referenceSection = new ReferenceSection();
-  }
-
-
-  /**
-   * 
-   */
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "org.eclipse.wst.wsdleditor.section.reference";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDNamedComponent.class);
-    list.add(XSDElementDeclaration.class);
-    list.add(XSDModelGroupDefinition.class);
-    list.add(XSDAttributeDeclaration.class);
-    list.add(XSDAttributeUse.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return referenceSection;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    if (part != null)
-    {
-      referenceSection.setEditorPart(part.getSite()
-            .getWorkbenchWindow()
-              .getActivePage()
-                .getActiveEditor());
-    }
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDNamedComponent)
-      {
-        XSDNamedComponent namedComponent = (XSDNamedComponent)object;
-        Element element = namedComponent.getElement();
-        if (element == null)
-        {
-          return false;
-        }
-        if (inputEquals(element, element.getLocalName(), true))
-        {
-          return true;
-        }
-        else
-        {
-          return false;
-        }
-      }
-      else if (object instanceof XSDElementDeclaration)
-      {
-        XSDElementDeclaration elementDeclaration = (XSDElementDeclaration)object;
-        if (elementDeclaration.isElementDeclarationReference())
-        {
-          return true;
-        }
-        else
-        {
-          return false;
-        }
-      }
-      else if (object instanceof XSDAttributeDeclaration)
-      {
-        XSDAttributeDeclaration attr = (XSDAttributeDeclaration)object;
-        if (attr.isAttributeDeclarationReference())
-        {
-          return true;
-        }
-        else
-        {
-          return false;
-        }
-      }
-      else if (object instanceof XSDModelGroupDefinition)
-      {
-        XSDModelGroupDefinition group = (XSDModelGroupDefinition)object;
-        if (group.isModelGroupDefinitionReference())
-        {
-          return true;
-        }
-        else
-        {
-          return false;
-        }
-      }
-      else if (object instanceof XSDAttributeUse)
-      {
-        XSDAttributeUse attributeUse = (XSDAttributeUse)object;
-        XSDAttributeDeclaration attribute = attributeUse.getAttributeDeclaration();
-        Element element = attributeUse.getElement();
-        if (inputEquals(element, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true))
-        {
-          return true;
-        }
-        else
-        {
-          return false;
-        }
-      }
-      
-    }
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SchemaLocationDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SchemaLocationDescriptor.java
deleted file mode 100644
index 59b47f0..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SchemaLocationDescriptor.java
+++ /dev/null
@@ -1,88 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDRedefine;
-
-public class SchemaLocationDescriptor extends AbstractSectionDescriptor
-{
-	  SchemaLocationSection schemaLocationSection;
-	  /**
-	   * 
-	   */
-	  public SchemaLocationDescriptor()
-	  {
-	    super();
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-	   */
-	  public String getId()
-	  {
-	    return "com.ibm.xsdeditor.section.schemaLocationSection";
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-	   */
-	  public List getInputTypes()
-	  {
-	    List list = new ArrayList();
-	    list.add(XSDConcreteComponent.class);
-	    return list;
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-	   */
-	  public ISection getSectionClass()
-	  {
-	    return schemaLocationSection;
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-	   */
-	  public String getTargetTab()
-	  {
-	    return "com.ibm.xmlwebservices.general";
-	  }
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	   */
-	  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-	  {
-	    Object object = null;	    
-	    
-	    if (selection instanceof StructuredSelection)
-	    {
-	      StructuredSelection structuredSelection = (StructuredSelection)selection;
-	      object = structuredSelection.getFirstElement();
-	      if (object instanceof XSDInclude || object instanceof XSDRedefine) {
-		    schemaLocationSection = new SchemaLocationSection();
-	      	return true;
-	      }
-	    }
-	    
-	    return false;
-	  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SchemaLocationSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SchemaLocationSection.java
deleted file mode 100644
index c4a568d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SchemaLocationSection.java
+++ /dev/null
@@ -1,207 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.common.ui.viewers.ResourceFilter;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.wizards.XSDSelectIncludeFileWizard;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDRedefine;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.impl.XSDIncludeImpl;
-import org.eclipse.xsd.impl.XSDRedefineImpl;
-import org.w3c.dom.Element;
-
-public class SchemaLocationSection extends CommonDirectivesSection
-{
-	  IWorkbenchPart part;
-	  
-	  /**
-	   * 
-	   */
-	  public SchemaLocationSection()
-	  {
-	    super();
-	  }
-
-		/**
-		 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-		 */
-		public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-		{
-			super.createControls(parent, factory);
-			Composite composite = getWidgetFactory().createFlatFormComposite(parent);
-
-      int leftCoordinate = getStandardLabelWidth(composite, 
-          new String[] {XSDEditorPlugin.getXSDString("_UI_LABEL_SCHEMA_LOCATION")});
-      
-			// Create Schema Location Label
-			CLabel schemaLocationLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_SCHEMA_LOCATION")); //$NON-NLS-1$
-			
-      // Create Schema Location Text
-      schemaLocationText = getWidgetFactory().createText(composite, "", SWT.NONE); //$NON-NLS-1$
-      
-			// Create Wizard Button
-			wizardButton = getWidgetFactory().createButton(composite, "", SWT.NONE); //$NON-NLS-1$
-      
-      wizardButton.setImage(XSDEditorPlugin.getXSDImage("icons/browsebutton.gif")); //$NON-NLS-1$
-			FormData buttonFormData = new FormData();
-			buttonFormData.left = new FormAttachment(100, -rightMarginSpace + 2);
-			buttonFormData.right = new FormAttachment(100,0);
-			buttonFormData.top = new FormAttachment(schemaLocationText, 0, SWT.CENTER);
-			wizardButton.setLayoutData(buttonFormData);
-			wizardButton.addSelectionListener(this);
-			
-			schemaLocationText.setEditable(true);
-			FormData schemaLocationData = new FormData();
-      schemaLocationData.left = new FormAttachment(0, leftCoordinate);
-      schemaLocationData.right = new FormAttachment(wizardButton, 0);
-			schemaLocationText.setLayoutData(schemaLocationData);
-			schemaLocationText.addListener(SWT.Modify, this);		    
-
-			FormData data = new FormData();
-			data.left = new FormAttachment(0, 0);
-			data.right = new FormAttachment(schemaLocationText, -ITabbedPropertyConstants.HSPACE);
-			data.top = new FormAttachment(schemaLocationText, 0, SWT.CENTER);
-			schemaLocationLabel.setLayoutData(data);
-			
-      // error text
-      errorText = new StyledText(composite, SWT.FLAT);
-      errorText.setEditable(false);
-      errorText.setEnabled(false);
-      errorText.setText("");
-      
-      data = new FormData();
-      data.left = new FormAttachment(schemaLocationText, 0, SWT.LEFT);
-      data.right = new FormAttachment(100, 0);
-      data.top = new FormAttachment(schemaLocationText, 0);
-      errorText.setLayoutData(data);
-		}
-		
-		public void widgetSelected(SelectionEvent event)
-    {
-			if (event.widget == wizardButton)
-      {
-				Shell shell = Display.getCurrent().getActiveShell();
-			    
-				IFile currentIFile = ((IFileEditorInput)getActiveEditor().getEditorInput()).getFile();
-				ViewerFilter filter = new ResourceFilter(new String[] { ".xsd" },  //$NON-NLS-1$
-			            new IFile[] { currentIFile },
-			            null);
-			      
-			  XSDSelectIncludeFileWizard fileSelectWizard = 
-			      new XSDSelectIncludeFileWizard(xsdSchema, true,
-			          XSDEditorPlugin.getXSDString("_UI_FILEDIALOG_SELECT_XML_SCHEMA"), //$NON-NLS-1$
-			          XSDEditorPlugin.getXSDString("_UI_FILEDIALOG_SELECT_XML_DESC"), //$NON-NLS-1$
-			          filter,
-			          (IStructuredSelection) selection);
-
-			  WizardDialog wizardDialog = new WizardDialog(shell, fileSelectWizard);
-			  wizardDialog.create();
-			  wizardDialog.setBlockOnOpen(true);
-			  int result = wizardDialog.open();
-				  
-	      String value = schemaLocationText.getText();
-	      if (result == Window.OK)
-	      {
-          errorText.setText("");
-	        IFile selectedIFile = fileSelectWizard.getResultFile();
-	        String schemaFileString = value;
-	        if (selectedIFile != null) 
-	        {
-	          schemaFileString = URIHelper.getRelativeURI(selectedIFile.getLocation(), currentIFile.getLocation());
-	        }
-	        else
-	        {
-	          schemaFileString = fileSelectWizard.getURL();
-	        }
-
-          handleSchemaLocationChange(schemaFileString, fileSelectWizard.getNamespace(), null);
-	        refresh();
-			  } 
-			}
-		}
-
-		/*
-		 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-		 */
-		public void refresh()
-		{
-			if (doRefresh)
-			{
-				setListenerEnabled(false);
-
-				Element element = null;
-				if (input instanceof XSDInclude)
-        { 
-					element = ((XSDIncludeImpl) input).getElement();
-				}
-				else if (input instanceof XSDRedefine)
-        {
-					element = ((XSDRedefineImpl) input).getElement();
-				}
-				
-				if (element != null)
-        {
-					String location = ""; //$NON-NLS-1$
-					location = element.getAttribute("schemaLocation"); //$NON-NLS-1$
-          if (location == null)
-          {
-            location = "";
-          }
-					schemaLocationText.setText(location);
-				}
-
-        setListenerEnabled(true);
-			}
-		}
-
-	  /* (non-Javadoc)
-	   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-	   */
-	  public boolean shouldUseExtraSpace()
-	  {
-	    return true;
-	  }
-    
-    protected void handleSchemaLocationChange(String schemaFileString, String namespace, XSDSchema externalSchema)
-    {
-      if (input instanceof XSDInclude)
-      {
-        Element element = ((XSDIncludeImpl) input).getElement();
-        element.setAttribute("schemaLocation", schemaFileString); //$NON-NLS-1$
-      }
-      else if (input instanceof XSDRedefine)
-      {
-        Element element = ((XSDRedefineImpl) input).getElement();
-        element.setAttribute("schemaLocation", schemaFileString); //$NON-NLS-1$
-      }
-    }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleContentBaseTypeOptionsDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleContentBaseTypeOptionsDialog.java
deleted file mode 100644
index 2aa1a50..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleContentBaseTypeOptionsDialog.java
+++ /dev/null
@@ -1,158 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class SimpleContentBaseTypeOptionsDialog extends TypesDialog
-{
-  /**
-   * @param parentShell
-   * @param element
-   * @param id
-   * @param xsdSchema
-   */
-  public SimpleContentBaseTypeOptionsDialog(Shell parentShell, Element element, Object id, XSDSchema xsdSchema)
-  {
-    super(parentShell, element, id, xsdSchema);
-    showAnonymous = false;
-  }
-  
-	protected void ok()
-	{
-		TableItem[] items = table.getItems();
-		int selection = table.getSelectionIndex();
-		if (items != null && items.length > 0 && selection >= 0)
-		 {
-		  typeObject = items[selection].getData();
-		}
-	}
-
-  
-  public void handleSetInput()
-  {
-    XSDDOMHelper domHelper = new XSDDOMHelper();
-    typeSection.getSimpleType().setSelection(false);
-    typeSection.getUserSimpleType().setSelection(false);
-    typeSection.getUserComplexType().setSelection(false);
-    showAnonymous = false;
-    if (element != null)
-    {
-      String derivedBy = domHelper.getDerivedByName(element);
-      String baseType = domHelper.getBaseType(element);
-      boolean derivedByRestriction = true;
-      
-      if (XSDDOMHelper.inputEquals(element, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-      {
-        typeSection.getSimpleType().setEnabled(false);
-        typeSection.getUserSimpleType().setEnabled(false);
-        typeSection.getUserComplexType().setSelection(true);
-
-        previousType = 3;
-      }
-      else if (XSDDOMHelper.inputEquals(element, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-      {
-        typeSection.getSimpleType().setEnabled(false);
-        typeSection.getUserSimpleType().setEnabled(false);
-
-        if (derivedBy.equals("restriction"))
-        {
-          typeSection.getSimpleType().setEnabled(false);
-          typeSection.getUserSimpleType().setEnabled(false);
-          typeSection.getUserComplexType().setEnabled(true);
-        }
-        else if (derivedBy.equals("extension"))
-        {
-          derivedByRestriction = false;
-          typeSection.getSimpleType().setEnabled(true);
-          typeSection.getUserSimpleType().setEnabled(true);
-          typeSection.getUserComplexType().setEnabled(true);
-        }
-      }
-        
-      if (derivedBy != null)
-      {
-          if (baseType != null && !baseType.equals(""))
-          {
-            Element parent = (Element)element.getParentNode();
-            XSDConcreteComponent component = null;
-            if (parent != null)
-            {
-              component = xsdSchema.getCorrespondingComponent(parent);
-            }
-            XSDTypeDefinition baseTypeDefinition = null;
-            if (component instanceof XSDComplexTypeDefinition)
-            {
-              XSDComplexTypeDefinition complexType = (XSDComplexTypeDefinition)component;
-              baseTypeDefinition = complexType.getBaseTypeDefinition();
-            }               
-
-            if (typeSection.getBuiltInTypeNamesList(xsdSchema).contains(baseType) && !derivedByRestriction)
-            {
-              typeSection.getSimpleType().setSelection(true);
-              populateBuiltInType();
-              int i = typeSection.getBuiltInTypeNamesList(xsdSchema).indexOf(baseType);
-              table.setSelection(i);
-              previousType = 1;
-            }
-            else if (baseTypeDefinition instanceof XSDSimpleTypeDefinition && !derivedByRestriction)
-            {
-              typeSection.getUserSimpleType().setSelection(true);
-              populateUserSimpleType();
-              int i = typeSection.getUserSimpleTypeNamesList(xsdSchema).indexOf(baseType);
-              if (showAnonymous)
-               {
-                table.setSelection(i + 1);
-              }
-              else
-               {
-                table.setSelection(i);
-              }
-              previousType = 2;
-            }
-            else if (baseTypeDefinition instanceof XSDComplexTypeDefinition)
-            {
-              typeSection.getUserComplexType().setSelection(true);
-              populateUserComplexType();
-              int i = typeSection.getUserComplexTypeNamesList(xsdSchema).indexOf(baseType);
-              if (showAnonymous)
-               {
-                table.setSelection(i + 1);
-              }
-              else
-               {
-                table.setSelection(i);
-              }
-              previousType = 3;
-            }
-          }
-          else
-          {
-            typeSection.getUserComplexType().setSelection(true);
-            populateUserComplexType();
-            table.setSelection(0);
-          }
-        }
-
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleContentUnionMemberTypesDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleContentUnionMemberTypesDialog.java
deleted file mode 100644
index 7434a93..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleContentUnionMemberTypesDialog.java
+++ /dev/null
@@ -1,314 +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.xsd.ui.internal.properties.section;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.wst.xsd.ui.internal.widgets.TypeSection;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-public class SimpleContentUnionMemberTypesDialog extends Dialog implements SelectionListener
-{
-  XSDSimpleTypeDefinition simpleType;
-  /**
-   * @param parentShell
-   */
-  public SimpleContentUnionMemberTypesDialog(Shell parentShell, XSDSimpleTypeDefinition simpleType)
-  {
-    super(parentShell);
-    this.simpleType = simpleType;
-  }
-  
-  Table table;
-  TypeSection typeSection;
-  Button addButton, removeButton;
-  org.eclipse.swt.widgets.List memberTypesList;
-  
-  private String result;
-
-  protected void configureShell(Shell shell)
-  {
-    super.configureShell(shell);
-  }
-
-  protected void buttonPressed(int buttonId)
-  {
-    if (buttonId == Dialog.OK)
-    {
-      StringBuffer sb = new StringBuffer();
-      int length = memberTypesList.getItemCount();
-      for (int i=0 ; i < length; i++)
-      {
-        sb.append(memberTypesList.getItem(i));
-        if (i < length - 1)
-        {
-          sb.append(" ");
-        }
-      }
-      result = sb.toString();
-    }
-    super.buttonPressed(buttonId);
-  }
-
-  public String getResult() { return result; }
-
-  //
-  // Create the controls
-  //
-  public Control createDialogArea(Composite parent)
-  {
-    int tabIndex = 0;
-    Composite client = (Composite)super.createDialogArea(parent);
-    getShell().setText("Union " + XSDConstants.MEMBERTYPES_ATTRIBUTE); 
-    
-    Label instructions = new Label(client, SWT.LEFT | SWT.WRAP);
-    instructions.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_SELECT_MEMBERTYPES"));
-    
-    Composite columnsComposite = new Composite(client, SWT.NONE);
-    GridLayout ccGL = new GridLayout();
-    ccGL.verticalSpacing = 0;
-    ccGL.horizontalSpacing = 0;
-    ccGL.marginHeight = 0;
-    ccGL.marginWidth = 0;
-    ccGL.makeColumnsEqualWidth = true;
-    ccGL.numColumns = 3;
-    columnsComposite.setLayout(ccGL);
-    
-    GridData ccGD = new GridData();
-    ccGD.grabExcessHorizontalSpace = true;
-    ccGD.horizontalAlignment = GridData.FILL;
-    columnsComposite.setLayoutData(ccGD);     
-                           
-    typeSection = new TypeSection(columnsComposite);
-    typeSection.setShowUserComplexType(false);
-
-    typeSection.createClient(columnsComposite);
-    typeSection.getSimpleType().setSelection(false);
-    typeSection.getSimpleType().addSelectionListener(this);
-    typeSection.getUserSimpleType().addSelectionListener(this);
-    
-    ViewUtility.createHorizontalFiller(columnsComposite, 1);
-    
-    Label memberListLabel = new Label(columnsComposite, SWT.LEFT);
-    memberListLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_MEMBERTYPES_VALUE"));
-    
-    Composite dataComposite = new Composite(client, SWT.NONE);
-    GridLayout dcGL = new GridLayout();
-    dcGL.verticalSpacing = 0;
-    dcGL.marginHeight = 0;
-    dcGL.marginWidth = 0;
-    dcGL.numColumns = 3;
-    dataComposite.setLayout(dcGL);
-    
-    GridData dcGD = new GridData();
-    dcGD.grabExcessHorizontalSpace = true;
-    dcGD.grabExcessVerticalSpace = true;
-    dataComposite.setLayoutData(dcGD);
-    
-    table = new Table(dataComposite,
-        SWT.SINGLE | SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); 
-    table.setHeaderVisible(false);
-    table.setLinesVisible(true);
-    GridData gd2 = new GridData();
-    gd2.grabExcessHorizontalSpace = true;
-    gd2.grabExcessVerticalSpace = true;
-    gd2.horizontalAlignment = GridData.FILL;
-    gd2.verticalAlignment = GridData.FILL;
-    gd2.heightHint = 200;
-    gd2.widthHint = 200;
-    table.setLayoutData(gd2);
-
-    // Fill table
-    handleSetInput();
-    int tableItemCount = table.getItemCount();
-
-    TableColumn tc = new TableColumn(table, SWT.LEFT);
-//    tc.setImage(XSDEditorPlugin.getXSDImage("icons/XSDElement.gif"));
-    //tc.setText("Available types:");
-    tc.setWidth(200);
-    tc.setResizable(true);
-    
-    Composite buttonComposite = new Composite(dataComposite, SWT.NONE);
-    GridLayout bcGL = new GridLayout();
-    bcGL.numColumns = 1;
-    buttonComposite.setLayout(bcGL);
-    addButton = new Button(buttonComposite, SWT.PUSH);
-    addButton.setText(">");
-    addButton.addSelectionListener(this);
-    removeButton = new Button(buttonComposite, SWT.PUSH);
-    removeButton.setText("<");
-    removeButton.addSelectionListener(this);
-    
-    Composite listComposite = new Composite(dataComposite, SWT.NONE);
-    GridLayout mtGL = new GridLayout();
-    mtGL.numColumns = 1;
-    mtGL.marginHeight = 0;
-    mtGL.marginWidth = 0;
-    mtGL.horizontalSpacing = 0;
-    mtGL.verticalSpacing = 0;
-    listComposite.setLayout(mtGL);
-
-    GridData mtGD = new GridData();
-    mtGD.grabExcessHorizontalSpace = true;
-    mtGD.grabExcessVerticalSpace = true;
-    mtGD.verticalAlignment = GridData.FILL;
-    mtGD.horizontalAlignment = GridData.FILL;
-    listComposite.setLayoutData(mtGD);
-    
-    memberTypesList = new org.eclipse.swt.widgets.List(listComposite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
-    GridData mtlGD = new GridData();
-    mtlGD.grabExcessHorizontalSpace = true;
-    mtlGD.grabExcessVerticalSpace = true;
-    mtlGD.verticalAlignment = GridData.FILL;
-    mtlGD.horizontalAlignment = GridData.FILL;
-    mtlGD.heightHint = 200;
-    mtlGD.widthHint = 200;
-    memberTypesList.setLayoutData(mtlGD);
-    
-    initializeMemberListContent();
-    return client;
-  }
-
-  private void initializeMemberListContent()
-  {
-//    String result = element.getAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-//    if (result == null)
-//    {
-//      return;
-//    }
-//    StringTokenizer token = new StringTokenizer(result);
-//    while (token.hasMoreTokens())
-//    {
-//      memberTypesList.add(token.nextToken());
-//    }
-    XSDSchema schema = simpleType.getSchema();
-    for (Iterator i = simpleType.getMemberTypeDefinitions().iterator(); i.hasNext(); )
-    {
-      String name = ((XSDSimpleTypeDefinition)i.next()).getQName(schema);
-      if (name != null)
-      memberTypesList.add(name);
-    }
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)
-   */
-  public void widgetSelected(SelectionEvent e)
-  {
-    if (e.widget == typeSection.getSimpleType() && typeSection.getSimpleType().getSelection())
-     {
-      populateBuiltInType();
-    }
-    else if (e.widget == typeSection.getUserSimpleType() && typeSection.getUserSimpleType().getSelection())
-     {
-      populateUserSimpleType(false);
-    }
-    else if (e.widget == addButton)
-    {
-      TableItem[] items = table.getItems();
-      int selection = table.getSelectionIndex();
-      if (items != null && items.length > 0 && selection >= 0)
-      {
-        String typeToAdd = items[selection].getData().toString();
-        if (memberTypesList.indexOf(typeToAdd) < 0)
-        {
-          memberTypesList.add(items[selection].getData().toString());
-        }
-      }
-    }
-    else if (e.widget == removeButton)
-    {
-      String[] typesToRemove = memberTypesList.getSelection();
-      for (int i=0; i < typesToRemove.length; i++)
-      {
-        memberTypesList.remove(typesToRemove[i]);
-      }
-    }
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent)
-   */
-  public void widgetDefaultSelected(SelectionEvent e)
-  {
-  }
-  
-  public void handleSetInput()
-  {
-    populateBuiltInType();
-  }
-  
-  public void populateBuiltInType()
-  {
-    table.removeAll();
-    List items = getBuiltInTypeNamesList();
-    for (int i = 0; i < items.size(); i++)
-     {
-      TableItem item = new TableItem(table, SWT.NONE);
-      item.setText(items.get(i).toString());
-      item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-      item.setData(items.get(i));
-    }
-  }
-
-  public void populateUserSimpleType(boolean showAnonymous)
-  {
-    table.removeAll();
-    if (showAnonymous)
-     {
-      TableItem anonymousItem = new TableItem(table, SWT.NONE);
-      anonymousItem.setText("**anonymous**");
-      anonymousItem.setData("**anonymous**");
-    }
-    List items = getUserSimpleTypeNamesList();
-    for (int i = 0; i < items.size(); i++)
-     {
-      TableItem item = new TableItem(table, SWT.NONE);
-      item.setText(items.get(i).toString());
-      item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-      item.setData(items.get(i));
-    }
-  }
-  
-  public java.util.List getBuiltInTypeNamesList()
-  {
-    TypesHelper helper = new TypesHelper(simpleType.getSchema());
-    return helper.getBuiltInTypeNamesList();
-  }
-
-  public java.util.List getUserSimpleTypeNamesList()
-  {
-    TypesHelper helper = new TypesHelper(simpleType.getSchema());
-    return helper.getUserSimpleTypeNamesList();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeSection.java
deleted file mode 100644
index 6e38870..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeSection.java
+++ /dev/null
@@ -1,571 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CCombo;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.actions.CreateElementAction;
-import org.eclipse.wst.xsd.ui.internal.actions.DOMAttribute;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionDialog;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDSetTypeHelper;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDVariety;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class SimpleTypeSection extends AbstractSection
-{
-  CCombo varietyCombo;
-  Text typesText;
-  CLabel typesLabel;
-  Button button;
-
-  /**
-   * 
-   */
-  public SimpleTypeSection()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite = getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-		varietyCombo = getWidgetFactory().createCCombo(composite, SWT.FLAT);
-		CLabel label = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_VARIETY")); //$NON-NLS-1$
-    
-		List list = XSDVariety.VALUES;	
-		Iterator iter = list.iterator();
-		while (iter.hasNext())
-		{
-		  varietyCombo.add(((XSDVariety)iter.next()).getName());
-		}
-    varietyCombo.addSelectionListener(this);
-
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(0, 0);
-		varietyCombo.setLayoutData(data);
-
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(varietyCombo, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(varietyCombo, 0, SWT.CENTER);
-		label.setLayoutData(data);
-    
-    typesText = getWidgetFactory().createText(composite, ""); //$NON-NLS-1$
-    typesLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_MEMBERTYPES")); //$NON-NLS-1$
-    button = getWidgetFactory().createButton(composite, "", SWT.PUSH); //$NON-NLS-1$
-    button.setImage(XSDEditorPlugin.getXSDImage("icons/browsebutton.gif")); //$NON-NLS-1$
-    
-    typesText.addListener(SWT.Modify, this);
-
-    data = new FormData();
-    data.left = new FormAttachment(0, 100);
-    data.right = new FormAttachment(100, -rightMarginSpace - ITabbedPropertyConstants.HSPACE);
-    data.top = new FormAttachment(button, 0, SWT.CENTER);
-    typesText.setLayoutData(data);
-
-    data = new FormData();
-    data.left = new FormAttachment(0, 0);
-    data.right = new FormAttachment(typesText, -ITabbedPropertyConstants.HSPACE);
-    data.top = new FormAttachment(button, 0, SWT.CENTER);
-    typesLabel.setLayoutData(data);
-
-    button.addSelectionListener(this);
-    data = new FormData();
-    data.left = new FormAttachment(typesText, 0);
-    data.right = new FormAttachment(100,0);
-    data.top = new FormAttachment(varietyCombo, +ITabbedPropertyConstants.VSPACE);
-    button.setLayoutData(data);
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-	  setListenerEnabled(false);
-    if (isReadOnly)
-    {
-      composite.setEnabled(false);
-    }
-    else
-    {
-      composite.setEnabled(true);
-    }
-	  Object input = getInput();
-	  varietyCombo.setText(""); //$NON-NLS-1$
-    typesText.setText(""); //$NON-NLS-1$
-    typesLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE_WITH_COLON")); //$NON-NLS-1$
-	  if (input != null)
-	  {
-	    if (input instanceof XSDSimpleTypeDefinition)
-	    {
-	      XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)input;
-        
-        Element simpleTypeElement = st.getElement();
-        Element element = null;
-	      String variety = st.getVariety().getName();
-        
-        int intVariety = st.getVariety().getValue();
-        
-	      if (variety != null)
-	      {
-          varietyCombo.setText(variety);
-          if (intVariety == XSDVariety.ATOMIC)
-          {
-            element = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.RESTRICTION_ELEMENT_TAG);
-//            if (element == null)
-//            {
-//              element = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.EXTENSION_ELEMENT_TAG);
-//              if (element == null) return;
-//            }
-            
-            if (element == null)
-            {
-              varietyCombo.setText(XSDEditorPlugin.getXSDString("_UI_NO_TYPE")); // "Select a simple type variety"); //$NON-NLS-1$            
-            }
-            else
-            {
-              String result = element.getAttribute(XSDConstants.BASE_ATTRIBUTE);
-              if (result == null)
-              {
-                typesText.setText("**anonymous**"); //$NON-NLS-1$
-              }
-              else
-              {
-                typesText.setText(result);
-              }
-            }
-            typesLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE_WITH_COLON")); //$NON-NLS-1$
-          }
-          else if (intVariety == XSDVariety.LIST)
-          {
-            element = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.LIST_ELEMENT_TAG);
-            if (element != null)
-            {
-              String result = element.getAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE);
-              if (result == null)
-              {
-                typesText.setText("**anonymous**"); //$NON-NLS-1$
-              }
-              else
-              {
-                typesText.setText(result);
-              }
-            }
-            typesLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_ITEM_TYPE")); //$NON-NLS-1$
-          }
-          else if (intVariety == XSDVariety.UNION)
-          {
-            Element unionElement = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.UNION_ELEMENT_TAG);
-            if (unionElement != null)
-            {
-              String memberTypes = unionElement.getAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-              if (memberTypes != null)
-              {
-                typesText.setText(memberTypes);
-              }
-            }
-            typesLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_MEMBERTYPES")); //$NON-NLS-1$
-          }
-	      }
-	    }
-	  }
-	  setListenerEnabled(true);
-	}
-
-  /**
-   * @see org.eclipse.swt.events.SelectionListener#widgetSelected(SelectionEvent)
-   */
-  public void widgetSelected(SelectionEvent e)
-  {
-	  Object input = getInput();
-    if (e.widget == varietyCombo)
-    {
-  	  if (input != null)
-  	  {
-  	    if (input instanceof XSDSimpleTypeDefinition)
-  	    {
-  	      XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)input;
-          Element parent = st.getElement();
-          
-  	      String variety = varietyCombo.getText();
-  	      if (variety.equals(XSDVariety.ATOMIC_LITERAL.getName()))
-          {
-            typesLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE_WITH_COLON")); //$NON-NLS-1$
-            st.setVariety(XSDVariety.ATOMIC_LITERAL);
-            List attributes = new ArrayList();
-            addCreateElementActionIfNotExist(XSDConstants.RESTRICTION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_RESTRICTION"), parent, null); //$NON-NLS-1$
-          }
-  	      else if (variety.equals(XSDVariety.UNION_LITERAL.getName()))
-  	      {
-            typesLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_MEMBERTYPES")); //$NON-NLS-1$
-            st.setVariety(XSDVariety.UNION_LITERAL);
-            addCreateElementActionIfNotExist(XSDConstants.UNION_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_UNION"), parent, null); //$NON-NLS-1$
-          }
-  	      else if (variety.equals(XSDVariety.LIST_LITERAL.getName()))
-  	      {
-            typesLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_ITEM_TYPE")); //$NON-NLS-1$
-            st.setVariety(XSDVariety.LIST_LITERAL);
-            addCreateElementActionIfNotExist(XSDConstants.LIST_ELEMENT_TAG, XSDEditorPlugin.getXSDString("_UI_ACTION_ADD_LIST"), parent, null); //$NON-NLS-1$
-          }
-  	    }
-  	  }
-    }
-    else if (e.widget == button)
-    {
-      Shell shell = Display.getCurrent().getActiveShell();
-      Element element = ((XSDConcreteComponent)input).getElement();
-      Dialog dialog = null;
-      String property = "";
-      Element secondaryElement = null;
-      
-      IFile currentIFile = ((IFileEditorInput)getActiveEditor().getEditorInput()).getFile();
-
-      XSDComponentSelectionProvider provider = new XSDComponentSelectionProvider(currentIFile, xsdSchema);
-      dialog = new XSDComponentSelectionDialog(shell, "Set Type", provider);  // TODO: Externalize This
-      provider.setDialog((XSDComponentSelectionDialog) dialog);
-      
-      if (input instanceof XSDSimpleTypeDefinition)
-      {
-        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)input;
-        Element simpleTypeElement = st.getElement();
-        if (st.getVariety() == XSDVariety.LIST_LITERAL)
-        {
-          Element listElement = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.LIST_ELEMENT_TAG);
-//          dialog = new TypesDialog(shell, listElement, XSDConstants.ITEMTYPE_ATTRIBUTE, xsdSchema);
-//          dialog.showComplexTypes = false;
-          provider.showComplexTypes(false);
-          
-          secondaryElement = listElement;
-          property = XSDConstants.ITEMTYPE_ATTRIBUTE;
-        }
-        else if (st.getVariety() == XSDVariety.ATOMIC_LITERAL)
-        {
-          Element derivedByElement = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.RESTRICTION_ELEMENT_TAG);
-          if (derivedByElement == null)
-          {
-            derivedByElement = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.EXTENSION_ELEMENT_TAG);
-            if (derivedByElement == null) return;
-          }
-          if (derivedByElement != null)
-          {
-//            dialog = new TypesDialog(shell, derivedByElement, XSDConstants.BASE_ATTRIBUTE, xsdSchema);
-//            dialog.showComplexTypes = false;
-              provider.showComplexTypes(false);
-
-              secondaryElement = derivedByElement;
-              property = XSDConstants.BASE_ATTRIBUTE;
-          }
-          else
-          {
-            return;
-          }
-        }
-        else if (st.getVariety() == XSDVariety.UNION_LITERAL)
-        {
-          SimpleContentUnionMemberTypesDialog unionDialog = new SimpleContentUnionMemberTypesDialog(shell, st);
-          unionDialog.setBlockOnOpen(true);
-          unionDialog.create();
-          
-          int result = unionDialog.open();
-          if (result == Window.OK)
-          {
-            String newValue = unionDialog.getResult();
-            beginRecording(XSDEditorPlugin.getXSDString("_UI_LABEL_MEMBERTYPES_CHANGE"), element); //$NON-NLS-1$
-            Element unionElement = (Element)domHelper.getChildNode(element, XSDConstants.UNION_ELEMENT_TAG);
-            unionElement.setAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, newValue);
-
-            if (newValue.length() > 0)
-            {
-              unionElement.setAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, newValue);
-            }
-            else
-            {
-              unionElement.removeAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);  
-            }
-            endRecording(unionElement);
-            if (doRefresh)
-            {
-              refresh();
-            }
-          }
-          return;
-        }
-        else
-        {
-//          dialog = new TypesDialog(shell, element, "type", xsdSchema); //$NON-NLS-1$
-            property = "type";
-        }
-      }
-      else
-      {
-//        dialog = new TypesDialog(shell, element, "type", xsdSchema); //$NON-NLS-1$
-          property = "type";
-      }
-      beginRecording(XSDEditorPlugin.getXSDString("_UI_TYPE_CHANGE"), element); //$NON-NLS-1$
-      dialog.setBlockOnOpen(true);
-      dialog.create();
-      int result = dialog.open();
-      
-      if (result == Window.OK)
-      {
-          if (secondaryElement == null) {
-              secondaryElement = element;
-          }
-          XSDSetTypeHelper helper = new XSDSetTypeHelper(currentIFile, xsdSchema);
-          helper.setType(secondaryElement, property, ((XSDComponentSelectionDialog) dialog).getSelection());          
-
-        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)getInput();
-        st.setElement(element);
-        updateSimpleTypeFacets();
-      }
-      endRecording(element);
-    }
-    if (doRefresh)
-    {
-      refresh();
-    }
-  }
-
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-  
-  protected boolean addCreateElementActionIfNotExist(String elementTag, String label, Element parent, Node relativeNode)
-  {
-    XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)getInput();
-    List attributes = new ArrayList();
-    String reuseType = null;
-    
-    beginRecording(XSDEditorPlugin.getXSDString("_UI_LABEL_VARIETY_CHANGE"), parent); //$NON-NLS-1$
-    if (elementTag.equals(XSDConstants.RESTRICTION_ELEMENT_TAG))
-    {
-      Element listNode = getFirstChildNodeIfExists(parent, XSDConstants.LIST_ELEMENT_TAG, false);
-      if (listNode != null)
-      {
-        reuseType = listNode.getAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE);
-        XSDDOMHelper.removeNodeAndWhitespace(listNode);
-      }
-
-      Element unionNode = getFirstChildNodeIfExists(parent, XSDConstants.UNION_ELEMENT_TAG, false);
-      if (unionNode != null)
-      {
-        String memberAttr = unionNode.getAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-        if (memberAttr != null)
-        {
-          StringTokenizer stringTokenizer = new StringTokenizer(memberAttr);
-          reuseType = stringTokenizer.nextToken();
-        }
-        XSDDOMHelper.removeNodeAndWhitespace(unionNode);
-      }
-
-      if (reuseType == null)
-      {
-        reuseType = getBuiltInStringQName();        
-      }
-      attributes.add(new DOMAttribute(XSDConstants.BASE_ATTRIBUTE, reuseType));
-      st.setItemTypeDefinition(null);
-    }
-    else if (elementTag.equals(XSDConstants.LIST_ELEMENT_TAG))
-    {
-      Element restrictionNode = getFirstChildNodeIfExists(parent, XSDConstants.RESTRICTION_ELEMENT_TAG, false);
-      if (restrictionNode != null)
-      {
-        reuseType = restrictionNode.getAttribute(XSDConstants.BASE_ATTRIBUTE);
-        XSDDOMHelper.removeNodeAndWhitespace(restrictionNode);
-      }
-      Element unionNode = getFirstChildNodeIfExists(parent, XSDConstants.UNION_ELEMENT_TAG, false);
-      if (unionNode != null)
-      {
-        String memberAttr = unionNode.getAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-        if (memberAttr != null)
-        {
-          StringTokenizer stringTokenizer = new StringTokenizer(memberAttr);
-          reuseType = stringTokenizer.nextToken();
-        }
-        XSDDOMHelper.removeNodeAndWhitespace(unionNode);
-      }
-      attributes.add(new DOMAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE, reuseType));
-    }
-    else if (elementTag.equals(XSDConstants.UNION_ELEMENT_TAG))
-    {
-      Element listNode = getFirstChildNodeIfExists(parent, XSDConstants.LIST_ELEMENT_TAG, false);
-      if (listNode != null)
-      {
-        reuseType = listNode.getAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE);
-        XSDDOMHelper.removeNodeAndWhitespace(listNode);
-      }
-      Element restrictionNode = getFirstChildNodeIfExists(parent, XSDConstants.RESTRICTION_ELEMENT_TAG, false);
-      if (restrictionNode != null)
-      {
-        reuseType = restrictionNode.getAttribute(XSDConstants.BASE_ATTRIBUTE);
-        XSDDOMHelper.removeNodeAndWhitespace(restrictionNode);
-      }
-      attributes.add(new DOMAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, reuseType));
-      st.setItemTypeDefinition(null);
-    }
-    
-    if (getFirstChildNodeIfExists(parent, elementTag, false) == null)
-    {
-      Action action = addCreateElementAction(elementTag,label,attributes,parent,relativeNode);
-      action.run();
-    }
-
-    st.setElement(parent);
-//    st.updateElement();
-    endRecording(parent);
-    return true;
-  }
-
-  protected Action addCreateElementAction(String elementTag, String label, List attributes, Element parent, Node relativeNode)
-  {
-    CreateElementAction action = new CreateElementAction(label);
-    action.setElementTag(elementTag);
-    action.setAttributes(attributes);
-    action.setParentNode(parent);
-    action.setRelativeNode(relativeNode);
-    return action;
-  }
-
-  
-  protected Element getFirstChildNodeIfExists(Node parent, String elementTag, boolean isRef)
-  {
-    NodeList children = parent.getChildNodes();
-    Element targetNode = null;
-    for (int i=0; i < children.getLength(); i++)
-    {
-      Node child = children.item(i);
-      if (child != null && child instanceof Element)
-      {
-        if (XSDDOMHelper.inputEquals((Element)child, elementTag, isRef))
-        {
-          targetNode = (Element)child;
-          break;
-        }
-      }
-    }
-    return targetNode;
-  }
-
-  protected String getBuiltInStringQName()
-  {
-    String stringName = "string"; //$NON-NLS-1$
-    
-    if (getSchema() != null)
-    {
-      String schemaForSchemaPrefix = getSchema().getSchemaForSchemaQNamePrefix();
-      if (schemaForSchemaPrefix != null && schemaForSchemaPrefix.length() > 0)
-      {
-        String prefix = getSchema().getSchemaForSchemaQNamePrefix();
-        if (prefix != null && prefix.length() > 0)
-        {
-          stringName = prefix + ":" + stringName; //$NON-NLS-1$
-        }
-      }
-    }
-    return stringName;
-  }
-
-  private void updateSimpleTypeFacets()
-  {
-    XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)getInput();
-    Element simpleTypeElement = st.getElement();
-    Element derivedByElement = getDomHelper().getDerivedByElement(simpleTypeElement);
-    if (derivedByElement != null)
-    {
-      List nodesToRemove = new ArrayList();
-      NodeList childList = derivedByElement.getChildNodes();
-      int length = childList.getLength();
-      for (int i = 0; i < length; i++)
-      {
-        Node child = childList.item(i);
-        if (child instanceof Element)
-        {
-          Element elementChild = (Element)child;
-          if (!(elementChild.getLocalName().equals("pattern") || elementChild.getLocalName().equals("enumeration") || //$NON-NLS-1$
-               XSDDOMHelper.inputEquals(elementChild, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false) ||
-               XSDDOMHelper.inputEquals(elementChild, XSDConstants.ANNOTATION_ELEMENT_TAG, false) ||
-               XSDDOMHelper.inputEquals(elementChild, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false) ||
-               XSDDOMHelper.inputEquals(elementChild, XSDConstants.ATTRIBUTE_ELEMENT_TAG, true) ||
-               XSDDOMHelper.inputEquals(elementChild, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, false) ||
-               XSDDOMHelper.inputEquals(elementChild, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, true) ||
-               XSDDOMHelper.inputEquals(elementChild, XSDConstants.ANYATTRIBUTE_ELEMENT_TAG, false)
-               ))
-          {
-            nodesToRemove.add(child);
-          }
-        }
-      }
-      Iterator iter = nodesToRemove.iterator();
-      while (iter.hasNext())
-      {
-        Element facetToRemove = (Element)iter.next();
-        String facetName = facetToRemove.getLocalName();
-        Iterator it = st.getValidFacets().iterator();
-        boolean doRemove = true;
-        while (it.hasNext())
-        {
-          String aValidFacet = (String)it.next();
-          if (aValidFacet.equals(facetName))
-          {
-            doRemove = false;
-            break;
-          }
-        }
-        if (doRemove)
-        {
-          XSDDOMHelper.removeNodeAndWhitespace(facetToRemove);
-        }
-      }
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeSectionDescriptor.java
deleted file mode 100644
index 71871e2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeSectionDescriptor.java
+++ /dev/null
@@ -1,91 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-
-
-public class SimpleTypeSectionDescriptor extends AbstractSectionDescriptor
-{
-
-  /**
-   * 
-   */
-  public SimpleTypeSectionDescriptor()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.simpletype";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDSimpleTypeDefinition.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new SimpleTypeSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-  
-  public String getAfterSection()
-  {
-    return "com.ibm.xsdeditor.section.name";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDSimpleTypeDefinition)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeUnionSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeUnionSection.java
deleted file mode 100644
index 5754ef2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeUnionSection.java
+++ /dev/null
@@ -1,185 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class SimpleTypeUnionSection extends AbstractSection
-{
-  Text memberTypesText;
-  Button button;
-
-  /**
-   * 
-   */
-  public SimpleTypeUnionSection()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite = getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-		memberTypesText = getWidgetFactory().createText(composite, ""); //$NON-NLS-1$
-		CLabel label = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_MEMBERTYPES")); //$NON-NLS-1$
-    button = getWidgetFactory().createButton(composite, "...", SWT.PUSH); //$NON-NLS-1$
-    
-    memberTypesText.addListener(SWT.Modify, this);
-//    memberTypesText.addSelectionListener(this);
-
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		data.right = new FormAttachment(95, 0);
-		data.top = new FormAttachment(button, 0, SWT.CENTER);
-		memberTypesText.setLayoutData(data);
-
-
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(memberTypesText, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(button, 0, SWT.CENTER);
-		label.setLayoutData(data);
-
-    button.addSelectionListener(this);
-		data = new FormData();
-		data.left = new FormAttachment(memberTypesText, +ITabbedPropertyConstants.HSPACE);
-		data.right = new FormAttachment(100,0);
-		// data.top = new FormAttachment(typeCombo, 0, SWT.CENTER);
-		data.top = new FormAttachment(0,0);
-		button.setLayoutData(data);
-		
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-	  setListenerEnabled(false);
-	  Object input = getInput();
-    if (isReadOnly)
-    {
-      composite.setEnabled(false);
-    }
-    else
-    {
-      composite.setEnabled(true);
-    }
-	  memberTypesText.setText(""); //$NON-NLS-1$
-	  if (input != null)
-	  {
-	    Element element = null;
-	    if (input instanceof XSDSimpleTypeDefinition)
-	    {
-	      XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)input;
-	      element = st.getElement();
-        Element unionElement = (Element)domHelper.getChildNode(element, XSDConstants.UNION_ELEMENT_TAG);
-        String memberTypes = unionElement.getAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-        if (memberTypes != null)
-        {
-          memberTypesText.setText(memberTypes);
-        }
-	      
-//        StringBuffer buf = new StringBuffer();	      
-//	      if (st.getMemberTypeDefinitions().size() > 0)
-//	      {
-//	        for (Iterator i = st.getMemberTypeDefinitions().iterator(); i.hasNext(); )
-//	        {
-//	          String name = ((XSDSimpleTypeDefinition)i.next()).getQName(getSchema());
-//	          if (name != null)
-//	          {
-//	            buf.append(name);
-//	            buf.append(" ");
-//	          }
-//	        }
-//	      }
-//	      memberTypesText.setText(buf.toString());
-	    }
-	  }
-	  setListenerEnabled(true);
-	}
-
-  /**
-   * @see org.eclipse.swt.events.SelectionListener#widgetSelected(SelectionEvent)
-   */
-  public void widgetSelected(SelectionEvent e)
-  {
-    if (e.widget == button)
-    {
-	    Shell shell = Display.getCurrent().getActiveShell();
-      
-	    XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)getInput();
-	    Element element = st.getElement();
-      SimpleContentUnionMemberTypesDialog dialog = new SimpleContentUnionMemberTypesDialog(shell, st);
-      dialog.setBlockOnOpen(true);
-      dialog.create();
-      
-      int result = dialog.open();
-      if (result == Window.OK)
-      {
-        String newValue = dialog.getResult();
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_LABEL_MEMBERTYPES_CHANGE"), element); //$NON-NLS-1$
-        Element unionElement = (Element)domHelper.getChildNode(element, XSDConstants.UNION_ELEMENT_TAG);
-        unionElement.setAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, newValue);
-
-        if (newValue.length() > 0)
-        {
-          unionElement.setAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, newValue);
-        }
-        else
-        {
-          unionElement.removeAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);  
-        }
-        endRecording(unionElement);
-
-      }
-
-      refresh();
-    }
-  }
-  
-  public void doHandleEvent(Event event)
-  {
-	  if (event.widget == memberTypesText)
-	  {
-	  }
-
-  }
-
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeUnionSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeUnionSectionDescriptor.java
deleted file mode 100644
index e21bada..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/SimpleTypeUnionSectionDescriptor.java
+++ /dev/null
@@ -1,87 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-
-public class SimpleTypeUnionSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public SimpleTypeUnionSectionDescriptor()
-  {
-    super();
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.simpletypeunion";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDSimpleTypeDefinition.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new SimpleTypeUnionSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-//    if (selection instanceof StructuredSelection)
-//    {
-//      StructuredSelection structuredSelection = (StructuredSelection)selection;
-//      object = structuredSelection.getFirstElement();
-//      if (object instanceof XSDSimpleTypeDefinition)
-//      {
-//        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)object;
-//        if (st.getVariety().getValue() == XSDVariety.UNION)
-//        {
-//          return true;
-//        }
-//      }
-//    }
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TextChangeHelper.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TextChangeHelper.java
deleted file mode 100644
index 0df6ffa..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TextChangeHelper.java
+++ /dev/null
@@ -1,102 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
-
-public abstract class TextChangeHelper implements Listener
-{
-	private boolean nonUserChange;
-
-	/**
-	 * Marks the start of a programmatic change to the widget contents.
-	 * Clients must call startNonUserChange() before directly setting 
-	 * the widget contents to avoid unwanted lifecycle events.
-	 * @throws IllegalArgumentException if a programmatic change is 
-	 * already in progress.
-	 */
-	public void startNonUserChange() {
-		if (nonUserChange)
-			throw new IllegalStateException("we already started a non user change");//$NON-NLS-1$
-		nonUserChange = true;
-	}
-
-	/**
-	 * Clients who call startNonUserChange() should call 
-	 * finishNonUserChange() as soon as possible after the change is done.
-	 * @throws IllegalArgumentException if no change is in progress.
-	 */
-	public void finishNonUserChange() {
-		if (!nonUserChange)
-			throw new IllegalStateException("we are not in a non user change");//$NON-NLS-1$
-		nonUserChange = false;
-	}
-
-	/**
-	 * Returns true if a programmatic change is in progress.
-	 */
-	public boolean isNonUserChange() {
-		return nonUserChange;
-	}
-
-	/**
-	 * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
-	 */
-	public void handleEvent(Event event) {
-		switch (event.type) {
-			case SWT.KeyDown :
-				if (event.character == SWT.CR)
-					textChanged((Control)event.widget);
-				break;
-			case SWT.FocusOut :
-				textChanged((Control)event.widget);
-				break;
-		}
-	}
-
-	/**
-	 * Abstract method notified when a text field has been changed.
-	 * @param control
-	 */
-	public abstract void textChanged(Control control);
-
-	/**
-	 * Registers this helper with the given control to listen for events
-	 * which indicate that a change is in progress (or done).
-	 */
-	public void startListeningTo(Control control) {
-		control.addListener(SWT.FocusOut, this);
-		control.addListener(SWT.Modify, this);
-	}
-
-	/**
-	 * Registers this helper with the given control to listen for the
-	 * Enter key.  When Enter is pressed, the change is considered done 
-	 * (this is only appropriate for single-line Text widgets).
-	 */
-	public void startListeningForEnter(Control control) {
-		// NOTE: KeyDown rather than KeyUp, because of similar usage in CCombo. 
-		control.addListener(SWT.KeyDown, this);
-	}
-
-	/**
-	 * Unregisters this helper from a control previously passed to
-	 * startListeningTo() and/or startListeningForEnter().
-	 */
-	public void stopListeningTo(Control control) {
-		control.removeListener(SWT.FocusOut, this);
-		control.removeListener(SWT.Modify, this);
-		control.removeListener(SWT.KeyDown, this);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesDialog.java
deleted file mode 100644
index 6671ebc..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesDialog.java
+++ /dev/null
@@ -1,726 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.wst.xsd.ui.internal.widgets.TypeSection;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-
-public class TypesDialog extends Dialog implements SelectionListener, Listener
-{
-  XSDSchema xsdSchema;
-  String property;
-
-  /**
-   * @param parentShell
-   */
-  public TypesDialog(Shell parentShell, Element element, Object id, XSDSchema xsdSchema)
-  {
-    super(parentShell);
-    setShellStyle(getShellStyle() | SWT.RESIZE);
-    this.element = element;
-    this.property = (String)id;
-    this.element = element;
-    this.xsdSchema = xsdSchema;
-
-    if (XSDDOMHelper.inputEquals(element, XSDConstants.ELEMENT_ELEMENT_TAG, false))
-    {
-      showComplexTypes = true;
-    }
-    else if (XSDDOMHelper.inputEquals(element, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false) ||
-      XSDDOMHelper.inputEquals(element, XSDConstants.LIST_ELEMENT_TAG, false) ||
-      XSDDOMHelper.inputEquals(element, XSDConstants.UNION_ELEMENT_TAG, false))
-    {
-      showComplexTypes = false;
-    }
-  }
-
-  String type;
-  Object typeObject;
-  Text textField;
-  Table table;
-  TableColumn tableColumn;
-  Element element;
-  
-  boolean showComplexTypes = true;
-  TypeSection typeSection;
-  boolean showAnonymous = true;
-  String previousStringType = "";
-  boolean isAnonymous;
-  int previousType;
-
-  protected void configureShell(Shell shell)
-  {
-    super.configureShell(shell);
-  }
-
-  protected void buttonPressed(int buttonId)
-  {
-    if (buttonId == Dialog.OK)
-    {
-      type = table.getItem(table.getSelectionIndex()).getText();
-      ok();
-    }
-    super.buttonPressed(buttonId);
-  }
-
-  public Object getTypeObject() { return typeObject; }
-  public String getType() { return type; }
-
-  //
-  // Create the controls
-  //
-  public Control createDialogArea(Composite parent)
-  {
-    int tabIndex = 0;
-    Composite client = (Composite)super.createDialogArea(parent);
-    getShell().setText(XSDEditorPlugin.getXSDString("_UI_LABEL_AVAILABLE_TYPES"));
-
-    typeObject = null;
-    
-    GridLayout gl = new GridLayout(1, true);
-//    gl.marginHeight = 0;
-//    gl.marginWidth = 0;
-//    gl.horizontalSpacing = 0;
-//    gl.verticalSpacing = 0;
-    client.setLayout(gl);
-
-    GridData gd = new GridData();
-    gd.grabExcessHorizontalSpace = true;
-    gd.grabExcessVerticalSpace = true;
-    gd.horizontalAlignment = GridData.FILL;
-    gd.verticalAlignment = GridData.FILL;
-    gd.horizontalIndent = 0;
-    client.setLayoutData(gd);
-    
-    typeSection = new TypeSection(client);
-    typeSection.setShowUserComplexType(showComplexTypes);
-
-    typeSection.createClient(client);
-    typeSection.getSimpleType().setSelection(false);
-    typeSection.getSimpleType().addSelectionListener(this);
-    typeSection.getUserSimpleType().addSelectionListener(this);
-    if (showComplexTypes)
-    {
-      typeSection.getUserComplexType().addSelectionListener(this);
-    }
-
-    textField = ViewUtility.createTextField(client, 50);
-    textField.addListener(SWT.Modify, this);
-    ViewUtility.createVerticalFiller(client, 0);
-
-    table = new Table(client,
-                      SWT.SINGLE | SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL); 
-    table.setHeaderVisible(false);
-    table.setLinesVisible(true);
-    table.addSelectionListener(this);
-    
-    GridData gd2 = new GridData();
-    gd2.grabExcessHorizontalSpace = true;
-    gd2.grabExcessVerticalSpace = true;
-    gd2.horizontalAlignment = GridData.FILL;
-    gd2.verticalAlignment = GridData.FILL;
-    gd2.heightHint = 200;
-    table.setLayoutData(gd2);
-    table.addListener(SWT.Resize, this);
-    
-    tableColumn = new TableColumn(table, SWT.LEFT);
-//    tableColumn.setImage(XSDEditorPlugin.getXSDImage("icons/XSDElement.gif"));
-    tableColumn.setResizable(true);
-    tableColumn.setWidth(200);
-
-    // Fill table and select input type
-    handleSetInput();
-
-    return client;
-  }
-  
-  public void handleEvent(Event event)
-  {
-  	if (event.type == SWT.Resize && event.widget == table) {
-  		tableColumn.setWidth(table.getSize().x);
-  	}
-  	else if (event.type == SWT.Modify && event.widget == textField) {
-  		List items = null;
-  		boolean showAll = false;
-  		String inputString = textField.getText();
-  		
-  		if (inputString.equals("")) {
-  			showAll = true;
-  		}
-  		else {
-  			inputString = insertString("*", ".", inputString);
-  			inputString = insertString("?", ".", inputString);
-  			inputString = inputString + ".*";
-  		}
-  		
-  		try {
-  			if (typeSection.getSimpleType().getSelection())
-  			{
-  				if (showAll) {
-  					populateBuiltInType();
-  				}
-  				else {
-  					populateBuiltInType(inputString);
-  				}
-  			}
-  			else if (typeSection.getUserComplexType().getSelection())
-  			{
-  				if (showAll) {
-  					populateUserComplexType();
-  				}
-  				else {
-  					populateUserComplexType(inputString);
-  				}
-  			}
-  			else if (typeSection.getUserSimpleType().getSelection())
-  			{
-  				if (showAll) {
-  					populateUserSimpleType();
-  				}
-  				else {
-  					populateUserSimpleType(inputString);
-  				}
-  			}
-  		}
-  		catch (Exception e) {
-  			// Do nothing
-  		}
-  	}
-  	
-  	setEnabledState();
-  }
-  
-  private void setEnabledState() {
-  	if (table.getSelectionIndex() != -1) {
-  		this.getButton(IDialogConstants.OK_ID).setEnabled(true);
-  	}
-  	else {
-  		this.getButton(IDialogConstants.OK_ID).setEnabled(false);
-  	}
-  }
-  
-  private String insertString(String target, String newString, String string) {
-  	ArrayList list = new ArrayList();
-  	StringBuffer stringBuffer = new StringBuffer(string);
-  	
-  	int index = stringBuffer.indexOf(target);
-  	while (index != -1) {
-  		stringBuffer = stringBuffer.insert(index, newString);
-  		index = stringBuffer.indexOf(target, index + newString.length() + target.length());
-  	}
-  	
-  	return stringBuffer.toString();
-  }
-  
-  public void widgetSelected(SelectionEvent e)
-  {
-    if (e.widget == typeSection.getSimpleType() && typeSection.getSimpleType().getSelection())
-    {
-    	if (textField.getText().equals("")) {
-    		populateBuiltInType();
-    	}
-    	else {
-    		populateBuiltInType(textField.getText());
-    	}
-    }
-    else if (e.widget == typeSection.getUserComplexType() && typeSection.getUserComplexType().getSelection())
-    {
-    	if (textField.getText().equals("")) {
-    		populateUserComplexType();
-    	}
-    	else {
-    		populateUserComplexType(textField.getText());
-    	}
-    }
-    else if (e.widget == typeSection.getUserSimpleType() && typeSection.getUserSimpleType().getSelection())
-    {
-    	if (textField.getText().equals("")) {
-    		populateUserSimpleType();
-    	}
-    	else {
-    		populateUserSimpleType(textField.getText());
-    	}
-    }
-    setEnabledState();
-  }
-  
-	public void widgetDefaultSelected(SelectionEvent e)
-  {
-  }
-
-  protected void ok()
-  {
-    TableItem[] items = table.getItems();
-    int selection = table.getSelectionIndex();
-    if (items != null && items.length > 0 && selection >= 0)
-    {
-      typeObject = items[selection].getData();
-    }
-//    System.out.println("typeObject is " + typeObject);
-
-//    beginRecording(XSDEditorPlugin.getXSDString("_UI_ELEMENT_TYPE_CHANGE"), element);
-//    beginRecording(XSDEditorPlugin.getXSDString("_UI_TYPE_CHANGE"), element);
-//    doSetValue(typeObject);
-//    applyEditorValueAndDeactivate();
-//    dialog.close();
-
-    if (!XSDDOMHelper.inputEquals(element, XSDConstants.UNION_ELEMENT_TAG, false))
-    {
-	    if (typeObject.equals("**anonymous**"))
-	    {
-	      if (typeSection.getUserSimpleType().getSelection())
-	      {
-//	        if (!previousStringType.equals("**anonymous**"))
-	        {
-	          updateElementToAnonymous(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-	        }
-	      }
-	      else
-	      {
-//	        if (!previousStringType.equals("**anonymous**"))
-	        {
-	          updateElementToAnonymous(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-	        }
-	      }
-	      // element.removeAttribute(XSDConstants.TYPE_ATTRIBUTE);
-	      element.removeAttribute(property);
-	    }
-	    else
-	    {
-	      XSDDOMHelper.updateElementToNotAnonymous(element);
-	      //element.setAttribute(XSDConstants.TYPE_ATTRIBUTE, typeObject.toString());
-	      element.setAttribute(property, typeObject.toString());
-	    }
-    }
-//    endRecording(element);
-
-    //implement dispose();
-//    table.removeAll();
-//    table.dispose();
-  }
-
-	
-  public void handleSetInput()
-  {
-    table.removeAll();
-    isAnonymous = checkForAnonymousType(element);
-    // Attr attr = element.getAttributeNode(XSDConstants.TYPE_ATTRIBUTE);
-    Attr attr = element.getAttributeNode(property);
-    if (attr != null)
-    {
-      String value = attr.getValue();
-      if (typeSection.getBuiltInTypeNamesList(xsdSchema).contains(value))
-      {
-        typeSection.getSimpleType().setSelection(true);
-        populateBuiltInType();
-        int i = typeSection.getBuiltInTypeNamesList(xsdSchema).indexOf(value);
-        table.setSelection(i);
-        previousType = 1;
-      }
-      else if (typeSection.getUserSimpleTypeNamesList(xsdSchema).contains(value))
-      {
-        typeSection.getUserSimpleType().setSelection(true);
-        populateUserSimpleType();
-        int i = typeSection.getUserSimpleTypeNamesList(xsdSchema).indexOf(value);
-        if (showAnonymous)
-        {
-          table.setSelection(i + 1);
-        }
-        else
-        {
-          table.setSelection(i);
-        }
-        previousType = 2;
-      }
-      else if (typeSection.getUserComplexTypeNamesList(xsdSchema).contains(value))
-      {
-        typeSection.getUserComplexType().setSelection(true);
-        populateUserComplexType();
-        int i = typeSection.getUserComplexTypeNamesList(xsdSchema).indexOf(value);
-        if (showAnonymous)
-         {
-          table.setSelection(i + 1);
-        }
-        else
-         {
-          table.setSelection(i);
-        }
-        previousType = 3;
-      }
-      else // if it is type="" for an empty list of simple types
-        {
-        typeSection.getUserSimpleType().setSelection(true);
-        populateUserSimpleType();
-        previousType = 2;
-      }
-    }
-    else
-    {
-      if (isAnonymous)
-      {
-        if (isSTAnonymous(element))
-        {
-          typeSection.getUserSimpleType().setSelection(true);
-          populateUserSimpleType();
-          previousType = 2;
-        }
-        else
-        {
-          typeSection.getUserComplexType().setSelection(true);
-          populateUserComplexType();
-          previousType = 3;
-        }
-        table.setSelection(0); // anonymous
-        //        typeSection.getTypeList().setText("**anonymous**");
-      }
-      else
-      {
-        typeSection.getSimpleType().setSelection(true);
-        populateBuiltInType();
-        table.setSelection(0);
-        
-        //        typeSection.getTypeList().setEnabled(true);
-        //        typeSection.getSimpleType().setSelection(true);
-        //        typeSection.populateBuiltInType(xsdSchema);
-        //        typeSection.getTypeList().setText(XSDEditorPlugin.getXSDString("_UI_NO_TYPE"));
-        previousType = 1;
-      }
-    }
-    if (table.getSelection() != null && table.getSelection().length > 0)
-    {
-      previousStringType = (table.getSelection()[0]).getText();
-    }
-  }
-  
-  public void populateBuiltInType()
-  {
-    table.removeAll();
-    List items = getBuiltInTypeNamesList();
-    for (int i = 0; i < items.size(); i++)
-    {
-      TableItem item = new TableItem(table, SWT.NONE);
-      item.setText(items.get(i).toString());
-      item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-      item.setData(items.get(i));
-    }
-  }
-
-  public void populateBuiltInType(String fragment)
-  {
-    table.removeAll();
-    List items = getBuiltInTypeNamesList();
-    fragment = fragment.toLowerCase();
-	Pattern regex = Pattern.compile(fragment);
-	
-    for (int i = 0; i < items.size(); i++)
-    {
-    	String itemString = items.get(i).toString().toLowerCase();
-    	Matcher m = regex.matcher(itemString);
-
-    	if (itemString.startsWith(fragment) || m.matches()) {
-    		TableItem item = new TableItem(table, SWT.NONE);
-    		item.setText(items.get(i).toString());
-    		item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-    		item.setData(items.get(i));
-    	}
-    }
-    
-    table.select(0);
-  }
-
-  public void populateUserComplexType()
-  {
-    table.removeAll();
-    if (showAnonymous)
-    {
-      TableItem anonymousItem = new TableItem(table, SWT.NONE);
-      anonymousItem.setText("**anonymous**");
-      anonymousItem.setData("**anonymous**");
-    }
-    List items = getUserComplexTypeNamesList();
-    for (int i = 0; i < items.size(); i++)
-    {
-      TableItem item = new TableItem(table, SWT.NONE);
-//      System.out.println("item " + i + " is " + item);
-      item.setText(items.get(i).toString());
-      item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDComplexType.gif"));
-      item.setData(items.get(i));
-    }
-  }
-  
-  public void populateUserComplexType(String fragment)
-  {
-    table.removeAll();
-    fragment = fragment.toLowerCase();
-    Pattern regex = java.util.regex.Pattern.compile(fragment);
-    
-    if (showAnonymous)
-    {
-    	Matcher m = regex.matcher("**anonymous**");
-    	if ("**anonymous**".startsWith(fragment) || m.matches()) {
-    		TableItem anonymousItem = new TableItem(table, SWT.NONE);
-    		anonymousItem.setText("**anonymous**");
-    		anonymousItem.setData("**anonymous**");
-    	}
-    }
-    List items = getUserComplexTypeNamesList();
-    for (int i = 0; i < items.size(); i++)
-    {
-    	String itemString = items.get(i).toString().toLowerCase();
-    	Matcher m = regex.matcher(itemString);
-    	
-    	if (itemString.startsWith(fragment) || m.matches()) {
-    		TableItem item = new TableItem(table, SWT.NONE);
-    		item.setText(items.get(i).toString());
-    		item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDComplexType.gif"));
-    		item.setData(items.get(i));
-    	}
-    }
-    
-    table.select(0);
-  }
-
-  public void populateUserSimpleType()
-  {
-    table.removeAll();
-    if (showAnonymous)
-     {
-      TableItem anonymousItem = new TableItem(table, SWT.NONE);
-      anonymousItem.setText("**anonymous**");
-      anonymousItem.setData("**anonymous**");
-    }
-    List items = getUserSimpleTypeNamesList();
-    for (int i = 0; i < items.size(); i++)
-     {
-      TableItem item = new TableItem(table, SWT.NONE);
-      item.setText(items.get(i).toString());
-      item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-      item.setData(items.get(i));
-    }
-  }
-
-  public void populateUserSimpleType(String fragment)
-  {
-    table.removeAll();
-    fragment = fragment.toLowerCase();
-    Pattern regex = java.util.regex.Pattern.compile(fragment);
-    
-    if (showAnonymous)
-     {
-    	Matcher m = regex.matcher("**anonymous**");
-    	if ("**anonymous**".startsWith(fragment) || m.matches())  {
-    		TableItem anonymousItem = new TableItem(table, SWT.NONE);
-    		anonymousItem.setText("**anonymous**");
-    		anonymousItem.setData("**anonymous**");
-    	}
-    }
-    List items = getUserSimpleTypeNamesList();
-    for (int i = 0; i < items.size(); i++)
-     {
-    	String itemString = items.get(i).toString().toLowerCase();
-    	Matcher m = regex.matcher(itemString);
-    	
-    	if (itemString.startsWith(fragment) || m.matches()) {
-    		TableItem item = new TableItem(table, SWT.NONE);
-    		item.setText(items.get(i).toString());
-    		item.setImage(XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif"));
-    		item.setData(items.get(i));
-    	}
-    }
-    
-    table.select(0);
-  }
-  
-  boolean checkForAnonymousType(Element element)
-  {
-    /*
-     * Using Ed's model to check boolean isAnonymous = false;
-     * 
-     * XSDConcreteComponent component =
-     * getXSDSchema().getCorrespondingComponent(element); if (component
-     * instanceof XSDElementDeclaration) { XSDElementDeclaration xsdElem =
-     * (XSDElementDeclaration)component; isAnonymous =
-     * xsdElem.isSetAnonymousTypeDefinition(); } return isAnonymous;
-     */
-    XSDDOMHelper helper = new XSDDOMHelper();
-    boolean isAnonymous = false;
-    Node aNode =
-    helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-    if (aNode != null)
-     {
-      return true;
-    }
-    aNode = helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-    if (aNode != null)
-     {
-      isAnonymous = true;
-    }
-    return isAnonymous;
-  }
-
-  void updateElementToAnonymous(Element element, String xsdType)
-  {
-    String prefix = element.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    XSDDOMHelper.updateElementToNotAnonymous(element);
-    boolean hasChildrenElements = hasElementChildren(element);
-    Element childNode = null;
-    if (xsdType.equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-    {
-      childNode = element.getOwnerDocument().createElementNS(
-          XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001,
-          prefix + XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-    }
-    else if (xsdType.equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG))
-    {
-      childNode = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-      
-      Element restrictionNode = element.getOwnerDocument().createElementNS(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, prefix + XSDConstants.RESTRICTION_ELEMENT_TAG);
-      restrictionNode.setAttribute(XSDConstants.BASE_ATTRIBUTE, prefix + "string");
-      childNode.appendChild(restrictionNode);      
-    }
-    if (childNode != null)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Node annotationNode = helper.getChildNode(element, XSDConstants.ANNOTATION_ELEMENT_TAG);
-      if (annotationNode == null)
-      {
-        Node firstChild = element.getFirstChild();
-        element.insertBefore(childNode, firstChild);
-      }
-      else
-      {
-        Node nextSibling = annotationNode.getNextSibling();
-        element.insertBefore(childNode, nextSibling);
-      }
-      XSDDOMHelper.formatChild(childNode);
-    }
-  }
-
-  boolean isSTAnonymous(Element element)
-  {
-    XSDDOMHelper helper = new XSDDOMHelper();
-    Node aNode = helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-    if (aNode != null)
-    {
-      if (XSDDOMHelper.inputEquals(aNode, XSDConstants.SIMPLETYPE_ELEMENT_TAG, false))
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-
-  boolean isCTAnonymous(Element element)
-  {
-    XSDDOMHelper helper = new XSDDOMHelper();
-    Node aNode = helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-    if (aNode != null)
-     {
-      if (XSDDOMHelper.inputEquals(aNode, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, false))
-       {
-        return true;
-      }
-    }
-    return false;
-  }
-
-  XSDTypeDefinition getAnonymousTypeDefinition(Element element)
-  {
-    XSDDOMHelper helper = new XSDDOMHelper();
-    Node typeDefinitionNode =
-    helper.getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-    if (typeDefinitionNode == null)
-     {
-      typeDefinitionNode = helper.getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-    }
-    if (typeDefinitionNode != null)
-     {
-      XSDConcreteComponent component =
-      xsdSchema.getCorrespondingComponent(typeDefinitionNode);
-      if (component instanceof XSDTypeDefinition)
-       {
-        return (XSDTypeDefinition) component;
-      }
-    }
-    return null;
-  }
-  
-  public java.util.List getBuiltInTypeNamesList()
-  {
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    return helper.getBuiltInTypeNamesList();
-  }
-
-  public java.util.List getUserSimpleTypeNamesList()
-  {
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    return helper.getUserSimpleTypeNamesList();
-  }
-  
-  public java.util.List getUserComplexTypeNamesList()
-  {
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    return helper.getUserComplexTypeNamesList();
-  }
-  
-  protected boolean hasElementChildren(Node parentNode)
-  {
-    boolean hasChildrenElements = false;
-    if (parentNode != null && parentNode.hasChildNodes())
-    {
-      NodeList nodes = parentNode.getChildNodes();
-      for (int i = 0; i < nodes.getLength(); i++)
-      {
-        if (nodes.item(i) instanceof Element)
-        {
-          hasChildrenElements = true;
-          break;
-        }
-      }
-    }
-    return hasChildrenElements;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesSection.java
deleted file mode 100644
index c7b65fe..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesSection.java
+++ /dev/null
@@ -1,359 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionDialog;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDComponentSelectionProvider;
-import org.eclipse.wst.xsd.ui.internal.dialogs.types.xsd.XSDSetTypeHelper;
-import org.eclipse.wst.xsd.ui.internal.widgets.TypeSection;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-public class TypesSection extends AbstractSection
-{
-  Text typeCombo;
-  Button button;
-
-  String type;
-  Object typeObject;
-  CLabel typeLabel;
-  Table table;
-  TypeSection typeSection;
-  boolean showAnonymous = true;
-  String previousStringType = "";
-  boolean isAnonymous;
-  int previousType;
-  boolean showComplexTypes = true;
-  
-  /**
-   * 
-   */
-  public TypesSection()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		composite = getWidgetFactory().createFlatFormComposite(parent);
-    
-		FormData data;
-
-		typeCombo = getWidgetFactory().createText(composite, ""); //$NON-NLS-1$
-    typeCombo.setEditable(false);
-		typeCombo.addListener(SWT.Modify, this);
-    
-    button = getWidgetFactory().createButton(composite, "", SWT.PUSH); //$NON-NLS-1$
-    button.setImage(XSDEditorPlugin.getXSDImage("icons/browsebutton.gif")); //$NON-NLS-1$
-
-    typeLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_LABEL_TYPE") + ":"); //$NON-NLS-1$
-
-    button.addSelectionListener(this);
-		FormData data2 = new FormData();
-		data2.left = new FormAttachment(100, -rightMarginSpace + 2);
-		data2.right = new FormAttachment(100,0);
-		data2.top = new FormAttachment(typeCombo, 0, SWT.CENTER);
-		button.setLayoutData(data2);
-
-    data = new FormData();
-    data.left = new FormAttachment(0, 100);
-    data.right = new FormAttachment(button, 0);
-    typeCombo.setLayoutData(data);
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-	  Object input = getInput();
-    if (isReadOnly)
-    {
-      composite.setEnabled(false);
-    }
-    else
-    {
-      composite.setEnabled(true);
-    }
-	  typeCombo.setText(""); //$NON-NLS-1$
-	  if (input != null)
-	  {
-	    Element element = null;
-	    if (input instanceof XSDElementDeclaration)
-	    {
-        XSDElementDeclaration xsdElem = (XSDElementDeclaration)input;
-	      element = xsdElem.getElement();
-        XSDTypeDefinition typeDef = xsdElem.getTypeDefinition();
-        boolean isAnonymous = xsdElem.isAbstract();
-
-        if (isAnonymous)
-        {
-          typeCombo.setText("**anonymous**"); //$NON-NLS-1$
-        }
-        else
-        {
-          String typeName = ""; //$NON-NLS-1$
-          if (typeDef != null)
-          {
-            typeName = typeDef.getQName(getSchema());
-            if (typeName == null)
-            {
-              typeName = ""; //$NON-NLS-1$
-            }
-            typeCombo.setText(typeName);
-          }
-          else
-          {
-            typeCombo.setText(XSDEditorPlugin.getXSDString("_UI_NO_TYPE")); //$NON-NLS-1$
-          }
-        }
-	    }
-	    else if (input instanceof XSDAttributeDeclaration)
-	    {
-	      element = ((XSDAttributeDeclaration)input).getElement();
-	    }
-      else if (input instanceof XSDAttributeUse)
-      {
-        XSDAttributeUse attributeUse = (XSDAttributeUse)input;
-        XSDAttributeDeclaration attribute = attributeUse.getAttributeDeclaration();
-        element = attribute.getElement();
-      }
-	    else if (input instanceof Element)
-	    {
-	      element = (Element)input;
-	    }
-//      else if (input instanceof XSDSimpleTypeDefinition)
-//      {
-//	      XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)input;
-//	      Element simpleTypeElement = st.getElement();
-//        if (st.getVariety() == XSDVariety.LIST_LITERAL)
-//        {
-//	        element = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.LIST_ELEMENT_TAG);
-//          String result = element.getAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE);
-//          if (result == null)
-//          {
-//            typeCombo.setText("**anonymous**");
-//          }
-//          else
-//          {
-//            typeCombo.setText(result);
-//          }
-//          typeLabel.setText("Item Type:");
-//        }
-//        else if (st.getVariety() == XSDVariety.ATOMIC_LITERAL)
-//        {
-//          typeLabel.setText("Base Type:");
-//	        element = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.RESTRICTION_ELEMENT_TAG);
-//	        if (element == null)
-//	        {
-//	          element = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.EXTENSION_ELEMENT_TAG);
-//	          if (element == null) return;
-//	        }
-//
-//          String result = element.getAttribute(XSDConstants.BASE_ATTRIBUTE);
-//          if (result == null)
-//          {
-//            typeCombo.setText("");
-//          }
-//          else
-//          {
-//            typeCombo.setText(result);
-//          }
-//        }
-//        return;
-//      }
-      
-      typeLabel.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_TYPE") + ":"); //$NON-NLS-1$
-	    if (element != null)
-	    {
-        boolean isAnonymous = checkForAnonymousType(element);
-        String result = element.getAttribute(XSDConstants.TYPE_ATTRIBUTE);
-	      if (isAnonymous)
-	      {
-	        typeCombo.setText("**anonymous**"); //$NON-NLS-1$
-	      }
-	      if (result != null && result.equals("")) //$NON-NLS-1$
-	      {
-	        typeCombo.setText(XSDEditorPlugin.getXSDString("_UI_NO_TYPE")); //$NON-NLS-1$
-	      }
-	      else if (result != null)
-	      {
-	        typeCombo.setText(result);
-	      }
-
-	    }
-	  }
-	}
-
-  /**
-   * @see org.eclipse.swt.events.SelectionListener#widgetSelected(SelectionEvent)
-   */
-  public void widgetSelected(SelectionEvent e)
-  {
-    if (e.widget == button)
-    {
-/*        
-	    Shell shell = Display.getCurrent().getActiveShell();
-	    Object input = getInput();
-	    Element element = ((XSDConcreteComponent)getInput()).getElement();
-	    TypesDialog dialog;
-
-//	    if (input instanceof XSDSimpleTypeDefinition)
-//	    {
-//	      XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)input;
-//	      Element simpleTypeElement = st.getElement();
-//	      if (st.getVariety() == XSDVariety.LIST_LITERAL)
-//	      {
-//	        Element listElement = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.LIST_ELEMENT_TAG);
-//	        dialog = new TypesDialog(shell, listElement, XSDConstants.ITEMTYPE_ATTRIBUTE, xsdSchema);
-//          dialog.showComplexTypes = false;
-//        }
-//        else if (st.getVariety() == XSDVariety.ATOMIC_LITERAL)
-//        {
-//          Element derivedByElement = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.RESTRICTION_ELEMENT_TAG);
-//          if (derivedByElement == null)
-//          {
-//            derivedByElement = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.EXTENSION_ELEMENT_TAG);
-//            if (derivedByElement == null) return;
-//          }
-//          if (derivedByElement != null)
-//          {
-//            dialog = new TypesDialog(shell, derivedByElement, XSDConstants.BASE_ATTRIBUTE, xsdSchema);
-//          }
-//          else
-//          {
-//            return;
-//          }
-//        }
-//        else
-//        {
-//          dialog = new TypesDialog(shell, element, "type", xsdSchema);
-//        }
-//	    }
-//	    else
-//	    {
-	      dialog = new TypesDialog(shell, element, "type", xsdSchema); //$NON-NLS-1$
-//	    }
-
-	    dialog.setBlockOnOpen(true);
-	    dialog.create();
-	    int result = dialog.open();
-	    
-	    if (result == Window.OK)
-	    {
-	      Object typeObject = dialog.getType();
-//		    if (input instanceof XSDSimpleTypeDefinition)
-//		    {
-//		      XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)input;
-//		      Element simpleTypeElement = st.getElement();
-//	        Element listElement = (Element)domHelper.getChildNode(simpleTypeElement, XSDConstants.LIST_ELEMENT_TAG);
-//
-//  	      beginRecording("ItemType Change", element);
-//          listElement.setAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE, (String)typeObject);
-//          endRecording(element);
-//		    }
-	    }
-*/        
-        Shell shell = Display.getCurrent().getActiveShell();
-        IFile currentIFile = ((IFileEditorInput)getActiveEditor().getEditorInput()).getFile();
-        
-        Object input = getInput();
-        XSDSchema schema = null;
-        if (input instanceof XSDConcreteComponent) {
-            schema = ((XSDConcreteComponent) input).getSchema();
-        }
-        
-        XSDComponentSelectionProvider provider = new XSDComponentSelectionProvider(currentIFile, schema);
-        XSDComponentSelectionDialog dialog = new XSDComponentSelectionDialog(shell, "Set Type", provider);  // TODO: Externalize This
-        if (input instanceof XSDAttributeDeclaration)
-        {
-          provider.showComplexTypes(false);
-        }
-        provider.setDialog(dialog);
-        
-        dialog.setBlockOnOpen(true);
-        dialog.create();
-
-        if (dialog.open() == Window.OK) {
-            Element element = ((XSDConcreteComponent)getInput()).getElement();
-            XSDSetTypeHelper helper = new XSDSetTypeHelper(currentIFile, schema);
-            helper.setType(element, "type", dialog.getSelection());
-        }        
-
-//      refresh();
-    }
-  }
-
-  
-  
-  boolean checkForAnonymousType(Element element)
-  {
-    /* Using Ed's model to check
-     boolean isAnonymous = false;
-
-     XSDConcreteComponent component = getXSDSchema().getCorrespondingComponent(element);
-     if (component instanceof XSDElementDeclaration)
-     {
-     XSDElementDeclaration xsdElem = (XSDElementDeclaration)component;
-     isAnonymous = xsdElem.isSetAnonymousTypeDefinition();
-     }
-     return isAnonymous;
-     */
-
-    boolean isAnonymous = false;
-
-    Node aNode = getDomHelper().getChildNode(element, XSDConstants.SIMPLETYPE_ELEMENT_TAG);
-    if (aNode != null)
-     {
-      return true;
-    }
-    aNode = getDomHelper().getChildNode(element, XSDConstants.COMPLEXTYPE_ELEMENT_TAG);
-    if (aNode != null)
-     {
-      isAnonymous = true;
-    }
-    return isAnonymous;
-  }
-
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesSectionDescriptor.java
deleted file mode 100644
index af0e55b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/TypesSectionDescriptor.java
+++ /dev/null
@@ -1,134 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class TypesSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public TypesSectionDescriptor()
-  {
-    super();
-  }
-
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getId()
-   */
-  public String getId()
-  {
-    return "com.ibm.xsdeditor.section.types";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDElementDeclaration.class);
-    list.add(XSDAttributeDeclaration.class);
-    list.add(XSDAttributeUse.class);
-    list.add(XSDSimpleTypeDefinition.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new TypesSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDElementDeclaration)
-      {
-        XSDElementDeclaration elementDeclaration = (XSDElementDeclaration)object;
-        if (elementDeclaration.isElementDeclarationReference())
-        {
-          return false;
-        }
-        return true;
-      }
-      else if (object instanceof XSDAttributeDeclaration)
-      {
-        XSDAttributeDeclaration attr = (XSDAttributeDeclaration)object;
-        if (attr.isAttributeDeclarationReference())
-        {
-          return false;
-        }
-        return true;
-      }
-      else if (object instanceof XSDAttributeUse)
-      {
-        XSDAttributeUse attributeUse = (XSDAttributeUse)object;
-        XSDAttributeDeclaration attribute = attributeUse.getAttributeDeclaration();
-        Element element = attributeUse.getElement();
-        if (inputEquals(element, XSDConstants.ATTRIBUTE_ELEMENT_TAG, false))
-        {
-          return true;
-        }
-        else
-        {
-          return false;
-        }
-
-      }
-//      else if (object instanceof XSDSimpleTypeDefinition)
-//      {
-//        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)object;
-//        if (st.getVariety() == XSDVariety.LIST_LITERAL)
-//        {
-//          return true;
-//        }
-//        else if (st.getVariety() == XSDVariety.ATOMIC_LITERAL)
-//        {
-//          return true;
-//        }
-//      }
-    }
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ValueSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ValueSection.java
deleted file mode 100644
index c24f79d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ValueSection.java
+++ /dev/null
@@ -1,118 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertyConstants;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDEnumerationFacet;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class ValueSection extends AbstractSection
-{
-  Text valueText;
-  /**
-   * 
-   */
-  public ValueSection()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.wst.common.ui.properties.ITabbedPropertySection#createControls(org.eclipse.swt.widgets.Composite, org.eclipse.wst.common.ui.properties.TabbedPropertySheetWidgetFactory)
-	 */
-	public void createControls(Composite parent, TabbedPropertySheetWidgetFactory factory)
-	{
-		super.createControls(parent, factory);
-		Composite composite =	getWidgetFactory().createFlatFormComposite(parent);
-		FormData data;
-
-		valueText = getWidgetFactory().createText(composite, ""); //$NON-NLS-1$
-		data = new FormData();
-		data.left = new FormAttachment(0, 100);
-		data.right = new FormAttachment(100, 0);
-		data.top = new FormAttachment(0, 0);
-		valueText.setLayoutData(data);
-		valueText.addListener(SWT.Modify, this);
-
-		CLabel valueLabel = getWidgetFactory().createCLabel(composite, XSDEditorPlugin.getXSDString("_UI_VALUE") + ":"); //$NON-NLS-1$
-		data = new FormData();
-		data.left = new FormAttachment(0, 0);
-		data.right = new FormAttachment(valueText, -ITabbedPropertyConstants.HSPACE);
-		data.top = new FormAttachment(valueText, 0, SWT.CENTER);
-		valueLabel.setLayoutData(data);
-		
-//		listener.startListeningForEnter(valueText);
-//		listener.startListeningTo(valueText);
-	}
-
-	/*
-	 * @see org.eclipse.wst.common.ui.properties.view.ITabbedPropertySection#refresh()
-	 */
-	public void refresh()
-	{
-	  setListenerEnabled(false);
-	  Object input = getInput();
-	  valueText.setText(""); //$NON-NLS-1$
-	  if (input != null)
-	  {
-	    if (input instanceof XSDEnumerationFacet)
-	    {
-	      XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)input;
-	      Element element = enumFacet.getElement();
-        String value = element.getAttribute(XSDConstants.VALUE_ATTRIBUTE);
-        
-        if (value != null)
-        {
-          valueText.setText(value);
-        }
-	    }
-	  }
-	  setListenerEnabled(true);
-	}
-	
-  public void doHandleEvent(Event event)
-  {
-    if (event.widget == valueText)
-    {
-      Object input = getInput();
-	    if (input instanceof XSDEnumerationFacet)
-	    {
-	      XSDEnumerationFacet enumFacet = (XSDEnumerationFacet)input;
-	      Element element = enumFacet.getElement();
-        
-        beginRecording(XSDEditorPlugin.getXSDString("_UI_ENUM_VALUE_CHANGE"), element); //$NON-NLS-1$
-        String value = valueText.getText();
-        element.setAttribute(XSDConstants.VALUE_ATTRIBUTE, value);
-        endRecording(element);
-	    }
-    }
-  }
-
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISection#shouldUseExtraSpace()
-   */
-  public boolean shouldUseExtraSpace()
-  {
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ValueSectionDescriptor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ValueSectionDescriptor.java
deleted file mode 100644
index 7fd5517..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/ValueSectionDescriptor.java
+++ /dev/null
@@ -1,82 +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.xsd.ui.internal.properties.section;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ISection;
-import org.eclipse.xsd.XSDEnumerationFacet;
-
-public class ValueSectionDescriptor extends AbstractSectionDescriptor
-{
-  /**
-   * 
-   */
-  public ValueSectionDescriptor()
-  {
-    super();
-  }
-  
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getInputTypes()
-   */
-  public List getInputTypes()
-  {
-    List list = new ArrayList();
-    list.add(XSDEnumerationFacet.class);
-    return list;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getSectionClass()
-   */
-  public ISection getSectionClass()
-  {
-    return new ValueSection();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#getTargetTab()
-   */
-  public String getTargetTab()
-  {
-    return "com.ibm.xmlwebservices.general";
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptor#appliesTo(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-   */
-  public boolean appliesTo(IWorkbenchPart part, ISelection selection)
-  {
-    Object object = null;
-    if (selection instanceof StructuredSelection)
-    {
-      StructuredSelection structuredSelection = (StructuredSelection)selection;
-      object = structuredSelection.getFirstElement();
-      if (object instanceof XSDEnumerationFacet)
-      {
-        return true;
-      }
-    }
-    return false;
-  }
-  
-  public String getAfterSection()
-  {
-    return "com.ibm.xsdeditor.section.name";
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDSectionDescriptorProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDSectionDescriptorProvider.java
deleted file mode 100644
index 7b9e43c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDSectionDescriptorProvider.java
+++ /dev/null
@@ -1,57 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.wst.common.ui.properties.ISectionDescriptor;
-import org.eclipse.wst.common.ui.properties.ISectionDescriptorProvider;
-
-
-public class XSDSectionDescriptorProvider implements ISectionDescriptorProvider
-{
-  /**
-   * 
-   */
-  public XSDSectionDescriptorProvider()
-  {
-    super();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.wst.common.ui.properties.ISectionDescriptorProvider#getSectionDescriptors()
-   */
-  public ISectionDescriptor[] getSectionDescriptors()
-  {
-    ISectionDescriptor[] descriptors = new ISectionDescriptor[18];
-    descriptors[0] = new NameSectionDescriptor();
-    descriptors[1] = new TypesSectionDescriptor();
-    descriptors[2] = new OtherAttributesSectionDescriptor();
-    descriptors[3] = new AttributesViewSectionDescriptor();
-    descriptors[4] = new ModelGroupSectionDescriptor();
-    descriptors[5] = new NamespaceProcessContentsSectionDescriptor();
-    descriptors[6] = new ReferenceSectionDescriptor();
-    descriptors[7] = new ComplexTypeSectionDescriptor();
-    descriptors[8] = new ValueSectionDescriptor();
-    descriptors[9] = new PatternSectionDescriptor();
-    descriptors[10] = new AnnotationSectionDescriptor();
-    descriptors[11] = new SimpleTypeSectionDescriptor();
-    descriptors[12] = new FacetsSectionDescriptor();
-    descriptors[13] = new EnumerationsSectionDescriptor();
-    descriptors[14] = new NamespaceSectionDescriptor();
-    descriptors[15] = new SchemaLocationDescriptor();
-    descriptors[16] = new NamespaceAndSchemaLocationDescriptor();
-    descriptors[17] = new MinMaxSectionDescriptor();
-    
-//  descriptors[18] = new SimpleTypeUnionSectionDescriptor();
-//  descriptors[19] = new FixedDefaultSectionDescriptor();    
-    return descriptors;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDSectionLabelProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDSectionLabelProvider.java
deleted file mode 100644
index d5c6578..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDSectionLabelProvider.java
+++ /dev/null
@@ -1,169 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.jface.text.TextSelection;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.XSDTextEditor;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.w3c.dom.Element;
-
-
-public class XSDSectionLabelProvider extends LabelProvider
-{
-  /**
-   * 
-   */
-  public XSDSectionLabelProvider()
-  {
-    super();
-  }
-
-	/**
-	 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-	 */
-	public Image getImage(Object object)
-	{
-		if (object == null || object.equals(StructuredSelection.EMPTY)) {
-			return null;
-		}
-    Image result = null;           
-    if (object instanceof StructuredSelection)
-    {
-      Object selected = ((StructuredSelection)object).getFirstElement();
-      
-      if (selected instanceof XSDConcreteComponent)
-      {
-        return XSDTextEditor.getLabelProvider().getImage((XSDConcreteComponent)selected);
-      }
-      
-//      selected  = typeMapper.remapObject(selected);
-//      ModelAdapter modelAdapter = adapterFactory.getAdapter(selected);
-//      if (modelAdapter != null)
-//      {
-//        result = (Image)modelAdapter.getProperty(selected, ModelAdapter.IMAGE_PROPERTY);     
-//      }
-    }
-    return result;
-	}
-
-	/**
-	 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-	 */
-	public String getText(Object object)
-	{
-		if (object == null || object.equals(StructuredSelection.EMPTY))
-    {
-			return "No items selected";
-		}
-    
-    String result = null;
-
-    boolean isReference = false;
-    Object selected = null;
-    if (object instanceof StructuredSelection)
-    {
-      selected = ((StructuredSelection)object).getFirstElement();
-      
-      if (selected instanceof XSDConcreteComponent)
-      {
-        if (selected instanceof XSDElementDeclaration)
-        {
-          XSDElementDeclaration xsdElementDeclaration = (XSDElementDeclaration)selected;
-          if (xsdElementDeclaration.isElementDeclarationReference())
-          {
-            isReference = true;
-          }
-        }
-        else if (selected instanceof XSDAttributeDeclaration)
-        {
-          if (((XSDAttributeDeclaration)selected).isAttributeDeclarationReference())
-          {
-            isReference = true;
-          }
-        }
-        else if (selected instanceof XSDModelGroupDefinition)
-        {
-          if (((XSDModelGroupDefinition)selected).isModelGroupDefinitionReference())
-          {
-            isReference = true;
-          }
-        }
-        StringBuffer sb = new StringBuffer();
-        Element element = ((XSDConcreteComponent)selected).getElement();
-        if (element != null)
-        {
-          sb.append(((XSDConcreteComponent)selected).getElement().getLocalName());
-          
-          if (isReference)
-          {
-            sb.append(" ");
-            sb.append(XSDEditorPlugin.getXSDString("_UI_PAGE_HEADING_REFERENCE"));
-          }
-          
-          if (!(element instanceof XMLNode))
-          {
-            sb.append(" (" + XSDEditorPlugin.getXSDString("_UI_LABEL_READ_ONLY") + ")");   //$NON-NLS-1$
-          }
-          return sb.toString();
-        }
-        else
-        {
-          return "(" + XSDEditorPlugin.getXSDString("_UI_LABEL_READ_ONLY") + ")";  //$NON-NLS-1$
-        }
-      }
-
-//      selected  = typeMapper.remapObject(selected);
-//      
-//       ModelAdapter modelAdapter = adapterFactory.getAdapter(selected);
-//       if (modelAdapter != null)
-//       {                       
-//         // result = (String)modelAdapter.getProperty(selected, ModelAdapter.LABEL_PROPERTY);
-//         result = ((WSDLElement)selected).getElement().getLocalName();
-//       }
-      if (object instanceof Element)
-      {
-        return ((Element)object).getLocalName();
-      }
-    }
-    else if (object instanceof TextSelection)
-    {
-    }
-    
-
-    return result;
-	}
-
-	/**
-	 * Determine if a multiple object selection has been passed to the 
-	 * label provider. If the objects is a IStructuredSelection, see if 
-	 * all the objects in the selection are the same and if so, we want
-	 * to provide labels for the common selected element.
-	 * @param objects a single object or a IStructuredSelection.
-	 * @param multiple first element in the array is true if there is multiple
-	 * unequal selected elements in a IStructuredSelection.
-	 * @return the object to get labels for.
-	 */
-	private Object getObject(Object objects, boolean multiple[]) {
-		Assert.isNotNull(objects);
-		Object object = null;
-		return object;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDTabbedPropertySheetPage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDTabbedPropertySheetPage.java
deleted file mode 100644
index 0d4f86e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDTabbedPropertySheetPage.java
+++ /dev/null
@@ -1,140 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.jface.text.TextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.wst.common.ui.properties.ITabbedPropertySheetPageContributor;
-import org.eclipse.wst.common.ui.properties.TabbedPropertySheetPage;
-import org.eclipse.wst.sse.ui.internal.ViewerSelectionManager;
-import org.eclipse.wst.xsd.ui.internal.XSDSelectionManager;
-import org.eclipse.wst.xsd.ui.internal.graph.model.Category;
-import org.eclipse.wst.xsd.ui.internal.provider.CategoryAdapter;
-import org.eclipse.wst.xsd.ui.internal.provider.XSDModelAdapterFactoryImpl;
-import org.eclipse.xsd.XSDSchema;
-
-public class XSDTabbedPropertySheetPage extends TabbedPropertySheetPage
-  implements ISelectionChangedListener, INotifyChangedListener 
-{
-  private ViewerSelectionManager fViewerSelectionManager;
-  private XSDSelectionManager selectionManager;
-  private XSDModelAdapterFactoryImpl adapterFactory;
-  /**
-   * @param tabbedPropertySheetPageContributor
-   */
-  public XSDTabbedPropertySheetPage(ITabbedPropertySheetPageContributor tabbedPropertySheetPageContributor)
-  {
-    super(tabbedPropertySheetPageContributor);
-  }
-  
-  XSDSchema xsdSchema;
-  public void setXSDSchema(XSDSchema xsdSchema)
-  {
-    this.xsdSchema = xsdSchema;
-  }
-  
-  public void setXSDModelAdapterFactory(XSDModelAdapterFactoryImpl adapterFactory) {
-    // disconnect from old one
-    if (adapterFactory != null) {
-      adapterFactory.removeListener(this);
-    }
-
-    this.adapterFactory = adapterFactory;
-
-    // connect to new one
-    if (adapterFactory != null) {
-      adapterFactory.addListener(this);
-    }
-  }
-  
-  public void setSelectionManager(XSDSelectionManager newSelectionManager)
-  { 
-    // disconnect from old one
-    if (selectionManager != null)
-    {                                                        
-      selectionManager.removeSelectionChangedListener(this);  
-    }
-
-    selectionManager = newSelectionManager;
-
-    // connect to new one
-    if (selectionManager != null)
-    {
-      selectionManager.addSelectionChangedListener(this);  
-    }
-  }    
-
-  public void selectionChanged(IWorkbenchPart part, ISelection selection)
-  {
-    // override for category
-    if (selection != null)
-    {
-      if (selection instanceof StructuredSelection)
-      {
-        StructuredSelection structuredSelection = (StructuredSelection)selection;
-        if (structuredSelection.isEmpty())
-        {
-          return;
-        }
-        Object obj = structuredSelection.getFirstElement();        
-        if (obj instanceof CategoryAdapter)
-        {
-          selection = new StructuredSelection(((CategoryAdapter)obj).getXSDSchema());
-        }
-        else if (obj instanceof Category)
-        {
-          selection = new StructuredSelection(((Category)obj).getXSDSchema());
-        }  
-      }
-      else if (selection instanceof TextSelection)
-      {
-        return;
-      }
-    }
-    super.selectionChanged(part, selection);
-  }
-	
-  public void selectionChanged(SelectionChangedEvent event)
-  {
-    if (!event.getSelection().isEmpty())
-    {
-      selectionChanged(getSite().getWorkbenchWindow().getActivePage().getActivePart(), event.getSelection());
-      //super.selectionChanged(getSite().getWorkbenchWindow().getActivePage().getActivePart(), event.getSelection());
-    }
-  }
-  
-  public void dispose()
-  {
-    if (selectionManager != null)
-    {
-      selectionManager.removeSelectionChangedListener(this);
-    }
-    if (adapterFactory != null)
-    {
-      adapterFactory.removeListener(this);
-    }
-    super.dispose();
-  }
-  
-  public void notifyChanged(Notification notification)
-  {
-    if (getCurrentTab() != null)
-    {
-      refresh();
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDWorkbook.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDWorkbook.java
deleted file mode 100644
index 9c43704..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDWorkbook.java
+++ /dev/null
@@ -1,97 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.swt.custom.CTabFolder;
-import org.eclipse.swt.custom.CTabItem;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.widgets.Composite;
-
-public class XSDWorkbook {
-  private CTabFolder tabFolder;
-  private CTabItem selectedTab;
-/**
- * Workbook constructor comment.
- */
-public XSDWorkbook(Composite parent, int style) {
-  tabFolder = new CTabFolder(parent, style);
-
-  tabFolder.addSelectionListener(new SelectionAdapter() {
-    public void widgetSelected(SelectionEvent event) {
-      CTabItem newSelectedTab = (CTabItem) event.item;
-      if (selectedTab == newSelectedTab) // Do nothing if the selection did not change.
-        return;
-
-      if (selectedTab != null && (!selectedTab.isDisposed())) {
-        XSDWorkbookPage selectedPage = getWorkbookPage(selectedTab);
-        if (!selectedPage.deactivate()) {
-          // tabFolder.setSelection(new CTabItem[] {selectedTab});
-          tabFolder.setSelection(selectedTab);
-          return;
-        }
-      }
-
-      selectedTab = newSelectedTab;
-      XSDWorkbookPage newSelectedPage = getWorkbookPage(newSelectedTab);
-      if (newSelectedPage != null)
-      newSelectedPage.activate();
-
-    }
-  });
-
-}
-public XSDWorkbookPage getSelectedPage() {
-
-  int index = tabFolder.getSelectionIndex();
-  if (index == -1) // When can this be -1
-    return null;
-
-  CTabItem selectedItem = tabFolder.getItem(index);
-
-  return (XSDWorkbookPage)selectedItem.getData();
-}
-public CTabFolder getTabFolder() {
-
-  return tabFolder;
-
-}
-protected XSDWorkbookPage getWorkbookPage(CTabItem item) {
-
-  try {
-    return (XSDWorkbookPage) item.getData();
-  } catch (ClassCastException e) {
-    return null;
-  }
-}
-public XSDWorkbookPage[] getWorkbookPages() {
-
-  CTabItem[] tabItems = tabFolder.getItems();
-  int nItems = tabItems.length;
-  XSDWorkbookPage[] workbookPages = new XSDWorkbookPage[nItems];
-  for (int i = 0; i < nItems; i++)
-    workbookPages[i] = getWorkbookPage(tabItems[i]);
-  return workbookPages;
-}
-public void setSelectedPage (XSDWorkbookPage workbookPage)
-{
-  CTabItem newSelectedTab = workbookPage.getTabItem();
-
-  if (selectedTab == newSelectedTab)
-    return;
-
-  selectedTab = newSelectedTab;
-  workbookPage.activate();
-  // tabFolder.setSelection(new CTabItem[] {newSelectedTab});
-  tabFolder.setSelection(newSelectedTab);
-
-}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDWorkbookPage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDWorkbookPage.java
deleted file mode 100644
index f865afa..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/properties/section/XSDWorkbookPage.java
+++ /dev/null
@@ -1,51 +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.xsd.ui.internal.properties.section;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CTabFolder;
-import org.eclipse.swt.custom.CTabItem;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-public abstract class XSDWorkbookPage {
-  public CTabItem tabItem;
-/**
- * WorkbookPage constructor comment.
- */
-public XSDWorkbookPage(XSDWorkbook parent) {
-  CTabFolder folder = parent.getTabFolder();
-  tabItem = new CTabItem(folder,SWT.NONE);
-  tabItem.setData(this);
-}
-public void activate() {
-
-  if (tabItem.getControl() == null)
-    tabItem.setControl(createControl(tabItem.getParent()));
-      
-}
-protected abstract Control createControl (Composite parent);
-public boolean deactivate() {
-  return true;
-}
-public void dispose() {
-
-  if (tabItem == null)
-    return;
-
-  CTabItem oldItem = tabItem;
-  tabItem = null;
-  oldItem.dispose();
-}
-public CTabItem getTabItem() {
-  return tabItem;
-}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/CategoryAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/CategoryAdapter.java
deleted file mode 100644
index 3182e9a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/CategoryAdapter.java
+++ /dev/null
@@ -1,168 +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.xsd.ui.internal.provider;
-
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.edit.provider.IChangeNotifier;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.xsd.XSDSchema;
-
-
-public class CategoryAdapter // extends ItemProvider
-  implements ILabelProvider, IChangeNotifier, ITreeContentProvider
-{
-  
-  protected String text;
-
-  /**
-   * This is the image returned by {@link #getImage getImage(Object)}.
-   */
-  protected Image image;
-
-  /**
-   * This is the parent returned by {@link #getParent getParent(Object)}.
-   */
-  protected Object parent;
-
-  public CategoryAdapter(String label, Image image, Collection children, XSDSchema xsdSchema, int groupType)
-  {
-//    super(label, image, xsdSchema);
-    this.text = label;
-    this.image = image;
-    this.parent = xsdSchema;
-    this.xsdSchema = xsdSchema;
-    this.children = children;
-    this.groupType = groupType;
-  }
-  
-  public final static int ATTRIBUTES = 1;
-  public final static int ELEMENTS = 2;
-  public final static int TYPES = 3;
-  public final static int GROUPS = 5;
-  public final static int DIRECTIVES = 6;
-  public final static int NOTATIONS = 7;
-  public final static int ATTRIBUTE_GROUPS = 8;
-  public final static int IDENTITY_CONSTRAINTS = 9;
-  public final static int ANNOTATIONS = 10;
-                                 
-  protected int groupType;
-  Collection children;
-  XSDSchema xsdSchema;
-  
-  public XSDSchema getXSDSchema()
-  {
-    return xsdSchema;
-  }
-  
-  public int getGroupType()
-  {
-    return groupType;
-  }   
-
-//  public boolean hasChildren(Object o)
-//  {
-//    return !children.isEmpty();
-//  }
-
-//  public Collection getChildren(Object o)
-//  {
-//    return children;
-//  }
-  
-  public Image getImage(Object element)
-  {
-    return image;
-  }
-  
-  public String getText(Object object)
-  {
-    // return object.toString();
-    return text;
-  }
-  
-  public void addListener(ILabelProviderListener listener)
-  {
-    
-  }
-  
-  public boolean isLabelProperty(Object element, String property)
-  {
-    return false;
-  }
-
-  public void removeListener(ILabelProviderListener listener)
-  {
-    
-  }
-
-  public void fireNotifyChanged(Notification notification)
-  {
-    
-  }
-
-  /**
-   * This adds another listener.
-   */
-  public void addListener(INotifyChangedListener notifyChangedListener)
-  {
-    
-  }
-
-  /**
-   * This removes a listener.
-   */
-  public void removeListener(INotifyChangedListener notifyChangedListener)
-  {
-    
-  }
-
-  public void dispose()
-  {
-    
-  }
-  
-  public Object[] getElements(Object inputElement)
-  {
-    return getChildren(inputElement);
-  }
-
-  public Object[] getChildren(Object parentElement)
-  {
-    return children.toArray();
-  }
-  
-  public void setChildren(Collection list)
-  {
-    children = list;
-  }
-
-  public Object getParent(Object element)
-  {
-    return xsdSchema;
-  }
-  
-  public boolean hasChildren(Object element)
-  {
-    return true;
-  }
-
-  public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
-  {
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAbstractAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAbstractAdapter.java
deleted file mode 100644
index 8233c5e..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAbstractAdapter.java
+++ /dev/null
@@ -1,165 +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.xsd.ui.internal.provider;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.edit.provider.ChangeNotifier;
-import org.eclipse.emf.edit.provider.IChangeNotifier;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.graphics.Image;
-
-public class XSDAbstractAdapter extends AdapterImpl
-  implements ITreeContentProvider, ILabelProvider, IChangeNotifier
-{
-
-  protected AdapterFactory adapterFactory;
-  /**
-   * 
-   */
-  public XSDAbstractAdapter(AdapterFactory adapterFactory)
-  {
-    super();
-    this.adapterFactory = adapterFactory;
-  }
-  
-  /**
-   * The adapter factory is used as the type key.
-   * This returns true, only if this adapter was created by the given factory.
-   */
-  public boolean isAdapterForType(Object type)
-  {
-    return type == adapterFactory;
-  }
-
-  public Image getImage(Object element)
-  {
-    return null;
-  }
-  
-  public String getText(Object object)
-  {
-    return object.toString();
-  }
-  
-  public void addListener(ILabelProviderListener listener)
-  {
-    
-  }
-  
-  public boolean isLabelProperty(Object element, String property)
-  {
-    return false;
-  }
-
-  public void removeListener(ILabelProviderListener listener)
-  {
-    
-  }
-  
-  public Object[] getChildren(Object parentElement)
-  {
-    List list = new ArrayList();
-    return list.toArray();
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return false;
-  }
-
-  public Object getParent(Object object)
-  {
-    return null;
-  }
-
-  public Object[] getElements(Object inputElement)
-  {
-    return getChildren(inputElement);
-  }
-
-  public void dispose()
-  {
-    
-  }
-  
-  public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
-  {
-    
-  }
-
-  /**
-   * This is used to implement {@link IChangeNotifier}.
-   */
-  protected IChangeNotifier changeNotifier;
-
-  
-  public void notifyChanged(Notification msg)
-  {                        
-    if (msg.getEventType() != Notification.RESOLVE)
-    {        
-      fireNotifyChanged(msg);
-    }
-  }  
-
-  /**
-   * This calls {@link org.eclipse.emf.edit.provider.INotifyChangedListener#notifyChanged notifyChanged} for each listener.
-   */
-  public void fireNotifyChanged(Notification notification)
-  {
-    if (changeNotifier != null)
-    {
-      changeNotifier.fireNotifyChanged(notification);
-    }
-
-    if (adapterFactory instanceof IChangeNotifier)
-    {
-      IChangeNotifier changeNotifier = (IChangeNotifier)adapterFactory;
-      changeNotifier.fireNotifyChanged(notification);
-    }
-  }
-
-
-  /**
-   * This adds another listener.
-   */
-  public void addListener(INotifyChangedListener notifyChangedListener)
-  {
-    if (changeNotifier == null)
-    {
-      changeNotifier = new ChangeNotifier();
-    }
-    changeNotifier.addListener(notifyChangedListener);
-   
-  }
-
-  /**
-   * This removes a listener.
-   */
-  public void removeListener(INotifyChangedListener notifyChangedListener)
-  {
-    if (changeNotifier != null)
-    {
-      changeNotifier.removeListener(notifyChangedListener);
-    }
-   
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAdapterFactoryLabelProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAdapterFactoryLabelProvider.java
deleted file mode 100644
index 5af510c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAdapterFactoryLabelProvider.java
+++ /dev/null
@@ -1,160 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.edit.provider.IChangeNotifier;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.swt.graphics.Image;
-
-public class XSDAdapterFactoryLabelProvider implements ILabelProvider, INotifyChangedListener, ITableLabelProvider
-{
-  protected XSDModelAdapterFactoryImpl adapterFactory;
-  protected Collection labelProviderListeners;
-  
-  private static final Class ILabelProviderClass = ILabelProvider.class;
-  private static final Class ITableLabelProviderClass = ITableLabelProvider.class;
-
-  /**
-   * 
-   */
-  public XSDAdapterFactoryLabelProvider(XSDModelAdapterFactoryImpl adapterFactory)
-  {
-    this.adapterFactory = adapterFactory;
-//    if (adapterFactory instanceof IChangeNotifier)
-//    {
-//      ((IChangeNotifier)adapterFactory).addListener(this);
-//    }
-
-    labelProviderListeners = new ArrayList();
-  }
-
-  /**
-   * Return the wrapped AdapterFactory.
-   */
-  public AdapterFactory getAdapterFactory()
-  {
-    return adapterFactory;
-  }
-
-  /**
-   * Set the wrapped AdapterFactory.
-   */
-  public void setAdapterFactory(XSDModelAdapterFactoryImpl adapterFactory)
-  {
-    if (this.adapterFactory instanceof IChangeNotifier)
-    {
-      ((IChangeNotifier)this.adapterFactory).removeListener(this);
-    }
-
-    if (adapterFactory instanceof IChangeNotifier)
-    {
-      ((IChangeNotifier)adapterFactory).addListener(this);
-    }
-
-    this.adapterFactory = adapterFactory;
-  }
-
-  /**
-   * Since we won't ever generate these notifications, we can just ignore this.
-   */
-  public void addListener(ILabelProviderListener listener) 
-  {
-    labelProviderListeners.add(listener);
-  }
-
-  /**
-   * Since we won't ever add listeners, we can just ignore this.
-   */
-  public void removeListener(ILabelProviderListener listener)
-  {
-    labelProviderListeners.remove(listener);
-  }
-
-  /**
-   * This discards the content provider and removes this as a listener to the {@link #adapterFactory}.
-   */
-  public void dispose()
-  {
-    if (this.adapterFactory instanceof IChangeNotifier)
-    {
-      ((IChangeNotifier)adapterFactory).removeListener(this);
-    }
-  }
-
-  /**
-   * This always returns true right now.
-   */
-  public boolean isLabelProperty(Object object, String id)
-  {
-    return true;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-   */
-  public Image getImage(Object object)
-  {
-    ILabelProvider labelProvider = (ILabelProvider)adapterFactory.adapt(object, ILabelProviderClass);
-
-    return 
-      labelProvider != null ?
-        labelProvider.getImage(object) : null;
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-   */
-  public String getText(Object object)
-  {
-    // Get the adapter from the factory.
-    //
-    ILabelProvider labelProvider = (ILabelProvider)adapterFactory.adapt(object, ILabelProviderClass);
-
-    return
-      labelProvider != null ?
-        labelProvider.getText(object) :
-        object == null ? 
-          "" :
-          object.toString();
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.emf.edit.provider.INotifyChangedListener#notifyChanged(org.eclipse.emf.common.notify.Notification)
-   */
-  public void notifyChanged(Notification notification)
-  {
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
-   */
-  public Image getColumnImage(Object element, int columnIndex)
-  {
-    return getImage(element);
-  }
-
-  /* (non-Javadoc)
-   * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
-   */
-  public String getColumnText(Object element, int columnIndex)
-  {
-    return getText(element);
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAnnotationAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAnnotationAdapter.java
deleted file mode 100644
index b57a4c5..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAnnotationAdapter.java
+++ /dev/null
@@ -1,83 +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.xsd.ui.internal.provider;
-
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDAnnotation;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class XSDAnnotationAdapter extends XSDAbstractAdapter
-{
-  public XSDAnnotationAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object element)
-  {
-    return XSDEditorPlugin.getPlugin().getImage("icons/XSDAnnotate.gif");
-  }
-  
-  public String getText(Object object)
-  {
-    XSDAnnotation xsdAnnotation = ((XSDAnnotation)object);
-    String result = "";
-    List userInformation = xsdAnnotation.getUserInformation();
-    if (!userInformation.isEmpty())
-    {
-      Element element = (Element)userInformation.get(0);
-      if (element.hasAttribute(XSDConstants.SOURCE_ATTRIBUTE))
-      {
-        result = element.getAttribute(XSDConstants.SOURCE_ATTRIBUTE);
-      }
-      else
-      {
-        org.w3c.dom.Node text = element.getFirstChild(); 
-        while (text instanceof Element)
-        {
-          text = ((Element)text).getFirstChild();
-        }
-        if (text != null && text.getNodeValue() != null)
-        {
-          result = text.getNodeValue();
-          result = result.trim();
-          if (result.length() > 50)
-          {
-            result = result.substring(0, 50) + "...";
-          }
-        }
-      }
-    }
-
-    return result;
-  }
-  
-  public Object[] getChildren(Object parentElement)
-  {
-    return null;  
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return true;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDAnnotation element = (XSDAnnotation)object;
-    return element.getContainer();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeDeclarationAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeDeclarationAdapter.java
deleted file mode 100644
index 330925f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeDeclarationAdapter.java
+++ /dev/null
@@ -1,113 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-public class XSDAttributeDeclarationAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDAttributeDeclarationAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object object)
-  {
-    XSDAttributeDeclaration xsdAttributeDeclaration = ((XSDAttributeDeclaration)object);
-    XSDAttributeDeclaration resolvedAttributeDeclaration = xsdAttributeDeclaration.getResolvedAttributeDeclaration();
-    
-    if (resolvedAttributeDeclaration.getContainer() == null)
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDAttribute.gif");
-    }
-    // if (xsdAttributeDeclaration.getResolvedAttributeDeclaration() == xsdAttributeDeclaration)
-    if (xsdAttributeDeclaration.isAttributeDeclarationReference())
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDAttributeRef.gif");
-    }
-    else
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDAttribute.gif");
-    }
-    
-//    return 
-//    XSDEditorPlugin.getPlugin().getIconImage
-//     (resolvedAttributeDeclaration.getContainer() == null ?
-//        "full/obj16/XSDAttributeUnresolved" :
-//          xsdAttributeDeclaration.getResolvedAttributeDeclaration() == xsdAttributeDeclaration ?
-//          "full/obj16/XSDAttributeDeclaration" :
-//          "full/obj16/XSDAttributeUse");
-  }
-
-  public String getText(Object object)
-  {
-    XSDAttributeDeclaration xsdAttributeDeclaration = ((XSDAttributeDeclaration)object);
-    XSDAttributeDeclaration resolvedAttributeDeclaration = xsdAttributeDeclaration.getResolvedAttributeDeclaration();
-    String name =
-      xsdAttributeDeclaration != resolvedAttributeDeclaration ?
-        xsdAttributeDeclaration.getQName() :
-        xsdAttributeDeclaration.getName();
-
-    StringBuffer result = new StringBuffer();
-    if (name == null)
-    {
-      result.append("'absent'");
-    }
-    else
-    {
-      result.append(name);
-    }
-
-    if (resolvedAttributeDeclaration.getAnonymousTypeDefinition() == null && resolvedAttributeDeclaration.getTypeDefinition() != null)
-    {
-      result.append(" : ");
-      result.append(resolvedAttributeDeclaration.getTypeDefinition().getQName(xsdAttributeDeclaration));
-    }
-
-    return result.toString();
-  }
-
-  public Object[] getChildren(Object parentElement)
-  {
-    XSDAttributeDeclaration xsdAttributeDeclaration = (XSDAttributeDeclaration)parentElement;
-    List list = new ArrayList();
-    
-    XSDTypeDefinition type = xsdAttributeDeclaration.getAnonymousTypeDefinition();
-    if (type != null)
-    {
-      list.add(type);
-    }
-    return list.toArray();
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return true;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDAttributeDeclaration element = (XSDAttributeDeclaration)object;
-    return element.getContainer();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeGroupDefinitionAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeGroupDefinitionAdapter.java
deleted file mode 100644
index e8b6c89..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeGroupDefinitionAdapter.java
+++ /dev/null
@@ -1,100 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-//import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-//import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-//import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDWildcard;
-
-
-public class XSDAttributeGroupDefinitionAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDAttributeGroupDefinitionAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object object)
-  {
-    XSDAttributeGroupDefinition xsdAttributeGroupDefinition = ((XSDAttributeGroupDefinition)object);
-    XSDAttributeGroupDefinition resolvedAttributeGroupDefinition = xsdAttributeGroupDefinition.getResolvedAttributeGroupDefinition();
-
-    if (xsdAttributeGroupDefinition.isAttributeGroupDefinitionReference())
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDAttributeGroupRef.gif");
-    }
-    else
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDAttributeGroup.gif");
-    }
-  }
-
-  public String getText(Object object)
-  {
-    XSDAttributeGroupDefinition xsdAttributeGroupDefinition = ((XSDAttributeGroupDefinition)object);
-    String result =  
-      xsdAttributeGroupDefinition.isAttributeGroupDefinitionReference() ?
-        xsdAttributeGroupDefinition.getQName() :
-        xsdAttributeGroupDefinition.getName();
-    return result == null ? "'absent'" : result;
-  }
-
-  public Object[] getChildren(Object parentElement)
-  {
-    XSDAttributeGroupDefinition xsdAttributeGroup = (XSDAttributeGroupDefinition)parentElement;
-    List list = new ArrayList();
-    list.addAll(xsdAttributeGroup.getContents());   
-//    Iterator i = xsdAttributeGroup.getContents().iterator();
-//    while (i.hasNext())
-//    {
-//      XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent)i.next();
-//      if (attrGroupContent instanceof XSDAttributeUse)
-//      {
-//        list.add(((XSDAttributeUse)attrGroupContent).getAttributeDeclaration());
-//      }
-//      else
-//      {
-//        list.add(attrGroupContent);
-//      }
-//    }
-    
-    XSDWildcard wildcard = xsdAttributeGroup.getAttributeWildcardContent();
-    if (wildcard != null)
-    {
-      list.add(wildcard);
-    }
-    return list.toArray();
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return true;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDAttributeGroupDefinition element = (XSDAttributeGroupDefinition)object;
-    return element.getContainer();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeUseAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeUseAdapter.java
deleted file mode 100644
index 5c8c127..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDAttributeUseAdapter.java
+++ /dev/null
@@ -1,90 +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.xsd.ui.internal.provider;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeUse;
-
-public class XSDAttributeUseAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDAttributeUseAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-  
-  protected XSDAttributeDeclaration getDelegate(XSDAttributeUse xsdAttributeUse)
-  {
-    return xsdAttributeUse.getContent();
-  }
-  
-  /**
-   * This returns XSDAttributeUse.gif.
-   */
-  public Image getImage(Object object)
-  {
-    XSDAttributeUse xsdAttributeUse = ((XSDAttributeUse)object);
-    
-    XSDAttributeDeclaration xsdAttributeDeclaration = getDelegate(xsdAttributeUse);
-    if (xsdAttributeDeclaration.isAttributeDeclarationReference())
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDAttributeRef.gif");
-    }
-    else
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDAttribute.gif");
-    }
-    //return XSDEditorPlugin.getPlugin().getIconImage("full/obj16/XSDAttributeUse");  
-    
-  }
-
-  public String getText(Object object)
-  {
-    return getText(object, true);
-  }
-
-  public String getText(Object object, boolean showType)
-  {
-    XSDAttributeUse xsdAttributeUse = ((XSDAttributeUse)object);
-    XSDAttributeDeclaration xsdAttributeDeclaration = getDelegate(xsdAttributeUse);
-    if (xsdAttributeDeclaration.isAttributeDeclarationReference())
-    {
-      return xsdAttributeDeclaration.getResolvedAttributeDeclaration().getName();
-    }
-    StringBuffer result  = new StringBuffer();
-    if (xsdAttributeDeclaration != null)
-    {
-      result.append(xsdAttributeDeclaration.getName());
-    }
-
-    if (xsdAttributeUse.isSetConstraint())
-    {
-      if (result.length() != 0)
-      {
-        result.append("  ");
-      }
-      result.append('<');
-      result.append(xsdAttributeUse.getConstraint());
-      result.append("=\"");
-      result.append(xsdAttributeUse.getLexicalValue());
-      result.append("\">");
-    }
-
-    return result.toString();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDComplexTypeDefinitionAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDComplexTypeDefinitionAdapter.java
deleted file mode 100644
index 38f7351..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDComplexTypeDefinitionAdapter.java
+++ /dev/null
@@ -1,182 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.xsd.XSDComplexTypeContent;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class XSDComplexTypeDefinitionAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDComplexTypeDefinitionAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object object)
-  {
-    return XSDEditorPlugin.getXSDImage("icons/XSDComplexType.gif");
-//    XSDComplexTypeDefinition xsdComplexTypeDefinition = ((XSDComplexTypeDefinition)object);
-//    return 
-//      XSDEditorPlugin.getPlugin().getIconImage
-//        (xsdComplexTypeDefinition.getContainer() == null ?
-//          "full/obj16/XSDComplexTypeDefinitionUnresolved" :
-//          "full/obj16/XSDComplexTypeDefinition");
-  }
-  
-  public String getText(Object object)
-  {
-    return getText(object, true);
-  }
-  
-  public String getText(Object object, boolean showType)
-  {
-    XSDComplexTypeDefinition xsdComplexTypeDefinition = ((XSDComplexTypeDefinition)object);
-
-    StringBuffer result = new StringBuffer();
-    
-    result.append
-     (xsdComplexTypeDefinition.getName() == null ? 
-        // xsdComplexTypeDefinition.getAliasName() :
-        "local type" :
-        xsdComplexTypeDefinition.getName());
-
-    if (showType)
-    {
-      XSDTypeDefinition baseTypeDefinition = xsdComplexTypeDefinition.getBaseTypeDefinition();
-      if (baseTypeDefinition != null && 
-            baseTypeDefinition != xsdComplexTypeDefinition.getContent() &&
-            baseTypeDefinition.getName() != null &&
-            !XSDConstants.isURType(baseTypeDefinition))
-      {
-        result.append(" : ");
-        result.append(baseTypeDefinition.getQName(xsdComplexTypeDefinition));
-      }
-    }
-
-    return result.toString();
-  }
-
-  public Object[] getChildren(Object parentElement)
-  {
-    XSDComplexTypeDefinition xsdComplexTypeDefinition = (XSDComplexTypeDefinition)parentElement;
-    List list = new ArrayList();
-    
-    if (xsdComplexTypeDefinition.getContent() != null)
-    {
-      XSDComplexTypeContent xsdComplexTypeContent = xsdComplexTypeDefinition.getContent();
-      if (xsdComplexTypeContent instanceof XSDParticle)
-      {
-        list.add(((XSDParticle)xsdComplexTypeContent).getContent());
-      }
-    }
-    
-//    if (((XSDModelAdapterFactoryImpl)adapterFactory).getShowInherited())
-//    {
-//      if (xsdComplexTypeDefinition.getSyntheticParticle() != null)
-//      {
-//        XSDTypeDefinition type = xsdComplexTypeDefinition.getBaseTypeDefinition();
-//        list.addAll(XSDChildUtility.getModelChildren(type));
-//      }
-//      if (xsdComplexTypeDefinition.getSyntheticWildcard() != null)
-//      {
-//        list.add(xsdComplexTypeDefinition.getSyntheticWildcard());
-//      }
-//    }
-    
-//    List attributes = xsdComplexTypeDefinition.getAttributeContents();
-//    if (attributes.size() > 0)
-//    {
-//      list.addAll(attributes);
-//    }
-
-//  list = new ArrayList();
-    if (((XSDModelAdapterFactoryImpl)adapterFactory).getShowInherited())
-    {
-      if (xsdComplexTypeDefinition.getDerivationMethod().getName().equals("extension"))
-      {
-        XSDTypeDefinition type = xsdComplexTypeDefinition.getBaseTypeDefinition();
-        Iterator iter = XSDChildUtility.getModelChildren(type).iterator();
-        boolean cont = true;
-        while (cont)
-        {
-          while (iter.hasNext())
-          {
-            list.add(0, iter.next());
-          }
-          
-          if (type instanceof XSDComplexTypeDefinition)
-          {
-            XSDComplexTypeDefinition ctd = (XSDComplexTypeDefinition)type;
-            type = ctd.getBaseTypeDefinition();
-                      
-            // defect 264957 - workbench hangs when modifying complex content
-            // Since we don't filter out the current complexType from
-            // the combobox, we can potentially have an endless loop
-            if (ctd == type)
-            {
-              cont = false;
-              break;
-            }
-
-            if (ctd.getDerivationMethod().getName().equals("extension"))
-            {
-              iter = XSDChildUtility.getModelChildren(type).iterator();
-            }
-            else
-            {
-              cont = false;
-            }
-          }
-          else
-          {
-            cont = false;
-          }
-        }
-
-      }
-
-          
-//          list.addAll(XSDChildUtility.getModelChildren(baseType));
-      }
-
-//    list.addAll(XSDChildUtility.getModelChildren(xsdComplexTypeDefinition));
-
-    return list.toArray();
- 
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return true;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDComplexTypeDefinition element = (XSDComplexTypeDefinition)object;
-    return element.getContainer();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDContentProvider.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDContentProvider.java
deleted file mode 100644
index f573249..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDContentProvider.java
+++ /dev/null
@@ -1,305 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.edit.provider.IChangeNotifier;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDParticleContent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDWildcard;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-
-public class XSDContentProvider implements ITreeContentProvider, INotifyChangedListener
-{
-//  protected static XSDItemProviderAdapterFactory syntacticAdapterFactory = new XSDItemProviderAdapterFactory();
-//  protected static XSDSemanticItemProviderAdapterFactory semanticAdapterFactory = new XSDSemanticItemProviderAdapterFactory();
-  
-  XSDModelAdapterFactoryImpl xsdModelAdapterFactory;
-
-  XSDSchema xsdSchema;
-  public XSDContentProvider(XSDModelAdapterFactoryImpl xsdModelAdapterFactoryImpl)
-  {
-    this.xsdModelAdapterFactory = xsdModelAdapterFactoryImpl;
-    
-    if (xsdModelAdapterFactory instanceof IChangeNotifier)
-    {
-      ((IChangeNotifier)xsdModelAdapterFactory).addListener(this);
-    }
-  }
-  
-  public void setXSDSchema(XSDSchema xsdSchema)
-  {
-    this.xsdSchema = xsdSchema;
-  }
-  
-  /*
-   * @see ITreeContentProvider#getChildren(Object)
-   */
-  public Object[] getChildren(Object parentElement)
-  {
-//  return adapterFactoryContentProvider.getChildren(parentElement);
-    XSDConcreteComponent xsdComp = null;
-    List list = null;
-    if (parentElement instanceof Document)
-    {
-      xsdComp = xsdSchema;
- 	    // ItemProviderAdapter a = (ItemProviderAdapter)syntacticAdapterFactory.adapt(xsdComp, syntacticAdapterFactory);
-      // ItemProviderAdapter a = (ItemProviderAdapter)semanticAdapterFactory.adapt(xsdComp, semanticAdapterFactory);
- 	    
- 	    XSDAbstractAdapter a = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt(xsdComp, xsdModelAdapterFactory);
- 	    
-//      a.removeListener((INotifyChangedListener)this);
-// 	    a.addListener((INotifyChangedListener)this);
-
-      list = new ArrayList();
-      list.add(xsdComp);
-      return list.toArray();
-    }
-    else if (parentElement instanceof XSDConcreteComponent)
-    {
-      xsdComp = (XSDConcreteComponent)parentElement;
-      list = new ArrayList();
-    }
-    else if (parentElement instanceof ITreeItemContentProvider)
-    {
-      // return adapterFactoryContentProvider.getChildren(parentElement);
-      return ((ITreeItemContentProvider)parentElement).getChildren(parentElement).toArray();
-    }
-    else if (parentElement instanceof ITreeContentProvider)
-    {
-      return ((ITreeContentProvider)parentElement).getChildren(parentElement);
-    }
-    
-    if (xsdComp != null)
-    {
- 	    // ItemProviderAdapter a = (ItemProviderAdapter)syntacticAdapterFactory.adapt(xsdComp, syntacticAdapterFactory);
-      // ItemProviderAdapter a = (ItemProviderAdapter)semanticAdapterFactory.adapt(xsdComp, semanticAdapterFactory);
- 	    
-      XSDAbstractAdapter a = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt(xsdComp, xsdModelAdapterFactory);
-      
-      if (xsdComp instanceof XSDElementDeclaration || xsdComp instanceof XSDModelGroup || xsdComp instanceof XSDWildcard)
-      {
-        XSDAbstractAdapter particleAdapter = (XSDAbstractAdapter)xsdModelAdapterFactory.adapt(((XSDParticleContent)xsdComp).getContainer(), xsdModelAdapterFactory);
-      }
-
- 	    if (a != null)
- 	    {
-// 	      a.removeListener((INotifyChangedListener)this);
-// 	      a.addListener((INotifyChangedListener)this);
- 	    
- 	      Object [] obj = a.getChildren(xsdComp);
- 	      if (obj != null)
- 	      {
- 	        list = Arrays.asList(obj);
- 	      }
- 	    }
-//	     list = (List)a.getChildren(xsdComp);
-    }
-    
-    list =  list != null ? list : Collections.EMPTY_LIST;
-    return list.toArray();
-  }
-
-  /*
-   * @see ITreeContentProvider#getParent(Object)
-   */
-  public Object getParent(Object element)
-  {
-    if (element instanceof Node)
-    {
-      return ((Node)element).getParentNode();
-    }
-    else if (element instanceof XSDConcreteComponent)
-    {
-      return ((XSDConcreteComponent)element).getContainer();
-    }
-    return null;
-  }
-
-  /*
-   * @see ITreeContentProvider#hasChildren(Object)
-   */
-  public boolean hasChildren(Object element)
-  {
-    Object[] children = getChildren(element);
-    return children != null && children.length > 0;   
-  }
-
-  /*
-   * @see IStructuredContentProvider#getElements(Object)
-   */
-  public Object[] getElements(Object inputElement)
-  {
-    return getChildren(inputElement);
-  }
-
-  public void notifyChanged(Notification notification)
-  {
-    if (viewer != null)
-    {
-      if (viewer instanceof StructuredViewer)
-      {
-        if (notification.getFeature() instanceof EAttribute)
-        {
-          ((StructuredViewer)viewer).update(notification.getNotifier(), null);
-        }
-        else
-        {
-          ((StructuredViewer)viewer).refresh(notification.getNotifier());
-        }
-      }
-      else
-      {
-        viewer.refresh();
-      }
-    }
-
-  }
-
-  /*
-   * @see IContentProvider#dispose()
-   */
-  public void dispose()
-  {
-    viewer = null;
-    xsdModelAdapterFactory.removeListener(this);
-  }
-  
-  protected Viewer viewer = null;
-
-  /*
-   * @see IContentProvider#inputChanged(Viewer, Object, Object)
-   */
-  public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
-  {
-    this.viewer = viewer;
-  }
-  
-//  protected ViewerNotifyingAdapterFactory viewerNotifyingAdapterFactory = new ViewerNotifyingAdapterFactory();
-//
-//  
-//    // There is only 1 adapter associated with this factory.  This single adapter gets added
-//  // to the adapter lists of many nodes.
-//  public class ViewerNotifyingAdapterFactory extends // KCPort com.ibm.sed.model.AbstractAdapterFactory
-//    AbstractAdapterFactory
-//  {
-//    protected ViewerNotifyingAdapter viewerNotifyingAdapter = new ViewerNotifyingAdapter();
-//
-//    protected INodeAdapter createAdapter(INodeNotifier target)
-//    {
-//      return viewerNotifyingAdapter;
-//    }
-//
-//    protected ViewerNotifyingAdapter doAdapt(Object object)
-//    {
-//      ViewerNotifyingAdapter result = null;
-//      if (object instanceof INodeNotifier)
-//      {
-//        result = (ViewerNotifyingAdapter)adapt((INodeNotifier)object);
-//      }
-//      return result;
-//    }
-//  }
-//                    
-//
-//  public class ViewerNotifyingAdapter implements INodeAdapter
-//  {
-//    public boolean isAdapterForType(Object type)
-//    {
-//      return type == viewerNotifyingAdapterFactory;
-//    }
-//    
-//    public void notifyChanged(INodeNotifier notifier, int eventType, Object changedFeature, Object oldValue,	Object newValue,	int pos)
-//    { 
-//      if (viewer == null || newValue instanceof Text || oldValue instanceof Text)
-//        return;
-//      
-//      if (eventType != INodeNotifier.ADD && eventType != INodeNotifier.REMOVE)
-//      {                                 
-//        if (notifier instanceof Element)
-//        {        
-//          Node node = (Node)notifier;                   
-//          Node parent = node instanceof Attr ? ((Attr)node).getOwnerElement() : node.getParentNode();
-//          // we use to refresh the parent, but it seems that the notifier is sufficient now
-//          
-//          Object objToRefresh = notifier;      
-//          if (notifier instanceof DocumentImpl)
-//          {
-//            objToRefresh = ((DocumentImpl)notifier).getModel();
-//          }
-//          if (viewer instanceof AbstractTreeViewer)
-//          {
-////            if (node instanceof XMLNode)
-////            {
-////              XMLNode xmlNode = (XMLNode)node;
-////              int caretPosition =  xmlNode.getStartOffset();
-////              ((XSDEditorTreeViewer)viewer).setCaretPosition(caretPosition);
-////            }
-//            ((AbstractTreeViewer)viewer).refresh(objToRefresh);
-//          }
-//          else
-//          {
-//            viewer.refresh();
-//          }
-//        }
-//        
-//      }
-//      else if (eventType == INodeNotifier.ADD || eventType == INodeNotifier.REMOVE)
-//      {
-//        if (notifier instanceof DocumentImpl)
-//        {
-//          Object objToRefresh = ((DocumentImpl)notifier).getModel();
-//          if (viewer instanceof AbstractTreeViewer)
-//          {
-//            ((AbstractTreeViewer)viewer).refresh(objToRefresh);
-//          }
-//        }
-//      }
-////        if (notifier instanceof Element)
-////        {  
-//// performance problem - updates all elements when the children are reparented
-////          Object objToRefresh = notifier;      
-////          if (notifier instanceof DocumentImpl)
-////          {
-////            objToRefresh = ((DocumentImpl)notifier).getModel();
-////          }
-////          if (viewer instanceof AbstractTreeViewer)
-////          {
-////            ((AbstractTreeViewer)viewer).refresh(objToRefresh);
-////          }
-////          if (eventType == Notifier.ADD && newValue instanceof Element)
-////          {
-////            if (viewer instanceof XSDEditorTreeViewer)
-////            {
-////              // default select the new added element
-////              ((XSDEditorTreeViewer)viewer).getOutlinePage().updateSelection(new StructuredSelection(newValue));
-////            }
-////          }
-////        }          
-////      }
-//    }
-//  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDElementDeclarationAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDElementDeclarationAdapter.java
deleted file mode 100644
index a74e4bf..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDElementDeclarationAdapter.java
+++ /dev/null
@@ -1,193 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class XSDElementDeclarationAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDElementDeclarationAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object element)
-  {
-    XSDElementDeclaration xsdElementDeclaration = ((XSDElementDeclaration)element);
-    XSDElementDeclaration resolvedElementDeclaration = xsdElementDeclaration.getResolvedElementDeclaration();
-    
-    if (!xsdElementDeclaration.isElementDeclarationReference())
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDElement.gif");
-    }
-    else
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDElementRef.gif");
-    }
-    
-//    return 
-//      XSDEditorPlugin.getPlugin().getIconImage
-//        (resolvedElementDeclaration.getContainer() == null ?
-//           "full/obj16/XSDElementUnresolved" :
-//           xsdElementDeclaration.getResolvedElementDeclaration() == xsdElementDeclaration ?
-//             "full/obj16/XSDElementDeclaration" :
-//             "full/obj16/XSDElementUse");
-
-  }
-  
-  public String getText(Object object)
-  {
-    XSDElementDeclaration xsdElementDeclaration = ((XSDElementDeclaration)object);
-    XSDElementDeclaration resolvedElementDeclaration = xsdElementDeclaration.getResolvedElementDeclaration();
-    String name = 
-      xsdElementDeclaration != resolvedElementDeclaration ?
-        xsdElementDeclaration.getQName() :
-        xsdElementDeclaration.getName();
-
-    StringBuffer result = new StringBuffer();
-    if (name == null)
-    {
-      result.append("'absent'");
-    }
-    else
-    {
-      result.append(name);
-    }
-    
-    if (!xsdElementDeclaration.isGlobal())
-    {
-      Element element = xsdElementDeclaration.getElement();
-      boolean hasMinOccurs = element.hasAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-      boolean hasMaxOccurs = element.hasAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-
-      if (hasMinOccurs || hasMaxOccurs)
-      {
-	      result.append(" ["); 
-		    if (hasMinOccurs)
-	      {
-	        int min = ((XSDParticle)xsdElementDeclaration.getContainer()).getMinOccurs();
-	  	    if (min == XSDParticle.UNBOUNDED)
-	  	    {
-	  	      result.append("*");
-	  	    }
-	  	    else
-	  	    {
-	  	      result.append(String.valueOf(min));
-	  	    }
-	      }
-        else // print default
-        {
-          int min = ((XSDParticle)xsdElementDeclaration.getContainer()).getMinOccurs();
-          result.append(String.valueOf(min));
-        }
-	      if (hasMaxOccurs)
-	      {
-	        int max = ((XSDParticle)xsdElementDeclaration.getContainer()).getMaxOccurs();
-	  	    result.append("..");
-	  	    if (max == XSDParticle.UNBOUNDED)
-	  	    {
-	  	      result.append("*");
-	  	    }
-	  	    else
-	  	    {
-	  	      result.append(String.valueOf(max));
-	  	    }
-	      }
-        else // print default
-        {
-          result.append("..");
-          int max = ((XSDParticle)xsdElementDeclaration.getContainer()).getMaxOccurs();
-          result.append(String.valueOf(max));
-         
-        }
-	      result.append("]");
-      }
-    }
-    
-    if (resolvedElementDeclaration.getAnonymousTypeDefinition() == null && resolvedElementDeclaration.getTypeDefinition() != null)
-    {
-      result.append(" : ");
-      result.append(resolvedElementDeclaration.getTypeDefinition().getQName(xsdElementDeclaration));
-    }
-
-    return result.toString();
-  }
-  
-  public Object[] getChildren(Object parentElement)
-  {
-    XSDElementDeclaration xsdElementDeclaration = (XSDElementDeclaration)parentElement;
-    List list = new ArrayList();
-    XSDTypeDefinition type = null;
-    if (xsdElementDeclaration.isElementDeclarationReference())
-    {
-      if (((XSDModelAdapterFactoryImpl)adapterFactory).getShowReferences())
-      {
-        type = xsdElementDeclaration.getResolvedElementDeclaration().getTypeDefinition();
-      }
-    }
-    else
-    {
-      type = xsdElementDeclaration.getAnonymousTypeDefinition();
-      if (type == null)
-      {
-        if (((XSDModelAdapterFactoryImpl)adapterFactory).getShowReferences())
-        {
-          type = xsdElementDeclaration.getTypeDefinition();
-        }
-      }
-    }
-
-    if (type != null && type instanceof XSDComplexTypeDefinition)
-    {
-      XSDComplexTypeDefinition ctType = (XSDComplexTypeDefinition)type;
-      if (ctType != null)
-      {
-        list.add(ctType);
-      }
-    }
-
-//    if (xsdElementDeclaration.getIdentityConstraintDefinitions() != null)
-//    {
-//      list.addAll(xsdElementDeclaration.getIdentityConstraintDefinitions());
-//    }
-    
-//    return XSDChildUtility.getModelChildren(xsdElementDeclaration.getResolvedElementDeclaration()).toArray();
-    return list.toArray();
-  
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return true;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDElementDeclaration element = (XSDElementDeclaration)object;
-    return element.getContainer();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelAdapterFactoryImpl.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelAdapterFactoryImpl.java
deleted file mode 100644
index e1961ff..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelAdapterFactoryImpl.java
+++ /dev/null
@@ -1,432 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.edit.provider.ChangeNotifier;
-import org.eclipse.emf.edit.provider.Disposable;
-import org.eclipse.emf.edit.provider.IChangeNotifier;
-import org.eclipse.emf.edit.provider.IDisposable;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.xsd.XSDAnnotation;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNotationDeclaration;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDRedefine;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-import org.eclipse.xsd.util.XSDAdapterFactory;
-import org.eclipse.xsd.util.XSDSwitch;
-
-public class XSDModelAdapterFactoryImpl extends XSDAdapterFactory
-  implements IChangeNotifier, IDisposable
-{
-  static XSDModelAdapterFactoryImpl instance;
-  
-  public static XSDModelAdapterFactoryImpl getInstance()
-  {
-    if (instance == null)
-    {
-      instance = new XSDModelAdapterFactoryImpl();
-    }                                         
-    return instance;
-  }
-  
-  protected IChangeNotifier changeNotifier = new ChangeNotifier();
-  
-  protected Disposable disposable = new Disposable();
-  
-  protected Collection supportedTypes = new ArrayList();
-  
-  protected boolean showReferences = false;
-  protected boolean showInherited = false;
-  
-  /**
-   * 
-   */
-  public XSDModelAdapterFactoryImpl()
-  {
-    super();
-    supportedTypes.add(ILabelProvider.class);
-  }
-
-  public void setShowReferences(boolean b)
-  {
-    showReferences = b;
-  }
-  
-  public boolean getShowReferences()
-  {
-    return showReferences;
-  }
-  
-  public void setShowInherited(boolean b)
-  {
-    showInherited= b;
-  }
-  
-  public boolean getShowInherited()
-  {
-    return showInherited;
-  }
-  
-  protected XSDSwitch modelSwitch = new XSDSwitch()
-  {
-      public Object caseXSDAnnotation(XSDAnnotation object)
-      {
-        return createXSDAnnotationAdapter();
-      }
-      public Object caseXSDAttributeDeclaration(XSDAttributeDeclaration object)
-      {
-        return createXSDAttributeDeclarationAdapter();
-      }
-      public Object caseXSDAttributeGroupDefinition(XSDAttributeGroupDefinition object)
-      {
-        return createXSDAttributeGroupDefinitionAdapter();
-      }
-      public Object caseXSDAttributeUse(XSDAttributeUse object)
-      {
-        return createXSDAttributeUseAdapter();
-      }
-      public Object caseXSDComplexTypeDefinition(XSDComplexTypeDefinition object)
-      {
-        return createXSDComplexTypeDefinitionAdapter();
-      }
-      public Object caseXSDElementDeclaration(XSDElementDeclaration object)
-      {
-        return createXSDElementDeclarationAdapter();
-      }
-      public Object caseXSDModelGroup(XSDModelGroup object)
-      {
-        return createXSDModelGroupAdapter();
-      }
-      public Object caseXSDModelGroupDefinition(XSDModelGroupDefinition object)
-      {
-        return createXSDModelGroupDefinitionAdapter();
-      }
-      public Object caseXSDNotationDeclaration(XSDNotationDeclaration object)
-      {
-        return createXSDNotationDeclarationAdapter();
-      }
-      public Object caseXSDParticle(XSDParticle object)
-      {
-        return createXSDParticleAdapter();
-      }
-//      public Object caseXSDParticleContent(XSDParticleContent object)
-//      {
-//        return createXSDParticleContentAdapter();
-//      }
-      public Object caseXSDSchema(XSDSchema object)
-      {
-        return createXSDSchemaAdapter();
-      }
-      public Object caseXSDImport(XSDImport object)
-      {
-        // return createXSDImportAdapter();
-        return createXSDSchemaDirectiveAdapter();
-      }
-      public Object caseXSDInclude(XSDInclude object)
-      {
-        // return createXSDIncludeAdapter();
-        return createXSDSchemaDirectiveAdapter();
-      }
-      public Object caseXSDRedefine(XSDRedefine object)
-      {
-        // return createXSDRedefineAdapter();
-        return createXSDSchemaDirectiveAdapter();
-      }
-      public Object caseXSDSimpleTypeDefinition(XSDSimpleTypeDefinition object)
-      {
-        return createXSDSimpleTypeDefinitionAdapter();
-      
-      }
-      public Object caseXSDWildcard(XSDWildcard object)
-      {
-        return createXSDWildcardAdapter();
-      }
-      public Object defaultCase(EObject object)
-      {
-        return createEObjectAdapter();
-      }
-  };
-
-  public Adapter createAdapter(Notifier target)
-  {
-    Adapter adapter = null;
-    if (target instanceof EObject)
-    {
-      adapter = (Adapter)modelSwitch.doSwitch((EObject)target);
-    }
-    return adapter;
-  }
-
-/* create adapters */
-  
-  protected XSDAnnotationAdapter xsdAnnotationAdapter;
-  public Adapter createXSDAnnotationAdapter()
-  {
-    if (xsdAnnotationAdapter == null)
-    {
-      xsdAnnotationAdapter = new XSDAnnotationAdapter(this);
-    }
-    return xsdAnnotationAdapter;
-  }
-
-  protected XSDAttributeDeclarationAdapter xsdAttributeDeclarationAdapter;
-  public Adapter createXSDAttributeDeclarationAdapter()
-  {
-    if (xsdAttributeDeclarationAdapter == null)
-    {
-      xsdAttributeDeclarationAdapter = new XSDAttributeDeclarationAdapter(this);
-    }
-    return xsdAttributeDeclarationAdapter;
-  }
-
-  protected XSDAttributeGroupDefinitionAdapter xsdAttributeGroupDefinitionAdapter;
-  public Adapter createXSDAttributeGroupDefinitionAdapter()
-  {
-    if (xsdAttributeGroupDefinitionAdapter == null)
-    {
-      xsdAttributeGroupDefinitionAdapter = new XSDAttributeGroupDefinitionAdapter(this);
-    }
-    return xsdAttributeGroupDefinitionAdapter;
-  }
-
-  protected XSDAttributeUseAdapter xsdAttributeUseAdapter;
-  public Adapter createXSDAttributeUseAdapter()
-  {
-    if (xsdAttributeUseAdapter == null)
-    {
-      xsdAttributeUseAdapter = new XSDAttributeUseAdapter(this);
-    }
-
-    return xsdAttributeUseAdapter;
-  }
-
-  
-  XSDComplexTypeDefinitionAdapter xsdComplexTypeDefinitionAdapter;
-  public Adapter createXSDComplexTypeDefinitionAdapter()
-  {
-    if (xsdComplexTypeDefinitionAdapter == null)
-    {
-      xsdComplexTypeDefinitionAdapter = new XSDComplexTypeDefinitionAdapter(this);
-    }
-    return xsdComplexTypeDefinitionAdapter;
-  }
-
-  XSDElementDeclarationAdapter xsdElementDeclarationAdapter;
-  public Adapter createXSDElementDeclarationAdapter()
-  {
-    if (xsdElementDeclarationAdapter == null)
-    {
-      xsdElementDeclarationAdapter = new XSDElementDeclarationAdapter(this);
-    }
-    return xsdElementDeclarationAdapter;
-  }
-
-  XSDModelGroupAdapter xsdModelGroupAdapter;
-  public Adapter createXSDModelGroupAdapter()
-  {
-    if (xsdModelGroupAdapter == null)
-    {
-      xsdModelGroupAdapter = new XSDModelGroupAdapter(this);
-    }
-    return xsdModelGroupAdapter;
-  }
-
-  XSDModelGroupDefinitionAdapter xsdModelGroupDefinitionAdapter;
-  public Adapter createXSDModelGroupDefinitionAdapter()
-  {
-    if (xsdModelGroupDefinitionAdapter == null)
-    {
-      xsdModelGroupDefinitionAdapter = new XSDModelGroupDefinitionAdapter(this);
-    }
-    return xsdModelGroupDefinitionAdapter;
-  }
-
-  XSDNotationDeclarationAdapter xsdNotationDeclarationAdapter;
-  public Adapter createXSDNotationDeclarationAdapter()
-  {
-    if (xsdNotationDeclarationAdapter == null)
-    {
-      xsdNotationDeclarationAdapter = new XSDNotationDeclarationAdapter(this);
-    }
-    return xsdNotationDeclarationAdapter;
-  }
-
-  XSDWildcardAdapter xsdWildcardAdapter;
-  public Adapter createXSDWildcardAdapter()
-  {
-    if (xsdWildcardAdapter == null)
-    {
-      xsdWildcardAdapter = new XSDWildcardAdapter(this);
-    }
-    return xsdWildcardAdapter;
-  }
-  
-  protected XSDParticleAdapter xsdParticleAdapter;
-  public Adapter createXSDParticleAdapter()
-  {
-    if (xsdParticleAdapter == null)
-    {
-      xsdParticleAdapter = new XSDParticleAdapter(this);
-    }
-    return xsdParticleAdapter;
-  }
-//
-//  protected XSDParticleContentAdapter xsdParticleContentAdapter;
-//  public Adapter createXSDParticleContentAdapter()
-//  {
-//    if (xsdParticleContentAdapter == null)
-//    {
-//      xsdParticleContentAdapter = new XSDParticleContentAdapter(this);
-//    }
-//    return xsdParticleContentAdapter;
-//  }
-
-  protected XSDSchemaAdapter xsdSchemaAdapter;
-  public Adapter createXSDSchemaAdapter()
-  {
-    if (xsdSchemaAdapter == null)
-    {
-      xsdSchemaAdapter = new XSDSchemaAdapter(this);
-    }
-
-    return xsdSchemaAdapter;
-  }
-  
-  protected XSDSchemaDirectiveAdapter xsdSchemaDirectiveAdapter;
-  public Adapter createXSDSchemaDirectiveAdapter()
-  {
-    if (xsdSchemaDirectiveAdapter == null)
-    {
-      xsdSchemaDirectiveAdapter = new XSDSchemaDirectiveAdapter(this);
-    }
-
-    return xsdSchemaDirectiveAdapter;
-  }
-
-  XSDSimpleTypeDefinitionAdapter xsdSimpleTypeDefinitionAdapter;
-  public Adapter createXSDSimpleTypeDefinitionAdapter()
-  {
-    if (xsdSimpleTypeDefinitionAdapter == null)
-    {
-      xsdSimpleTypeDefinitionAdapter = new XSDSimpleTypeDefinitionAdapter(this);
-    }
-    return xsdSimpleTypeDefinitionAdapter;
-  }
-
-  public Adapter createEObjectAdapter()
-  {
-    return null;
-  }
-
-
-  public boolean isFactoryForType(Object type)
-  {
-    return super.isFactoryForType(type) || supportedTypes.contains(type);
-  }
-
-  /**
-   * This implementation substitutes the factory itself as the key for the adapter.
-   */
-  public Adapter adapt(Notifier notifier, Object type)
-  {
-    return super.adapt(notifier, this);
-  }
-
-  public Object adapt(Object object, Object type)
-  {
-    // This is a kludge to deal with enumerators, which crash the doSwitch.
-    //
-    if (object instanceof EObject && ((EObject)object).eClass() == null)
-    {
-      return null;
-    }
-
-    if (isFactoryForType(type))
-    {
-      Object adapter = super.adapt(object, type);
-      if (!(type instanceof Class) || (((Class)type).isInstance(adapter)))
-      {
-        return adapter;
-      }
-    }
-
-    return null;
-  }
-
-  public Adapter adaptNew(Notifier object, Object type)
-  {
-    Adapter result = super.adaptNew(object, type);
-    disposable.add(result);
-    return result;
-  }
-
-  /**
-   * This adds a listener.
-   */
-  public void addListener(INotifyChangedListener notifyChangedListener)
-  {
-    changeNotifier.addListener(notifyChangedListener);
-  }
-
-  /**
-   * This removes a listener.
-   */
-  public void removeListener(INotifyChangedListener notifyChangedListener)
-  {
-    changeNotifier.removeListener(notifyChangedListener);
-  }
-
-  /**
-   * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
-   */
-  public void fireNotifyChanged(Notification notification)
-  {
-    Display display = Display.getDefault();
-    if (display != null)
-    {
-      if (display.getThread() == Thread.currentThread ())
-      {
-        changeNotifier.fireNotifyChanged(notification);
-      }
-    }
-
-//    if (parentAdapterFactory != null)
-//    {
-//      parentAdapterFactory.fireNotifyChanged(notification);
-//    }
-  }
-
-  public void dispose()
-  {
-    disposable.dispose();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelGroupAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelGroupAdapter.java
deleted file mode 100644
index 7fc1719..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelGroupAdapter.java
+++ /dev/null
@@ -1,141 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.graph.XSDChildUtility;
-import org.eclipse.xsd.XSDCompositor;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class XSDModelGroupAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDModelGroupAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object element)
-  {
-    XSDModelGroup xsdModelGroup = ((XSDModelGroup)element);
-    if (XSDCompositor.CHOICE_LITERAL == xsdModelGroup.getCompositor())
-    {
-      // return XSDEditorPlugin.getPlugin().getIconImage("full/obj16/XSDModelGroupChoice");
-      return XSDEditorPlugin.getXSDImage("icons/XSDChoice.gif");
-    }
-    else if (XSDCompositor.ALL_LITERAL == xsdModelGroup.getCompositor())
-    {
-      // return XSDEditorPlugin.getPlugin().getIconImage("full/obj16/XSDModelGroupAll");
-      return XSDEditorPlugin.getXSDImage("icons/XSDAll.gif");
-    }
-    else 
-    {
-      // return XSDEditorPlugin.getPlugin().getIconImage("full/obj16/XSDModelGroupSequence");
-      return XSDEditorPlugin.getXSDImage("icons/XSDSequence.gif");
-    }
-  }
-  
-  public String getText(Object object)
-  {
-    XSDModelGroup xsdModelGroup = ((XSDModelGroup)object);
-    
-    StringBuffer result = new StringBuffer();
-    String name = xsdModelGroup.getCompositor().getName();
-    if (name != null)
-    {
-      result.append(name);
-    }
-    
-    Element element = xsdModelGroup.getElement();
-    
-    if (element != null)
-    {
-      boolean hasMinOccurs = element.hasAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-      boolean hasMaxOccurs = element.hasAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-      
-      if (hasMinOccurs || hasMaxOccurs)
-      {
-  	    result.append(" [");  
-  	    if (hasMinOccurs)
-  	    {
-  	      int min = ((XSDParticle)xsdModelGroup.getContainer()).getMinOccurs();
-  		    if (min == XSDParticle.UNBOUNDED)
-  		    {
-  		      result.append("*");
-  		    }
-  		    else
-  		    {
-  		      result.append(String.valueOf(min));
-  		    }
-  	    }
-        else // print default
-        {
-          int min = ((XSDParticle)xsdModelGroup.getContainer()).getMinOccurs();
-          result.append(String.valueOf(min));
-        }
-  	    if (hasMaxOccurs)
-  	    {
-  	      int max = ((XSDParticle)xsdModelGroup.getContainer()).getMaxOccurs();
-  		    result.append("..");
-  		    if (max == XSDParticle.UNBOUNDED)
-  		    {
-  		      result.append("*");
-  		    }
-  		    else
-  		    {
-  		      result.append(String.valueOf(max));
-  		    }
-  	    }
-        else // print default
-        {
-          result.append("..");
-          int max = ((XSDParticle)xsdModelGroup.getContainer()).getMaxOccurs();
-          result.append(String.valueOf(max));
-        }
-  	    result.append("]");
-      }
-    }
-    return result.toString();
-  }
-  
-  public Object[] getChildren(Object parentElement)
-  {
-    XSDModelGroup xsdModelGroup = (XSDModelGroup)parentElement;
-    List list = new ArrayList();
-    // list.addAll(xsdModelGroup.getContents());
-    list.addAll(XSDChildUtility.getModelChildren(xsdModelGroup));
-    return list.toArray();
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return true;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDModelGroup element = (XSDModelGroup)object;
-    return element.getContainer();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelGroupDefinitionAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelGroupDefinitionAdapter.java
deleted file mode 100644
index e622469..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDModelGroupDefinitionAdapter.java
+++ /dev/null
@@ -1,96 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-
-
-public class XSDModelGroupDefinitionAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDModelGroupDefinitionAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object object)
-  {
-    XSDModelGroupDefinition xsdModelGroupDefinition = ((XSDModelGroupDefinition)object);
-    XSDModelGroupDefinition resolvedModelGroupDefinition = xsdModelGroupDefinition.getResolvedModelGroupDefinition();
-
-    if (xsdModelGroupDefinition.isModelGroupDefinitionReference())
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDGroupRef.gif");
-    }
-    else
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDGroup.gif");
-    }
-  }
-  
-  public String getText(Object object)
-  {
-    XSDModelGroupDefinition xsdModelGroupDefinition = ((XSDModelGroupDefinition)object);
-    String result = 
-      xsdModelGroupDefinition.isModelGroupDefinitionReference() ?
-        xsdModelGroupDefinition.getQName() :
-        xsdModelGroupDefinition.getName();
-    return result == null ? "'absent'" : result;
-  }
-  
-  boolean hasChildren = false;
-  
-  public Object[] getChildren(Object parentElement)
-  {
-    XSDModelGroupDefinition xsdModelGroupDefinition = (XSDModelGroupDefinition)parentElement;
-    List list = new ArrayList();
-    if (xsdModelGroupDefinition.isModelGroupDefinitionReference())
-    {
-      if (((XSDModelAdapterFactoryImpl)adapterFactory).getShowReferences())
-      {
-        list.add(xsdModelGroupDefinition.getResolvedModelGroupDefinition().getModelGroup());
-        hasChildren = true;
-      }
-    }
-    else
-    {
-      if (xsdModelGroupDefinition.getModelGroup() != null)
-      {
-        list.add(xsdModelGroupDefinition.getModelGroup());
-        hasChildren = true;
-      }
-    }
-    
-    return list.toArray();
- 
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return hasChildren;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDModelGroupDefinition element = (XSDModelGroupDefinition)object;
-    return element.getContainer();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDNotationDeclarationAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDNotationDeclarationAdapter.java
deleted file mode 100644
index 3c89274..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDNotationDeclarationAdapter.java
+++ /dev/null
@@ -1,44 +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.xsd.ui.internal.provider;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDNotationDeclaration;
-
-
-public class XSDNotationDeclarationAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDNotationDeclarationAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-  
-  public Image getImage(Object object)
-  {
-    // return XSDEditorPlugin.getPlugin().getIconImage("full/obj16/XSDNotationDeclaration");
-    return XSDEditorPlugin.getXSDImage("icons/XSDNotation.gif");
-  }
-
-  public String getText(Object object)
-  {
-    XSDNotationDeclaration xsdNotationDeclaration = ((XSDNotationDeclaration)object);
-    String result = xsdNotationDeclaration.getName();
-    return result == null ? "" : result;
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDParticleAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDParticleAdapter.java
deleted file mode 100644
index c37e8a7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDParticleAdapter.java
+++ /dev/null
@@ -1,61 +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.xsd.ui.internal.provider;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationWrapper;
-import org.eclipse.wst.xsd.ui.internal.graph.model.XSDModelAdapterFactory;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDParticleContent;
-import org.eclipse.xsd.XSDWildcard;
-
-
-public class XSDParticleAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDParticleAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  // hack to notify outline and graph view of minOccurs and maxOccurs changes
-  public void notifyChanged(Notification msg) 
-  {
-    XSDParticle xsdParticle = (XSDParticle)msg.getNotifier();
-    XSDParticleContent xsdParticleContent = xsdParticle.getContent();
-    if (xsdParticleContent != null)
-    {
-      if (xsdParticleContent instanceof XSDElementDeclaration)
-      {
-        fireNotifyChanged(new NotificationWrapper((XSDElementDeclaration)xsdParticleContent, msg));
-        XSDModelAdapterFactory.getAdapter(xsdParticleContent).firePropertyChanged(xsdParticleContent, null);
-      }
-      else if (xsdParticleContent instanceof XSDModelGroup)
-      {
-        fireNotifyChanged(new NotificationWrapper((XSDModelGroup)xsdParticleContent, msg));
-        XSDModelAdapterFactory.getAdapter(xsdParticleContent).firePropertyChanged(xsdParticleContent, null);
-      }
-      else if (xsdParticleContent instanceof XSDWildcard)
-      {
-        fireNotifyChanged(new NotificationWrapper((XSDWildcard)xsdParticleContent, msg));
-        XSDModelAdapterFactory.getAdapter(xsdParticleContent).firePropertyChanged(xsdParticleContent, null);
-      }
-    }
-    // super.notifyChanged(msg);
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSchemaAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSchemaAdapter.java
deleted file mode 100644
index 36f4fb2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSchemaAdapter.java
+++ /dev/null
@@ -1,405 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.NotificationImpl;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNotationDeclaration;
-import org.eclipse.xsd.XSDPackage;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-
-public class XSDSchemaAdapter extends XSDAbstractAdapter
-{
-  protected XSDPackage xsdPackage;
-  /**
-   * @param adapterFactory
-   */
-  public XSDSchemaAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-    xsdPackage = XSDPackage.eINSTANCE;
-  }
-
-  public Image getImage(Object element)
-  {
-    return XSDEditorPlugin.getXSDImage("icons/XSDFile.gif");
-  }
-  
-  public String getText(Object element)
-  {
-    XSDSchema xsdSchema = (XSDSchema)element;
-    String result = xsdSchema.getSchemaLocation();
-    if (result == null)
-    {
-      return "";
-    } 
-    else
-    {
-      return URI.createURI(result).lastSegment();
-    }
-  }
-  List children;
-  public Object[] getChildren(Object parentElement)
-  {
-    XSDSchema xsdSchema = ((XSDSchema)parentElement);
-
-    children = new ArrayList();
-    
-    List directivesList = getDirectives(xsdSchema);
-    
-    List elementsList = getGlobalElements(xsdSchema);
-    
-    List attributeGroupList = getAttributeGroupList(xsdSchema);
-    
-    List attributesList = getAttributeList(xsdSchema);
-    
-    List groups = getGroups(xsdSchema);
-    
-    List notations = getNotations(xsdSchema);
-
-    List types = getComplexTypes(xsdSchema);
-    types.addAll(getSimpleTypes(xsdSchema));
-    
-    children.add
-    (new CategoryAdapter
-      ( //XSDEditPlugin.getString("_UI_Elements_label"), 
-        XSDEditorPlugin.getXSDString("_UI_GRAPH_DIRECTIVES"),
-        XSDEditorPlugin.getPlugin().getIconImage("obj16/directivesheader"),
-        directivesList, xsdSchema, CategoryAdapter.DIRECTIVES));
-    children.add
-        (new CategoryAdapter
-          ( //XSDEditPlugin.getString("_UI_Elements_label"), 
-            XSDEditorPlugin.getXSDString("_UI_GRAPH_ELEMENTS"),
-            XSDEditorPlugin.getPlugin().getIconImage("obj16/elementsheader"),
-            elementsList, xsdSchema, CategoryAdapter.ELEMENTS));
-      children.add
-        (new CategoryAdapter
-          ( //XSDEditPlugin.getString("_UI_Attributes_label"),
-            XSDEditorPlugin.getXSDString("_UI_GRAPH_ATTRIBUTES"),
-            XSDEditorPlugin.getPlugin().getIconImage("obj16/attributesheader"),
-            attributesList, xsdSchema, CategoryAdapter.ATTRIBUTES));
-      children.add
-        (new CategoryAdapter
-          (//XSDEditPlugin.getString("_UI_AttributeGroups_label"),
-            XSDEditorPlugin.getXSDString("_UI_GRAPH_ATTRIBUTE_GROUPS"),
-            XSDEditorPlugin.getPlugin().getIconImage("obj16/attributegroupsheader"),
-            attributeGroupList, xsdSchema, CategoryAdapter.ATTRIBUTE_GROUPS));
-      children.add
-        (new CategoryAdapter
-          ( //XSDEditPlugin.getString("_UI_Types_label"), 
-            XSDEditorPlugin.getXSDString("_UI_GRAPH_TYPES"),
-            XSDEditorPlugin.getPlugin().getIconImage("obj16/typesheader"),
-            types, xsdSchema, CategoryAdapter.TYPES));
-      children.add
-        (new CategoryAdapter
-          ( // XSDEditPlugin.getString("_UI_ModelGroups_label"), 
-            XSDEditorPlugin.getXSDString("_UI_GRAPH_GROUPS"),
-            XSDEditorPlugin.getPlugin().getIconImage("obj16/groupsheader"),
-            groups, xsdSchema, CategoryAdapter.GROUPS));
-      children.add
-        (new CategoryAdapter
-          ( // XSDEditPlugin.getString("_UI_Notations_label"), 
-            XSDEditorPlugin.getXSDString("_UI_GRAPH_NOTATIONS"),
-            XSDEditorPlugin.getPlugin().getIconImage("obj16/notationsheader"),
-            notations, xsdSchema, CategoryAdapter.NOTATIONS));
-//      children.add
-//        (new CategoryAdapter
-//          ( //XSDEditPlugin.getString("_UI_IdentityConstraints_label"), 
-//              "Identity Constraints",
-//            XSDEditorPlugin.getPlugin().getIconImage("full/obj16/XSDIdentityConstraintDefinitionKey"),
-//            xsdSchema.getIdentityConstraintDefinitions(), xsdSchema, CategoryAdapter.IDENTITY_CONSTRAINTS));
-//      children.add
-//        (new CategoryAdapter
-//          ( // XSDEditPlugin.getString("_UI_Annotations_label"), 
-//              "Annotations",
-//            XSDEditorPlugin.getPlugin().getIconImage("obj16/annotationsheader"),
-//            xsdSchema.getAnnotations(), xsdSchema, CategoryAdapter.ANNOTATIONS));
-
-    return children.toArray();
-  
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return true;
-  }
-
-  public Object getParent(Object object)
-  {
-    return null;
-  }
-  
-  public void notifyChanged(final Notification msg)
-  {
-    class CategoryNotification extends NotificationImpl
-    {
-      protected Object category;
-      public CategoryNotification(Object category)
-      {
-        super(msg.getEventType(), msg.getOldValue(), msg.getNewValue(), msg.getPosition());
-        this.category = category;
-      }
-
-      public Object getNotifier()
-      {
-        return category;
-      }
-      public Object getFeature()
-      {
-        return msg.getFeature();
-      }
-    }
-    
-    if (children == null) {
-    	getChildren(target);
-    }
-
-    if (msg.getFeature() == xsdPackage.getXSDSchema_Contents())
-    {
-      CategoryAdapter adapter = (CategoryAdapter)children.get(0);
-      XSDSchema xsdSchema = adapter.getXSDSchema();
-      adapter.setChildren(getDirectives(xsdSchema));
-      this.fireNotifyChanged(new CategoryNotification(adapter));
-      return;
-    }
-    else if (msg.getFeature() == xsdPackage.getXSDSchema_ElementDeclarations())
-    {
-      CategoryAdapter adapter = (CategoryAdapter)children.get(1);
-      XSDSchema xsdSchema = adapter.getXSDSchema();
-      adapter.setChildren(getGlobalElements(xsdSchema));
-      this.fireNotifyChanged(new CategoryNotification(adapter));
-      return;
-    }
-    else if (msg.getFeature() == xsdPackage.getXSDSchema_AttributeDeclarations())
-    {
-      CategoryAdapter adapter = (CategoryAdapter)children.get(2);
-      XSDSchema xsdSchema = adapter.getXSDSchema();
-      adapter.setChildren(getAttributeList(xsdSchema));
-      this.fireNotifyChanged(new CategoryNotification(adapter));
-      return;
-    }
-    else if (msg.getFeature() == xsdPackage.getXSDSchema_AttributeGroupDefinitions())
-    {
-      CategoryAdapter adapter = (CategoryAdapter)children.get(3);
-      XSDSchema xsdSchema = adapter.getXSDSchema();
-      adapter.setChildren(getAttributeGroupList(xsdSchema));
-      this.fireNotifyChanged(new CategoryNotification(adapter));
-      return;
-    }
-    else if (msg.getFeature() == xsdPackage.getXSDSchema_TypeDefinitions())
-    {
-      CategoryAdapter adapter = (CategoryAdapter)children.get(4);
-      XSDSchema xsdSchema = adapter.getXSDSchema();
-      List types = getComplexTypes(xsdSchema);
-      types.addAll(getSimpleTypes(xsdSchema));
-
-      adapter.setChildren(types);
-      this.fireNotifyChanged(new CategoryNotification(adapter));
-      return;
-    }
-    else if (msg.getFeature() == xsdPackage.getXSDSchema_ModelGroupDefinitions())
-    {
-      CategoryAdapter adapter = (CategoryAdapter)children.get(5);
-      XSDSchema xsdSchema = adapter.getXSDSchema();
-      adapter.setChildren(getGroups(xsdSchema));
-      this.fireNotifyChanged(new CategoryNotification(adapter));
-      return;
-    }
-    else if (msg.getFeature() == xsdPackage.getXSDSchema_NotationDeclarations())
-    {
-      CategoryAdapter adapter = (CategoryAdapter)children.get(6);
-      XSDSchema xsdSchema = adapter.getXSDSchema();
-      adapter.setChildren(getNotations(xsdSchema));
-      this.fireNotifyChanged(new CategoryNotification(adapter));
-      return;
-    }
-//    else if (msg.getFeature() == xsdPackage.getXSDSchema_IdentityConstraintDefinitions())
-//    {
-//      this.fireNotifyChanged(new CategoryNotification(children.get(7)));
-//      return;
-//    }
-    else if (msg.getFeature() == xsdPackage.getXSDSchema_Annotations())
-    {
-//      this.fireNotifyChanged(new CategoryNotification(children.get(7)));
-      return;
-    }
-    else if (msg.getFeature() == xsdPackage.getXSDSchema_SchemaLocation())
-    {
-      this.fireNotifyChanged(msg);
-      return;
-    }
-
-    super.notifyChanged(msg);
-  }
-
-  protected List getDirectives(XSDSchema schema)
-  {                 
-    List list = new ArrayList();
-    for (Iterator i = schema.getContents().iterator(); i.hasNext(); )
-    {
-      Object o = i.next();
-      if (o instanceof XSDSchemaDirective)
-      {
-        list.add(o);
-      }
-    } 
-    return list;
-  }
-  
-  protected List getAttributeGroupList(XSDSchema xsdSchema)
-  {
-    List attributeGroupList = new ArrayList();
-    for (Iterator i = xsdSchema.getAttributeGroupDefinitions().iterator(); i.hasNext(); )
-    {
-      XSDAttributeGroupDefinition attrGroup = (XSDAttributeGroupDefinition)i.next();
-      if (attrGroup.getRootContainer() == xsdSchema)
-      {
-        attributeGroupList.add(attrGroup);
-      }
-    }
-    return attributeGroupList;
-  }
-  
-  protected List getAttributeList(XSDSchema xsdSchema)
-  {
-    List attributesList = new ArrayList();
-    for (Iterator iter = xsdSchema.getAttributeDeclarations().iterator(); iter.hasNext(); )
-    {
-      Object o = iter.next();
-      if (o instanceof XSDAttributeDeclaration)
-      {
-        XSDAttributeDeclaration attr = (XSDAttributeDeclaration)o;
-        if (attr != null)
-        {
-          if (attr.getTargetNamespace() != null)
-          {
-            if (!(attr.getTargetNamespace().equals("http://www.w3.org/2001/XMLSchema-instance")))
-            {
-              if (attr.getRootContainer() == xsdSchema)
-              {
-                attributesList.add(attr);
-              }
-            }
-          }
-          else
-          {
-            if (attr.getRootContainer() == xsdSchema)
-            {
-              attributesList.add(attr);
-            }
-          }
-        }
-      }
-    }
-    return attributesList;
-  }
-  
-  protected List getGlobalElements(XSDSchema schema)
-  {
-    List elements = schema.getElementDeclarations();
-    List list = new ArrayList();
-    for (Iterator i = elements.iterator(); i.hasNext(); )
-    {
-      XSDElementDeclaration elem = (XSDElementDeclaration)i.next();
-      if (elem.getRootContainer() == schema)
-      {
-        list.add(elem);
-      }
-    }                
-    return list;
-  }
-  
-  protected List getComplexTypes(XSDSchema schema)
-  {
-    List allTypes = schema.getTypeDefinitions();
-    List list = new ArrayList();
-    for (Iterator i = allTypes.iterator(); i.hasNext(); )
-    {
-      XSDTypeDefinition td = (XSDTypeDefinition)i.next();
-      if (td instanceof XSDComplexTypeDefinition)
-      {
-        XSDComplexTypeDefinition ct = (XSDComplexTypeDefinition)td;
-        if (ct.getRootContainer() == schema)
-        {
-          list.add(ct);
-        }
-      }
-    }                
-    return list;
-  }
-
-  protected List getSimpleTypes(XSDSchema schema)
-  {
-    List allTypes = schema.getTypeDefinitions();
-    List list = new ArrayList();
-    for (Iterator i = allTypes.iterator(); i.hasNext(); )
-    {
-      XSDTypeDefinition td = (XSDTypeDefinition)i.next();
-      if (td instanceof XSDSimpleTypeDefinition)
-      {
-        XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)td;
-        if (st.getRootContainer() == schema)
-        {
-          list.add(st);
-        }
-      }
-    }                
-    return list;
-  }   
-
-  protected List getGroups(XSDSchema schema)
-  {
-    List groups = schema.getModelGroupDefinitions();
-    List list = new ArrayList();
-    for (Iterator i = groups.iterator(); i.hasNext(); )
-    {
-      XSDModelGroupDefinition group = (XSDModelGroupDefinition)i.next();
-      if (group.getRootContainer() == schema)
-      {
-        list.add(group);
-      }
-    }                
-    return list;
-  }
-  
-  protected List getNotations(XSDSchema schema)
-  {
-    List notations = schema.getNotationDeclarations();
-    List list = new ArrayList();
-    for (Iterator i = notations.iterator(); i.hasNext(); )
-    {
-      XSDNotationDeclaration notation = (XSDNotationDeclaration)i.next();
-      if (notation.getRootContainer() == schema)
-      {
-        list.add(notation);
-      }
-    }                
-    return list;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSchemaDirectiveAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSchemaDirectiveAdapter.java
deleted file mode 100644
index 47cf912..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSchemaDirectiveAdapter.java
+++ /dev/null
@@ -1,102 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDInclude;
-import org.eclipse.xsd.XSDRedefine;
-import org.eclipse.xsd.XSDSchemaDirective;
-
-public class XSDSchemaDirectiveAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDSchemaDirectiveAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  
-  public Image getImage(Object object)
-  {
-    if (object instanceof XSDImport)
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDImport.gif");
-    }
-    else if (object instanceof XSDInclude)
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDInclude.gif");
-    }
-    else if (object instanceof XSDRedefine)
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDRedefine.gif");
-    }
-    return null;
-  }
-
-  public String getText(Object object)
-  {
-    XSDSchemaDirective directive = (XSDSchemaDirective)object;
-    String result = directive.getSchemaLocation();
-    if (result == null) result = "(" + XSDEditorPlugin.getXSDString("_UI_LABEL_NO_LOCATION_SPECIFIED") + ")";
-    if (result.equals("")) result = "(" + XSDEditorPlugin.getXSDString("_UI_LABEL_NO_LOCATION_SPECIFIED")+ ")";
-    return result;
-    
-//    XSDImport xsdImport = ((XSDImport)object);
-//    String result = xsdImport.getSchemaLocation();
-//    return result == null ? "" : result;
-    
-//    XSDInclude xsdInclude = ((XSDInclude)object);
-//    String result = xsdInclude.getSchemaLocation();
-//    return result == null ? "" : result;
-    
-//    XSDRedefine xsdRedefine = ((XSDRedefine)object);
-//    String result = xsdRedefine.getSchemaLocation();
-//    return result == null ? "" : result;
-
-
-  }
-
-  public Object[] getChildren(Object parentElement)
-  {
-    List list = new ArrayList();
-    if (parentElement instanceof XSDRedefine)
-    {
-      XSDRedefine redefine = (XSDRedefine)parentElement;
-      list = redefine.getContents();
-      if (list == null)
-      {
-        list = new ArrayList();
-      }
-    }
-    return list.toArray();
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return false;
-  }
-
-  public Object getParent(Object object)
-  {
-    return null;
-    
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSimpleTypeDefinitionAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSimpleTypeDefinitionAdapter.java
deleted file mode 100644
index 0d4026a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDSimpleTypeDefinitionAdapter.java
+++ /dev/null
@@ -1,193 +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.xsd.ui.internal.provider;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDVariety;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class XSDSimpleTypeDefinitionAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDSimpleTypeDefinitionAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object object)
-  {
-    XSDSimpleTypeDefinition xsdSimpleTypeDefinition = ((XSDSimpleTypeDefinition)object);
-    
-    if (xsdSimpleTypeDefinition.getContainer() == null)
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif");
-    }
-    
-    if (XSDVariety.LIST_LITERAL == xsdSimpleTypeDefinition.getVariety())
-    {
-      // return XSDEditorPlugin.getXSDImage("icons/XSDSimpleList.gif");
-      return XSDEditorPlugin.getPlugin().getIconImage("obj16/smpl_list_obj");
-    }
-    else if (XSDVariety.UNION_LITERAL == xsdSimpleTypeDefinition.getVariety())
-    {
-      //return XSDEditorPlugin.getXSDImage("icons/XSDSimpleUnion.gif");
-      return XSDEditorPlugin.getPlugin().getIconImage("obj16/smpl_union_obj");
-    }
-    else if (XSDVariety.ATOMIC_LITERAL == xsdSimpleTypeDefinition.getVariety())
-    {
-      // return XSDEditorPlugin.getXSDImage("icons/XSDSimpleRestrict.gif");
-      Element stElement = xsdSimpleTypeDefinition.getElement();
-      XSDDOMHelper domHelper = new XSDDOMHelper();
-      if (domHelper.getChildNode(stElement, XSDConstants.RESTRICTION_ELEMENT_TAG) != null)
-      {
-        return XSDEditorPlugin.getPlugin().getIconImage("obj16/smpl_restrict_obj");
-      }
-      return XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif");
-    }
-    else if (xsdSimpleTypeDefinition.isSetVariety())
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif");
-    }
-    else
-    {
-      return XSDEditorPlugin.getXSDImage("icons/XSDSimpleType.gif");
-    }
-    
-//    return 
-//      XSDEditorPlugin.getPlugin().getIconImage
-//        (xsdSimpleTypeDefinition.getContainer() == null ?
-//           "full/obj16/XSDSimpleTypeDefinitionUnresolved" :
-//           XSDVariety.LIST_LITERAL == xsdSimpleTypeDefinition.getVariety() ? 
-//             "full/obj16/XSDSimpleTypeDefinitionList" :  
-//              XSDVariety.UNION_LITERAL == xsdSimpleTypeDefinition.getVariety() ? 
-//                "full/obj16/XSDSimpleTypeDefinitionUnion" :
-//                  xsdSimpleTypeDefinition.isSetVariety() ?
-//                    "full/obj16/XSDSimpleTypeDefinitionAtomic"  :
-//                    "full/obj16/XSDSimpleTypeDefinition");
-  }
-  
-  public String getText(Object object)
-  {
-    return getText(object, true);
-  }
- 
-  public String getText(Object object, boolean showType)
-  {
-    XSDSimpleTypeDefinition xsdSimpleTypeDefinition = ((XSDSimpleTypeDefinition)object);
-
-    StringBuffer result = new StringBuffer();
-
-    result.append
-      (xsdSimpleTypeDefinition.getName() == null ? 
-         // xsdSimpleTypeDefinition.getAliasName() :
-         "local type" :
-         xsdSimpleTypeDefinition.getName());
-
-    if (showType)
-    {
-      XSDSimpleTypeDefinition baseTypeDefinition = xsdSimpleTypeDefinition.getBaseTypeDefinition();
-      if (baseTypeDefinition != null && XSDVariety.ATOMIC_LITERAL == xsdSimpleTypeDefinition.getVariety())
-      {
-        if (baseTypeDefinition.getName() != null && 
-              !xsdSimpleTypeDefinition.getContents().contains(baseTypeDefinition) &&
-              !XSDConstants.isAnySimpleType(baseTypeDefinition)) 
-        {
-          result.append(" : ");
-          result.append(baseTypeDefinition.getQName(xsdSimpleTypeDefinition));
-        }
-      }
-      else
-      {
-        XSDSimpleTypeDefinition itemTypeDefinition = xsdSimpleTypeDefinition.getItemTypeDefinition();
-        if (itemTypeDefinition != null)
-        {
-          if (itemTypeDefinition.getName() != null) 
-          {
-            result.append(" : ");
-            result.append(itemTypeDefinition.getQName(xsdSimpleTypeDefinition));
-          }
-        }
-        else 
-        {
-          List memberTypeDefinitions = xsdSimpleTypeDefinition.getMemberTypeDefinitions();
-          if (!memberTypeDefinitions.isEmpty())
-          {
-            boolean first = true;
-            for (Iterator members = memberTypeDefinitions.iterator(); members.hasNext(); )
-            {
-              XSDSimpleTypeDefinition memberTypeDefinition = (XSDSimpleTypeDefinition)members.next();
-              if (memberTypeDefinition.getName() != null) 
-              {
-                if (first)
-                {
-                  result.append(" : ");
-                  first = false;
-                }
-                else
-                {
-                  result.append(" | ");
-                }
-                result.append(memberTypeDefinition.getQName(xsdSimpleTypeDefinition));
-              }
-              else
-              {
-                break;
-              }
-            }
-          } 
-          else if (result.length() == 0)
-          {
-            result.append("'absent'");
-          }
-        }
-      }
-    }
-
-    return result.toString();
-  }
-
-  public Object[] getChildren(Object parentElement)
-  {
-    XSDSimpleTypeDefinition xsdSimpleTypeDefinition = (XSDSimpleTypeDefinition)parentElement;
-    List list = new ArrayList();
-//    list.addAll(xsdSimpleTypeDefinition.getContents());
-//    list.addAll(xsdSimpleTypeDefinition.getFacetContents());
-//    list.addAll(xsdSimpleTypeDefinition.getFundamentalFacets());
-//    list.addAll(xsdSimpleTypeDefinition.getSyntheticFacets());
-    return list.toArray();
-  
-  }
-  
-  public boolean hasChildren(Object object)
-  {
-    return true;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDSimpleTypeDefinition element = (XSDSimpleTypeDefinition)object;
-    return element.getContainer();
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDWildcardAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDWildcardAdapter.java
deleted file mode 100644
index b219f6b..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/provider/XSDWildcardAdapter.java
+++ /dev/null
@@ -1,112 +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.xsd.ui.internal.provider;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDWildcard;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class XSDWildcardAdapter extends XSDAbstractAdapter
-{
-
-  /**
-   * @param adapterFactory
-   */
-  public XSDWildcardAdapter(AdapterFactory adapterFactory)
-  {
-    super(adapterFactory);
-  }
-
-  public Image getImage(Object object)
-  {
-    XSDWildcard xsdWildcard = (XSDWildcard)object;
-    return XSDEditorPlugin.getXSDImage
-      (xsdWildcard.eContainer() instanceof XSDParticle ?
-        "icons/XSDAny.gif" :
-        "icons/XSDAnyAttribute.gif");
-  }
-  
-  public String getText(Object object)
-  {
-    XSDWildcard xsdWildcard = ((XSDWildcard)object);
-    
-    StringBuffer result = new StringBuffer();
-    Element element = xsdWildcard.getElement();
-    
-    if (element != null)
-    {
-      result.append(element.getNodeName());
-      boolean hasMinOccurs = element.hasAttribute(XSDConstants.MINOCCURS_ATTRIBUTE);
-      boolean hasMaxOccurs = element.hasAttribute(XSDConstants.MAXOCCURS_ATTRIBUTE);
-      
-      if (hasMinOccurs || hasMaxOccurs)
-      {
-        result.append(" [");   //$NON-NLS-1$
-        if (hasMinOccurs)
-        {
-          
-          int min = ((XSDParticle)xsdWildcard.getContainer()).getMinOccurs();
-          if (min == XSDParticle.UNBOUNDED)
-          {
-            result.append("*");
-          }
-          else
-          {
-            result.append(String.valueOf(min));
-          }
-        }
-        else // print default
-        {
-          int min = ((XSDParticle)xsdWildcard.getContainer()).getMinOccurs();
-          result.append(String.valueOf(min));
-        }
-        if (hasMaxOccurs)
-        {
-          int max = ((XSDParticle)xsdWildcard.getContainer()).getMaxOccurs();
-          result.append("..");
-          if (max == XSDParticle.UNBOUNDED)
-          {
-            result.append("*");
-          }
-          else
-          {
-            result.append(String.valueOf(max));
-          }
-        }
-        else // print default
-        {
-          result.append("..");
-          int max = ((XSDParticle)xsdWildcard.getContainer()).getMaxOccurs();
-          result.append(String.valueOf(max));
-        }
-        result.append("]");
-      }
-    }
-    return result.toString();
-
-  }
-
-  public boolean hasChildren(Object object)
-  {
-    return false;
-  }
-
-  public Object getParent(Object object)
-  {
-    XSDWildcard xsdWildcard = (XSDWildcard)object;
-    return xsdWildcard.getContainer();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/RefactoringMessages.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/RefactoringMessages.java
deleted file mode 100644
index 7b56d8d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/RefactoringMessages.java
+++ /dev/null
@@ -1,49 +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.xsd.ui.internal.refactor;
-
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class RefactoringMessages {
-
-	private static final String RESOURCE_BUNDLE= "org.eclipse.wst.xsd.ui.internal.refactor.messages";//$NON-NLS-1$
-
-	private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
-
-	private RefactoringMessages() {
-	}
-
-	public static String getString(String key) {
-		try {
-			return fgResourceBundle.getString(key);
-		} catch (MissingResourceException e) {
-			return "!" + key + "!";//$NON-NLS-2$ //$NON-NLS-1$
-		}
-	}
-	
-	public static String[] getStrings(String keys[]) {
-		String[] result= new String[keys.length];
-		for (int i= 0; i < keys.length; i++) {
-			result[i]= getString(keys[i]);
-		}
-		return result;
-	}
-	
-	public static String getFormattedString(String key, Object arg) {
-		return getFormattedString(key, new Object[] { arg });
-	}
-	
-	public static String getFormattedString(String key, Object[] args) {
-		return MessageFormat.format(getString(key), args);	
-	}	
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/XSDVisitor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/XSDVisitor.java
deleted file mode 100644
index 24bda3f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/XSDVisitor.java
+++ /dev/null
@@ -1,217 +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.xsd.ui.internal.refactor;
-
-import java.util.Iterator;
-
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeContent;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDIdentityConstraintDefinition;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNotationDeclaration;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDParticleContent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.XSDWildcard;
-
-public class XSDVisitor
-{
-  public XSDVisitor()
-  {
-  }
-  
-  protected XSDSchema schema;
-  
-  public void visitSchema(XSDSchema schema)
-  {
-    this.schema = schema;
-    for (Iterator iterator = schema.getAttributeDeclarations().iterator(); iterator.hasNext();)
-    {
-      XSDAttributeDeclaration attr = (XSDAttributeDeclaration) iterator.next();
-      visitAttributeDeclaration(attr);
-    }
-    for (Iterator iterator = schema.getTypeDefinitions().iterator(); iterator.hasNext();)
-    {
-      XSDTypeDefinition type = (XSDTypeDefinition) iterator.next();
-      visitTypeDefinition(type);
-    }
-    for (Iterator iterator = schema.getElementDeclarations().iterator(); iterator.hasNext();)
-    {
-      XSDElementDeclaration element = (XSDElementDeclaration) iterator.next();
-      visitElementDeclaration(element);
-    }
-    for (Iterator iterator = schema.getIdentityConstraintDefinitions().iterator(); iterator.hasNext();)
-    {
-      XSDIdentityConstraintDefinition identityConstraint = (XSDIdentityConstraintDefinition) iterator.next();
-      visitIdentityConstraintDefinition(identityConstraint);
-    }
-    for (Iterator iterator = schema.getModelGroupDefinitions().iterator(); iterator.hasNext();)
-    {
-      XSDModelGroupDefinition modelGroup = (XSDModelGroupDefinition) iterator.next();
-      visitModelGroupDefinition(modelGroup);
-    }
-    for (Iterator iterator = schema.getAttributeGroupDefinitions().iterator(); iterator.hasNext();)
-    {
-      XSDAttributeGroupDefinition attributeGroup = (XSDAttributeGroupDefinition) iterator.next();
-      visitAttributeGroupDefinition(attributeGroup);
-    }
-    for (Iterator iterator = schema.getNotationDeclarations().iterator(); iterator.hasNext();)
-    {
-      XSDNotationDeclaration element = (XSDNotationDeclaration) iterator.next();
-      visitNotationDeclaration(element);
-    }
-    
-  }
-  
-  public void visitAttributeDeclaration(XSDAttributeDeclaration attr)
-  {
-  }
-  
-  public void visitTypeDefinition(XSDTypeDefinition type)
-  {
-    if (type instanceof XSDSimpleTypeDefinition)
-    {
-      visitSimpleTypeDefinition((XSDSimpleTypeDefinition)type);
-    }
-    else if (type instanceof XSDComplexTypeDefinition)
-    {
-      visitComplexTypeDefinition((XSDComplexTypeDefinition)type);
-    }
-  }
-  
-  public void visitElementDeclaration(XSDElementDeclaration element)
-  {
-    if (element.isElementDeclarationReference())
-    {
-    }
-    else if (element.getAnonymousTypeDefinition() != null)
-    {
-      visitTypeDefinition(element.getAnonymousTypeDefinition());
-    }
-  }
-  
-  public void visitIdentityConstraintDefinition(XSDIdentityConstraintDefinition identityConstraint)
-  {
-  }
-  
-  public void visitModelGroupDefinition(XSDModelGroupDefinition modelGroupDef)
-  {
-    if (!modelGroupDef.isModelGroupDefinitionReference())
-    {
-      if (modelGroupDef.getModelGroup() != null)
-      {
-        visitModelGroup(modelGroupDef.getModelGroup());
-      }
-    }
-  }
-  
-  public void visitAttributeGroupDefinition(XSDAttributeGroupDefinition attributeGroup)
-  {
-    if (attributeGroup.getAttributeUses() != null)
-    {
-      for (Iterator iter = attributeGroup.getAttributeUses().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeUse attrUse = (XSDAttributeUse)iter.next();
-        visitAttributeDeclaration(attrUse.getContent());
-      }
-    }
-  }
-  
-  public void visitNotationDeclaration(XSDNotationDeclaration notation)
-  {
-  }
-  
-  public void visitSimpleTypeDefinition(XSDSimpleTypeDefinition type)
-  {
-  }
-  
-  public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-  {
-    if (type.getContentType() != null)
-    {
-      XSDComplexTypeContent complexContent = (XSDComplexTypeContent) type.getContentType();
-      if (complexContent instanceof XSDSimpleTypeDefinition)
-      {
-        visitSimpleTypeDefinition((XSDSimpleTypeDefinition)complexContent);
-      }
-      else if (complexContent instanceof XSDParticle)
-      {
-        visitParticle((XSDParticle) complexContent);
-      }
-    }
-    
-    if (type.getAttributeContents() != null)
-    {
-      for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent)iter.next();
-        if (attrGroupContent instanceof XSDAttributeUse)
-        {
-          XSDAttributeUse attrUse = (XSDAttributeUse)attrGroupContent;
-          visitAttributeDeclaration(attrUse.getContent());
-        }
-        else if (attrGroupContent instanceof XSDAttributeGroupDefinition)
-        {
-          visitAttributeGroupDefinition((XSDAttributeGroupDefinition)attrGroupContent);
-        }
-      }
-    }
-  }
-  
-  public void visitParticle(XSDParticle particle)
-  {
-    visitParticleContent(particle.getContent());
-  }
-  
-  public void visitParticleContent(XSDParticleContent particleContent)
-  {
-    if (particleContent instanceof XSDModelGroupDefinition)
-    {
-      visitModelGroupDefinition((XSDModelGroupDefinition) particleContent);
-    }
-    else if (particleContent instanceof XSDModelGroup)
-    {
-      visitModelGroup((XSDModelGroup)particleContent);
-    }
-    else if (particleContent instanceof XSDElementDeclaration)
-    {
-      visitElementDeclaration((XSDElementDeclaration)particleContent);
-    }
-    else if (particleContent instanceof XSDWildcard)
-    {
-      visitWildcard((XSDWildcard)particleContent);
-    }
-  }
-  
-  public void visitModelGroup(XSDModelGroup modelGroup)
-  {
-    if (modelGroup.getContents() != null)
-    {
-      for (Iterator iterator = modelGroup.getContents().iterator(); iterator.hasNext();)
-      {
-        XSDParticle particle = (XSDParticle) iterator.next();
-        visitParticle(particle);
-      }
-    }
-  }
-  
-  public void visitWildcard(XSDWildcard wildcard)
-  {
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/MakeAnonymousTypeGlobalAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/MakeAnonymousTypeGlobalAction.java
deleted file mode 100644
index d82346a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/MakeAnonymousTypeGlobalAction.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.actions;
-
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.commands.MakeAnonymousTypeGlobalCommand;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.wst.xsd.ui.internal.refactor.structure.MakeTypeGlobalProcessor;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.RenameRefactoringWizard;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.w3c.dom.Node;
-
-public class MakeAnonymousTypeGlobalAction extends SelectionDispatchAction {
-
-	private String fParentName;
-	private boolean isComplexType = true;
-	private XSDTypeDefinition fSelectedComponent;
-	
-	public MakeAnonymousTypeGlobalAction(ISelectionProvider selectionProvider, XSDSchema schema) {
-		super(selectionProvider);
-		setText(XSDEditorPlugin.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL")); //$NON-NLS-1$
-		setSchema(schema);
-	}
-	
-	public boolean canRun() {
-
-		return fSelectedComponent != null;
-	}
-	
-
-	private String getNewDefaultName(){
-		if(fParentName != null && !"".equals(fParentName)){
-			if(isComplexType){
-				return fParentName + "ComplexType";
-			}
-			else{
-				return fParentName + "SimpleType";
-			}
-		}
-		else{
-			if(isComplexType){
-				return "NewComplexType";
-			}
-			else{
-				return "NewSimpleType";
-			}
-		}
-		
-	}
-	private boolean canEnable(XSDConcreteComponent xsdComponent){
-		if (xsdComponent instanceof XSDComplexTypeDefinition) {
-			fSelectedComponent = (XSDComplexTypeDefinition)xsdComponent;
-			isComplexType = true;
-			XSDComplexTypeDefinition typeDef = (XSDComplexTypeDefinition) xsdComponent;
-			XSDConcreteComponent parent = typeDef.getContainer();
-			if(parent instanceof XSDElementDeclaration){
-				fParentName = ((XSDElementDeclaration)parent).getName();
-				return true;
-			}
-		} 
-		else if (xsdComponent instanceof XSDSimpleTypeDefinition){
-			fSelectedComponent = (XSDSimpleTypeDefinition)xsdComponent;
-			isComplexType = false;
-			XSDSimpleTypeDefinition typeDef = (XSDSimpleTypeDefinition) xsdComponent;
-			XSDConcreteComponent parent = typeDef.getContainer();
-			if(parent instanceof XSDElementDeclaration){
-				fParentName = ((XSDElementDeclaration)parent).getName();
-				return true;
-			}
-			else if(parent instanceof XSDAttributeDeclaration){
-				fParentName = ((XSDAttributeDeclaration)parent).getName();
-				return true;
-			}
-			
-		}
-		return false;
-	}
-
-	protected boolean canEnable(Object selectedObject) {
-		
-		if (selectedObject instanceof XSDConcreteComponent) {
-			return canEnable((XSDConcreteComponent)selectedObject);
-		}
-		else if (selectedObject instanceof Node) {
-			Node node = (Node) selectedObject;
-			XSDConcreteComponent concreteComponent = getSchema()
-					.getCorrespondingComponent(node);
-			return canEnable(concreteComponent);
-		}
-		return false;
-		
-	}
-
-	public void run1() {
-		
-		if(fSelectedComponent == null){
-			return;
-		}
-		
-		if(fSelectedComponent.getSchema() == null){
-			getSchema().updateElement(true);
-		}
-		MakeTypeGlobalProcessor processor = new MakeTypeGlobalProcessor(fSelectedComponent, getNewDefaultName());
-		RenameRefactoring refactoring = new RenameRefactoring(processor);
-		try {
-			RefactoringWizard wizard = new RenameRefactoringWizard(
-					refactoring,
-					RefactoringMessages.getString("RenameComponentWizard.defaultPageTitle"), //$NON-NLS-1$ TODO: provide correct strings
-					RefactoringMessages.getString("RenameComponentWizard.inputPage.description"), //$NON-NLS-1$
-					null);
-			RefactoringWizardOpenOperation op= new RefactoringWizardOpenOperation(wizard);
-			int result= op.run(XSDEditorPlugin.getShell(), wizard.getDefaultPageTitle());
-			op.getInitialConditionCheckingStatus();
-			//triggerBuild();
-		} catch (InterruptedException e) {
-			// do nothing. User action got cancelled
-		}
-		
-	}
-	
-	public void run(){
-		if(fSelectedComponent == null){
-			return;
-		}
-		
-		if(fSelectedComponent.getSchema() == null){
-			getSchema().updateElement(true);
-		}
-		DocumentImpl doc = (DocumentImpl) fSelectedComponent.getElement().getOwnerDocument();
-		doc.getModel().beginRecording(
-						this,
-						XSDEditorPlugin
-								.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL"));
-		MakeAnonymousTypeGlobalCommand command = new MakeAnonymousTypeGlobalCommand(
-				fSelectedComponent, getNewDefaultName());
-		command.run();
-		doc.getModel().endRecording(this);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/MakeLocalElementGlobalAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/MakeLocalElementGlobalAction.java
deleted file mode 100644
index de0b330..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/MakeLocalElementGlobalAction.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.actions;
-
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.commands.MakeLocalElementGlobalCommand;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.w3c.dom.Node;
-
-public class MakeLocalElementGlobalAction extends SelectionDispatchAction {
-
-	XSDElementDeclaration fSelectedComponent;
-
-	public MakeLocalElementGlobalAction(ISelectionProvider selectionProvider, XSDSchema schema) {
-		super(selectionProvider);
-		setText(RefactoringMessages.getString("MakeLocalElementGlobalAction.text")); //$NON-NLS-1$
-		setSchema(schema);
-	}
-	
-	public boolean canRun() {
-
-		return fSelectedComponent != null;
-	}
-
-	protected boolean canEnable(XSDConcreteComponent selectedObject) {
-
-		fSelectedComponent = null;
-		if (selectedObject instanceof XSDElementDeclaration) {
-			XSDElementDeclaration element = (XSDElementDeclaration) selectedObject;
-			if (!element.isElementDeclarationReference() && !element.isGlobal()) {
-				fSelectedComponent = element;
-			}
-		} 
-		return canRun();
-	}
-	
-	
-	protected boolean canEnable(Object selectedObject) {
-		
-		if (selectedObject instanceof XSDConcreteComponent) {
-			return canEnable((XSDConcreteComponent)selectedObject);
-		}
-		else if (selectedObject instanceof Node) {
-			Node node = (Node) selectedObject;
-			XSDConcreteComponent concreteComponent = getSchema()
-					.getCorrespondingComponent(node);
-			return canEnable(concreteComponent);
-		}
-		return false;
-		
-	}
-
-
-	public void run() {
-		DocumentImpl doc = (DocumentImpl) fSelectedComponent.getElement()
-				.getOwnerDocument();
-		doc.getModel().beginRecording(this, getText());
-		MakeLocalElementGlobalCommand command = new MakeLocalElementGlobalCommand(
-				fSelectedComponent);
-		command.run();
-		doc.getModel().endRecording(this);
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RefactorActionGroup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RefactorActionGroup.java
deleted file mode 100644
index 28fefc5..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RefactorActionGroup.java
+++ /dev/null
@@ -1,268 +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.xsd.ui.internal.refactor.actions;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.swt.events.MenuAdapter;
-import org.eclipse.swt.events.MenuEvent;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchSite;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.actions.ActionGroup;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.xsd.XSDSchema;
-
-/**
- * Action group that adds refactor actions (for example 'Rename', 'Move') to a
- * context menu and the global menu bar.
- * 
- */
-public class RefactorActionGroup extends ActionGroup {
-
-	public static final String MENU_ID = "org.eclipse.wst.xsd.ui.refactoring.menu"; //$NON-NLS-1$
-
-	public static final String GROUP_REORG = "reorgGroup"; //$NON-NLS-1$
-
-	public static final String RENAME_ELEMENT = "org.eclipse.wst.xsd.ui.refactor.rename.element"; //$NON-NLS-1$
-
-	public static final String MAKE_ELEMENT_GLOBAL = "org.eclipse.wst.xsd.ui.refactor.makeElementGlobal"; //$NON-NLS-1$
-	
-	public static final String MAKE_TYPE_GLOBAL = "org.eclipse.wst.xsd.ui.refactor.makeTypeGlobal"; //$NON-NLS-1$
-
-	public static final String RENAME = "org.eclipse.wst.xsd.ui.refactoring.actions.Rename"; //$NON-NLS-1$
-
-	/**
-	 * Pop-up menu: name of group for reorganize actions (value
-	 * <code>"group.reorganize"</code>).
-	 */
-	public static final String GROUP_REORGANIZE = IWorkbenchActionConstants.GROUP_REORGANIZE;
-
-	/**
-	 * 
-	 * @deprecated
-	 * 
-	 */
-	private IWorkbenchSite fSite;
-
-	private ISelectionProvider fSelectionProvider;
-
-	private XSDSchema fSchema;
-
-	private String fGroupName = GROUP_REORGANIZE;
-
-	private SelectionDispatchAction fRenameAction;
-
-	private SelectionDispatchAction fMakeLocalElementGlobal;
-	
-	private SelectionDispatchAction fMakeLocalTypeGlobal;
-
-	private List fEditorActions;
-
-	private IMenuManager fRefactorSubmenu;
-
-	private static class NoActionAvailable extends Action {
-		public NoActionAvailable() {
-			setEnabled(true);
-			setText(RefactoringMessages
-					.getString("RefactorActionGroup.no_refactoring_available")); //$NON-NLS-1$
-		}
-	}
-
-	private Action fNoActionAvailable = new NoActionAvailable();
-	
-	public RefactorActionGroup(ISelectionProvider selectionProvider,
-			XSDSchema schema, String groupName) {
-		this(selectionProvider, schema);
-		fGroupName = groupName;
-	}
-	
-	public RefactorActionGroup(ISelectionProvider selectionProvider,
-			XSDSchema schema) {
-		fSelectionProvider = selectionProvider;
-		fSchema = schema;
-		fEditorActions = new ArrayList();
-		fRenameAction = new RenameAction(selectionProvider, schema);
-		fRenameAction.setActionDefinitionId(RENAME_ELEMENT);
-		fEditorActions.add(fRenameAction);
-
-		fMakeLocalElementGlobal = new MakeLocalElementGlobalAction(
-				selectionProvider, schema);
-		fMakeLocalElementGlobal.setActionDefinitionId(MAKE_ELEMENT_GLOBAL);
-		fEditorActions.add(fMakeLocalElementGlobal);
-		
-		fMakeLocalTypeGlobal = new MakeAnonymousTypeGlobalAction(
-				selectionProvider, schema);
-		fMakeLocalTypeGlobal.setActionDefinitionId(MAKE_TYPE_GLOBAL);
-		fEditorActions.add(fMakeLocalTypeGlobal);
-
-		initAction(fRenameAction, fSelectionProvider);
-		initAction(fMakeLocalElementGlobal, fSelectionProvider);
-		initAction(fMakeLocalTypeGlobal, fSelectionProvider);
-	}
-
-	private static void initAction(SelectionDispatchAction action,
-			ISelectionProvider provider) {
-
-		Assert.isNotNull(provider);
-		Assert.isNotNull(action);
-		action.update(provider.getSelection());
-		provider.addSelectionChangedListener(action);
-	}
-
-	/*
-	 * (non-Javadoc) Method declared in ActionGroup
-	 */
-	public void fillActionBars(IActionBars actionBars) {
-		super.fillActionBars(actionBars);
-		actionBars.setGlobalActionHandler(RENAME, fRenameAction);
-		retargetFileMenuActions(actionBars);
-	}
-
-	/**
-	 * Retargets the File actions with the corresponding refactoring actions.
-	 * 
-	 * @param actionBars
-	 *            the action bar to register the move and rename action with
-	 */
-	public void retargetFileMenuActions(IActionBars actionBars) {
-		actionBars.setGlobalActionHandler(ActionFactory.RENAME.getId(),
-				fRenameAction);
-	}
-
-	/*
-	 * (non-Javadoc) Method declared in ActionGroup
-	 */
-	public void fillContextMenu(IMenuManager menu) {
-		super.fillContextMenu(menu);
-		addRefactorSubmenu(menu);
-	}
-
-	/*
-	 * @see ActionGroup#dispose()
-	 */
-	public void dispose() {
-		//ISelectionProvider provider = fSite.getSelectionProvider();
-		disposeAction(fRenameAction, fSelectionProvider);
-		disposeAction(fMakeLocalElementGlobal, fSelectionProvider);
-		super.dispose();
-	}
-
-	private void disposeAction(ISelectionChangedListener action,
-			ISelectionProvider provider) {
-		if (action != null)
-			provider.removeSelectionChangedListener(action);
-	}
-
-	private void addRefactorSubmenu(IMenuManager menu) {
-
-		String menuText = RefactoringMessages.getString("RefactorMenu.label"); //$NON-NLS-1$
-
-		fRefactorSubmenu = new MenuManager(menuText, MENU_ID);
-		//if (fEditor != null) {
-			fRefactorSubmenu.addMenuListener(new IMenuListener() {
-				public void menuAboutToShow(IMenuManager manager) {
-					refactorMenuShown(manager);
-				}
-			});
-			fRefactorSubmenu.add(fNoActionAvailable);
-			if (menu.find(fRefactorSubmenu.getId()) == null) {
-				if (menu.find(fGroupName) == null) {
-					menu.add(fRefactorSubmenu);
-				} else {
-					menu.appendToGroup(fGroupName, fRefactorSubmenu);
-				}
-			}
-//		} else {
-//			if (fillRefactorMenu(fRefactorSubmenu) > 0)
-//				menu.appendToGroup(fGroupName, fRefactorSubmenu);
-//		}
-	}
-
-	private int fillRefactorMenu(IMenuManager refactorSubmenu) {
-		int added = 0;
-		refactorSubmenu.add(new Separator(GROUP_REORG));
-		for (Iterator iter = fEditorActions.iterator(); iter.hasNext();) {
-			Action action = (Action) iter.next();
-			added += addAction(refactorSubmenu, action);
-		}
-		return added;
-	}
-
-	private int addAction(IMenuManager menu, IAction action) {
-		if (action != null && action.isEnabled()) {
-			menu.add(action);
-			return 1;
-		}
-		return 0;
-	}
-
-	public int addAction(IAction action) {
-		if (action != null && action.isEnabled()) {
-			fEditorActions.add(action);
-			return 1;
-		}
-		return 0;
-	}
-
-	private void refactorMenuShown(final IMenuManager refactorSubmenu) {
-		// we know that we have an MenuManager since we created it in
-		// addRefactorSubmenu.
-		Menu menu = ((MenuManager) refactorSubmenu).getMenu();
-		menu.addMenuListener(new MenuAdapter() {
-			public void menuHidden(MenuEvent e) {
-				refactorMenuHidden(refactorSubmenu);
-			}
-		});
-//		ISelection selection = (ISelection) fEditor.getSelectionManager()
-//				.getSelection();
-		ISelection selection = fSelectionProvider.getSelection();
-		for (Iterator iter = fEditorActions.iterator(); iter.hasNext();) {
-			Action action = (Action) iter.next();
-			if (action instanceof SelectionDispatchAction) {
-				SelectionDispatchAction selectionAction = (SelectionDispatchAction) action;
-				selectionAction.update(selection);
-			}
-		}
-		refactorSubmenu.removeAll();
-		if (fillRefactorMenu(refactorSubmenu) == 0)
-			refactorSubmenu.add(fNoActionAvailable);
-	}
-
-	private void refactorMenuHidden(IMenuManager manager) {
-//		ISelection selection = (ISelection) fEditor.getSelectionManager()
-//				.getSelection();
-		ISelection selection = fSelectionProvider.getSelection();
-		for (Iterator iter = fEditorActions.iterator(); iter.hasNext();) {
-			Action action = (Action) iter.next();
-			if (action instanceof SelectionDispatchAction) {
-				SelectionDispatchAction selectionAction = (SelectionDispatchAction) action;
-				selectionAction.update(selection);
-			}
-
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameAction.java
deleted file mode 100644
index b01cb8a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameAction.java
+++ /dev/null
@@ -1,95 +0,0 @@
-
-package org.eclipse.wst.xsd.ui.internal.refactor.actions;
-
-
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.xsd.XSDSchema;
-
-
-/**
-* Renames a XML Schema element or workbench resource.
-* <p>
-* Action is applicable to selections containing elements of type
-* <code></code> or <code>IResource</code>.
-* 
-* <p>
-* This class may be instantiated; it is not intended to be subclassed.
-* </p>
-
-*/
-public class RenameAction extends SelectionDispatchAction  {
-
-	private RenameComponentAction fRenameXSDElement;
-	private RenameResourceAction fRenameResource;
-	
-	
-	public RenameAction(ISelectionProvider selectionProvider, XSDSchema schema) {
-		super(selectionProvider);
-		setText(RefactoringMessages.getString("RenameAction.text")); //$NON-NLS-1$
-		fRenameXSDElement= new RenameComponentAction(selectionProvider, schema);
-		fRenameXSDElement.setText(getText());
-		fRenameResource= new RenameResourceAction(selectionProvider);
-		fRenameResource.setText(getText());
-		
-	}
-	
-	/*
-	 * @see ISelectionChangedListener#selectionChanged(SelectionChangedEvent)
-	 */
-	public void selectionChanged(SelectionChangedEvent event) {
-		fRenameXSDElement.selectionChanged(event);
-		if (fRenameResource != null)
-			fRenameResource.selectionChanged(event);
-		setEnabled(computeEnabledState());		
-	}
-
-	/*
-	 * @see SelectionDispatchAction#update(ISelection)
-	 */
-	public void update(ISelection selection) {
-		if(fRenameXSDElement != null){
-			fRenameXSDElement.update(selection);
-		}
-		if (fRenameResource != null)
-			fRenameResource.update(selection);
-		setEnabled(computeEnabledState());		
-	}
-	
-	private boolean computeEnabledState(){
-		if (fRenameResource != null) {
-			return fRenameXSDElement.isEnabled() || fRenameResource.isEnabled();
-		} else {
-			return fRenameXSDElement.isEnabled();
-		}
-	}
-	
-	public void run(IStructuredSelection selection) {
-		if (fRenameXSDElement.isEnabled())
-			fRenameXSDElement.run(selection);
-		if (fRenameResource != null && fRenameResource.isEnabled())
-			fRenameResource.run(selection);
-	}
-
-	public void run(ITextSelection selection) {
-		if (fRenameXSDElement.canRun())
-			fRenameXSDElement.run(selection);
-		else
-			MessageDialog.openInformation(XSDEditorPlugin.getShell(), RefactoringMessages.getString("RenameAction.rename"), RefactoringMessages.getString("RenameAction.unavailable"));  //$NON-NLS-1$ //$NON-NLS-2$
-	}
-	public void run(ISelection selection) {
-	    if(selection == null){
-	    	super.run();
-	    }
-	    else{
-	    	super.run(selection);
-	    }
-		
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameComponentAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameComponentAction.java
deleted file mode 100644
index 0601c43..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameComponentAction.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.actions;
-
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation;
-import org.eclipse.ui.actions.GlobalBuildAction;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.RenameComponentProcessor;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.RenameRefactoringWizard;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.w3c.dom.Node;
-
-public class RenameComponentAction extends SelectionDispatchAction {
-
-	private XSDNamedComponent fSelectedComponent;
-
-	public RenameComponentAction(ISelectionProvider selectionProvider,
-			XSDSchema schema) {
-		super(selectionProvider);
-		setSchema(schema);
-	}
-
-	protected boolean canEnable(XSDConcreteComponent selectedObject) {
-
-		fSelectedComponent = null;
-		if (selectedObject instanceof XSDNamedComponent) {
-			fSelectedComponent = (XSDNamedComponent) selectedObject;
-
-			// if it's element reference, then this action is not appropriate
-			if (fSelectedComponent instanceof XSDElementDeclaration) {
-				XSDElementDeclaration element = (XSDElementDeclaration) fSelectedComponent;
-				if (element.isElementDeclarationReference()) {
-					fSelectedComponent = null;
-				}
-			}
-			if(fSelectedComponent instanceof XSDTypeDefinition){
-				XSDTypeDefinition type = (XSDTypeDefinition) fSelectedComponent;
-				XSDConcreteComponent parent = type.getContainer();
-				if (parent instanceof XSDElementDeclaration) {
-					XSDElementDeclaration element = (XSDElementDeclaration) parent;
-					if(element.getAnonymousTypeDefinition().equals(type)){
-						fSelectedComponent = null;
-					}
-				}
-				else if(parent instanceof XSDAttributeDeclaration) {
-					XSDAttributeDeclaration element = (XSDAttributeDeclaration) parent;
-					if(element.getAnonymousTypeDefinition().equals(type)){
-						fSelectedComponent = null;
-					}
-				}
-			}
-		}
-
-		return canRun();
-	}
-
-	protected boolean canEnable(Object selectedObject) {
-
-		if (selectedObject instanceof XSDConcreteComponent) {
-			return canEnable((XSDConcreteComponent) selectedObject);
-		} else if (selectedObject instanceof Node) {
-			Node node = (Node) selectedObject;
-			if (getSchema() != null) {
-				XSDConcreteComponent concreteComponent = getSchema()
-						.getCorrespondingComponent(node);
-				return canEnable(concreteComponent);
-			}
-		}
-		return false;
-
-	}
-
-	public boolean canRun() {
-
-		return fSelectedComponent != null;
-	}
-
-	public void run(ISelection selection) {
-		if (fSelectedComponent.getName() == null) {
-			fSelectedComponent.setName(new String());
-		}
-		if (fSelectedComponent.getSchema() == null) {
-			if (getSchema() != null) {
-				getSchema().updateElement(true);
-			}
-
-		}
-		RenameComponentProcessor processor = new RenameComponentProcessor(
-				fSelectedComponent, fSelectedComponent.getName());
-		RenameRefactoring refactoring = new RenameRefactoring(processor);
-		try {
-			RefactoringWizard wizard = new RenameRefactoringWizard(
-					refactoring,
-					RefactoringMessages
-							.getString("RenameComponentWizard.defaultPageTitle"), //$NON-NLS-1$ TODO: provide correct strings
-					RefactoringMessages
-							.getString("RenameComponentWizard.inputPage.description"), //$NON-NLS-1$
-					null);
-			RefactoringWizardOpenOperation op = new RefactoringWizardOpenOperation(
-					wizard);
-			int result = op.run(XSDEditorPlugin.getShell(), wizard
-					.getDefaultPageTitle());
-			op.getInitialConditionCheckingStatus();
-			triggerBuild();
-		} catch (InterruptedException e) {
-			// do nothing. User action got cancelled
-		}
-
-	}
-
-	public static void triggerBuild() {
-		if (ResourcesPlugin.getWorkspace().getDescription().isAutoBuilding()) {
-			new GlobalBuildAction(XSDEditorPlugin.getPlugin().getWorkbench()
-					.getActiveWorkbenchWindow(),
-					IncrementalProjectBuilder.INCREMENTAL_BUILD).run();
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameResourceAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameResourceAction.java
deleted file mode 100644
index b025199..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameResourceAction.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.actions;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.RenameRefactoringWizard;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.RenameResourceProcessor;
-
-
-
-public class RenameResourceAction extends SelectionDispatchAction {
-
-
-	public RenameResourceAction(ISelectionProvider selectionProvider) {
-		super(selectionProvider);
-	}
-	
-	public void selectionChanged(IStructuredSelection selection) {
-		IResource element= getResource(selection);
-		if (element == null) {
-			setEnabled(false);
-		} else {
-			RenameResourceProcessor processor= new RenameResourceProcessor(element);
-			setEnabled(processor.isApplicable());
-			
-		}
-	}
-
-	public void run(IStructuredSelection selection) {
-		IResource resource = getResource(selection);
-		RenameResourceProcessor processor= new RenameResourceProcessor(resource);
-
-			if(!processor.isApplicable())
-				return;
-			RenameRefactoring refactoring= new RenameRefactoring(processor);
-			try {
-				RefactoringWizard wizard = new RenameRefactoringWizard(
-						refactoring,
-						RefactoringMessages.getString("RenameComponentWizard.defaultPageTitle"), //$NON-NLS-1$ TODO: provide correct strings
-						RefactoringMessages.getString("RenameComponentWizard.inputPage.description"), //$NON-NLS-1$
-						null);
-				RefactoringWizardOpenOperation op= new RefactoringWizardOpenOperation(wizard);
-				int result= op.run(XSDEditorPlugin.getShell(), wizard.getDefaultPageTitle());
-				op.getInitialConditionCheckingStatus();
-			} catch (InterruptedException e) {
-				// do nothing. User action got cancelled
-			}
-			
-	}
-	
-	private static IResource getResource(IStructuredSelection selection) {
-		if (selection.size() != 1)
-			return null;
-		Object first= selection.getFirstElement();
-		if (! (first instanceof IResource))
-			return null;
-		return (IResource)first;
-	}
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameResourceActionDelegate.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameResourceActionDelegate.java
deleted file mode 100644
index 523f710..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/RenameResourceActionDelegate.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.actions;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * @author ebelisar@ca.ibm.com
- */
-public class RenameResourceActionDelegate implements IObjectActionDelegate {
-	
-	private ISelection fCurrentSelection;
-
-	private IWorkbenchPart fPart;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-		fPart = targetPart;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		if (fCurrentSelection instanceof IStructuredSelection) {
-			IStructuredSelection structuredSelection= (IStructuredSelection) fCurrentSelection;
-			Object first= structuredSelection.getFirstElement();
-			if (first instanceof IFile) {
-				RenameResourceAction renameAction = new RenameResourceAction(fPart.getSite().getSelectionProvider());
-				renameAction.run(structuredSelection);
-			}
-		}
-
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		fCurrentSelection= selection;
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/SelectionDispatchAction.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/SelectionDispatchAction.java
deleted file mode 100644
index 532b74d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/actions/SelectionDispatchAction.java
+++ /dev/null
@@ -1,199 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.actions;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.xsd.XSDSchema;
-
-
-
-/**
- * Action that dispatches the <code>IAction#run()</code> and the 
- * <code>ISelectionChangedListener#selectionChanged</code> 
- * according to the type of the selection. 
- * 
- * <ul>
- * 	<li>if selection is of type <code>ITextSelection</code> then
- * 	<code>run(ITextSelection)</code> and <code>selectionChanged(ITextSelection)</code>
- * 	is called.</li> 
- * 	<li>if selection is of type <code>IStructuredSelection</code> then
- * 	<code>run(IStructuredSelection)</code> and <code>
- * 	selectionChanged(IStructuredSelection)</code> is called.</li>
- * 	<li>default is to call <code>run(ISelection)</code> and <code>
- * 	selectionChanged(ISelection)</code>.</li>
- * </ul>
- * 
- * <p>
- * adapted from <code>org.eclipse.jdt.ui.actions.SelectionDispatchAction</code>
- * </p>
- *   
- * 
- */
-public abstract class SelectionDispatchAction extends Action implements ISelectionChangedListener {
-	
-	private ISelectionProvider fSelectionProvider;
-	
-	private XSDSchema fSchema;
-	
-	protected SelectionDispatchAction(ISelectionProvider selectionProvider) {
-		Assert.isNotNull(selectionProvider);
-		fSelectionProvider = selectionProvider;
-	}
-
-	/**
-	 * Returns the selection provided by the site owning this action.
-	 * 
-	 * @return the site's selection
-	 */	
-	public ISelection getSelection() {
-		if (getSelectionProvider() != null)
-			return getSelectionProvider().getSelection();
-		else
-			return null;
-	}
-
-	/**
-	 * Returns the selection provider managed by the site owning this action.
-	 * 
-	 * @return the site's selection provider	
-	 */
-	public ISelectionProvider getSelectionProvider() {
-		return fSelectionProvider;
-	}
-
-	/**
-	 * Updates the action's enablement state according to the given selection. This
-	 * default implementation calls one of the <code>selectionChanged</code>
-	 * methods depending on the type of the passed selection.
-	 * 
-	 * @param selection the selection this action is working on
-	 */
-	public void update(ISelection selection) {
-		dispatchSelectionChanged(selection);
-	}
-
-	/**
-	 * Notifies this action that the given structured selection has changed. This default
-	 * implementation calls <code>selectionChanged(ISelection selection)</code>.
-	 * 
-	 * @param selection the new selection
- 	 */
-	public void selectionChanged(IStructuredSelection selection) {
-		if (selection.size() == 1) {
-			Object object = selection.getFirstElement();
-			setEnabled(canEnable(object));
-		}
-		else{
-			setEnabled(false);
-		}
-	}
-	
-	protected boolean canEnable(Object selectedObject){
-		return false;
-	}
-
-	/**
-	 * Executes this actions with the given structured selection. This default implementation
-	 * calls <code>run(ISelection selection)</code>.
-	 */
-	public void run(IStructuredSelection selection) {
-		run((ISelection)selection);
-	}
-
-	
-	/**
-	 * Notifies this action that the given text selection has changed.  This default
-	 * implementation calls <code>selectionChanged(ISelection selection)</code>.
-	 * 
-	 * @param selection the new selection
- 	 */
-	public void selectionChanged(ITextSelection selection) {
-		selectionChanged((ISelection)selection);
-	}
-	
-	/**
-	 * Executes this actions with the given text selection. This default implementation
-	 * calls <code>run(ISelection selection)</code>.
-	 */
-	public void run(ITextSelection selection) {
-		run((ISelection)selection);
-	}
-	
-	/**
-	 * Notifies this action that the given selection has changed.  This default
-	 * implementation sets the action's enablement state to <code>false</code>.
-	 * 
-	 * @param selection the new selection
- 	 */
-	public void selectionChanged(ISelection selection) {
-		setEnabled(false);
-	}
-	
-	/**
-	 * Executes this actions with the given selection. This default implementation
-	 * does nothing.
-	 */
-	public void run(ISelection selection) {
-		System.out.println("SelectionDispatchAction.run");
-	}
-
-	/* (non-Javadoc)
-	 * Method declared on IAction.
-	 */
-	public void run() {
-		dispatchRun(getSelection());
-		
-	}
-	
-	/* (non-Javadoc)
-	 * Method declared on ISelectionChangedListener.
-	 */
-	public void selectionChanged(SelectionChangedEvent event) {
-		dispatchSelectionChanged(event.getSelection());
-	}
-
-	private void dispatchSelectionChanged(ISelection selection) {
-		if (selection instanceof IStructuredSelection) {
-			selectionChanged((IStructuredSelection)selection);
-		} else if (selection instanceof ITextSelection) {
-			selectionChanged((ITextSelection)selection);
-		} else {
-			selectionChanged(selection);
-		}
-	}
-
-	protected void dispatchRun(ISelection selection) {
-		if (selection instanceof IStructuredSelection) {
-			run((IStructuredSelection)selection);
-		}  else if (selection instanceof ITextSelection) {
-			run((ITextSelection)selection);
-		} else {
-			run(selection);
-		}
-	}
-
-	public XSDSchema getSchema() {
-		return fSchema;
-	}
-
-	public void setSchema(XSDSchema schema) {
-		fSchema = schema;
-	}
-	
-	
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/BaseCleanup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/BaseCleanup.java
deleted file mode 100644
index f45a1e2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/BaseCleanup.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.xsd.ui.internal.refactor.delete;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.w3c.dom.Element;
-
-public abstract class BaseCleanup extends XSDVisitor
-{
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitSchema(XSDSchema)
-   */
-  public void visitSchema(XSDSchema schema)
-  {
-    super.visitSchema(schema);
-    
-    // now remove all children that were queued up for removal
-    
-    for (Iterator iter = childrenToRemove.iterator(); iter.hasNext(); )
-    {
-      Element domElement = (Element) iter.next();
-      XSDDOMHelper.removeNodeAndWhitespace(domElement);
-//      domElement.getParentNode().removeChild(domElement);
-    }
-  }
-
-
-  protected ArrayList messages = new ArrayList();
-
-  public ArrayList getMessages()
-  {
-  	return messages;
-  }
-  
-
-  protected void addMessage(String msg, XSDConcreteComponent component)
-  {
-////    ErrorMessage message = new ErrorMessage();
-//    
-//    XSDConcreteComponent currComp = component;
-//    while (!(currComp instanceof XSDSchemaContent) && currComp.getContainer() != null)
-//    {
-//      currComp = currComp.getContainer();
-//    }
-//
-//    Element domElement = currComp.getElement();
-//    Node parent = domElement;
-//    while (!(parent instanceof NodeImpl) && parent != null)
-//    {
-//      parent = parent.getParentNode();
-//    }
-//    if (parent instanceof NodeImpl)
-//    {
-//      // message.setModelObject(currComp.getElement());
-//			message.setTargetObject(currComp.getElement());
-//    }
-//    message.setLocalizedMessage(msg);
-//  ???
-//    addMessage(message);
-  }
-    
-
-// // protected void addMessage(ErrorMessage message)
-//	protected void addMessage(Message message)
-//  {
-//    messages.add(message);
-//  }
-  
-
-  protected ArrayList childrenToRemove = new ArrayList();
-  
-
-  protected String getNamedComponentName(XSDConcreteComponent concrete)
-  {
-    String name = null;
-    if (concrete instanceof XSDNamedComponent)
-    {
-      name = ((XSDNamedComponent)concrete).getName();
-    }
-    
-    XSDConcreteComponent comp = concrete;
-    while (comp != null && name == null)
-    {
-      comp = comp.getContainer();
-      if (comp instanceof XSDNamedComponent)
-      {
-        name = ((XSDNamedComponent)comp).getName();
-      }
-    }
-    return name != null ? name : "";
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/BaseGlobalCleanup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/BaseGlobalCleanup.java
deleted file mode 100644
index 6503971..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/BaseGlobalCleanup.java
+++ /dev/null
@@ -1,29 +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.xsd.ui.internal.refactor.delete;
-
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDNamedComponent;
-
-public class BaseGlobalCleanup extends BaseCleanup
-{
-  public BaseGlobalCleanup(XSDConcreteComponent deletedItem)
-  {
-    this.deletedItem = deletedItem;
-  }
-  
-  protected XSDConcreteComponent deletedItem;
-  
-  protected String getDeletedQName()
-  {
-    return ((XSDNamedComponent)deletedItem).getQName();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalAttributeCleanup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalAttributeCleanup.java
deleted file mode 100644
index 64c5779..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalAttributeCleanup.java
+++ /dev/null
@@ -1,106 +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.xsd.ui.internal.refactor.delete;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class GlobalAttributeCleanup extends BaseGlobalCleanup
-{
-  /**
-   * Constructor for GlobalAttributeCleanup.
-   * @param deletedItem
-   */
-  public GlobalAttributeCleanup(XSDConcreteComponent deletedItem)
-  {
-    super(deletedItem);
-  }
-  
-  protected String replacementName = null;
-  
-  protected String getReplacementElementName()
-  {
-    if (replacementName == null)
-    {
-      TypesHelper helper = new TypesHelper(schema);
-      
-      List elements = helper.getGlobalAttributes();
-      
-      String deletedName = getDeletedQName();
-      for (Iterator i = elements.iterator(); i.hasNext();)
-      {
-        String name = (String) i.next();
-        if (!name.equals(deletedName))
-        {
-          replacementName = name;
-          break;
-        }
-      }
-    }
-    return replacementName;
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitComplexTypeDefinition(XSDComplexTypeDefinition)
-   */
-  public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-  {
-    super.visitComplexTypeDefinition(type);
-    if (type.getAttributeContents() != null)
-    {
-      for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent) iter.next();
-        if (attrGroupContent instanceof XSDAttributeUse)
-        {
-          XSDAttributeUse attrUse = (XSDAttributeUse) attrGroupContent;
-          XSDAttributeDeclaration attrDecl = attrUse.getContent();
-          
-          // now is this a reference?
-          if (attrDecl != null && attrDecl.isAttributeDeclarationReference())
-          {
-            if (deletedItem.equals(attrDecl.getResolvedAttributeDeclaration()))
-            {
-              if (getReplacementElementName() != null)
-              {
-                // String msg = XSDPlugin.getSchemaString("_INFO_RESET_ATTRIBUTE_REFERENCE") + " <" + getReplacementElementName() + ">";
-								String msg = "Reset attribute reference " + " <" + getReplacementElementName() + ">";
-                addMessage(msg, attrUse);
-                attrUse.getElement().setAttribute(XSDConstants.REF_ATTRIBUTE, getReplacementElementName());
-              }
-              else
-              {
-                String name = getNamedComponentName(type);
-                // String msg = XSDPlugin.getSchemaString("_INFO_REMOVE_ATTRIBUTE_REFERENCE") +
-								String msg = "Remove attribute reference " +
-                         " <" + name + ">";
-                addMessage(msg, attrUse.getContainer());
-                
-                childrenToRemove.add(attrDecl.getElement());
-              }
-            }
-          }
-        }
-      }
-    }
-  }
-
-
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalAttributeGroupCleanup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalAttributeGroupCleanup.java
deleted file mode 100644
index 2d5ed5c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalAttributeGroupCleanup.java
+++ /dev/null
@@ -1,102 +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.xsd.ui.internal.refactor.delete;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class GlobalAttributeGroupCleanup extends BaseGlobalCleanup
-{
-  /**
-   * Constructor for GlobalAttributeGroupCleanup.
-   * @param deletedItem
-   */
-  public GlobalAttributeGroupCleanup(XSDConcreteComponent deletedItem)
-  {
-    super(deletedItem);
-  }
-  
-  
-  protected String replacementName = null;
-  
-  protected String getReplacementElementName()
-  {
-    if (replacementName == null)
-    {
-      TypesHelper helper = new TypesHelper(schema);
-      
-      List elements = helper.getGlobalAttributeGroups();
-      
-      String deletedName = getDeletedQName();
-      for (Iterator i = elements.iterator(); i.hasNext();)
-      {
-        String name = (String) i.next();
-        if (!name.equals(deletedName))
-        {
-          replacementName = name;
-          break;
-        }
-      }
-    }
-    return replacementName;
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitComplexTypeDefinition(XSDComplexTypeDefinition)
-   */
-  public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-  {
-    super.visitComplexTypeDefinition(type);
-    if (type.getAttributeContents() != null)
-    {
-      for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent) iter.next();
-
-        if (attrGroupContent instanceof XSDAttributeGroupDefinition)
-        {
-          XSDAttributeGroupDefinition attrGroupDef = (XSDAttributeGroupDefinition) attrGroupContent;
-          
-          if (deletedItem.equals(attrGroupDef.getResolvedAttributeGroupDefinition()))
-          {
-            if (getReplacementElementName() != null)
-            {
-              // String msg = XSDPlugin.getSchemaString("_INFO_RESET_ATTRIBUTE_GROUP_REFERENCE") + " <" + getReplacementElementName() + ">";
-							String msg = "Reset attribute group reference " + " <" + getReplacementElementName() + ">";
-              addMessage(msg, attrGroupDef);
-              attrGroupDef.getElement().setAttribute(XSDConstants.REF_ATTRIBUTE, getReplacementElementName());
-            }
-            else
-            {
-              // remove the attribute group reference
-              String name = getNamedComponentName(type);
-              // String msg = XSDPlugin.getSchemaString("_INFO_REMOVE_ATTRIBUTE_GROUP_REFERENCE") + " <" + name + ">";
-							String msg = "Remove attribute group reference " + " <" + name + ">";
-  
-              addMessage(msg, attrGroupDef.getContainer());
-              
-              childrenToRemove.add(attrGroupDef.getElement());
-            }
-          }
-        }
-      }
-    }
-    
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalElementCleanup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalElementCleanup.java
deleted file mode 100644
index 9719e39..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalElementCleanup.java
+++ /dev/null
@@ -1,84 +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.xsd.ui.internal.refactor.delete;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class GlobalElementCleanup extends BaseGlobalCleanup
-{
-    
-  /**
-   * Constructor for GlobalElementCleanup.
-   * @param deletedItem
-   */
-  public GlobalElementCleanup(XSDConcreteComponent deletedItem)
-  {
-    super(deletedItem);
-  }
-
-  protected String replacementName = null;
-  
-  protected String getReplacementElementName()
-  {
-    if (replacementName == null)
-    {
-      TypesHelper helper = new TypesHelper(schema);
-      
-      List elements = helper.getGlobalElements();
-      
-      String deletedName = getDeletedQName();
-      for (Iterator i = elements.iterator(); i.hasNext();)
-      {
-        String name = (String) i.next();
-        if (!name.equals(deletedName))
-        {
-          replacementName = name;
-          break;
-        }
-      }
-    }
-    return replacementName;
-  }
-  
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitElementDeclaration(XSDElementDeclaration)
-   */
-  public void visitElementDeclaration(XSDElementDeclaration element)
-  {
-    if (element.isElementDeclarationReference())
-    {
-      if (deletedItem.equals(element.getResolvedElementDeclaration()))
-      {
-        if (getReplacementElementName() != null)
-        {
-          // KCPort String msg = XSDPlugin.getSchemaString("_INFO_RESET_ELEMENT_REFERENCE") + " <" + getReplacementElementName() + ">";
-					String msg = "_INFO_RESET_ELEMENT_REFERENCE" + " <" + getReplacementElementName() + ">";
-          addMessage(msg, element);
-          element.getElement().setAttribute(XSDConstants.REF_ATTRIBUTE, getReplacementElementName());
-        }
-        else
-        {
-          // KCPort  String msg = XSDPlugin.getSchemaString("_INFO_REMOVE_ELEMENT_REFERENCE") + " <" + getNamedComponentName(element.getContainer()) + ">";
-					String msg = "_INFO_REMOVE_ELEMENT_REFERENCE" + " <" + getNamedComponentName(element.getContainer()) + ">";
-          addMessage(msg, element.getContainer());
-          childrenToRemove.add(element.getElement());
-        }
-      }
-    }
-    super.visitElementDeclaration(element);
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalGroupCleanup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalGroupCleanup.java
deleted file mode 100644
index 9486ff2..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalGroupCleanup.java
+++ /dev/null
@@ -1,84 +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.xsd.ui.internal.refactor.delete;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class GlobalGroupCleanup extends BaseGlobalCleanup
-{
-  /**
-   * Constructor for GlobalGroupCleanup.
-   * @param deletedItem
-   */
-  public GlobalGroupCleanup(XSDConcreteComponent deletedItem)
-  {
-    super(deletedItem);
-  }
-
-  protected String replacementName = null;
-  
-  protected String getReplacementElementName()
-  {
-    if (replacementName == null)
-    {
-      TypesHelper helper = new TypesHelper(schema);
-      
-      List elements = helper.getModelGroups();
-      
-      String deletedName = getDeletedQName();
-      for (Iterator i = elements.iterator(); i.hasNext();)
-      {
-        String name = (String) i.next();
-        if (!name.equals(deletedName))
-        {
-          replacementName = name;
-          break;
-        }
-      }
-    }
-    return replacementName;
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitModelGroupDefinition(XSDModelGroupDefinition)
-   */
-  public void visitModelGroupDefinition(XSDModelGroupDefinition modelGroup)
-  {
-    super.visitModelGroupDefinition(modelGroup);
-    if (modelGroup.isModelGroupDefinitionReference())
-    {
-      if (deletedItem.equals(modelGroup.getResolvedModelGroupDefinition()))
-      {
-        if (getReplacementElementName() != null)
-        {
-          // KCPort String msg = XSDPlugin.getSchemaString("_INFO_RESET_GROUP_REFERENCE") + " <" + getReplacementElementName() + ">";
-					String msg = "_INFO_RESET_GROUP_REFERENCE" + " <" + getReplacementElementName() + ">";
-          addMessage(msg, modelGroup);
-          modelGroup.getElement().setAttribute(XSDConstants.REF_ATTRIBUTE, getReplacementElementName());
-        }
-        else
-        {
-          String name = getNamedComponentName(modelGroup);
-          // KCPort String msg = XSDPlugin.getSchemaString("_INFO_REMOVE_GROUP_REFERENCE") + " <" + name + ">";
-					String msg = "_INFO_REMOVE_GROUP_REFERENCE" + " <" + name + ">";
-          addMessage(msg, modelGroup.getContainer());
-          childrenToRemove.add(modelGroup.getElement());
-        }
-      }
-    }      
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalSimpleOrComplexTypeCleanup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalSimpleOrComplexTypeCleanup.java
deleted file mode 100644
index f4a0cc3..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/GlobalSimpleOrComplexTypeCleanup.java
+++ /dev/null
@@ -1,152 +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.xsd.ui.internal.refactor.delete;
-
-import java.text.MessageFormat;
-import java.util.Iterator;
-
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class GlobalSimpleOrComplexTypeCleanup extends BaseGlobalCleanup
-{
-  /**
-   * Constructor for GlobalSimpleOrComplexTypeCleanup.
-   * @param deletedItem
-   */
-  public GlobalSimpleOrComplexTypeCleanup(XSDConcreteComponent deletedItem)
-  {
-    super(deletedItem);
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitElementDeclaration(XSDElementDeclaration)
-   */
-  public void visitElementDeclaration(XSDElementDeclaration element)
-  {
-    if (!element.isElementDeclarationReference() &&
-        deletedItem.equals(element.getTypeDefinition()))
-    {
-      resetTypeToString(element.getElement());
-      
-      String msg = "";
-      if (element.isGlobal())
-      {
-        // KCPort String pattern = XSDPlugin.getSchemaString("_INFO_RESET_GLOBAL_ELEMENT");
-				String pattern = "_INFO_RESET_GLOBAL_ELEMENT";
-        Object args[] = {element.getName()};
-        msg = MessageFormat.format(pattern, args);
-      }
-      else
-      {
-        // KCPort msg = XSDPlugin.getSchemaString("_INFO_RESET_ELEMENT");
-				msg = "_INFO_RESET_ELEMENT";
-        // KCPort msg += "<" + element.getName() + "> " + XSDPlugin.getSchemaString("_UI_TO_TYPE_STRING");
-				msg += "<" + element.getName() + "> " + "_UI_TO_TYPE_STRING";
-      }
-      addMessage(msg, element);
-    }
-
-
-    super.visitElementDeclaration(element);
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitComplexTypeDefinition(XSDComplexTypeDefinition)
-   */
-  public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-  {
-    super.visitComplexTypeDefinition(type);
-    if (type.getAttributeContents() != null)
-    {
-      for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent) iter.next();
-        if (attrGroupContent instanceof XSDAttributeUse)
-        {
-          XSDAttributeUse attrUse = (XSDAttributeUse) attrGroupContent;
-          XSDAttributeDeclaration attrDecl = attrUse.getContent();
-          
-          // now is this a reference?
-          if (attrDecl != null &&
-              !attrDecl.isAttributeDeclarationReference() &&
-              deletedItem.equals(attrDecl.getTypeDefinition()))
-          {
-              resetTypeToString(attrDecl.getElement());
-              // reset the type of the attribute decl to string
-              // KCPort String msg = XSDPlugin.getSchemaString("_INFO_RESET_ATTRIBUTE") +
-						  String msg = "_INFO_RESET_ATTRIBUTE" +
-                          " <" + attrDecl.getName() + "> " +
-                          // KCPort XSDPlugin.getSchemaString("_UI_TO_TYPE_STRING");
-						               "_UI_TO_TYPE_STRING"; 
-              addMessage(msg, attrDecl);
-              resetTypeToString(attrDecl.getElement());
-          }
-        }
-      }
-    }
-    XSDTypeDefinition base = type.getBaseTypeDefinition();
-    if (base != null && base == deletedItem)
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Element derivedByNode = helper.getDerivedByElement(type.getElement());
-
-      // KCPort String msg = XSDPlugin.getSchemaString("_INFO_RESET_COMPLEX_TYPE") +
-			String msg = "_INFO_RESET_COMPLEX_TYPE" +
-              " <" + getNamedComponentName(type) + "> " +
-              // KCPort XSDPlugin.getSchemaString("_UI_DERIVATION");
-			        "_UI_DERIVATION";
-      addMessage(msg, type);
-      
-      type.setBaseTypeDefinition(null);
-
-      java.util.List listOfCT = schema.getTypeDefinitions();
-      XSDTypeDefinition typeDefinition = null;
-      if (listOfCT.size() > 0)
-      {
-        for (Iterator iter = listOfCT.iterator(); iter.hasNext(); )
-        {
-          typeDefinition = (XSDTypeDefinition)iter.next();
-          if (typeDefinition != deletedItem)
-          {
-            type.setBaseTypeDefinition(typeDefinition);
-          }
-        }
-      }
-    }
-  }
-
-  public void visitSimpleTypeDefinition(XSDSimpleTypeDefinition type)
-  {
-    if (type.getBaseTypeDefinition() == deletedItem)
-    {
-      type.setBaseTypeDefinition(schema.resolveSimpleTypeDefinition(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001, "string"));
-    }
-  }
-
-  protected void resetTypeToString(Element element)
-  {
-    String prefix = element.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    
-    element.setAttribute(XSDConstants.TYPE_ATTRIBUTE, prefix + "string"); 
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/XSDExternalFileCleanup.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/XSDExternalFileCleanup.java
deleted file mode 100644
index aa40416..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/delete/XSDExternalFileCleanup.java
+++ /dev/null
@@ -1,299 +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.xsd.ui.internal.refactor.delete;
-
-import java.text.MessageFormat;
-import java.util.Iterator;
-
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaContent;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class XSDExternalFileCleanup extends BaseCleanup
-{
-  /**
-   * Constructor for XSDExternalFileCleanup.
-   */
-  public XSDExternalFileCleanup(String oldFilename)
-  {
-    super();
-    this.oldFilename = oldFilename;
-  }
-  
-  protected XSDSchema deletedSchema;
-  public XSDExternalFileCleanup(XSDSchema deletedSchema)
-  {
-    this.deletedSchema = deletedSchema;
-  }
-
-  protected String oldFilename;
-  
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitElementDeclaration(XSDElementDeclaration)
-   */
-  public void visitElementDeclaration(XSDElementDeclaration element)
-  {
-    boolean addMessage = true;
-    String schemaLocation = element.getSchema().getSchemaLocation();
-    if (schemaLocation!= null)
-    {
-      if (!schemaLocation.equals(schema.getSchemaLocation()))
-      {
-        addMessage = false;
-      }
-    }
-    if (element.isElementDeclarationReference())
-    {
-      if (isFromDeletedSchema(element.getResolvedElementDeclaration()))
-      {
-        if (addMessage)
-        {
-          // String msg = XSDPlugin.getSchemaString("_INFO_REMOVE_ELEMENT_REFERENCE") + " <" + getNamedComponentName(element.getContainer()) + ">";
-					String msg = "_INFO_REMOVE_ELEMENT_REFERENCE" + " <" + getNamedComponentName(element.getContainer()) + ">";
-          addMessage(msg, element.getContainer());
-        }
-        childrenToRemove.add(element.getElement());
-//        Element domElement = element.getElement();
-//        domElement.getParentNode().removeChild(domElement);     
-      }
-    }
-    else if (removeType(element))
-    {
-      String msg = "";
-      if (element.isGlobal())
-      {
-      	// String pattern = XSDPlugin.getSchemaString("_INFO_RESET_GLOBAL_ELEMENT");
-				String pattern = "_INFO_RESET_GLOBAL_ELEMENT";
-        Object args[] = {element.getName()};
-        msg = MessageFormat.format(pattern, args);
-      }
-      else
-      {
-      	// msg = XSDPlugin.getSchemaString("_INFO_RESET_ELEMENT");
-				msg = "_INFO_RESET_ELEMENT";
-      	// msg += "<" + element.getName() + "> " + XSDPlugin.getSchemaString("_UI_TO_TYPE_STRING");
-				msg += "<" + element.getName() + "> " + "_UI_TO_TYPE_STRING";
-      }
-      if (addMessage)
-      {
-        addMessage(msg, element);
-      }
-    }
-
-
-    super.visitElementDeclaration(element);
-  }
-
-  protected void resetTypeToString(Element element)
-  {
-    String prefix = element.getPrefix();
-    prefix = (prefix == null) ? "" : (prefix + ":");
-    
-    element.setAttribute(XSDConstants.TYPE_ATTRIBUTE, prefix + "string"); 
-  }
-  
-  protected boolean removeType(XSDElementDeclaration element)
-  {
-  	if (removeType(element.getTypeDefinition()))
-  	{
-      resetTypeToString(element.getElement());
-  	  return true;
-  	}
-  	return false;
-  }
-  
-  protected boolean isFromDeletedSchema(XSDConcreteComponent component)
-  {
-    if (component == null)
-    {
-      return false;
-    }
-    XSDConcreteComponent root = component.getRootContainer();
-
-    boolean isFromDeletedSchema = false;
-    if (deletedSchema.getContents() != null)
-    {
-      Iterator contents = deletedSchema.getContents().iterator();
-      while (contents.hasNext())
-      {
-        XSDSchemaContent content = (XSDSchemaContent)contents.next();
-        if (content instanceof XSDSchemaDirective)
-        {
-          XSDSchema aSchema = ((XSDSchemaDirective)content).getResolvedSchema();
-          if (root != null && root.equals(aSchema))
-          {
-            isFromDeletedSchema = true;
-          }
-        }
-      }
-    }
-    if (root != null && root.equals(deletedSchema))
-    {
-      isFromDeletedSchema = true;
-    }
-    return isFromDeletedSchema;
-  }
-      
-  /**
-   * Remove the type from the element if it belongs to the external file
-   */
-  protected boolean removeType(XSDTypeDefinition typeDef)
-  {
-    if (typeDef == null)
-    {
-      return false;
-    }
-    return isFromDeletedSchema(typeDef);
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.utility.XSDVisitor#visitComplexTypeDefinition(XSDComplexTypeDefinition)
-   */
-  public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-  {
-    super.visitComplexTypeDefinition(type);
-    if (type.getAttributeContents() != null)
-    {
-      for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent) iter.next();
-        if (attrGroupContent instanceof XSDAttributeUse)
-        {
-          XSDAttributeUse attrUse = (XSDAttributeUse) attrGroupContent;
-          XSDAttributeDeclaration attrDecl = attrUse.getContent();
-          
-          // now is this a reference?
-          if (attrDecl.isAttributeDeclarationReference())
-          {
-            if (isFromDeletedSchema(attrDecl.getResolvedAttributeDeclaration()))
-            {
-              String name = getNamedComponentName(type);
-              // String msg = XSDPlugin.getSchemaString("_INFO_REMOVE_ATTRIBUTE_REFERENCE") +
-							String msg = "_INFO_REMOVE_ATTRIBUTE_REFERENCE" +
-                       " <" + name + ">";
-              addMessage(msg, attrDecl.getContainer());
-              
-              childrenToRemove.add(attrDecl.getElement());
-            }
-          }
-          // otherwise check the type of the attribute and see if it is from the deleted schema
-          else
-          {
-            if (removeType(attrDecl.getTypeDefinition()))
-            {
-              // reset the type of the attribute decl to string
-              // String msg = XSDPlugin.getSchemaString("_INFO_RESET_ATTRIBUTE") +
-							String msg = "_INFO_RESET_ATTRIBUTE" +
-                          " <" + attrDecl.getName() + "> " +
-                          // XSDPlugin.getSchemaString("_UI_TO_TYPE_STRING");
-							            "_UI_TO_TYPE_STRING";
-              addMessage(msg, attrDecl);
-              resetTypeToString(attrDecl.getElement());
-
-            }
-          }
-        }
-        else if (attrGroupContent instanceof XSDAttributeGroupDefinition)
-        {
-          XSDAttributeGroupDefinition attrGroupDef = (XSDAttributeGroupDefinition) attrGroupContent;
-          
-          if (isFromDeletedSchema(attrGroupDef.getResolvedAttributeGroupDefinition()))
-          {
-          	// remove the attribute group reference
-            String name = getNamedComponentName(type);
-            // String msg = XSDPlugin.getSchemaString("_INFO_REMOVE_ATTRIBUTE_GROUP_REFERENCE") + " <" + name + ">";
-						String msg = "_INFO_REMOVE_ATTRIBUTE_GROUP_REFERENCE" + " <" + name + ">";
-
-            addMessage(msg, attrGroupDef.getContainer());
-            
-            childrenToRemove.add(attrGroupDef.getElement());
-          }
-        }
-      }
-    }
-
-    // For the complex type with simple content case, see the visitComplexTypeDefinition method
-    XSDTypeDefinition base = type.getBaseTypeDefinition();
-    if (base instanceof XSDSimpleTypeDefinition)
-    {
-      XSDSimpleTypeDefinition baseType = (XSDSimpleTypeDefinition)base;
-      if (isFromDeletedSchema(baseType))
-      {
-        // String msg = XSDPlugin.getSchemaString("_INFO_RESET_COMPLEX_TYPE") +
-				String msg = "_INFO_RESET_COMPLEX_TYPE" +
-                " <" + getNamedComponentName(type) + "> " +
-                // XSDPlugin.getSchemaString("_UI_DERIVATION");
-				        "_UI_DERIVATION";
-        addMessage(msg, type);
-      
-        type.setBaseTypeDefinition(schema.getSchemaForSchema().resolveSimpleTypeDefinition("string"));
-      }
-    }
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.utility.XSDVisitor#visitModelGroupDefinition(XSDModelGroupDefinition)
-   */
-  public void visitModelGroupDefinition(XSDModelGroupDefinition modelGroup)
-  {
-    super.visitModelGroupDefinition(modelGroup);
-    if (modelGroup.isModelGroupDefinitionReference())
-    {
-      if (isFromDeletedSchema(modelGroup.getResolvedModelGroupDefinition()))
-      {
-        String name = getNamedComponentName(modelGroup);
-        // String msg = XSDPlugin.getSchemaString("_INFO_REMOVE_GROUP_REFERENCE") + " <" + name + ">";
-				String msg = "_INFO_REMOVE_GROUP_REFERENCE" + " <" + name + ">";
-        addMessage(msg, modelGroup.getContainer());
-        childrenToRemove.add(modelGroup.getElement());
-      }
-    }      
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.utility.XSDVisitor#visitSimpleTypeDefinition(XSDSimpleTypeDefinition)
-   */
-  public void visitSimpleTypeDefinition(XSDSimpleTypeDefinition type)
-  {
-    super.visitSimpleTypeDefinition(type);
-    XSDSimpleTypeDefinition baseType = type.getBaseTypeDefinition();
-    if (isFromDeletedSchema(baseType))
-    {
-      // String msg = XSDPlugin.getSchemaString("_INFO_RESET_SIMPLE_TYPE") +
-			String msg = "_INFO_RESET_SIMPLE_TYPE" +
-              " <" + getNamedComponentName(type) + "> " +
-              // XSDPlugin.getSchemaString("_UI_DERIVATION");
-			        "_UI_DERIVATION";
-      addMessage(msg, type);
-      
-
-    // This will set the simple Type base to string 
-    // For the complex type with simple content case, see the visitComplexTypeDefinition method
-
-      type.getFacetContents().clear();
-      type.getFacets().clear();
-      type.setBaseTypeDefinition(schema.getSchemaForSchema().resolveSimpleTypeDefinition("string"));
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/messages.properties b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/messages.properties
deleted file mode 100644
index 5432863..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/messages.properties
+++ /dev/null
@@ -1,33 +0,0 @@
-RefactorMenu.label=Refactor
-RefactorActionGroup.no_refactoring_available=<no refactoring available>
-
-RenameAction.rename=Rename
-RenameAction.unavailable=Operation unavailable on the current selection.\nSelect a ....
-RenameAction.text=Re&name...
-
-RenameInputWizardPage.new_name= &New name:
-RenameRefactoringWizard.internal_error= Internal error during name checking: {0}
-
-
-RenameXSDElementAction.exception=Unexpected exception occurred. See log for details
-RenameXSDElementAction.not_available=Operation unavailable on the current selection.\nSelect a XSD project, folder, resource, file, attribute declarations,  attribute group definitions, complex type definitions, element declarations, identity constraint definitions, model groups definitions, notation declarations, or simple type definitions.
-RenameXSDElementAction.name=Rename
-
-
-RenameSupport.dialog.title=Rename
-RenameSupport.not_available=Rename support not available
-
-RenameComponentWizard.defaultPageTitle=Rename wizard
-RenameComponentWizard.inputPage.description=Rename XML Schema component
-
-RenameInputWizardPage.update_references=Update references
-XSDComponentRenameChange.name=XML Schema component renaming: {0} to {1}
-XSDComponentRenameChange.Renaming=Renaming...
-XSDResourceRenameParticipant.compositeChangeName=XSD file rename references updating changes
-XSDRenameResourceChange.rename_resource=Renaming resource name references
-XSDRenameResourceChange.name=Resource rename: {0} to {1}
-RenameResourceRefactoring.Internal_Error=Internal error
-RenameResourceRefactoring.alread_exists=Resource already exist
-RenameResourceRefactoring.invalidName=Invalid resource name
-RenameResourceProcessor.name=Resource renaming
-MakeLocalElementGlobalAction.text=Make Local Element Global
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/BaseRenamer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/BaseRenamer.java
deleted file mode 100644
index 1a789e8..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/BaseRenamer.java
+++ /dev/null
@@ -1,61 +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.xsd.ui.internal.refactor.rename;
-
-import org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.util.XSDConstants;
-
-
-/**
- * Base class for rename helpers of various named root components.  This is to be used when
- * the user renames a global element, group, attribute, attribute group, complex/simple type etc
- */
-public abstract class BaseRenamer extends XSDVisitor
-{
-
-  
-  /**
-   * Method BaseRenamer.
-   * @param globalComponent - this is the component (who's parent is the schema) that has been renamed
-   */
-  public BaseRenamer(XSDNamedComponent globalComponent, String newName)
-  {
-    this.globalComponent = globalComponent;
-    this.newName = newName;
-  }
-  
-  public String getNewQName()
-  {
-    String qName = null;
-    if (newName != null)
-    {
-      qName = XSDConstants.lookupQualifier(globalComponent.getElement(), globalComponent.getTargetNamespace());
-      if (qName != null && qName.length() > 0)
-      {
-        qName += ":" + newName;
-      }
-      else
-      {
-        qName = newName; 
-      }
-    }
-    else
-    {
-      qName = newName;
-    }
-    
-    return qName;
-  }
-  
-  protected String newName;
-  protected XSDNamedComponent globalComponent;
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ComponentRenameChange.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ComponentRenameChange.java
deleted file mode 100644
index 52549d3..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ComponentRenameChange.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.SubProgressMonitor;
-import org.eclipse.jface.text.Assert;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.TextChange;
-import org.eclipse.ltk.core.refactoring.TextFileChange;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDSwitch;
-
-
-/**
- * @author ebelisar
- *
- */
-public class ComponentRenameChange extends Change {
-	
-	private Map fChanges;
-	private String fNewName;
-
-	private String fOldName;
-
-	private XSDNamedComponent fNamedComponent;
-
-	public ComponentRenameChange(XSDNamedComponent component, String oldName, String newName) {
-		Assert.isNotNull(newName, "new name"); //$NON-NLS-1$
-		Assert.isNotNull(oldName, "old name"); //$NON-NLS-1$
-
-		fNamedComponent = component;
-		fOldName= oldName;
-		fNewName= newName;
-	}
-	
-//	public static Change[] createChangesFor(XSDNamedComponent component, String newName) {
-//		// TODO: P1 implement search of XSD files	
-//		XSDSearchSupport support = XSDSearchSupport.getInstance();
-//		RefactorSearchRequestor requestor = new RefactorSearchRequestor(component, newName);
-//		support.searchRunnable(component, IXSDSearchConstants.WORKSPACE_SCOPE, requestor);
-//
-//		return requestor.getChanges();
-//
-//	}
-
-	protected Change createUndoChange() {
-		return new ComponentRenameChange(fNamedComponent, getNewName(), getOldName());
-	}
-	
-	protected void doRename(IProgressMonitor pm) throws CoreException {
-		// TODO P1 change temporary rename of XSD model components 
-		performModify(getNewName());
-	}
-	
-	public void performModify(final String value)
-	  {
-	    if (value.length() > 0)
-	    {
-	      DelayedRenameRunnable runnable = new DelayedRenameRunnable(fNamedComponent, value);
-	      Display.getCurrent().asyncExec(runnable);
-	    }
-	  }      
-
-	  protected static class DelayedRenameRunnable implements Runnable
-	  {
-	    protected XSDNamedComponent component;
-	    protected String name;
-
-	    public DelayedRenameRunnable(XSDNamedComponent component, String name)
-	    {                                                               
-	      this.component = component;
-	      this.name = name;
-	    }                                                              
-
-	    public void run()
-	    {                      
-	      component.updateElement(true);
-	      XSDSwitch xsdSwitch = new XSDSwitch()
-	      {                   
-	        public Object caseXSDTypeDefinition(XSDTypeDefinition object)
-	        {
-	          new GlobalSimpleOrComplexTypeRenamer(object, name).visitSchema(object.getSchema());
-	          return null;
-	        } 
-	      
-	        public Object caseXSDElementDeclaration(XSDElementDeclaration object)
-	        {           
-	          if (object.isGlobal())
-	          {
-	            new GlobalElementRenamer(object, name).visitSchema(object.getSchema());
-	          }
-	          return null;
-	        }
-	      
-	        public Object caseXSDModelGroupDefinition(XSDModelGroupDefinition object)
-	        {
-	          new GlobalGroupRenamer(object, name).visitSchema(object.getSchema());
-	          return null;
-	        }
-	      };
-	      xsdSwitch.doSwitch(component); 
-	      component.setName(name);
-	     
-	    }
-	  }
-	
-	public TextChange getChange(IFile file) {
-		TextChange result= (TextChange)fChanges.get(file);
-		if (result == null) {
-			result= new TextFileChange(file.getName(), file);
-			fChanges.put(file, result);
-		}
-		return result;
-	}
-	
-	public String getName() {
-		return RefactoringMessages.getFormattedString("XSDComponentRenameChange.name", new String[]{getOldName(), getNewName()}); //$NON-NLS-1$
-	}
-
-	public final Change perform(IProgressMonitor pm) throws CoreException {
-		try {
-			pm.beginTask(RefactoringMessages.getString("XSDComponentRenameChange.Renaming"), 1); //$NON-NLS-1$
-			Change result= createUndoChange();
-			doRename(new SubProgressMonitor(pm, 1));
-			return result;
-		} finally {
-			pm.done();
-		}
-	}
-
-	/**
-	 * Gets the newName.
-	 * 
-	 * @return Returns a String
-	 */
-	protected String getNewName() {
-		return fNewName;
-	}
-
-	/**
-	 * Gets the oldName
-	 * 
-	 * @return Returns a String
-	 */
-	protected String getOldName() {
-		return fOldName;
-	}
-
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.Change#getModifiedElement()
-	 */
-	public Object getModifiedElement() {
-		// TODO Auto-generated method stub
-		return fNamedComponent;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.Change#initializeValidationData(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void initializeValidationData(IProgressMonitor pm) {
-		// TODO Auto-generated method stub
-
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.Change#isValid(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException,
-			OperationCanceledException {
-		// TODO implement change validation
-		return new RefactoringStatus();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalAttributeGroupRenamer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalAttributeGroupRenamer.java
deleted file mode 100644
index d01ec4f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalAttributeGroupRenamer.java
+++ /dev/null
@@ -1,57 +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.xsd.ui.internal.refactor.rename;
-
-import java.util.Iterator;
-
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class GlobalAttributeGroupRenamer extends BaseRenamer
-{
-  /**
-   * Constructor for GlobalAttributeGroupRenamer.
-   * @param globalComponent
-   */
-  public GlobalAttributeGroupRenamer(XSDNamedComponent globalComponent, String newName)
-  {
-    super(globalComponent, newName);
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitComplexTypeDefinition(XSDComplexTypeDefinition)
-   */
-  public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-  {
-    super.visitComplexTypeDefinition(type);
-    if (type.getAttributeContents() != null)
-    {
-      for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent) iter.next();
-
-        if (attrGroupContent instanceof XSDAttributeGroupDefinition)
-        {
-          XSDAttributeGroupDefinition attrGroupDef = (XSDAttributeGroupDefinition) attrGroupContent;
-          
-          if (globalComponent.equals(attrGroupDef.getResolvedAttributeGroupDefinition()))
-          {
-            attrGroupDef.getElement().setAttribute(XSDConstants.REF_ATTRIBUTE, getNewQName());
-          }
-        }
-      }
-    }
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalAttributeRenamer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalAttributeRenamer.java
deleted file mode 100644
index d1b3e68..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalAttributeRenamer.java
+++ /dev/null
@@ -1,66 +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.xsd.ui.internal.refactor.rename;
-
-import java.util.Iterator;
-
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class GlobalAttributeRenamer extends BaseRenamer
-{
-  /**
-   * Constructor for GlobalAttributeRenamer.
-   * @param globalComponent
-   */
-  public GlobalAttributeRenamer(XSDNamedComponent globalComponent, String newName)
-  {
-    super(globalComponent, newName);
-  }
-  
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitComplexTypeDefinition(XSDComplexTypeDefinition)
-   */
-  public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-  {
-    super.visitComplexTypeDefinition(type);
-    if (type.getAttributeContents() != null)
-    {
-      for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent) iter.next();
-        if (attrGroupContent instanceof XSDAttributeUse)
-        {
-          XSDAttributeUse attrUse = (XSDAttributeUse) attrGroupContent;
-          XSDAttributeDeclaration attrDecl = attrUse.getContent();
-          
-          // now is this a reference?
-          if (attrDecl != null && attrDecl.isAttributeDeclarationReference())
-          {
-            if (globalComponent.equals(attrDecl.getResolvedAttributeDeclaration()))
-            {
-              attrDecl.getElement().setAttribute(XSDConstants.REF_ATTRIBUTE, getNewQName());           
-            }
-          }
-        }
-      }
-    }
-  }
-
-
-  
-
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalElementRenamer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalElementRenamer.java
deleted file mode 100644
index 869d775..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalElementRenamer.java
+++ /dev/null
@@ -1,41 +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.xsd.ui.internal.refactor.rename;
-
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class GlobalElementRenamer extends BaseRenamer
-{
-  /**
-   * Constructor for GlobalElementRenamer.
-   * @param globalComponent
-   */
-  public GlobalElementRenamer(XSDNamedComponent globalComponent, String newName)
-  {
-    super(globalComponent, newName);
-  }
-  
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitElementDeclaration(XSDElementDeclaration)
-   */
-  public void visitElementDeclaration(XSDElementDeclaration element)
-  {
-    super.visitElementDeclaration(element);
-    if (element.isElementDeclarationReference() &&
-        globalComponent.equals(element.getResolvedElementDeclaration()))
-    {
-      element.getElement().setAttribute(XSDConstants.REF_ATTRIBUTE, getNewQName());
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalGroupRenamer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalGroupRenamer.java
deleted file mode 100644
index b29b8e4..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalGroupRenamer.java
+++ /dev/null
@@ -1,43 +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.xsd.ui.internal.refactor.rename;
-
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.util.XSDConstants;
-
-public class GlobalGroupRenamer extends BaseRenamer
-{
-
-  /**
-   * Constructor for GlobalGroupRenamer.
-   * @param globalComponent
-   */
-  public GlobalGroupRenamer(XSDNamedComponent globalComponent, String newName)
-  {
-    super(globalComponent, newName);
-  }
-
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitModelGroupDefinition(XSDModelGroupDefinition)
-   */
-  public void visitModelGroupDefinition(XSDModelGroupDefinition modelGroup)
-  {
-    super.visitModelGroupDefinition(modelGroup);
-    if (modelGroup.isModelGroupDefinitionReference())
-    {
-      if (globalComponent.equals(modelGroup.getResolvedModelGroupDefinition()))
-      {
-        modelGroup.getElement().setAttribute(XSDConstants.REF_ATTRIBUTE, getNewQName());
-      }
-    }      
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalSimpleOrComplexTypeRenamer.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalSimpleOrComplexTypeRenamer.java
deleted file mode 100644
index 369b562..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/GlobalSimpleOrComplexTypeRenamer.java
+++ /dev/null
@@ -1,91 +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.xsd.ui.internal.refactor.rename;
-
-import java.util.Iterator;
-
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-public class GlobalSimpleOrComplexTypeRenamer extends BaseRenamer
-{
-  /**
-   * Constructor for GlobalSimpleOrComplexTypeRenamer.
-   * @param globalComponent
-   */
-  public GlobalSimpleOrComplexTypeRenamer(XSDNamedComponent globalComponent, String newName)
-  {
-    super(globalComponent, newName);
-  }
-  
-  
-  /**
-   * @see XSDVisitor#visitElementDeclaration(XSDElementDeclaration)
-   */
-  public void visitElementDeclaration(XSDElementDeclaration element)
-  {
-    if (!element.isElementDeclarationReference() &&
-        globalComponent.equals(element.getTypeDefinition()))
-    {
-      element.getElement().setAttribute(XSDConstants.TYPE_ATTRIBUTE, getNewQName());
-    }
-
-    super.visitElementDeclaration(element);
-  }
-
-
-  /**
-   * @see org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor#visitComplexTypeDefinition(XSDComplexTypeDefinition)
-   */
-  public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-  {
-    super.visitComplexTypeDefinition(type);
-    if (type.getAttributeContents() != null)
-    {
-      for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-      {
-        XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent) iter.next();
-        if (attrGroupContent instanceof XSDAttributeUse)
-        {
-          XSDAttributeUse attrUse = (XSDAttributeUse) attrGroupContent;
-          XSDAttributeDeclaration attrDecl = attrUse.getContent();
-          
-          // now is this a reference?
-          if (!attrDecl.isAttributeDeclarationReference() &&
-              globalComponent.equals(attrDecl.getTypeDefinition()))
-          {
-            attrDecl.getElement().setAttribute(XSDConstants.TYPE_ATTRIBUTE, getNewQName());
-          }
-        }
-      }
-    }
-
-    XSDTypeDefinition base = type.getBaseTypeDefinition();
-    if (base.equals(globalComponent))
-    {
-      XSDDOMHelper helper = new XSDDOMHelper();
-      Element derivedByNode = helper.getDerivedByElementFromComplexType(type.getElement());
-      if (derivedByNode != null)
-      {
-        derivedByNode.setAttribute(XSDConstants.BASE_ATTRIBUTE, getNewQName());
-      }
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/INameUpdating.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/INameUpdating.java
deleted file mode 100644
index 75d9f02..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/INameUpdating.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Created on Feb 16, 2005
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-
-/**
- * @author ebelisar
- *
- * TODO To change the template for this generated type comment go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-public interface INameUpdating {
-	//---- INameUpdating ---------------------------------------------------
-	public abstract void setNewElementName(String newName);
-
-	public abstract String getNewElementName();
-
-	public abstract String getCurrentElementName();
-
-	/* non java-doc
-	 * @see IRenameRefactoring#checkNewName()
-	 */public abstract RefactoringStatus checkNewElementName(String newName);
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameComponentProcessor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameComponentProcessor.java
deleted file mode 100644
index 079b727..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameComponentProcessor.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.ltk.core.refactoring.participants.ParticipantManager;
-import org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant;
-import org.eclipse.ltk.core.refactoring.participants.RenameArguments;
-import org.eclipse.ltk.core.refactoring.participants.RenameProcessor;
-import org.eclipse.ltk.core.refactoring.participants.SharableParticipants;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.xsd.XSDNamedComponent;
-
-public class RenameComponentProcessor extends RenameProcessor  implements INameUpdating{
-	
-	private XSDNamedComponent fNamedComponent;
-	private String fNewElementName;
-
-	public static final String IDENTIFIER= "org.eclipse.wst.ui.xsd.renameComponentProcessor"; //$NON-NLS-1$
-
-	//private QualifiedNameSearchResult fNameSearchResult;
-	
-	public RenameComponentProcessor(XSDNamedComponent element, String newName) {
-		fNamedComponent= element;
-		fNewElementName = newName;
-		
-	}
-	
-	public XSDNamedComponent getNamedComponent() {
-		return fNamedComponent;
-	}
-
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.corext.refactoring.tagging.ITextUpdating#canEnableTextUpdating()
-	 */
-	public boolean canEnableTextUpdating() {
-		return true;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.corext.refactoring.tagging.ITextUpdating#getCurrentElementName()
-	 */
-	public String getCurrentElementName() {
-		
-		return fNamedComponent.getName();
-	}
-
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.xsd.internal.refactoring.rename.XSDRenameProcessor#getAffectedProjectNatures()
-	 */
-	protected String[] getAffectedProjectNatures() throws CoreException {
-		//TODO: find project natures of the files that are going to be refactored
-		return new String[0];
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.xsd.internal.refactoring.rename.XSDRenameProcessor#loadDerivedParticipants(org.eclipse.ltk.core.refactoring.RefactoringStatus, java.util.List, java.lang.String[], org.eclipse.ltk.core.refactoring.participants.SharableParticipants)
-	 */
-	protected void loadDerivedParticipants(RefactoringStatus status,
-			List result, String[] natures, SharableParticipants shared)
-			throws CoreException {
-		// TODO: provide a way to load rename participants
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#checkFinalConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
-	 */
-	public RefactoringStatus checkFinalConditions(IProgressMonitor pm,
-			CheckConditionsContext context) throws CoreException,
-			OperationCanceledException {
-		// TODO add code to check final conditions for component rename
-		return new RefactoringStatus();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#checkInitialConditions(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public RefactoringStatus checkInitialConditions(IProgressMonitor pm)
-			throws CoreException, OperationCanceledException {
-//		 TODO add code to check initial conditions for component rename
-		return new RefactoringStatus();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#createChange(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public Change createChange(IProgressMonitor pm) throws CoreException,
-			OperationCanceledException {
-		// TODO P1 add change creation
-//		Change[] changes = XSDComponentRenameChange.createChangesFor(this.fNamedComponent, getNewElementName());
-//		CompositeChange multiChange = null; 
-//			if(changes.length > 0)
-//				multiChange  = new CompositeChange("XSD component rename participant changes", changes); //$NON-NLS-1$ TODO: externalize string
-//		return multiChange;
-		
-//		computeNameMatches(pm);	
-//		Change[] changes = fNameSearchResult.getAllChanges();
-//		return new CompositeChange("XSD file rename participant changes", changes); //TODO: externalize string
-		pm.beginTask("", 1); //$NON-NLS-1$
-		try{
-			return new ComponentRenameChange(fNamedComponent, fNamedComponent.getName(), getNewElementName());
-		} finally{
-			pm.done();
-		}	 
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getElements()
-	 */
-	public Object[] getElements() {
-		
-		return new Object[] {fNamedComponent};
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getIdentifier()
-	 */
-	public String getIdentifier() {
-		return IDENTIFIER;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getProcessorName()
-	 */
-	public String getProcessorName() {
-		return RefactoringMessages.getFormattedString(
-				"RenameComponentRefactoring.name",  //$NON-NLS-1$
-				new String[]{fNamedComponent.getTargetNamespace() + ":" + fNamedComponent.getName(), getNewElementName()});
-
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#isApplicable()
-	 */
-	public boolean isApplicable() throws CoreException {
-		if (fNamedComponent == null)
-			return false;
-		// TODO implement isApplicable logic for the named component, 
-		// verify how it is different from other condition checks
-//		if (fNamedComponent.isAnonymous())
-//			return false;
-//		if (! Checks.isAvailable(fType))
-//			return false;
-//		if (isSpecialCase(fType))
-//			return false;
-		return true;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.corext.refactoring.tagging.INameUpdating#checkNewElementName(java.lang.String)
-	 */
-	public RefactoringStatus checkNewElementName(String newName){
-		Assert.isNotNull(newName, "new name"); //$NON-NLS-1$
-		// TODO: implement new name checking
-//		RefactoringStatus result = Checks.checkTypeName(newName);
-//		if (Checks.isAlreadyNamed(fType, newName))
-//			result.addFatalError(RefactoringCoreMessages.getString("RenameTypeRefactoring.choose_another_name"));	 //$NON-NLS-1$
-		return new RefactoringStatus();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.corext.refactoring.tagging.INameUpdating#getNewElement()
-	 */
-	public Object getNewElement() throws CoreException {
-		// TODO implement this method, it's used for updating selection on new element
-		return null;
-	}
-	
-//	private void computeNameMatches(IProgressMonitor pm) throws CoreException {
-//	
-//	    IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
-//	    try {
-//			URL fileURL = Platform.resolve(new URL(fNamedComponent.getSchema().getSchemaLocation()));
-//			IFile file = workspaceRoot.getFileForLocation(new Path(fileURL.getPath()));
-//			if (fNameSearchResult == null)
-//				fNameSearchResult= new QualifiedNameSearchResult();
-//			QualifiedNameFinder.process(fNameSearchResult, getNamedComponent().getName(),  
-//				getNewElementName(), 
-//				"*.xsd", file.getProject(), pm);
-//		} catch (IOException e) {
-//			// TODO Auto-generated catch block
-//			e.printStackTrace();
-//		}
-//	}
-	
-	public final RefactoringParticipant[] loadParticipants(RefactoringStatus status, SharableParticipants sharedParticipants) throws CoreException {
-		RenameArguments arguments= new RenameArguments(getNewElementName(), true);
-		String[] natures= getAffectedProjectNatures();
-		List result= new ArrayList();
-		loadElementParticipants(status, result, arguments, natures, sharedParticipants);
-		loadDerivedParticipants(status, result, natures, sharedParticipants);
-		return (RefactoringParticipant[])result.toArray(new RefactoringParticipant[result.size()]);
-	}
-	
-	protected void loadElementParticipants(RefactoringStatus status, List result, RenameArguments arguments, String[] natures, SharableParticipants shared) throws CoreException {
-		Object[] elements= getElements();
-		for (int i= 0; i < elements.length; i++) {
-			result.addAll(Arrays.asList(ParticipantManager.loadRenameParticipants(status, 
-				this,  elements[i],
-				arguments, natures, shared)));
-		}
-	}
-	
-	
-	public void setNewElementName(String newName) {
-		
-		fNewElementName= newName;
-	}
-
-	public String getNewElementName() {
-		return fNewElementName;
-	}
-	
-	
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameInputWizardPage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameInputWizardPage.java
deleted file mode 100644
index bdd488a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameInputWizardPage.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.ui.refactoring.UserInputWizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-
-/**
- * @author ebelisar
- *
- */
-public class RenameInputWizardPage  extends UserInputWizardPage{
-	private String fInitialValue;
-	private Text fTextField;
-	private Button fUpdateReferences;
-	/**
-	 * Creates a new text input page.
-	 * @param isLastUserPage <code>true</code> if this page is the wizard's last
-	 *  user input page. Otherwise <code>false</code>.
-	 */
-	public RenameInputWizardPage(String description, boolean isLastUserPage) {
-		this(description, isLastUserPage, ""); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Creates a new text input page.
-	 * @param isLastUserPage <code>true</code> if this page is the wizard's last
-	 *  user input page. Otherwise <code>false</code>
-	 * @param initialValue the initial value
-	 */
-	public RenameInputWizardPage(String description, boolean isLastUserPage, String initialValue) {
-	    super("RenameInputWizardPage");
-		Assert.isNotNull(initialValue);
-		setDescription(description);
-		fInitialValue= initialValue;
-	}
-	
-	/**
-	 * Returns whether the initial input is valid. Typically it is not, because the 
-	 * user is required to provide some information e.g. a new type name etc.
-	 * 
-	 * @return <code>true</code> iff the input provided at initialization is valid
-	 */
-	protected boolean isInitialInputValid(){
-		return false;
-	}
-	
-	/**
-	 * Returns whether an empty string is a valid input. Typically it is not, because 
-	 * the user is required to provide some information e.g. a new type name etc.
-	 * 
-	 * @return <code>true</code> iff an empty string is valid
-	 */
-	protected boolean isEmptyInputValid(){
-		return false;
-	}
-	
-	/**
-	 * Returns the content of the text input field.
-	 * 
-	 * @return the content of the text input field. Returns <code>null</code> if
-	 * not text input field has been created
-	 */
-	protected String getText() {
-		if (fTextField == null)
-			return null;
-		return fTextField.getText();	
-	}
-	
-	/**
-	 * Sets the new text for the text field. Does nothing if the text field has not been created.
-	 * @param text the new value
-	 */
-	protected void setText(String text) {
-		if (fTextField == null)
-			return;
-		fTextField.setText(text);
-	}
-	
-	/**
-	 * Performs input validation. Returns a <code>RefactoringStatus</code> which
-	 * describes the result of input validation. <code>Null<code> is interpreted
-	 * as no error.
-	 */
-	protected RefactoringStatus validateTextField(String text){
-		return null;
-	}
-	
-	protected Text createTextInputField(Composite parent) {
-		return createTextInputField(parent, SWT.BORDER);
-	}
-	
-	protected Text createTextInputField(Composite parent, int style) {
-		fTextField= new Text(parent, style);
-		fTextField.addModifyListener(new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				textModified(getText());
-			}
-		});
-		fTextField.setText(fInitialValue);
-		return fTextField;
-	}
-	
-	/**
-	 * Checks the page's state and issues a corresponding error message. The page validation
-	 * is computed by calling <code>validatePage</code>.
-	 */
-	protected void textModified(String text) {	
-		if (! isEmptyInputValid() && text.equals("")){ //$NON-NLS-1$
-			setPageComplete(false);
-			setErrorMessage(null);
-			restoreMessage();
-			return;
-		}
-		if ((! isInitialInputValid()) && text.equals(fInitialValue)){
-			setPageComplete(false);
-			setErrorMessage(null);
-			restoreMessage();
-			return;
-		}
-		
-		setPageComplete(validateTextField(text));
-		
-//		 TODO: enable preview in M4
-		getRefactoringWizard().setForcePreviewReview(false);
-		getContainer().updateButtons();
-	
-	}
-	
-	/**
-	 * Subclasses can override if they want to restore the message differently.
-	 * This implementation calls <code>setMessage(null)</code>, which clears the message 
-	 * thus exposing the description.
-	 */
-	protected void restoreMessage(){
-		setMessage(null);
-	}
-	
-	/* (non-Javadoc)
-	 * Method declared in IDialogPage
-	 */
-	public void dispose() {
-		fTextField= null;	
-	}
-	
-	/* (non-Javadoc)
-	 * Method declared in WizardPage
-	 */
-	public void setVisible(boolean visible) {
-		if (visible) {
-			textModified(getText());
-		}
-		super.setVisible(visible);
-		if (visible && fTextField != null) {
-			fTextField.setFocus();
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		Composite superComposite= new Composite(parent, SWT.NONE);
-		setControl(superComposite);
-		initializeDialogUnits(superComposite);
-		
-		superComposite.setLayout(new GridLayout());
-		Composite composite= new Composite(superComposite, SWT.NONE);
-		composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));	
-		
-		GridLayout layout= new GridLayout();
-		layout.numColumns= 2;
-		layout.verticalSpacing= 8;
-		composite.setLayout(layout);
-		
-		
-		Label label= new Label(composite, SWT.NONE);
-		label.setText(getLabelText());
-		
-		Text text= createTextInputField(composite);
-		text.selectAll();
-		GridData gd= new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint= convertWidthInCharsToPixels(25);
-		text.setLayoutData(gd);
-		
-		addOptionalUpdateReferencesCheckbox(superComposite);
-		gd= new GridData(GridData.FILL_HORIZONTAL);
-		text.setLayoutData(gd);
-		
-		// TODO: enable preview in M4
-		getRefactoringWizard().setForcePreviewReview(false);
-		
-		Dialog.applyDialogFont(superComposite);
-		//WorkbenchHelp.setHelp(getControl(), fHelpContextID);
-
-	}
-	
-	private static Button createCheckbox(Composite parent, String title, boolean value) {
-		Button checkBox= new Button(parent, SWT.CHECK);
-		checkBox.setText(title);
-		checkBox.setSelection(value);
-		return checkBox;		
-	}
-	
-	private void addOptionalUpdateReferencesCheckbox(Composite result) {
-//		 TODO: enable update reference optioin in M4
-//		final IReferenceUpdating ref= (IReferenceUpdating)getRefactoring().getAdapter(IReferenceUpdating.class);
-//		if (ref == null || !ref.canEnableUpdateReferences())	
-//			return;
-		String title= RefactoringMessages.getString("RenameInputWizardPage.update_references"); //$NON-NLS-1$
-		boolean defaultValue= true; 
-		fUpdateReferences= createCheckbox(result, title, defaultValue);
-//		ref.setUpdateReferences(fUpdateReferences.getSelection());
-		fUpdateReferences.addSelectionListener(new SelectionAdapter(){
-			public void widgetSelected(SelectionEvent e) {
-//		ref.setUpdateReferences(fUpdateReferences.getSelection());
-			}
-		});		
-		
-		fUpdateReferences.setEnabled(false);
-		
-	}
-	
-	protected String getLabelText() {
-		return RefactoringMessages.getString("RenameInputWizardPage.new_name"); //$NON-NLS-1$
-	}
-	
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameRefactoringWizard.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameRefactoringWizard.java
deleted file mode 100644
index 57c6960..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameRefactoringWizard.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ltk.core.refactoring.Refactoring;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
-
-public class RenameRefactoringWizard extends RefactoringWizard {
-	
-	private final String fInputPageDescription;
-
-	private final ImageDescriptor fInputPageImageDescriptor;
-	
-	public RenameRefactoringWizard(Refactoring refactoring, String defaultPageTitle, String inputPageDescription, 
-			ImageDescriptor inputPageImageDescriptor) {
-		super(refactoring, DIALOG_BASED_USER_INTERFACE);
-		setDefaultPageTitle(defaultPageTitle);
-    	fInputPageDescription= inputPageDescription;
-		fInputPageImageDescriptor= inputPageImageDescriptor;
-
-	}
-
-	/* non java-doc
-	 * @see RefactoringWizard#addUserInputPages
-	 */ 
-	protected void addUserInputPages() {
-		String initialSetting= getProcessor().getCurrentElementName();
-		RenameInputWizardPage inputPage= createInputPage(fInputPageDescription, initialSetting);
-		inputPage.setImageDescriptor(fInputPageImageDescriptor);
-		addPage(inputPage);
-	}
-
-	protected INameUpdating getProcessor() {
-		
-		return (INameUpdating)getRefactoring().getAdapter(INameUpdating.class);	
-	}
-	
-	
-	protected RenameInputWizardPage createInputPage(String message, String initialSetting) {
-		return new RenameInputWizardPage(message, true, initialSetting) {
-			protected RefactoringStatus validateTextField(String text) {
-				return validateNewName(text);
-			}	
-		};
-	}
-	
-	protected RefactoringStatus validateNewName(String newName) {
-		INameUpdating ref= getProcessor();
-		ref.setNewElementName(newName);
-//		try{
-			return ref.checkNewElementName(newName);
-//		} catch (CoreException e){
-//			//XXX: should log the exception
-//			String msg= e.getMessage() == null ? "": e.getMessage(); //$NON-NLS-1$
-//			return RefactoringStatus.createFatalErrorStatus(RefactoringMessages.getFormattedString("RenameRefactoringWizard.internal_error", msg));//$NON-NLS-1$
-//		}	
-	}
-	
-	
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameResourceProcessor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameResourceProcessor.java
deleted file mode 100644
index 6916253..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameResourceProcessor.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package  org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.ltk.core.refactoring.participants.ParticipantManager;
-import org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant;
-import org.eclipse.ltk.core.refactoring.participants.RenameArguments;
-import org.eclipse.ltk.core.refactoring.participants.RenameProcessor;
-import org.eclipse.ltk.core.refactoring.participants.SharableParticipants;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-
-public class RenameResourceProcessor extends RenameProcessor implements INameUpdating {
-
-	private IResource fResource;
-	private String fNewElementName;
-		
-	public static final String IDENTIFIER= "org.eclipse.wst.ui.xsd.renameResourceProcessor"; //$NON-NLS-1$
-	
-	public RenameResourceProcessor(IResource resource) {
-		fResource= resource;
-		if (fResource != null) {
-			setNewElementName(fResource.getName());
-		}
-	}
-
-	//---- INameUpdating ---------------------------------------------------
-	
-	public void setNewElementName(String newName) {
-		Assert.isNotNull(newName);
-		fNewElementName= newName;
-	}
-
-	public String getNewElementName() {
-		return fNewElementName;
-	}
-	
-	//---- IRenameProcessor methods ---------------------------------------
-		
-	public String getIdentifier() {
-		return IDENTIFIER;
-	}
-	
-	public boolean isApplicable()  {
-		if (fResource == null)
-			return false;
-		if (! fResource.exists())
-			return false;
-		if (! fResource.isAccessible())	
-			return false;
-		return true;			
-	}
-	
-	public String getProcessorName() {
-		String message= RefactoringMessages.getFormattedString("RenameResourceProcessor.name", //$NON-NLS-1$
-				new String[]{getCurrentElementName(), getNewElementName()});
-		return message;
-	}
-	
-	public Object[] getElements() {
-		return new Object[] {fResource};
-	}
-	
-	public String getCurrentElementName() {
-		return fResource.getName();
-	}
-	
-	public String[] getAffectedProjectNatures() throws CoreException {
-		return new String[0];
-	}
-
-	public Object getNewElement() {
-		return ResourcesPlugin.getWorkspace().getRoot().findMember(createNewPath(getNewElementName()));
-	}
-
-	public boolean getUpdateReferences() {
-		return true;
-	}
-	
-	public RefactoringParticipant[] loadParticipants(RefactoringStatus status, SharableParticipants shared) throws CoreException {
-		Object[] elements= getElements();
-		String[] natures= getAffectedProjectNatures();
-		List result= new ArrayList();
-		RenameArguments arguments= new RenameArguments(getNewElementName(), getUpdateReferences());
-		for (int i= 0; i < elements.length; i++) {
-			result.addAll(Arrays.asList(ParticipantManager.loadRenameParticipants(status, 
-				this, elements[i],
-				arguments, natures, shared)));
-		}
-		return (RefactoringParticipant[])result.toArray(new RefactoringParticipant[result.size()]);
-	}
-	
-	//--- Condition checking --------------------------------------------
-
-	public RefactoringStatus checkInitialConditions(IProgressMonitor pm) throws CoreException {
-		return new RefactoringStatus();
-	}
-	
-	/* non java-doc
-	 * @see IRenameRefactoring#checkNewName()
-	 */
-	public RefactoringStatus checkNewElementName(String newName)  {
-		Assert.isNotNull(newName, "new name"); //$NON-NLS-1$
-		IContainer c= fResource.getParent();
-		if (c == null)
-			return RefactoringStatus.createFatalErrorStatus(RefactoringMessages.getString("RenameResourceRefactoring.Internal_Error")); //$NON-NLS-1$
-						
-		if (c.findMember(newName) != null)
-			return RefactoringStatus.createFatalErrorStatus(RefactoringMessages.getString("RenameResourceRefactoring.alread_exists")); //$NON-NLS-1$
-			
-		if (!c.getFullPath().isValidSegment(newName))
-			return RefactoringStatus.createFatalErrorStatus(RefactoringMessages.getString("RenameResourceRefactoring.invalidName")); //$NON-NLS-1$
-	
-		RefactoringStatus result= RefactoringStatus.create(c.getWorkspace().validateName(newName, fResource.getType()));
-		if (! result.hasFatalError())
-			result.merge(RefactoringStatus.create(c.getWorkspace().validatePath(createNewPath(newName), fResource.getType())));		
-		return result;		
-	}
-	
-	/* non java-doc
-	 * @see Refactoring#checkInput(IProgressMonitor)
-	 */
-	public RefactoringStatus checkFinalConditions(IProgressMonitor pm, CheckConditionsContext context)  {
-		pm.beginTask("", 1); //$NON-NLS-1$
-		try{
-			return new RefactoringStatus();
-		} finally{
-			pm.done();
-		}	
-	}
-
-	private String createNewPath(String newName){
-		return fResource.getFullPath().removeLastSegments(1).append(newName).toString();
-	}
-		
-	//--- changes 
-	
-	/* non java-doc 
-	 * @see IRefactoring#createChange(IProgressMonitor)
-	 */
-	public Change createChange(IProgressMonitor pm) {
-		pm.beginTask("", 1); //$NON-NLS-1$
-		try{
-			return new ResourceRenameChange(fResource, getNewElementName());
-		} finally{
-			pm.done();
-		}	
-	}
-}
-
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameSupport.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameSupport.java
deleted file mode 100644
index acb7194..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/RenameSupport.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.operation.IRunnableContext;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.RefactoringStatusEntry;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
-import org.eclipse.ltk.ui.refactoring.RefactoringWizardOpenOperation;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.actions.GlobalBuildAction;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.xsd.XSDNamedComponent;
-
-
-
-/**
- * Central access point to execute rename refactorings.
- * <p>
- * Note: this class is not intended to be subclassed.
- * </p>
- */
-public class RenameSupport {
-
-	private RenameRefactoring fRefactoring;
-	private RefactoringStatus fPreCheckStatus;
-	
-	/**
-	 * Executes some light weight precondition checking. If the returned status
-	 * is an error then the refactoring can't be executed at all. However,
-	 * returning an OK status doesn't guarantee that the refactoring can be
-	 * executed. It may still fail while performing the exhaustive precondition
-	 * checking done inside the methods <code>openDialog</code> or
-	 * <code>perform</code>.
-	 * 
-	 * The method is mainly used to determine enable/disablement of actions.
-	 * 
-	 * @return the result of the light weight precondition checking.
-	 * 
-	 * @throws CoreException if an unexpected exception occurs while performing the checking.
-	 * 
-	 * @see #openDialog(Shell)
-	 * @see #perform(Shell, IRunnableContext)
-	 */
-	public IStatus preCheck() throws CoreException {
-		ensureChecked();
-		if (fPreCheckStatus.hasFatalError())
-			return asStatus(fPreCheckStatus.getEntryMatchingSeverity(RefactoringStatus.FATAL));
-		else
-			return new Status(IStatus.OK, XSDEditorPlugin.PLUGIN_ID, 0, "", null); //$NON-NLS-1$
-	}
-
-	/**
-	 * Opens the refactoring dialog for this rename support. 
-	 * 
-	 * @param parent a shell used as a parent for the refactoring dialog.
-	 * @throws CoreException if an unexpected exception occurs while opening the
-	 * dialog.
-	 */
-	public void openDialog(Shell parent) throws CoreException {
-		ensureChecked();
-		if (fPreCheckStatus.hasFatalError()) {
-			showInformation(parent, fPreCheckStatus);
-			return; 
-		}
-		try {
-			RefactoringWizard wizard = new RenameRefactoringWizard(
-					fRefactoring,
-					RefactoringMessages.getString("RenameComponentWizard.defaultPageTitle"), //$NON-NLS-1$ TODO: provide correct strings
-					RefactoringMessages.getString("RenameComponentWizard.inputPage.description"), //$NON-NLS-1$
-					null);
-			RefactoringWizardOpenOperation op= new RefactoringWizardOpenOperation(wizard);
-			int result= op.run(parent, wizard.getDefaultPageTitle());
-			op.getInitialConditionCheckingStatus();
-			if (result == IDialogConstants.CANCEL_ID || result == RefactoringWizardOpenOperation.INITIAL_CONDITION_CHECKING_FAILED)
-				triggerBuild();
-		} catch (InterruptedException e) {
-			// do nothing. User action got cancelled
-		}
-	
-	}
-	
-	public void triggerBuild() {
-		if (ResourcesPlugin.getWorkspace().getDescription().isAutoBuilding()) {
-			new GlobalBuildAction(XSDEditorPlugin.getPlugin().getWorkbench().getActiveWorkbenchWindow(), IncrementalProjectBuilder.INCREMENTAL_BUILD).run();
-		}
-	}
-	
-	/**
-	 * Executes the rename refactoring without showing a dialog to gather
-	 * additional user input (for example the new name of the <tt>IJavaElement</tt>).
-	 * Only an error dialog is shown (if necessary) to present the result
-	 * of the refactoring's full precondition checking.
-	 * <p>
-	 * The method has to be called from within the UI thread. 
-	 * </p>
-	 * 
-	 * @param parent a shell used as a parent for the error dialog.
-	 * @param context a {@link IRunnableContext} to execute the operation.
-	 * 
-	 * @throws InterruptedException if the operation has been cancelled by the
-	 * user.
-	 * @throws InvocationTargetException if an error occurred while executing the
-	 * operation.
-	 * 
-	 * @see #openDialog(Shell)
-	 * @see IRunnableContext#run(boolean, boolean, org.eclipse.jface.operation.IRunnableWithProgress)
-	 */
-	public void perform(Shell parent, IRunnableContext context) throws InterruptedException, InvocationTargetException {
-		try {
-			ensureChecked();
-			if (fPreCheckStatus.hasFatalError()) {
-				showInformation(parent, fPreCheckStatus);
-				return; 
-			}
-		} catch (CoreException e){
-			throw new InvocationTargetException(e);
-		}
-	}
-	
-
-
-	
-	private RenameSupport(RenameComponentProcessor processor, String newName) throws CoreException {
-		fRefactoring= new RenameRefactoring(processor);
-		
-	}
-
-	private RenameComponentProcessor getRenameProcessor() {
-		return (RenameComponentProcessor) fRefactoring.getProcessor();
-	}
-
-	
-	
-	/**
-	 * Creates a new rename support for the given {@link IPackageFragment}.
-	 * 
-	 * @param fragment the {@link IPackageFragment} to be renamed.
-	 * @param newName the package fragment's new name. <code>null</code> is a
-	 * valid value indicating that no new name is provided.
-	 * @param flags flags controlling additional parameters. Valid flags are
-	 * <code>UPDATE_REFERENCES</code>, and <code>UPDATE_TEXTUAL_MATCHES</code>,
-	 * or their bitwise OR, or <code>NONE</code>.
-	 * @return the {@link RenameSupport}.
-	 * @throws CoreException if an unexpected error occurred while creating
-	 * the {@link RenameSupport}.
-	 */
-	public static RenameSupport create(XSDNamedComponent component, String newName) throws CoreException {
-		RenameComponentProcessor processor= new RenameComponentProcessor(component, newName);
-		return new RenameSupport(processor, newName);
-	}
-	
-	
-	private void ensureChecked() throws CoreException {
-		if (fPreCheckStatus == null) {
-			if (!fRefactoring.isApplicable()) {
-				fPreCheckStatus= RefactoringStatus.createFatalErrorStatus(RefactoringMessages.getString("RenameSupport.not_available")); //$NON-NLS-1$
-			} else {
-				fPreCheckStatus= new RefactoringStatus();
-			}
-		}
-	}
-	
-	private void showInformation(Shell parent, RefactoringStatus status) {
-		String message= status.getMessageMatchingSeverity(RefactoringStatus.FATAL);
-		MessageDialog.openInformation(parent, RefactoringMessages.getString("RenameSupport.dialog.title"), message); //$NON-NLS-1$
-	}
-	
-	private static IStatus asStatus(RefactoringStatusEntry entry) {
-		int statusSeverity= IStatus.ERROR;
-		switch (entry.getSeverity()) {
-			case RefactoringStatus.OK :
-				statusSeverity= IStatus.OK;
-				break;
-			case RefactoringStatus.INFO :
-				statusSeverity= IStatus.INFO;
-				break;
-			case RefactoringStatus.WARNING :
-			case RefactoringStatus.ERROR :
-				statusSeverity= IStatus.WARNING;
-				break;
-		}
-		String pluginId= entry.getPluginId();
-		int code= entry.getCode();
-		if (pluginId == null) {
-			pluginId= XSDEditorPlugin.PLUGIN_ID;
-			code= IStatus.ERROR;
-		}
-		return new Status(statusSeverity, pluginId, code, entry.getMessage(), null);
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ResourceRenameChange.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ResourceRenameChange.java
deleted file mode 100644
index 03af036..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ResourceRenameChange.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-
-
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-
-/**
- * Represents a change that renames a given resource
- */
-public class ResourceRenameChange extends Change {
-
-	/*
-	 * we cannot use handles because they became invalid when you rename the resource.
-	 * paths do not.
-	 */
-	private IPath fResourcePath;
-
-	private String fNewName;
-
-	/**
-	 * @param newName includes the extension
-	 */
-	public ResourceRenameChange(IResource resource, String newName) {
-		this(resource.getFullPath(), newName);
-	}
-
-	private ResourceRenameChange(IPath resourcePath, String newName) {
-		fResourcePath= resourcePath;
-		fNewName= newName;
-	}
-
-	private IResource getResource() {
-		return ResourcesPlugin.getWorkspace().getRoot().findMember(fResourcePath);
-	}
-
-	public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException {
-		
-		// TODO: implement file validation, see JDTChange
-		return new RefactoringStatus();
-	}
-	
-	/*
-	 * to avoid the exception senders should check if a resource with the new name
-	 * already exists
-	 */
-	public Change perform(IProgressMonitor pm) throws CoreException {
-		try {
-			if (false)
-				throw new NullPointerException();
-			pm.beginTask(RefactoringMessages.getString("XSDRenameResourceChange.rename_resource"), 1); //$NON-NLS-1$
-
-			getResource().move(renamedResourcePath(fResourcePath, fNewName), getCoreRenameFlags(), pm);
-
-			String oldName= fResourcePath.lastSegment();
-			IPath newPath= renamedResourcePath(fResourcePath, fNewName);
-			return new ResourceRenameChange(newPath, oldName);
-		} finally {
-			pm.done();
-		}
-	}
-
-	private int getCoreRenameFlags() {
-		if (getResource().isLinked())
-			return IResource.SHALLOW;
-		else
-			return IResource.NONE;
-	}
-
-	/*
-	 * changes resource names /s/p/A.java renamed to B.java becomes /s/p/B.java
-	 */
-	public static IPath renamedResourcePath(IPath path, String newName) {
-		return path.removeLastSegments(1).append(newName);
-	}
-
-	public String getName() {
-		return RefactoringMessages.getFormattedString(
-			"XSDRenameResourceChange.name", new String[]{fResourcePath.toString(), //$NON-NLS-1$
-			renamedResourcePath(fResourcePath, fNewName).toString()});
-	}
-
-	public Object getModifiedElement() {
-		return getResource();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.Change#initializeValidationData(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void initializeValidationData(IProgressMonitor pm) {
-		// TODO Auto-generated method stub
-
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ResourceRenameParticipant.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ResourceRenameParticipant.java
deleted file mode 100644
index 660ee87..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/ResourceRenameParticipant.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.rename;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.CompositeChange;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.ltk.core.refactoring.participants.RenameParticipant;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-
-/**
- * @author ebelisar
- */
-public class ResourceRenameParticipant extends RenameParticipant {
-	
-	private IFile fFile = null;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#initialize(java.lang.Object)
-	 */
-	protected boolean initialize(Object element) {
-		if(element instanceof IFile) {
-			this.fFile = (IFile) element;
-			return true;
-		}
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#getName()
-	 */
-	public String getName() {
-		String name = ""; //$NON-NLS-1$
-		if(this.fFile != null) {
-			name = fFile.getName();
-		}
-		return name;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#checkConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
-	 */
-	public RefactoringStatus checkConditions(IProgressMonitor pm,
-			CheckConditionsContext context) throws OperationCanceledException {
-		// TODO add check for file content type
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant#createChange(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public Change createChange(IProgressMonitor pm) throws CoreException,
-			OperationCanceledException {
-		//computeQualifiedNameMatches(pm);	
-		//Change[] changes = fQualifiedNameSearchResult.getAllChanges();
-		return new CompositeChange(RefactoringMessages.getString("XSDResourceRenameParticipant.compositeChangeName"));
-		
-	}
-	
-//	private void computeQualifiedNameMatches(IProgressMonitor pm) throws CoreException {
-//		IPath fragment= fFile.getFullPath();
-//		if (fQualifiedNameSearchResult == null)
-//			fQualifiedNameSearchResult= new QualifiedNameSearchResult();
-//		QualifiedNameFinder.process(fQualifiedNameSearchResult, fFile.getName(),  
-//			getArguments().getNewName(), 
-//			"*.xsd", fFile.getProject(), pm);
-//	}
-	
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/SchemaPrefixChangeHandler.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/SchemaPrefixChangeHandler.java
deleted file mode 100644
index 62b0eb9..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/SchemaPrefixChangeHandler.java
+++ /dev/null
@@ -1,212 +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.xsd.ui.internal.refactor.rename;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor;
-import org.eclipse.wst.xsd.ui.internal.util.XSDDOMHelper;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-
-
-public class SchemaPrefixChangeHandler
-{
-  String newPrefix;
-  XSDSchema xsdSchema;
-
-  public SchemaPrefixChangeHandler(XSDSchema xsdSchema, String newPrefix)
-  {
-    this.xsdSchema = xsdSchema;
-    this.newPrefix= newPrefix;
-  }
-  
-  public void resolve()
-  {
-    XSDSchemaPrefixRenamer xsdSchemaPrefixRenamer = new XSDSchemaPrefixRenamer();
-    xsdSchemaPrefixRenamer.visitSchema(xsdSchema);
-  }
-
-  public String getNewQName(XSDTypeDefinition comp, String value, String newXSDPrefix)
-  {
-    String qName = null;
-    if (value != null)
-    {
-      qName = newXSDPrefix;
-      if (qName != null && qName.length() > 0)
-      {
-        qName += ":" + value;
-      }
-      else
-      {
-        qName = value; 
-      }
-    }
-    else
-    {
-      qName = value;
-    }
-    
-    return qName;
-  }
-
-  
-  class XSDSchemaPrefixRenamer extends XSDVisitor
-  {
-    public XSDSchemaPrefixRenamer()
-    {
-      super();
-    }
-    
-    public void visitElementDeclaration(XSDElementDeclaration element)
-    {
-      super.visitElementDeclaration(element);
-      XSDTypeDefinition type = element.getType();
-      if (type != null)
-      {
-        String ns = type.getTargetNamespace();
-        if (ns == null) ns = "";
-//        if (ns.equals(xsdSchema.getSchemaForSchemaNamespace()))
-        if (ns.equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001))        
-        {
-          Element domElement = element.getElement();
-          if (domElement != null && domElement instanceof XMLNode)
-          {
-            Attr typeAttr = domElement.getAttributeNode(XSDConstants.TYPE_ATTRIBUTE);
-            if (typeAttr != null)
-            {
-              element.getElement().setAttribute(XSDConstants.TYPE_ATTRIBUTE, getNewQName(type, type.getName(), newPrefix));            
-            }
-          }
-        }
-      }
-    }
-    
-    public void visitSimpleTypeDefinition(XSDSimpleTypeDefinition simpleType)
-    {
-      super.visitSimpleTypeDefinition(simpleType);
-      XSDTypeDefinition baseType = simpleType.getBaseTypeDefinition();
-      
-      if (baseType != null)
-      {
-        String ns = baseType.getTargetNamespace();
-        if (ns == null) ns = "";
-//        if (ns.equals(xsdSchema.getSchemaForSchemaNamespace()))
-//        System.out.println(xsdSchema.getSchemaForSchemaNamespace());
-        if (ns.equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001))
-        {
-          XSDDOMHelper domHelper = new XSDDOMHelper();
-          Element derivedBy = domHelper.getDerivedByElement(simpleType.getElement());
-          if (derivedBy != null && derivedBy instanceof XMLNode)
-          {
-            Attr typeAttr = derivedBy.getAttributeNode(XSDConstants.BASE_ATTRIBUTE);
-            if (typeAttr != null)
-            {
-              derivedBy.setAttribute(XSDConstants.BASE_ATTRIBUTE, getNewQName(baseType, baseType.getName(), newPrefix));
-            }
-          }
-        }
-      }
-      
-      XSDSimpleTypeDefinition itemType = simpleType.getItemTypeDefinition();
-      if (itemType != null)
-      {
-        String ns = itemType.getTargetNamespace();
-        if (ns == null) ns = "";
-        if (ns.equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001))
-        {
-          XSDDOMHelper domHelper = new XSDDOMHelper();
-          Node listNode = domHelper.getChildNode(simpleType.getElement(), XSDConstants.LIST_ELEMENT_TAG);
-          if (listNode != null && listNode instanceof Element)
-          {
-            Element listElement = (Element)listNode;          
-            if (listElement instanceof XMLNode)
-            {
-              Attr typeAttr = listElement.getAttributeNode(XSDConstants.ITEMTYPE_ATTRIBUTE);
-              if (typeAttr != null)
-              {
-                listElement.setAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE, getNewQName(itemType, itemType.getName(), newPrefix));
-              }
-            }
-          }
-        }
-      }
-      
-      List memberTypes = simpleType.getMemberTypeDefinitions();
-      if (memberTypes.size() > 0)
-      {
-        XSDDOMHelper domHelper = new XSDDOMHelper();
-        Node unionNode = domHelper.getChildNode(simpleType.getElement(), XSDConstants.UNION_ELEMENT_TAG);
-        if (unionNode != null && unionNode instanceof Element)
-        {
-          Element unionElement = (Element)unionNode;          
-          if (unionElement instanceof XMLNode)
-          {
-            Attr typeAttr = unionElement.getAttributeNode(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-            StringBuffer sb = new StringBuffer("");
-            for (Iterator i = memberTypes.iterator(); i.hasNext(); )
-            {
-              XSDSimpleTypeDefinition st = (XSDSimpleTypeDefinition)i.next();
-              String ns = st.getTargetNamespace();
-              if (ns == null) ns = "";
-              if (ns.equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001))
-              {
-                sb.append(getNewQName(st, st.getName(), newPrefix));                
-              }
-              else
-              {
-                sb.append(st.getQName(xsdSchema));
-              }
-              if (i.hasNext())
-              {
-                sb.append(" ");
-              }
-            }
-            unionElement.setAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, sb.toString());
-          }
-        }
-      }
-    }
-
-    public void visitAttributeDeclaration(XSDAttributeDeclaration attr)
-    {
-      super.visitAttributeDeclaration(attr);
-      XSDTypeDefinition type = attr.getType();
-      if (type != null)
-      {
-        String ns = type.getTargetNamespace();
-        if (ns == null) ns = "";
-//        if (ns.equals(xsdSchema.getSchemaForSchemaNamespace()))
-        if (ns.equals(XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001))
-        {
-          Element domElement = attr.getElement();
-          if (domElement != null && domElement instanceof XMLNode)
-          {
-            Attr typeAttr = domElement.getAttributeNode(XSDConstants.TYPE_ATTRIBUTE);
-            if (typeAttr != null)
-            {
-              attr.getElement().setAttribute(XSDConstants.TYPE_ATTRIBUTE, getNewQName(type, type.getName(), newPrefix));            
-            }
-          }
-        }
-      }
-    }
-  }    
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/TargetNamespaceChangeHandler.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/TargetNamespaceChangeHandler.java
deleted file mode 100644
index ef996b1..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/rename/TargetNamespaceChangeHandler.java
+++ /dev/null
@@ -1,154 +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.xsd.ui.internal.refactor.rename;
-
-import java.util.Iterator;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.wst.xsd.ui.internal.refactor.XSDVisitor;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDAttributeUse;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDSchema;
-
-
-public class TargetNamespaceChangeHandler
-{
-  String newNS;
-  String oldNS;
-  XSDSchema xsdSchema;
-
-  public TargetNamespaceChangeHandler(XSDSchema xsdSchema, String oldNS, String newNS)
-  {
-    this.xsdSchema = xsdSchema;
-    this.oldNS= oldNS;
-    this.newNS= newNS;
-  }
-  
-  public void resolve()
-  {
-    ElementReferenceRenamer elementReferenceRenamer = new ElementReferenceRenamer();
-    elementReferenceRenamer.visitSchema(xsdSchema);
-    AttributeReferenceRenamer attributeReferenceRenamer = new AttributeReferenceRenamer();
-    attributeReferenceRenamer.visitSchema(xsdSchema);
-  }
-
-  class ElementReferenceRenamer extends XSDVisitor
-  {
-    public ElementReferenceRenamer()
-    {
-      super();
-    }
-    
-    public void visitElementDeclaration(XSDElementDeclaration element)
-    {
-      super.visitElementDeclaration(element);
-      if (element.isElementDeclarationReference())
-      {
-      	if (element.getResolvedElementDeclaration().getTargetNamespace() != null)
-      	{
-      	  if (element.getResolvedElementDeclaration().getTargetNamespace().equals(oldNS))
-          {
-            // set the resolved element's declaration to new ns
-            // this is defect 237518 - target namespace rename creates a new namespace
-            element.getResolvedElementDeclaration().setTargetNamespace(newNS);
-          }
-        }
-        else
-        {
-        	if (oldNS == null || (oldNS != null && oldNS.equals("")))
-        	{
-						element.getResolvedElementDeclaration().setTargetNamespace(newNS);
-        	}
-        }
-      }
-    }
-  }
-  
-  // Similar to defect 237518 but for attributes
-  class AttributeReferenceRenamer extends XSDVisitor
-  {
-    public AttributeReferenceRenamer()
-    {
-      super();
-    }
-    
-    public void visitComplexTypeDefinition(XSDComplexTypeDefinition type)
-    {
-      super.visitComplexTypeDefinition(type);
-      if (type.getAttributeContents() != null)
-      {
-        for (Iterator iter = type.getAttributeContents().iterator(); iter.hasNext(); )
-        {
-          XSDAttributeGroupContent attrGroupContent = (XSDAttributeGroupContent) iter.next();
-          if (attrGroupContent instanceof XSDAttributeUse)
-          {
-            XSDAttributeUse attrUse = (XSDAttributeUse) attrGroupContent;
-            XSDAttributeDeclaration attrDecl = attrUse.getContent();
-            
-            if (attrDecl != null && attrDecl.isAttributeDeclarationReference())
-            {
-							if (attrDecl.getResolvedAttributeDeclaration().getTargetNamespace() != null)
-							{
-                if (attrDecl.getResolvedAttributeDeclaration().getTargetNamespace().equals(oldNS))
-                {
-                  attrDecl.getResolvedAttributeDeclaration().setTargetNamespace(newNS);
-                }
-              }
-              else
-              {
-								if (oldNS == null || (oldNS != null && oldNS.equals("")))
-								{
-									attrDecl.getResolvedAttributeDeclaration().setTargetNamespace(newNS);
-								}
-              }
-            }
-          }
-        }
-      }
-    }
-  
-    public void visitAttributeGroupDefinition(XSDAttributeGroupDefinition attributeGroup)
-    {
-      super.visitAttributeGroupDefinition(attributeGroup);
-      EList list = attributeGroup.getAttributeUses();
-      if (list != null)
-      {
-        for (Iterator iter = list.iterator(); iter.hasNext(); )
-        {
-          XSDAttributeUse attrUse = (XSDAttributeUse)iter.next();
-          XSDAttributeDeclaration attrDecl = attrUse.getContent();
-
-          if (attrDecl != null && attrDecl.isAttributeDeclarationReference())
-          {
-						if (attrDecl.getResolvedAttributeDeclaration().getTargetNamespace() != null)
-						{
-              if (attrDecl.getResolvedAttributeDeclaration().getTargetNamespace().equals(oldNS))
-              {
-                attrDecl.getResolvedAttributeDeclaration().setTargetNamespace(newNS);
-              }
-            }
-            else
-            {
-							if (oldNS == null || (oldNS != null && oldNS.equals("")))
-							{
-								attrDecl.getResolvedAttributeDeclaration().setTargetNamespace(newNS);
-							}
-            }
-          }
-        }
-      }
-    }
-  }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeTypeGlobalChange.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeTypeGlobalChange.java
deleted file mode 100644
index 368c089..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeTypeGlobalChange.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.xsd.ui.internal.refactor.structure;
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.SubProgressMonitor;
-import org.eclipse.jface.text.Assert;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.TextChange;
-import org.eclipse.ltk.core.refactoring.TextFileChange;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.wst.xml.core.internal.document.DocumentImpl;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.commands.MakeAnonymousTypeGlobalCommand;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-/**
- * @author ebelisar
- * 
- */
-public class MakeTypeGlobalChange extends Change {
-
-	private Map fChanges;
-
-	private String fNewName;
-
-	private XSDTypeDefinition fTypeComponent;
-
-	public MakeTypeGlobalChange(XSDTypeDefinition component, 
-			String newName) {
-		Assert.isNotNull(newName, "new name"); //$NON-NLS-1$
-
-		fTypeComponent = component;
-		fNewName = newName;
-	}
-
-	// public static Change[] createChangesFor(XSDNamedComponent component,
-	// String newName) {
-	// // TODO: P1 implement search of XSD files
-	// XSDSearchSupport support = XSDSearchSupport.getInstance();
-	// RefactorSearchRequestor requestor = new
-	// RefactorSearchRequestor(component, newName);
-	// support.searchRunnable(component, IXSDSearchConstants.WORKSPACE_SCOPE,
-	// requestor);
-	//
-	// return requestor.getChanges();
-	//
-	// }
-
-	protected Change createUndoChange() {
-		return new MakeTypeGlobalChange(fTypeComponent, getNewName());
-	}
-
-	protected void doRename(IProgressMonitor pm) throws CoreException {
-		// TODO P1 change temporary rename of XSD model components
-		performModify(getNewName());
-	}
-
-	public void performModify(final String value) {
-			DelayedRenameRunnable runnable = new DelayedRenameRunnable(
-					fTypeComponent, value);
-			Display.getCurrent().asyncExec(runnable);
-	}
-
-	protected static class DelayedRenameRunnable implements Runnable {
-		protected XSDTypeDefinition component;
-
-		protected String name;
-
-		public DelayedRenameRunnable(XSDTypeDefinition component, String name) {
-			this.component = component;
-			this.name = name;
-		}
-
-		public void run() {
-			DocumentImpl doc = (DocumentImpl) component.getElement().getOwnerDocument();
-			doc.getModel().beginRecording(
-							this,
-							XSDEditorPlugin
-									.getXSDString("_UI_ACTION_MAKE_ANONYMOUS_TYPE_GLOBAL"));
-			MakeAnonymousTypeGlobalCommand command = new MakeAnonymousTypeGlobalCommand(
-					component, name);
-			command.run();
-			doc.getModel().endRecording(this);
-		}
-	}
-
-	public TextChange getChange(IFile file) {
-		TextChange result = (TextChange) fChanges.get(file);
-		if (result == null) {
-			result = new TextFileChange(file.getName(), file);
-			fChanges.put(file, result);
-		}
-		return result;
-	}
-
-	public String getName() {
-		return RefactoringMessages
-				.getFormattedString(
-						"MakeTypeGlobalChange.name", new String[] {getNewName() }); //$NON-NLS-1$
-	}
-
-	public final Change perform(IProgressMonitor pm) throws CoreException {
-		try {
-			pm.beginTask(RefactoringMessages
-					.getString("XSDComponentRenameChange.Renaming"), 1); //$NON-NLS-1$
-			Change result = createUndoChange();
-			doRename(new SubProgressMonitor(pm, 1));
-			return result;
-		} finally {
-			pm.done();
-		}
-	}
-
-	/**
-	 * Gets the newName.
-	 * 
-	 * @return Returns a String
-	 */
-	protected String getNewName() {
-		return fNewName;
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ltk.core.refactoring.Change#getModifiedElement()
-	 */
-	public Object getModifiedElement() {
-		// TODO Auto-generated method stub
-		return fTypeComponent;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ltk.core.refactoring.Change#initializeValidationData(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void initializeValidationData(IProgressMonitor pm) {
-		// TODO Auto-generated method stub
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.ltk.core.refactoring.Change#isValid(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public RefactoringStatus isValid(IProgressMonitor pm) throws CoreException,
-			OperationCanceledException {
-		// TODO implement change validation
-		return new RefactoringStatus();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeTypeGlobalProcessor.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeTypeGlobalProcessor.java
deleted file mode 100644
index 096747c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/refactor/structure/MakeTypeGlobalProcessor.java
+++ /dev/null
@@ -1,224 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.xsd.ui.internal.refactor.structure;
-
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.ltk.core.refactoring.Change;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
-import org.eclipse.ltk.core.refactoring.participants.ParticipantManager;
-import org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant;
-import org.eclipse.ltk.core.refactoring.participants.RenameArguments;
-import org.eclipse.ltk.core.refactoring.participants.RenameProcessor;
-import org.eclipse.ltk.core.refactoring.participants.SharableParticipants;
-import org.eclipse.wst.xsd.ui.internal.refactor.RefactoringMessages;
-import org.eclipse.wst.xsd.ui.internal.refactor.rename.INameUpdating;
-import org.eclipse.xsd.XSDTypeDefinition;
-
-public class MakeTypeGlobalProcessor extends RenameProcessor implements INameUpdating{
-	
-	private XSDTypeDefinition fTypeComponent;
-	private String fNewElementName;
-
-	public static final String IDENTIFIER= "org.eclipse.wst.ui.xsd.makeTypeGlobalProcessor"; //$NON-NLS-1$
-
-	//private QualifiedNameSearchResult fNameSearchResult;
-	
-	public MakeTypeGlobalProcessor(XSDTypeDefinition element, String newName) {
-		fTypeComponent= element;
-		fNewElementName = newName;
-		
-	}
-	
-	public XSDTypeDefinition getTypeComponent() {
-		return fTypeComponent;
-	}
-
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.corext.refactoring.tagging.ITextUpdating#canEnableTextUpdating()
-	 */
-	public boolean canEnableTextUpdating() {
-		return true;
-	}
-	/* (non-Javadoc)
-	 * @see com.ibm.xsd.internal.refactoring.rename.XSDRenameProcessor#getAffectedProjectNatures()
-	 */
-	protected String[] getAffectedProjectNatures() throws CoreException {
-		//TODO: find project natures of the files that are going to be refactored
-		return new String[0];
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.xsd.internal.refactoring.rename.XSDRenameProcessor#loadDerivedParticipants(org.eclipse.ltk.core.refactoring.RefactoringStatus, java.util.List, java.lang.String[], org.eclipse.ltk.core.refactoring.participants.SharableParticipants)
-	 */
-	protected void loadDerivedParticipants(RefactoringStatus status,
-			List result, String[] natures, SharableParticipants shared)
-			throws CoreException {
-		// TODO: provide a way to load rename participants
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#checkFinalConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
-	 */
-	public RefactoringStatus checkFinalConditions(IProgressMonitor pm,
-			CheckConditionsContext context) throws CoreException,
-			OperationCanceledException {
-		// TODO add code to check final conditions for component rename
-		return new RefactoringStatus();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#checkInitialConditions(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public RefactoringStatus checkInitialConditions(IProgressMonitor pm)
-			throws CoreException, OperationCanceledException {
-//		 TODO add code to check initial conditions for component rename
-		return new RefactoringStatus();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#createChange(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public Change createChange(IProgressMonitor pm) throws CoreException,
-			OperationCanceledException {
-		// TODO P1 add change creation
-//		Change[] changes = XSDComponentRenameChange.createChangesFor(this.fNamedComponent, getNewElementName());
-//		CompositeChange multiChange = null; 
-//			if(changes.length > 0)
-//				multiChange  = new CompositeChange("XSD component rename participant changes", changes); //$NON-NLS-1$ TODO: externalize string
-//		return multiChange;
-		
-//		computeNameMatches(pm);	
-//		Change[] changes = fNameSearchResult.getAllChanges();
-//		return new CompositeChange("XSD file rename participant changes", changes); //TODO: externalize string
-		pm.beginTask("", 1); //$NON-NLS-1$
-		try{
-			return new MakeTypeGlobalChange(fTypeComponent, getNewElementName());
-		} finally{
-			pm.done();
-		}	 
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getElements()
-	 */
-	public Object[] getElements() {
-		
-		return new Object[] {fTypeComponent};
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getIdentifier()
-	 */
-	public String getIdentifier() {
-		return IDENTIFIER;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getProcessorName()
-	 */
-	public String getProcessorName() {
-		return RefactoringMessages.getFormattedString(
-				"MakeLocalTypeGlobalRefactoring.name",  //$NON-NLS-1$
-				new String[]{getNewElementName()});
-
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#isApplicable()
-	 */
-	public boolean isApplicable() throws CoreException {
-		if (fTypeComponent == null)
-			return false;
-		// TODO implement isApplicable logic for the named component, 
-		// verify how it is different from other condition checks
-//		if (fNamedComponent.isAnonymous())
-//			return false;
-//		if (! Checks.isAvailable(fType))
-//			return false;
-//		if (isSpecialCase(fType))
-//			return false;
-		return true;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.corext.refactoring.tagging.INameUpdating#checkNewElementName(java.lang.String)
-	 */
-	public RefactoringStatus checkNewElementName(String newName){
-		Assert.isNotNull(newName, "new name"); //$NON-NLS-1$
-		// TODO: implement new name checking
-//		RefactoringStatus result = Checks.checkTypeName(newName);
-//		if (Checks.isAlreadyNamed(fType, newName))
-//			result.addFatalError(RefactoringCoreMessages.getString("RenameTypeRefactoring.choose_another_name"));	 //$NON-NLS-1$
-		return new RefactoringStatus();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jdt.internal.corext.refactoring.tagging.INameUpdating#getNewElement()
-	 */
-	public Object getNewElement() throws CoreException {
-		// TODO implement this method, it's used for updating selection on new element
-		return null;
-	}
-	
-//	private void computeNameMatches(IProgressMonitor pm) throws CoreException {
-//	
-//	    IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
-//	    try {
-//			URL fileURL = Platform.resolve(new URL(fNamedComponent.getSchema().getSchemaLocation()));
-//			IFile file = workspaceRoot.getFileForLocation(new Path(fileURL.getPath()));
-//			if (fNameSearchResult == null)
-//				fNameSearchResult= new QualifiedNameSearchResult();
-//			QualifiedNameFinder.process(fNameSearchResult, getNamedComponent().getName(),  
-//				getNewElementName(), 
-//				"*.xsd", file.getProject(), pm);
-//		} catch (IOException e) {
-//			// TODO Auto-generated catch block
-//			e.printStackTrace();
-//		}
-//	}
-	
-	public final RefactoringParticipant[] loadParticipants(RefactoringStatus status, SharableParticipants sharedParticipants) throws CoreException {
-		RenameArguments arguments= new RenameArguments(getNewElementName(), true);
-		String[] natures= getAffectedProjectNatures();
-		List result= new ArrayList();
-		loadElementParticipants(status, result, arguments, natures, sharedParticipants);
-		loadDerivedParticipants(status, result, natures, sharedParticipants);
-		return (RefactoringParticipant[])result.toArray(new RefactoringParticipant[result.size()]);
-	}
-	
-	protected void loadElementParticipants(RefactoringStatus status, List result, RenameArguments arguments, String[] natures, SharableParticipants shared) throws CoreException {
-		Object[] elements= getElements();
-		for (int i= 0; i < elements.length; i++) {
-			result.addAll(Arrays.asList(ParticipantManager.loadRenameParticipants(status, 
-				this,  elements[i],
-				arguments, natures, shared)));
-		}
-	}
-	
-	
-	public void setNewElementName(String newName) {
-		
-		fNewElementName= newName;
-	}
-
-	public String getNewElementName() {
-		return fNewElementName;
-	}
-
-	public String getCurrentElementName() {
-		// TODO Auto-generated method stub
-		return fNewElementName;
-	}
-	
-	
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/OpenOnSelectionHelper.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/OpenOnSelectionHelper.java
deleted file mode 100644
index 82de07f..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/OpenOnSelectionHelper.java
+++ /dev/null
@@ -1,322 +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.xsd.ui.internal.util;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.part.FileEditorInput;
-import org.eclipse.wst.sse.core.IndexedRegion;
-import org.eclipse.wst.xml.uriresolver.util.URIHelper;
-import org.eclipse.wst.xsd.ui.internal.XSDEditor;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.XSDTextEditor;
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDConcreteComponent;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDIdentityConstraintDefinition;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDNamedComponent;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaDirective;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Node;
-
-
-public class OpenOnSelectionHelper
-{
-  
-  protected XSDTextEditor textEditor;
-  
-  /**
-   * Constructor for OpenOnSelectionHelper.
-   */
-  public OpenOnSelectionHelper(XSDTextEditor textEditor)
-  {
-    this.textEditor = textEditor;
-  }
-
-  boolean lastResult;
-  
-  public static void openXSDEditor(String schemaLocation)
-  {
-		IPath schemaPath = new Path(schemaLocation);
-		
-		final IFile schemaFile = ResourcesPlugin.getWorkspace().getRoot().getFile(schemaPath);
-	
-		Display.getDefault().syncExec(new Runnable()
-		{
-			/**
-			 * @see java.lang.Runnable#run()
-			 */
-			public void run()
-			{
-				final IWorkbenchWindow workbenchWindow = XSDEditorPlugin.getPlugin().getWorkbench().getActiveWorkbenchWindow();
-				if (workbenchWindow != null)
-				{
-					try
-					{
-					  IEditorPart editorPart = workbenchWindow.getActivePage().openEditor(new FileEditorInput(schemaFile), XSDEditorPlugin.XSD_EDITOR_ID);
-					}
-					catch (PartInitException initEx)
-					{
-					  initEx.printStackTrace();
-//						XSDEditorPlugin.getPlugin().getMsgLogger().write(initEx);
-					}
-					catch(Exception e)
-					{
-					  e.printStackTrace();
-					}
-				}          
-			}
-		});
-  }
-  
-  protected boolean revealObject(final XSDConcreteComponent component)
-  {
-    if (component.getRootContainer().equals(textEditor.getXSDSchema()))
-    {
-      Node element = component.getElement();
-      if (element instanceof IndexedRegion)
-      {
-        IndexedRegion indexNode = (IndexedRegion) element;
-        textEditor.getTextViewer().setRangeIndication(indexNode.getStartOffset(), indexNode.getEndOffset() - indexNode.getStartOffset(), true);
-        return true;
-      }
-      return false;
-    }
-    else
-    {
-      lastResult = false;
-      if (component.getSchema() != null)
-      {
-				String schemaLocation = URIHelper.removePlatformResourceProtocol(component.getSchema().getSchemaLocation());
-        IPath schemaPath = new Path(schemaLocation);
-				final IFile schemaFile = ResourcesPlugin.getWorkspace().getRoot().getFile(schemaPath);
-        Display.getDefault().syncExec(new Runnable()
-        {
-	        /**
-	         * @see java.lang.Runnable#run()
-	         */
-	        public void run()
-	        {
-		        final IWorkbenchWindow workbenchWindow = XSDEditorPlugin.getPlugin().getWorkbench().getActiveWorkbenchWindow();
-		        if (workbenchWindow != null)
-		        {
-							try
-							{
-							  IEditorPart editorPart = workbenchWindow.getActivePage().openEditor(new FileEditorInput(schemaFile), textEditor.getXSDEditor().getEditorSite().getId());
-								if (editorPart instanceof XSDEditor)
-								{
-									((XSDEditor)editorPart).openOnGlobalReference(component);
-									lastResult = true;
-								}
-							}
-							catch (PartInitException initEx)
-							{
-//								XSDEditorPlugin.getPlugin().getMsgLogger().write(initEx);
-							}
-						}          
-					}
-				});
-      }
-      return lastResult;
-    }
-  }
-  
-  public void openOnGlobalReference(XSDConcreteComponent comp)
-  {
-    XSDSchema schema = textEditor.getXSDSchema();
-    String name = null;
-    if (comp instanceof XSDNamedComponent)
-    {
-      name = ((XSDNamedComponent) comp).getName();
-    }
-    
-    if (schema == null || name == null)
-    {
-      return;
-    }
-
-    List objects = null;    
-    if (comp instanceof XSDElementDeclaration)
-    {
-      objects = schema.getElementDeclarations();
-    }
-    else if (comp instanceof XSDTypeDefinition)
-    {
-      objects = schema.getTypeDefinitions();
-    }
-
-    if (objects != null)
-    {
-      for (Iterator iter = objects.iterator(); iter.hasNext();)
-      {
-        XSDNamedComponent namedComp = (XSDNamedComponent) iter.next();
-        
-        if (namedComp.getName().equals(name))
-        {
-          revealObject(namedComp);
-        }
-      }
-    }
-  }
-  
-  public boolean openOnSelection()
-  {
-    List selectedNodes = textEditor.getViewerSelectionManager().getSelectedNodes();
-
-    if (!selectedNodes.isEmpty())
-    {
-      for (Iterator i = selectedNodes.iterator(); i.hasNext();)
-      {
-        Object obj = i.next();
-        XSDSchema xsdSchema = textEditor.getXSDSchema();
-        if (xsdSchema != null)
-        {
-          XSDConcreteComponent xsdComp = xsdSchema.getCorrespondingComponent((Node)obj);
-          XSDConcreteComponent objectToReveal = null;
-
-          if (xsdComp instanceof XSDElementDeclaration)
-          {
-            XSDElementDeclaration elementDecl = (XSDElementDeclaration) xsdComp;
-            if (elementDecl.isElementDeclarationReference())
-            {
-              objectToReveal = elementDecl.getResolvedElementDeclaration();
-            }
-            else
-            {
-              XSDConcreteComponent typeDef = null;
-              if (elementDecl.getAnonymousTypeDefinition() == null)
-              {
-                typeDef = elementDecl.getTypeDefinition();
-              }
-              
-              XSDConcreteComponent subGroupAffiliation = elementDecl.getSubstitutionGroupAffiliation();
-              
-              if (typeDef != null && subGroupAffiliation != null)
-              {
-                // we have 2 things we can navigate to, if the cursor is anywhere on the substitution attribute
-                // then jump to that, otherwise just go to the typeDef.
-                if (obj instanceof Attr && ((Attr)obj).getLocalName().equals(XSDConstants.SUBSTITUTIONGROUP_ATTRIBUTE))
-                {
-                  objectToReveal = subGroupAffiliation;
-                }
-                else
-                {
-                  // try to reveal the type now.  On success, then we return true.
-                  // if we fail, set the substitution group as the object to reveal as a backup plan.
-                  if (revealObject(typeDef))
-                  {
-                    return true;
-                  }
-                  else
-                  {
-                    objectToReveal = subGroupAffiliation;
-                  }
-                }
-              }
-              else
-              {
-                // one or more of these is null.  If the typeDef is non-null, use it.  Otherwise
-                // try and use the substitution group
-                objectToReveal = typeDef != null ? typeDef : subGroupAffiliation;
-              }
-            }
-          }
-          else if (xsdComp instanceof XSDModelGroupDefinition)
-          {
-            XSDModelGroupDefinition elementDecl = (XSDModelGroupDefinition) xsdComp;
-            if (elementDecl.isModelGroupDefinitionReference())
-            {
-              objectToReveal = elementDecl.getResolvedModelGroupDefinition();
-            }
-          }
-          else if (xsdComp instanceof XSDAttributeDeclaration)
-          {
-            XSDAttributeDeclaration attrDecl = (XSDAttributeDeclaration) xsdComp;
-            if (attrDecl.isAttributeDeclarationReference())
-            {
-              objectToReveal = attrDecl.getResolvedAttributeDeclaration();
-            }
-            else if (attrDecl.getAnonymousTypeDefinition() == null)
-            {
-              objectToReveal = attrDecl.getTypeDefinition();
-            }              
-          }
-          else if (xsdComp instanceof XSDAttributeGroupDefinition)
-          {
-            XSDAttributeGroupDefinition attrGroupDef = (XSDAttributeGroupDefinition) xsdComp;
-            if (attrGroupDef.isAttributeGroupDefinitionReference())
-            {
-              objectToReveal = attrGroupDef.getResolvedAttributeGroupDefinition();
-            }
-          }
-          else if (xsdComp instanceof XSDIdentityConstraintDefinition)
-          {
-            XSDIdentityConstraintDefinition idConstraintDef = (XSDIdentityConstraintDefinition) xsdComp;
-            if (idConstraintDef.getReferencedKey() != null)
-            {
-              objectToReveal = idConstraintDef.getReferencedKey();
-            }
-          }
-          else if (xsdComp instanceof XSDSimpleTypeDefinition)
-          {
-            XSDSimpleTypeDefinition typeDef = (XSDSimpleTypeDefinition) xsdComp;
-            objectToReveal = typeDef.getItemTypeDefinition();
-            if (objectToReveal == null)
-            {
-              // if itemType attribute is not set, then check for memberType
-              List memberTypes = typeDef.getMemberTypeDefinitions();
-              if (memberTypes != null && memberTypes.size() > 0)
-              {
-                objectToReveal = (XSDConcreteComponent)memberTypes.get(0);
-              }              
-            }
-          }
-          else if (xsdComp instanceof XSDTypeDefinition)
-          {
-            XSDTypeDefinition typeDef = (XSDTypeDefinition) xsdComp;
-            objectToReveal = typeDef.getBaseType();
-          }
-          else if (xsdComp instanceof XSDSchemaDirective)
-          {
-          	XSDSchemaDirective directive = (XSDSchemaDirective) xsdComp;
-//						String schemaLocation = URIHelper.removePlatformResourceProtocol(directive.getResolvedSchema().getSchemaLocation());
-//						openXSDEditor(schemaLocation);
-//						return false;
-            objectToReveal = directive.getResolvedSchema();						          	          	
-          }
-
-          // now reveal the object if this isn't null
-          if (objectToReveal != null)
-          {
-            return revealObject(objectToReveal);
-          }
-        }
-      }
-    }
-    return false;
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/SelectionAdapter.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/SelectionAdapter.java
deleted file mode 100644
index 2cd1353..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/SelectionAdapter.java
+++ /dev/null
@@ -1,83 +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.xsd.ui.internal.util;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-
-public abstract class SelectionAdapter implements ISelectionProvider
-{
-  protected List listenerList = new ArrayList();
-  protected ISelection selection = new StructuredSelection();
-  protected ISelectionProvider eventSource;
-
-  public void setEventSource(ISelectionProvider eventSource)
-  {
-    this.eventSource = eventSource;
-  }
-
-  public void addSelectionChangedListener(ISelectionChangedListener listener) 
-  {
-    listenerList.add(listener);
-  }
-
-  public void removeSelectionChangedListener(ISelectionChangedListener listener) 
-  {
-    listenerList.remove(listener);
-  }                    
-
-  public ISelection getSelection() 
-  {
-    return selection;
-  }    
-  
-  /**
-   * This method should be specialized to return the correct object that corresponds to the 'other' model
-   */
-  abstract protected Object getObjectForOtherModel(Object object);
-
-    
-  public void setSelection(ISelection modelSelection)  
-  { 
-    List otherModelObjectList = new ArrayList();
-    if (modelSelection instanceof IStructuredSelection)
-    {
-      for (Iterator i = ((IStructuredSelection)modelSelection).iterator(); i.hasNext(); )
-      {
-        Object modelObject = i.next(); 
-        Object otherModelObject = getObjectForOtherModel(modelObject);       
-        if (otherModelObject != null)
-        { 
-          otherModelObjectList.add(otherModelObject);
-        }
-      }
-    }                
-      
-    StructuredSelection nodeSelection = new StructuredSelection(otherModelObjectList);
-    selection = nodeSelection;
-    SelectionChangedEvent event = new SelectionChangedEvent(eventSource != null ? eventSource : this, nodeSelection);
-
-    for (Iterator i = listenerList.iterator(); i.hasNext(); )
-    {
-      ISelectionChangedListener listener = (ISelectionChangedListener)i.next();
-      listener.selectionChanged(event);
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/TypesHelper.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/TypesHelper.java
deleted file mode 100644
index a31411c..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/TypesHelper.java
+++ /dev/null
@@ -1,815 +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.xsd.ui.internal.util;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Vector;
-
-import org.eclipse.xsd.XSDAttributeDeclaration;
-import org.eclipse.xsd.XSDAttributeGroupDefinition;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDElementDeclaration;
-import org.eclipse.xsd.XSDImport;
-import org.eclipse.xsd.XSDModelGroupDefinition;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.XSDSchemaContent;
-import org.eclipse.xsd.XSDSimpleTypeDefinition;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.eclipse.xsd.impl.XSDImportImpl;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-public class TypesHelper
-{
-  XSDSchema xsdSchema;
-  Vector list = new Vector();
-
-  public TypesHelper(XSDSchema xsdSchema)
-  {
-    this.xsdSchema = xsdSchema;
-  }
-
-  public void updateExternalImportGlobals()
-  {
-    if (xsdSchema != null)
-    {
-      Iterator contents = xsdSchema.getContents().iterator();
-      while (contents.hasNext())
-      {
-        XSDSchemaContent content = (XSDSchemaContent) contents.next();
-        if (content instanceof XSDImportImpl)
-        {
-          XSDImportImpl anImport = (XSDImportImpl) content;
-          try
-          {
-            if (anImport.getSchemaLocation() != null)
-            {
-              anImport.importSchema();
-            }
-          }
-          catch (Exception e)
-          {
-            
-          }
-        }
-      }
-    }
-  }
-
-  private Vector addExternalImportedUserSimpleTypes(Vector items)
-  {
-    if (xsdSchema != null)
-    {
-      Iterator contents = xsdSchema.getContents().iterator();
-      while (contents.hasNext())
-      {
-        XSDSchemaContent content = (XSDSchemaContent) contents.next();
-        if (content instanceof XSDImportImpl)
-        {
-          XSDImportImpl anImport = (XSDImportImpl) content;
-
-          XSDSchema impSchema = anImport.getResolvedSchema();
-
-          try
-          {
-            if (impSchema == null)
-            {
-              impSchema = anImport.importSchema();
-            }
-          }
-          catch (Exception e)
-          {
-            
-          }
-
-          if (impSchema != null)
-          {
-            Iterator i = impSchema.getTypeDefinitions().iterator();
-            while (i.hasNext())
-            {
-              XSDTypeDefinition typeDefinition = (XSDTypeDefinition) i.next();
-              if (typeDefinition instanceof XSDSimpleTypeDefinition)
-              {
-                if (typeDefinition.getName() != null)
-                {
-                  items.addAll(getPrefixedNames(typeDefinition.getTargetNamespace(), typeDefinition.getName()));
-                }
-              }
-            }
-          }
-        }
-      }
-    }
-    return items;
-  }
-
-  private Vector addExternalImportedGlobalElements(Vector items)
-  {
-    if (xsdSchema != null)
-    {
-      Iterator contents = xsdSchema.getContents().iterator();
-      while (contents.hasNext())
-      {
-        XSDSchemaContent content = (XSDSchemaContent) contents.next();
-        if (content instanceof XSDImportImpl)
-        {
-          XSDImportImpl anImport = (XSDImportImpl) content;
-
-          XSDSchema impSchema = anImport.getResolvedSchema();
-
-          try
-          {
-            if (impSchema == null)
-            {
-              impSchema = anImport.importSchema();
-            }
-          }
-          catch (Exception e)
-          {
-            
-          }
-
-          if (impSchema != null)
-          {
-            Iterator i = impSchema.getElementDeclarations().iterator();
-            while (i.hasNext())
-            {
-              XSDElementDeclaration anElement = (XSDElementDeclaration) i.next();
-              if (anElement.getName() != null)
-              {
-                items.addAll(getPrefixedNames(anElement.getTargetNamespace(), anElement.getName()));
-              }
-            }
-          }
-        }
-      }
-    }
-    return items;
-  }
-
-  private Vector addExternalImportedAttributes(Vector items)
-  {
-    if (xsdSchema != null)
-    {
-      Iterator contents = xsdSchema.getContents().iterator();
-      while (contents.hasNext())
-      {
-        XSDSchemaContent content = (XSDSchemaContent) contents.next();
-        if (content instanceof XSDImportImpl)
-        {
-          XSDImportImpl anImport = (XSDImportImpl) content;
-
-          XSDSchema impSchema = anImport.getResolvedSchema();
-
-          try
-          {
-            if (impSchema == null)
-            {
-              impSchema = anImport.importSchema();
-            }
-          }
-          catch (Exception e)
-          {
-            
-          }
-
-          if (impSchema != null)
-          {
-            Iterator i = impSchema.getAttributeDeclarations().iterator();
-            while (i.hasNext())
-            {
-              XSDAttributeDeclaration attrib = (XSDAttributeDeclaration) i.next();
-              if (attrib.getName() != null)
-              {
-                items.addAll(getPrefixedNames(attrib.getTargetNamespace(), attrib.getName()));
-              }
-            }
-          }
-        }
-      }
-    }
-    return items;
-  }
-
-  private Vector addExternalImportedAttributeGroups(Vector items)
-  {
-    if (xsdSchema != null)
-    {
-      Iterator contents = xsdSchema.getContents().iterator();
-      while (contents.hasNext())
-      {
-        XSDSchemaContent content = (XSDSchemaContent) contents.next();
-        if (content instanceof XSDImportImpl)
-        {
-          XSDImportImpl anImport = (XSDImportImpl) content;
-
-          XSDSchema impSchema = anImport.getResolvedSchema();
-
-          try
-          {
-            if (impSchema == null)
-            {
-              impSchema = anImport.importSchema();
-            }
-          }
-          catch (Exception e)
-          {
-            
-          }
-
-          if (impSchema != null)
-          {
-            Iterator i = impSchema.getAttributeGroupDefinitions().iterator();
-            while (i.hasNext())
-            {
-              XSDAttributeGroupDefinition attrib = (XSDAttributeGroupDefinition) i.next();
-              if (attrib.getName() != null)
-              {
-                items.addAll(getPrefixedNames(attrib.getTargetNamespace(), attrib.getName()));
-              }
-            }
-          }
-        }
-      }
-    }
-    return items;
-  }
-
-  private Vector addExternalImportedUserComplexTypes(Vector items)
-  {
-    if (xsdSchema != null)
-    {
-      Iterator contents = xsdSchema.getContents().iterator();
-      while (contents.hasNext())
-      {
-        XSDSchemaContent content = (XSDSchemaContent) contents.next();
-        if (content instanceof XSDImportImpl)
-        {
-          XSDImportImpl anImport = (XSDImportImpl) content;
-
-          XSDSchema impSchema = anImport.getResolvedSchema();
-
-          try
-          {
-            if (impSchema == null)
-            {
-              impSchema = anImport.importSchema();
-            }
-          }
-          catch (Exception e)
-          {
-            
-          }
-
-          if (impSchema != null)
-          {
-            Iterator i = impSchema.getTypeDefinitions().iterator();
-            while (i.hasNext())
-            {
-              XSDTypeDefinition typeDefinition = (XSDTypeDefinition) i.next();
-              if (typeDefinition instanceof XSDComplexTypeDefinition)
-              {
-                if (typeDefinition.getName() != null)
-                {
-                  items.addAll(getPrefixedNames(typeDefinition.getTargetNamespace(), typeDefinition.getName()));
-                }
-              }
-            }
-          }
-        }
-      }
-    }
-    return items;
-  }
-
-  private Vector addExternalImportedGroups(Vector items)
-  {
-    if (xsdSchema != null)
-    {
-      Iterator contents = xsdSchema.getContents().iterator();
-      while (contents.hasNext())
-      {
-        XSDSchemaContent content = (XSDSchemaContent) contents.next();
-        if (content instanceof XSDImportImpl)
-        {
-          XSDImportImpl anImport = (XSDImportImpl) content;
-
-          XSDSchema impSchema = anImport.getResolvedSchema();
-
-          try
-          {
-            if (impSchema == null)
-            {
-              impSchema = anImport.importSchema();
-            }
-          }
-          catch (Exception e)
-          {
-          }
-
-          if (impSchema != null)
-          {
-            Iterator i = impSchema.getModelGroupDefinitions().iterator();
-            while (i.hasNext())
-            {
-              XSDModelGroupDefinition aGroup = (XSDModelGroupDefinition) i.next();
-              if (aGroup.getName() != null)
-              {
-                items.addAll(getPrefixedNames(aGroup.getTargetNamespace(), aGroup.getName()));
-              }
-            }
-          }
-        }
-      }
-    }
-    return items;
-  }
-
-  public java.util.List getBuiltInTypeNamesList()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      String xsdForXSDPrefix = xsdSchema.getSchemaForSchemaQNamePrefix();
-      if (xsdForXSDPrefix != null && xsdForXSDPrefix.length() > 0)
-      {
-        xsdForXSDPrefix = xsdForXSDPrefix + ":";
-      }
-      else
-      {
-        xsdForXSDPrefix = "";
-      }
-
-      for (int i = 0; i < XSDDOMHelper.dataType.length; i++)
-      {
-        items.add(xsdForXSDPrefix + XSDDOMHelper.dataType[i][0]);
-      }
-    }
-    return items;
-  }
-  
-  public java.util.List getBuiltInTypeNamesList2()
-  {
-    List result = new ArrayList();
-    if (xsdSchema != null)
-    {
-      List prefixes = getPrefixesForNamespace(xsdSchema.getSchemaForSchemaNamespace());
-      for (int i = 0; i < XSDDOMHelper.dataType.length; i++)
-      {
-        for (Iterator j = prefixes.iterator(); j.hasNext();)
-        {
-          String prefix = (String) j.next();
-          String localName = XSDDOMHelper.dataType[i][0]; 
-          String prefixedName = (prefix != null && prefix.length() > 0) ? prefix + ":" + localName : localName; 
-          result.add(prefixedName);
-        }
-      }
-    }
-    return result;
-  }
-
-  public java.util.List getUserSimpleTypeNamesList()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      Iterator i = xsdSchema.getTypeDefinitions().iterator();
-      while (i.hasNext())
-      {
-        XSDTypeDefinition typeDefinition = (XSDTypeDefinition) i.next();
-        if (typeDefinition instanceof XSDSimpleTypeDefinition)
-        {
-          items.addAll(getPrefixedNames(typeDefinition.getTargetNamespace(), typeDefinition.getName()));
-          //System.out.println(typeDefinition.getQName(xsdSchema));
-          //items.add(typeDefinition.getQName(xsdSchema));
-        }
-      }
-      items.add(getPrefix(xsdSchema.getSchemaForSchemaNamespace(), true) + "anyType");
-      
-      //      items = addExternalImportedUserSimpleTypes(items);
-      items = (Vector) sortList(items);
-    }
-    return items;
-  }
-
-  public java.util.List getUserComplexTypeNamesList()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      Iterator i = xsdSchema.getTypeDefinitions().iterator();
-      while (i.hasNext())
-      {
-        XSDTypeDefinition typeDefinition = (XSDTypeDefinition) i.next();
-        if (typeDefinition instanceof XSDComplexTypeDefinition)
-        {
-			    items.addAll(getPrefixedNames(typeDefinition.getTargetNamespace(), typeDefinition.getName()));         
-        }
-      }
-      // remove anyType since it's not user-defined
-      // items.add(getPrefix(xsdSchema.getSchemaForSchemaNamespace(), true) + "anyType");
-      //      items = addExternalImportedUserComplexTypes(items);
-      items = (Vector) sortList(items);
-    }
-    return items;
-  }
-  
-  public java.util.List getUserSimpleTypes()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      Iterator i = xsdSchema.getTypeDefinitions().iterator();
-      while (i.hasNext())
-      {
-        XSDTypeDefinition typeDefinition = (XSDTypeDefinition) i.next();
-        if (typeDefinition instanceof XSDSimpleTypeDefinition)
-        {
-          items.add(typeDefinition);
-          //System.out.println(typeDefinition.getQName(xsdSchema));
-          //items.add(typeDefinition.getQName(xsdSchema));
-        }
-      }
-      // We need to add the anyType
-//      items.add(getPrefix(xsdSchema.getSchemaForSchemaNamespace(), true) + "anyType");
-      
-      //      items = addExternalImportedUserSimpleTypes(items);
-      //items = (Vector) sortList(items);
-    }
-    return items;
-  }
-
-  public String getPrefix(String ns, boolean withColon)
-  {
-    String key = "";
-
-    if (xsdSchema != null)
-    {
-      Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-      Iterator iter = map.keySet().iterator();
-      while (iter.hasNext())
-      {
-        Object keyObj = iter.next();
-        Object value = map.get(keyObj);
-        if (value != null && value.toString().equals(ns))
-        {
-          if (keyObj != null)
-          {
-            key = keyObj.toString();
-          }
-          else
-          {
-            key = "";
-          }
-          break;
-        }
-      }
-      if (!key.equals(""))
-      {
-        if (withColon)
-        {
-          key = key + ":";
-        }
-      }
-    }
-    return key;
-  }
-
-  public java.util.List getUserComplexTypes()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      Iterator i = xsdSchema.getTypeDefinitions().iterator();
-      while (i.hasNext())
-      {
-        XSDTypeDefinition typeDefinition = (XSDTypeDefinition) i.next();
-        if (typeDefinition instanceof XSDComplexTypeDefinition)
-        {
-			    items.add(typeDefinition);         
-        }
-      }
-      // remove anyType since it's not user-defined
-      // items.add(getPrefix(xsdSchema.getSchemaForSchemaNamespace(), true) + "anyType");
-      //      items = addExternalImportedUserComplexTypes(items);
-     // items = (Vector) sortList(items);
-    }
-    return items;
-  }
-  
-  public java.util.List getGlobalElements()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      if (xsdSchema.getElementDeclarations() != null)
-      {
-        Iterator i = xsdSchema.getElementDeclarations().iterator();
-        while (i.hasNext())
-        {
-          XSDElementDeclaration elementDeclaration = (XSDElementDeclaration) i.next();
-          String name = elementDeclaration.getQName(xsdSchema);
-          if (name != null)
-          {
-            items.add(name);
-          }
-        }
-      }
-      //      items = addExternalImportedGlobalElements(items);
-      items = (Vector) sortList(items);
-    }
-    return items;
-  }
-
-  public String getGlobalElement(XSDSchema relativeComponent)
-  {
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      if (xsdSchema.getElementDeclarations() != null)
-      {
-        Iterator i = xsdSchema.getElementDeclarations().iterator();
-        while (i.hasNext()) // just get the first one
-        {
-          XSDElementDeclaration elementDeclaration = (XSDElementDeclaration) i.next();
-          if (elementDeclaration.getQName(relativeComponent) != null)
-          {
-            return elementDeclaration.getQName(relativeComponent);
-          }
-        }
-      }
-
-      Vector items = new Vector();
-      items = addExternalImportedGlobalElements(items);
-      if (items != null && items.size() > 0)
-      {
-        return items.get(0).toString();
-      }
-    }
-    return null; // for disabling menu
-  }
-
-  public java.util.List getGlobalAttributes()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      if (xsdSchema.getAttributeDeclarations() != null)
-      {
-        Iterator i = xsdSchema.getAttributeDeclarations().iterator();
-        while (i.hasNext())
-        {
-          XSDAttributeDeclaration attributeDeclaration = (XSDAttributeDeclaration) i.next();
-          if (attributeDeclaration.getTargetNamespace() == null || (attributeDeclaration.getTargetNamespace() != null && !attributeDeclaration.getTargetNamespace().equals(XSDConstants.SCHEMA_INSTANCE_URI_2001)))
-          {
-            String name = attributeDeclaration.getQName(xsdSchema);
-            if (name != null)
-            {
-              items.add(name);
-            }
-          }
-        }
-      }
-      //      items = addExternalImportedAttributes(items);
-      items = (Vector) sortList(items);
-    }
-    return items;
-  }
-
-  public String getGlobalAttribute(XSDSchema relativeComponent)
-  {
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      if (xsdSchema.getAttributeDeclarations() != null)
-      {
-        Iterator i = xsdSchema.getAttributeDeclarations().iterator();
-        while (i.hasNext()) // just get the first one
-        {
-          XSDAttributeDeclaration attributeDeclaration = (XSDAttributeDeclaration) i.next();
-          // Filter out attributes from the schema namespace
-          if (!(attributeDeclaration.getTargetNamespace().equals(XSDConstants.SCHEMA_INSTANCE_URI_2001)))
-          {
-            if (attributeDeclaration.getQName(relativeComponent) != null)
-            {
-              return attributeDeclaration.getQName(relativeComponent);
-            }
-          }
-        }
-      }
-
-      Vector items = new Vector();
-      items = addExternalImportedAttributes(items);
-      if (items != null && items.size() > 0)
-      {
-        return items.get(0).toString();
-      }
-    }
-    return null; // for disabling menu
-  }
-
-  public java.util.List getGlobalAttributeGroups()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      if (xsdSchema.getAttributeGroupDefinitions() != null)
-      {
-        Iterator i = xsdSchema.getAttributeGroupDefinitions().iterator();
-        while (i.hasNext())
-        {
-          XSDAttributeGroupDefinition attributeGroupDefinition = (XSDAttributeGroupDefinition) i.next();
-          String name = attributeGroupDefinition.getQName(xsdSchema);
-          if (name != null)
-          {
-            items.add(name);
-          }
-        }
-      }
-      //      items = addExternalImportedAttributeGroups(items);
-      items = (Vector) sortList(items);
-    }
-    return items;
-  }
-
-  public String getGlobalAttributeGroup(XSDSchema relativeComponent)
-  {
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      if (xsdSchema.getAttributeGroupDefinitions() != null)
-      {
-        Iterator i = xsdSchema.getAttributeGroupDefinitions().iterator();
-        while (i.hasNext()) // just get the first one
-        {
-          XSDAttributeGroupDefinition attributeGroupDefinition = (XSDAttributeGroupDefinition) i.next();
-          if (attributeGroupDefinition.getQName(relativeComponent) != null)
-          {
-            return attributeGroupDefinition.getQName(relativeComponent);
-          }
-        }
-      }
-
-      Vector items = new Vector();
-      items = addExternalImportedAttributeGroups(items);
-      if (items != null && items.size() > 0)
-      {
-        return items.get(0).toString();
-      }
-    }
-    return null; // for disabling menu
-  }
-
-  public java.util.List getModelGroups()
-  {
-    Vector items = new Vector();
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      if (xsdSchema.getModelGroupDefinitions() != null)
-      {
-        Iterator i = xsdSchema.getModelGroupDefinitions().iterator();
-        while (i.hasNext())
-        {
-          XSDModelGroupDefinition modelGroupDefinition = (XSDModelGroupDefinition) i.next();
-          String name = modelGroupDefinition.getQName(xsdSchema);
-          if (name != null)
-          {
-            items.add(name);
-          }
-        }
-      }
-      //      items = addExternalImportedGroups(items);
-      items = (Vector) sortList(items);
-    }
-    return items;
-  }
-
-  public static java.util.List sortList(java.util.List types)
-  {
-    try
-    {
-      java.util.Collections.sort(types); // performance?  n*log(n)
-    }
-    catch (Exception e)
-    {
-//      XSDEditorPlugin.getPlugin().getMsgLogger().write("Sort failed");
-    }
-    return types;
-  }
-
-  public String getModelGroup(XSDSchema relativeComponent)
-  {
-    if (xsdSchema != null)
-    {
-      updateExternalImportGlobals();
-      if (xsdSchema.getModelGroupDefinitions() != null)
-      {
-        Iterator i = xsdSchema.getModelGroupDefinitions().iterator();
-        while (i.hasNext()) // just get the first one
-        {
-          XSDModelGroupDefinition modelGroupDefinition = (XSDModelGroupDefinition) i.next();
-          if (modelGroupDefinition.getQName(relativeComponent) != null)
-          {
-            return modelGroupDefinition.getQName(relativeComponent);
-          }
-        }
-      }
-
-      Vector items = new Vector();
-      items = addExternalImportedGroups(items);
-      if (items != null && items.size() > 0)
-      {
-        return items.get(0).toString();
-      }
-    }
-    return null; // for disabling menu
-  }
-
-  public void updateMapAfterDelete(XSDImport deletedNode)
-  {
-    String ns = deletedNode.getNamespace();
-    if (ns != null)
-    {
-      String prefix = getPrefix(ns, false);
-      if (prefix != null)
-      {
-        prefix = prefix.trim();
-      }
-      String xmlnsAttr = (prefix == "") ? "xmlns" : "xmlns:" + prefix;
-
-      if (prefix == "")
-      {
-        prefix = null;
-      }
-
-      if (xsdSchema != null)
-      {
-        Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-        map.remove(prefix);
-        Element schemaElement = xsdSchema.getElement();
-        schemaElement.removeAttribute(xmlnsAttr);
-      }
-    }
-  }
-
-  public List getPrefixedNames(String namespace, String localName)
-  {
-    List list = new ArrayList();
-    if (namespace == null)
-    {
-      namespace = "";    			
-    }
-    if (xsdSchema != null && localName != null)
-    {
-      List prefixes = getPrefixesForNamespace(namespace);
-      for (Iterator i = prefixes.iterator(); i.hasNext(); )
-      {
-      	String prefix = (String)i.next();
-      	if (prefix == null) prefix = "";
-        String prefixedName = prefix.length() > 0 ? prefix + ":" + localName : localName;
-        list.add(prefixedName);               
-      }
-      if (prefixes.size() == 0)
-      {
-        list.add(localName);
-      }
-    }
-    return list;
-  }
-  
-  protected List getPrefixesForNamespace(String namespace)
-  {
-    List list = new ArrayList();
-    Map map = xsdSchema.getQNamePrefixToNamespaceMap();
-    boolean atLeastOnePrefixFound = false;
-    for (Iterator iter = map.keySet().iterator(); iter.hasNext();)
-    {
-      String prefix = (String) iter.next();
-      Object value = map.get(prefix);
-      if (value != null && value.toString().equals(namespace))
-      {
-       list.add(prefix);
-      }
-    }
-    return list;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/ViewUtility.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/ViewUtility.java
deleted file mode 100644
index 3e71a8a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/ViewUtility.java
+++ /dev/null
@@ -1,429 +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.xsd.ui.internal.util;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.List;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.Text;
-
-public class ViewUtility
-{
-  private static Font font;
-
-  public static Font getFont()
-  {
-    if (font == null)
-    {              
-      font = new Font(Display.getCurrent(), "ms sans serif", 8, SWT.NORMAL);  
-    }
-    return font;
-  }
-
-  public static void setFont(Font newFont)
-  {
-    font = newFont;
-  }
-
-  public static void setComposite(Composite comp)
-  {
-    // deprecated.  Remove later
-  }
-  public static Composite createComposite(Composite parent, int numColumns)
-  {
-    Composite composite = new Composite(parent, SWT.NONE);
-
-    composite.setFont(getFont());
-
-    GridLayout layout = new GridLayout();
-    layout.numColumns = numColumns;
-    composite.setLayout(layout);
-
-    GridData data = new GridData();
-    data.verticalAlignment = GridData.FILL;
-    data.horizontalAlignment = GridData.FILL;
-    composite.setLayoutData(data);
-    return composite;
-  }
-
-  public static Composite createComposite(Composite parent, int numColumns, boolean horizontalFill)
-  {
-    if (!horizontalFill)
-    {
-      createComposite(parent, numColumns);
-    }
-
-    Composite composite = new Composite(parent, SWT.NONE);
-
-    composite.setFont(getFont());
-
-    GridLayout layout = new GridLayout();
-    layout.numColumns = numColumns;
-    composite.setLayout(layout);
-
-    GridData data = new GridData();
-    data.verticalAlignment = GridData.FILL;
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    composite.setLayoutData(data);
-
-    return composite;
-  }
-
-  public static Composite createComposite(Composite parent, int numColumns, boolean horizontalFill, boolean verticalFill)
-  {
-    if (!horizontalFill && !verticalFill)
-    {
-      createComposite(parent, numColumns);
-    }
-
-    Composite composite = new Composite(parent, SWT.NONE);
-
-    composite.setFont(getFont());
-
-    GridLayout layout = new GridLayout();
-    layout.numColumns = numColumns;
-    composite.setLayout(layout);
-
-    GridData data = new GridData();
-    data.verticalAlignment = GridData.FILL;
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    data.grabExcessVerticalSpace = true;
-    composite.setLayoutData(data);
-
-    return composite;
-  }
-
-  public static Label createHorizontalFiller(Composite parent, int horizontalSpan) 
-  {
-    Label label = new Label(parent, SWT.LEFT);
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.horizontalSpan = horizontalSpan;
-    label.setLayoutData(data);
-    return label;
-  }
-
-  /**
-   * Helper method for creating labels.
-   */
-  public static Label createLabel(Composite parent, String text) 
-  {
-    Label label = new Label(parent, SWT.LEFT);
-    label.setText(text);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    label.setLayoutData(data);
-    return label;
-  }
-
-	public Label createLabel(Composite parent, int style, String text)
-	{
-		Label label = new Label(parent, style);
-//		setColor(label);
-		label.setText(text);
-
-		GridData data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		label.setLayoutData(data);
-		return label;
-	}
-  
-  public static Label createLabel(Composite parent, String text, int alignment)
-  {
-    Label label = new Label(parent, SWT.LEFT);
-    label.setText(text);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.verticalAlignment = alignment;
-    label.setLayoutData(data);
-    return label;
-  }
-
-  /**
-   * Helper method for creating buttons.
-   */
-  public static Button createPushButton(Composite parent, String label) 
-  {
-    Button button = new Button(parent, SWT.PUSH);
-    button.setText(label);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    button.setLayoutData(data);
-
-    return button;
-  }
-
-  public static Table createTable(Composite parent)
-  {
-    Table table = new Table(parent, SWT.SINGLE | SWT.BORDER);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    table.setLayoutData(data);
-
-    return table;
-  }
-
-  /**
-   * Create radio button
-   */
-  public static Button createRadioButton(Composite parent, String label)
-  {
-    Button button = new Button(parent, SWT.RADIO);
-    button.setText(label);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    button.setLayoutData(data);
-
-    return button;
-  }
-
-  /**
-   * Helper method for creating check box
-   */
-  public static Button createCheckBox(Composite parent, String label) 
-  {
-    Button button = new Button(parent, SWT.CHECK);
-    button.setText(label);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    button.setLayoutData(data);
-    return button;
-  }
-
-  public static Combo createComboBox(Composite parent)
-  {
-    return createComboBox(parent, true);
-  }
-
-  public static Combo createComboBox(Composite parent, boolean isReadOnly)
-  {
-    int style = isReadOnly == true ? SWT.READ_ONLY : SWT.DROP_DOWN;
-
-    Combo combo = new Combo(parent, style);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    combo.setLayoutData(data);
-    return combo;
-  }
-
-  public static List createListBox(Composite parent, int width, boolean isMultiSelect)
-  {
-    int style = isMultiSelect ? SWT.MULTI : SWT.SINGLE;
-    List list = new List(parent, style | SWT.BORDER);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    data.widthHint = width;
-    list.setLayoutData(data);
-
-    return list;
-  }
-
-  public static List createListBox(Composite parent, int style)
-  {
-    List list = new List(parent, style);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.verticalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    data.grabExcessVerticalSpace = true;
-    list.setLayoutData(data);
-
-    return list;
-  }
-
-	public Text createTextField(Composite parent)
-	{
-		Text text = new Text(parent, SWT.SINGLE | SWT.BORDER);
-		GridData data = new GridData();
-		data.horizontalAlignment = GridData.FILL;
-		data.verticalAlignment = GridData.FILL;
-		data.grabExcessHorizontalSpace = true;
-		text.setLayoutData(data);
-//		text.addKeyListener(keyboardHandler);
-		return text;
-	}
-  
-  public static Text createTextField(Composite parent, int width)
-  {
-    Text text = new Text(parent, SWT.SINGLE | SWT.BORDER);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    data.widthHint = width;
-    text.setLayoutData(data);
-
-    return text;
-  }
-
-  /**
-   * <code>createWrappedMultiTextField</code> creates a wrapped multitext field
-   *
-   * @param parent a <code>Composite</code> value
-   * @param width an <code>int</code> value
-   * @param numLines an <code>int</code> value representing number of characters in height
-   * @param verticalFill a <code>boolean</code> value
-   * @return a <code>Text</code> value
-   */
-  public static Text createWrappedMultiTextField(Composite parent, int width, int numLines, boolean verticalFill)
-  {
-    Text text = new Text(parent, SWT.MULTI | SWT.BORDER | SWT.WRAP | SWT.V_SCROLL);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    if (verticalFill)
-    {
-      data.verticalAlignment = GridData.FILL;
-      data.grabExcessVerticalSpace = true;
-    }      
-    data.widthHint = width;
-    FontData[] fontData = getFont().getFontData();
-    // hack for now where on Windows, only 1 fontdata exists
-    data.heightHint = numLines * fontData[0].getHeight();
-    text.setLayoutData(data);
-
-    return text;
-  }
-
-  public static Text createMultiTextField(Composite parent, int width, int height, boolean verticalFill)
-  {
-    Text text = new Text(parent, SWT.MULTI | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    if (verticalFill)
-    {
-      data.verticalAlignment = GridData.FILL;
-      data.grabExcessVerticalSpace = true;
-    }      
-    data.widthHint = width;
-    data.heightHint = height;
-    text.setLayoutData(data);
-
-    return text;
-  }
-
-  public static Group createGroup(Composite parent, int numColumns, String text, boolean verticalFill) 
-  {
-    Group group = new Group(parent, SWT.SHADOW_ETCHED_IN);
-    group.setText(text);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    if (verticalFill)
-    {
-      data.verticalAlignment = GridData.FILL;
-      data.grabExcessVerticalSpace = true;
-    }      
-    group.setLayoutData(data);
-
-    GridLayout layout = new GridLayout();
-    layout.numColumns = numColumns;
-    group.setLayout(layout);
-    return group;
-  }
-
- public static Group createGroup(Composite parent, int numColumns, String text, boolean verticalFill, int alignment) 
-  {
-    Group group = new Group(parent, SWT.SHADOW_ETCHED_IN);
-    group.setText(text);
-
-    GridData data = new GridData();
-    data.horizontalAlignment = GridData.FILL;
-    data.grabExcessHorizontalSpace = true;
-    data.verticalAlignment = alignment;
-    if (verticalFill)
-    {
-      data.verticalAlignment = GridData.FILL;
-      data.grabExcessVerticalSpace = true;
-    }      
-    group.setLayoutData(data);
-
-    GridLayout layout = new GridLayout();
-    layout.numColumns = numColumns;
-    group.setLayout(layout);
-    return group;
-  }
-
-  public static Label createVerticalFiller(Composite parent, int verticalSpan) 
-  {
-    Label label = new Label(parent, SWT.LEFT);
-    label.setFont(getFont());
-
-    GridData data = new GridData();
-    data.verticalAlignment = GridData.FILL;
-    data.verticalSpan = verticalSpan;
-    label.setLayoutData(data);
-
-    return label;
-  }
-
-  /**
-   * Creates a grid data object that occupies vertical and horizontal
-   * space.
-   */
-  static public GridData createFill()
-  {
-    GridData gd= new GridData();
-    gd.horizontalAlignment= GridData.FILL;
-    gd.grabExcessHorizontalSpace= true;
-    gd.verticalAlignment= GridData.FILL;
-    gd.grabExcessVerticalSpace= true;
-    return gd;
-  }
-  /**
-   * Creates a grid data object that occupies horizontal space.
-   */
-  static public GridData createHorizontalFill()
-  {
-    GridData gd= new GridData();
-    gd.horizontalAlignment= GridData.FILL;
-    gd.grabExcessHorizontalSpace= true;
-    return gd;
-  }
-  /**
-   * Creates a grid data object that occupies vertical space.
-   */
-  static public GridData createVerticalFill()
-  {
-    GridData gd= new GridData();
-    gd.verticalAlignment= GridData.FILL;
-    gd.grabExcessVerticalSpace= true;
-    return gd;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/XSDDOMHelper.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/XSDDOMHelper.java
deleted file mode 100644
index 4c84c36..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/XSDDOMHelper.java
+++ /dev/null
@@ -1,1103 +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.xsd.ui.internal.util;
-
-import org.eclipse.wst.sse.core.format.IStructuredFormatProcessor;
-import org.eclipse.wst.xml.core.document.XMLModel;
-import org.eclipse.wst.xml.core.document.XMLNode;
-import org.eclipse.wst.xml.core.format.FormatProcessorXML;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.Text;
-
-public class XSDDOMHelper
-{
-  public static final int LENGTH_FACET        =  1;
-  public static final int MIN_LENGTH_FACET    =  2;
-  public static final int MAX_LENGTH_FACET    =  3;
-  public static final int PATTERN_FACET       =  4;
-  public static final int ENUM_FACET          =  5;
-  public static final int WHITE_SPACE_FACET   =  6;
-
-  public static final int MAX_INCLUSIVE_FACET =  7;
-  public static final int MAX_EXCLUSIVE_FACET =  8;
-  public static final int MIN_INCLUSIVE_FACET =  9;
-  public static final int MIN_EXCLUSIVE_FACET =  10;
-
-  public static final int TOTAL_DIGITS_FACET     = 11;
-  public static final int FRACTION_DIGITS_FACET  = 12;
-
-  public static final int N_FACETS            = 13;
-
-  public static String[][] dataType =
-  {
-    //
-    // Table format:
-    // Type
-    //  Length, MinLength, MaxLength, Pattern, Enumeration,whiteSpace
-    //  MaxInclusive, MaxExclusive, MinInclusive, MinExclusive, TotalDigits, FractionDigits
-    //
-
-    // 0
-    { "anySimpleType",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 1
-    { "anyType",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-
-    // 2
-    { "anyURI",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 3
-    { "base64Binary",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 4
-    { "boolean",
-        "N", "N", "N", "Y", "N", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 5
-    { "byte",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 6
-    { "date",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 7
-    { "dateTime",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 8
-    { "decimal",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-
-    // 9
-    { "double",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 10
-    { "duration",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 11
-    { "ENTITY",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 12
-    { "ENTITIES",
-        "Y", "Y", "Y", "N", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 13
-    { "float",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 14
-    { "gDay",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 15
-    { "gMonth",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 16
-    { "gMonthDay",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 17
-    { "gYear",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 18
-    { "gYearMonth",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 19
-    { "hexBinary",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 20
-    { "ID",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 21
-    { "IDREF",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 22
-    { "IDREFS",
-        "Y", "Y", "Y", "N", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 23
-    { "int",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 24
-    { "integer",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 25
-    { "language",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 26
-    { "long",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 27
-    { "Name",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-
-    // 28
-    { "NCName",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 29
-    { "negativeInteger",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 30
-    { "NMTOKEN",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 31
-    { "NMTOKENS",
-        "Y", "Y", "Y", "N", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 32
-    { "nonNegativeInteger",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 33
-    { "nonPositiveInteger",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 34
-    { "normalizedString",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-
-    },
-
-    // 35
-    { "NOTATION",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-
-    },
-
-    // 36
-    { "positiveInteger",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 37
-    { "QName",
-        "N", "N", "N", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 38
-    { "short",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 39
-    { "string",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 40
-    { "time",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "N", "N",
-    },
-
-    // 41
-    { "token",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-        "N", "N", "N", "N", "N", "N",
-    },
-
-    // 42
-    { "unsignedByte",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 43
-    { "unsignedInt",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 44
-    { "unsignedLong",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-    // 45
-    { "unsignedShort",
-        "N", "N", "N", "Y", "Y", "Y",
-        "Y", "Y", "Y", "Y", "Y", "Y",
-    },
-
-  };
-
-  public static String XMLSchemaURI = "http://www.w3.org/2001/XMLSchema";
-
-  /**
-   * Constructor for XSDDOMHelper.
-   */
-  public XSDDOMHelper()
-  {
-    super();
-  }
-
-  public Node getChildNode(Element parent, String childName)
-  {
-/*    NodeList nodeList = parent.getElementsByTagNameNS(XMLSchemaURI, childName);
-    if (nodeList.getLength() > 0)
-      return nodeList.item(0);
-    return null;
-*/
-    NodeList list = null;
-    if (parent != null)
-    {
-      list = parent.getChildNodes();
-    }
-   
-    String name = null;
-    if (list != null)
-    {
-      // Performance issue perhaps?
-      for (int i = 0; i < list.getLength(); i++)
-      {
-        if (list.item(i) instanceof Element)
-        {
-          if (list.item(i).getLocalName().equals(childName))
-          {
-            return list.item(i);
-          }
-        }
-      }
-    }
-    return null;
-  }
-
-  public static String SIMPLE_TYPE = "Simple";
-  public static String USER_SIMPLE_TYPE = "simpleType";
-  public static String USER_COMPLEX_TYPE = "complexType";
-/*
-  public void setElementType(Element element, String type)
-  {
-    Document doc = element.getOwnerDocument();
-    if (type.equals(SIMPLE_TYPE))
-    {
-      removeChild(element, USER_SIMPLE_TYPE);
-      removeChild(element, USER_COMPLEX_TYPE);
-      element.setAttribute("type","xsd:string");
-      return;
-    }
-    else if (type.equals(USER_SIMPLE_TYPE))
-    {
-      removeChild(element, USER_COMPLEX_TYPE);
-    }
-    else
-    {
-      removeChild(element, USER_SIMPLE_TYPE);
-    }
-    element.removeAttribute("type");
-    element.appendChild(doc.createElement("xsd:"+type));
-  }
-
-  public String getElementType(Element element)
-  {
-    String tagName = element.getLocalName();
-
-    if (tagName.equals(XSDConstants.ELEMENT_ELEMENT_TAG) ||
-        tagName.equals(XSDConstants.ATTRIBUTE_ELEMENT_TAG))
-    {
-      if (element.hasAttribute("type"))
-      {
-        return SIMPLE_TYPE;
-      }
-      NodeList nodes = element.getElementsByTagNameNS(XMLSchemaURI, USER_SIMPLE_TYPE);
-      if (nodes.getLength() > 0)
-      {
-        return USER_SIMPLE_TYPE;
-      }
-      nodes = element.getElementsByTagNameNS(XMLSchemaURI, USER_COMPLEX_TYPE);
-      if (nodes.getLength() > 0)
-      {
-        return USER_COMPLEX_TYPE;
-      }
-    }
-    return "";
-  }
-*/
-  public void removeDerivedByElement(Element element)
-  {
-    removeChild(element, XSDConstants.RESTRICTION_ELEMENT_TAG);
-    removeChild(element, XSDConstants.EXTENSION_ELEMENT_TAG);
-  }
-
-  public String getBaseType(Element element) // for SimpleContent and ComplexContent
-  {
-    Node restrictionChild = getChildNode(element, "restriction");
-    Node extensionChild = getChildNode(element, "extension");
-    String baseType = "";
-    if (restrictionChild != null)
-    {
-      if (restrictionChild instanceof Element)
-      {
-        baseType = ((Element)restrictionChild).getAttribute("base");
-//        String prefix = element.getPrefix();
-//        if (prefix != null && prefix.length() > 0)
-//        {
-//          baseType = baseType.substring(baseType.indexOf(prefix) + prefix.length() + 1);
-//        }
-      }
-    }
-    else if (extensionChild != null) // should be one or the other
-    {
-      if (extensionChild instanceof Element)
-      {
-        baseType = ((Element)extensionChild).getAttribute("base");
-//        String prefix = element.getPrefix();
-//        if (prefix != null && prefix.length() > 0)
-//        {
-//          baseType = baseType.substring(baseType.indexOf(prefix) + prefix.length() + 1);
-//        }
-      }
-    }
-    return baseType;
-  }
-
-  public void setDerivedByBaseType(Element element, String derivedByType, String type)
-  {
-    Document doc = element.getOwnerDocument();
-
-    Element derivedByElement = getDerivedByElement(element);
-    if (derivedByElement != null)
-    {
-      derivedByElement.setAttribute("base", type);
-    }
-    else  // there really should be one already...base is required.
-    {
-      Element newElement = doc.createElement(derivedByType);
-      newElement.setAttribute("base", type);
-      element.appendChild(newElement);
-    }
-  }
-
-  public void changeDerivedByType(Element element, String derivedByType, String type)
-  {
-    Document doc = element.getOwnerDocument();
-
-    String prefix = element.getPrefix();
-    prefix = prefix == null ? "" : prefix + ":";
-
-    Element derivedByElement = getDerivedByElement(element);
-    
-    if (derivedByElement.getLocalName().equals(derivedByType))
-    {
-    	return; // it's already the derived by type
-    }
-    Element newNode;
-  	if (derivedByType.equals("restriction"))
-  	{
-    	newNode = doc.createElementNS(XSDDOMHelper.XMLSchemaURI, prefix + XSDConstants.RESTRICTION_ELEMENT_TAG);
-    }
-    else
-    {
-    	newNode = doc.createElementNS(XSDDOMHelper.XMLSchemaURI, prefix + XSDConstants.EXTENSION_ELEMENT_TAG);
-    }
-
-    if (derivedByElement != null)
-    {
-      if (derivedByElement.hasChildNodes())
-      {        
-        NodeList nodes = derivedByElement.getChildNodes();
-        // use clones so we don't have a refresh problem
-        for (int i = 0; i < nodes.getLength(); i++)
-        {
-          Node node = nodes.item(i);       
-          newNode.appendChild(node.cloneNode(true));
-        }
-      }
-      newNode.setAttribute("base", type);
-      element.replaceChild(newNode, derivedByElement);
-
-    }
-  }
-
-  public void setSimpleContentType(Element element, String type)
-  {
-    String contentTypeName = element.getLocalName();
-
-    if (contentTypeName.equals(XSDConstants.UNION_ELEMENT_TAG))
-    {
-      element.setAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE, type);
-    }
-    else if (contentTypeName.equals(XSDConstants.LIST_ELEMENT_TAG))
-    {
-      element.setAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE, type);
-    }
-    else if (contentTypeName.equals(XSDConstants.RESTRICTION_ELEMENT_TAG))
-    {
-      element.setAttribute(XSDConstants.BASE_ATTRIBUTE, type);
-    }
-  }
-
-  public void removeSimpleTypeContent(Element element)
-  {
-    String contentTypeName = element.getLocalName();
-    if (contentTypeName.equals(XSDConstants.UNION_ELEMENT_TAG))
-    {
-      element.removeAttribute(XSDConstants.MEMBERTYPES_ATTRIBUTE);
-    }
-    else if (contentTypeName.equals(XSDConstants.LIST_ELEMENT_TAG))
-    {
-      element.removeAttribute(XSDConstants.ITEMTYPE_ATTRIBUTE);
-    }
-    else if (contentTypeName.equals(XSDConstants.RESTRICTION_ELEMENT_TAG))
-    {
-      element.removeAttribute(XSDConstants.BASE_ATTRIBUTE);
-    }
-  }
-
-  public String getDerivedByName(Element element)
-  {
-    Node restrictionChild = getChildNode(element, "restriction");
-    Node extensionChild = getChildNode(element, "extension");
-    if (restrictionChild != null)
-    {
-      return "restriction";
-    }
-    if (extensionChild != null)
-    {
-      return "extension";
-    }
-    return "";
-  }
-
-  /**
-   * Get the derived by node given the complexContent or simpleContent node
-   */
-  public Element getDerivedByElement(Element element)
-  {
-    Node restrictionChild = getChildNode(element, "restriction");
-    Node extensionChild = getChildNode(element, "extension");
-    if (restrictionChild != null)
-    {
-      if (restrictionChild instanceof Element)
-      {
-        return (Element)restrictionChild;
-      }
-    }
-    
-    if (extensionChild != null)
-    {
-      if (extensionChild instanceof Element)
-      {
-        return (Element)extensionChild;
-      }
-    }
-    return null;
-  }
-
-  /**
-   * Get the derived by node given the ComplexType node
-   * Returns the first one, if say, the INVALID schema has more than one
-   */
-  public Element getDerivedByElementFromComplexType(Element element)
-  {
-    NodeList nl = element.getChildNodes();
-    int childNumber = 0;
-    int j = 0;
-    for (j = 0; j < nl.getLength(); j++)
-    {
-      Node aNode = nl.item(j);
-      if (inputEquals(aNode, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-      {
-        break; 
-      }
-      else if (inputEquals(aNode, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-      {
-        break;
-      }
-    }
-    Element derivedByNode = getDerivedByElement((Element)nl.item(j));
-    return derivedByNode;
-  }
-
-  /**
-   * Get the content model given the ComplexType node
-   * Returns the first one, if say, the INVALID schema has more than one
-   */
-  public Element getContentModelFromParent(Element element)
-  {
-    NodeList nl = element.getChildNodes();
-    int childNumber = 0;
-    int j = 0;
-    boolean modelExists = false;
-    int length = nl.getLength();
-    for (j = 0; j < length; j++)
-    {
-      Node aNode = nl.item(j);
-      if (inputEquals(aNode, XSDConstants.COMPLEXCONTENT_ELEMENT_TAG, false))
-      {
-        modelExists = true;
-        break; 
-      }
-      else if (inputEquals(aNode, XSDConstants.SIMPLECONTENT_ELEMENT_TAG, false))
-      {
-        modelExists = true;
-        break;
-      }
-      else if (inputEquals(aNode, XSDConstants.SEQUENCE_ELEMENT_TAG, false))
-      {
-        modelExists = true;
-        break;
-      }
-      else if (inputEquals(aNode, XSDConstants.CHOICE_ELEMENT_TAG, false))
-      {
-        modelExists = true;
-        break;
-      }
-      else if (inputEquals(aNode, XSDConstants.ALL_ELEMENT_TAG, false))
-      {
-        modelExists = true;
-        break;
-      }
-    }
-    if (!modelExists)
-    {
-      return null;
-    }
-
-    Element derivedByNode = (Element)nl.item(j);
-    return derivedByNode;
-  }
-
-  /**
-   * 
-   */
-  public void changeContentModel(Element complexTypeElement, String contentModel, Element sequenceChoiceOrAllElement)
-  {
-    Document doc = complexTypeElement.getOwnerDocument();
-
-    String prefix = complexTypeElement.getPrefix();
-    prefix = prefix == null ? "" : prefix + ":";
-    
-    Element contentModelElement = getContentModelFromParent(complexTypeElement);
-
-    if (contentModelElement.getLocalName().equals(contentModel))
-    {
-      return; // it's already the content model 
-    }
-    Element newNode;
-    newNode = doc.createElementNS(XSDDOMHelper.XMLSchemaURI, prefix + contentModel);
-
-    if (contentModelElement.hasChildNodes())
-    {        
-      NodeList nodes = contentModelElement.getChildNodes();
-      // use clones so we don't have a refresh problem
-      for (int i = 0; i < nodes.getLength(); i++)
-      {
-        Node node = nodes.item(i);
-        if (node instanceof Element)
-        {
-          if (node.getLocalName().equals(XSDConstants.ANNOTATION_ELEMENT_TAG))
-          {
-            if (!(XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.SEQUENCE_ELEMENT_TAG, false) ||
-                XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.CHOICE_ELEMENT_TAG, false) ||
-                XSDDOMHelper.inputEquals(contentModelElement, XSDConstants.ALL_ELEMENT_TAG, false)))
-            {
-              newNode.appendChild(node.cloneNode(true));
-            }
-          }
-          else if (node.getLocalName().equals(XSDConstants.RESTRICTION_ELEMENT_TAG) ||
-                    node.getLocalName().equals(XSDConstants.EXTENSION_ELEMENT_TAG))
-          {
-            newNode.appendChild(node.cloneNode(true));
-            if (sequenceChoiceOrAllElement != null)
-            {
-              node.appendChild(sequenceChoiceOrAllElement);
-            }
-          }
-          else
-          {
-            removeNodeAndWhitespace(node);
-          }
-        }
-        else
-        {
-          newNode.appendChild(node.cloneNode(true)); 
-        }
-      }
-    }
-    complexTypeElement.replaceChild(newNode, contentModelElement);
-  }
-
-  public Element cloneElement(Element parent, Element sourceNode)
-  {
-    Document doc = parent.getOwnerDocument();
-    String prefix = parent.getPrefix();
-    prefix = prefix == null ? "" : prefix + ":";
-    
-    Element newNode = doc.createElementNS(XSDDOMHelper.XMLSchemaURI, prefix + sourceNode.getLocalName());
-
-    if (sourceNode.hasChildNodes())
-    {        
-      NodeList nodes = sourceNode.getChildNodes();
-      // use clones so we don't have a refresh problem
-      for (int i = 0; i < nodes.getLength(); i++)
-      {
-        Node node = nodes.item(i);
-        newNode.appendChild(node.cloneNode(true));
-      }
-    }
-    return newNode;
-//    parent.replaceChild(newNode, sourceNode);
-  }
-
-  public boolean hasElementChildren(Element parentNode)
-  {
-    boolean hasChildrenElements = false;
-    if (parentNode != null && parentNode.hasChildNodes())
-    {
-      NodeList nodes = parentNode.getChildNodes();
-      for (int i = 0; i < nodes.getLength(); i++)
-      {
-        if (nodes.item(i) instanceof Element)
-        {
-          hasChildrenElements = true;
-          break;
-        }
-      }
-    }
-    return hasChildrenElements;
-  }
-
-  public void removeChild(Element node, String childName)
-  {
-    Node child = getChildNode(node,childName);
-    if (child != null)
-    {
-      node.removeChild(child);
-    }
-  }
-
-  public static boolean isFacet(Object obj)
-  {
-    if (XSDDOMHelper.inputEquals(obj, XSDConstants.LENGTH_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.MINLENGTH_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.MAXLENGTH_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.WHITESPACE_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.MAXINCLUSIVE_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.MAXEXCLUSIVE_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.MININCLUSIVE_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.MINEXCLUSIVE_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.TOTALDIGITS_ELEMENT_TAG, false) ||
-        XSDDOMHelper.inputEquals(obj, XSDConstants.FRACTIONDIGITS_ELEMENT_TAG, false))
-    {
-      return true;
-    }
-    return false;
-  }
-
-  public static void removeNodeAndWhitespace(Node node)
-  {
-    Node parentNode = node.getParentNode();
-    
-    Node nextElement = getNextElementNode(node);
-    Node previousElement = getPreviousElementNode(node);
-
-    Node nextSibling = node.getNextSibling();
-    if (nextSibling instanceof Text)
-    {
-      parentNode.removeChild(nextSibling);
-    }
-    Node previousSibling = node.getPreviousSibling();
-
-		parentNode.removeChild(node);
-
-    if (nextElement != null)
-    {
-			formatChild(nextElement);
-    }
-
-		if (previousElement != null)
-		{
-			formatChild(previousElement);
-		}
-  }
-
-	public static void formatChild(Node child)
-	{
-    if (child instanceof XMLNode)
-    {
-      XMLModel model = ((XMLNode)child).getModel();
-      try
-      {
-        // tell the model that we are about to make a big model change
-        model.aboutToChangeModel();
-        
-	      IStructuredFormatProcessor formatProcessor = new FormatProcessorXML();
-		    formatProcessor.formatNode(child);
-      }
-      finally
-      {
-        // tell the model that we are done with the big model change
-        model.changedModel(); 
-      }
-    }
-  }
-  
-  public static Node getLastElementNode(Node parent)
-  {
-    Node lastChild = parent.getLastChild();
-    
-    while (!(lastChild instanceof Element) && lastChild != null)
-    {
-      lastChild = lastChild.getPreviousSibling();
-    }
-    return lastChild;
-  }
-
-  public static Node getNextElementNode(Node node)
-  {
-    Node next = node.getNextSibling();
-    
-    while (!(next instanceof Element) && next != null)
-    {
-      next = next.getNextSibling();
-    }
-    if (next instanceof Text)
-    {
-    	return null;
-    }
-    return next;
-  }
-
-	public static Node getPreviousElementNode(Node node)
-	{
-		Node previous = node.getPreviousSibling();
-    
-		while (!(previous instanceof Element) && previous != null)
-		{
-			previous = previous.getPreviousSibling();
-		}
-    if (previous instanceof Text)
-    {
-      return null;
-    }
-    return previous;
-	}
-
-  public static void moveNode(Node referenceNode, Node nodeToMove, boolean isBefore)
-  {
-    // this assumes that the referenceNode and node to move have the same parent
-    Node parent = referenceNode.getParentNode();
-
-    // Get reference nodes next and previous text strings
-    String referenceNodeNextString = "";
-    String referenceNodePreviousString = "";
-    if (referenceNode != null)
-    {
-      Node referenceNodeNextSibling = referenceNode.getNextSibling();
-      Node referenceNodePreviousSibling = referenceNode.getPreviousSibling();
-      if (referenceNodeNextSibling instanceof Text)
-      {
-        referenceNodeNextString = ((Text)referenceNodeNextSibling).getData();
-      }
-      if (referenceNodePreviousSibling instanceof Text)
-      {
-        referenceNodePreviousString = ((Text)referenceNodePreviousSibling).getData();
-      }
-    }
-    // Get the dragged node's next and previous text strings
-    Node nodeToMoveNextSibling = nodeToMove.getNextSibling();
-    Node nodeToMovePreviousSibling = nodeToMove.getPreviousSibling();
-    Node nodeToMoveNextText = null;
-    String nodeToMoveNextString = "";
-    String nodeToMovePreviousString = "";
-    if (nodeToMoveNextSibling instanceof Text)
-    {
-      nodeToMoveNextText = (Text)nodeToMoveNextSibling;
-      nodeToMoveNextString = ((Text)nodeToMoveNextSibling).getData();
-    }
-    if (nodeToMovePreviousSibling instanceof Text)
-    {
-      nodeToMovePreviousString = ((Text)nodeToMovePreviousSibling).getData();
-    }
-
-    // Get the last element's next and previous text strings
-    Node lastElement = getLastElementNode(parent);
-    Node lastElementNextSibling = lastElement.getNextSibling();
-    Node lastElementPreviousSibling = lastElement.getPreviousSibling();
-    String lastElementNextString = "";
-    String lastElementPreviousString = "";		
-    if (lastElementNextSibling instanceof Text)
-    {
-      lastElementNextString = ((Text)lastElementNextSibling).getData();
-    }
-    if (lastElementPreviousSibling instanceof Text)
-    {
-      lastElementPreviousString = ((Text)lastElementPreviousSibling).getData();
-    }
-
-    boolean isLastElement = false; // whether the last element is dragged/moved
-    if (lastElement == nodeToMove)
-    {
-      isLastElement = true;
-    }
-		
-    // defect 221056 this test is required or else the node will
-    // be removed from the tree and the insert will fail
-    if (referenceNode != nodeToMove)
-    {
-      parent.removeChild(nodeToMove);
-      if (referenceNode != null)
-      {
-        if (!isBefore)
-        {
-          referenceNode = getNextElementNode(referenceNode);
-//        referenceNode = referenceNode.getNextSibling();
-        }
-      }
-
-      if (referenceNode != null)
-      {
-        insertBefore(nodeToMove, referenceNode);
-      }
-      else
-      {
-        parent.appendChild(nodeToMove);
-      }
-
-      Node newLastElement = getLastElementNode(parent);
-      if (referenceNode != null)
-      {
-        if (referenceNode != newLastElement) 
-        {
-          if (!isLastElement)
-          {
-            setTextData(referenceNode, nodeToMoveNextString, nodeToMovePreviousString);
-          }
-        }
-        setTextData(nodeToMove, referenceNodeNextString, referenceNodePreviousString);
-      }
-      // Remove the empty space left by the dragged node
-      if (nodeToMoveNextText != null)
-      {
-    	  parent.removeChild(nodeToMoveNextText);
-      }
-      // special case for the last element
-      if ((newLastElement == nodeToMove) || isLastElement)
-      {
-        setTextData(newLastElement, lastElementNextString, lastElementPreviousString);
-      }
-    }
-  }
-
-  public static void setTextData(Node target, String nextText, String previousText)
-  {
-    Node parent = target.getParentNode();
-    Node nextSibling = target.getNextSibling();
-    Node previousSibling = target.getPreviousSibling();
-    if (nextSibling instanceof Text)
-    {
-      ((Text)nextSibling).setData(nextText);	
-    }
-    if (nextSibling == null || nextSibling instanceof Element)
-    {
-      Text textNode = parent.getOwnerDocument().createTextNode("");
-      textNode.setData(nextText);
-      if (nextSibling != null)
-      {
-        parent.insertBefore(textNode, nextSibling);
-      }
-      else
-      {
-        parent.insertBefore(textNode, getNextElementNode(target));
-      }
-    }				
-
-    if (previousSibling instanceof Text)
-    {
-      ((Text)previousSibling).setData(previousText);
-    }
-    if (previousSibling == null || previousSibling instanceof Element)
-    {
-      Text textNode = parent.getOwnerDocument().createTextNode("");
-      textNode.setData(previousText);
-      parent.insertBefore(textNode, target);
-    }				
-  }
-
-  public static void insertBefore(Node nodeToInsert, Node referenceNode)
-  {
-    // this assumes that the referenceNode and node to move have the same parent
-    Node parent = referenceNode.getParentNode();
-
-    Node previousSibling = referenceNode.getPreviousSibling();
-    parent.insertBefore(nodeToInsert, referenceNode);
-  }
-
-  public static boolean inputEquals(Object input, String tagname, boolean isRef)
-  {
-    if (input instanceof Element)
-    {
-      Element element = (Element) input;
-      if (element.getLocalName().equals(tagname))
-      {
-        boolean refPresent = element.hasAttribute("ref");
-
-        return refPresent == isRef;
-      }
-    }
-    return false;
-  }
-
-  public static void updateElementToNotAnonymous(Element element)
-  {
-    if (element != null)
-    {
-      NodeList children = element.getChildNodes();
-      if (children != null)
-      {
-        for (int i = 0; i < children.getLength(); i++)
-        {
-          Node node = (Node)children.item(i);
-          if (node instanceof Element)
-          {
-            if (node.getLocalName().equals(XSDConstants.SIMPLETYPE_ELEMENT_TAG) ||
-                node.getLocalName().equals(XSDConstants.COMPLEXTYPE_ELEMENT_TAG))
-            {
-              XSDDOMHelper.removeNodeAndWhitespace(node);
-              i=0;
-            }
-          }
-        }
-      }
-    }
-  }
-  
-  public static boolean isAttributeRef(Element ct, String attrName, String ns)
-  {
-    NodeList list = ct.getChildNodes();
-    int length = list.getLength();
-    for (int i = 0; i < length; i++)
-    {
-      if (list.item(i) instanceof Element)
-      {
-        Element aChild = (Element)list.item(i);
-        if (aChild.getLocalName().equals(XSDConstants.ATTRIBUTE_ELEMENT_TAG))
-        {
-          if (aChild.hasAttribute(XSDConstants.REF_ATTRIBUTE))
-          {
-            String refValue = aChild.getAttribute(XSDConstants.REF_ATTRIBUTE);
-            if (refValue.equals(attrName))
-            {
-              return true;
-            }
-          }
-        }
-      }
-      
-    }
-    
-    return false;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/XSDSchemaHelper.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/XSDSchemaHelper.java
deleted file mode 100644
index a57e619..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/util/XSDSchemaHelper.java
+++ /dev/null
@@ -1,72 +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.xsd.ui.internal.util;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.xsd.XSDConcreteComponent;
-
-// TODO: KC remove this
-
-public class XSDSchemaHelper
-{
-  /**
-   * Constructor for XSDSchemaHelper.
-   */
-  public XSDSchemaHelper()
-  {
-    super();
-  }
-  
-  public static void updateElement(XSDConcreteComponent concreteComp)
-  {
-    try
-    {
-      concreteComp.updateElement();
-    }
-    catch (Exception e)
-    {
-      for (Iterator containments = concreteComp.eClass().getEAllReferences().iterator(); containments.hasNext(); )
-      {
-        EReference eReference = (EReference)containments.next();
-        if (eReference.isContainment())
-        {
-          if (eReference.isMany())
-          {
-            for (Iterator objects = ((Collection)concreteComp.eGet(eReference)).iterator(); objects.hasNext(); )
-            {
-              XSDConcreteComponent xsdConcreteComponent = (XSDConcreteComponent)objects.next();
-              try
-              {
-                xsdConcreteComponent.updateElement();
-              }
-              catch (Exception ex) {}
-            }
-          }
-          else
-          {
-            XSDConcreteComponent xsdConcreteComponent = (XSDConcreteComponent)concreteComp.eGet(eReference);
-            if (xsdConcreteComponent != null)
-            {
-              try
-              {
-                xsdConcreteComponent.updateElement();
-              }
-              catch (Exception ex) {}
-            }
-          }
-        }
-      }
-    }
-  }    
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/EnumerationsDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/EnumerationsDialog.java
deleted file mode 100644
index eba2c64..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/EnumerationsDialog.java
+++ /dev/null
@@ -1,106 +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.xsd.ui.internal.widgets;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-
-
-/**
- * Dialog to help define a list of enumerations
- * for a join. This might be replaced once we know how to
- * initiate a drag tracker
- */
-
-public class EnumerationsDialog extends org.eclipse.jface.dialogs.Dialog
-{
-  public EnumerationsDialog(Shell shell)
-  {
-    super(shell);
-  }
-
-  protected void configureShell(Shell shell)
-  {
-    super.configureShell(shell);
-    shell.setText(XSDEditorPlugin.getXSDString("_UI_ENUMERATIONS_DIALOG_TITLE"));
-  }
-
-  protected void buttonPressed(int buttonId)
-  {
-    if (buttonId == Dialog.OK)
-    {
-      text = textField.getText();
-      delimiter = delimiterField.getText();
-      isPreserve = preserveWhitespace.getSelection();
-    }
-    super.buttonPressed(buttonId);
-  }
-
-  private String text, delimiter;
-  private boolean isPreserve;
-  public String getText() { return text; }
-  public String getDelimiter() { return delimiter; }
-  public boolean isPreserveWhitespace() { return isPreserve; }
-
-  private Text textField;
-  private Button preserveWhitespace;
-  private Combo delimiterField;
-  //
-  // Create the controls
-  //
-  public Control createDialogArea(Composite parent)
-  {
-    Control[] tabOrder = new Control[3];
-  	int tabIndex = 0;
-    Composite client = (Composite)super.createDialogArea(parent);
-    GridLayout layout = (GridLayout)client.getLayout();
-    layout.numColumns = 2;
-    client.setLayout(layout); 
-
-    textField = ViewUtility.createWrappedMultiTextField(client, 400, 20, true);
-    GridData gd = (GridData) textField.getLayoutData();
-    gd.horizontalSpan = 2;
-    tabOrder[tabIndex++] = textField;
-
-    ViewUtility.createLabel(client, XSDEditorPlugin.getXSDString("_UI_LABEL_DELIMITER_CHAR"));
-    delimiterField = ViewUtility.createComboBox(client, false);
-    gd = (GridData) delimiterField.getLayoutData();
-    gd.grabExcessHorizontalSpace = false;
-    gd.horizontalAlignment = GridData.BEGINNING;
-    gd.widthHint = 30;
-    tabOrder[tabIndex++] = delimiterField;
-
-    // add default delimiters
-    delimiterField.add(":");
-    delimiterField.add(",");
-    delimiterField.add(" ");
-    // set the current one to be ','
-    delimiterField.setText(",");
-
-    preserveWhitespace = ViewUtility.createCheckBox(client, XSDEditorPlugin.getXSDString("_UI_LABEL_PRESERVE_WHITESPACE"));
-    gd = (GridData) preserveWhitespace.getLayoutData();
-    gd.horizontalSpan = 2;
-    tabOrder[tabIndex++] = preserveWhitespace;
-    
-    client.setTabList(tabOrder);
-
-    return client;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/SetBaseTypeDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/SetBaseTypeDialog.java
deleted file mode 100644
index d054648..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/SetBaseTypeDialog.java
+++ /dev/null
@@ -1,180 +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.xsd.ui.internal.widgets;
-
-import java.util.ArrayList;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDConstants;
-import org.w3c.dom.Element;
-
-
-
-public class SetBaseTypeDialog extends Dialog implements SelectionListener
-{
-  protected Combo baseTypeCombo;
-  protected Combo derivedByCombo;
-  protected XSDSchema xsdSchema;
-  protected Element element;  // the complex type element
-  private String type = "";
-  private String derivedByString = "";
-  
-  /**
-   * Constructor for SetBaseTypeDialog.
-   * @param arg0
-   */
-  public SetBaseTypeDialog(Shell arg0, XSDSchema xsdSchema, Element element)
-  {
-    super(arg0);
-    this.xsdSchema = xsdSchema;
-    this.element = element;
-  }
-
-  protected void configureShell(Shell shell)
-  {
-    super.configureShell(shell);
-    shell.setText(XSDEditorPlugin.getXSDString("_UI_LABEL_SET_BASE_TYPE"));
-  }
-
-
-  protected void buttonPressed(int buttonId)
-  {
-    if (buttonId == Dialog.OK)
-    {
-      type = baseTypeCombo.getText();
-      derivedByString = derivedByCombo.getText();
-    }
-    super.buttonPressed(buttonId);
-  }
-  
-  public String getBaseType()
-  {
-    return type;
-  }
-
-  public String getDerivedBy()
-  {
-    return derivedByString;
-  }
-  
-  public void setCurrentBaseType(String type)
-  {
-    this.type = type;
-  }
-  
-  public void setCurrentDerivedBy(String derivedByString)
-  {
-    this.derivedByString = derivedByString;
-  }
-
-  //
-  // Create the controls
-  //
-  public Control createDialogArea(Composite parent)
-  {
-    Composite nameComposite = (Composite)super.createDialogArea(parent);
-    GridLayout layout = (GridLayout)nameComposite.getLayout();
-    layout.numColumns = 2;
-    nameComposite.setLayout(layout); 
-
-    ViewUtility utility = new ViewUtility();
-
-    ViewUtility.createLabel(nameComposite, XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE_WITH_COLON"));
-    baseTypeCombo = ViewUtility.createComboBox(nameComposite, true); // readonly
-    baseTypeCombo.addSelectionListener(this);
-    
-    ViewUtility.createLabel(nameComposite, XSDEditorPlugin.getXSDString("_UI_LABEL_DERIVED_BY")); 
-    derivedByCombo = ViewUtility.createComboBox(nameComposite, true); // readonly
-
-    derivedByCombo.add(XSDConstants.EXTENSION_ELEMENT_TAG);
-    derivedByCombo.add(XSDConstants.RESTRICTION_ELEMENT_TAG);
-    derivedByCombo.setText(derivedByString);
-    initializeBaseTypeCombo();
-
-    if (type.equals(""))
-    {
-      derivedByCombo.setText("");
-      derivedByCombo.setEnabled(false);
-    }
-        
-    return nameComposite;
-  }
-
-  private void initializeBaseTypeCombo()
-  {
-    ArrayList list = new ArrayList();
-    TypesHelper helper = new TypesHelper(xsdSchema);
-
-    String prefix = helper.getPrefix(xsdSchema.getTargetNamespace(), true);
-
-    list.add("");
-    list.addAll(helper.getBuiltInTypeNamesList());
-    list.addAll(helper.getUserSimpleTypeNamesList());
-    list.addAll(helper.getUserComplexTypeNamesList());
-
-    // remove the current CT from the list
-    list.remove(prefix + element.getAttribute("name"));
-
-    baseTypeCombo.removeAll();
-    for (int i = 0; i < list.size(); i++)
-    {
-      baseTypeCombo.add(list.get(i).toString());
-    }
-    baseTypeCombo.setText(type);
-    handleBaseTypeComboChange();
-  }
-  
-  private void handleBaseTypeComboChange()
-  {
-    String tempChoice = baseTypeCombo.getText();
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    if (helper.getBuiltInTypeNamesList().contains(tempChoice) ||
-        helper.getUserSimpleTypeNamesList().contains(tempChoice))
-    {
-      derivedByCombo.setText(XSDConstants.EXTENSION_ELEMENT_TAG);
-      derivedByCombo.setEnabled(false);
-    }
-    else if (helper.getUserComplexTypeNamesList().contains(tempChoice))
-    {
-      derivedByCombo.setEnabled(true); 
-    }
-    else
-    {
-      derivedByCombo.setText("");
-      derivedByCombo.setEnabled(false); 
-    }
-  }
-
-  public void widgetSelected(SelectionEvent e)
-  {
-    if (e.widget == baseTypeCombo)
-    {
-      handleBaseTypeComboChange();
-    }
-    
-  }
-
-  public void widgetDefaultSelected(SelectionEvent e)
-  {
-    
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/TypeSection.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/TypeSection.java
deleted file mode 100644
index 6a111fb..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/TypeSection.java
+++ /dev/null
@@ -1,340 +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.xsd.ui.internal.widgets;
-
-import java.util.List;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorContextIds;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.TypesHelper;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.xsd.XSDSchema;
-
-public class TypeSection
-{
-  /**
-   * Constructor for TypeSection.
-   * @param parent
-   */
-  public TypeSection(Composite parent)
-  {
-  }
-
-  protected Button  simpleType;
-  protected Button  userSimpleType;
-  protected Button  userComplexType;
-  protected Button  noneRadio;
-  protected Combo   typeList;
-  protected Combo   derivedByCombo;
-  protected boolean showUserComplexType = true;
-  protected boolean showUserSimpleType  = true;
-  protected boolean showNone            = false;
-  protected boolean showDerivedBy       = false;
-  protected String  derivedByChoices[]  = { "restriction", "extension" };
-  public final int  NONE                = 1;
-  public final int  BUILT_IN            = 2;
-  public final int  SIMPLE              = 3;
-  public final int  COMPLEX             = 4;
-
-  String            sectionTitle        = XSDEditorPlugin.getXSDString("_UI_LABEL_TYPE_INFORMATION");
-  String            currentObjectUuid   = "";
-
-  /*
-   * @see FlatPageSection#createClient(Composite, WidgetFactory)
-   */
-  public Composite createClient(Composite parent)
-  {
-    //	FlatViewUtility utility = new FlatViewUtility(XSDEditor.isFlatLook());
-    ViewUtility utility = new ViewUtility();
-
-    // Composite client = utility.createComposite(parent, 1);
-    Composite client = new Composite(parent, SWT.NONE);
-    GridLayout gl = new GridLayout(1, true);
-    gl.verticalSpacing = 0;
-    client.setLayout(gl);
-
-    if (showNone)
-    {
-      noneRadio = ViewUtility.createRadioButton(client, XSDEditorPlugin.getXSDString("_UI_RADIO_NONE"));
-      WorkbenchHelp.setHelp(noneRadio, XSDEditorContextIds.XSDE_TYPE_HELPER_NONE);
-    }
-
-    simpleType = ViewUtility.createRadioButton(client, XSDEditorPlugin.getXSDString("_UI_RADIO_BUILT_IN_SIMPLE_TYPE"));
-    WorkbenchHelp.setHelp(simpleType, XSDEditorContextIds.XSDE_TYPE_HELPER_BUILT_IN);
-
-    if (showUserSimpleType)
-    {
-      userSimpleType = ViewUtility.createRadioButton(client, XSDEditorPlugin.getXSDString("_UI_RADIO_USER_DEFINED_SIMPLE_TYPE"));
-      WorkbenchHelp.setHelp(userSimpleType, XSDEditorContextIds.XSDE_TYPE_HELPER_USER_DEFINED_SIMPLE);
-    }
-
-    if (showUserComplexType)
-    {
-      userComplexType = ViewUtility.createRadioButton(client, XSDEditorPlugin.getXSDString("_UI_RADIO_USER_DEFINED_COMPLEX_TYPE"));
-      WorkbenchHelp.setHelp(userComplexType, XSDEditorContextIds.XSDE_TYPE_HELPER_USER_DEFINED_COMPLEX);
-    }
-
-    //	  typeList = utility.createComboBox(client);
-    //	  WorkbenchHelp.setHelp(typeList, XSDEditorContextIds.XSDE_TYPE_HELPER_TYPE);
-    //    utility.createHeadingLabel(client, "Type",null);
-
-    if (showDerivedBy)
-    {
-      Composite derivedByComposite = ViewUtility.createComposite(client, 2);
-      Label derivedByLabel = ViewUtility.createLabel(derivedByComposite, XSDEditorPlugin.getXSDString("_UI_LABEL_DERIVED_BY"));
-      derivedByCombo = ViewUtility.createComboBox(derivedByComposite);
-      populateDerivedByCombo();
-      WorkbenchHelp.setHelp(derivedByCombo, XSDEditorContextIds.XSDE_SIMPLE_CONTENT_DERIVED);
-      derivedByCombo.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_DERIVED_BY"));
-    }
-    // Set the default selection
-    if (showNone)
-    {
-      //		noneRadio.setSelection(true);
-      //		typeList.setEnabled(false);
-    }
-    else
-    {
-      simpleType.setSelection(true);
-    }
-    return client;
-  }
-
-  public void setIsDerivedBy(boolean derive)
-  {
-    if (derive)
-    {
-      sectionTitle = XSDEditorPlugin.getXSDString("_UI_LABEL_BASE_TYPE");
-    }
-    else
-    {
-      sectionTitle = XSDEditorPlugin.getXSDString("_UI_LABEL_TYPE_INFORMATION");
-    }
-    //	setHeaderText(sectionTitle);
-  }
-
-  /**
-   * Set to true if called by Complex Type & Simple Type
-   */
-  public void setShowDerivedBy(boolean derive)
-  {
-    showDerivedBy = derive;
-  }
-
-  /**
-   * Gets the derivedByField
-   * @return Returns a Button
-   */
-  public Combo getDerivedByCombo()
-  {
-    return derivedByCombo;
-  }
-
-  /**
-   * Gets the noneRadio.
-   * @return Returns a Button
-   */
-  public Button getNoneRadio()
-  {
-    return noneRadio;
-  }
-
-  /**
-   * Gets the simpleType.
-   * @return Returns a Button
-   */
-  public Button getSimpleType()
-  {
-    return simpleType;
-  }
-
-  /**
-   * Gets the userComplexType.
-   * @return Returns a Button
-   */
-  public Button getUserComplexType()
-  {
-    return userComplexType;
-  }
-
-  /**
-   * Gets the userSimpleType.
-   * @return Returns a Button
-   */
-  public Button getUserSimpleType()
-  {
-    return userSimpleType;
-  }
-
-  /**
-   * Gets the typeList.
-   * @return Returns a CCombo
-   */
-  public Combo getTypeList()
-  {
-    return typeList;
-  }
-
-  /**
-   * Populate combo box with built-in simple types
-   */
-  public void populateBuiltInType(XSDSchema xsdSchema)
-  {
-    getTypeList().removeAll();
-    List items = getBuiltInTypeNamesList(xsdSchema);
-    for (int i = 0; i < items.size(); i++)
-    {
-      getTypeList().add(items.get(i).toString());
-    }
-  }
-
-  public java.util.List getBuiltInTypeNamesList(XSDSchema xsdSchema)
-  {
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    return helper.getBuiltInTypeNamesList();
-  }
-
-  /**
-   * Populate combo box with user defined complex types
-   */
-  public void populateUserComplexType(XSDSchema xsdSchema, boolean showAnonymous)
-  {
-    getTypeList().removeAll();
-    if (showAnonymous)
-    {
-      getTypeList().add(XSDEditorPlugin.getXSDString("_UI_ANONYMOUS"));
-    }
-
-    List items = getUserComplexTypeNamesList(xsdSchema);
-    for (int i = 0; i < items.size(); i++)
-    {
-      getTypeList().add(items.get(i).toString());
-    }
-  }
-
-  public java.util.List getUserComplexTypeNamesList(XSDSchema xsdSchema)
-  {
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    return helper.getUserComplexTypeNamesList();
-  }
-
-  public void populateUserSimpleType(XSDSchema xsdSchema, boolean showAnonymous)
-  {
-    getTypeList().removeAll();
-    if (showAnonymous)
-    {
-      getTypeList().add(XSDEditorPlugin.getXSDString("_UI_ANONYMOUS"));
-    }
-    List items = getUserSimpleTypeNamesList(xsdSchema);
-    for (int i = 0; i < items.size(); i++)
-    {
-      getTypeList().add(items.get(i).toString());
-    }
-  }
-
-  /**
-   * Populate combo box with user defined simple types
-   */
-  public void populateUserSimpleType(XSDSchema xsdSchema)
-  {
-    getTypeList().removeAll();
-    List items = getUserSimpleTypeNamesList(xsdSchema);
-    for (int i = 0; i < items.size(); i++)
-    {
-      getTypeList().add(items.get(i).toString());
-    }
-  }
-
-  public java.util.List getUserSimpleTypeNamesList(XSDSchema xsdSchema)
-  {
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    return helper.getUserSimpleTypeNamesList();
-  }
-
-  public String getPrefix(String ns, XSDSchema xsdSchema)
-  {
-    TypesHelper helper = new TypesHelper(xsdSchema);
-    String key = helper.getPrefix(ns, true);
-    return key;
-  }
-
-  /**
-   * Populate combo box with derived by choices
-   */
-  protected void populateDerivedByCombo()
-  {
-    for (int i = 0; i < derivedByChoices.length; i++)
-    {
-      getDerivedByCombo().add(derivedByChoices[i]);
-    }
-  }
-
-  /**
-   * Gets the showUserComplexType.
-   * @return Returns a boolean
-   */
-  public boolean getShowUserComplexType()
-  {
-    return showUserComplexType;
-  }
-
-  /**
-   * Gets the showUserSimpleType.
-   * @return Returns a boolean
-   */
-  public boolean getShowUserSimpleType()
-  {
-    return showUserSimpleType;
-  }
-
-  /**
-   * Gets the showNone.
-   * @return Returns a boolean
-   */
-  public boolean getShowNone()
-  {
-    return showNone;
-  }
-
-  /**
-   * Sets the showUserComplexType.
-   * @param showUserComplexType The showUserComplexType to set
-   */
-  public void setShowUserComplexType(boolean showUserComplexType)
-  {
-    this.showUserComplexType = showUserComplexType;
-  }
-
-  /**
-   * Sets the showUserSimpleType.
-   * @param showUserSimpleType The showUserSimpleType to set
-   */
-  public void setShowUserSimpleType(boolean showUserSimpleType)
-  {
-    this.showUserSimpleType = showUserSimpleType;
-  }
-
-  /**
-   * Sets the showNone
-   * @param showUserSimpleType The showNone to set
-   */
-  public void setShowNone(boolean showNone)
-  {
-    this.showNone = showNone;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/XSDEditSchemaInfoDialog.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/XSDEditSchemaInfoDialog.java
deleted file mode 100644
index 77a8e57..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/widgets/XSDEditSchemaInfoDialog.java
+++ /dev/null
@@ -1,84 +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.xsd.ui.internal.widgets;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.xml.ui.dialogs.EditSchemaInfoDialog;
-import org.eclipse.wst.xml.ui.nsedit.CommonEditNamespacesTargetFieldDialog;
-
-public class XSDEditSchemaInfoDialog extends EditSchemaInfoDialog {
-	String targetNamespace;
-	CommonEditNamespacesTargetFieldDialog editNamespacesControl;
-	
-	public XSDEditSchemaInfoDialog(Shell parentShell, IPath resourceLocation, String targetNamespace) {
-		super(parentShell, resourceLocation);
-		this.targetNamespace = targetNamespace;
-	}
-/*
-	// in super
-	protected CommonEditNamespacesDialog createCommonEditNamespacesDialog(Composite dialogArea)
-	{
-	  return new CommonEditNamespacesDialog(dialogArea, resourceLocation, XMLUIPlugin.getResourceString("%_UI_NAMESPACE_DECLARATIONS"), false, true); //$NON-NLS-1$				
-	}
-	
-	// in super
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) super.createDialogArea(parent);
-		CommonEditNamespacesDialog editNamespacesControl = createCommonEditNamespacesDialog(dialogArea); 
-		editNamespacesControl.setNamespaceInfoList(namespaceInfoList);
-		editNamespacesControl.updateErrorMessage(namespaceInfoList);
-		return dialogArea;
-	}
-	
-	// in this
-	protected CommonEditNamespacesDialog createCommonEditNamespacesDialog(Composite dialogArea)
-	{
-	  return new CommonEditNamespacesTargetFieldDialog(dialogArea, resourceLocation); //$NON-NLS-1$				
-	}	*/
-	
-	// this is copy of ....
-    protected Control __internalCreateDialogArea(Composite parent) {
-        // create a composite with standard margins and spacing
-        Composite composite = new Composite(parent, SWT.NONE);
-        GridLayout layout = new GridLayout();
-        layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
-        layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
-        layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
-        layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
-        composite.setLayout(layout);
-        composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-        applyDialogFont(composite);
-        return composite;
-    }	
-	
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogArea = (Composite) __internalCreateDialogArea(parent);
-		editNamespacesControl = new CommonEditNamespacesTargetFieldDialog(dialogArea, resourceLocation); //$NON-NLS-1$
-		if (targetNamespace != null)
-		{	
-			editNamespacesControl.setTargetNamespace(targetNamespace);
-		}
-		editNamespacesControl.setNamespaceInfoList(namespaceInfoList);
-		editNamespacesControl.updateErrorMessage(namespaceInfoList);
-		return dialogArea;
-	}	
-	
-	public String getTargetNamespace() {
-		return editNamespacesControl.getTargetNamespace();
-	}
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/NewXSDWizard.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/NewXSDWizard.java
deleted file mode 100644
index fa8899d..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/NewXSDWizard.java
+++ /dev/null
@@ -1,168 +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.xsd.ui.internal.wizards;
-
-import java.io.ByteArrayInputStream;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.part.FileEditorInput;
-import org.eclipse.ui.part.ISetSelectionTarget;
-import org.eclipse.wst.sse.core.preferences.CommonModelPreferenceNames;
-import org.eclipse.wst.xml.core.internal.XMLCorePlugin;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-
-
-public class NewXSDWizard extends Wizard implements INewWizard
-{
-  private XSDNewFilePage newFilePage;
-  private IStructuredSelection selection;
-  private IWorkbench workbench;
-
-  public NewXSDWizard()
-  {   
-  }
-
-  public void init(IWorkbench aWorkbench, IStructuredSelection aSelection)
-  {
-    this.selection = aSelection;
-    this.workbench = aWorkbench;
-
-    this.setDefaultPageImageDescriptor(ImageDescriptor.createFromFile(XSDEditorPlugin.class, "icons/NewXSD.gif"));
-    this.setWindowTitle(XSDEditorPlugin.getXSDString("_UI_WIZARD_CREATE_XSD_MODEL_TITLE"));
-  }
-
-  public void addPages()
-  {
-    newFilePage = new XSDNewFilePage(selection);
-    addPage(newFilePage);
-  }
-
-  public boolean performFinish()
-  {
-    IFile file = newFilePage.createNewFile();
-    
-    //
-    // Get the xsd schema name from the full path name
-    //   e.g. f:/b2b/po.xsd => schema name = po
-    //
-    IPath iPath = file.getFullPath().removeFileExtension();
-    // String schemaName = iPath.lastSegment();
-    String schemaName = iPath.lastSegment();
-    String schemaPrefix = "tns";
-    String prefixForSchemaNamespace = "";
-    String schemaNamespaceAttribute = "xmlns";
-    if (XSDEditorPlugin.getPlugin().isQualifyXMLSchemaLanguage())
-    {
-      // Added this if check before disallowing blank prefixes in the preferences...
-      // Can take this out.  See also XSDEditor
-      if (XSDEditorPlugin.getPlugin().getXMLSchemaPrefix().trim().length() > 0)
-      {
-        prefixForSchemaNamespace = XSDEditorPlugin.getPlugin().getXMLSchemaPrefix() + ":";
-        schemaNamespaceAttribute += ":" + XSDEditorPlugin.getPlugin().getXMLSchemaPrefix();
-      }
-    }
-    
-    Preferences preference = XMLCorePlugin.getDefault().getPluginPreferences();
-	String charSet = preference.getString(CommonModelPreferenceNames.OUTPUT_CODESET);
-     if (charSet == null || charSet.trim().equals(""))
-    {
-    	charSet = "UTF-8";
-    }
-
-    String newContents = "<?xml version=\"1.0\" encoding=\"" + charSet + "\"?>\n";
-     
-    String defaultTargetURI = XSDEditorPlugin.getPlugin().getXMLSchemaTargetNamespace();
-    newContents += "<" + prefixForSchemaNamespace + "schema " + schemaNamespaceAttribute + "=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"" + defaultTargetURI + schemaName + "\" xmlns:" + schemaPrefix + "=\""+ defaultTargetURI + schemaName + "\">\n</"+prefixForSchemaNamespace+"schema>";
-
-    try
-    {
-      byte[] bytes = newContents.getBytes(charSet);
-      ByteArrayInputStream inputStream = new ByteArrayInputStream(bytes);
-      
-      file.setContents(inputStream,true,false,null);
-      inputStream.close();
-    }
-    catch (Exception e)
-    {
-//      XSDEditorPlugin.getPlugin().getMsgLogger().write("Error writing default content:\n" + newContents);      
-//      XSDEditorPlugin.getPlugin().getMsgLogger().write(e);
-    }
-
-    if (file != null)
-    {
-      revealSelection(new StructuredSelection(file));
-    }
-    
-    openEditor(file);
-
-    return true;
-  }
-
-  private void revealSelection(final ISelection selection)
-  {
-    if (selection != null)
-    {
-      IWorkbench workbench = XSDEditorPlugin.getPlugin().getWorkbench();
-      final IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
-      final IWorkbenchPart focusPart = workbenchWindow.getActivePage().getActivePart();
-      if (focusPart instanceof ISetSelectionTarget)
-      {
-        Display.getCurrent().asyncExec
-        (new Runnable()
-            {
-          public void run()
-          {
-            ((ISetSelectionTarget)focusPart).selectReveal(selection);
-          }
-        });
-      }
-    }
-  }
-
-  public void openEditor(final IFile iFile)
-  {
-    if (iFile != null)
-    {
-      IWorkbench workbench = XSDEditorPlugin.getPlugin().getWorkbench();
-      final IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
-
-      Display.getDefault().asyncExec
-      (new Runnable()
-          {
-        public void run()
-        {
-          try
-          {
-            IEditorPart editorPart = workbenchWindow.getActivePage().openEditor(new FileEditorInput(iFile), XSDEditorPlugin.XSD_EDITOR_ID);
-          }
-          catch (PartInitException ex)
-          {
-          }
-        }
-      });
-    }
-  }
-  
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexCompositionPage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexCompositionPage.java
deleted file mode 100644
index 75ea9ae..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexCompositionPage.java
+++ /dev/null
@@ -1,965 +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
- *******************************************************************************/
-// Based on version 1.12 of original xsdeditor
-package org.eclipse.wst.xsd.ui.internal.wizards;
-
-import java.util.regex.Pattern;
-import java.util.regex.PatternSyntaxException;
-
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.FocusListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.layout.RowLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorContextIds;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.xsd.XSDPatternFacet;
-
-
-
-/*
--other regex features (eg case sensitivity, ^ or $, |, etc etc)
--smarter model
--better keyboard navigation
--update list of tokens 
-*/
-
-public class RegexCompositionPage extends WizardPage
-{
-  private static final boolean debug = false;
-
-  /* The text representation of our pattern. */
-  private StyledText value; 
-
-  /* The StyleRange used to color code the current parse error. */
-  private StyleRange currentError;
-
-  /* The regex terms we can form tokens from. */
-  private Combo terms;
-
-  /* The checkbox for activating auto-escape mode. */  
-  private Button escapeCheckbox;
-  
-  /* On/off status of auto-escape mode. */ 
-  private boolean autoEscapeStatus;
-
-  /* The Add Token button. */
-  private Button add;
-
-
-  // The following controls are used in the occurrence selection group
-
-  private Text repeatValue;
-
-  private Text rangeMinValue;
-  private Text rangeMaxValue;
-  private Label rangeToLabel;  
-
-  private Button singleRadio;
-  private Button starRadio;
-  private Button plusRadio;
-  private Button optionalRadio; 
-  private Button repeatRadio;
-  private Button rangeRadio;
-
-  
-  // The following variables used as part of the model. 
-
-  /* Our pattern. */
-  private XSDPatternFacet pattern;
-
-  /* Model used to store the current token. */
-  private RegexNode node;    
-
-  /* Validator from the xerces regex package. */
-  //private RegularExpression validator;
-  private Pattern validator;
-
-  /* The flags passed to the new RegularExpression object.  Default value includes:
-      X = XMLSchema mode    */
-  private String regexFlags = "X";
-      
-
-  /* Is the current regex token valid? */
-  private boolean isValidToken;
-
-  /* The label used to indicate the value's caret position when it looses focus. */
-  private Label caretLabel;
-
-  /* The pixel offsets needed to align the label icon with the caret location.
-     These are dependent on the icon used. */
-  private static final int CARET_LABEL_X_OFFSET = -3;
-  private static final int CARET_LABEL_Y_OFFSET = 19;
-
-  
-  /* Enumerated constants for specifying the type of an error message. */
-  private static final int TOKEN = 0;
-  private static final int SELECTION = 1;
-  private static final int PARSE = 2;
-  
-  private static final int NUM_ERROR_MESSAGE_TYPES = 3;
-  
-  /* The current error message for each type of error.  A value of null indicates no message. 
-     The array is indexed according to the above constants.
-  */
-  private String[] currentErrorMessages;
-
-
-  public RegexCompositionPage(XSDPatternFacet pattern)
-  {
-    super(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_COMPOSITION_PAGE_TITLE"));
-    this.pattern = pattern;
-
-    setTitle(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_COMPOSITION_PAGE_TITLE"));
-    setDescription(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_COMPOSITION_PAGE_DESCRIPTION"));
-  }
-
-  public void createControl(Composite parent)
-  {
-    // Set up our model and validator
-    node = new RegexNode();
-    // validator = new RegularExpression("", regexFlags);
-        
-    isValidToken = true;
-
-    currentErrorMessages = new String[NUM_ERROR_MESSAGE_TYPES];
-
-    // The main composite
-    Composite composite= new Composite(parent, SWT.NONE);
-    WorkbenchHelp.setHelp(composite, XSDEditorContextIds.XSDR_COMPOSITION_PAGE);
-    composite.setLayout(new GridLayout());
-
-
-    // The composite for the token combo box, label, and auto-escape checkbox
-    Composite tokenComposite = new Composite (composite, SWT.NONE);
-    GridLayout tokenCompositeLayout = new GridLayout();
-    tokenCompositeLayout.numColumns = 3;
-    tokenCompositeLayout.marginWidth = 0;
-    tokenComposite.setLayout(tokenCompositeLayout);
-
-
-    new Label(tokenComposite, SWT.LEFT).setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TOKEN_LABEL"));
-    
-    terms = new Combo(tokenComposite, SWT.DROP_DOWN);
-    WorkbenchHelp.setHelp(terms, XSDEditorContextIds.XSDR_COMPOSITION_TOKEN);
-    for (int i = 0; i < RegexNode.getNumRegexTerms(); i++)
-    {
-      terms.add(RegexNode.getRegexTermText(i));
-    }
-    terms.addListener(SWT.Modify, new ComboListener());
-    terms.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_TERMS"));
-
-    escapeCheckbox = new Button(tokenComposite, SWT.CHECK);
-    escapeCheckbox.setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_AUTO_ESCAPE_CHECKBOX_LABEL"));
-    escapeCheckbox.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_AUTO_ESCAPE_CHECKBOX")); 
-    escapeCheckbox.addSelectionListener(new CheckboxListener());
-    autoEscapeStatus = false;
-    
-    tokenComposite.pack();
-
-
-    // Set up the composites pertaining to the selection of occurrence quantifiers
-
-    Group occurrenceSelectionArea = new Group(composite, SWT.NONE);
-    occurrenceSelectionArea.setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_OCCURENCE_LABEL"));
-    WorkbenchHelp.setHelp(occurrenceSelectionArea, XSDEditorContextIds.XSDR_COMPOSITION_OCCURRENCE_GROUP);
-    GridLayout selectionAreaLayout = new GridLayout();
-    selectionAreaLayout.numColumns = 2;
-    occurrenceSelectionArea.setLayout(selectionAreaLayout);
-
-    // Listener used for all of the text fields
-    TextListener textListener = new TextListener();
-    
-
-    // Add the radio buttons
-    RadioSelectListener radioSelectListener = new RadioSelectListener();
-
-    singleRadio = addOccurenceRadioButton(RegexNode.SINGLE, occurrenceSelectionArea, radioSelectListener);
-    WorkbenchHelp.setHelp(singleRadio, XSDEditorContextIds.XSDR_COMPOSITION_JUST_ONCE);
-    ViewUtility.createHorizontalFiller(occurrenceSelectionArea, 1);
-
-    starRadio = addOccurenceRadioButton(RegexNode.STAR, occurrenceSelectionArea, radioSelectListener);
-    WorkbenchHelp.setHelp(starRadio, XSDEditorContextIds.XSDR_COMPOSITION_ZERO_OR_MORE);
-    ViewUtility.createHorizontalFiller(occurrenceSelectionArea, 1);
-
-    plusRadio = addOccurenceRadioButton(RegexNode.PLUS, occurrenceSelectionArea, radioSelectListener);
-    WorkbenchHelp.setHelp(plusRadio, XSDEditorContextIds.XSDR_COMPOSITION_ONE_OR_MORE);
-    ViewUtility.createHorizontalFiller(occurrenceSelectionArea, 1);
-
-    optionalRadio = addOccurenceRadioButton(RegexNode.OPTIONAL, occurrenceSelectionArea, radioSelectListener);
-    WorkbenchHelp.setHelp(optionalRadio, XSDEditorContextIds.XSDR_COMPOSITION_OPTIONAL);
-    ViewUtility.createHorizontalFiller(occurrenceSelectionArea, 1);
-
-    repeatRadio = addOccurenceRadioButton(RegexNode.REPEAT, occurrenceSelectionArea, radioSelectListener);
-    WorkbenchHelp.setHelp(repeatRadio, XSDEditorContextIds.XSDR_COMPOSITION_REPEAT);
-
-    // Add text field for specifying number of repeats
-    Composite repeatWidgets = new Composite(occurrenceSelectionArea, SWT.NONE);
-    RowLayout repeatWidgetsLayout = new RowLayout();
-    repeatWidgetsLayout.marginTop = 0;
-    repeatWidgetsLayout.marginBottom = 0;
-    repeatWidgetsLayout.marginLeft = 0;
-    repeatWidgetsLayout.marginRight = 0;
-    repeatWidgets.setLayout(repeatWidgetsLayout);        
-    
-    repeatValue = new Text(repeatWidgets, SWT.SINGLE | SWT.BORDER);
-    repeatValue.addListener(SWT.Modify, textListener);
-    WorkbenchHelp.setHelp(repeatValue, XSDEditorContextIds.XSDR_COMPOSITION_REPEAT_TEXT);
-    repeatValue.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_REPEAT"));
-    setEnabledStatus(RegexNode.REPEAT, false);
-    
-    repeatWidgets.pack();
-    
-    rangeRadio = addOccurenceRadioButton(RegexNode.RANGE, occurrenceSelectionArea, radioSelectListener);
-    WorkbenchHelp.setHelp(rangeRadio, XSDEditorContextIds.XSDR_COMPOSITION_RANGE);
-
-    // Add text fields and labels for specifying the range    
-    Composite rangeWidgets = new Composite(occurrenceSelectionArea, SWT.NONE);
-    RowLayout rangeWidgetsLayout = new RowLayout();
-    rangeWidgetsLayout.marginTop = 0;
-    rangeWidgetsLayout.marginBottom = 0;
-    rangeWidgetsLayout.marginLeft = 0;
-    rangeWidgetsLayout.marginRight = 0;
-    rangeWidgets.setLayout(rangeWidgetsLayout);
-    
-    rangeMinValue = new Text(rangeWidgets, SWT.SINGLE | SWT.BORDER);
-    rangeMinValue.addListener(SWT.Modify, textListener);
-    WorkbenchHelp.setHelp(rangeMinValue, XSDEditorContextIds.XSDR_COMPOSITION_RANGE_MIN);
-    rangeMinValue.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_MIN"));
-    
-    rangeToLabel = new Label(rangeWidgets, SWT.NONE);
-    rangeToLabel.setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TO_LABEL"));
-    
-    rangeMaxValue = new Text(rangeWidgets, SWT.SINGLE | SWT.BORDER);
-    rangeMaxValue.addListener(SWT.Modify, textListener);
-    rangeMaxValue.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_MAX"));
-    WorkbenchHelp.setHelp(rangeMaxValue, XSDEditorContextIds.XSDR_COMPOSITION_RANGE_MAX);
-
-    setEnabledStatus(RegexNode.RANGE, false);
-    rangeWidgets.pack();
-    
-    singleRadio.setSelection(true);
-    
-    occurrenceSelectionArea.pack();
-
-    // The add button
-    add = new Button(composite, SWT.PUSH);
-    add.addSelectionListener(new ButtonSelectListener());
-    add.setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_ADD_BUTTON_LABEL"));
-    WorkbenchHelp.setHelp(add, XSDEditorContextIds.XSDR_COMPOSITION_ADD);
-    add.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_ADD_BUTTON"));
-
-    
-    Label separator = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL);
-    separator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-    
-    // Our main text box
-
-    Label valueLabel= new Label(composite, SWT.LEFT);
-    valueLabel.setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_CURRENT_REGEX_LABEL"));
-    
-    value = new StyledText(composite, SWT.SINGLE | SWT.BORDER);
-    value.addListener(SWT.Modify, textListener);
-    value.addListener(SWT.Selection, textListener);
-    WorkbenchHelp.setHelp(value, XSDEditorContextIds.XSDR_COMPOSITION_CURRENT);
-    value.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_CURRENT_REGEX"));
-    value.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-    value.setFocus();
-
-    // StyleRange used for highlighting parse errors
-    currentError = new StyleRange();
-    currentError.length = 1;
-    currentError.foreground = parent.getDisplay().getSystemColor(SWT.COLOR_RED);
-
-    // The caret label
-    caretLabel = new Label(composite, SWT.LEFT);
-    caretLabel.setImage(XSDEditorPlugin.getXSDImage("icons/RegexWizardArrow.gif"));
-    caretLabel.setToolTipText(XSDEditorPlugin.getXSDString("_UI_TOOLTIP_REGEX_WIZARD_CARET_LABEL"));
-    setShowCaretLabel(true);
-
-    value.addFocusListener(new TextFocusListener());
-
-    terms.select(0);
-
-
-    setControl(composite);
-  }
-
-
-  public void setVisible(boolean visible)
-  {
-    super.setVisible(visible);
-
-    value.setText(pattern.getLexicalValue());
-    value.setCaretOffset(value.getCharCount());
-  }
-
-  public void dispose()
-  {
-    super.dispose();
-  }
-
-
-  /**
-   * Sets the visible status of caretLabel to status.  If status is true, then we also update the position
-   * of caretLabel in one of two ways.  If there is no active selection in value, we set caretLabel's
-   * position to correspond with the position of the actual caret.  Alternatively, if there is an active selection
-   * in value, we set caretLabel's position to the beginning of the selection.
-   *
-   * @param The new visibility status of caretLabel.
-   */
-  private void setShowCaretLabel(boolean status)
-  {
-    if (status)
-    {
-  
-      int offset;
-      
-      if (value.getSelectionText().equals(""))
-      {
-        offset = value.getCaretOffset();
-      }
-      else
-      {
-        offset = value.getSelection().x;
-      }
-  
-      Point p = value.getLocationAtOffset(offset);
-      
-      p.x += value.getLocation().x;
-      p.y = value.getLocation().y;
-      
-      // Place the label under value, and make sure it is aligned with the caret.
-      // The offsets are dependent on the icon used.
-      p.x += CARET_LABEL_X_OFFSET;
-      p.y += CARET_LABEL_Y_OFFSET;
-  
-      if (debug)
-      {
-        System.out.println("POINT: " + p);
-      }
-      
-      caretLabel.setLocation(p);
-      caretLabel.setVisible(true);
-    }
-    else
-    {
-      caretLabel.setVisible(false);
-    }
-  }
-
-
-  /**
-   * Adds a new radio button to Composite c with SelectionListener l.  The text of the button is the String associated with
-   * quantifier.
-   *
-   * @param quantifier The desired quantifier, as enumerated in RegexNode.
-   * @param c The Composite to add the buttons to (normally occurrenceRadioButtons).
-   * @param l The SelectionListener (normally radioSelectionListener).
-   * @return The newly created button.
-   */
-  private Button addOccurenceRadioButton(int quantifier, Composite c, SelectionListener l)
-  {
-    Button result = new Button(c, SWT.RADIO);
-    result.setText(RegexNode.getQuantifierText(quantifier));
-    result.addSelectionListener(l);
-    return result;
-  }
-
-
-  /**
-   * Validates the regex in value.  If the regex is valid, clears the Wizard's error message.  If it's not valid,
-   *  sets the Wizard's error message accordingly.
-   *
-   * @return Whether the regex is valid.
-   */
-  private boolean validateRegex()
-  {
-
-    boolean isValid;
-    try
-    {
-      // We validate the regex by checking whether we get a ParseException.
-      // By default, we assume that it's valid unless we determine otherwise.
-      isValid = true;
-      displayRegexErrorMessage(null);
-      value.setStyleRange(null);
-
-      // validator.setPattern(value.getText());
-      validator = Pattern.compile(value.getText());
-    }
-    // catch (ParseException pe)
-    catch (PatternSyntaxException pe)
-    {
-      isValid = false;
-      displayRegexErrorMessage(pe.getMessage());
-
-      // An off-by-one bug in the xerces regex parser will sometimes return a location for the parseError that
-      //  is off the end of the string.  If this is the case, then we want to highlight the last character.
-      if (pe.getIndex() >= value.getText().length())
-      {
-        currentError.start = value.getText().length() - 1;
-      }
-      else
-      {
-        currentError.start = pe.getIndex();
-      }
-
-      if (debug)
-      {
-        System.out.println("Parse Error location: " + pe.getIndex());
-        System.out.println("currentError.start: " + currentError.start);
-      }
-
-      value.setStyleRange(currentError);
-
-    }
-
-    // Another bug in the xerces parser will sometimes throw a RuntimeException instead of a ParseException.
-    //  When we get a RuntimeException, we aren't provided with the additional information we need to highlight
-    //  the parse error.  So, we merely report that there is an error.
-    catch (RuntimeException re)
-    {
-      displayRegexErrorMessage("");
-      value.setStyleRange(null);
-      isValid = false;
-    }
-    
-    setPageComplete(isValid);    
-    return isValid;
-  }
-
-  
-  /**
-   * Manages the display of error messages.
-   * Sets the error message for type to errorMessage.  If errorMessage != null, then we set the Wizard's error message
-   * to errorMessage.  If errorMessage == null, then we check whether we have a pending message of another type.
-   * If we do, then it is displayed as the Wizard's error message.  If we don't, then the Wizard's error message field
-   * is cleared.
-   *
-   * @param errorMessage The text of the new error message.  A value of null indicates that the error message should
-   *  be cleared.
-   * @param type The error type, one of PARSE, TOKEN, or SELECTION.
-   */ 
-  private void displayErrorMessage(String errorMessage, int type)
-  {
-    String messageToDisplay = null;
-
-
-    currentErrorMessages[type] = errorMessage;
-
-    messageToDisplay = errorMessage;
-
-    for (int i = 0; i < NUM_ERROR_MESSAGE_TYPES; i++)
-    {
-      if (messageToDisplay != null)
-      {
-        break;
-      }
-      messageToDisplay = currentErrorMessages[i];
-    }
-
-    setErrorMessage(messageToDisplay);
-  }
-
-
-  /**
-   * Sets the Wizard's error message to message, preceded by a standard prefix.
-   *
-   * @param message The new error message (or null to clear it).
-   */
-  private void displayRegexErrorMessage (String errorMessage)
-  {
-    if (errorMessage == null)
-    {
-      displayErrorMessage(null, PARSE);
-    }
-    else
-    {
-    	if (errorMessage.trim().equals("")) // when there is no error message available.
-    	{
-        displayErrorMessage(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_REGEX_ERROR"),
-                           PARSE);
-      }
-      else
-      {
-        displayErrorMessage(errorMessage, PARSE);
-      }
-    }
-  }
-
-
-  /**
-   * Updates the token status.  Sets isValidToken to status && the status of the other error type.
-   * If status is true, we clear the wizard's error message for this type; if it is false, we set it to errorMessage.
-   *
-   * @param status The new isValidToken value.
-   * @param errorMessage The new error message.
-   * @param type The type of the error (either TOKEN or SELECTION).
-   */
-  private void setTokenStatus (boolean status, String errorMessage, int type)
-  {
-    boolean otherTypeStatus =     (type == TOKEN) ? 
-                                  currentErrorMessages[SELECTION] == null :
-                                  currentErrorMessages[TOKEN] == null;
-    
-    isValidToken = status && otherTypeStatus;
-    add.setEnabled(isValidToken);
-
-    if (status)
-    {
-      displayErrorMessage(null, type);
-    }
-    else
-    {
-    	if (errorMessage != null && errorMessage.trim().equals("")) // when there is no error message available.
-    	{
-        displayErrorMessage(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_TOKEN_ERROR"),
-                           type);
-      }
-      else
-      {
-        displayErrorMessage(errorMessage, type);
-      }
-    }
-  }
-
-  
-  /**
-   * Updates the token status.  Sets isValidToken to status && the status of the other error type.
-   * Also clears the wizard's error message for this type.
-   * Usually used to set isValidToken to true.
-   *
-   * @param status The new isValidToken value.
-   * @param type The type of the error (either TOKEN or SELECTION).
-   */
-  private void setTokenStatus(boolean status, int type)
-  {
-    setTokenStatus(status, null, type);
-  }
-
-
-
-  /**
-   * Sets the enabled status of the text fields and labels associated with the specified quantifier.
-   * If status is true, then fields and labels associated with other quantifiers are disabled.
-   * @param quantifier The quantifier whose elements' enabled status we wish to change
-   *   (as enumerated in RegexNode).
-   * @param status The new status of the elements.  If true, then all elements associated with other buttons
-   *               are disabled.
-   */    
-  private void setEnabledStatus(int quantifier, boolean status)
-  {
-    switch (quantifier)
-    {
-    
-    case RegexNode.REPEAT:
-      repeatValue.setEnabled(status);
-      if (status)
-      {
-        rangeMinValue.setEnabled(false);
-        rangeMaxValue.setEnabled(false);
-        rangeToLabel.setEnabled(false);
-      }
-      break;
-
-    case RegexNode.RANGE:
-      rangeMinValue.setEnabled(status);
-      rangeMaxValue.setEnabled(status);
-      rangeToLabel.setEnabled(status);
-      if (status)
-      {
-        repeatValue.setEnabled(false);
-      }
-      break;
-
-    }
-  }
-
-  /**
-   * Checks to see if there is a selection in value.  If there is not, we set the Wizard's error message accordingly.
-   * If there is, we update the contents of node.  If "Current Selection" is not the current token, then
-   * we clear the Selection error message.
-   */
-  private void updateCurrentSelectionStatus()
-  {
-    if (terms.getSelectionIndex() == RegexNode.SELECTION)
-    {
-      String selection = value.getSelectionText();
-      if (selection.equals(""))
-      {
-        setTokenStatus(false, XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_SELECTION_ERROR"), SELECTION);
-      }
-      else
-      {
-        setTokenStatus(true, SELECTION);
-        node.setContents(selection);
-        node.setHasParens(true);
-      }
-    }
-    else
-    {
-      setTokenStatus(true, SELECTION);
-    }
-  }
-
-  /**
-   * Updates the enabled status of the auto-escape checkbox.  If status is true, we enable the checkbox, and
-   * set its selection status and node's auto-escape status to the value of autoEscapeStatus.  If status is
-   * false, then we disable and deselect the checkbox, and set node's status to false.
-   *
-   * @param status The new enabled status.
-   */
-  private void setEscapeCheckboxEnabledStatus(boolean status)
-  {
-    if (status)
-    {
-      escapeCheckbox.setEnabled(true);
-      escapeCheckbox.setSelection(autoEscapeStatus);
-      node.setAutoEscapeStatus(autoEscapeStatus);
-    }
-    else
-    {
-      escapeCheckbox.setEnabled(false);
-      escapeCheckbox.setSelection(false);
-      node.setAutoEscapeStatus(false);
-    }
-  }
-
-
-  /**
-   * Returns the current regex flags.
-   */
-  String getFlags()
-  {
-    return regexFlags;
-  }
-
-  /**
-   * Returns the current XSDPattern model.
-   */
-  XSDPatternFacet getPattern()
-  {
-    return pattern;
-  }
-
-
-  /**
-   * Returns a string consisting of the values of min, max, and repeat stored in node.
-   * Used for debugging purposes only.
-   */  
-  private String getAllFieldValues()
-  {
-      String result = "";
-      result += "Min: " + node.getMin() + "\n";
-      result += "Max: " + node.getMax() + "\n";
-      result += "Repeat: " + node.getRepeat() + "\n";
-      result += "\n";
-      return result;
-  }
-  
-
-  /* Listener for the add button. */
-  class ButtonSelectListener implements SelectionListener
-  {
-    public void widgetDefaultSelected(SelectionEvent e)
-    {
-    }
-
-    // Precondition: isValidToken == true  
-    public void widgetSelected(SelectionEvent e)
-    {
-      if (!isValidToken) // should never happen
-      {
-        System.out.println("Attempted to add an invalid token.");
-        System.out.println(node.toString());
-        System.out.println(getAllFieldValues());
-        return;
-      }
-
-      // Whether there is anything selected in value.
-      boolean isActiveSelection = value.getSelectionCount() != 0;
-      
-      value.insert(node.toString());
-
-      if (terms.getSelectionIndex() == RegexNode.SELECTION)
-      {
-        updateCurrentSelectionStatus();
-      }
-
-      // If nothing is selected, then we need to advance the caret location.
-      if (!isActiveSelection)
-      {
-        value.setCaretOffset(value.getCaretOffset() + node.toString().length());
-      }
-
-      value.setFocus();
-
-    }
-
-  }
- 
-
-  /* Listener for the terms combo box. */
-  class ComboListener implements Listener
-  {
-    public void handleEvent(Event e)
-    {
-      
-      updateCurrentSelectionStatus();
-
-      // If the user has typed in a token
-      if (terms.getSelectionIndex() == -1)
-      {
-        setEscapeCheckboxEnabledStatus(true);
-        node.setContents(terms.getText());
-        node.setHasParens(true);
-        
-
-        if (debug)
-        {
-          System.out.println(terms.getText());
-        }
-
-      }
-      else if (terms.getSelectionIndex() == RegexNode.SELECTION)
-      {
-        setEscapeCheckboxEnabledStatus(false);
-      }
-      else
-      {
-        node.setContents(RegexNode.getRegexTermValue(terms.getSelectionIndex()));
-        node.setHasParens(false);
-        setEscapeCheckboxEnabledStatus(false);
-      }
-    }
-  }
-
-
-  /* Listener for enabling/disabling caretLabel. */
-  class TextFocusListener implements FocusListener
-  {
-    public void focusGained(FocusEvent e)
-    {
-      setShowCaretLabel(false);
-    }
-    public void focusLost(FocusEvent e)
-    {
-      setShowCaretLabel(true);
-    }
-  }
-
-
-
-  /* Listener for the text fields. */
-  class TextListener implements Listener
-  {
-    public void handleEvent (Event e)
-    {
-
-      if (debug)
-      {
-        System.out.println("Inside TextListener handler");
-        System.out.println(e);
-        System.out.println(getAllFieldValues());
-      }
-
-
-      if ( (e.widget == value) && (e.type == SWT.Modify) )
-      {
-        pattern.setLexicalValue(value.getText());
-        validateRegex();
-      }
-
-      else if (e.widget == value && e.type == SWT.Selection)
-      {
-        if (terms.getSelectionIndex() == RegexNode.SELECTION)
-        {
-          updateCurrentSelectionStatus();
-        }
-      }
-
-      else if (e.widget == rangeMinValue)
-      {
-        boolean isValid = node.setMin(rangeMinValue.getText());
-
-        if (isValid)
-        {
-          setTokenStatus(true, null, TOKEN);
-        }
-        else
-        {
-          setTokenStatus(false,  XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_MIN_ERROR_SUFFIX"), TOKEN);
-        }
-      }
-
-      else if (e.widget == rangeMaxValue)
-      {
-        boolean isValid = node.setMax(rangeMaxValue.getText());
-
-        if (node.getMin() == RegexNode.EMPTY)
-        {
-          setTokenStatus(false, XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_MISSING_MIN_ERROR_SUFFIX"), TOKEN);
-        }
-        else if (isValid)
-        {
-          setTokenStatus(true, null, TOKEN);
-        }
-        else
-        {
-          setTokenStatus(false, XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_MAX_ERROR_SUFFIX"), TOKEN);
-        }
-      }
-
-      else  // (e.widget == repeatValue)
-      {
-        boolean isValid = node.setRepeat(repeatValue.getText());
-        if (isValid)
-        {
-          setTokenStatus(true, null, TOKEN);
-        }
-        else
-        {
-          setTokenStatus(false, XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_REPEAT_ERROR_SUFFIX"), TOKEN);
-        }
-      }
-    }
-  }
-
-  /* Listener for the auto-escape checkbox. */
-  class CheckboxListener implements SelectionListener
-  {
-    public void widgetDefaultSelected(SelectionEvent e)
-    {
-    }
-
-    public void widgetSelected(SelectionEvent e)
-    {
-      boolean newStatus = !autoEscapeStatus;
-      node.setAutoEscapeStatus(newStatus);
-      autoEscapeStatus = newStatus;
-      
-      if (debug)
-      {
-        System.out.println("AutoEscape Status: " + node.getAutoEscapeStatus());
-      }
-    }
-
-  }
-
-
-  /* Listener for the radio buttons. */
-  class RadioSelectListener implements SelectionListener
-  {
-    public void widgetDefaultSelected(SelectionEvent e)
-    {
-    }
-
-    public void widgetSelected(SelectionEvent e)
-    {
-      if (debug)
-      {
-        System.out.println(getAllFieldValues());
-      }
-
-
-      int currentQuantifier = getQuantifier(e);
-
-      node.setQuantifier(currentQuantifier);
-
-      switch (currentQuantifier)
-      {
-      case RegexNode.SINGLE:                     
-      case RegexNode.STAR:
-      case RegexNode.PLUS:
-      case RegexNode.OPTIONAL:
-        setEnabledStatus(RegexNode.REPEAT, false);
-        setEnabledStatus(RegexNode.RANGE, false);
-        setTokenStatus(true, TOKEN);
-        break; 
-
-      case RegexNode.REPEAT:
-        setEnabledStatus(RegexNode.REPEAT, true);
-        setTokenStatus(node.hasValidRepeat(), XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_REPEAT_ERROR_SUFFIX"), TOKEN);
-        repeatValue.setFocus();
-        break;
-
-      case RegexNode.RANGE:
-        setEnabledStatus(RegexNode.RANGE, true);
-        String error = (node.hasValidMin()) ? 
-                            XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_MAX_ERROR_SUFFIX") : 
-                            XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_INVALID_MIN_ERROR_SUFFIX");
-
-        setTokenStatus( node.hasValidMin() && node.hasValidMax(), error, TOKEN);
-        rangeMinValue.setFocus();
-        break;
-      }
-    }
-
-    private int getQuantifier(SelectionEvent e)
-    {
-
-      if (e.widget == singleRadio)
-      {
-        return RegexNode.SINGLE;
-      }
-      
-      else if (e.widget == starRadio)
-      {
-        return RegexNode.STAR;
-      }
-      
-      else if (e.widget == plusRadio)
-      {
-        return RegexNode.PLUS;
-      }
-      
-      else if (e.widget == optionalRadio)
-      {
-        return RegexNode.OPTIONAL;
-      }
-      
-      else if (e.widget == repeatRadio)
-      {
-        return RegexNode.REPEAT;
-      }
-      
-      else if (e.widget == rangeRadio)
-      {
-        return RegexNode.RANGE;
-      }
-      
-      else // can't get here
-      { 
-        return RegexNode.EMPTY;
-      }
-    } 
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexNode.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexNode.java
deleted file mode 100644
index 2844709..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexNode.java
+++ /dev/null
@@ -1,421 +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.xsd.ui.internal.wizards;
-
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-
-
-class RegexNode
-{
-  private String contents;
-  private int min;
-  private int max;
-  private int repeat;
-  private int quantifier;
-  private boolean hasParens;
-  private boolean autoEscapeStatus;
-
-  
-  /* Quantifiers. */
-  public static final int SINGLE = 0;    
-  public static final int STAR = 1;
-  public static final int PLUS = 2;
-  public static final int OPTIONAL = 3;
-  public static final int REPEAT = 4; 
-  public static final int RANGE = 5;
-
-  /* Regex quantifiers.  First column is the on-screen textual representation, second column is the 
-   on-screen regex representation.  The two are concatenated together to form the on-screen
-   representation.
-   Indexing of this array must correspond to the values of the quantifier constants above.
-  */
-  private static final String[][] regexQuantifiers =
-  { 
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_QUANTIFIER_SINGLE"),   ""  },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_QUANTIFIER_STAR"),     "*" },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_QUANTIFIER_PLUS"),     "+" },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_QUANTIFIER_OPTIONAL"), "?" },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_QUANTIFIER_REPEAT"),   ""  },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_QUANTIFIER_RANGE"),    ""  },
-  };
-
-
-  /* Regex tokens.  First column is the on-screen representation, second column is the regex representation. 
-     More tokens can be added, but it is assumed that "Current Selection" is the last element in the array.
-     If this is not the case, then the value of the SELECTION constant below will need to be changed 
-     accordingly.
-     Also note that because these are java Strings, backslashes must be escaped (this is only relevant to the
-     second column of the array).
-   */
-  private static final String[][] regexTerms =
-  { 
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TERM_ANY_CHAR"),   "."     },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TERM_ALPHANUMERIC_CHAR"),   "\\w"     },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TERM_WHITESPACE"), "\\s"   },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TERM_DIGIT"),      "\\d"   },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TERM_UPPER"),      "[A-Z]" },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TERM_LOWER"),      "[a-z]" },
-    { XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TERM_SELECTION"),  ""      },
-  };
-
-  /* Token enumerated constants. */
-
-  // SELECTION must correspond to the index in regexTerms of "Current Selection".  This is assumed to be
-  //  the last element.
-  public static final int SELECTION = regexTerms.length - 1;
-
-  public static final int EMPTY = -1;
-
-  /* 
-  The metacharacters recognized by XML Schema.
-  Note that the double backslash ("\\") actually represents an escaped single backslash character ("\").
-  */ 
-  private static final String metacharacters = ".\\?*+{}()[]";
-
-
-  public static String getRegexTermText(int i)
-  {
-    if (i == SELECTION)
-    {
-      return regexTerms[i][0];
-    }
-    else
-    {
-      return regexTerms[i][0] + " ( " + regexTerms[i][1] + " )";
-    }
-  }
-
-  public static String getRegexTermValue(int i)
-  {
-    if (i == SELECTION) // shouldn't happen
-    {
-      return "";
-    }
-    else
-    {
-      return regexTerms[i][1];
-    }
-  }
-
-  public static int getNumRegexTerms()
-  {
-    return regexTerms.length;
-  }
-
-  public static String getQuantifierText(int i)
-  {
-    String result = regexQuantifiers[i][0];
-    
-    if (!regexQuantifiers[i][1].equals(""))
-    {
-      result += " ( ";
-      result += regexQuantifiers[i][1];
-      result += " )";
-    }
-
-    return result;
-  }
-
-  public RegexNode()
-  {
-    this.contents = "";
-    this.quantifier = SINGLE;
-    this.min = EMPTY;
-    this.max = EMPTY;
-    this.repeat = EMPTY;
-    this.hasParens = false;
-
-  }
-
-  
-  public String getContents()
-  {
-    return contents;
-  }
-  
-  public void setContents(String contents)
-  {
-    this.contents = contents;
-  }
-
-
-  public int getQuantifier()
-  {
-    return quantifier;
-  }
-
-  public void setQuantifier(int quantifier)
-  {
-    this.quantifier = quantifier;
-  }
-
-
-  public int getMin()
-  {
-    return min;
-  }
-
-  public void setMin(int min)
-  {
-    this.min = min;
-  }
-
-  /**
-   * Sets this.min to the integer representation of min iff min is a valid value (i.e. greater than 0).
-   * Sets this.min to EMPTY if it is not.
-   *
-   * @param min The new min value
-   * @returns Whether min was a valid value
-   */  
-  public boolean setMin(String min)
-  {
-    this.min = convertToInt(min);
-
-    // min > max is an invalid case, unless max is EMPTY (since EMPTY == -1).
-    if ( (this.max != EMPTY) && (this.min > this.max) )
-    {
-      return false;
-    }
-    
-    return (this.min >= 0);
-  }
-
-  
-  public int getMax()
-  {
-    return max;
-  }
-  
-  public void setMax(int max)
-  {
-    this.max = max;
-  }
-
-  /**
-   * Sets this.max to the integer representation of max iff max is a valid value (i.e. greater than 0).
-   * Sets this.max to EMPTY if it is not.
-   *
-   * @param max The new max value
-   * @returns Whether max was a valid value, or (whether max == the empty string && min has a valid value)
-   */ 
-  public boolean setMax(String max)
-  {
-    this.max = convertToInt(max);
-
-    // The empty string is a valid max value iff min has a valid value.
-    // This is due to the fact that {n,} means "at least n times" in regex parlance.
-    if (max.equals("") && this.min != EMPTY)
-    {
-      return true;
-    }
-    
-    else if (this.max < this.min)
-    {
-      return false;
-    }
-    
-    else
-    {
-      return (this.max >= 0);
-    }
-  }
-
-
- 
-  public int getRepeat()
-  {
-    return repeat;
-  }
-
-  public void setRepeat(int repeat)
-  {
-    this.repeat = repeat;
-  }
-
-  /**
-   * Sets this.repeat to the integer representation of repeat iff repeat is a valid value (i.e. greater than 0).
-   * Sets this.repeat to EMPTY if it is not.
-   *
-   * @param repeat The new repeat value
-   * @returns Whether repeat was a valid value
-   */
-  public boolean setRepeat(String repeat)
-  {
-    this.repeat = convertToInt(repeat);
-    return (this.repeat >= 0);
-  }
-
-
-
-  /**
-   * Returns the integer representation of s.  If s is less than zero, or if s is not an int
-   * (i.e. if Integer.parseInt would throw a NumberFormatException), then returns EMPTY.
-   *
-   * @param s The String to convert.
-   * @returns The integer representation of s.
-   */
-  private int convertToInt(String s)
-  {
-    int result;
-    try
-    {
-      result = Integer.parseInt(s);
-      if (result < 0)
-      {
-        result = EMPTY;
-      }
-    }
-    catch (NumberFormatException e)
-    {
-      result = EMPTY;
-    }
-
-    return result;
-  }
-
-
-  public boolean getHasParens()
-  {
-    return hasParens;
-  }
-
-  public void setHasParens(boolean status)
-  {
-    this.hasParens = status;
-  }
-
-  public boolean getAutoEscapeStatus()
-  {
-    return autoEscapeStatus;
-  }
-
-  public void setAutoEscapeStatus(boolean status)
-  {
-    this.autoEscapeStatus = status;
-  }
-
-  /**
-   * Returns an escaped version of s.  In other words, each occurrence of a metacharacter ( .\?*+{}()[] )
-   * is replaced by that character preceded by a backslash.
-   *
-   * @param s The String to escape.
-   * @returns An escaped version of s.
-   */
-  private String addEscapeCharacters(String s)
-  {
-    StringBuffer result = new StringBuffer("");
-
-    for (int i = 0; i < s.length(); i++)
-    {
-      char currentChar = s.charAt(i);
-
-      if (isMetachar(currentChar))
-      {
-        result.append("\\"); // Note that this is an escaped backslash, not a double backslash.
-      }
-      result.append(currentChar);
-
-    }
-
-    return result.toString();
-  }
-
-  /**
-   * Checks whether c is a metacharacter as defined in the static variable metacharacters.
-   *
-   * @param c The character to check.
-   * @returns Whether c is a metacharacter.
-   */
-  private boolean isMetachar(char c)
-  {
-    return metacharacters.indexOf(c) != -1;
-  }
-  
-
-  public boolean hasValidMin()
-  {
-    return (min != EMPTY);
-  }
-
-  public boolean hasValidMax()
-  {
-    return(max != EMPTY);
-  }
-
-  public boolean hasValidRepeat()
-  {
-    return(repeat != EMPTY);
-  }
-
-  public String toString()
-  {
-    String result = "";
-    
-    if (hasParens)
-    {
-      result += "(";
-    }
-    
-    if (autoEscapeStatus)
-    {
-       result += addEscapeCharacters(contents);
-    }
-    else 
-    {
-      result += contents;
-    }
-
-
-    if (hasParens)
-    {
-      result += ")";
-    }
-    
-    switch (quantifier)
-    {
-      case STAR:
-        result += "*";
-        break;
-      
-      case PLUS:
-        result += "+";
-        break;
-      
-      case OPTIONAL:
-        result += "?";
-        break;
-      
-      case REPEAT:
-        result += "{" + repeat + "}";
-        break;
-      
-      case RANGE:
-        result += "{" + min + ",";
-        if (max == EMPTY)
-        {
-          result += "";
-        }
-        else
-        {
-          result += max;
-        }       
-        result += "}";
-        break;
-      
-      // SINGLE is a fall through           
-
-    }
-    return result;
-
-  }
-
-
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexTestingPage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexTestingPage.java
deleted file mode 100644
index 57601b5..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexTestingPage.java
+++ /dev/null
@@ -1,161 +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
- *******************************************************************************/
-// Based on version 1.6 of original xsdeditor
-package org.eclipse.wst.xsd.ui.internal.wizards;
-
-import java.util.regex.Pattern;
-
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorContextIds;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-
-
-public class RegexTestingPage extends WizardPage
-{
-  /* Validator from xerces package. */
-//  private RegularExpression validator;
-  private Pattern validator;
-  
-  /* Displays the status of the match. */
-  private Label matchLabel;
-
-
-  /* The regex. */
-  private Text value;
-  
-  /* The string the user is trying to match against the regex. */
-  private StyledText testString;
-
-  public RegexTestingPage()
-  {
-    super(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TESTING_PAGE_TITLE"));
-
-    setTitle(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TESTING_PAGE_TITLE"));
-    setDescription(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TESTING_PAGE_DESCRIPTION"));
-  }
-
-
-  public void createControl(Composite parent)
-  {
-    Composite composite = ViewUtility.createComposite(parent, 1);
-    WorkbenchHelp.setHelp(composite, XSDEditorContextIds.XSDR_TEST_PAGE);
-
-    matchLabel = new Label(composite, SWT.WRAP);
-    matchLabel.setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TESTING_PAGE_DESCRIPTION"));
-    FontData[] fontData = matchLabel.getFont().getFontData();
-    GridData dataF = new GridData();
-    dataF.widthHint = 400;
-    dataF.heightHint = 6 * fontData[0].getHeight();
-    matchLabel.setLayoutData(dataF);
-    
-    Composite controls = new Composite(composite, SWT.NONE);
-    GridLayout controlsLayout = new GridLayout();
-    controlsLayout.numColumns = 2;
-    controls.setLayout(controlsLayout);
-    controls.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-    new Label(controls, SWT.LEFT).setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_REGEX_LABEL"));
-    value = new Text(controls, SWT.BORDER | SWT.READ_ONLY);
-    value.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-
-    new Label(controls, SWT.LEFT).setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_SAMPLE_TEXT"));
-    testString = new StyledText(controls, SWT.SINGLE | SWT.BORDER);
-    WorkbenchHelp.setHelp(testString, XSDEditorContextIds.XSDR_TEST_SAMPLE);
-    testString.addListener(SWT.Modify, new TestStringListener());
-    testString.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-    
-    controls.pack();
-    
-    Label separator = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL);
-    GC gc = new GC(separator);
-    Point pointSize = gc.stringExtent(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TESTING_PAGE_DESCRIPTION"));
-    GridData gd = new GridData();
-    gd.widthHint = (int)(pointSize.x / 2 + gc.getAdvanceWidth('M')*11);
-    gd.horizontalAlignment= GridData.FILL;
-    separator.setLayoutData(gd);
-    
-    composite.pack();
-    
-//    validator = new RegularExpression("", getFlags());
-
-    setControl(composite);
-  }
-
-
-  private String getPatternValue()
-  {
-    return ( (RegexCompositionPage)getPreviousPage() ).getPattern().getLexicalValue();
-  }
-
-  private String getFlags()
-  {
-    return ( (RegexCompositionPage)getPreviousPage() ).getFlags();
-  }
-
-  public void setVisible(boolean visible)
-  {
-    super.setVisible(visible);
-
-    String pattern = getPatternValue();
-    String flags = getFlags();
-
-    value.setText(pattern);
-
-//    try
-//    {
-//      validator.setPattern(pattern, flags);
-//    }
-//    catch (ParseException pe)
-//    {
-//    }
-    
-    updateMatchStatus();
-
-    testString.setFocus();
-  }
-
-  class TestStringListener implements Listener
-  {
-    public void handleEvent(Event e)
-    {
-      updateMatchStatus();
-    }
-  }
-
-  private void updateMatchStatus()
-  {
-    if (Pattern.matches(getPatternValue(), testString.getText()))
-    {
-//      matchLabel.setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_MATCHES"));
-      setMessage(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_MATCHES"), 1);
-    }
-    else
-    {
-      setMessage(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_DOES_NOT_MATCH"), 2);
-//      matchLabel.setText(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_DOES_NOT_MATCH"));
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexWizard.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexWizard.java
deleted file mode 100644
index e17cb80..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/RegexWizard.java
+++ /dev/null
@@ -1,65 +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.xsd.ui.internal.wizards;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.xsd.XSDPatternFacet;
-import org.eclipse.xsd.impl.XSDFactoryImpl;
-
-
-public class RegexWizard extends Wizard 
-{
-  private static final boolean debug = false;
-  
-  private RegexCompositionPage compositionPage;
-  private RegexTestingPage testingPage;
-
-  /* The original, unchanged pattern. */  
-  private XSDPatternFacet originalPattern;
-  
-  /* A copy of the original pattern that is passed into the wizard. */
-  private XSDPatternFacet modifiedPattern;
-
-  String pattern;
-
-  public RegexWizard(String expr)
-  {
-    super();
-    setWindowTitle(XSDEditorPlugin.getXSDString("_UI_REGEX_WIZARD_TITLE"));
-    setDefaultPageImageDescriptor(ImageDescriptor.createFromFile(XSDEditorPlugin.class, "icons/regx_wiz.gif"));
-
-    XSDFactoryImpl factory = new XSDFactoryImpl();
-    modifiedPattern = factory.createXSDPatternFacet();
-    modifiedPattern.setLexicalValue(expr);
-
-    originalPattern = factory.createXSDPatternFacet();
-    originalPattern.setLexicalValue(expr);
-
-    compositionPage = new RegexCompositionPage(modifiedPattern);
-    addPage(compositionPage);
-
-    testingPage = new RegexTestingPage();
-    addPage(testingPage);
-  }
-
-  public String getPattern()
-  {
-    return pattern;
-  }
-
-  public boolean performFinish()
-  {
-    pattern = modifiedPattern.getLexicalValue();
-    return true;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDLocationChoicePage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDLocationChoicePage.java
deleted file mode 100644
index ef0110a..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDLocationChoicePage.java
+++ /dev/null
@@ -1,71 +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.xsd.ui.internal.wizards;
-
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-
-
-public class XSDLocationChoicePage extends WizardPage 
-{
-  protected Button radioButton1;
-  protected Button radioButton2;
-    
-  public XSDLocationChoicePage()
-  {
-    super("XSDLocationChoicePage");
-
-    this.setTitle(XSDEditorPlugin.getXSDString("_UI_WIZARD_INCLUDE_FILE_TITLE"));
-    this.setDescription(XSDEditorPlugin.getXSDString("_UI_WIZARD_INCLUDE_FILE_DESC"));
-  }
-    
-  public boolean isPageComplete()
-  {
-    return true;
-  }
-    
-  public void createControl(Composite parent)
-  {
-    Composite base = new Composite(parent, SWT.NONE);
-    base.setLayout(new GridLayout());
-    GridData data;
-      
-    ViewUtility.createLabel(base, XSDEditorPlugin.getXSDString("_UI_LABEL_INCLUDE_URL_FILE"));
-    Composite radioButtonsGroup = ViewUtility.createComposite(base, 1, true);
-
-    radioButton1 = ViewUtility.createRadioButton(radioButtonsGroup, 
-                                                 XSDEditorPlugin.getXSDString("_UI_RADIO_FILE"));
-      
-    radioButton2 = ViewUtility.createRadioButton(radioButtonsGroup,
-                                                 XSDEditorPlugin.getXSDString("_UI_RADIO_URL"));
-
-    radioButton1.setSelection(true);
-
-    setControl(base);
-  }
-
-  // actions on finish
-  public boolean performFinish()
-  {
-    return true;
-  }
-
-  public boolean isURL()
-  {
-    return radioButton2.getSelection();
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDNewFilePage.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDNewFilePage.java
deleted file mode 100644
index d25eea7..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDNewFilePage.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.xsd.ui.internal.wizards;
- 
-import org.eclipse.core.resources.IContainer;
-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.Path;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-
-
-public class XSDNewFilePage extends WizardNewFileCreationPage
-{
-  public XSDNewFilePage(IStructuredSelection selection) 
-  {
-    super(XSDEditorPlugin.getXSDString("_UI_CREATEXSD"), selection);
-    setTitle(XSDEditorPlugin.getXSDString("_UI_NEW_XML_SCHEMA_TITLE"));
-    setDescription(XSDEditorPlugin.getXSDString("_UI_CREATE_A_NEW_XML_SCHEMA_DESC"));
-  }
-
-  public void createControl(Composite parent) 
-  {
-    // inherit default container and name specification widgets
-    super.createControl(parent);
-
-    this.setFileName(computeDefaultFileName());
-
-    setPageComplete(validatePage());
-  }
-
-  protected boolean validatePage()
-  {
-    Path newName = new Path(getFileName());
-    String fullFileName = getFileName();
-    String extension = newName.getFileExtension();
-    if (extension == null || !extension.equalsIgnoreCase("xsd")) 
-    {
-      setErrorMessage(XSDEditorPlugin.getXSDString("_ERROR_FILENAME_MUST_END_XSD"));
-      return false;
-    }
-    else 
-    {
-      setErrorMessage(null);
-    }
-
-    // check for file should be case insensitive
-    String sameName = existsFileAnyCase(fullFileName);
-    if (sameName != null) 
-    {
-      String qualifiedFileName = getContainerFullPath().toString() + '/' + fullFileName;
-      setErrorMessage(XSDEditorPlugin.getPlugin().getString("_ERROR_FILE_ALREADY_EXISTS", sameName)); //$NON-NLS-1$
-      return false;
-    }
-
-    return super.validatePage();
-  }
-
-  public String defaultName = "NewXMLSchema"; //$NON-NLS-1$
-  public String defaultFileExtension = ".xsd"; //$NON-NLS-1$
-  public String[] filterExtensions = { "*.xsd"}; //$NON-NLS-1$
-
-  protected String computeDefaultFileName()
-  {
-    int count = 0;
-    String fileName = defaultName + defaultFileExtension;
-    IPath containerFullPath = getContainerFullPath();
-    if (containerFullPath != null)
-    {
-      while (true)
-      {
-        IPath path = containerFullPath.append(fileName);
-        if (ResourcesPlugin.getWorkspace().getRoot().exists(path))
-        {
-          count++;
-          fileName = defaultName + count + defaultFileExtension;
-        }
-        else
-        {
-          break;
-        }
-      }
-    }
-    return fileName;
-  }
-
-  // returns true if file of specified name exists in any case for selected container
-  protected String existsFileAnyCase(String fileName)
-  {
-    if ( (getContainerFullPath() != null) && (getContainerFullPath().isEmpty() == false)
-        && (fileName.compareTo("") != 0))
-    {
-      //look through all resources at the specified container - compare in upper case
-      IResource parent = ResourcesPlugin.getWorkspace().getRoot().findMember(getContainerFullPath());
-      if (parent instanceof IContainer)
-      {
-        IContainer container = (IContainer) parent;
-        try
-        {
-          IResource[] members = container.members();
-          String enteredFileUpper = fileName.toUpperCase();
-          for (int i=0; i<members.length; i++)
-          {
-            String resourceUpperName = members[i].getName().toUpperCase();
-            if (resourceUpperName.equals(enteredFileUpper))
-            {  
-              return members[i].getName();    
-            }
-          }
-        }
-        catch (CoreException e)
-        {
-        }
-      }
-    }
-    return null;
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDSelectIncludeFileWizard.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDSelectIncludeFileWizard.java
deleted file mode 100644
index 35dee94..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/internal/wizards/XSDSelectIncludeFileWizard.java
+++ /dev/null
@@ -1,371 +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.xsd.ui.internal.wizards;
-
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jface.wizard.IWizardPage;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.wst.common.ui.viewers.SelectSingleFilePage;
-import org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin;
-import org.eclipse.wst.xsd.ui.internal.util.ViewUtility;
-import org.eclipse.xsd.XSDSchema;
-import org.eclipse.xsd.util.XSDParser;
-
-
-/**
- * Extend the base wizard to select a file from the project or outside the workbench
- * and add error handling
- */
-public class XSDSelectIncludeFileWizard extends Wizard implements INewWizard
-{
-  boolean isInclude;
-  XSDSchema mainSchema;
-  XSDSchema externalSchema;
-
-  XSDLocationChoicePage choicePage;
-  XSDSelectSingleFilePage filePage;
-  XSDURLPage urlPage;
-
-  IFile resultFile;
-  String resultURL;
-  String namespace = "";
-
-  public XSDSelectIncludeFileWizard(XSDSchema mainSchema, boolean isInclude,
-                                    String title, String desc, 
-                                    ViewerFilter filter,
-                                    IStructuredSelection selection)
-  {
-    super();
-    setWindowTitle(title);
-    setDefaultPageImageDescriptor(ImageDescriptor.createFromFile(XSDEditorPlugin.class, "icons/NewXSD.gif"));
-
-    setNeedsProgressMonitor(true);
-
-    // Choice Page
-    choicePage = new XSDLocationChoicePage();
-
-    // Select File Page
-    filePage = new XSDSelectSingleFilePage(PlatformUI.getWorkbench(),  selection, true);
-    filePage.setTitle(title);
-    filePage.setDescription(desc);
-    filePage.addFilter(filter);
-
-    // URL Page
-    urlPage = new XSDURLPage();
-    urlPage.setTitle(title);
-    urlPage.setDescription(XSDEditorPlugin.getXSDString("_UI_FILEDIALOG_SELECT_XML_URL"));
-    
-    this.mainSchema = mainSchema;
-    this.isInclude = isInclude;
-  }
-
-  public void init(IWorkbench aWorkbench, IStructuredSelection aSelection)
-  { 
-  }
-
-  public void addPages()
-  {
-    addPage(choicePage);
-    addPage(filePage);
-    addPage(urlPage);
-  }
-
-  public IWizardPage getNextPage(IWizardPage currentPage)
-  {
-    WizardPage nextPage = null;
-
-    if (currentPage == choicePage)
-    {
-      if (choicePage.isURL()) 
-      {
-        nextPage = urlPage;
-      }
-      else
-      {
-        nextPage = filePage;
-      }
-    }
-    return nextPage;
-  }
-
-  public boolean canFinish()
-  {
-    if (!choicePage.isURL())
-    {
-      return filePage.isPageComplete(); 
-    }
-    return true;
-  }
-
-  public boolean performFinish()
-  { 
-    if (choicePage.isURL())
-    {
-      try 
-      {
-        getContainer().run(false, true, urlPage.getRunnable());
-        resultURL = urlPage.getURL();
-      }
-      catch (Exception e)
-      {
-        return false;
-      }
-      return true;
-    }
-    else
-    {  
-      resultFile = filePage.getFile();
-    }
-    return true;
-  }
-
-  /**
-   * Get the MOF object that represents the external file
-   */
-  public XSDSchema getExternalSchema()
-  {
-    return externalSchema;
-  }
-
-  public IFile getResultFile()
-  {
-    return resultFile;
-  }
-
-  public String getURL()
-  {
-    return resultURL;
-  }
-  
-  public String getNamespace()
-  {
-  	return namespace;
-  }
-
-  /**
-   * Create a MOF model for the imported file
-   */
-  protected String doLoadExternalModel(IProgressMonitor monitor, String xsdModelFile, String xsdFileName)
-  { 
-    String errorMessage = null;
-    String currentNameSpace = mainSchema.getTargetNamespace();
-
-    monitor.beginTask("Loading XML Schema", 100);
-    monitor.worked(50);
-
-    XSDParser parser = new XSDParser();
-    parser.parse(xsdModelFile);
-
-    externalSchema = parser.getSchema();
-    if (externalSchema != null)
-    {
-      String extNamespace = externalSchema.getTargetNamespace();
-      namespace = extNamespace;
-     
-      if (externalSchema.getDiagnostics() != null &&
-          externalSchema.getDiagnostics().size() > 0)
-      {
-        errorMessage = XSDEditorPlugin.getPlugin().getString("_UI_INCORRECT_XML_SCHEMA", xsdFileName);
-      }  
-      else
-      {
-        if (isInclude) 
-        {  
-          // Check the namespace to make sure they are the same as current file
-          if (extNamespace != null)
-          {
-            if (currentNameSpace != null && !extNamespace.equals(currentNameSpace))
-            {
-              errorMessage = XSDEditorPlugin.getPlugin().getString("_UI_DIFFERENT_NAME_SPACE", xsdFileName);
-            }
-          }
-        }
-        else
-        {  
-          // Check the namespace to make sure they are different from the current file
-          if (extNamespace != null)
-          {
-            if (currentNameSpace != null && extNamespace.equals(currentNameSpace))
-            {
-              errorMessage = XSDEditorPlugin.getPlugin().getString("_UI_SAME_NAME_SPACE", xsdFileName);
-            }
-          }
-        }
-      }
-    }
-    else
-    {
-      errorMessage = XSDEditorPlugin.getPlugin().getString("_UI_INCORRECT_XML_SCHEMA", xsdFileName);
-    }
-
-    monitor.subTask("Finish Loading");
-    monitor.worked(80);
-
-    return errorMessage;
-  }
-
- 
-  /**
-   * URL page
-   */
-  class XSDURLPage extends WizardPage
-  { 
-    Text urlField;
-    String saveString;
-
-    public XSDURLPage()
-    {
-      super("URLPage");
-    }
-
-    public void createControl(Composite parent)
-    {
-      Composite client = ViewUtility.createComposite(parent,2);
-      ViewUtility.setComposite(client);
-
-      ViewUtility.createLabel(client, XSDEditorPlugin.getXSDString("_UI_LABEL_URL"));
-      ViewUtility.createLabel(client, "");
-
-      urlField = ViewUtility.createTextField(client, 50);
-      saveString = "http://";
-      urlField.setText(saveString);
-
-      setControl(client);
-    }
-
-    public String getURL()
-    {
-      return urlField.getText();
-    }
-
-    private boolean openExternalSchema(IProgressMonitor monitor)
-    {
-      String text = urlField.getText();
-//      if (text.equals(saveString)) 
-//      {
-//        return false;
-//      }
-//      saveString = text;
-
-      if (text.equals(""))
-      {
-        setErrorMessage(XSDEditorPlugin.getXSDString("_UI_SPECIFY_URL"));
-        return false;
-      }
-
-      if ( !text.startsWith("http://") )
-      {
-        setErrorMessage(XSDEditorPlugin.getXSDString("_UI_URL_START_WITH"));
-        return false;
-      }
-
-      setErrorMessage(null);
-      String errorMessage = doLoadExternalModel(monitor, text, text);
-      if (errorMessage != null) 
-      {
-        setErrorMessage(errorMessage); 
-        return false;
-      }
-      else
-      {
-        return true;
-      }
-    }
-
-    public IRunnableWithProgress getRunnable()
-    {
-      return new IRunnableWithProgress()
-      {
-        public void run(IProgressMonitor monitor)   
-          throws InvocationTargetException, InterruptedException
-        {
-          if (monitor == null)
-          {
-            monitor= new NullProgressMonitor();
-          }
-          monitor.beginTask("", 6);
-        
-          boolean ok = openExternalSchema(monitor);
-
-          if (!ok) 
-          { 
-            throw new InvocationTargetException(new java.lang.Error());
-          }
-
-          monitor.done();
-        }
-      };
-    }
-  }
-
-  /**
-   * Select XML Schema File
-   */
-  class XSDSelectSingleFilePage extends SelectSingleFilePage
-  {
-    public XSDSelectSingleFilePage(IWorkbench workbench, IStructuredSelection selection, boolean isFileMandatory)
-    {          
-      super(workbench,selection,isFileMandatory);
-    }
-
-    private boolean openExternalSchema()
-    {
-      // Get the fully-qualified file name
-      IFile iFile = getFile();
-      if (iFile == null) 
-        return false;
-
-      setErrorMessage(null);
-
-      String xsdModelFile = iFile.getLocation().toOSString();
-      String xsdFileName = iFile.getName();
-      String errorMessage = doLoadExternalModel(new NullProgressMonitor(), xsdModelFile, xsdFileName);
-
-      if (errorMessage != null) 
-      {
-        setErrorMessage(errorMessage);
-        return false;
-      }
-      else
-      {
-        return true;
-      }
-    }
-
-    public boolean isPageComplete()
-    {  
-      if (choicePage.isURL()) 
-      {
-        return true;
-      }
-
-      if (super.isPageComplete()) 
-      {
-        return openExternalSchema();
-      }
-      return super.isPageComplete();
-    }
-  }
-}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/reconcile/DelegatingSourceValidatorForXSD.java b/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/reconcile/DelegatingSourceValidatorForXSD.java
deleted file mode 100644
index 49e6dcb..0000000
--- a/bundles/org.eclipse.wst.xsd.ui/src/org/eclipse/wst/xsd/ui/reconcile/DelegatingSourceValidatorForXSD.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Created on Feb 10, 2005
- */
-package org.eclipse.wst.xsd.ui.reconcile;
-
-import org.eclipse.wst.validation.core.IValidator;
-import org.eclipse.wst.validation.plugin.ValidationPlugin;
-import org.eclipse.wst.xml.ui.reconcile.DelegatingSourceValidator;
-
-/**
- * @author mhutchin
- *
- */
-public class DelegatingSourceValidatorForXSD extends DelegatingSourceValidator
-{
-
-  final private static String VALIDATOR_CLASS = "org.eclipse.wst.xsd.validation.internal.ui.eclipse.Validator"; 
-
-  public DelegatingSourceValidatorForXSD()
-  { super();
-  }
-  
-  protected IValidator getDelegateValidator()
-  {
-    try
-    {
-	  ValidationPlugin validationPlugin = new ValidationPlugin();
-      return validationPlugin.getValidator(VALIDATOR_CLASS);
-    }
-    catch (Exception e)
-    { //
-    }
-    return null;
-  }
-}
diff --git a/development/org.eclipse.wst.sse.unittests/.classpath b/development/org.eclipse.wst.sse.unittests/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/development/org.eclipse.wst.sse.unittests/.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/development/org.eclipse.wst.sse.unittests/.cvsignore b/development/org.eclipse.wst.sse.unittests/.cvsignore
deleted file mode 100644
index a37b9c5..0000000
--- a/development/org.eclipse.wst.sse.unittests/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-build.properties
-build.xml
-ssejunit.jar
-temp.folder
diff --git a/development/org.eclipse.wst.sse.unittests/.project b/development/org.eclipse.wst.sse.unittests/.project
deleted file mode 100644
index e6f5109..0000000
--- a/development/org.eclipse.wst.sse.unittests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.sse.unittests</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/development/org.eclipse.wst.sse.unittests/plugin.xml b/development/org.eclipse.wst.sse.unittests/plugin.xml
deleted file mode 100644
index c1c7283..0000000
--- a/development/org.eclipse.wst.sse.unittests/plugin.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.wst.sse.unittests"
-   name="Unittests"
-   version="1.0.0"
-   provider-name="Eclipse.org">
-   <runtime>
-      <library name="ssejunit.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.junit"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.jst.jsp.core.tests"/>
-      <import plugin="org.eclipse.jst.jsp.tests.encoding"/>
-      <import plugin="org.eclipse.jst.jsp.ui.tests"/>
-      <import plugin="org.eclipse.jst.jsp.ui.tests.performance"/>
-      <import plugin="org.eclipse.wst.css.core.tests"/>
-      <import plugin="org.eclipse.wst.css.tests.encoding"/>
-      <import plugin="org.eclipse.wst.css.ui.tests.performance"/>
-      <import plugin="org.eclipse.wst.html.core.tests"/>
-      <import plugin="org.eclipse.wst.html.tests.encoding"/>
-      <import plugin="org.eclipse.wst.html.ui.tests"/>
-      <import plugin="org.eclipse.wst.html.ui.tests.performance"/>
-      <import plugin="org.eclipse.wst.sse.core.tests"/>
-      <import plugin="org.eclipse.wst.sse.ui.tests"/>
-      <import plugin="org.eclipse.wst.sse.ui.tests.performance"/>
-      <import plugin="org.eclipse.wst.xml.core.tests"/>
-      <import plugin="org.eclipse.wst.xml.tests.encoding"/>
-      <import plugin="org.eclipse.wst.xml.ui.tests"/>
-      <import plugin="org.eclipse.wst.xml.ui.tests.performance"/>
-      <import plugin="org.eclipse.wst.xml.validation.tests"/>
-   </requires>
-
-</plugin>
diff --git a/development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterListTestSuite.java b/development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterListTestSuite.java
deleted file mode 100644
index 6710444..0000000
--- a/development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterListTestSuite.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.sse.unittests;
-
-import junit.framework.TestSuite;
-
-import org.eclipse.jst.jsp.core.tests.JSPCoreTestSuite;
-import org.eclipse.jst.jsp.tests.encoding.JSPEncodingTestSuite;
-import org.eclipse.jst.jsp.ui.tests.JSPUITestSuite;
-import org.eclipse.wst.css.core.tests.CSSCoreTestSuite;
-import org.eclipse.wst.css.tests.encoding.CSSEncodingTestSuite;
-import org.eclipse.wst.html.core.tests.HTMLCoreTestSuite;
-import org.eclipse.wst.html.tests.encoding.HTMLEncodingTestSuite;
-import org.eclipse.wst.html.ui.tests.HTMLUITestSuite;
-import org.eclipse.wst.sse.core.tests.SSEModelTestSuite;
-import org.eclipse.wst.sse.ui.tests.SSEUITestSuite;
-import org.eclipse.wst.xml.core.tests.SSEModelXMLTestSuite;
-import org.eclipse.wst.xml.tests.encoding.EncodingTestSuite;
-import org.eclipse.wst.xml.ui.tests.XMLUITestSuite;
-import org.eclipse.wst.xml.validation.tests.internal.AllXMLTests;
-
-/*****************************************************************************
- * Copyright (c) 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
- * 
- ****************************************************************************/
-
-public class MasterListTestSuite extends TestSuite {
-
-	public MasterListTestSuite() {
-		super("All Tests");
-
-		addTest(SSEModelTestSuite.suite());
-		addTest(SSEModelXMLTestSuite.suite());
-		addTest(CSSCoreTestSuite.suite());
-		addTest(HTMLCoreTestSuite.suite());
-		addTest(JSPCoreTestSuite.suite());
-
-		addTest(AllXMLTests.suite());
-		
-		addTest(EncodingTestSuite.suite());
-		addTest(CSSEncodingTestSuite.suite());
-		addTest(HTMLEncodingTestSuite.suite());
-		addTest(JSPEncodingTestSuite.suite());
-
-		addTest(HTMLUITestSuite.suite());
-		addTest(SSEUITestSuite.suite());
-		addTest(XMLUITestSuite.suite());
-		addTest(JSPUITestSuite.suite());
-
-	}
-
-	public void testAll() {
-		// this method needs to exist, but doesn't really do anything
-	}
-}
diff --git a/development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterPerformanceTestSuite.java b/development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterPerformanceTestSuite.java
deleted file mode 100644
index 8491014..0000000
--- a/development/org.eclipse.wst.sse.unittests/src/org/eclipse/wst/sse/unittests/MasterPerformanceTestSuite.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.sse.unittests;
-
-import junit.framework.TestSuite;
-
-import org.eclipse.jst.jsp.ui.tests.performance.JSPUIPerformanceTests;
-import org.eclipse.wst.css.ui.tests.performance.CSSUIPerformanceTestSuite;
-import org.eclipse.wst.html.ui.tests.performance.HTMLUIPerformanceTestSuite;
-import org.eclipse.wst.sse.ui.tests.performance.SSEUIPerformanceTestSuite;
-import org.eclipse.wst.xml.ui.tests.performance.XMLUIPerformanceTestSuite;
-
-/*****************************************************************************
- * Copyright (c) 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
- * 
- ****************************************************************************/
-
-public class MasterPerformanceTestSuite extends TestSuite {
-
-	public MasterPerformanceTestSuite() {
-		super("All Tests");
-
-		addTest(JSPUIPerformanceTests.suite());
-		addTest(CSSUIPerformanceTestSuite.suite());
-		addTest(HTMLUIPerformanceTestSuite.suite());
-		addTest(SSEUIPerformanceTestSuite.suite());
-		addTest(XMLUIPerformanceTestSuite.suite());
-
-
-	}
-
-	public void testAll() {
-		// this method needs to exist, but doesn't really do anything
-	}
-
-}